Skip to content
ActivitySessionObject

Fields

idID!
activityActivity
nameString
startAtDateTime
priceInt!
registrationCountInt!
waitlistCountInt!

Number of people currently waitlisted for this session.

pendingRequestCountInt!

Number of pending (requested) appointment booking requests on this session awaiting approval. Always 0 for non-appointment sessions, which never carry requested registrations.

Bookable spot layout, occupancy, and viewer-relative state for this session. Null when the session's location has no spot map. Bundles the data the spot picker needs in one round trip: the layout, the union of taken spots, and the subsets the viewer holds for themselves vs. for guests they registered.

myRegistrationActivityRegistration
myGuestRegistrations[ActivityRegistration!]!

Confirmed registrations on this session that the viewer booked on behalf of someone other than themselves. Empty for unauthenticated requests, and excludes the viewer's own registration. Ordered by creation time, oldest first, so card UIs can render the first one or two guests stably without re-sorting.

paymentResolutionPaymentResolution

Resolved payment options for the current user. Null when not authenticated.

When forGuest is true, options are computed for a registration the viewer is booking on behalf of someone else: regular memberships are excluded (their session balance covers the member only), and any membership with guest passes remaining is surfaced as a MembershipGuestPassPaymentOption instead.

Arguments (1)
forGuestBoolean= false
locationLocation
facilityFacility

The specific facility (room / court / studio) within location this session takes place in, or null when the session targets the whole location. When set, location is always the facility's parent location.

Staff assigned to this session. Merges assignments from the parent activity with any session-specific overrides.

individualRegistrationsActivityRegistrationConnection!

Confirmed registrations for this session, ordered by createdAt ASC, id ASC. Cursor-paginated; default page size 50, clamped to [1, 100].

Arguments (2)
firstInt= 50
afterString
waitlistRegistrationsActivityRegistrationConnection!

Waitlisted and offered registrations for this session, ordered by createdAt ASC, id ASC (the same order the waitlist promotes from). Cursor-paginated; default page size 50, clamped to [1, 100].

Arguments (2)
firstInt= 50
afterString
metadataString

Returns the value of the named metadata key, or null if not set. Names use reverse-DNS format, e.g. sessions.website.spotify.playlist.id.

Arguments (1)
nameString!
matchMatch

The single match played in this session — a league session is one match between two competitors. Null for non-league sessions, or a league session whose fixture has not been set. Only populated when the viewer's business has the leagues feature enabled.

createdAtDateTime!
calendarCalendarUrl

Used in

ActivitySession