> ## Documentation Index
> Fetch the complete documentation index at: https://docs.sanfoundation.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Get flight status

> Check available status and airport times for a flight number.

Supply a flight number independently of itinerary search. Search results often omit flight numbers.

Times are local to each airport. Coverage is limited to a few days around today; use `available_dates` when choosing a day. A completed lookup with no matching status returns `404` and counts toward quota.


## OpenAPI

````yaml https://api.sanfoundation.com/openapi.json GET /v1/flights/status
openapi: 3.0.0
info:
  title: SAN API
  description: >-
    Web data and context for agents, served by a network of miners running real
    browsers on residential connections. One resource per thing an agent asks
    for: search the web, read the news, find places, hotels and flights, and
    quote a symbol. Present an API key as `Authorization: Bearer san_...`. Every
    response is snake_case JSON and every error is `{ error: { code, message,
    param } }`.
  version: 0.0.1
  contact: {}
servers: []
security: []
tags:
  - name: web
    description: Web search
  - name: news
    description: News search
  - name: places
    description: Places search
  - name: hotels
    description: Stays search
  - name: flights
    description: Flight search
  - name: finance
    description: Quotes and charts
  - name: shopping
    description: Products and sellers
  - name: account
    description: Plan and remaining budget
paths:
  /v1/flights/status:
    get:
      tags:
        - flights
      summary: Live status of one flight
      description: >-
        Where a flight number is in its day: the airports it connects, terminals
        and gates where they are announced, the scheduled times and the
        estimated or actual ones once they move. Only a few days either side of
        today are covered, so a day outside that answers 404.
      operationId: FlightsController_status
      parameters:
        - name: country
          required: false
          in: query
          description: ISO 3166-1 alpha-2. Defaults to `us`.
          schema:
            type: string
            example: us
        - name: date
          required: false
          in: query
          description: >-
            YYYY-MM-DD. Omit for the day the source opens on, which is the
            flight happening now.
          schema:
            example: '2026-09-12'
            type: string
        - name: flight
          required: true
          in: query
          description: Airline code and number, with or without a space.
          schema:
            example: BA112
            type: string
      responses:
        '200':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/FlightStatusResponseDto'
        '400':
          description: A parameter is missing, invalid or not recognized.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PublicErrorDto'
        '401':
          description: Invalid API key.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PublicErrorDto'
        '404':
          description: No status for that flight on that day.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PublicErrorDto'
        '429':
          description: Monthly quota exhausted. Hard stop, no overage.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PublicErrorDto'
        '503':
          description: No miner and no fallback could serve the request.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PublicErrorDto'
      security:
        - api_key: []
        - x-api-key: []
components:
  schemas:
    FlightStatusResponseDto:
      type: object
      properties:
        id:
          type: string
          format: uuid
          description: Id of this request. Quote it when reporting a problem.
        took_ms:
          type: number
          example: 1420
          description: How long the request took, in milliseconds.
        request:
          type: object
          additionalProperties: true
          description: >-
            The parameters as accepted, after defaults and normalization. What
            the request actually ran with.
          example:
            query: coffee
            country: us
            page: 1
        status:
          $ref: '#/components/schemas/FlightStatusDto'
      required:
        - id
        - took_ms
        - request
        - status
    PublicErrorDto:
      type: object
      properties:
        error:
          $ref: '#/components/schemas/PublicErrorBodyDto'
      required:
        - error
    FlightStatusDto:
      type: object
      properties:
        flight:
          type: string
          example: BA112
          description: Normalized, with no space.
        airline:
          type: string
          example: British Airways
        date:
          type: string
          example: '2026-09-10'
          description: The day being reported.
        status:
          type: string
          enum:
            - scheduled
            - on_time
            - delayed
            - departed
            - landed
            - cancelled
            - unknown
          example: on_time
          description: >-
            Where the flight is in its day. `unknown` means the source worded it
            in a way this API does not map, never that the flight is missing.
        from:
          $ref: '#/components/schemas/FlightStatusEndpointDto'
        to:
          $ref: '#/components/schemas/FlightStatusEndpointDto'
        scheduled_departure:
          type: string
          example: 2026-09-10 18:30
          description: Local time at the departure airport, 24 hour.
        scheduled_arrival:
          type: string
          example: 2026-09-11 06:40
          description: Local time at the arrival airport, 24 hour.
        estimated_departure:
          type: string
          example: 2026-09-10 18:45
        estimated_arrival:
          type: string
          example: 2026-09-11 05:52
        actual_departure:
          type: string
          example: 2026-09-10 18:41
          description: Present once the flight has actually left.
        actual_arrival:
          type: string
          example: 2026-09-11 06:37
          description: Present once the flight has actually landed.
        available_dates:
          example:
            - '2026-09-09'
            - '2026-09-10'
            - '2026-09-11'
            - '2026-09-12'
          description: >-
            The days that can be asked for. Only a few days either side of today
            are covered.
          type: array
          items:
            type: string
      required:
        - flight
        - status
        - from
        - to
        - available_dates
    PublicErrorBodyDto:
      type: object
      properties:
        code:
          type: string
          enum:
            - unauthorized
            - missing_parameter
            - invalid_parameter
            - not_found
            - quota_exceeded
            - rate_limited
            - unavailable
            - expired
            - internal_error
          example: missing_parameter
        message:
          type: string
          example: Missing parameter `query`.
        param:
          type: string
          example: query
          description: The parameter at fault, when one parameter is at fault.
      required:
        - code
        - message
    FlightStatusEndpointDto:
      type: object
      properties:
        id:
          type: string
          example: JFK
          description: IATA code.
        name:
          type: string
          example: New York
          description: The city, which is what the source names.
        terminal:
          type: string
          example: '8'
        gate:
          type: string
          example: '14'
          description: Absent until a gate is announced.
  securitySchemes:
    api_key:
      scheme: bearer
      bearerFormat: JWT
      type: http
      description: 'Public API key: `Authorization: Bearer san_...`.'
    x-api-key:
      type: apiKey
      in: header
      name: X-Api-Key
      description: The same public API key, as a header.

````

This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.