ActivityFilterFilter applied to a paginated activity list. query matches the activity's name (case-insensitive substring). Array filters narrow the result to activities whose type / structure / registration.status is in the supplied set; an empty or omitted array applies no filter. startAfter / endBefore restrict to activities whose configured startDate / endDate falls on or after / on or before the supplied ISO-8601 date string.
ActivitySessionFilterOptional filters for Business.scheduledSessions. All fields are ANDed together; date-range filtering still goes through the parent starting argument so the same predicates back both fields.
ActivitySessionsStartingAppointmentItemInputA booked time against an appointment-structured activity.
AttributionInputClient-captured marketing attribution forwarded through a booking / checkout / sign-up mutation (issue #2060). firstTouch is the visitor's first-ever touch (persisted in browser storage and stamped, immutably, onto a newly created participant); lastTouch is the touch that converted (stamped onto the registration / purchase). Either may be omitted; when only one is present the server uses it for both.
AttributionTouchInputOne captured marketing-attribution touch: the raw utm_* campaign labels plus the referrer host and landing path the visitor arrived on. For privacy, send only the referrer host (never the full referrer URL with its query string) and the landing path. There is deliberately no origin field — the server classifies origin itself and never trusts a client-claimed marketplace origin.
BuyerInputBuyer details for an unauthenticated checkout. Required when the caller is not signed in and the target product or activity allows guest checkout. Ignored when the caller is signed in. The server finds an existing user by email or creates a new one inline; when createAccount is true (the default), a magic-link email is sent so the buyer can claim the account.
CheckoutInputCheckoutItemInputOne basket. Every branch names its target with id, so an item reads as {session: {id: …, tiers: […]}} rather than repeating the branch key.
CheckoutPreviewActivityInputCheckoutPreviewBookingInputAn appointment booking to price, mirroring the arguments bookActivityTime takes. The quote runs the same pricing rules and sales-tax calculation the mutation runs at charge time, so the buyer's order summary and the amount charged agree. Availability is not checked here — this is a price quote, and the mutation still validates the slot when the booking commits.
CheckoutPreviewInputEntityRefFavoriteTargetInputTarget for a favorite operation. Exactly one of business, staff, or activity must be provided — the mutation dispatches based on which field is set.
FundingPreferenceInputHow the buyer would like to pay, when the business offers a choice.
GuestRegistrationInputIdentifies the guest being registered. The booker (the caller of registerForActivity) is recorded as the payer; the guest is the attendee.
JoinWaitlistInputLeagueEntryInputA team's or an individual's place in a league division.
MetadataFilterInputMatches entities that have any of values stored under metadata key name. Key accepts the $. shorthand for the sessions. namespace.
ParticipantSelectionInputWho a line books for.
ProductFilterProductItemInputProductPurchaseGiftInputRegistrationDataInputSessionItemInputA claim on one session — a class spot, tickets to a showtime.
StaffMemberFilterFilter applied to a paginated staff list. query matches the staff member's name.
TaxAddressInputTeamEntryInputTeamEntryMemberInputTierQuantityInput