Itineraries
The Itineraries module provides trip-aware context to the AI layer. When a guest's itinerary is loaded, the AI uses it to surface relevant recommendations at the right time — dinner suggestions when an evening is unscheduled, spa availability when check-out approaches, local activities that match the group profile.
Context injection
When a guest_id with an active itinerary is passed to POST /v1/ai/chat, the AI automatically loads the guest's itinerary context. No additional parameters required — itinerary awareness is on by default.
The Itinerary object (preview)
idstringUnique itinerary ID. Prefixed itn_.property_idstringProperty this itinerary belongs to.guest_idstringAssociated guest.check_indateArrival date.check_outdateDeparture date.room_typestring | nullAssigned or preferred room type.party_sizeintegerNumber of guests in the party.party_compositionobjectadults, children, infants counts.eventsItineraryEvent[]Ordered list of scheduled events (dining, activities, treatments, transport).notesstring | nullFree-text notes visible to the AI and property staff.statusstringpre_arrival, in_stay, post_stay, cancelled.Sample itinerary payload
{
"id": "itn_k1l2m3n4",
"property_id": "pty_xyz123",
"guest_id": "gst_a1b2c3d4e5f6",
"check_in": "2026-03-20",
"check_out": "2026-03-24",
"room_type": "ocean_view_suite",
"party_size": 2,
"party_composition": { "adults": 2 },
"status": "pre_arrival",
"events": [
{
"type": "dining",
"name": "Sunset Restaurant Reservation",
"datetime": "2026-03-20T20:00:00",
"duration_minutes": 90,
"notes": "Anniversary dinner — champagne on arrival"
},
{
"type": "treatment",
"name": "Couples Spa Retreat",
"datetime": "2026-03-21T11:00:00",
"duration_minutes": 90
}
],
"notes": "Honeymoon stay. Guest preferences: gluten-free dining, ocean views."
}AI context example
With an active itinerary, the AI uses the scheduled events and unscheduled time windows to frame recommendations:
{
"messages": [
{ "role": "user", "content": "What should we do tomorrow afternoon?" }
],
"guest_id": "gst_a1b2c3d4e5f6",
"channel": "in_app"
}AI response grounded on itinerary
"Tomorrow afternoon looks open between 2pm and your Couples Spa Retreat at 5pm. That's a perfect window for the paddle boards — weather looks clear. The water sports desk opens at 9am if you'd like to reserve ahead. Alternatively, the golf course is about a 10-minute cart ride and usually has afternoon tee times available. Shall I check availability for either?"
Planned endpoints (early access)
/v1/itinerariesCreate an itinerary for a guest.
/v1/itineraries/{id}Retrieve an itinerary with all events.
/v1/itineraries/{id}Update itinerary dates, room, or notes.
/v1/itineraries/{id}/eventsAdd an event to the itinerary.
/v1/itineraries/{id}/events/{event_id}Remove an event.