openapi: 3.1.0
servers:
  - url: https://prod.api.market/api/v1/skylink-api/skylink
info:
  title: Complete Aviation API - METAR, TAF, Schedules, Airport and ADSB Data
  description: "SkyLink Aviation API: METAR weather, TAF forecasts, flight
    schedules, airport data, real-time flight tracking and ADSB data. Perfect
    for aviation app developers"
  version: 2.0.0
paths:
  /v2/airports/search:
    get:
      tags:
        - Airports
      summary: Search Airport
      description: |-
        Get comprehensive airport information by ICAO or IATA code.

        Returns detailed airport data including:
        - Basic airport information (name, location, coordinates)
        - Runway details and specifications
        - Communication frequencies 
        - Navigation aids (navaids)
        - Country and region information

        - **icao**: 4-letter ICAO airport code (e.g., KJFK, EGLL)
        - **iata**: 3-letter IATA airport code (e.g., JFK, LHR)

        Provide either ICAO or IATA code, not both.
      operationId: search_airport_v2_airports_search_get
      parameters:
        - name: icao
          in: query
          required: false
          schema:
            anyOf:
              - type: string
                minLength: 4
                maxLength: 4
              - type: "null"
            description: 4-letter ICAO airport code (e.g., KJFK, EGLL)
            title: Icao
          description: 4-letter ICAO airport code (e.g., KJFK, EGLL)
        - name: iata
          in: query
          required: false
          schema:
            anyOf:
              - type: string
                minLength: 3
                maxLength: 3
              - type: "null"
            description: 3-letter IATA airport code (e.g., JFK, LHR)
            title: Iata
          description: 3-letter IATA airport code (e.g., JFK, LHR)
      responses:
        "200":
          description: Airport information with runways, frequencies, and navaids
          content:
            application/json:
              schema:
                type: object
                additionalProperties: true
                title: Response Search Airport V2 Airports Search Get
              example:
                id: 3682
                ident: KJFK
                type: large_airport
                name: John F Kennedy International Airport
                latitude_deg: 40.63980103
                longitude_deg: -73.77890015
                elevation_ft: 13
                continent: NA
                iso_country: US
                iso_region: US-NY
                municipality: New York
                scheduled_service: yes
                gps_code: KJFK
                iata_code: JFK
                local_code: JFK
                runways:
                  - length_ft: 14511
                    width_ft: 150
                    surface: ASP
                    lighted: "1"
                    closed: "0"
                    le_ident: 04L
                    he_ident: 22R
                frequencies:
                  - type: TWR
                    description: JFK TWR
                    frequency_mhz: "119.1"
                navaids:
                  - ident: JFK
                    name: Kennedy
                    type: VOR-DME
                    frequency_khz: "115900"
        "422":
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/HTTPValidationError"
    parameters:
      - &a1
        description: API.market API Key
        in: header
        name: x-api-market-key
        value: Please Login/Signup to get an API Key
        required: true
        schema:
          type: string
  /v2/airlines/search:
    get:
      tags:
        - Airlines
      summary: Search Airlines
      description: >-
        Search airlines by ICAO or IATA code.


        Returns airline information including name, country, callsign, and logo
        URL.


        - **icao**: 3-letter ICAO airline code (e.g., AAL for American Airlines)

        - **iata**: 2-letter IATA airline code (e.g., AA for American Airlines)
      operationId: search_airlines_v2_airlines_search_get
      parameters:
        - name: icao
          in: query
          required: false
          schema:
            anyOf:
              - type: string
                minLength: 3
                maxLength: 3
              - type: "null"
            description: 3-letter ICAO airline code
            title: Icao
          description: 3-letter ICAO airline code
        - name: iata
          in: query
          required: false
          schema:
            anyOf:
              - type: string
                minLength: 2
                maxLength: 2
              - type: "null"
            description: 2-letter IATA airline code
            title: Iata
          description: 2-letter IATA airline code
      responses:
        "200":
          description: List of matching airlines
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: "#/components/schemas/Airline"
                title: Response Search Airlines V2 Airlines Search Get
              example:
                - id: 1355
                  name: British Airways
                  iata: BA
                  icao: BAW
                  callsign: SPEEDBIRD
                  country: United Kingdom
                  active: Y
                  logo: https://media.skylinkapi.com/logos/BA.png
        "422":
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/HTTPValidationError"
    parameters:
      - *a1
  /v2/weather/metar/{icao}:
    get:
      tags:
        - Weather
      summary: Get Metar Data
      description: |-
        Get current METAR weather data for an airport by ICAO code.

        - **icao**: 4-letter ICAO airport code (e.g., KJFK, EGLL)
      operationId: get_metar_data_v2_weather_metar__icao__get
      parameters:
        - name: icao
          in: path
          required: true
          schema:
            type: string
            minLength: 4
            maxLength: 4
            description: 4-letter ICAO airport code
            title: Icao
          description: 4-letter ICAO airport code
      responses:
        "200":
          description: Current METAR weather data
          content:
            application/json:
              schema:
                type: object
                additionalProperties: true
                title: Response Get Metar Data V2 Weather Metar  Icao  Get
              example:
                raw: METAR KJFK 271851Z 16013KT 10SM FEW024 15/09 A3020 RMK AO2 SLP216 T01500089
                icao: KJFK
                airport_name: John F Kennedy International Airport
                timestamp: 2025-09-27T12:00:00Z
        "422":
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/HTTPValidationError"
    parameters:
      - *a1
  /v2/weather/taf/{icao}:
    get:
      tags:
        - Weather
      summary: Get Taf Data
      description: |-
        Get Terminal Aerodrome Forecast (TAF) data for an airport by ICAO code.

        - **icao**: 4-letter ICAO airport code (e.g., KJFK, EGLL)
      operationId: get_taf_data_v2_weather_taf__icao__get
      parameters:
        - name: icao
          in: path
          required: true
          schema:
            type: string
            minLength: 4
            maxLength: 4
            description: 4-letter ICAO airport code
            title: Icao
          description: 4-letter ICAO airport code
      responses:
        "200":
          description: Terminal Aerodrome Forecast (TAF) data
          content:
            application/json:
              schema:
                type: object
                additionalProperties: true
                title: Response Get Taf Data V2 Weather Taf  Icao  Get
              example:
                raw: TAF KJFK 271720Z 2718/2824 16012KT P6SM FEW025 SCT250 FM272100 18010KT P6SM
                  SCT025 BKN250
                icao: KJFK
                airport_name: John F Kennedy International Airport
                timestamp: 2025-09-27T12:00:00Z
        "422":
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/HTTPValidationError"
    parameters:
      - *a1
  /v2/schedules/departures:
    get:
      tags:
        - Schedules
      summary: Get Departures
      description: |-
        Get real-time departure schedule for an airport.

        - **icao**: 4-letter ICAO airport code (e.g., KJFK, EGLL)
        - **iata**: 3-letter IATA airport code (e.g., JFK, LHR)

        Provide either ICAO or IATA code, not both.
      operationId: get_departures_v2_schedules_departures_get
      parameters:
        - name: icao
          in: query
          required: false
          schema:
            anyOf:
              - type: string
                minLength: 4
                maxLength: 4
              - type: "null"
            description: 4-letter ICAO airport code (e.g., KJFK, EGLL)
            title: Icao
          description: 4-letter ICAO airport code (e.g., KJFK, EGLL)
        - name: iata
          in: query
          required: false
          schema:
            anyOf:
              - type: string
                minLength: 3
                maxLength: 3
              - type: "null"
            description: 3-letter IATA airport code (e.g., JFK, LHR)
            title: Iata
          description: 3-letter IATA airport code (e.g., JFK, LHR)
      responses:
        "200":
          description: Airport departure schedule
          content:
            application/json:
              schema:
                type: object
                additionalProperties: true
                title: Response Get Departures V2 Schedules Departures Get
              example:
                airport: KJFK
                airport_name: John F Kennedy International Airport
                flights:
                  - flight_number: BAW115
                    airline: British Airways
                    destination: EGLL
                    destination_name: London Heathrow
                    scheduled_departure: 2025-09-27T14:30:00Z
                    actual_departure: 2025-09-27T14:35:00Z
                    status: Departed
                    gate: A12
                    terminal: "7"
                    aircraft_type: Boeing 777-300ER
                total_flights: 1
                timestamp: 2025-09-27T12:00:00Z
        "422":
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/HTTPValidationError"
    parameters:
      - *a1
  /v2/schedules/arrivals:
    get:
      tags:
        - Schedules
      summary: Get Arrivals
      description: |-
        Get real-time arrival schedule for an airport.

        - **icao**: 4-letter ICAO airport code (e.g., KJFK, EGLL)
        - **iata**: 3-letter IATA airport code (e.g., JFK, LHR)

        Provide either ICAO or IATA code, not both.
      operationId: get_arrivals_v2_schedules_arrivals_get
      parameters:
        - name: icao
          in: query
          required: false
          schema:
            anyOf:
              - type: string
                minLength: 4
                maxLength: 4
              - type: "null"
            description: 4-letter ICAO airport code (e.g., KJFK, EGLL)
            title: Icao
          description: 4-letter ICAO airport code (e.g., KJFK, EGLL)
        - name: iata
          in: query
          required: false
          schema:
            anyOf:
              - type: string
                minLength: 3
                maxLength: 3
              - type: "null"
            description: 3-letter IATA airport code (e.g., JFK, LHR)
            title: Iata
          description: 3-letter IATA airport code (e.g., JFK, LHR)
      responses:
        "200":
          description: Airport arrival schedule
          content:
            application/json:
              schema:
                type: object
                additionalProperties: true
                title: Response Get Arrivals V2 Schedules Arrivals Get
              example:
                airport: KJFK
                airport_name: John F Kennedy International Airport
                flights:
                  - flight_number: BAW179
                    airline: British Airways
                    origin: EGLL
                    origin_name: London Heathrow
                    scheduled_arrival: 2025-09-27T16:15:00Z
                    estimated_arrival: 2025-09-27T16:20:00Z
                    status: En Route
                    gate: B15
                    terminal: "7"
                    aircraft_type: Boeing 777-300ER
                total_flights: 1
                timestamp: 2025-09-27T12:00:00Z
        "422":
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/HTTPValidationError"
    parameters:
      - *a1
  /v2/flight_status/{flight_number}:
    get:
      tags:
        - Flight Status
      summary: Get Flight Status
      description: >-
        Get real-time flight status and details by flight number.


        - **flight_number**: Flight number (e.g., AA123, BA456, AF789)


        Returns flight status, departure/arrival times, gates, terminals, and
        airline information.
      operationId: get_flight_status_v2_flight_status__flight_number__get
      parameters:
        - name: flight_number
          in: path
          required: true
          schema:
            type: string
            minLength: 2
            maxLength: 10
            description: Flight number (e.g., BAW123, UA456)
            title: Flight Number
          description: Flight number (e.g., BAW123, UA456)
      responses:
        "200":
          description: Real-time flight status and details
          content:
            application/json:
              schema:
                type: object
                additionalProperties: true
                title: Response Get Flight Status V2 Flight Status  Flight Number  Get
              example:
                flight_number: BAW123
                airline: British Airways
                status: En Route
                departure:
                  airport: EGLL
                  scheduled: 2025-09-27T10:30:00Z
                  actual: 2025-09-27T10:35:00Z
                  terminal: "5"
                  gate: A12
                arrival:
                  airport: KJFK
                  scheduled: 2025-09-27T14:45:00Z
                  estimated: 2025-09-27T14:50:00Z
                  terminal: "7"
                  gate: B15
                aircraft:
                  type: Boeing 777-300ER
                  registration: G-STBC
        "422":
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/HTTPValidationError"
    parameters:
      - *a1
  /v2/adsb/:
    get:
      tags:
        - ADS-B Aircraft Tracking
      summary: Adsb Root
      description: ADS-B service root endpoint
      operationId: adsb_root_v2_adsb__get
      responses:
        "200":
          description: Successful Response
          content:
            application/json:
              schema: {}
        "404":
          description: Aircraft not found
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ErrorResponse"
        "500":
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ErrorResponse"
    parameters:
      - *a1
  /v2/adsb/aircraft:
    get:
      tags:
        - ADS-B Aircraft Tracking
      summary: Get all tracked aircraft
      description: Returns a list of all currently tracked aircraft with their latest
        position and flight data.
      operationId: get_all_aircraft_v2_adsb_aircraft_get
      parameters:
        - name: icao24
          in: query
          required: false
          schema:
            anyOf:
              - type: string
              - type: "null"
            description: Filter by specific ICAO 24-bit aircraft identifier (6 hex
              characters)
            title: Icao24
          description: Filter by specific ICAO 24-bit aircraft identifier (6 hex characters)
        - name: callsign
          in: query
          required: false
          schema:
            anyOf:
              - type: string
              - type: "null"
            description: Filter by flight callsign (partial match, case-insensitive)
            title: Callsign
          description: Filter by flight callsign (partial match, case-insensitive)
        - name: lat
          in: query
          required: false
          schema:
            anyOf:
              - type: number
                maximum: 90
                minimum: -90
              - type: "null"
            description: Center latitude for radius search (requires lon and radius)
            title: Lat
          description: Center latitude for radius search (requires lon and radius)
        - name: lon
          in: query
          required: false
          schema:
            anyOf:
              - type: number
                maximum: 180
                minimum: -180
              - type: "null"
            description: Center longitude for radius search (requires lat and radius)
            title: Lon
          description: Center longitude for radius search (requires lat and radius)
        - name: radius
          in: query
          required: false
          schema:
            anyOf:
              - type: number
                maximum: 1000
                exclusiveMinimum: 0
              - type: "null"
            description: Search radius in kilometers (requires lat and lon)
            title: Radius
          description: Search radius in kilometers (requires lat and lon)
        - name: bbox
          in: query
          required: false
          schema:
            anyOf:
              - type: string
              - type: "null"
            description: Bounding box as 'lat1,lon1,lat2,lon2' (southwest,northeast corners)
            title: Bbox
          description: Bounding box as 'lat1,lon1,lat2,lon2' (southwest,northeast corners)
        - name: min_alt
          in: query
          required: false
          schema:
            anyOf:
              - type: number
                maximum: 60000
                minimum: 0
              - type: "null"
            description: Minimum altitude in feet
            title: Min Alt
          description: Minimum altitude in feet
        - name: max_alt
          in: query
          required: false
          schema:
            anyOf:
              - type: number
                maximum: 60000
                minimum: 0
              - type: "null"
            description: Maximum altitude in feet
            title: Max Alt
          description: Maximum altitude in feet
        - name: min_speed
          in: query
          required: false
          schema:
            anyOf:
              - type: number
                maximum: 1000
                minimum: 0
              - type: "null"
            description: Minimum ground speed in knots
            title: Min Speed
          description: Minimum ground speed in knots
        - name: max_speed
          in: query
          required: false
          schema:
            anyOf:
              - type: number
                maximum: 1000
                minimum: 0
              - type: "null"
            description: Maximum ground speed in knots
            title: Max Speed
          description: Maximum ground speed in knots
        - name: registration
          in: query
          required: false
          schema:
            anyOf:
              - type: string
              - type: "null"
            description: Filter by aircraft registration (if enrichment data available)
            title: Registration
          description: Filter by aircraft registration (if enrichment data available)
        - name: airline
          in: query
          required: false
          schema:
            anyOf:
              - type: string
              - type: "null"
            description: Filter by operating airline (if enrichment data available)
            title: Airline
          description: Filter by operating airline (if enrichment data available)
      responses:
        "200":
          description: List of tracked aircraft
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/AircraftListResponse"
              example:
                aircraft:
                  - icao24: A12345
                    callsign: BAW123
                    latitude: 51.4706
                    longitude: -0.4619
                    altitude: 35000
                    ground_speed: 450.5
                    track: 89.2
                    vertical_rate: 0
                    is_on_ground: false
                    last_seen: 2025-09-27T12:00:00Z
                    first_seen: 2025-09-27T11:45:00Z
                    registration: G-ABCD
                    aircraft_type: Boeing 777-300ER
                    airline: British Airways
                total_count: 4691
                timestamp: 2025-09-27T12:00:30Z
        "404":
          description: Aircraft not found
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ErrorResponse"
        "422":
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/HTTPValidationError"
        "500":
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ErrorResponse"
    parameters:
      - *a1
  /v2/adsb/aircraft/statistics:
    get:
      tags:
        - ADS-B Aircraft Tracking
      summary: Get aircraft tracking statistics
      description: Get real-time statistics about currently tracked aircraft.
      operationId: get_aircraft_statistics_v2_adsb_aircraft_statistics_get
      responses:
        "200":
          description: Aircraft tracking statistics
          content:
            application/json:
              schema:
                additionalProperties: true
                type: object
                title: Response Get Aircraft Statistics V2 Adsb Aircraft Statistics Get
              example:
                total_aircraft: 4691
                positioned_aircraft: 4666
                on_ground: 153
                airborne: 4513
                altitude_stats:
                  min_altitude: 125
                  max_altitude: 58500
                  avg_altitude: 25848.3
                timestamp: 2025-09-27T12:00:30Z
        "404":
          description: Aircraft not found
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ErrorResponse"
        "500":
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ErrorResponse"
    parameters:
      - *a1
  /v2/adsb/health:
    get:
      tags:
        - ADS-B Aircraft Tracking
      summary: ADS-B service health check
      description: Check the health and status of the ADS-B tracking service.
      operationId: get_adsb_health_v2_adsb_health_get
      responses:
        "200":
          description: Successful Response
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/HealthResponse"
        "404":
          description: Aircraft not found
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ErrorResponse"
        "500":
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ErrorResponse"
    parameters:
      - *a1
  /:
    get:
      summary: Root
      description: API information and health check
      operationId: root__get
      responses:
        "200":
          description: Successful Response
          content:
            application/json:
              schema:
                additionalProperties: true
                type: object
                title: Response Root  Get
    parameters:
      - *a1
  /health:
    get:
      summary: Health Check
      description: Simple health check endpoint
      operationId: health_check_health_get
      responses:
        "200":
          description: Successful Response
          content:
            application/json:
              schema:
                additionalProperties:
                  type: string
                type: object
                title: Response Health Check Health Get
    parameters:
      - *a1
