Skip to content

Read Waitlist entry as of a watermark

GET
/v1/object-types/hospitality.waitlist_entry/objects/{id}/as-of
curl --request GET \
--url 'https://api.aerandil.com/v1/object-types/hospitality.waitlist_entry/objects/2489E9AD-2EE2-8E00-8EC9-32D5F69181C0/as-of?at=example' \
--header 'Authorization: Bearer <token>'

Time-travel read: the instance as it stood at the at watermark, reconstructed by folding its structural events. Property values that were marking-redacted or truncated in the event log surface as sentinel objects, not values.

A reservation request the house could not take, waiting for inventory to free up. Not a reservation status and not a reservation: nothing traverses a waitlist entry, so it consumes no availability by construction. Carries the request (property, guest, room type, rate plan, dates, occupancy) so accept_waitlist_entry can replay it through the ordinary guarded create path, plus the wait’s own bookkeeping — reason for turnaway analysis, priority tier and requested_at for the working order (tier, then FIFO within tier), and telephone for OPERA’s call-to-confirm flow. An offer — the desk’s, or the automation lane’s matcher on a freed room-night — keeps the room-nights for the guest in the ledger’s blocked count until offer_deadline, listing them in held_nights so accept, cancel, a lapse and expiry give back exactly what was held; a lapsed offer returns the entry to waiting and the matcher passes the room to the next. The night audit expires the entry two business days after its requested departure.

id
required
string format: uuid

Object id (UUID v7, server-generated at create time).

at
required
string

The watermark: an event seq (integer, canonical — the /v1/events cursor namespace) or an RFC3339 timestamp (resolved to the latest seq at or before it in the tenant’s stream).

The reconstructed as-of state.

Media typeapplication/json
object
at
required
string
events_applied
required
integer
id
required
string format: uuid
last_event_seq
required
integer
last_event_ts
required
string format: date-time
object_type
required
Allowed value: hospitality.waitlist_entry
properties
required

Log-shaped folded bag: each entry is a typed {kind, value} object, a {redacted: [markings]} sentinel, or a {truncated_bytes: n} sentinel.

object
key
additional properties
any
Example
{
"object_type": "hospitality.waitlist_entry"
}

Object did not exist at the watermark (not yet created, or already deleted).

Malformed at, or the object’s history predates structural event images and cannot back a faithful reconstruction.