Fetch all events
Changed onReturns a paginated list of events for the specified business. Results can be filtered by status, cancellation, date range, and text search.
Cancelled bookings are excluded by default. Cancellation is tracked separately from status -- a cancelled booking keeps the status it had when it was cancelled -- so it is filtered with canceled_status, not event_status. Pass canceled_status=show_canceled_only to list only cancelled bookings, or canceled_status=show_all to include them alongside everything else. The two filters combine: event_status=confirmed&canceled_status=show_canceled_only returns cancelled confirmed bookings.
The response includes meta.total_count (total matching events) and meta.per_page (results per page) to support pagination.
Syncing changes. Pass updated_since to fetch only events changed since your last sync, including changes to booking questions and questionnaire answers. Send a full ISO 8601 timestamp with an offset, such as 2026-10-12T15:00:00Z; a bare date means noon. Start each sync from the time your previous one began, less a minute, since changes take a few seconds to become searchable. Each event's updated_at shows when it last changed.
Use the include query parameter to sideload related resources (comma-separated). Available: event_bookings, proposal_alternatives, event_users, event_staff_members, event_staff_requests, contacts, notes, event_adjustments. The event's customers are sideloaded via event_users — there is no customer include.
On a proposal with alternatives, starting_balance, deposit_amount_due and balance_amount_due add every alternative together, which is not a price the client pays. Read each alternative's totals instead.
Required permission: assigned_event_read or unassigned_event_read
Request
- Base URL: https://api.checkcherry.com
- URL: https://api.checkcherry.com/api/v1/events
- Auth: none declared. Required headers: Api-Key
Query parameters
Related resources to sideload, comma-separated. The description lists what is available.
Status filter. Does not filter cancellation -- use canceled_status for that.:
- proposal_date_open
- proposal_date_reserved
- proposal_awaiting_review
- awaiting_signature
- confirmed
- any_proposal
- any_confirmed
- any_unsigned
Cancellation filter. Defaults to hide_canceled.
Postponement filter. Defaults to hide_postponed.
Expired-proposal filter. Defaults to hide_expired.
When filter. Defaults to both. Ignored when an event date range is supplied.
Event Date (Start)
Event Date (End)
Booked Date (Start)
Booked Date (End)
Only events changed at or after this time (ISO 8601, such as 2026-10-12T15:00:00Z)
Text Search
Return only the event with this ID
Limit to events on this brand
Limit to events for this client
Limit to events this staff member is assigned to
Limit to events with a package in this service. Service ids come from GET /api/v1/event_categories.
Proposals only. false returns proposals the client has never opened, true those they have. Combine with expired_status=show_all to include expired proposals.
Only events whose deposit is unpaid
Only events with a balance still owed
Only events with a past due payment
Only events with a design template still unselected
Only events with artwork pending
Only events with artwork awaiting approval
Only events with an unsubmitted form
Only events with no staff assigned
Only events with no backdrop assigned
Sort Order. Defaults to automatic.
Page number for pagination (default: 1)
Number of results per page (default: 10, max: 100)
Headers
Your Integration Key
Response
events found
Changes
- info
added the new optional
queryrequest parameterevent_category_id - info
added the new optional
queryrequest parameterproposal_viewed
- info