licenseapi.dev
~180K Remote PilotsConfidence-Scored MatchesMonthly FAA Data

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.

What a match means

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.

Data source: FAA Releasable Airmen Download (U.S. Government public record), refreshed monthly. Records for airmen who opted out of the releasable file are excluded by the FAA. This product is independent and is not affiliated with, endorsed by, or approved by the FAA.
Quick Start

Quick Start: Screen a Pilot

Request

curl
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

response.json
{
  "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

Response Schema

FieldTypeDescription
foundbooleanWhether a Part 107 Remote Pilot with a matching name is listed for the query
match_confidencestringExplicit confidence level for the match: exact, fuzzy, or none
state_matchbooleanWhether a match was found in the requested U.S. state
certificate_typestringCertificate type on the public record, e.g. Remote Pilot - sUAS
match_countnumberNumber of public records matching the queried name
matchesarrayMatched public record(s): first_name, last_name, city, state, zip_code, country, certificate_type, name_match
also_found_in_statesarrayOther U.S. states where the name appears when it is not listed in the requested state
as_ofstringThe FAA month loaded for this response, e.g. 2026-07
source_urlstringPublic FAA Releasable Airmen download the data is read from
is_legal_proofbooleanAlways false. A match is a screening signal, not legal proof of certification
disclaimerstringScreening disclaimer that ships with every response
screened_atstringISO 8601 timestamp of when the screen ran
cache_hitbooleanWhether the response was served from cache
degradedbooleanWhether the dataset is currently stale or degraded
Use Cases

Common Use Cases

Drone-services marketplaces enriching pilot profiles with a public-record signal
Drone insurers enriching a quote-intake form with a public-record data point
Organizations running drone programs keeping an internal roster current
Roster data hygiene and periodic re-screens through the batch endpoint
Name disambiguation and internal review flows via last-name search
Surfacing an FAA Part 107 public-record signal inside your own app
Pricing

Simple, transparent pricing

Start for free. Scale as you grow. All plans include access to official data sources and real-time verification.

Basic

$0

50 requests/month

  • 50 requests/month
  • Hard quota, no overage
  • Single-name screening
  • Confidence-scored matches
Get Started

Pro

$29/mo

1,000 requests/month

  • 1,000 requests/month
  • $0.03 per request overage
  • Batch roster screening
  • Cross-state signal
Get Started
Most Popular

Ultra

$99/mo

10,000 requests/month

  • 10,000 requests/month
  • $0.01 per request overage
  • Batch roster screening
  • Priority throughput
Get Started

Mega

$499/mo

1,000,000 requests/month

  • 1,000,000 requests/month
  • $0.01 per request overage
  • Batch roster screening
  • High-volume workloads
Get Started
Endpoints

API Reference

MethodPathDescription
GET/verifyScreen 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/searchSearch 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/batchBatch 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/statusPublic. Dataset freshness: the FAA month loaded (as_of), row_count, last_ingest, and an operational, degraded, or unavailable flag
GET/healthPublic liveness probe. Returns service status, version, and uptime
FAQ

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