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.
All 92 tools →
Call it yourself
curl for this page
This API
curl "https://apis.io/api/v1/apis/tui-group-search-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 email required.
A second provider on the same verified email joins the account you already have.
openapi: 3.2.0
info:
title: NSKCC Availability Search API
description: Flight availability search API with pricing information
version: 0.1.73
servers:
- url: https://prod.api.tui/flight/newskies/availability/v2
description: Base URL declared by the provider in apis.yml (roadmap#122).
tags:
- name: Search
paths:
/search:
get:
tags:
- Search
summary: Search for availability
operationId: SearchAvailability
parameters:
- name: carrierCodes
in: query
description: Comma-separated list of airline carrier codes to filter flights (e.g., TB,OR,X3)
schema:
type: array
items:
type: string
example: TB,OR,X3
example: TB,OR,X3
- name: departureStationCodes
in: query
description: Comma-separated list of departure airport codes to filter flights (e.g., BRU,LHR,MAN)
schema:
type: array
items:
type: string
example: BRU,LHR,MAN
example: BRU,LHR,MAN
- name: arrivalStationCodes
in: query
description: Comma-separated list of arrival airport codes to filter flights (e.g., ACE,LPA,PMI)
schema:
type: array
items:
type: string
example: ACE,LPA,PMI
example: ACE,LPA,PMI
- name: departureCountries
in: query
description: Comma-separated list of departure country codes to filter flights (e.g., GB,DE,BE)
schema:
type: array
items:
type: string
example: GB,DE,BE
example: GB,DE,BE
- name: arrivalCountries
in: query
description: Comma-separated list of arrival country codes to filter flights (e.g., ES,FR,IT)
schema:
type: array
items:
type: string
example: ES,FR,IT
example: ES,FR,IT
- name: outboundStartDate
in: query
description: 'Start date of the search range for outbound flights. Use this with OutboundEndDate to search flights within a date range. Format: yyyy-MM-dd (e.g., 2024-06-01)'
schema:
type: string
format: date
example: '2024-06-01'
example: '2024-06-01'
- name: outboundEndDate
in: query
description: 'End date of the search range for outbound flights. Use this with OutboundStartDate to search flights within a date range. Format: yyyy-MM-dd (e.g., 2024-12-31)'
schema:
type: string
format: date
example: '2024-12-31'
example: '2024-12-31'
- name: inboundStartDate
in: query
description: 'Start date of the search range for inbound/return flights. Use this with InboundEndDate to search return flights within a date range. Format: yyyy-MM-dd (e.g., 2024-06-15)'
schema:
type: string
format: date
example: '2024-06-15'
example: '2024-06-15'
- name: inboundEndDate
in: query
description: 'End date of the search range for inbound/return flights. Use this with InboundStartDate to search return flights within a date range. Format: yyyy-MM-dd (e.g., 2024-07-31)'
schema:
type: string
format: date
example: '2024-07-31'
example: '2024-07-31'
- name: PassengerCount
in: query
description: 'Number of passengers for availability check (default: 1)'
schema:
type: integer
format: int32
default: 1
example: 1
example: 1
- name: LimitGroups
in: query
description: Maximum number of flight groups to return in the response
schema:
type: integer
format: int32
example: 10
example: 10
- name: LimitFlights
in: query
description: Maximum number of flights to return per group in the response
schema:
type: integer
format: int32
example: 5
example: 5
- name: AgentName
in: header
description: Agent name for role-based access control and pricing
schema:
type: string
example: AgentName
example: AgentName
- name: GroupBy
in: query
description: 'Grouping strategy for results: 0 = OriginDestination, 1 = Date'
schema:
$ref: '#/components/schemas/GroupBy'
example: 0
- name: tripType
in: query
description: 'Trip type: Oneway or RoundTrip'
schema:
$ref: '#/components/schemas/TripType'
example: Oneway
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/SearchResponse'
'400':
description: Bad Request
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Unauthorized
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedError'
'404':
description: Not Found
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'500':
description: Internal Server Error
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
components:
schemas:
TripType:
enum:
- 0
- 1
type: integer
format: int32
StopOverFlight:
type: object
properties:
stationCode:
type:
- string
- 'null'
description: Stopover airport code (e.g., MAD, CDG, AMS)
carrierCode:
type:
- string
- 'null'
description: Marketing carrier code for the stopover leg
operatingCarrierCode:
type:
- string
- 'null'
description: Operating carrier code if different from marketing carrier
flightNumber:
type:
- string
- 'null'
description: Flight number for the stopover leg
sta:
type: string
description: Scheduled time of arrival at stopover station
format: date-time
std:
type: string
description: Scheduled time of departure from stopover station
format: date-time
additionalProperties: false
description: Stopover flight information for multi-leg journeys
Fare:
type: object
properties:
fareBasisCode:
type:
- string
- 'null'
description: Fare basis code identifying the fare type
ruleNumber:
type:
- string
- 'null'
description: Fare rule number
productClass:
type:
- string
- 'null'
description: Product class code (e.g., Y, C, F)
classOfService:
type:
- string
- 'null'
description: Class of service code
fareKey:
type:
- string
- 'null'
description: Unique fare identifier
encryptedFareKey:
type:
- string
- 'null'
description: Encrypted fare identifier for secure operations
currencyCode:
type:
- string
- 'null'
description: Currency code (e.g., EUR, GBP, USD)
priceGrossAdt:
type: number
description: Gross price for adult passenger
format: double
priceGrossChd:
type: number
description: Gross price for child passenger
format: double
priceGrossInf:
type: number
description: Gross price for infant passenger
format: double
priceNetAdt:
type: number
description: Net price for adult passenger
format: double
priceNetChd:
type: number
description: Net price for child passenger
format: double
taxes:
type: number
description: Total taxes amount
format: double
fees:
type: number
description: Total fees amount
format: double
surcharges:
type: number
description: Total surcharges amount
format: double
additionalProperties: false
description: Fare pricing and class information
FlightGroup:
required:
- flights
- name
type: object
properties:
name:
type:
- string
- 'null'
description: Group identifier (e.g., 'BRU-ACE' for origin-destination or '2024-07-15' for date grouping)
flights:
type:
- array
- 'null'
items:
$ref: '#/components/schemas/Flight'
description: List of flights within this group
additionalProperties: false
description: Group of flights organized by origin-destination or date
Flight:
type: object
properties:
arrivalDateTime:
type: string
description: Flight arrival date and time
format: date-time
availability:
type: integer
description: Number of available seats for the requested passenger count
format: int32
carrierCode:
type:
- string
- 'null'
description: Airline carrier code (e.g., TB, OR, X3)
departureDateTime:
type: string
description: Flight departure date and time
format: date-time
flightNumber:
type:
- string
- 'null'
description: Flight number
journeyKey:
type:
- string
- 'null'
description: Unique journey identifier
encryptedJourneyKey:
type:
- string
- 'null'
description: Encrypted journey identifier for secure operations
flightDuration:
type: integer
description: Flight duration in minutes
format: int32
departureStationCode:
type:
- string
- 'null'
description: Departure airport code (e.g., BRU, LHR, MAN)
arrivalStationCode:
type:
- string
- 'null'
description: Arrival airport code (e.g., ACE, LPA, PMI)
departureCountryCode:
type:
- string
- 'null'
description: Departure country code (e.g., GB, DE, BE)
arrivalCountryCode:
type:
- string
- 'null'
description: Arrival country code (e.g., ES, FR, IT)
operatingCarrierCode:
type:
- string
- 'null'
description: Operating carrier code if different from marketing carrier
stopOverFlights:
type:
- array
- 'null'
items:
$ref: '#/components/schemas/StopOverFlight'
description: List of stopover flights for multi-leg journeys (maximum 2 stopovers)
fares:
type:
- array
- 'null'
items:
$ref: '#/components/schemas/Fare'
description: List of available fares with pricing details
additionalProperties: false
description: Flight availability and pricing information
SearchResponse:
type: object
properties:
groups:
type:
- array
- 'null'
items:
$ref: '#/components/schemas/FlightGroup'
description: Collection of flight groups organized by the specified grouping strategy
additionalProperties: false
description: Search response containing grouped flight results
Error:
type: object
properties:
ErrorMessage:
type:
- string
- 'null'
StackTrace:
type:
- string
- 'null'
additionalProperties: false
description: Error response object for the Api.
GroupBy:
enum:
- 0
- 1
type: integer
format: int32
UnauthorizedError:
type: object
properties:
ErrorMessage:
type:
- string
- 'null'
StackTrace:
type:
- string
- 'null'
additionalProperties: false
description: Unauthorized error response object for the Api.