flight_search
Search current flight offers and return normalized prices, itineraries, stops and timing.
When to use
Use when an agent needs flight search from current travel offers.
Selection guidance
Role: supporting. Use when an agent needs flight search from current travel offers.
Use cases
- flight search
- travel decision support
Access
- REST:
POST https://api.rafidsystem.com/api/v1/travel/flight-search - x402:
POST https://api.rafidsystem.com/api/v1/x402/travel/flight-search - MCP tool:
flight_search - Free preview:
POST https://api.rafidsystem.com/api/v1/preview/flight_search
Price: $0.10 USD per call. Payment options are deployment-configured; inspect /api/v1/payment-methods. Prices and payment semantics are unchanged from the canonical registry.
Get the full result
0.10 USD per call
Try free preview · limited information, no charge
curl -X POST 'https://api.rafidsystem.com/api/v1/preview/flight_search' -H 'Content-Type: application/json' --data '{"origin":"MCT","destination":"DXB","departureDate":"2026-11-12","returnDate":"2026-11-15","currency":"USD"}'Pay with USDC · request an x402 challenge
curl -X POST 'https://api.rafidsystem.com/api/v1/x402/travel/flight-search' -H 'Content-Type: application/json' --data '{"origin":"MCT","destination":"DXB","departureDate":"2026-11-12","returnDate":"2026-11-15","currency":"USD"}'Authorized x402 client · signed retry request
curl -X POST 'https://api.rafidsystem.com/api/v1/x402/travel/flight-search' -H 'Content-Type: application/json' -H 'PAYMENT-SIGNATURE: <PAYMENT_SIGNATURE_FROM_AUTHORIZED_CLIENT>' -H 'X-Rafid-Payment-Journey: <PAYMENT_JOURNEY_FROM_CHALLENGE>' -H 'Idempotency-Key: <UNIQUE_REQUEST_ID>' --data '{"origin":"MCT","destination":"DXB","departureDate":"2026-11-12","returnDate":"2026-11-15","currency":"USD"}'Use an x402-compatible client to parse PAYMENT-REQUIRED and authorize payment before retrying the same input with PAYMENT-SIGNATURE. Copying a request does not pay.
No crypto wallet? Use Rafid Credits
curl -X POST 'https://api.rafidsystem.com/api/v1/travel/flight-search' -H 'Content-Type: application/json' -H 'Authorization: Bearer <RAFID_API_KEY>' -H 'X-Rafid-Payment-Method: credits' -H 'Idempotency-Key: <UNIQUE_REQUEST_ID>' -H 'X-Rafid-Payment-Journey: <PAYMENT_JOURNEY_FROM_CHALLENGE>' --data '{"origin":"MCT","destination":"DXB","departureDate":"2026-11-12","returnDate":"2026-11-15","currency":"USD"}'Credits onboarding not yet self-service. Obtain a Rafid account and API key from the operator; existing accounts can use configured funding routes.
Existing account balance: GET https://api.rafidsystem.com/api/v1/account/balance.
MCP Credits integration
POST https://api.rafidsystem.com/mcp/credits
Authorization: Bearer <OAUTH_ACCESS_TOKEN>
Idempotency-Key: <UNIQUE_REQUEST_ID>
Content-Type: application/json
{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/call",
"params": {
"name": "flight_search",
"arguments": {
"origin": "MCT",
"destination": "DXB",
"departureDate": "2026-11-12",
"returnDate": "2026-11-15",
"currency": "USD"
}
}
}OAuth metadata: authorization server · protected resource. Operator authorization and an existing funded account are required; OAuth does not grant credits.
Payment instructions and onboarding · API docs and schemas
These are copyable API integration requests. They do not open a checkout or execute a paid tool.
Related tools
Example input
{
"origin": "MCT",
"destination": "DXB",
"departureDate": "2026-11-12",
"returnDate": "2026-11-15",
"currency": "USD"
}Example output
{
"query": {
"origin": "MCT",
"destination": "DXB",
"departureDate": "2026-11-12",
"returnDate": "2026-11-15",
"adults": 1,
"children": 0,
"infants": 0,
"cabinClass": "economy",
"currency": "USD",
"limit": 20,
"sort": "price"
},
"offers": [],
"count": 0,
"searchedAt": "2026-10-04T00:00:00.000Z",
"provider": {
"name": "letsfg",
"status": "ok",
"upstreamLatencyMs": 0
},
"dataMode": "live"
}Input schema
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"type": "object",
"properties": {
"origin": {
"type": "string",
"minLength": 2,
"maxLength": 100,
"pattern": "^[\\p{L}\\p{N} .,'()-]+$"
},
"destination": {
"type": "string",
"minLength": 2,
"maxLength": 100,
"pattern": "^[\\p{L}\\p{N} .,'()-]+$"
},
"departureDate": {
"type": "string",
"pattern": "^\\d{4}-\\d{2}-\\d{2}$"
},
"returnDate": {
"type": "string",
"pattern": "^\\d{4}-\\d{2}-\\d{2}$"
},
"adults": {
"default": 1,
"type": "integer",
"minimum": 1,
"maximum": 9
},
"children": {
"default": 0,
"type": "integer",
"minimum": 0,
"maximum": 8
},
"infants": {
"default": 0,
"description": "Infant pricing is not supported by this adapter.",
"type": "number",
"const": 0
},
"cabinClass": {
"default": "economy",
"type": "string",
"enum": [
"economy",
"premium_economy",
"business",
"first"
]
},
"currency": {
"default": "USD",
"type": "string",
"pattern": "^[A-Z]{3}$"
},
"maxStops": {
"type": "integer",
"minimum": 0,
"maximum": 3
},
"limit": {
"default": 20,
"type": "integer",
"minimum": 1,
"maximum": 50
},
"sort": {
"default": "price",
"type": "string",
"enum": [
"price",
"duration",
"stops"
]
}
},
"required": [
"origin",
"destination",
"departureDate",
"adults",
"children",
"infants",
"cabinClass",
"currency",
"limit",
"sort"
],
"additionalProperties": false
}Output schema
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"type": "object",
"properties": {
"query": {
"type": "object",
"properties": {
"origin": {
"type": "string",
"minLength": 2,
"maxLength": 100,
"pattern": "^[\\p{L}\\p{N} .,'()-]+$"
},
"destination": {
"type": "string",
"minLength": 2,
"maxLength": 100,
"pattern": "^[\\p{L}\\p{N} .,'()-]+$"
},
"departureDate": {
"type": "string",
"pattern": "^\\d{4}-\\d{2}-\\d{2}$"
},
"returnDate": {
"type": "string",
"pattern": "^\\d{4}-\\d{2}-\\d{2}$"
},
"adults": {
"default": 1,
"type": "integer",
"minimum": 1,
"maximum": 9
},
"children": {
"default": 0,
"type": "integer",
"minimum": 0,
"maximum": 8
},
"infants": {
"default": 0,
"description": "Infant pricing is not supported by this adapter.",
"type": "number",
"const": 0
},
"cabinClass": {
"default": "economy",
"type": "string",
"enum": [
"economy",
"premium_economy",
"business",
"first"
]
},
"currency": {
"default": "USD",
"type": "string",
"pattern": "^[A-Z]{3}$"
},
"maxStops": {
"type": "integer",
"minimum": 0,
"maximum": 3
},
"limit": {
"default": 20,
"type": "integer",
"minimum": 1,
"maximum": 50
},
"sort": {
"default": "price",
"type": "string",
"enum": [
"price",
"duration",
"stops"
]
}
},
"required": [
"origin",
"destination",
"departureDate",
"adults",
"children",
"infants",
"cabinClass",
"currency",
"limit",
"sort"
],
"additionalProperties": false
},
"offers": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "string"
},
"price": {
"type": "object",
"properties": {
"amount": {
"type": "number",
"minimum": 0
},
"currency": {
"type": "string",
"pattern": "^[A-Z]{3}$"
}
},
"required": [
"amount",
"currency"
],
"additionalProperties": false
},
"airlines": {
"type": "array",
"items": {
"type": "string"
}
},
"segments": {
"type": "array",
"items": {
"type": "object",
"properties": {
"origin": {
"type": [
"string",
"null"
]
},
"destination": {
"type": [
"string",
"null"
]
},
"departureAt": {
"type": [
"string",
"null"
]
},
"arrivalAt": {
"type": [
"string",
"null"
]
},
"airline": {
"type": [
"string",
"null"
]
}
},
"required": [
"origin",
"destination",
"departureAt",
"arrivalAt",
"airline"
],
"additionalProperties": false
}
},
"stops": {
"anyOf": [
{
"type": "integer",
"minimum": 0,
"maximum": 9007199254740991
},
{
"type": "null"
}
]
},
"durationMinutes": {
"anyOf": [
{
"type": "number",
"minimum": 0
},
{
"type": "null"
}
]
},
"departureAt": {
"type": [
"string",
"null"
]
},
"arrivalAt": {
"type": [
"string",
"null"
]
},
"reliability": {
"anyOf": [
{
"type": "number",
"minimum": 0,
"maximum": 1
},
{
"type": "null"
}
]
},
"refundable": {
"type": [
"boolean",
"null"
]
},
"baggage": {
"type": [
"string",
"null"
]
},
"splitTicket": {
"type": "boolean"
},
"selfTransfer": {
"type": "boolean"
},
"transferProtection": {
"anyOf": [
{
"type": "string",
"enum": [
"protected",
"unprotected"
]
},
{
"type": "null"
}
]
},
"provider": {
"type": "string",
"const": "letsfg"
}
},
"required": [
"id",
"price",
"airlines",
"segments",
"stops",
"durationMinutes",
"departureAt",
"arrivalAt",
"reliability",
"refundable",
"baggage",
"splitTicket",
"selfTransfer",
"provider"
],
"additionalProperties": false
}
},
"count": {
"type": "integer",
"minimum": -9007199254740991,
"maximum": 9007199254740991
},
"searchedAt": {
"type": "string"
},
"provider": {
"type": "object",
"properties": {
"name": {
"type": "string",
"const": "letsfg"
},
"status": {
"type": "string",
"const": "ok"
},
"upstreamLatencyMs": {
"type": "number",
"minimum": 0
}
},
"required": [
"name",
"status",
"upstreamLatencyMs"
],
"additionalProperties": false
},
"dataMode": {
"type": "string",
"const": "live"
}
},
"required": [
"query",
"offers",
"count",
"searchedAt",
"provider",
"dataMode"
],
"additionalProperties": false
}Category: travel · hierarchy: supporting · idempotent: yes · side effects: no