{ "$schema": "https://json-schema.org/draft/2020-12/schema", "$id": "https://raw.githubusercontent.com/api-evangelist/amadeus/refs/heads/main/json-schema/hotel-search-hotel-offers-schema.json", "title": "HotelOffers", "description": "HotelOffers schema from Hotel Search API", "type": "object", "properties": { "type": { "description": "the type of the object (hotel-offers)", "type": "string", "example": "string-value" }, "available": { "type": "boolean", "example": true }, "self": { "type": "string", "example": "string-value" }, "offers": { "type": "array", "items": { "title": "HotelOffer", "description": "Hotel Offer", "type": "object", "properties": { "type": { "$ref": "#/definitions/Type" }, "id": { "description": "Unique identifier of this offer. Might be valid for a temporary period only.", "example": "TSXOJ6LFQ2", "type": "string", "minLength": 2, "maxLength": 100, "pattern": "^[A-Z0-9]*$" }, "checkInDate": { "description": "check-in date of the stay (hotel local date). Format YYYY-MM-DD\nThe lowest accepted value is today date (no dates in the past).", "example": "2020-12-30", "type": "string", "format": "date" }, "checkOutDate": { "description": "check-out date of the stay (hotel local date). Format YYYY-MM-DD\nThe lowest accepted value is `checkInDate`+1.", "example": "2020-12-31", "type": "string", "format": "date" }, "roomQuantity": { "description": "number of rooms (1-9)", "example": "1", "type": "string" }, "rateCode": { "description": "Special Rate - Provider Response Code (3 chars)\nExamples\n\n * RAC - Rack\n\n * BAR - Best Available Rate\n\n * PRO - Promotional\n\n * COR - Corporate\n\n * GOV - Government (qualified)\n\n * AAA - AAA (qualified)\n\n * BNB - Bed and Breakfast\n\n * PKG - Package\n\n * TVL - Travel Industry\n\n * SPC - Special Promo Rate\n\n * WKD - Weekend\n\n * CON - Convention\n\n * SNR - Senior (Europe) (qualified)\n\n * ARP - AARP - American Association of Retired People (50+) (qualified)\n\n * SRS - Senior (qualified)\n\n * ROR - Room Only Rate (no breakfast)\n\n * FAM - Family\n\n * DAY - Day rate", "example": "RAC", "type": "string", "minLength": 3, "maxLength": 3, "pattern": "^[A-Z0-9*]{3}$" }, "rateFamilyEstimated": { "$ref": "#/definitions/HotelProduct_RateFamily" }, "category": { "description": "Special Rate Category\nExamples:\n ASSOCIATION\n FAMILY_PLAN", "example": "FAMILY_PLAN", "type": "string" }, "description": { "$ref": "#/definitions/QualifiedFreeText" }, "commission": { "$ref": "#/definitions/HotelProduct_Commission" }, "boardType": { "$ref": "#/definitions/BoardType" }, "room": { "$ref": "#/definitions/HotelProduct_RoomDetails" }, "guests": { "$ref": "#/definitions/HotelProduct_Guests" }, "price": { "$ref": "#/definitions/HotelProduct_HotelPrice" }, "policies": { "$ref": "#/definitions/HotelProduct_PolicyDetails" }, "self": { "description": "A self link to the object. Use this to refresh the Offer price", "example": "https://test.travel.api.amadeus.com/v2/shopping/hotel-offers/63A93695B58821ABB0EC2B33FE9FAB24D72BF34B1BD7D707293763D8D9378FC3", "type": "string" } }, "required": [ "id", "rateCode", "room", "price" ] } }, "hotel": { "title": "Hotel", "description": "Hotel Content", "type": "object", "properties": { "hotelId": { "description": "Amadeus Property Code (8 chars)", "example": "ADPAR001", "type": "string", "pattern": "^[A-Z0-9]{8}$" }, "chainCode": { "description": "Brand (RT...) or Merchant (AD...) (Amadeus 2 chars Code)", "example": "AD", "type": "string", "pattern": "^[A-Z]{2}$" }, "brandCode": { "description": "Brand (RT...) (Amadeus 2 chars Code). Small Properties distributed by Merchants may not have a Brand.\nExample - AD (Value Hotels) is the Provider/Merchant, and RT (Accor) is the Brand of the Property", "example": "RT", "type": "string", "pattern": "^[A-Z]{2}$" }, "dupeId": { "description": "Unique Property identifier of the physical hotel.\nOne physical hotel can be represented by different Providers, each one having its own `hotelID`.\nThis attribute allows a client application to group together hotels that are actually the same.", "example": "501132260", "type": "string" }, "name": { "description": "Hotel Name", "example": "Hotel de Paris", "type": "string" }, "cityCode": { "description": "Warning: The IATA city code associated to the hotel (not necessary the real Hotel City)", "example": "PAR", "type": "string", "pattern": "^[A-Z]{3}$" } } } } }