/api/v1/notams/routeCommercial PilotGet Notams For Route
Gets NOTAMs for a flight route (airports and/or waypoints).
Code Examples
curl \
-X POST \
-H "Ocp-Apim-Subscription-Key: YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"airportIdentifiers": [
"KCLT",
"KTYS",
"KBNA"
],
"corridorRadiusNm": 25
}' \
"https://api.preflightapi.io/api/v1/notams/route"curl \
-X POST \
-H "Ocp-Apim-Subscription-Key: YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"airportIdentifiers": [
"KCLT",
"KTYS",
"KBNA"
],
"corridorRadiusNm": 25
}' \
"https://api.preflightapi.io/api/v1/notams/route"Description
Queries NOTAMs for each point along a route, deduplicates them, and returns a single combined result.
Option 1 — Airport identifiers only (simple)
Provide a list of airport identifiers. Each airport is queried by identifier match (FAA or ICAO). Best for straightforward airport-to-airport routes with no en-route waypoints.
{ "airportIdentifiers": ["KDFW", "KAUS"] }Option 2 — Route points (airports + waypoints)
Provide an ordered list of route points. Each point is either an airport (queried by identifier) or a geographic waypoint (queried by spatial radius around its coordinates). Use this when your route includes en-route waypoints or you need per-point radius control.
{ "routePoints": [ { "airportIdentifier": "KDFW" }, { "name": "Lake Travis", "latitude": 30.4082, "longitude": -97.8538 }, { "latitude": 30.1, "longitude": -97.6, "radiusNm": 15 }, { "airportIdentifier": "KAUS" } ], "corridorRadiusNm": 25, "filters": { "classification": "DOMESTIC", "feature": "RWY" } }How each point type is queried
- Airport points — queried by identifier (same as the single-airport endpoint). Radius settings do not apply.
- Waypoints — queried by spatial radius. The radius used is: the point's own
radiusNmif set, otherwise the request-levelcorridorRadiusNm, otherwise the server default (25 NM).
Notes
- If both
routePointsandairportIdentifiersare provided,routePointsis used andairportIdentifiersis ignored.
- Duplicate NOTAMs appearing at multiple route points are returned only once.
- Optional
filters(classification, feature, freeText, date range) are applied to every route point query.
Request BodyNotamQueryByRouteRequest
Airport identifiers (ICAO codes or FAA identifiers) along the route, e.g. ["KDFW", "KAUS"]. Each airport is queried by identifier match. Use this when your entire route is airport-to-airport with no en-route waypoints. Ignored when RoutePoints is provided.
Default search radius in nautical miles applied to any waypoint in RoutePoints that does not specify its own RadiusNm. Has no effect on airport points or on AirportIdentifiers. If omitted, the server default (25 NM) is used.
Response Schema
Total number of NOTAMs returned in this response.
UTC timestamp when the query was executed.
Description of the queried location (e.g., "KDFW", "32.8970,-97.0380 (25nm)", or "KDFW -> KAUS").
Machine-readable error code (e.g., "AIRCRAFT_NOT_FOUND").
Human-readable error message suitable for display.
Additional error details (only included in development environment).
Name of the external service that failed (only included for 503 errors).
Field-level validation errors (only for validation failures).
UTC timestamp when the error occurred.
Correlation ID for tracing the request.
Request path that generated the error.
Machine-readable error code (e.g., "AIRCRAFT_NOT_FOUND").
Human-readable error message suitable for display.
Additional error details (only included in development environment).
Name of the external service that failed (only included for 503 errors).
Field-level validation errors (only for validation failures).
UTC timestamp when the error occurred.
Correlation ID for tracing the request.
Request path that generated the error.