MakeMyTrip Hotel Search API
Find Indian hotels with date-specific INR listing prices.
Overview
Search MakeMyTrip hotels in India for your dates and occupancy. Get hotel IDs, INR listing prices, tax fields, coupon conditions, photos, and review summaries.
Scope
India destinations and INR only. Read listing_price.display_basis before comparing amounts; do not assume a stay total. Coupon and bank-offer conditions can affect the displayed price. Continue with next_cursor using exactly the same search parameters and limit; null means no continuation is available.
Authentication
Send your StayAPI key in the X-API-Key header. Successful requests return JSON; failures use RFC 7807 Problem Details.
Endpoint URL
Parameters
| Parameter | Type | Required | Description |
|---|---|---|---|
| city_code | string | Required | MakeMyTrip India city code, 2 to 32 letters or digits. For example CTBLR (Bengaluru) or CTGOI (Goa). |
| check_in | date | Required | Check-in date, YYYY-MM-DD; today or later. |
| check_out | date | Required | Check-out date, YYYY-MM-DD; after check-in, with a maximum stay of 30 nights. |
| adults | integer | Optional | Adults, 1 to 8. Default: 2. |
| rooms | integer | Optional | One room only. Default and only accepted value: 1. |
| child_ages | integer[] | Optional | At most four child ages, each 0 to 17. Repeat the parameter: child_ages=6&child_ages=10. Omit for no children. |
| limit | integer | Optional | Requested page size, 1 to 20. Default: 10. |
| cursor | string | Optional | Opaque next_cursor from the same search and limit, at most 8,192 characters. Omit for the first page; do not edit it. |
Response schema
Examples are illustrative. Prices and available content depend on the requested stay and property.
| Field | Type | Description |
|---|---|---|
| success | boolean | True for a successful response. |
| hotels | array | Hotel IDs, names, nullable stars, locality, coordinates, sold_out, rating, review_count, rating_count, and photo URLs. |
| hotels[].listing_price | object | Nullable amount, amount_including_taxes_and_fees, taxes_and_fees, currency, display_basis, and coupon. These are listing price fields, not a booking quote. |
| hotels[].listing_price.coupon | object|null | Published code, description, amount, auto_applicable, and bank_offer conditions. |
| hotel_count | integer|null | Provider-reported hotel count; distinct from the number returned on this page. |
| next_cursor | string|null | Opaque continuation for this exact search and limit. |
| currency | string|null | INR when supplied; the sales channel is fixed to India. |
Errors and limitations
Errors use RFC 7807 Problem Details with provider: "makemytrip", and a correlation id when supplied.
- 400 INVALID_INPUT: invalid stay dates, city code, occupancy, or a cursor from another search.
- 401 / 402 / 429: check your API key, available quota, and account limits.
- 422: a required parameter is missing or outside its declared type, range, or enum.
- 502 UPSTREAM_ERROR: MakeMyTrip could not complete the request.
- 503: service temporarily unavailable. Honor
Retry-Afterwhen supplied. - 504 UPSTREAM_TIMEOUT: the provider request timed out.