Real-time flight track/positions via FlightAware AeroAPI, pay-per-request at $0.024 via MPP micropayments.
What it does
This endpoint returns the full position history (track) for a specific flight, identified by its FlightAware fa_flight_id. It is part of the StableTravel API, which wraps FlightAware's AeroAPI behind pay-per-request micropayments — no API keys, no subscriptions, no OAuth. Each call costs $0.024 USD, settled via the MPP protocol (Tempo method, pathUSD on chain 4217). The response contains an array of position objects, each with latitude, longitude, altitude, groundspeed, heading, altitude_change, timestamp, and update_type. An optional query parameter `include_estimated_positions` can be set to true to include estimated positions in the track.
The typical workflow is: first look up a flight by ident using `/api/flightaware/flights/{ident}` ($0.01) to obtain the `fa_flight_id`, then call this track endpoint with that ID. The endpoint accepts GET requests. The `{id}` path parameter is the fa_flight_id obtained from a prior flight lookup. StableTravel also offers related endpoints for latest position ($0.02), route info/waypoints ($0.02), and flight track map images as PNG ($0.06).
StableTravel is built by Merit Systems and serves as a unified travel API covering flights (Amadeus GDS), hotels, activities, transfers, Google Flights price comparison, and FlightAware real-time/historical flight tracking. All endpoints use the same payment model: HTTP 402 challenge with automatic USDC settlement on Base, Solana, or Tempo. Full OpenAPI 3.1 schema is available at /openapi.json.
Capabilities
Use cases
- —Retrieve the full GPS track of an in-progress or completed flight for display on a map
- —Build flight monitoring dashboards that replay position history
- —Analyze flight paths for route efficiency or deviation detection
- —Power travel-agent bots that provide real-time flight status and position updates to passengers
- —Audit historical flight tracks for compliance or operational review
Fit
Best for
- —AI agents that need real-time or recent flight position data without managing API keys
- —Applications displaying flight tracks on maps
- —Autonomous travel assistants tracking passenger flights
Not for
- —Bulk historical analytics requiring thousands of tracks (per-call cost adds up)
- —Streaming real-time position updates (this is a poll-based REST endpoint, not a push stream)
Quick start
# 1. Look up the flight to get fa_flight_id
npx agentcash fetch "https://stabletravel.dev/api/flightaware/flights/UAL100"
# 2. Use the fa_flight_id from the response to get the full track
npx agentcash fetch "https://stabletravel.dev/api/flightaware/flights/UAL100-1234567890-airline-0123/track"Example
Response
{
"positions": [
{
"heading": 270,
"altitude": 350,
"latitude": 40.6413,
"longitude": -73.7781,
"timestamp": "2025-06-15T14:30:00Z",
"groundspeed": 480,
"update_type": "A",
"fa_flight_id": "UAL100-1718000000-airline-0042",
"altitude_change": "C"
},
{
"heading": 268,
"altitude": 370,
"latitude": 39.8561,
"longitude": -75.2412,
"timestamp": "2025-06-15T14:35:00Z",
"groundspeed": 495,
"update_type": "A",
"fa_flight_id": "UAL100-1718000000-airline-0042",
"altitude_change": "L"
}
]
}Endpoint
Quality
Full OpenAPI 3.1 schema with detailed response types, clear pricing in USD, live 402 MPP challenge confirmed, comprehensive guidance docs, and well-documented workflow. Minor deduction: no inline example response in the spec itself, and the path parameter is passed via URL path segment rather than query param so the OpenAPI spec uses a slightly unconventional pattern.
Warnings
- —The {id} path parameter (fa_flight_id) must be obtained from a prior flight lookup call — it is not a simple flight number.
- —The MPP challenge currency address 0x20c000000000000000000000b9537d11c60e8b50 on chain 4217 (Tempo) settles in pathUSD; ensure your agent wallet supports this.
Citations
- —This endpoint costs $0.024 per callhttps://stabletravel.dev/openapi.json
- —The endpoint returns an array of position objects with altitude, groundspeed, heading, latitude, longitude, timestamp, and update_typehttps://stabletravel.dev/openapi.json
- —Payment is via MPP protocol using Tempo method on chain 4217https://stabletravel.dev/openapi.json
- —No API keys needed; payment via USDC on Base, Solana, or Tempo serves as authenticationhttps://stabletravel.dev
- —Typical workflow: look up flight by ident to get fa_flight_id, then call track endpointhttps://stabletravel.dev/openapi.json
- —The MPP 402 challenge was captured live with method=tempo, intent=charge, amount=24000 (pathUSD base units = $0.024)https://stabletravel.dev/api/flightaware/flights/:id/track