Skip to content
ActivitySessionFilterInput

Optional 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.

Fields

activity[ID!]

Restrict to sessions whose parent activity matches any of the listed activity GraphQL IDs. Null or empty means "no activity constraint".

staff[ID!]

Restrict to sessions where any of the listed staff members are assigned. Null or empty means "no staff constraint".

Time-of-day buckets evaluated in the business's local timezone. Sessions whose local start hour falls in any of the listed buckets are included. Null or empty means "any time of day".

Lifecycle statuses to include. Sessions whose status matches any of the listed values are included. Null or empty means "any status" — callers can pass [scheduled, active] to mirror the legacy "upcoming only" behaviour without coupling time and status.

queryString

Case-insensitive substring match against the session's name and the parent activity's name.

Restrict to sessions created via any of the listed sources. Null or empty means "any source". appointment sessions are only ever returned in the owning business's admin context; public and cross-business reads silently drop them even when requested here.

pendingRequestBoolean

Restrict to sessions that hold at least one pending (requested) appointment booking awaiting approval. Appointment sessions only — a no-op for class/recurring activities, which never carry requested registrations. Combined with the source gate, only the owning admin context ever sees a match.

Used in

ActivitySessionFilter