@lap v0.3
# Machine-readable API spec. Each @endpoint block is one API call.
@api Hotel Search API
@base https://test.api.amadeus.com/v3
@version 3.0.9
@endpoints 2
@toc shopping(2)

@endpoint GET /shopping/hotel-offers
@desc getMultiHotelOffers
@required {hotelIds: any # Amadeus property codes on 8 chars. Mandatory parameter for a search by predefined list of hotels.}
@optional {adults: any # Number of adult guests (1-9) per room., checkInDate: any # Check-in date of the stay (hotel local date). Format YYYY-MM-DD. The lowest accepted value is the present date (no dates in the past). If not present, the default value will be today's date in the GMT time zone., checkOutDate: any # Check-out date of the stay (hotel local date). Format YYYY-MM-DD. The lowest accepted value is checkInDate+1. If not present, it will default to checkInDate +1., countryOfResidence: any # Code of the country of residence of the traveler expressed using ISO 3166-1 format., roomQuantity: any # Number of rooms requested (1-9)., priceRange: any # Filter hotel offers by price per night interval (ex: 200-300 or -300 or 100). It is mandatory to include a currency when this field is set., currency: any # Use this parameter to request a specific currency. ISO currency code (http://www.iso.org/iso/home/standards/currency_codes.htm). If a hotel does not support the requested currency, the prices for the hotel will be returned in the local currency of the hotel., paymentPolicy: any # Filter the response based on a specific payment type. NONE means all types (default)., boardType: any # Filter response based on available meals:         * ROOM_ONLY = Room Only         * BREAKFAST = Breakfast         * HALF_BOARD = Diner & Breakfast (only for Aggregators)         * FULL_BOARD = Full Board (only for Aggregators)         * ALL_INCLUSIVE = All Inclusive (only for Aggregators), includeClosed: any # Show all properties (include sold out) or available only. For sold out properties, please check availability on other dates., bestRateOnly: any # Used to return only the cheapest offer per hotel or all available offers., lang: any # Requested language of descriptive texts.  Examples: FR , fr , fr-FR. If a language is not available the text will be returned in english. ISO language code (https://www.iso.org/iso-639-language-codes.html).}
@returns(200) OK
@errors {400: Bad request:  | Code | Title  | |-----|-----| | 23   | PASSENGER TYPE NOT SUPPORTED   | | 61 | INVALID CURRENCY CODE| | 137 | INVALID ADULTS OCCUPANCY REQUESTED| | 145 | DURATION PERIOD OR DATES INCORRECT| | 195 | SERVICE RESTRICTION| | 249 | INVALID RATE CODE| | 377 | MAX STAY DURATION IS EXCEEDED| | 381 | INVALID CHECK-IN DATE| | 382 | INVALID CHECK-OUT DATE| | 383 | INVALID CITY CODE| | 392 | INVALID HOTEL CODE| | 397 | INVALID NUMBER OF ADULTS| | 400 | INVALID PROPERTY CODE| | 404 | CHECK_OUT DATE MUST BE FURTHER IN THE FUTURE THAN CHECK-IN DATE| | 424 | NO HOTELS FOUND WHICH MATCH THIS INPUT| | 431 | CHECK-OUT DATE IS TOO FAR IN THE FUTURE THAN CHECK-IN DATE| | 424 | NO HOTELS FOUND WHICH MATCH THIS INPUT| | 431 | CHECK-OUT DATE IS TOO FAR IN THE FUTURE| | 450 | INVALID PROVIDER RESPONSE| | 451 | INVALID CREDENTIALS| | 562 | RESTRICTED ACCESS FOR THE REQUESTED RATES AND CHAINS| | 784 | PROVIDER TIME OUT| | 790 | RATE SECURITY NOT LOADED|, 500: Internal server error.}

@endpoint GET /shopping/hotel-offers/{offerId}
@desc getOfferPricing
@required {offerId: any # Unique identifier of an offer. Either the GDS booking code or the aggregator offerId with a limited lifetime.}
@optional {lang: any # Requested language of descriptive texts.  Examples: FR , fr , fr-FR. If a language is not available the text will be returned in english. ISO language code (https://www.iso.org/iso-639-language-codes.html).}
@returns(200) OK
@errors {400: Bad Request: code| title ------- | ------------------------------------- 23 | PASSENGER TYPE NOT SUPPORTED 61 |INVALID CURRENCY CODE 137 | INVALID ADULTS OCCUPANCY REQUESTED 145 | DURATION PERIOD OR DATES INCORRECT 195 | SERVICE RESTRICTION 249 | INVALID RATE CODE 377 | MAX STAY DURATION IS EXCEEDED 381 | INVALID CHECK-IN DATE 382 | INVALID CHECK-OUT DATE 383 | INVALID CITY CODE 392 | INVALID HOTEL CODE 397 | INVALID NUMBER OF ADULTS 400 | INVALID PROPERTY CODE 402 | INVALID ROOM TYPE 404 | CHECK_OUT DATE MUST BE FURTHER IN THE FUTURE THAN CHECK-IN DATE 424 | NO HOTELS FOUND WHICH MATCH THIS INPUT 431 | CHECK-OUT DATE IS TOO FAR IN THE FUTURE 450 | INVALID PROVIDER RESPONSE 451 | INVALID CREDENTIAL 562 | RESTRICTED ACCESS FOR THE REQUESTED RATES AND CHAINS 784 | PROVIDER TIME OUT 790 | NO PROPERTIES FOUND WITHIN THIS RADIUS 795 | NO SIMILAR NAME FOUND, PLEASE ENLARGE YOUR SEARCH CRITERIA 842 | RATE SECURITY NOT LOADED, 404: Hotel or offer not found, 500: Internal server error.}

@end
