Skip to navigation

2 · Destinations

List destinations for an origin.

What: the destination airports reachable from a given origin.

When: after the traveller picks a “from”, to populate the “to” field.

How: POST with a JSON body { origin, tripType? }. No query params.

Trip kind: as on /origins — leave tripType out to list destinations served by one-way flights AND those served only by round-trip packages; send a kind to list only that kind.

After: POST /availability (which dates have flights) or POST /search.

Each airport carries inventoryCategories, and supplierCodes works the same way (see /origins).

Response: { origin, destinations[] } — the origin is echoed ONCE (it is the request body input), with the reachable airports listed under destinations. origin is null when Kitionz has no airport row for the code: a city code (for example LON), or a code it does not know — then meta.diagnostics carries UNKNOWN_AIRPORT.

Supplier health: when your organisation sees suppliers before booking, meta.suppliers[] has one entry per supplier Kitionz considered, for each trip kind it was asked about. Otherwise (the default: suppliers are named after booking) meta.suppliers is [] and meta.supplierDisclosure is AFTER_BOOKING — an empty list then says nothing about supplier health. Each entry: { sourceCode, tripType, status, tookMs }. With no tripType in the request, a supplier that sells round trips has two entries (ONE_WAY and ROUND_TRIP). status = ok, not_asked, or a classified error code. not_asked (with reason = ORIGIN_NOT_LISTED or DEST_NOT_LISTED) means the supplier was not called because its own saved list for the previous step did not contain the airport — an answer, not a fault; treat only error codes as failures, and treat an unrecognised status as opaque. If a supplier fails (or is backing off after rate-limiting Kitionz) and Kitionz holds a recent good answer from it, that answer is still included and its entry carries stale: true + staleAgeMs (route lists up to 24 h old, date lists up to 2 h old with past dates removed). Route lists are cached for up to 2 h and date lists for up to 15 min: a list is served from the cache inside its window and fetched again on the first request after it.

Authentication

AuthorizationBearer

Your Kitionz API key, sent as Authorization: Bearer keyId:secret. Create a Test key at sandbox.kitionz.com → API keys, a Live key at kitionz.com → API → API keys.

Request

This endpoint expects an object.
originstringRequiredformat: "^[A-Za-z0-9]+$"2-10 characters
tripTypeenumOptional

ONE_WAY or ROUND_TRIP lists only that kind of trip. Leave it out to list every kind: one-way flights and round-trip packages together (as /search does).

Allowed values:
supplierCodeslist of stringsOptional

Optional. Leave it out to use every supplier your account has switched on. Send a list of supplier codes (each supplier’s code in GET /v1/flights/suppliers) only to narrow this call to some of them; a code you cannot use is refused (403), and blank entries are ignored.

Response

Default Response
successboolean
statusCodedouble
dataobject

A canonical origin→destination sector.

metaobject