Skip to content
MembershipObject

A recurring membership offered by a business. Sessions reset or accumulate each billing period.

Implements

Fields

idID!
businessBusiness!
nameString
descriptionString
featuredImageImage
media[Image!]!
priceInt!
purchaseRulesProductPurchaseRules!
pricingRules[PricingRule!]!
effectivePriceInt!
taxCodeString
sortOrderInt!
createdAtDateTime!
recentPurchases[ProductPurchase!]!
Arguments (1)
limitInt= 20
Arguments (3)
firstInt= 50
afterString
weeklyPurchases[ProductPurchasesInWeek!]!
Arguments (1)
weeksInt= 12
purchasePageBlocks[PurchasePageBlock!]!

Ordered list of configurable blocks rendered on this product's purchase page (contract, signature, acknowledgement, recurring-summary, etc.). Empty for products that use the default purchase layout. config on each block is a JSON-encoded string.

metadataString

First value of the named metadata key, or null. Accepts the $. alias.

Arguments (1)
nameString!
metadataValues[String!]!

All values stored for the named metadata key, in order.

Arguments (1)
nameString!
metadataEntries[MetadataEntry!]!

All metadata stored on this product, one entry per key.

sessionCountInt

Sessions granted per billing period. Null means the membership grants unlimited sessions; sessionsAccumulate is meaningless in that case.

billingCycleBillingCycle!
minimumBillingIntervalsInt

Optional minimum commitment, as a number of billing intervals the member must complete before the membership can lapse. Null means no minimum. When set, a cancellation requested before the commitment is met is deferred to the end of the commitment term rather than the end of the current period.

sessionsAccumulateBoolean!
renewalReminderEnabledBoolean!

Whether members get an advance pre-renewal reminder email before each recurring charge (issue #1183). Defaults to true.

renewalReminderLeadDaysInt

How many days before a renewal the reminder fires. Null falls back to a cadence-based default (7 days for annual, 3 for monthly, 1 for weekly).

guestSessionCountInt!

Number of guest passes granted per billing period. Guest passes let a member cover a registration for someone other than themselves. Zero means the membership cannot be used for guest registrations.

guestSessionsAccumulateBoolean!

Whether unused guest passes carry over across billing periods.

When the membership expires, either as a duration after purchase (expiration.after) or a fixed calendar date (expiration.at). Null means the membership never expires.

activityScopeProductActivityScope!

How this membership's activity coverage is scoped.

activityRules[ProductActivityRule!]!

Per-activity rules: exclusions and per-activity credit-cost overrides. Empty when the membership applies to every activity at the default credit cost.

clockStartClockStart!

When the membership's validity clock starts. With firstSession, the buyer is still charged for the first period at purchase, but the billing-cycle renewal clock does not start until their first booked session occurs — the next charge then falls a full interval after that session, and any relative expiry is deferred the same way. Defaults to purchase.

Sync state for the corresponding Stripe Product / recurring Price on the platform account. Always present; inner fields are null until first sync succeeds.

Used in

Membership