Ghost · Schema

Tier

A membership tier with pricing and benefits configuration.

PublishingNewslettersMembershipsContentOpen Source

Properties

Name Type Description
id string Unique identifier
name string Tier name
slug string URL-safe slug
description string Tier description
active boolean Whether the tier is active
type string Tier type
welcome_page_url string Welcome page URL after signup
visibility string Public visibility
monthly_price integer Monthly price in smallest currency unit
yearly_price integer Yearly price in smallest currency unit
currency string ISO 4217 currency code
trial_days integer Number of free trial days
benefits array Tier benefits
created_at string Creation timestamp
updated_at string Last update timestamp
View JSON Schema on GitHub

JSON Schema

ghost-tier-schema.json Raw ↑
{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "#/components/schemas/Tier",
  "title": "Tier",
  "type": "object",
  "description": "A membership tier with pricing and benefits configuration.",
  "properties": {
    "id": {
      "type": "string",
      "format": "uuid",
      "description": "Unique identifier"
    },
    "name": {
      "type": "string",
      "description": "Tier name"
    },
    "slug": {
      "type": "string",
      "description": "URL-safe slug"
    },
    "description": {
      "type": "string",
      "description": "Tier description",
      "nullable": true
    },
    "active": {
      "type": "boolean",
      "description": "Whether the tier is active"
    },
    "type": {
      "type": "string",
      "description": "Tier type",
      "enum": [
        "free",
        "paid"
      ]
    },
    "welcome_page_url": {
      "type": "string",
      "format": "uri",
      "description": "Welcome page URL after signup",
      "nullable": true
    },
    "visibility": {
      "type": "string",
      "description": "Public visibility",
      "enum": [
        "public",
        "none"
      ]
    },
    "monthly_price": {
      "type": "integer",
      "description": "Monthly price in smallest currency unit",
      "nullable": true,
      "minimum": 0
    },
    "yearly_price": {
      "type": "integer",
      "description": "Yearly price in smallest currency unit",
      "nullable": true,
      "minimum": 0
    },
    "currency": {
      "type": "string",
      "description": "ISO 4217 currency code",
      "nullable": true,
      "pattern": "^[A-Z]{3}$"
    },
    "trial_days": {
      "type": "integer",
      "description": "Number of free trial days",
      "minimum": 0
    },
    "benefits": {
      "type": "array",
      "description": "Tier benefits",
      "items": {
        "type": "string"
      }
    },
    "created_at": {
      "type": "string",
      "format": "date-time",
      "description": "Creation timestamp"
    },
    "updated_at": {
      "type": "string",
      "format": "date-time",
      "description": "Last update timestamp"
    }
  }
}