Catalog response objects

Use the response fields named by the operation. The catalog API’s subscription object represents a Pricing; a member’s subscription relationship adds dates and renewal choices. See business terms. Types marked stored describe model annotations or stored values. Do not assume a type conversion unless one is stated. Common response rules cover response wrappers and unspecified units/timezones.

Plan

The shared plan fields returned by plan lists/detail and cascade applied_plan. An operation adds the relevant relationship below.

FieldType / presenceMeaning and conditions
idintegerPlan record identifier.
title, slug, descriptionstring / nullable stored textDisplay name, stable label and description.
full_accessbooleanPlan grants unrestricted content access when applicable; listing it does not grant membership.
predictive_paywallstored flagPredictive access rule enabled for the plan; not explicitly normalized to boolean in this projection.
predictive_percentsstored numeric value / nullablePredictive rule percentage; not a purchase price.
can_own_teamsstored flagWhether the plan can support team ownership; not normalized here.
priorityintegerConfigured ranking used by some lists; not universal ordering.
privatebooleanPrivate visibility flag; the detail operations can still expose private records.
activebooleanConfigured activation flag; detail and member lists do not necessarily filter it.
created_at, updated_attimestamp stringsRecord times; timezone unspecified.

Plan relationships

Relationship keys depend on the call; they are not interchangeable.

FieldType / presenceMeaning and conditions
subscriptionsarray; public plan listGeneral Pricings, restricted to active public Pricings or the valid invite’s Pricing. Empty is possible.
subscriptionsarray; plan detail / integration plansGeneral Pricings, without the list’s active/private restriction.
subscriptionsarray; team plansGeneral Pricings plus users_limit (stored numeric seat limit). Only eligible active linked Pricings are selected.
subscriptionobject; member plansGeneral Pricing with nested plan removed; adds subscription_start_date (relationship creation time), subscription_end_date (expiration, nullable), subscription_updated_date (relationship update time), autorenew (boolean member choice), is_team_subscription (boolean). Only one relationship is represented per plan.

General Pricing

Used by plan relationships, Pricing detail, purchases and cascade source_subscription.

FieldType / presenceMeaning and conditions
idintegerPricing identifier, distinct from a membership relationship.
slug, title, descriptionstring / nullPricing label and display text.
typestringStored Pricing type; no complete enum defined here.
subscriber_typestring / nullConfigured subscriber category; no closed enum.
priceintegerStored Pricing price; currency units unspecified.
currencystring / nullStored currency code; no conversion.
periodstring / nullConfigured billing period text, such as 1 month; do not infer a fixed duration in seconds.
trial_periodstored period valueConfigured trial period; omission/nullability not reliably constrained by this projection.
trial_pricestored numeric valueTrial price; units unspecified, no universal zero/default guarantee.
trial_iterationsstored numeric valueConfigured number of trial iterations; no default guaranteed here.
is_allowed_autorenewbooleanPricing permits automatic renewal; different from a member’s autorenew setting.
limit_sponsored_slotsinteger / null (model annotation)Configured sponsored slot limit.
external_source_idsstring / null (model annotation)Stored external-source mapping; no parsed-object guarantee.
is_allowed_upgrade_pricestored string / null (model annotation)Upgrade-price setting; do not assume JSON boolean.
plan_idintegerParent plan ID.
active, once, privatebooleanActivation, one-time Pricing and private flags.
is_applied_vatstored flag / nullableVAT applicability; no boolean normalization guaranteed by this projection.
vat_percentnumber / nullableStored VAT percentage; this read does not calculate taxes.
extradecoded JSON value / nullablePricing-defined extra data; no closed schema.
publicbooleanInverse of private, independent of activation.
planobjectCompact plan projection below.
next_subscriptiongeneral Pricing or nullConfigured next Pricing. Nested next/downgrade relations stop after this level.
downgrade_subscriptionpublic Pricing or nullConfigured downgrade Pricing uses the public projection, even here. Nested relations stop after this level.
created_at, updated_attimestamp strings; admin context onlyPricing record times, absent for ordinary customer context.
country_vatarray; admin context onlyCountry VAT records below; empty if none.

