Cities

Cities are used to identify origins and destinations in journey slices

airports
list

List of airports associated with the city

iata_code
string

The three-character IATA code for the city

Example: "LON"
iata_country_code
string

The ISO 3166-1 alpha-2 code for the country where the city is located

Example: "GB"
id
string

Duffel's unique identifier for the resource

Example: "cit_lon_gb"
name
string

The name of the city

Example: "London"

Retrieves a city by its ID

URL parameters

id
stringrequired

Duffel's unique identifier for the city

Example: "cit_lon_gb"

Endpoint

GET https://api.duffel.com/air/cities/{id}

Request

curl -X GET --compressed "https://api.duffel.com/air/cities/{id}" \
-H "Accept-Encoding: gzip" \
-H "Accept: application/json" \
-H "Duffel-Version: v2" \
-H "Authorization: Bearer <YOUR_ACCESS_TOKEN>"

Response

{
"data": {
"name": "London",
"id": "cit_lon_gb",
"iata_country_code": "GB",
"iata_code": "LON",
"airports": [
{
"time_zone": "Europe/London",
"name": "Heathrow",
"longitude": -141.951519,
"latitude": 64.068865,
"id": "arp_lhr_gb",
"icao_code": "EGLL",
"iata_country_code": "GB",
"iata_code": "LHR"
}
]
}
}

Retrieves a paginated list of all cities. The results may be returned in any order.

Query parameters

after
string

A cursor pointing to the previous page of records. For more information on how to paginate through records, see the Pagination section.

Example: "g2wAAAACbQAAABBBZXJvbWlzdC1LaGFya2l2bQAAAB="
before
string

A cursor pointing to the next page of records. For more information on how to paginate through records, see the Pagination section.

Example: "g2wAAAACbQAAABBBZXJvbWlzdC1LaGFya2l2bQAAAB="
limit
integer

The maximum number of records to return per page. Defaults to 50. May be set to any integer between 1 and 200. For more information on how to paginate through records, see the Pagination section.

Example: 1
Default value: 50

Endpoint

GET https://api.duffel.com/air/cities

Request

curl -X GET --compressed "https://api.duffel.com/air/cities?after=g2wAAAACbQAAABBBZXJvbWlzdC1LaGFya2l2bQAAAB=&before=g2wAAAACbQAAABBBZXJvbWlzdC1LaGFya2l2bQAAAB=&limit=1" \
-H "Accept-Encoding: gzip" \
-H "Accept: application/json" \
-H "Duffel-Version: v2" \
-H "Authorization: Bearer <YOUR_ACCESS_TOKEN>"

Response

{
"meta": {
"limit": 50,
"after": "g2wAAAACbQAAABBBZXJvbWlzdC1LaGFya2l2bQAAAB="
},
"data": [
{
"name": "London",
"id": "cit_lon_gb",
"iata_country_code": "GB",
"iata_code": "LON",
"airports": [
{
"time_zone": "Europe/London",
"name": "Heathrow",
"longitude": -141.951519,
"latitude": 64.068865,
"id": "arp_lhr_gb",
"icao_code": "EGLL",
"iata_country_code": "GB",
"iata_code": "LHR"
}
]
}
]
}