trip_cost_estimate
Estimate flight and hotel trip cost from current provider offers, with explicit missing components and assumptions.
When to use
Use when an agent needs trip cost estimate from current travel offers.
Selection guidance
Role: primary. Use when an agent needs trip cost estimate from current travel offers.
Use cases
- trip cost estimate
- travel decision support
Access
- REST:
POST https://api.rafidsystem.com/api/v1/travel/trip-cost-estimate - x402:
POST https://api.rafidsystem.com/api/v1/x402/travel/trip-cost-estimate - MCP tool:
trip_cost_estimate - Free preview:
POST https://api.rafidsystem.com/api/v1/preview/trip_cost_estimate
Price: $0.25 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.25 USD per call
Try free preview · limited information, no charge
curl -X POST 'https://api.rafidsystem.com/api/v1/preview/trip_cost_estimate' -H 'Content-Type: application/json' --data '{"origin":"MCT","destination":"DXB","departureDate":"2026-11-12","returnDate":"2026-11-15","currency":"USD","nationality":"OM","hotel":{"enabled":true,"rooms":1,"destination":"Dubai"}}'Pay with USDC · request an x402 challenge
curl -X POST 'https://api.rafidsystem.com/api/v1/x402/travel/trip-cost-estimate' -H 'Content-Type: application/json' --data '{"origin":"MCT","destination":"DXB","departureDate":"2026-11-12","returnDate":"2026-11-15","currency":"USD","nationality":"OM","hotel":{"enabled":true,"rooms":1,"destination":"Dubai"}}'Authorized x402 client · signed retry request
curl -X POST 'https://api.rafidsystem.com/api/v1/x402/travel/trip-cost-estimate' -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","nationality":"OM","hotel":{"enabled":true,"rooms":1,"destination":"Dubai"}}'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/trip-cost-estimate' -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","nationality":"OM","hotel":{"enabled":true,"rooms":1,"destination":"Dubai"}}'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": "trip_cost_estimate",
"arguments": {
"origin": "MCT",
"destination": "DXB",
"departureDate": "2026-11-12",
"returnDate": "2026-11-15",
"currency": "USD",
"nationality": "OM",
"hotel": {
"enabled": true,
"rooms": 1,
"destination": "Dubai"
}
}
}
}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",
"nationality": "OM",
"hotel": {
"enabled": true,
"rooms": 1,
"destination": "Dubai"
}
}Example output
{
"route": {
"origin": "MCT",
"destination": "DXB"
},
"dates": {
"departure": "2026-11-12",
"return": "2026-11-15",
"nights": 3
},
"selected": {
"flight": null,
"hotel": null,
"hotelOffer": null
},
"cost": {
"flight": null,
"hotel": null,
"estimatedSubtotal": 0,
"estimatedTotal": null,
"currency": "USD"
},
"partial": true,
"unavailableComponents": [
{
"component": "flight",
"code": "NO_FLIGHT_RESULTS"
},
{
"component": "hotel",
"code": "NO_HOTEL_RESULTS"
}
],
"confidence": "partial_search_coverage",
"assumptions": [
"No returned inventory in this illustrative schema example."
],
"dataFreshness": {
"flight": "2026-10-04T00:00:00.000Z",
"hotel": "2026-10-04T00:00:00.000Z"
},
"searchedAt": "2026-10-04T00:00:00.000Z",
"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"
]
},
"childAges": {
"default": [],
"maxItems": 8,
"type": "array",
"items": {
"type": "integer",
"minimum": 0,
"maximum": 17
}
},
"nationality": {
"type": "string",
"pattern": "^[A-Z]{2}$"
},
"hotel": {
"default": {
"enabled": true,
"rooms": 1
},
"type": "object",
"properties": {
"enabled": {
"default": true,
"type": "boolean"
},
"rooms": {
"default": 1,
"type": "number",
"const": 1
},
"destination": {
"type": "string",
"minLength": 2,
"maxLength": 100,
"pattern": "^[\\p{L}\\p{N} .,'()-]+$"
}
},
"required": [
"enabled",
"rooms"
],
"additionalProperties": false
},
"strategy": {
"default": "balanced",
"type": "string",
"enum": [
"cheapest",
"balanced",
"comfort"
]
}
},
"required": [
"origin",
"destination",
"departureDate",
"returnDate",
"adults",
"children",
"infants",
"cabinClass",
"currency",
"limit",
"sort",
"childAges",
"hotel",
"strategy"
],
"additionalProperties": false
}Output schema
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"type": "object",
"properties": {
"route": {
"type": "object",
"properties": {
"origin": {
"type": "string"
},
"destination": {
"type": "string"
}
},
"required": [
"origin",
"destination"
],
"additionalProperties": false
},
"dates": {
"type": "object",
"properties": {
"departure": {
"type": "string"
},
"return": {
"type": "string"
},
"nights": {
"type": "number"
}
},
"required": [
"departure",
"return",
"nights"
],
"additionalProperties": false
},
"selected": {
"type": "object",
"properties": {
"flight": {
"anyOf": [
{
"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
},
{
"type": "null"
}
]
},
"hotel": {
"anyOf": [
{
"type": "object",
"properties": {
"id": {
"type": "string"
},
"name": {
"type": "string"
},
"stars": {
"anyOf": [
{
"type": "number",
"minimum": 0,
"maximum": 5
},
{
"type": "null"
}
]
},
"offers": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "string"
},
"roomName": {
"type": [
"string",
"null"
]
},
"price": {
"type": "object",
"properties": {
"amount": {
"type": "number",
"minimum": 0
},
"currency": {
"type": "string",
"pattern": "^[A-Z]{3}$"
}
},
"required": [
"amount",
"currency"
],
"additionalProperties": false
},
"refundable": {
"type": [
"boolean",
"null"
]
},
"freeCancellationUntil": {
"type": [
"string",
"null"
]
},
"cancellationPolicy": {
"type": [
"string",
"null"
]
},
"provider": {
"type": "string",
"const": "letsfg"
}
},
"required": [
"id",
"roomName",
"price",
"refundable",
"freeCancellationUntil",
"cancellationPolicy",
"provider"
],
"additionalProperties": false
}
}
},
"required": [
"id",
"name",
"stars",
"offers"
],
"additionalProperties": false
},
{
"type": "null"
}
]
},
"hotelOffer": {
"anyOf": [
{
"type": "object",
"properties": {
"id": {
"type": "string"
},
"roomName": {
"type": [
"string",
"null"
]
},
"price": {
"type": "object",
"properties": {
"amount": {
"type": "number",
"minimum": 0
},
"currency": {
"type": "string",
"pattern": "^[A-Z]{3}$"
}
},
"required": [
"amount",
"currency"
],
"additionalProperties": false
},
"refundable": {
"type": [
"boolean",
"null"
]
},
"freeCancellationUntil": {
"type": [
"string",
"null"
]
},
"cancellationPolicy": {
"type": [
"string",
"null"
]
},
"provider": {
"type": "string",
"const": "letsfg"
}
},
"required": [
"id",
"roomName",
"price",
"refundable",
"freeCancellationUntil",
"cancellationPolicy",
"provider"
],
"additionalProperties": false
},
{
"type": "null"
}
]
}
},
"required": [
"flight",
"hotel",
"hotelOffer"
],
"additionalProperties": false
},
"cost": {
"type": "object",
"properties": {
"flight": {
"type": [
"number",
"null"
]
},
"hotel": {
"type": [
"number",
"null"
]
},
"estimatedSubtotal": {
"type": "number"
},
"estimatedTotal": {
"type": [
"number",
"null"
]
},
"currency": {
"type": "string"
}
},
"required": [
"flight",
"hotel",
"estimatedSubtotal",
"estimatedTotal",
"currency"
],
"additionalProperties": false
},
"partial": {
"type": "boolean"
},
"unavailableComponents": {
"type": "array",
"items": {
"type": "object",
"properties": {
"component": {
"type": "string"
},
"code": {
"type": "string"
}
},
"required": [
"component",
"code"
],
"additionalProperties": false
}
},
"confidence": {
"type": "string",
"enum": [
"complete_search_coverage",
"partial_search_coverage"
]
},
"assumptions": {
"type": "array",
"items": {
"type": "string"
}
},
"dataFreshness": {
"type": "object",
"properties": {
"flight": {
"type": [
"string",
"null"
]
},
"hotel": {
"type": [
"string",
"null"
]
}
},
"required": [
"flight",
"hotel"
],
"additionalProperties": false
},
"searchedAt": {
"type": "string"
},
"dataMode": {
"type": "string",
"const": "live"
}
},
"required": [
"route",
"dates",
"selected",
"cost",
"partial",
"unavailableComponents",
"confidence",
"assumptions",
"dataFreshness",
"searchedAt",
"dataMode"
],
"additionalProperties": false
}Category: travel · hierarchy: primary · idempotent: yes · side effects: no