components:
  schemas:
    AircraftListResponse:
      properties:
        aircraft:
          items:
            $ref: "#/components/schemas/AircraftResponse"
          type: array
          title: Aircraft
          description: List of aircraft
        total_count:
          type: integer
          title: Total Count
          description: Total number of aircraft returned
        timestamp:
          type: string
          format: date-time
          title: Timestamp
          description: Response timestamp
      type: object
      required:
        - aircraft
        - total_count
      title: AircraftListResponse
      description: Response model for multiple aircraft.
      example:
        aircraft:
          - aircraft_type: Boeing 777-300ER
            airline: British Airways
            altitude: 35000
            callsign: BAW123
            first_seen: 2025-09-27T11:45:00Z
            ground_speed: 450.5
            icao24: A12345
            is_on_ground: false
            last_seen: 2025-09-27T12:00:00Z
            latitude: 51.4706
            longitude: -0.4619
            registration: G-ABCD
            track: 89.2
            vertical_rate: 0
          - aircraft_type: Airbus A321
            airline: American Airlines
            altitude: 28000
            callsign: AAL456
            first_seen: 2025-09-27T11:30:00Z
            ground_speed: 420
            icao24: A67890
            is_on_ground: false
            last_seen: 2025-09-27T12:00:15Z
            latitude: 40.7128
            longitude: -74.006
            registration: N123AA
            track: 270.5
            vertical_rate: -500
        timestamp: 2025-09-27T12:00:30Z
        total_count: 2
    AircraftResponse:
      properties:
        icao24:
          type: string
          title: Icao24
          description: ICAO 24-bit aircraft identifier (hex code)
        callsign:
          anyOf:
            - type: string
            - type: "null"
          title: Callsign
          description: Flight callsign/identifier
        latitude:
          anyOf:
            - type: number
            - type: "null"
          title: Latitude
          description: Aircraft latitude in decimal degrees
        longitude:
          anyOf:
            - type: number
            - type: "null"
          title: Longitude
          description: Aircraft longitude in decimal degrees
        altitude:
          anyOf:
            - type: number
            - type: "null"
          title: Altitude
          description: Aircraft altitude in feet
        ground_speed:
          anyOf:
            - type: number
            - type: "null"
          title: Ground Speed
          description: Ground speed in knots
        track:
          anyOf:
            - type: number
            - type: "null"
          title: Track
          description: Track angle in degrees (0-360)
        vertical_rate:
          anyOf:
            - type: number
            - type: "null"
          title: Vertical Rate
          description: Vertical rate in feet per minute
        is_on_ground:
          anyOf:
            - type: boolean
            - type: "null"
          title: Is On Ground
          description: Whether aircraft is on ground
        last_seen:
          type: string
          format: date-time
          title: Last Seen
          description: Last time aircraft was observed
        first_seen:
          type: string
          format: date-time
          title: First Seen
          description: First time aircraft was observed in current session
        registration:
          anyOf:
            - type: string
            - type: "null"
          title: Registration
          description: Aircraft registration/tail number
        aircraft_type:
          anyOf:
            - type: string
            - type: "null"
          title: Aircraft Type
          description: Aircraft type/model
        airline:
          anyOf:
            - type: string
            - type: "null"
          title: Airline
          description: Operating airline
      type: object
      required:
        - icao24
        - last_seen
        - first_seen
      title: AircraftResponse
      description: Aircraft data response model.
      example:
        aircraft_type: Boeing 777-300ER
        airline: British Airways
        altitude: 35000
        callsign: BAW123
        first_seen: 2025-09-27T11:45:00Z
        ground_speed: 450.5
        icao24: A12345
        is_on_ground: false
        last_seen: 2025-09-27T12:00:00Z
        latitude: 51.4706
        longitude: -0.4619
        registration: G-ABCD
        track: 89.2
        vertical_rate: 0
    Airline:
      properties:
        id:
          type: integer
          title: Id
          description: Unique airline identifier
        name:
          type: string
          title: Name
          description: Full airline name
        alias:
          anyOf:
            - type: string
            - type: "null"
          title: Alias
          description: Alternative airline name
        iata:
          anyOf:
            - type: string
            - type: "null"
          title: Iata
          description: 2-letter IATA airline code
        icao:
          anyOf:
            - type: string
            - type: "null"
          title: Icao
          description: 3-letter ICAO airline code
        callsign:
          anyOf:
            - type: string
            - type: "null"
          title: Callsign
          description: Radio callsign used by pilots
        country:
          anyOf:
            - type: string
            - type: "null"
          title: Country
          description: Country where airline is based
        active:
          anyOf:
            - type: string
            - type: "null"
          title: Active
          description: Whether airline is currently active (Y/N)
        logo:
          anyOf:
            - type: string
            - type: "null"
          title: Logo
          description: URL to airline logo image
      type: object
      required:
        - id
        - name
      title: Airline
      description: Airline information model
      example:
        active: Y
        alias: American
        callsign: AMERICAN
        country: United States
        iata: AA
        icao: AAL
        id: 1
        logo: https://media.skylinkapi.com/logos/AA.png
        name: American Airlines
    ErrorResponse:
      properties:
        error:
          type: string
          title: Error
          description: Error message
        detail:
          anyOf:
            - type: string
            - type: "null"
          title: Detail
          description: Additional error details
        timestamp:
          type: string
          format: date-time
          title: Timestamp
          description: Error timestamp
      type: object
      required:
        - error
      title: ErrorResponse
      description: Standard error response model.
    HTTPValidationError:
      properties:
        detail:
          items:
            $ref: "#/components/schemas/ValidationError"
          type: array
          title: Detail
      type: object
      title: HTTPValidationError
    HealthResponse:
      properties:
        status:
          type: string
          title: Status
          description: Service status
        connected:
          type: boolean
          title: Connected
          description: Whether connected to ADS-B Hub
        active_aircraft_count:
          type: integer
          title: Active Aircraft Count
          description: Number of currently tracked aircraft
        connection_uptime:
          anyOf:
            - type: number
            - type: "null"
          title: Connection Uptime
          description: Connection uptime in seconds
        last_message_received:
          anyOf:
            - type: string
              format: date-time
            - type: "null"
          title: Last Message Received
          description: Timestamp of last received message
      type: object
      required:
        - status
        - connected
        - active_aircraft_count
      title: HealthResponse
      description: ADS-B service health response.
    ValidationError:
      properties:
        loc:
          items:
            anyOf:
              - type: string
              - type: integer
          type: array
          title: Location
        msg:
          type: string
          title: Message
        type:
          type: string
          title: Error Type
      type: object
      required:
        - loc
        - msg
        - type
      title: ValidationError
security: {}
tags:
  - name: data
    description: Operations related to data
  - name: travel
    description: Operations related to travel
  - name: transportation
    description: Operations related to transportation
