{"tenantSlug":"lizardking","hotelName":"Lizard King Hotel & Suites","bookingBaseUrl":"https://lizardkinghotel.com","supportedLocales":["en","es-CR"],"contact":{"supportEmail":"lkhreservations@gmail.com","supportPhone":"+506 2750 0614","supportWhatsapp":"+506 6332 3802"},"policies":{"cancellationSummaryEn":"All reservations are final and non-refundable.","cancellationSummaryEs":"Todas las reservaciones son finales y no reembolsables.","petSummaryEn":"Pets are welcome in select room categories. Pet fees are calculated automatically during booking based on room category, number of pets, and stay length.","petSummaryEs":"Las mascotas son bienvenidas en categorias de habitacion seleccionadas. El cargo por mascota se calcula automaticamente durante la reservacion segun la categoria, la cantidad de mascotas y la duracion de la estadia."},"checkoutMode":"CARD_CHECKOUT","guardrails":["Never invent availability, room categories, taxes, pet fees, or totals.","Treat POST /api/v1/reservation/public/cart/quote as the authoritative backend quote before payment or reservation creation.","Use reservation.createOrCheckoutLink for booking handoff after the guest confirms dates and party size.","Treat hold.create as a state-changing inventory hold and use it only with explicit guest confirmation.","Do not use admin, platform-admin, or reservation-manager routes from public AI flows."],"tenantConfigEndpoint":{"method":"GET","url":"https://lizardkinghotel.com/api/v1/public/tenant-config","description":"Current tenant identity, policies, branding, and checkout mode."},"chatMessageEndpoint":{"method":"POST","url":"https://lizardkinghotel.com/api/v1/chat/message","description":"Primary public AI/assistant endpoint for availability, quotes, FAQ answers, short holds, and checkout-link generation."},"authoritativeQuoteEndpoint":{"method":"POST","url":"https://lizardkinghotel.com/api/v1/reservation/public/cart/quote","description":"Authoritative backend quote for selected room categories. Use this before payment or reservation creation."},"categoryAvailabilityEndpoint":{"method":"GET","url":"https://lizardkinghotel.com/api/v1/availability/get-availability","description":"Category-specific availability lookup when the agent already knows the roomCategoryId."},"toolPolicies":[{"name":"availability.search","access":"READ_ONLY","requiresExplicitGuestConfirmation":false,"guidance":"Preferred first step for natural-language availability checks because it can discover room categories without prior category IDs."},{"name":"quote.price","access":"READ_ONLY","requiresExplicitGuestConfirmation":false,"guidance":"Use for authoritative stay pricing, taxes, and cancellation policy summaries after dates and guest counts are known."},{"name":"faq.answer","access":"READ_ONLY","requiresExplicitGuestConfirmation":false,"guidance":"Use for factual hotel questions such as policies, pets, location, and contact guidance."},{"name":"reservation.createOrCheckoutLink","access":"CHECKOUT_HANDOFF","requiresExplicitGuestConfirmation":true,"guidance":"Preferred booking handoff. It returns a prefilled checkout URL and does not itself create a reservation."},{"name":"hold.create","access":"STATE_CHANGING","requiresExplicitGuestConfirmation":true,"guidance":"Creates a short inventory hold. Use only after the guest explicitly asks to hold the room."}],"tools":[{"type":"function","function":{"name":"availability.search","parameters":{"type":"object","properties":{"checkoutDate":{"type":"string","description":"ISO date YYYY-MM-DD"},"pets":{"type":"integer","minimum":0},"roomCategoryId":{"type":"integer"},"roomCategoryName":{"type":"string"},"rooms":{"type":"integer","minimum":1},"adults":{"type":"integer","minimum":1},"checkInDate":{"type":"string","description":"ISO date YYYY-MM-DD"},"children":{"type":"integer","minimum":0}},"required":["checkInDate","checkoutDate"]},"description":"Get room availability using hotel inventory and current holds."}},{"type":"function","function":{"name":"quote.price","parameters":{"type":"object","properties":{"checkoutDate":{"type":"string","description":"ISO date YYYY-MM-DD"},"pets":{"type":"integer","minimum":0},"roomCategoryId":{"type":"integer"},"roomCategoryName":{"type":"string"},"rooms":{"type":"integer","minimum":1},"adults":{"type":"integer","minimum":1},"checkInDate":{"type":"string","description":"ISO date YYYY-MM-DD"},"children":{"type":"integer","minimum":0}},"required":["checkInDate","checkoutDate"]},"description":"Get total quote with subtotal, tax, and cancellation policy summary."}},{"type":"function","function":{"name":"hold.create","parameters":{"type":"object","properties":{"checkoutDate":{"type":"string","description":"ISO date YYYY-MM-DD"},"pets":{"type":"integer","minimum":0},"roomCategoryId":{"type":"integer"},"roomCategoryName":{"type":"string"},"rooms":{"type":"integer","minimum":1},"adults":{"type":"integer","minimum":1},"checkInDate":{"type":"string","description":"ISO date YYYY-MM-DD"},"children":{"type":"integer","minimum":0},"holdMinutes":{"minimum":5,"maximum":30,"type":"integer"}},"required":["checkInDate","checkoutDate"]},"description":"Create a short hold (5-30 minutes) to reduce inventory race during checkout."}},{"type":"function","function":{"name":"reservation.createOrCheckoutLink","parameters":{"type":"object","properties":{"checkoutDate":{"type":"string","description":"ISO date YYYY-MM-DD"},"pets":{"type":"integer","minimum":0},"roomCategoryId":{"type":"integer"},"roomCategoryName":{"type":"string"},"rooms":{"type":"integer","minimum":1},"adults":{"type":"integer","minimum":1},"checkInDate":{"type":"string","description":"ISO date YYYY-MM-DD"},"children":{"type":"integer","minimum":0}},"required":["checkInDate","checkoutDate"]},"description":"Create a pre-filled checkout deep-link for web booking."}},{"type":"function","function":{"name":"faq.answer","parameters":{"required":["question"],"properties":{"question":{"type":"string"}},"type":"object"},"description":"Answer factual hotel FAQ entries from structured knowledge."}}],"examples":[{"name":"availability-search","description":"Find availability across categories without knowing roomCategoryId ahead of time.","method":"POST","url":"https://lizardkinghotel.com/api/v1/chat/message","request":{"message":"Check availability for 2 adults from 2030-03-10 to 2030-03-12.","locale":"en","toolRequest":{"args":{"checkoutDate":"2030-03-12","children":0,"pets":0,"adults":2,"checkInDate":"2030-03-10"},"name":"availability.search"}}},{"name":"quote-price","description":"Get an authoritative backend quote once a category is selected.","method":"POST","url":"https://lizardkinghotel.com/api/v1/chat/message","request":{"message":"Quote twoBedSuite for 2 adults from 2030-03-10 to 2030-03-12.","locale":"en","toolRequest":{"args":{"roomCategoryId":4,"children":0,"roomCategoryName":"twoBedSuite","checkoutDate":"2030-03-12","checkInDate":"2030-03-10","pets":0,"adults":2},"name":"quote.price"}}},{"name":"checkout-link","description":"Generate a prefilled booking handoff after the guest confirms their stay details.","method":"POST","url":"https://lizardkinghotel.com/api/v1/chat/message","request":{"message":"Create a checkout link for this stay.","locale":"en","toolRequest":{"args":{"roomCategoryId":4,"children":0,"roomCategoryName":"twoBedSuite","checkoutDate":"2030-03-12","checkInDate":"2030-03-10","pets":0,"adults":2},"name":"reservation.createOrCheckoutLink"}}}]}