Evaluator lane
Try the booking flow without reverse-engineering the platform.
This page collects machine entry points, runtime checks, sample supply IDs and example snippets needed to move from discovery to a first sandbox booking attempt.
1. Discover
Fetch capability metadata first.
Start with the Agent Card and OpenAPI before attempting writes. The booking surface is designed to be machine-discoverable.
2. Quote
Use one concrete property, room and rate.
This page hydrates one live sample when available so evaluators can avoid placeholder drift during the first quote call.
3. Confirm
Keep hold, payment and booking IDs explicit.
The flow remains reliable only when the runtime preserves quote, hold and receipt state between calls.
Live sample
Use a real property when inventory is available.
These IDs are pulled from the current catalog. If no live property is available, use the first snippet to fetch supply IDs before continuing.
Example flow
Fastest path to a first sandbox booking attempt.
curl -s 'https://api.agenthotel.dev/v1/properties' \
-H 'accept: application/json'curl -s -X POST 'https://api.agenthotel.dev/v1/quotes' \
-H 'content-type: application/json' \
-d '{
"hotel_id": "<property_id>",
"room_type_id": "<room_type_id>",
"rate_plan_id": "<rate_plan_id>",
"check_in": "2026-05-02",
"check_out": "2026-05-04",
"adults": 2
}'curl -s -X POST 'https://api.agenthotel.dev/v1/holds' \
-H 'content-type: application/json' \
-H 'Idempotency-Key: sandbox-hold-001' \
-H 'Authorization: Bearer <agent_secret>' \
-d '{ "quote_id": "<quote_id>" }'curl -s -X POST 'https://api.agenthotel.dev/v1/bookings' \
-H 'content-type: application/json' \
-H 'Authorization: Bearer <agent_secret>' \
-H 'Idempotency-Key: sandbox-booking-001' \
-d '{
"quote_id": "<quote_id>",
"hold_id": "<hold_id>",
"payment_intent_id": "<payment_intent_id>",
"guest": { "full_name": "Alex Nguyen", "email": "alex@example.com", "phone": "+84900111222" }
}'Delegated booking
Run the fuller sandbox smoke when you need traveler delegation.
The admin sandbox and smoke script cover the extended delegated-payment path: agent creation, consent, mandate, authorization and booking confirmation.
cd apps/commerce-api
pnpm smoke:delegated-bookingNext reads