Skip to main content
The Enhanced Radar API is pay as you go. Your organization adds funds in the dashboard, and each request or live update is charged for the data it returns. There is no subscription fee, and lookups such as listing facilities are free. GET /api/v0/pricing lists the current prices and any scheduled price changes, and is free to call. For when a charge happens and what happens when your balance runs out, see Billing.

Prices

Price by route

Price by live topic

Opening a live WebSocket and subscribing are free. Each update sent on a subscription is charged.

Free routes

These routes are never charged: A request that fails, such as one that returns 400, 404, or 5xx, is not charged.

Audio clips

Audio links are priced in bands by how many your organization has been charged for in the calendar month (UTC), counting the clip itself. Each clip is charged at the price of the band its number falls in. The count starts again at 1 on the first of each month. Every request for an audio link is charged, including a new link for a transmission whose earlier link expired. Account tiers also limit how many audio clips an organization can be charged for; see Account tiers.

Answers

POST /api/v0/answers is charged $0.01 for each record it reviews: transmissions, ADS-B positions, and FAA SWIM records. Each answer is charged for at least 300 records and at most its record_limit. record_limit is lowered to what your organization’s balance covers. An answer that fails with 502 is not charged.

Account tiers

Each organization is in an account tier chosen by the age of its account and the total it has paid. Tiers do not change prices. They limit how much of an item an organization can be charged for; a request that would go over a limit returns 403. An organization is in the highest tier whose conditions it meets. GET /api/v0/pricing lists the tiers and their limits in account_tiers.

Price changes

A price change is announced ahead of time in scheduled_prices of GET /api/v0/pricing, with the time it takes effect in effective_at. Until then, current_prices holds the price you are charged. A request is charged the price in effect when it is charged.