{
  "openapi": "3.0.1",
  "info": {
    "title": "FAA Aircraft Registry Scraper - N-Number, Owner & Mode S",
    "description": "Look up any US aircraft by N-number, serial or Mode S hex, or search the FAA registry by owner, make, model, state, type, year and registration date. Owner name and address, engine, seats, status, expiry. Also deregistered aircraft, reserved N-numbers, dealers, liens. Monitor new registrations.",
    "version": "0.1",
    "x-build-id": "Fw7kMMbTZ9XdzXzFZ"
  },
  "servers": [
    {
      "url": "https://api.apify.com/v2"
    }
  ],
  "paths": {
    "/acts/scrapersdelight~faa-aircraft-registry-scraper/run-sync-get-dataset-items": {
      "post": {
        "operationId": "run-sync-get-dataset-items-scrapersdelight-faa-aircraft-registry-scraper",
        "x-openai-isConsequential": false,
        "summary": "Executes an Actor, waits for its completion, and returns Actor's dataset items in response.",
        "tags": [
          "Run Actor"
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/inputSchema"
              }
            }
          }
        },
        "parameters": [
          {
            "name": "token",
            "in": "query",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "Enter your Apify token here"
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/acts/scrapersdelight~faa-aircraft-registry-scraper/runs": {
      "post": {
        "operationId": "runs-sync-scrapersdelight-faa-aircraft-registry-scraper",
        "x-openai-isConsequential": false,
        "summary": "Executes an Actor and returns information about the initiated run in response.",
        "tags": [
          "Run Actor"
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/inputSchema"
              }
            }
          }
        },
        "parameters": [
          {
            "name": "token",
            "in": "query",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "Enter your Apify token here"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/runsResponseSchema"
                }
              }
            }
          }
        }
      }
    },
    "/acts/scrapersdelight~faa-aircraft-registry-scraper/run-sync": {
      "post": {
        "operationId": "run-sync-scrapersdelight-faa-aircraft-registry-scraper",
        "x-openai-isConsequential": false,
        "summary": "Executes an Actor, waits for completion, and returns the OUTPUT from Key-value store in response.",
        "tags": [
          "Run Actor"
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/inputSchema"
              }
            }
          }
        },
        "parameters": [
          {
            "name": "token",
            "in": "query",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "Enter your Apify token here"
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    }
  },
  "components": {
    "schemas": {
      "inputSchema": {
        "type": "object",
        "properties": {
          "dataset": {
            "title": "FAA dataset",
            "enum": [
              "registered",
              "deregistered",
              "reserved",
              "dealers",
              "documents"
            ],
            "type": "string",
            "description": "Which FAA file to read. Registered aircraft is the current registry (317,551 records on the 2026-10-13 file).",
            "default": "registered"
          },
          "nNumbers": {
            "title": "N-numbers (tail numbers)",
            "type": "array",
            "description": "Look up these aircraft. With or without the N, e.g. N172SP, 628TS. Add your own reference after a bar - N628TS|fleet-7 - and it comes back as externalId.",
            "items": {
              "type": "string"
            }
          },
          "serialNumbers": {
            "title": "Serial numbers",
            "type": "array",
            "description": "Exact manufacturer serial numbers, e.g. 17280001, R172-2842. Case does not matter. On the documents dataset this matches the engine/propeller serial.",
            "items": {
              "type": "string"
            }
          },
          "modeSCodesHex": {
            "title": "Mode S codes (ICAO hex)",
            "type": "array",
            "description": "24-bit transponder codes in hex, e.g. A835AF - the code ADS-B flight trackers show. Registered and deregistered datasets.",
            "items": {
              "type": "string"
            }
          },
          "ownerNameContains": {
            "title": "Owner name contains",
            "type": "array",
            "description": "Registrant or co-owner name contains any of these, e.g. AVIATION, LEASING, NETJETS. On dealers: dealer name; on reserved: reserving party.",
            "items": {
              "type": "string"
            }
          },
          "manufacturers": {
            "title": "Manufacturer contains",
            "type": "array",
            "description": "Aircraft maker (or kit maker) contains any of these, e.g. CESSNA, GULFSTREAM, VANS.",
            "items": {
              "type": "string"
            }
          },
          "models": {
            "title": "Model contains",
            "type": "array",
            "description": "Model or kit model contains any of these, e.g. 172, SR22, CITATION, G650.",
            "items": {
              "type": "string"
            }
          },
          "states": {
            "title": "Owner states",
            "type": "array",
            "description": "Two-letter codes of the owner's mailing state, e.g. TX, FL, CA. Empty = every state and country.",
            "items": {
              "type": "string"
            }
          },
          "cities": {
            "title": "Owner cities",
            "type": "array",
            "description": "Exact city names as the FAA writes them, e.g. DALLAS, SCOTTSDALE. Combine with states to avoid same-name cities.",
            "items": {
              "type": "string"
            }
          },
          "zipCodePrefixes": {
            "title": "ZIP code prefixes",
            "type": "array",
            "description": "Start of the owner's ZIP code, e.g. 752 or 85255.",
            "items": {
              "type": "string"
            }
          },
          "countyCodes": {
            "title": "County codes",
            "type": "array",
            "description": "The FAA's 3-digit county code (the FIPS county number within the state), e.g. 163 for Wayne County MI. Use together with states.",
            "items": {
              "type": "string"
            }
          },
          "countries": {
            "title": "Owner countries",
            "type": "array",
            "description": "FAA two-letter country codes of the mailing address, e.g. US. Foreign owners carry their own code (BS, CA, MX...).",
            "items": {
              "type": "string"
            }
          },
          "registrantTypes": {
            "title": "Registrant types",
            "type": "array",
            "description": "Owner type. Empty = all.",
            "items": {
              "type": "string",
              "enum": [
                "1",
                "2",
                "3",
                "4",
                "5",
                "7",
                "8",
                "9"
              ],
              "enumTitles": [
                "Individual",
                "Partnership",
                "Corporation",
                "Co-Owned",
                "Government",
                "LLC",
                "Non Citizen Corporation",
                "Non Citizen Co-Owned"
              ]
            }
          },
          "businessOwnersOnly": {
            "title": "Business owners only",
            "type": "boolean",
            "description": "Keep only partnerships, corporations, LLCs and non-citizen corporations (no individuals, co-owners or government).",
            "default": false
          },
          "aircraftTypes": {
            "title": "Aircraft types",
            "type": "array",
            "description": "Empty = all.",
            "items": {
              "type": "string",
              "enum": [
                "1",
                "2",
                "3",
                "4",
                "5",
                "6",
                "7",
                "8",
                "9",
                "H",
                "O"
              ],
              "enumTitles": [
                "Glider",
                "Balloon",
                "Blimp/Dirigible",
                "Fixed wing single engine",
                "Fixed wing multi engine",
                "Rotorcraft",
                "Weight-shift-control",
                "Powered Parachute",
                "Gyroplane",
                "Hybrid Lift",
                "Other"
              ]
            }
          },
          "engineTypes": {
            "title": "Engine types",
            "type": "array",
            "description": "Pick Turbo-jet + Turbo-fan for jets, Turbo-prop for turboprops. Empty = all.",
            "items": {
              "type": "string",
              "enum": [
                "0",
                "1",
                "2",
                "3",
                "4",
                "5",
                "6",
                "7",
                "8",
                "9",
                "10",
                "11"
              ],
              "enumTitles": [
                "None",
                "Reciprocating",
                "Turbo-prop",
                "Turbo-shaft",
                "Turbo-jet",
                "Turbo-fan",
                "Ramjet",
                "2 Cycle",
                "4 Cycle",
                "Unknown",
                "Electric",
                "Rotary"
              ]
            }
          },
          "yearMin": {
            "title": "Built from year",
            "minimum": 1900,
            "maximum": 2100,
            "type": "integer",
            "description": "Oldest year of manufacture, e.g. 2010. Aircraft with no published year are excluded when set."
          },
          "yearMax": {
            "title": "Built up to year",
            "minimum": 1900,
            "maximum": 2100,
            "type": "integer",
            "description": "Newest year of manufacture, e.g. 1979."
          },
          "minSeats": {
            "title": "Minimum seats",
            "minimum": 0,
            "maximum": 1000,
            "type": "integer",
            "description": "From the FAA make/model reference table, e.g. 6."
          },
          "maxSeats": {
            "title": "Maximum seats",
            "minimum": 0,
            "maximum": 1000,
            "type": "integer",
            "description": "e.g. 4 for light aircraft only."
          },
          "registrationStatus": {
            "title": "Registration status",
            "enum": [
              "valid",
              "any",
              "notValid"
            ],
            "type": "string",
            "description": "Searches only. Lookups by N-number, serial or Mode S always return the record whatever its status. On dealers: valid = certificate not expired.",
            "default": "valid"
          },
          "statusCodes": {
            "title": "Status codes (advanced)",
            "type": "array",
            "description": "Exact FAA status codes, e.g. V (valid), R (pending), 7 (sale reported), 13 (expired). Every code is decoded in the status field.",
            "items": {
              "type": "string"
            }
          },
          "certIssuedWithinDays": {
            "title": "Registered in the last N days",
            "minimum": 0,
            "maximum": 36500,
            "type": "integer",
            "description": "Certificate issued in the last N days = new registrations plus ownership changes, e.g. 7. Renewals and address changes do not reset this date."
          },
          "certIssuedFrom": {
            "title": "Certificate issued from",
            "type": "string",
            "description": "Earliest certificate issue date, e.g. 2026-01-01."
          },
          "certIssuedTo": {
            "title": "Certificate issued up to",
            "type": "string",
            "description": "Latest certificate issue date."
          },
          "lastActionFrom": {
            "title": "Last action from",
            "type": "string",
            "description": "Earliest date of the FAA's last action on the record (any update: renewal, address change...)."
          },
          "lastActionTo": {
            "title": "Last action up to",
            "type": "string",
            "description": "Latest last-action date."
          },
          "expiresBefore": {
            "title": "Registration expires before",
            "type": "string",
            "description": "Registrations (or dealer certificates) expiring before this date - owners due to renew, e.g. 2027-03-31."
          },
          "excludeExpired": {
            "title": "Exclude expired",
            "type": "boolean",
            "description": "Drop registrations / dealer certificates whose expiration date has already passed.",
            "default": false
          },
          "fractionalOwnersOnly": {
            "title": "Fractional ownership only",
            "type": "boolean",
            "description": "Keep only aircraft the FAA flags as fractionally owned.",
            "default": false
          },
          "excludeAirlines": {
            "title": "Exclude airlines",
            "type": "boolean",
            "description": "Drop owners whose name says AIRLINES, AIR LINES or AIRWAYS - useful for private and corporate fleets.",
            "default": false
          },
          "serialNumberContains": {
            "title": "Serial number contains",
            "type": "string",
            "description": "Part of a serial number, e.g. 525B- for a Citation CJ3 range."
          },
          "cancelledWithinDays": {
            "title": "Deregistered in the last N days",
            "minimum": 0,
            "maximum": 36500,
            "type": "integer",
            "description": "Deregistered dataset: cancellations in the last N days, e.g. 30 (exports, sales abroad, destroyed aircraft)."
          },
          "cancelledFrom": {
            "title": "Deregistered from",
            "type": "string",
            "description": "Deregistered dataset: earliest cancellation date."
          },
          "cancelledTo": {
            "title": "Deregistered up to",
            "type": "string",
            "description": "Deregistered dataset: latest cancellation date."
          },
          "documentTypes": {
            "title": "Document types",
            "type": "array",
            "description": "Documents dataset only. Empty = all.",
            "items": {
              "type": "string",
              "enum": [
                "BOS",
                "S/A",
                "REL",
                "REP",
                "CSC",
                "DIS",
                "CRT"
              ],
              "enumTitles": [
                "Evidence of Ownership (bill of sale)",
                "Security Conveyance/Lien",
                "Lien Release",
                "Repossession",
                "Evidence of Ownership w/Lien",
                "Disclaimer",
                "Court Documents"
              ]
            }
          },
          "includeLiveDetails": {
            "title": "Add live inquiry-page details",
            "type": "boolean",
            "description": "Registered aircraft: also read each aircraft's live FAA page for temporary certificates, a pending N-number change, the dealer flag and the owner's county name. About 0.2 s per aircraft.",
            "default": false
          },
          "includeRawRecord": {
            "title": "Include the raw FAA record",
            "type": "boolean",
            "description": "Add a raw object with every column exactly as the FAA file publishes it.",
            "default": false
          },
          "monitorMode": {
            "title": "Monitor mode",
            "enum": [
              "off",
              "new",
              "changes"
            ],
            "type": "string",
            "description": "New = only records this monitor has not delivered before. Changes = new records plus records whose owner, address, status or dates changed, with a changes list.",
            "default": "off"
          },
          "monitorName": {
            "title": "Monitor name",
            "type": "string",
            "description": "Optional name for this monitor's memory, e.g. texas-jets. Empty = one memory per combination of dataset and filters."
          },
          "monitorFirstRun": {
            "title": "First monitor run",
            "enum": [
              "deliver",
              "remember"
            ],
            "type": "string",
            "description": "Deliver = the first run returns every current match. Remember = the first run only records what exists today (nothing delivered or charged); later runs return what is new.",
            "default": "deliver"
          },
          "resetMonitor": {
            "title": "Reset monitor memory",
            "type": "boolean",
            "description": "Forget what this monitor delivered before and start over.",
            "default": false
          },
          "maxResults": {
            "title": "Max results",
            "minimum": 0,
            "maximum": 1000000,
            "type": "integer",
            "description": "Cap on records delivered (and charged). 0 = no cap: the whole registry is 317,551 aircraft. Searches stop reading the file as soon as the cap is filled.",
            "default": 100
          },
          "sortBy": {
            "title": "Sort by",
            "enum": [
              "registry",
              "newestCertificate",
              "latestAction",
              "soonestExpiry",
              "latestCancellation",
              "latestReceipt"
            ],
            "type": "string",
            "description": "FAA order (N-number) is fastest. Any other order reads the whole file first and returns at most 50,000 rows.",
            "default": "registry"
          },
          "databaseUrl": {
            "title": "FAA database URL",
            "type": "string",
            "description": "The FAA Releasable Aircraft Database zip. Leave as is unless the FAA moves it.",
            "default": "https://registry.faa.gov/database/ReleasableAircraft.zip"
          },
          "proxyConfiguration": {
            "title": "Proxy configuration",
            "type": "object",
            "description": "Not needed: the actor downloads directly. If the FAA refuses, it falls back by itself to residential, then the Apify Unblocker, both capped per run. A proxy set here is only that fallback.",
            "default": {
              "useApifyProxy": false
            }
          }
        }
      },
      "runsResponseSchema": {
        "type": "object",
        "properties": {
          "data": {
            "type": "object",
            "properties": {
              "id": {
                "type": "string"
              },
              "actId": {
                "type": "string"
              },
              "userId": {
                "type": "string"
              },
              "startedAt": {
                "type": "string",
                "format": "date-time",
                "example": "2025-01-08T00:00:00.000Z"
              },
              "finishedAt": {
                "type": "string",
                "format": "date-time",
                "example": "2025-01-08T00:00:00.000Z"
              },
              "status": {
                "type": "string",
                "example": "READY"
              },
              "meta": {
                "type": "object",
                "properties": {
                  "origin": {
                    "type": "string",
                    "example": "API"
                  },
                  "userAgent": {
                    "type": "string"
                  }
                }
              },
              "stats": {
                "type": "object",
                "properties": {
                  "inputBodyLen": {
                    "type": "integer",
                    "example": 2000
                  },
                  "rebootCount": {
                    "type": "integer",
                    "example": 0
                  },
                  "restartCount": {
                    "type": "integer",
                    "example": 0
                  },
                  "resurrectCount": {
                    "type": "integer",
                    "example": 0
                  },
                  "computeUnits": {
                    "type": "integer",
                    "example": 0
                  }
                }
              },
              "options": {
                "type": "object",
                "properties": {
                  "build": {
                    "type": "string",
                    "example": "latest"
                  },
                  "timeoutSecs": {
                    "type": "integer",
                    "example": 300
                  },
                  "memoryMbytes": {
                    "type": "integer",
                    "example": 1024
                  },
                  "diskMbytes": {
                    "type": "integer",
                    "example": 2048
                  }
                }
              },
              "buildId": {
                "type": "string"
              },
              "defaultKeyValueStoreId": {
                "type": "string"
              },
              "defaultDatasetId": {
                "type": "string"
              },
              "defaultRequestQueueId": {
                "type": "string"
              },
              "buildNumber": {
                "type": "string",
                "example": "1.0.0"
              },
              "containerUrl": {
                "type": "string"
              },
              "usage": {
                "type": "object",
                "properties": {
                  "ACTOR_COMPUTE_UNITS": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATASET_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATASET_WRITES": {
                    "type": "integer",
                    "example": 0
                  },
                  "KEY_VALUE_STORE_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "KEY_VALUE_STORE_WRITES": {
                    "type": "integer",
                    "example": 1
                  },
                  "KEY_VALUE_STORE_LISTS": {
                    "type": "integer",
                    "example": 0
                  },
                  "REQUEST_QUEUE_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "REQUEST_QUEUE_WRITES": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATA_TRANSFER_INTERNAL_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATA_TRANSFER_EXTERNAL_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "PROXY_RESIDENTIAL_TRANSFER_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "PROXY_SERPS": {
                    "type": "integer",
                    "example": 0
                  },
                  "PROXY_UNBLOCKER_UNITS": {
                    "type": "integer",
                    "example": 0
                  }
                }
              },
              "usageTotalUsd": {
                "type": "number",
                "example": 0.00005
              },
              "usageUsd": {
                "type": "object",
                "properties": {
                  "ACTOR_COMPUTE_UNITS": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATASET_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATASET_WRITES": {
                    "type": "integer",
                    "example": 0
                  },
                  "KEY_VALUE_STORE_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "KEY_VALUE_STORE_WRITES": {
                    "type": "number",
                    "example": 0.00005
                  },
                  "KEY_VALUE_STORE_LISTS": {
                    "type": "integer",
                    "example": 0
                  },
                  "REQUEST_QUEUE_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "REQUEST_QUEUE_WRITES": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATA_TRANSFER_INTERNAL_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATA_TRANSFER_EXTERNAL_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "PROXY_RESIDENTIAL_TRANSFER_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "PROXY_SERPS": {
                    "type": "integer",
                    "example": 0
                  },
                  "PROXY_UNBLOCKER_UNITS": {
                    "type": "integer",
                    "example": 0
                  }
                }
              }
            }
          }
        }
      }
    }
  }
}