Skip to main content

Aircraft models and specifications API client — planefyi.com

Project description

planefyi

PyPI version Python License: MIT Zero Dependencies

Python API client for aircraft data. Look up aircraft models by ICAO type designator, compare performance specifications (range, speed, ceiling), explore manufacturer families (Airbus A320, Boeing 737), and query engine configurations — all from PlaneFYI, an aircraft encyclopedia covering commercial, military, and general aviation aircraft.

PlaneFYI catalogs aircraft type designators, manufacturer lineages, performance envelopes (MTOW, range, cruise speed, service ceiling), seating configurations, engine types, and first flight dates — used by aviation enthusiasts, flight sim developers, and airline analytics platforms.

Explore aircraft at planefyi.com — browse by manufacturer, search by type code, and compare specifications.

planefyi demo — aircraft specifications, type codes, and manufacturer data in Python

Table of Contents

Install

pip install planefyi                # Core (zero deps)
pip install "planefyi[cli]"         # + Command-line interface
pip install "planefyi[mcp]"         # + MCP server for AI assistants
pip install "planefyi[api]"         # + HTTP client for planefyi.com API
pip install "planefyi[all]"         # Everything

Quick Start

from planefyi.api import PlaneFYI

with PlaneFYI() as api:
    # Look up an aircraft model
    a350 = api.get_aircraft("airbus-a350-900")
    print(a350["icao_code"])        # A359
    print(a350["manufacturer"])     # Airbus
    print(a350["range_km"])         # 15,000 km
    print(a350["max_passengers"])   # 440

    # List aircraft by manufacturer
    airbus = api.list_aircraft(manufacturer="airbus")
    for a in airbus:
        print(f"{a['icao_code']}{a['name']}")

    # Search aircraft
    results = api.search("787")

What You Can Do

Aircraft Families

Commercial aircraft are organized into families — groups of variants sharing a common fuselage design. The Airbus A320 family (A318/A319/A320/A321) and Boeing 737 family (737-700/800/900/MAX) are the world's most-produced narrowbody families, while the A350 and B787 represent the current generation of widebody aircraft.

Family Variants Category Typical Range
Airbus A220 A220-100, A220-300 Narrowbody 3,400-6,300 km
Airbus A320 A318, A319, A320, A321 Narrowbody 3,100-7,400 km
Airbus A330 A330-200, A330-300, A330-800/900neo Widebody 10,800-13,300 km
Airbus A350 A350-900, A350-1000 Widebody 15,000-16,100 km
Boeing 737 737-700/800/900, MAX 7/8/9/10 Narrowbody 5,600-7,100 km
Boeing 777 777-200/300, 777X Widebody 9,700-16,090 km
Boeing 787 787-8, 787-9, 787-10 Widebody 11,700-14,100 km
Embraer E-Jet E170, E175, E190, E195 Regional 2,200-4,500 km
from planefyi.api import PlaneFYI

with PlaneFYI() as api:
    # Browse aircraft by manufacturer
    boeing = api.list_aircraft(manufacturer="boeing")
    for aircraft in boeing:
        print(f"{aircraft['name']}: range {aircraft.get('range_km', 'N/A')} km")

    # Get all manufacturers
    manufacturers = api.list_manufacturers()

Learn more: Aircraft Directory · Glossary

Performance Specifications

Aircraft performance is defined by key metrics: Maximum Takeoff Weight (MTOW) determines payload capacity, range defines non-stop distance capability, cruise speed affects block time, and service ceiling sets the maximum operating altitude.

Metric Unit Determines
MTOW kg/lbs Max payload + fuel capacity
Range km/nm Non-stop distance capability
Cruise Speed Mach/km/h Block time, fuel efficiency
Service Ceiling ft/m Maximum flight altitude
Wingspan m/ft Gate compatibility (ICAO code)
Cabin Width m/ft Seat layout (single vs twin aisle)
from planefyi.api import PlaneFYI

with PlaneFYI() as api:
    # Compare two aircraft
    a350 = api.get_aircraft("airbus-a350-900")
    b787 = api.get_aircraft("boeing-787-9")
    print(f"A350: {a350.get('range_km')} km range, Mach {a350.get('cruise_mach')}")
    print(f"B787: {b787.get('range_km')} km range, Mach {b787.get('cruise_mach')}")

Learn more: Aircraft Specifications · Guides

Engine Configurations

Aircraft engines are categorized by type (turbofan, turboprop, piston) and mounting (underwing, rear-fuselage, integrated). Modern turbofans are identified by bypass ratio — high-bypass engines (5:1+) power commercial jets for fuel efficiency, while low-bypass engines power military fighters for raw thrust.

Engine Type Application Examples
High-bypass turbofan Commercial jets CFM LEAP, PW GTF, GE9X
Low-bypass turbofan Military fighters F110, EJ200
Turboprop Regional/cargo PW150A, CT7
Turboshaft Helicopters T700, Arrius
from planefyi.api import PlaneFYI

