Skip to main content
Partner API · Beta

FD Fare API v1

Build fixed-departure flight search and booking into your travel workflow. This is the first published module in the Idea Holiday Partner API programme.

Connect safely

01

Use an approved Idea Holiday partner account.

02

Send a Firebase token or issued X-API-Key with every request.

03

Keep the returned booking_reference permanently.

Supplier credentials are never shared with partners. Agent bookings are automatically associated with the signed-in partner account.

Endpoints

POST/availability

Find available travel dates for an airport pair.

POST/search

Return live FD Fare options and their expiry time.

POST/confirm

Confirm the selected fare and create a booking.

GET/status/{booking_reference}

Read the latest normalized booking status.

POST/cancel-request

Submit a cancellation request for a booking.

Search example

Dates use `YYYY-MM-DD`; values are returned in INR.

curl --request POST 'https://b2b.ideaholiday.com/api/v1/fly/search' \
  --header 'Authorization: Bearer <FIREBASE_ID_TOKEN>' \
  --header 'Content-Type: application/json' \
  --data '{
    "from_airport": "DEL",
    "to_airport": "DXB",
    "departure_date": "2026-09-15",
    "adults": 1,
    "children": 0,
    "infants": 0,
    "trip_type": "oneway",
    "supplier": "all"
  }'

Confirm a selected fare

Pass the exact flight ID, selected-flight object, and search inputs from your search. Confirmation can have a booking-side effect: after a timeout, check booking status before submitting it again.

{
  "flight_id": "FLIGHT_ID_FROM_SEARCH",
  "search_id": "FD-ALL-…",
  "selected_flight": { "id": "FLIGHT_ID_FROM_SEARCH" },
  "search_params": { "from_airport": "DEL", "to_airport": "DXB", "departure_date": "2026-09-15", "adults": 1, "trip_type": "oneway" },
  "contact_email": "ops@example-travel.com",
  "contact_phone": "919876543210",
  "passengers": [{ "title": "MR", "first_name": "Aman", "last_name": "Sharma", "passenger_type": "ADULT", "email": "aman@example-travel.com", "phone": "919876543210" }]
}

Passenger titles: MR, MS, MRS, MSTR, or MISS. Children and infants require date of birth. International travellers also require valid passport and nationality fields.

Errors and retries

HTTP 400

Correct the request or run a new search.

HTTP 401

Refresh the partner session, then retry once.

HTTP 409

Fare or seats changed; re-search before confirmation.

HTTP 503

Supplier is unavailable; use backoff and avoid duplicate confirmation.