✈️ FAA Aircraft Registry Scraper — N-Number Lookup
Pricing
from $8.00 / 1,000 aircraft records
✈️ FAA Aircraft Registry Scraper — N-Number Lookup
Scrape the FAA Aircraft Registry by N-number — aircraft make, model, year, owner name, address, airworthiness category, engine type, registration status, certificate dates, mode-S code. Built for aviation insurers, jet brokers, journalists tracking ownership, NTSB-adjacent safety researchers.
Pricing
from $8.00 / 1,000 aircraft records
Rating
0.0
(0)
Developer
Stephan Corbeil
Actor stats
0
Bookmarked
2
Total users
1
Monthly active users
a day ago
Last modified
Share
FAA Aircraft Registry Scraper
Look up any US aircraft N-number against the FAA Aircraft Registry — get aircraft make, model, year, owner name and address, airworthiness category, engine type, registration status, certificate issue/expiration dates, and Mode-S code (in both octal and hex). Built for aviation insurers writing hull/liability policies, jet brokers prospecting owner databases, journalists tracking corporate or celebrity jet movements, NTSB-adjacent safety researchers, and maintenance shops verifying registration before logging hours.
Hits the official FAA inquiry page directly (no auth, no API key required). Bulk-friendly: pass an array of N-numbers and the actor processes them in one run with polite throttling.
Note on substitution: this actor was built in lieu of an NTSB CAROL accident scraper because NTSB's CAROL API column schema is undocumented from the public side and rejected every brute-force probe. The FAA Aircraft Registry covers the same buyer audience (aviation insurers, attorneys, safety researchers) with stable, openly-published data. Pair it with NTSB downloads as needed.
What you get
| Field | Type | Notes |
|---|---|---|
n_number | string | Normalized N-number (leading N always present) |
status | string | ok / not_found / no_data / http_error / network_error |
serial_number | string | Manufacturer serial |
registration_status | string | Valid / Pending / Expired / etc. |
manufacturer_name | string | Aircraft manufacturer (Cessna, Boeing, Cirrus, DJI, etc.) |
model | string | Aircraft model |
type_aircraft | string | "Fixed wing single engine", "Rotorcraft", "Glider", etc. |
type_engine | string | "Reciprocating", "Turbo-jet", "Electric", etc. |
engine_manufacturer / engine_model | string | Engine spec |
year_manufactured | string | Year of manufacture |
certificate_issue_date | string | When this registration was issued |
expiration_date | string | When this registration expires |
airworthiness_certificate_class | string | Standard / Experimental / Special / Restricted |
airworthiness_date | string | Last airworthiness certificate date |
approved_operations | string | Plain-text approved ops |
type_registration | string | Individual / Corporation / Partnership / Government / LLC |
registrant_name / registrant_street / registrant_city / registrant_state / registrant_zip_code / registrant_county / registrant_country | string | Owner address block |
region | string | FAA region |
fractional_ownership | string | Fractional-ownership program flag |
trade_name | string | DBA when applicable |
mode_s_code_oct / mode_s_code_hex | string | Mode-S transponder address (used by ADS-B trackers like Flightradar24/OpenSky) |
dealer | string | Dealer registration flag |
pending_number_change / date_change_authorized | string | N-number change tracking |
last_action_date | string | Date of last FAA action on the record |
source_url | string | Direct link to the FAA inquiry result |
Use cases
- Hull & liability underwriting — verify ownership, year, type, engine before binding an aviation insurance policy.
- Pre-purchase due diligence — broker pulls registration, airworthiness history, and owner before listing a private jet.
- Corporate jet tracking — combine
mode_s_code_hexwith ADS-B feeds (OpenSky / Flightradar24) to identify which company owns which aircraft observed in flight. - Journalism / celebrity jet stories — owner address + tail-number + Mode-S → live position reporting.
- Aviation maintenance shops — verify registration is current before booking a heavy inspection.
- Aircraft repossession / leasing recovery — lookup current registered owner before sending a recovery team.
Quick start
Input JSON (single):
{ "n_number": "N12345", "max_results": 1 }
Input JSON (bulk):
{"n_numbers": ["N628TS", "N272BG", "N509LS", "N100AT"],"max_results": 50}
Sample output item:
{"n_number": "N628TS","status": "ok","serial_number": "12345","registration_status": "Valid","manufacturer_name": "GULFSTREAM AEROSPACE","model": "GVII-G650ER","type_aircraft": "Fixed wing multi engine","type_engine": "Turbo-jet","year_manufactured": "2016","certificate_issue_date": "06/15/2016","expiration_date": "06/30/2027","registrant_name": "FALCON LANDING LLC","registrant_state": "TX","registrant_country": "US","mode_s_code_hex": "A8615C","type_registration": "LLC"}
Python SDK example
from apify_client import ApifyClientclient = ApifyClient("YOUR_APIFY_TOKEN")run = client.actor("nexgendata/faa-aircraft-registry-scraper").call(run_input={"n_numbers": ["N1", "N100AT", "N628TS"],"max_results": 50,})for a in client.dataset(run["defaultDatasetId"]).iterate_items():print(f"{a['n_number']} {a.get('manufacturer_name')} {a.get('model')} -> {a.get('registrant_name')}")
cURL example
curl -X POST "https://api.apify.com/v2/acts/nexgendata~faa-aircraft-registry-scraper/runs?token=YOUR_APIFY_TOKEN" \-H "Content-Type: application/json" \-d '{"n_number":"N12345"}'
Integrations
- Zapier / Make.com / n8n — auto-lookup any N-number that appears in a Slack message or CRM record.
- Postgres / Snowflake / BigQuery — sync results into your aviation-data warehouse.
- OpenSky / ADSBexchange — combine
mode_s_code_hexwith live ADS-B feeds for owner-resolved flight tracking.
Pricing
Pay-per-event:
- Actor start: $0.00005 (one-time per run)
- Per N-number record: $0.008
Cost calculator:
| Aircraft | Approx. cost |
|---|---|
| 25 | $0.20 |
| 100 | $0.80 |
| 500 | $4.00 |
| 1,000 | $8.00 |
Premium pricing reflects the B2B value of N-number resolution — aviation underwriters and jet brokers typically pay $100s for batch lookup services.
FAQ
Q: How fresh is the data?
A: Live. Each lookup hits the FAA inquiry endpoint in real time, so registrations updated minutes ago will appear.
Q: Are deregistered aircraft included?
A: Yes — the FAA preserves deregistration history. The registration_status field will reflect Cancelled / Expired / Sale-Reported and the registrant fields show the last registered owner.
Q: What about non-US aircraft?
A: Out of scope. This actor handles only N-prefixed FAA registrations. For Canadian C-, German D-, UK G-, etc., use the corresponding national civil aviation authority.
Q: Can I look up by owner name instead of N-number?
A: Not in this actor (the FAA's by-name search has aggressive rate limiting). For bulk owner-side lookups, contact us about a custom build.
Q: What's the difference between this and the FAA monthly database download?
A: The monthly download is a 600K-row CSV that's ~24 hours stale and requires you to load the whole file. This actor returns one record per N-number, in real time, via the same web inquiry the FAA itself uses.
Q: Are sensitive owner details suppressed?
A: The FAA blocks personal address details for owners on the Privacy ICAO Address (PIA) program. This actor returns whatever the FAA shows publicly — same data, same redactions.
Related actors from nexgendata
- Government Contracts Search — pair aircraft ownership with federal contracting history for defense / GSA jet research.
- Court Records Search — track aviation litigation alongside owner registration.
- SEC EDGAR Search — corporate filings of aircraft-owning entities.
About nexgendata
Built and maintained by nexgendata — a portfolio of 160+ specialized scrapers and MCP servers covering compliance, civic data, lead gen, and developer tools. Need higher volume, custom output, or a private fork? Email steve_corbeil@hotmail.com.