Work with this as data
Every API here is available over the APIs.io API and to AI agents over MCP.
MCP server
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
Tools for apis
7 MCP tools reach this
find_apisBrowse and filter every API in the catalog.get_api_artifactsOne API's artifacts, grouped by type.get_openapiThe primary OpenAPI for this API.find_similar_apisAPIs that look like this one.apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.resolveTurn a domain, URL or GitHub org into the provider it belongs to.find_cohortsEvery scored population of providers in the catalog.
Call it yourself
curl for this page
This API
curl "https://apis.io/api/v1/apis/airlabs-cities-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"
Discovery needs no key. Ratings and market analysis are Pro.
Get an API key
Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.
A second provider on the same verified email joins the account you already have.
OpenAPI Specification
openapi: 3.2.0
info:
title: AirLabs Aviation Data Airlines Cities API
description: Real-time global flight tracking, airport schedules, flight delays, airline and airport databases, aircraft fleets, routes, nearby airports, and autocomplete suggestions. All responses are JSON wrapped in a `{request, response}` envelope. Authentication via `api_key` query parameter.
version: v9
termsOfService: https://airlabs.co/terms
contact:
name: AirLabs
url: https://airlabs.co
email: info@airlabs.co
license:
name: Proprietary
url: https://airlabs.co/terms
servers:
- url: https://airlabs.co/api/v9
description: Production
security:
- ApiKeyAuth: []
tags:
- name: Cities
description: City reference data
paths:
/cities:
get:
summary: Cities database
description: Returns cities from the database.
tags:
- Cities
operationId: cities_cities
parameters:
- name: city_code
in: query
required: false
description: City IATA code
schema:
type: string
- name: country_code
in: query
required: false
description: Country ISO 2 code
schema:
type: string
- $ref: '#/components/parameters/FieldsParam'
- $ref: '#/components/parameters/LimitParam'
responses:
'200':
description: Success
content:
application/json:
schema:
$ref: '#/components/schemas/CitiesResponse'
'400':
description: Bad request — missing or invalid parameters
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Unauthorized — missing or invalid API key
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'403':
description: Forbidden — plan limit reached or feature not available
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'429':
description: Too many requests — rate limit exceeded
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'500':
description: Server error
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
components:
schemas:
City:
type: object
properties:
name:
type: string
description: City name
city_code:
type: string
description: City IATA code
lat:
type: number
format: float
description: Latitude in decimal degrees
lng:
type: number
format: float
description: Longitude in decimal degrees
country_code:
type: string
description: Country ISO 2 code
timezone:
type: string
description: Timezone (tz database name)
un_locode:
type: string
description: UN/LOCODE
popularity:
type: integer
description: Popularity rank
CitiesResponse:
type: object
properties:
request:
$ref: '#/components/schemas/RequestMeta'
response:
type: array
items:
$ref: '#/components/schemas/City'
RequestMeta:
type: object
description: Echo of the request and processing metadata
properties:
lang:
type: string
currency:
type: string
time:
type: number
id:
type: string
server:
type: string
host:
type: string
pid:
type: integer
version:
type: integer
method:
type: string
params:
type: object
additionalProperties: true
Error:
type: object
properties:
error:
type: object
properties:
message:
type: string
description: Error description
code:
type: string
description: Error code
parameters:
LimitParam:
name: _limit
in: query
required: false
description: Maximum number of results to return
schema:
type: integer
minimum: 1
maximum: 1000
FieldsParam:
name: _fields
in: query
required: false
description: Comma-separated list of response fields to return
schema:
type: string
securitySchemes:
ApiKeyAuth:
type: apiKey
in: query
name: api_key
description: API key. Sign up at https://airlabs.co/signup
externalDocs:
description: Full documentation
url: https://airlabs.co/docs/