with PlaneFYI() as api:
    aircraft = api.get_aircraft("boeing-777-300er")
    print(f"Engines: {aircraft.get('engine_type')}")
    print(f"Engine count: {aircraft.get('engine_count')}")

Learn more: Aircraft Data · Glossary

ICAO Type Designators

Every aircraft type is assigned an ICAO type designator — a 2-4 character code used in flight plans. The code encodes manufacturer and variant: A320 (Airbus A320), B738 (Boeing 737-800), E195 (Embraer 195). The ICAO wake turbulence category (L/M/H/J) determines required separation distances.

Wake Category MTOW Example Types
L (Light) <7,000 kg C172, PA28
M (Medium) 7,000-136,000 kg A320, B738, E195
H (Heavy) >136,000 kg B777, A350, B747
J (Super) A380 only A388
from planefyi.api import PlaneFYI

with PlaneFYI() as api:
    # Search by ICAO type designator
    results = api.search("A359")
    aircraft = results[0]
    print(f"{aircraft['icao_code']}{aircraft['name']}")
    print(f"Wake category: {aircraft.get('wake_category')}")

Learn more: Type Designators · API Documentation

Command-Line Interface

pip install "planefyi[cli]"

planefyi aircraft airbus-a350-900          # Aircraft details
planefyi search "737 MAX"                  # Search aircraft
planefyi manufacturer boeing               # All Boeing aircraft
planefyi manufacturers                     # List all manufacturers

MCP Server (Claude, Cursor, Windsurf)

pip install "planefyi[mcp]"
{
    "mcpServers": {
        "planefyi": {
            "command": "uvx",
            "args": ["--from", "planefyi[mcp]", "python", "-m", "planefyi.mcp_server"]
        }
    }
}

REST API Client

from planefyi.api import PlaneFYI

with PlaneFYI() as api:
    aircraft = api.get_aircraft("airbus-a350-900")      # GET /api/v1/aircraft/airbus-a350-900/
    boeing = api.list_aircraft(manufacturer="boeing")     # GET /api/v1/aircraft/?manufacturer=boeing
    manufacturers = api.list_manufacturers()              # GET /api/v1/manufacturers/
    results = api.search("787")                          # GET /api/v1/search/?q=787

Example

curl -s "https://planefyi.com/api/v1/aircraft/airbus-a350-900/"
{
    "slug": "airbus-a350-900",
    "name": "Airbus A350-900",
    "icao_code": "A359",
    "manufacturer": "Airbus",
    "category": "Widebody",
    "range_km": 15000
}

Full API documentation at planefyi.com/developers/.

API Reference

Function Description
api.get_aircraft(slug) Aircraft details (specs, engine, dimensions)
api.list_aircraft(manufacturer) List aircraft, optionally by manufacturer
api.list_manufacturers() All aircraft manufacturers
api.get_manufacturer(slug) Manufacturer details with aircraft list
api.search(query) Search by name, ICAO code, or manufacturer

Learn More About Aircraft

Also Available

Platform Install Link
npm npm install planefyi npm
MCP uvx --from "planefyi[mcp]" python -m planefyi.mcp_server Config

Transport FYI Family

Part of the FYIPedia open-source developer tools ecosystem — airports, airlines, aircraft, and railways.

Package PyPI npm Description
airportfyi PyPI npm 4,500+ airports, IATA/ICAO codes, routes — airportfyi.com
airlinefyi PyPI npm Airlines, fleets, alliances, routes — airlinefyi.com
planefyi PyPI npm Aircraft models, specifications, manufacturers — planefyi.com
trainfyi PyPI npm Railway stations, train routes, rail networks — trainfyi.com

License

MIT

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

planefyi-0.1.1.tar.gz (249.3 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

planefyi-0.1.1-py3-none-any.whl (9.1 kB view details)

Uploaded Python 3

File details

Details for the file planefyi-0.1.1.tar.gz.

File metadata

  • Download URL: planefyi-0.1.1.tar.gz
  • Upload date:
  • Size: 249.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.10.11 {"installer":{"name":"uv","version":"0.10.11","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"macOS","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for planefyi-0.1.1.tar.gz
Algorithm Hash digest
SHA256 5784fa5c66d23fcb593eb2480095a239d742567ff4cd5eb716a157979d07cd87
MD5 eb426dd92e09285348b86223aa3fa230
BLAKE2b-256 a2f212cb74782069db940830f29629e1244416d3b1a5297167f251e332212b84

See more details on using hashes here.

File details

Details for the file planefyi-0.1.1-py3-none-any.whl.

File metadata

  • Download URL: planefyi-0.1.1-py3-none-any.whl
  • Upload date:
  • Size: 9.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.10.11 {"installer":{"name":"uv","version":"0.10.11","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"macOS","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for planefyi-0.1.1-py3-none-any.whl
Algorithm Hash digest
SHA256 24ef980cd320089b03b2bb7fbaf4a7c3dac07645cb06d4e0e8773fc447bc705c
MD5 be690b4020dedf89105a05eb4998c8c2
BLAKE2b-256 f5b46a1692044350657320286bab9a859d37c367d18bdc4cda8146157304c764

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page