A paid offering: subscription, membership, or donation. Public, so renderers and other apps can display offers. The CMS mirrors each plan to the payment processor.
tid
Timestamp-based ID
Properties
active
boolean
Optional
Whether new readers can sign up. Existing entitlements are unaffected.
amount
integer
Optional
Price in the currency's minor unit (e.g., cents). Omit for donor-chosen amounts.
minimum: 0createdAt
string
datetime
Required
An RFC 3339 formatted timestamp.
currency
string
Required
ISO 4217 currency code, lowercase (e.g., 'usd').
maxLength: 3 bytesdescription
string
Optional
No description available.
maxLength: 30000 bytesmaxGraphemes: 3000 graphemesinterval
string
Required
No description available.
maxLength: 64 bytesmonth, year, oncekind
string
Required
No description available.
maxLength: 64 bytessubscription, membership, donationname
string
Required
No description available.
maxLength: 2000 bytesmaxGraphemes: 200 graphemesspaces
array
of
string
space-ref
Optional
Spaces an active entitlement to this plan grants access to. Empty for plans that grant no access.
stripePriceId
string
Optional
Stripe price this plan is sold through. Stripe prices are immutable, so changing amount or interval means a new price.
maxLength: 256 bytesView raw schema
{
"description": "A paid offering: subscription, membership, or donation. Public, so renderers and other apps can display offers. The CMS mirrors each plan to the payment processor.",
"key": "tid",
"record": {
"properties": {
"active": {
"description": "Whether new readers can sign up. Existing entitlements are unaffected.",
"type": "boolean"
},
"amount": {
"description": "Price in the currency's minor unit (e.g., cents). Omit for donor-chosen amounts.",
"minimum": 0,
"type": "integer"
},
"createdAt": {
"format": "datetime",
"type": "string"
},
"currency": {
"description": "ISO 4217 currency code, lowercase (e.g., 'usd').",
"maxLength": 3,
"type": "string"
},
"description": {
"maxGraphemes": 3000,
"maxLength": 30000,
"type": "string"
},
"interval": {
"knownValues": [
"month",
"year",
"once"
],
"maxLength": 64,
"type": "string"
},
"kind": {
"knownValues": [
"subscription",
"membership",
"donation"
],
"maxLength": 64,
"type": "string"
},
"name": {
"maxGraphemes": 200,
"maxLength": 2000,
"type": "string"
},
"spaces": {
"description": "Spaces an active entitlement to this plan grants access to. Empty for plans that grant no access.",
"items": {
"format": "space-ref",
"type": "string"
},
"type": "array"
},
"stripePriceId": {
"description": "Stripe price this plan is sold through. Stripe prices are immutable, so changing amount or interval means a new price.",
"maxLength": 256,
"type": "string"
}
},
"required": [
"name",
"kind",
"currency",
"interval",
"createdAt"
],
"type": "object"
},
"type": "record"
}