Catalog sync flow
Seyaha syncs your catalog on a nightly schedule and whenever a sync is manually triggered. Here is the sequence of calls your API will receive during a sync:updated_since set to the previous last_sync_at timestamp — return only changed
products to keep the sync fast.
Health probes
In addition to syncs, Seyaha probes yourGET /products?limit=1 endpoint periodically
to verify connectivity. Your endpoint must return 200 quickly (default timeout: 5 seconds)
to stay HEALTHY. You can return an empty array or a single product — the content is not
used during probes.
Booking lifecycle
When a customer on Seyaha books one of your activities:On checkout
Seyaha callsPOST /availability for the specific date to get a fresh availabilityId
if the locally cached one is stale, then calls POST /bookings/reserve to hold the slot.
On payment
After a successful payment Seyaha callsPOST /bookings/confirm with the
reservationConfirmationCode from the reserve step.
On hold expiry / abandonment
If the customer does not complete payment beforeexpiresAt, Seyaha calls
DELETE /bookings/{reservationCode} to release the hold. Your endpoint should
free the slot so other customers can book it.
On cancellation
When a paid booking is cancelled, Seyaha callsPOST /bookings/{externalBookingId}/cancel. Implement this if you want cancellations
to propagate to your platform.
Timeouts
Seyaha applies the following timeouts when calling your API:
Design your endpoints to respond well within these limits, especially
/availability
which is called on every option of every product during a full sync.