Compact plan

General Pricings use these fields; public Pricings omit private and extra. Each listed field is present in its corresponding projection.

FieldType / presenceMeaning and conditions
idintegerPlan record identifier.
title, slug, descriptionstring / nullable stored textDisplay name, stable label and description.
full_accessbooleanPlan grants unrestricted content access when applicable; listing it does not grant membership.
can_own_teamsstored flagWhether the plan can support team ownership; not normalized here.
priorityintegerConfigured ranking used by some lists; not universal ordering.
privatebooleanPrivate visibility flag; the detail operations can still expose private records.
extradecoded JSON value / nullable; general onlyPlan-defined extra data; no closed schema.

Public Pricing

Used by the public Pricing list. This projection omits plan_id, active, once, private, VAT, extra and public.

FieldType / presenceMeaning and conditions
idintegerPricing identifier, distinct from a membership relationship.
slug, title, descriptionstring / nullPricing label and display text.
typestringStored Pricing type; no complete enum defined here.
subscriber_typestring / nullConfigured subscriber category; no closed enum.
priceintegerStored Pricing price; currency units unspecified.
currencystring / nullStored currency code; no conversion.
periodstring / nullConfigured billing period text, such as 1 month; do not infer a fixed duration in seconds.
trial_periodstored period valueConfigured trial period; omission/nullability not reliably constrained by this projection.
trial_pricestored numeric valueTrial price; units unspecified, no universal zero/default guarantee.
trial_iterationsstored numeric valueConfigured number of trial iterations; no default guaranteed here.
is_allowed_autorenewbooleanPricing permits automatic renewal; different from a member’s autorenew setting.
limit_sponsored_slotsinteger / null (model annotation)Configured sponsored slot limit.
external_source_idsstring / null (model annotation)Stored external-source mapping; no parsed-object guarantee.
is_allowed_upgrade_pricestored string / null (model annotation)Upgrade-price setting; do not assume JSON boolean.
planobjectCompact plan, excluding private and extra.
next_subscription, downgrade_subscriptionpublic Pricing or empty objectRelated public Pricing when configured; otherwise {}. Nested relations stop after one level.
applied_cascade_accessboolean; public Pricing list onlyCurrent user’s cascade plan matches this Pricing’s plan; false without applicable user context.

Subscription detail plan

Pricing detail starts with the general Pricing. Its plan can be replaced by this broader projection when the parent plan lookup qualifies. Handle the compact general Pricing plan when it is not replaced.

FieldType / presenceMeaning and conditions
idintegerPlan record identifier.
title, slug, descriptionstring / nullable stored textDisplay name, stable label and description.
full_accessbooleanPlan grants unrestricted content access when applicable; listing it does not grant membership.
predictive_paywallstored flagPredictive access rule enabled for the plan; not explicitly normalized to boolean in this projection.
predictive_percentsstored numeric value / nullablePredictive rule percentage; not a purchase price.
can_own_teamsstored flagWhether the plan can support team ownership; not normalized here.
priorityintegerConfigured ranking used by some lists; not universal ordering.
privatebooleanPrivate visibility flag; the detail operations can still expose private records.
activebooleanConfigured activation flag; detail and member lists do not necessarily filter it.
extradecoded JSON value / nullablePlan-defined extra data.
publicbooleanInverse of private.
subscriptionsarrayLightweight Pricings: id (integer), title (string/null), price (integer), currency and period (string/null). This is not the full general Pricing. No active/private restriction here.

Country VAT

Only conditional admin-context general Pricings include these records.

FieldType / presenceMeaning and conditions
id, subscription_id, country_idstored integer IDsVAT record, Pricing and country references.
vat_percentstored numeric valueCountry-specific VAT percentage.
created_at, updated_attimestamp stringsRecord times.
countryobject / nullCountry with id (stored integer), code and title (stored strings); null when reference missing.

Full diagram

Use the arrow keys to scroll. Escape closes this view.

Search documentation

Enter at least 2 characters.

    ↑ ↓ move through results · Enter opens · Escape closes