Skip to content

Read Booking origin

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

Read an existing instance.

The IP address and device a guest booked from, captured only for a booking the guest made online themselves (source = direct_web). Card-network evidence for a fraud chargeback (Visa Compelling Evidence 3.0); kept apart from the reservation so its own retention clock applies and its values never travel in an event image.

id
required
string format: uuid

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

branch
string format: uuid

Read through an open branch’s copy-on-first-write overlay view instead of the canonical (main) plane. Does not compose with as_of (422). The branch must exist under the caller’s tenant.

Object found.

Media typeapplication/json
object
created_at
required
string format: date-time
id
required
string format: uuid
object_type
required
Allowed value: hospitality.booking_origin
properties
required
object
captured_at
required
When the booking engine saw the guest book
string format: date-time
device_id
A stable identifier for the device the booking was made on, as the booking engine assigns it. Visa counts device id or device fingerprint as one element, never both.
string
id
required
Origin record id
string
ip_address
The IP address the booking was made from, as the booking engine saw it (IPv4 or IPv6, canonical form)
string
retain_until
required
Storage-limitation clock: captured_at plus 485 days, the 364-day CE 3.0 lookback and the 120-day window for a dispute to arrive. The same discipline `payment_card` and `guest_id_document` carry.
string format: date
provenance

Per-property source attribution and pins. An entry under properties means the property’s current value came from that source (on the source’s own clock, source_updated_at); an entry under pins is a human override protecting the property from sourced writes.

object
pins
object
key
additional properties
object
pinned_at
string format: date-time
pinned_by
object
reason
required
string
properties
object
key
additional properties
object
external_id
string
recorded_at
required
string format: date-time
source
required
string
source_updated_at
string format: date-time
stream
string
scope
required
One of: discriminator: level
object
level
required
string
Allowed value: tenant
Allowed values: tenant
tenant_id
required
string format: uuid
updated_at
required
string format: date-time
version
required
integer
>= 1
Example
{
"object_type": "hospitality.booking_origin",
"scope": {
"level": "tenant"
}
}
ETag
string
/^"\d+"$/

Quoted strong validator (RFC 7232 §2.3) carrying the object’s monotonic version. Informational on the read path — object mutation goes through typed actions on /v1/actions/{action}/apply, not raw CRUD.

No object with that id (or soft-deleted).