Skip to content
PassObject

A session pass offered by a business. Grants registration for a fixed number of sessions, with an optional expiration window.

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

Number of sessions the pass grants. Nullable for type-system parity with Membership.sessionCount, which uses null = unlimited. Passes do not use the unlimited convention — this field is always populated in practice.

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

activityScopeProductActivityScope!

How this pass's activity coverage is scoped.

activityRules[ProductActivityRule!]!

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

clockStartClockStart!

When the pass's validity clock starts. With firstSession, a relative expiry (expiration.after) counts from the buyer's first booked session once it occurs rather than from purchase; a fixed calendar expiry (expiration.at) is unaffected. Defaults to purchase.

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

Used in

Pass