goibibo.com APIgoibibo.com ↗
Search airports, find one-way flights, compare fare tiers, and retrieve cancellation policies from Goibibo with 4 structured endpoints.
curl -X GET 'https://api.parse.bot/scraper/646763c2-828c-4b36-80a4-117d6a320738/search_airports?query=BOM' \ -H 'X-API-Key: $PARSE_API_KEY'
Search for airports by city name or IATA code. Returns matching airport suggestions including IATA codes, airport names, city names, country information, and nearby airports within 200km.
| Param | Type | Description |
|---|---|---|
| limit | integer | Maximum number of airport suggestions to return |
| queryrequired | string | City name or IATA code to search for (e.g. 'DEL', 'Mumbai', 'BOM') |
{
"type": "object",
"fields": {
"results": "object containing SUGGESTIONS with title and data array of airport matches"
},
"sample": {
"data": {
"results": {
"SUGGESTIONS": {
"data": [
{
"iata": "BOM",
"icon": "https://imgak.goibibo.com/flights-gi-assets/dt/common/icons/ic-flight-onward.png",
"country": "India",
"cityName": "Mumbai",
"groupData": [
{
"iata": "NMI",
"country": "India",
"cityName": "Navi Mumbai",
"group_type": "NB",
"airportName": "Navi Mumbai International Airport",
"countryCode": "IN",
"distanceInfoText": "22 km from Mumbai"
}
],
"locusCode": "CTBOM",
"group_type": "",
"airportName": "Chhatrapati Shivaji International Airport",
"countryCode": "IN",
"iataBgColors": [
"#F2F2F2"
],
"iataBorderColors": [
"#D8D8D8"
]
}
],
"title": "SUGGESTIONS"
}
}
},
"status": "success"
}
}About the goibibo.com API
The Goibibo API exposes 4 endpoints covering airport lookup, one-way flight search, fare tier details, and cancellation or date-change policies sourced from Goibibo. Starting with search_airports, you can resolve city names or IATA codes into structured airport records before passing those codes into search_flights to retrieve live flight listings. Each flight result carries an rKey that unlocks per-fare and per-rule data downstream.
Airport and Flight Search
The search_airports endpoint accepts a query string — either a city name like "Mumbai" or an IATA code like "BOM" — and returns a results object containing a SUGGESTIONS key with a title and a data array of matching airports. Each suggestion includes the IATA code, airport name, city name, country details, and nearby airports within 200 km. An optional limit parameter caps the number of suggestions returned.
Once you have origin and destination IATA codes, search_flights takes those codes plus a date in YYYYMMDD format and returns a flights array alongside a total_found integer. The response covers one-way itineraries only. Each flight object in the array includes an rKey field, a unique identifier used as the entry point for both fare and policy lookups.
Fare Tiers and Cancellation Rules
Passing an rKey to get_fare_details returns a fares array listing the available fare tiers for that specific flight — useful for comparing economy, flexi, or business bucket pricing without making a separate booking flow call. The get_fare_rules endpoint accepts the same rKey and returns a rules object describing the cancellation and date-change conditions that apply, including any fee structures or time-window restrictions Goibibo exposes for that fare.
Data Shape and Chaining
The four endpoints are designed to chain: airport search produces IATA codes, flight search consumes those codes and produces rKey values, and the fare and rules endpoints consume those keys. There is no session state required between calls — each request is stateless and self-contained.
- Build a flight price tracker that monitors fare changes for a route by polling
search_flightswith a fixed origin, destination, and date. - Populate an airport autocomplete widget using
search_airportswith city name queries, showing IATA codes and nearby airport alternatives. - Compare fare tiers on a specific flight by feeding its
rKeyintoget_fare_detailsbefore presenting booking options to a user. - Display cancellation policy summaries at checkout by calling
get_fare_ruleswith a flight'srKey. - Identify nearby airport alternatives within 200 km for a given city using the nearby airport data in
search_airportsresults. - Aggregate one-way flight availability across multiple departure dates by looping
search_flightscalls with differentdatevalues. - Audit date-change fees across multiple itineraries by batch-calling
get_fare_rulesfor eachrKeycollected from a flight search.
| Tier | Price | Credits/month | Rate limit |
|---|---|---|---|
| Free | $0/mo | 100 | 5 req/min |
| Hobby | $30/mo | 1,000 | 20 req/min |
| Developer | $100/mo | 5,000 | 250 req/min |
One credit = one API call regardless of which marketplace API you call. Exceeding the rate limit returns a 429 response. Authenticate with the X-API-Key header.
Does Goibibo have an official public developer API?+
What does `search_flights` return, and does it cover round-trip itineraries?+
flights array and a total_found count for one-way itineraries between the specified origin and destination on the given date. Round-trip search is not currently covered. The API handles one-way flights using the origin, destination, and date parameters. You can fork it on Parse and revise to add a round-trip or multi-city endpoint.What does the `rKey` represent and where does it come from?+
rKey is a flight-specific identifier returned inside each object in the flights array from search_flights. It is required as input for both get_fare_details and get_fare_rules. Keys are tied to a specific search result and should not be assumed stable across separate search calls.Does the API return hotel or bus booking data from Goibibo?+
Is there any pagination support for `search_flights` results?+
search_flights endpoint returns a flat flights array and a total_found integer but does not expose pagination parameters such as offset or page number. If a route has a large number of available flights, the full set returned in one call represents the available response shape. You can fork the API on Parse and revise it to add pagination or filtering parameters.