FAA Part 107 Pilot Screening API
Screen a name and U.S. state against the public FAA Part 107 remote-pilot dataset in one call. Monthly FAA data, confidence-scored matches, and batch roster screening. Screening only, not legal proof, not a background check.
Screening data, not legal proof
This API screens FAA Part 107 Remote Pilot (small UAS) certifications by name and U.S. state. It reads the FAA's own public, monthly Releasable Airmen bulk data file. It does not scrape any website and uses no login credentials.
Screening result, not legal proof, not a consumer report. This matches a NAME and U.S. STATE against the FAA's public Releasable Airmen file, which omits certificate numbers and dates of birth. A match indicates a same-named Part 107 Remote Pilot in that state, not a specific individual. This is not a background check or a consumer report and must not be used as a factor in any hiring, credentialing, insurance, or other eligibility decision about a person. Confirm certificate status directly with the FAA before relying on it.
In plain terms: a result tells you whether a Part 107 Remote Pilot with a matching name is listed in a given state, returned with an explicit confidence level (exact, fuzzy, or none). It is screening and enrichment data. It is not authoritative proof that a person holds a current certificate, not a confirmation of certificate number or status, not a background check or consumer report, and not an FAA-endorsed service. To confirm an individual's certificate, check directly with the FAA Airmen Inquiry service.
Quick Start: Screen a Pilot
Request
curl --request GET \
--url 'https://drone-pilot-verification-api-production.up.railway.app/verify?first_name=RICHARD&last_name=AARONS&state=CT' \
--header 'X-RapidAPI-Key: YOUR_RAPIDAPI_KEY' \
--header 'X-RapidAPI-Host: YOUR_RAPIDAPI_HOST'Response
{
"query_first_name": "RICHARD",
"query_last_name": "AARONS",
"query_state": "CT",
"found": true,
"match_confidence": "exact",
"state_match": true,
"certificate_type": "Remote Pilot - sUAS",
"match_count": 1,
"matches": [
{
"first_name": "RICHARD NOEL",
"last_name": "AARONS",
"city": "RIDGEFIELD",
"state": "CT",
"zip_code": "06877-2751",
"country": "USA",
"certificate_type": "Remote Pilot - sUAS",
"name_match": "exact"
}
],
"also_found_in_states": [],
"as_of": "2026-07",
"source_url": "https://www.faa.gov/licenses_certificates/airmen_certification/releasable_airmen_download",
"is_legal_proof": false,
"disclaimer": "Screening result, not legal proof, not a consumer report. This matches a NAME and U.S. STATE against the FAA's public Releasable Airmen file, which omits certificate numbers and dates of birth. A match indicates a same-named Part 107 Remote Pilot in that state, not a verified individual. This is not a background check or a consumer report and must not be used as a factor in any hiring, credentialing, insurance, or other eligibility decision about a person. Confirm certificate status directly with the FAA before relying on it.",
"screened_at": "2026-07-15T00:00:00Z",
"cache_hit": false,
"degraded": false
}Response Schema
| Field | Type | Description |
|---|---|---|
| found | boolean | Whether a Part 107 Remote Pilot with a matching name is listed for the query |
| match_confidence | string | Explicit confidence level for the match: exact, fuzzy, or none |
| state_match | boolean | Whether a match was found in the requested U.S. state |
| certificate_type | string | Certificate type on the public record, e.g. Remote Pilot - sUAS |
| match_count | number | Number of public records matching the queried name |
| matches | array | Matched public record(s): first_name, last_name, city, state, zip_code, country, certificate_type, name_match |
| also_found_in_states | array | Other U.S. states where the name appears when it is not listed in the requested state |
| as_of | string | The FAA month loaded for this response, e.g. 2026-07 |
| source_url | string | Public FAA Releasable Airmen download the data is read from |
| is_legal_proof | boolean | Always false. A match is a screening signal, not legal proof of certification |
| disclaimer | string | Screening disclaimer that ships with every response |
| screened_at | string | ISO 8601 timestamp of when the screen ran |
| cache_hit | boolean | Whether the response was served from cache |
| degraded | boolean | Whether the dataset is currently stale or degraded |
Common Use Cases
Simple, transparent pricing
Start for free. Scale as you grow. All plans include access to official data sources and real-time verification.
Basic
50 requests/month
- 50 requests/month
- Hard quota, no overage
- Single-name screening
- Confidence-scored matches
Pro
1,000 requests/month
- 1,000 requests/month
- $0.03 per request overage
- Batch roster screening
- Cross-state signal
Ultra
10,000 requests/month
- 10,000 requests/month
- $0.01 per request overage
- Batch roster screening
- Priority throughput
Mega
1,000,000 requests/month
- 1,000,000 requests/month
- $0.01 per request overage
- Batch roster screening
- High-volume workloads
API Reference
| Method | Path | Description |
|---|---|---|
| GET | /verify | Screen a pilot by first name, last name, and state. Returns found, match_confidence (exact, fuzzy, none), state_match, matched public record(s), match_count, and also_found_in_states |
| GET | /search | Search candidate Remote Pilots by last name, with an optional state filter and result limit (1 to 25, default 10). Opted-out records are excluded |
| POST | /batch | Batch screen a roster of up to 100 names in one call. Same match shape as /verify per row. Available on Pro tier and above, billed one unit per row |
| GET | /status | Public. Dataset freshness: the FAA month loaded (as_of), row_count, last_ingest, and an operational, degraded, or unavailable flag |
| GET | /health | Public liveness probe. Returns service status, version, and uptime |
Frequently asked questions
Is this legal proof that a pilot holds a valid Part 107 certificate?
No. This API screens names against the public FAA Releasable Airmen file, which omits certificate numbers and dates of birth. It tells you whether a Part 107 Remote Pilot with a matching name is listed in a given state, with a confidence level. Every response carries is_legal_proof set to false. To confirm an individual's certificate, check directly with the FAA Airmen Inquiry service.
Is this a background check or a consumer report?
No. It is a public-record screening and enrichment tool. It is not a background, criminal, or identity check, and it is not a consumer report or investigative consumer report under the Fair Credit Reporting Act. It must not be used as a factor in decisions about a person's eligibility for employment, credit, insurance, housing, or any other FCRA-covered purpose. It returns one public data point: whether a Part 107 Remote Pilot with that name is listed in that state.
Is this an FAA service or FAA-endorsed?
No. It is an independent product that reads the FAA's public, monthly Releasable Airmen bulk file. It is not affiliated with, endorsed by, or approved by the FAA.
How current is the data?
The FAA publishes the Releasable Airmen file monthly, and the API refreshes on that cycle. The public /status endpoint always shows the exact month loaded, the record count, and whether the dataset is current or stale.
Why can a real Part 107 pilot show as no match?
Two main reasons. The FAA excludes airmen who opted their address out of the releasable file, so a small share of pilots do not appear. And matching is by name and state, so a legal-name difference, a nickname, or a recent move can produce a fuzzy match or none. A no-match means not listed under this name and state, not uncertified. That is why results carry a confidence level rather than a simple yes or no.
What does the batch endpoint do and how is it billed?
It screens up to 100 names in one call and returns the same match shape as /verify for each row. It is available on Pro tier and above and bills one unit per row screened.
Need custom volume or SLA guarantees?
Contact us for enterprise pricing, white-label access, dedicated support, and custom contracts tailored to your platform.
Contact Enterprise Sales