TailCheck API

Programmatic access to aircraft registration data and due diligence reports.

v1Base URL: https://tailcheckai.com/api/v1

Authentication

All API requests require a valid API key passed in the Authorization header using the Bearer scheme.

bash
curl -H "Authorization: Bearer tc_your_api_key_here" \
  https://tailcheckai.com/api/v1/lookup?n=N12345

Getting an API key: API keys are available for Pro and Max plan subscribers. Generate keys from your dashboard. Keys are shown only once at creation time.

Rate Limits

API requests are rate-limited to prevent abuse. The default limit is:

100 requests per hour per API key

If you exceed the rate limit, the API returns a 429 Too Many Requests response. Wait before retrying.

Endpoints

GET/api/v1/lookup

Look up an aircraft by N-number. Returns basic FAA registration data including make, model, year, registration status, and registrant information.

Query Parameters

ParameterTypeRequiredDescription
nstringYesAircraft N-number (e.g., N12345 or 12345)

Example Request

bash
curl -H "Authorization: Bearer tc_your_key" \
  "https://tailcheckai.com/api/v1/lookup?n=N12345"

Example Response

json
{
  "nNumber": "N12345",
  "make": "CESSNA",
  "model": "172S",
  "year": 2004,
  "serialNumber": "172S9685",
  "status": "V",
  "statusDescription": "Valid",
  "registrationExpired": false,
  "expirationDate": "2027-06-30",
  "registrantName": "JOHN SMITH",
  "engineModel": "IO-360-L2A",
  "dataFetchedAt": "2026-02-26T12:00:00.000Z"
}
GET/api/v1/report/:id

Retrieve a completed due diligence report by ID. You can only access reports that belong to your account.

Path Parameters

ParameterTypeDescription
idstring (UUID)The report ID returned at purchase time

Example Request

bash
curl -H "Authorization: Bearer tc_your_key" \
  "https://tailcheckai.com/api/v1/report/550e8400-e29b-41d4-a716-446655440000"

Response

Returns the full report object including all sections (registration, safety, documents, ADs, risk profile). The structure mirrors the TailCheck Report type.

Error Codes

StatusMeaning
400Bad Request - missing or invalid parameters
401Unauthorized - invalid or missing API key
403Forbidden - you do not have access to this resource
404Not Found - aircraft or report not found
429Rate limit exceeded - wait before retrying
500Internal server error

All error responses return a JSON object with an error field containing a human-readable message.

Integration Examples

JavaScript / Node.js

javascript
const response = await fetch(
  "https://tailcheckai.com/api/v1/lookup?n=N12345",
  {
    headers: {
      Authorization: "Bearer tc_your_api_key_here",
    },
  }
);

const data = await response.json();
console.log(data.make, data.model, data.year);

Python

python
import requests

response = requests.get(
    "https://tailcheckai.com/api/v1/lookup",
    params={"n": "N12345"},
    headers={"Authorization": "Bearer tc_your_api_key_here"},
)

data = response.json()
print(f"{data['make']} {data['model']} ({data['year']})")

Ready to integrate?

Generate an API key from your dashboard to start making requests.

Manage API Keys