> ## Documentation Index
> Fetch the complete documentation index at: https://terminal49-feat-trade-intel-sdk.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

# List containers

> List containers with documented tracking, route, date, relationship, and tag filters and explicit pagination.

See the [complete filter reference](/api-docs/api-reference/list-filters) for values, operators, multi-value semantics, and limitations. For combined requests, see [filter usage](/api-docs/in-depth-guides/filtering-shipments-and-containers).


## OpenAPI

````yaml get /containers
openapi: 3.0.0
info:
  title: Terminal49 API Reference
  version: 0.2.0
  contact:
    name: Terminal49 API support
    url: https://www.terminal49.com
    email: support@terminal49.com
  description: >-
    The Terminal 49 API offers a convenient way to programmatically track your
    shipments from origin to destination.


    Please enter your API key into the "Variables" tab before using these
    endpoints within Postman.
  x-label: Beta
  termsOfService: https://www.terminal49.com/terms
servers:
  - url: https://api.terminal49.com/v2
    description: Production
security:
  - authorization: []
tags:
  - name: Containers
  - name: Custom Field Definitions
  - name: Custom Field Options
  - name: Custom Fields
  - name: Shipments
  - name: Locations
  - name: Events
  - name: Tracking Requests
  - name: Webhooks
  - name: Webhook Notifications
  - name: Ports
  - name: Metro Areas
  - name: Terminals
  - name: Routing (Paid)
  - name: Documents
  - name: Email Submissions
  - name: Document Schemas
  - name: Search
  - name: Parties
  - name: Trade Intelligence
    description: >-
      Trade intelligence answers questions about who imports what into the US,
      from where, on which carriers, and how that changes over time. The data is
      US import bill-of-lading records (US Customs vessel manifests): every
      ocean container landed at a US port (plus US-bound cargo landed at
      Vancouver, BC) from January 2022 to today, refreshed daily. It does not
      include air freight, exports, or domestic moves.


      **Access.** Trade intelligence is enabled per account. Accounts without it
      receive `403 Forbidden` with `{"error": "Trade intelligence is not enabled
      for this account"}`; contact sales@terminal49.com to enable it. Requests
      are limited to roughly 120 per minute per account (`429` with `{"error":
      "Rate limit exceeded; retry in a minute"}`).


      **Format.** These endpoints accept and return plain JSON, not JSON:API.
      Send `Content-Type: application/json` on `POST` requests and authenticate
      exactly like every other v2 endpoint (`Authorization: Token
      YOUR_API_KEY`).


      **Typical flow.** Resolve a name or product first, then analyze:
      `companies/search` or `commodities/search` give you the exact
      `company_name` or `hs4` to pass to `companies/profile`, `importers/top`,
      `trends`, or `breakdown`. Container and bill of lading numbers go straight
      to `containers/lookup` and `bills_of_lading/lookup`.


      **Reading the numbers.**


      - **Volume is physical containers.** Each box is counted once, even when
      it appears on several bills of lading. A container carrying several HS
      codes counts once per code and companies can share containers, so do not
      add volumes across HS codes or companies; take market totals from `trends`
      or `breakdown` without a company filter.

      - **Estimated value is a modelled USD estimate**, not the declared customs
      value.

      - **The current month is partial.** `trends` and `breakdown` include it by
      default; `companies/profile` and `importers/top` use full calendar months.
      Compare full months against the same months a year earlier.

      - **Absent volume is not small volume.** Importers can ask US Customs to
      withhold their name from manifests, and much large-retail freight is
      booked under forwarders or suppliers. Treat a company's figures as a
      floor, never as its size.

      - **One company, many names.** Company names are normalized but split by
      state, and large importers use several names (distribution, merchandising,
      and DC entities). Related entities are separate companies; report them
      separately. `companies/search` ranks by match quality, not by size.

      - **Companies are the consignee or notify party on the bill.** Forwarders,
      NVOCCs, and customs brokers appear alongside cargo owners. A high
      notify-party share, or LOGISTICS, FREIGHT, SHIPPING, CUSTOMS, or BROKERAGE
      in the name, usually indicates a logistics provider.

      - **Carriers, countries, and ports use the manifests' spellings**, and
      carriers appear under spelling variants (for example `CMA CGM` and `CMA
      CGM AMERICA LLC`). Filter with substrings and merge variants before
      computing shares.

      - **HS4 descriptions are truncated.** Check `common_goods` from
      `commodities/search` before relying on a code.
paths:
  /containers:
    get:
      tags:
        - Containers
      summary: List containers
      description: >-
        Returns containers visible to your account. Default order: most recent
        status refresh first. Filters combine with AND; multi-value behavior is
        parameter-specific. Unknown filter names are ignored by the API. See the
        filter reference for exact values, operators, implicit scopes, and usage
        limitations.
      operationId: get-containers
      parameters:
        - schema:
            type: integer
            default: 1
            minimum: 1
          in: query
          name: page[number]
          example: 1
        - schema:
            type: integer
            default: 30
            minimum: 1
            maximum: 50
          in: query
          name: page[size]
          description: Records per page. Default 30. Values above 50 are capped at 50.
          example: 30
        - schema:
            type: string
          in: query
          name: include
          description: Comma delimited list of relations to include
          example: shipment,pod_terminal
        - in: query
          name: sort
          description: >-
            Default -last_status_refresh_at. Prefix a supported field with - for
            descending order; use comma-separated fields (up to three).
            Supported fields: arrival, created_at, updated_at, shipment_number,
            destination_ata_at, destination_eta_at, empty_terminated_at,
            final_destination_full_out_at, last_status_refresh_at, picked_up_at,
            delivered_at, delivery_appointment_at, pickup_lfd,
            pickup_lfd_line_on, pickup_lfd_line_effective_on,
            pickup_lfd_line_ind_effective_on, pickup_lfd_line_ind_on, ind_lfd,
            pickup_lfd_rail_on, pickup_lfd_rail_effective_on,
            pickup_lfd_terminal_on, pickup_lfd_terminal_effective_on,
            pod_arrived_at, pod_discharged_at, pod_eta_at,
            inland_destination_rail_unloaded_at, inland_destination_eta_at,
            inland_destination_ata_at, pod_rail_loaded_at, pol_full_in_at,
            empty_out_at, pol_vessel_loaded_at, pol_vessel_departed_at.
            attention_priority is a standalone priority sort. Invalid tokens are
            ignored; all-invalid input falls back to the default. LFD sorts may
            be scoped by account entitlements and settings.
          schema:
            type: string
          example: pickup_lfd
        - in: query
          name: filter[number]
          description: >-
            Exact number match. Shipment arrays mean OR; container arrays of
            exact numbers mean AND. Use comma-separated container numbers for
            OR. Shipment scalar commas are literal. Exact match by default;
            optional =, @exists, or @not_exists. Comma-separated literals mean
            OR. Arrays mean AND unless the parameter description says otherwise.
            ~ is not supported.
          schema:
            type: string
          x-t49-filter-kind: string
          x-t49-filter-key: number
          example: CAIU1234567
        - in: query
          name: filter[number][]
          description: >-
            Bracketed array form of filter[number]. Exact number match. Shipment
            arrays mean OR; container arrays of exact numbers mean AND. Use
            comma-separated container numbers for OR. Shipment scalar commas are
            literal. Exact match by default; optional =, @exists, or
            @not_exists. Comma-separated literals mean OR. Arrays mean AND
            unless the parameter description says otherwise. ~ is not supported.
          schema:
            type: array
            items:
              type: string
            minItems: 1
          style: form
          explode: true
          example:
            - CAIU1234567
        - in: query
          name: filter[pol]
          description: >-
            Port of lading name (including raw routing data when no port
            relationship exists). Exact match by default; optional =, @exists,
            or @not_exists. Comma-separated literals mean OR. Arrays mean AND
            unless the parameter description says otherwise. ~ is not supported.
          schema:
            type: string
          x-t49-filter-kind: string
          x-t49-filter-key: pol
          example: EXAMPLE_VALUE
        - in: query
          name: filter[pol][]
          description: >-
            Bracketed array form of filter[pol]. Port of lading name (including
            raw routing data when no port relationship exists). Exact match by
            default; optional =, @exists, or @not_exists. Comma-separated
            literals mean OR. Arrays mean AND unless the parameter description
            says otherwise. ~ is not supported.
          schema:
            type: array
            items:
              type: string
            minItems: 1
          style: form
          explode: true
          example:
            - EXAMPLE_VALUE
        - in: query
          name: filter[pod]
          description: >-
            Port of discharge name (including raw routing data when no port
            relationship exists). Exact match by default; optional =, @exists,
            or @not_exists. Comma-separated literals mean OR. Arrays mean AND
            unless the parameter description says otherwise. ~ is not supported.
          schema:
            type: string
          x-t49-filter-kind: string
          x-t49-filter-key: pod
          example: EXAMPLE_VALUE
        - in: query
          name: filter[pod][]
          description: >-
            Bracketed array form of filter[pod]. Port of discharge name
            (including raw routing data when no port relationship exists). Exact
            match by default; optional =, @exists, or @not_exists.
            Comma-separated literals mean OR. Arrays mean AND unless the
            parameter description says otherwise. ~ is not supported.
          schema:
            type: array
            items:
              type: string
            minItems: 1
          style: form
          explode: true
          example:
            - EXAMPLE_VALUE
        - in: query
          name: filter[destination]
          description: >-
            Destination name, including raw routing data when no port
            relationship exists. Exact match by default; optional =, @exists, or
            @not_exists. Comma-separated literals mean OR. Arrays mean AND
            unless the parameter description says otherwise. ~ is not supported.
          schema:
            type: string
          x-t49-filter-kind: string
          x-t49-filter-key: destination
          example: EXAMPLE_VALUE
        - in: query
          name: filter[destination][]
          description: >-
            Bracketed array form of filter[destination]. Destination name,
            including raw routing data when no port relationship exists. Exact
            match by default; optional =, @exists, or @not_exists.
            Comma-separated literals mean OR. Arrays mean AND unless the
            parameter description says otherwise. ~ is not supported.
          schema:
            type: array
            items:
              type: string
            minItems: 1
          style: form
          explode: true
          example:
            - EXAMPLE_VALUE
        - in: query
          name: filter[pol_code]
          description: >-
            Port of lading UN/LOCODE. Exact match by default; optional =,
            @exists, or @not_exists. Comma-separated literals mean OR. Arrays
            mean AND unless the parameter description says otherwise. ~ is not
            supported.
          schema:
            type: string
          x-t49-filter-kind: string
          x-t49-filter-key: pol_code
          example: CNSHA
        - in: query
          name: filter[pol_code][]
          description: >-
            Bracketed array form of filter[pol_code]. Port of lading UN/LOCODE.
            Exact match by default; optional =, @exists, or @not_exists.
            Comma-separated literals mean OR. Arrays mean AND unless the
            parameter description says otherwise. ~ is not supported.
          schema:
            type: array
            items:
              type: string
            minItems: 1
          style: form
          explode: true
          example:
            - CNSHA
        - in: query
          name: filter[pod_code]
          description: >-
            Port of discharge UN/LOCODE. Exact match by default; optional =,
            @exists, or @not_exists. Comma-separated literals mean OR. Arrays
            mean AND unless the parameter description says otherwise. ~ is not
            supported.
          schema:
            type: string
          x-t49-filter-kind: string
          x-t49-filter-key: pod_code
          example: USLAX
        - in: query
          name: filter[pod_code][]
          description: >-
            Bracketed array form of filter[pod_code]. Port of discharge
            UN/LOCODE. Exact match by default; optional =, @exists, or
            @not_exists. Comma-separated literals mean OR. Arrays mean AND
            unless the parameter description says otherwise. ~ is not supported.
          schema:
            type: array
            items:
              type: string
            minItems: 1
          style: form
          explode: true
          example:
            - USLAX
        - in: query
          name: filter[destination_code]
          description: >-
            Destination UN/LOCODE. Exact match by default; optional =, @exists,
            or @not_exists. Comma-separated literals mean OR. Arrays mean AND
            unless the parameter description says otherwise. ~ is not supported.
          schema:
            type: string
          x-t49-filter-kind: string
          x-t49-filter-key: destination_code
          example: USLAX
        - in: query
          name: filter[destination_code][]
          description: >-
            Bracketed array form of filter[destination_code]. Destination
            UN/LOCODE. Exact match by default; optional =, @exists, or
            @not_exists. Comma-separated literals mean OR. Arrays mean AND
            unless the parameter description says otherwise. ~ is not supported.
          schema:
            type: array
            items:
              type: string
            minItems: 1
          style: form
          explode: true
          example:
            - USLAX
        - in: query
          name: filter[shipping_line_scac]
          description: >-
            Shipping line Standard Carrier Alpha Code (SCAC). Obtain valid
            values from GET /shipping_lines; preserve their exact codes. Exact
            match by default; optional =, @exists, or @not_exists.
            Comma-separated literals mean OR. Arrays mean AND unless the
            parameter description says otherwise. ~ is not supported.
          schema:
            type: string
          x-t49-filter-kind: string
          x-t49-filter-key: shipping_line_scac
          example: MAEU
        - in: query
          name: filter[shipping_line_scac][]
          description: >-
            Bracketed array form of filter[shipping_line_scac]. Shipping line
            Standard Carrier Alpha Code (SCAC). Obtain valid values from GET
            /shipping_lines; preserve their exact codes. Exact match by default;
            optional =, @exists, or @not_exists. Comma-separated literals mean
            OR. Arrays mean AND unless the parameter description says otherwise.
            ~ is not supported.
          schema:
            type: array
            items:
              type: string
            minItems: 1
          style: form
          explode: true
          example:
            - MAEU
        - in: query
          name: filter[customer_id]
          description: >-
            Customer account ID or customer party ID. Falls back to the shipment
            creator when no customer party role exists. Presence checks refer to
            the customer party role. Exact match by default; optional =,
            @exists, or @not_exists. Comma-separated literals mean OR. Arrays
            mean AND unless the parameter description says otherwise. ~ is not
            supported.
          schema:
            type: string
          x-t49-filter-kind: string
          x-t49-filter-key: customer_id
          example: 00000000-0000-4000-8000-000000000001
        - in: query
          name: filter[customer_id][]
          description: >-
            Bracketed array form of filter[customer_id]. Customer account ID or
            customer party ID. Falls back to the shipment creator when no
            customer party role exists. Presence checks refer to the customer
            party role. Exact match by default; optional =, @exists, or
            @not_exists. Comma-separated literals mean OR. Arrays mean AND
            unless the parameter description says otherwise. ~ is not supported.
          schema:
            type: array
            items:
              type: string
            minItems: 1
          style: form
          explode: true
          example:
            - 00000000-0000-4000-8000-000000000001
        - in: query
          name: filter[customer_name]
          description: >-
            Exact, case-sensitive customer company name. Prefer customer_id for
            names containing punctuation rejected by the string parser. Exact
            match by default; optional =, @exists, or @not_exists.
            Comma-separated literals mean OR. Arrays mean AND unless the
            parameter description says otherwise. ~ is not supported.
          schema:
            type: string
          x-t49-filter-kind: string
          x-t49-filter-key: customer_name
          example: EXAMPLE_VALUE
        - in: query
          name: filter[customer_name][]
          description: >-
            Bracketed array form of filter[customer_name]. Exact, case-sensitive
            customer company name. Prefer customer_id for names containing
            punctuation rejected by the string parser. Exact match by default;
            optional =, @exists, or @not_exists. Comma-separated literals mean
            OR. Arrays mean AND unless the parameter description says otherwise.
            ~ is not supported.
          schema:
            type: array
            items:
              type: string
            minItems: 1
          style: form
          explode: true
          example:
            - EXAMPLE_VALUE
        - in: query
          name: filter[vessel_name]
          description: >-
            Exact vessel name. Exact match by default; optional =, @exists, or
            @not_exists. Comma-separated literals mean OR. Arrays mean AND
            unless the parameter description says otherwise. ~ is not supported.
          schema:
            type: string
          x-t49-filter-kind: string
          x-t49-filter-key: vessel_name
          example: EXAMPLE_VALUE
        - in: query
          name: filter[vessel_name][]
          description: >-
            Bracketed array form of filter[vessel_name]. Exact vessel name.
            Exact match by default; optional =, @exists, or @not_exists.
            Comma-separated literals mean OR. Arrays mean AND unless the
            parameter description says otherwise. ~ is not supported.
          schema:
            type: array
            items:
              type: string
            minItems: 1
          style: form
          explode: true
          example:
            - EXAMPLE_VALUE
        - in: query
          name: filter[pod_terminal_id]
          description: >-
            Port of discharge terminal ID. Obtain it from the related terminal
            resource. Exact match by default; optional =, @exists, or
            @not_exists. Comma-separated literals mean OR. Arrays mean AND
            unless the parameter description says otherwise. ~ is not supported.
          schema:
            type: string
          x-t49-filter-kind: string
          x-t49-filter-key: pod_terminal_id
          example: 00000000-0000-4000-8000-000000000001
        - in: query
          name: filter[pod_terminal_id][]
          description: >-
            Bracketed array form of filter[pod_terminal_id]. Port of discharge
            terminal ID. Obtain it from the related terminal resource. Exact
            match by default; optional =, @exists, or @not_exists.
            Comma-separated literals mean OR. Arrays mean AND unless the
            parameter description says otherwise. ~ is not supported.
          schema:
            type: array
            items:
              type: string
            minItems: 1
          style: form
          explode: true
          example:
            - 00000000-0000-4000-8000-000000000001
        - in: query
          name: filter[current_status]
          description: >-
            Container status. Known values: new, on_ship, available,
            not_available, grounded, on_rail, picked_up, off_dock, delivered,
            dropped, loaded, empty_returned, awaiting_inland_transfer. Unknown
            values return no matches in the API; the SDK rejects them.
            Comma-separated states mean OR; arrays mean AND.
          schema:
            type: string
            description: >-
              One known state, comma-separated known states, or a presence
              expression.
          x-t49-filter-kind: status
          x-t49-filter-key: current_status
          x-t49-values:
            - new
            - on_ship
            - available
            - not_available
            - grounded
            - on_rail
            - picked_up
            - off_dock
            - delivered
            - dropped
            - loaded
            - empty_returned
            - awaiting_inland_transfer
          example: available
        - in: query
          name: filter[current_status][]
          description: >-
            Bracketed array form of filter[current_status]. Container status.
            Known values: new, on_ship, available, not_available, grounded,
            on_rail, picked_up, off_dock, delivered, dropped, loaded,
            empty_returned, awaiting_inland_transfer. Unknown values return no
            matches in the API; the SDK rejects them. Comma-separated states
            mean OR; arrays mean AND.
          schema:
            type: array
            items:
              type: string
              enum:
                - new
                - on_ship
                - available
                - not_available
                - grounded
                - on_rail
                - picked_up
                - off_dock
                - delivered
                - dropped
                - loaded
                - empty_returned
                - awaiting_inland_transfer
            minItems: 1
          style: form
          explode: true
          example:
            - available
        - in: query
          name: filter[has_fees]
          description: >-
            true requires nonempty terminal fees; false requires an explicitly
            empty terminal fee array. Unreported/null fees match neither branch.
          schema:
            type: boolean
          x-t49-filter-kind: boolean
          x-t49-filter-key: has_fees
          example: true
        - in: query
          name: filter[has_demurrage_fees]
          description: >-
            true requires a terminal demurrage fee; false selects terminal
            records without a demurrage fee. Missing terminal data can be
            excluded.
          schema:
            type: boolean
          x-t49-filter-kind: boolean
          x-t49-filter-key: has_demurrage_fees
          example: true
        - in: query
          name: filter[has_fees_or_holds]
          description: >-
            true requires fees OR holds; false requires both arrays to be
            explicitly empty. Missing terminal data can be excluded.
          schema:
            type: boolean
          x-t49-filter-kind: boolean
          x-t49-filter-key: has_fees_or_holds
          example: true
        - in: query
          name: filter[requires_attention]
          description: >-
            true selects attention-marked, overdue pickup, or approaching-LFD
            containers. false selects containers whose stored attention value is
            false or null; it is not the exact complement of true.
          schema:
            type: boolean
          x-t49-filter-kind: boolean
          x-t49-filter-key: requires_attention
          example: true
        - in: query
          name: filter[eta_changed_in_last_24h]
          description: >-
            Selects containers with estimated-event changes in the last 24
            hours. Both true and false apply the positive selector in the API.
            The SDK accepts only true.
          schema:
            type: boolean
          x-t49-filter-kind: selector
          x-t49-filter-key: eta_changed_in_last_24h
          example: true
        - in: query
          name: filter[eta_changed_in_past_3_days]
          description: >-
            Selects containers with estimated-event changes in the past three
            days. Both true and false apply the positive selector in the API.
            The SDK accepts only true.
          schema:
            type: boolean
          x-t49-filter-kind: selector
          x-t49-filter-key: eta_changed_in_past_3_days
          example: true
        - in: query
          name: filter[has_holds]
          description: >-
            true requires nonempty terminal holds; false requires an explicitly
            empty holds array. Unreported/null holds match neither branch.
          schema:
            type: boolean
          x-t49-filter-kind: boolean
          x-t49-filter-key: has_holds
          example: true
        - in: query
          name: filter[actively_tracked]
          description: >-
            true selects shipments with tracking not stopped; false selects
            stopped tracking. Applies via the related shipment for containers.
          schema:
            type: boolean
          x-t49-filter-kind: boolean
          x-t49-filter-key: actively_tracked
          example: true
        - in: query
          name: filter[search_by_ids]
          description: >-
            Prefix text search of container and linked shipment identifiers.
            Optional ~ prefix is supported here. Do not use ~ on exact string
            filters.
          schema:
            type: string
          x-t49-filter-kind: search
          x-t49-filter-key: search_by_ids
          example: EXAMPLE_VALUE
        - in: query
          name: filter[search_by_number]
          description: >-
            Prefix text search of container numbers. Optional ~ prefix is
            supported here. Do not use ~ on exact string filters.
          schema:
            type: string
          x-t49-filter-kind: search
          x-t49-filter-key: search_by_number
          example: EXAMPLE_VALUE
        - in: query
          name: filter[search_by_shipment_number]
          description: >-
            Prefix text search of shipment numbers. Optional ~ prefix is
            supported here. Do not use ~ on exact string filters.
          schema:
            type: string
          x-t49-filter-kind: search
          x-t49-filter-key: search_by_shipment_number
          example: EXAMPLE_VALUE
        - in: query
          name: filter[search_by_shipment_ref_numbers]
          description: >-
            Prefix text search of shipment reference numbers. Optional ~ prefix
            is supported here. Do not use ~ on exact string filters.
          schema:
            type: string
          x-t49-filter-kind: search
          x-t49-filter-key: search_by_shipment_ref_numbers
          example: EXAMPLE_VALUE
        - in: query
          name: filter[search_by_ref_numbers]
          description: >-
            Prefix text search of container reference numbers. Optional ~ prefix
            is supported here. Do not use ~ on exact string filters.
          schema:
            type: string
          x-t49-filter-kind: search
          x-t49-filter-key: search_by_ref_numbers
          example: EXAMPLE_VALUE
        - in: query
          name: filter[search_by_owner_id]
          description: >-
            User IDs associated with containers. Use one ID or comma-separated
            user IDs; bracketed arrays are not supported by this scope. Presence
            and search operators do not apply.
          schema:
            type: string
          x-t49-filter-kind: string
          x-t49-filter-key: search_by_owner_id
          example: 00000000-0000-4000-8000-000000000001
        - in: query
          name: filter[delivered_at]
          description: >-
            Delivery date. Use YYYY-MM-DD or today/N.days.ago/N.days.from_now;
            prefix with =, <, <=, >, or >=. Arrays combine bounds with AND.
            Comma-separated dates mean OR. Use @exists or @not_exists for
            presence. Compares the stored date component, not timestamp
            instants; no automatic conversion to the port timezone is applied.
          schema:
            type: string
          x-t49-filter-kind: date
          x-t49-filter-key: delivered_at
          example: '>=2026-10-01'
        - in: query
          name: filter[delivered_at][]
          description: >-
            Bracketed array form of filter[delivered_at]. Delivery date. Use
            YYYY-MM-DD or today/N.days.ago/N.days.from_now; prefix with =, <,
            <=, >, or >=. Arrays combine bounds with AND. Comma-separated dates
            mean OR. Use @exists or @not_exists for presence. Compares the
            stored date component, not timestamp instants; no automatic
            conversion to the port timezone is applied.
          schema:
            type: array
            items:
              type: string
            minItems: 1
          style: form
          explode: true
          example:
            - '>=2026-10-01'
            - <=2026-10-07
        - in: query
          name: filter[pod_discharged_at]
          description: >-
            POD discharge date. Use YYYY-MM-DD or
            today/N.days.ago/N.days.from_now; prefix with =, <, <=, >, or >=.
            Arrays combine bounds with AND. Comma-separated dates mean OR. Use
            @exists or @not_exists for presence. Compares the stored date
            component, not timestamp instants; no automatic conversion to the
            port timezone is applied.
          schema:
            type: string
          x-t49-filter-kind: date
          x-t49-filter-key: pod_discharged_at
          example: '>=2026-10-01'
        - in: query
          name: filter[pod_discharged_at][]
          description: >-
            Bracketed array form of filter[pod_discharged_at]. POD discharge
            date. Use YYYY-MM-DD or today/N.days.ago/N.days.from_now; prefix
            with =, <, <=, >, or >=. Arrays combine bounds with AND.
            Comma-separated dates mean OR. Use @exists or @not_exists for
            presence. Compares the stored date component, not timestamp
            instants; no automatic conversion to the port timezone is applied.
          schema:
            type: array
            items:
              type: string
            minItems: 1
          style: form
          explode: true
          example:
            - '>=2026-10-01'
            - <=2026-10-07
        - in: query
          name: filter[pod_arrived_at]
          description: >-
            Container POD arrival date. Use YYYY-MM-DD or
            today/N.days.ago/N.days.from_now; prefix with =, <, <=, >, or >=.
            Arrays combine bounds with AND. Comma-separated dates mean OR. Use
            @exists or @not_exists for presence. Compares the stored date
            component, not timestamp instants; no automatic conversion to the
            port timezone is applied.
          schema:
            type: string
          x-t49-filter-kind: date
          x-t49-filter-key: pod_arrived_at
          example: '>=2026-10-01'
        - in: query
          name: filter[pod_arrived_at][]
          description: >-
            Bracketed array form of filter[pod_arrived_at]. Container POD
            arrival date. Use YYYY-MM-DD or today/N.days.ago/N.days.from_now;
            prefix with =, <, <=, >, or >=. Arrays combine bounds with AND.
            Comma-separated dates mean OR. Use @exists or @not_exists for
            presence. Compares the stored date component, not timestamp
            instants; no automatic conversion to the port timezone is applied.
          schema:
            type: array
            items:
              type: string
            minItems: 1
          style: form
          explode: true
          example:
            - '>=2026-10-01'
            - <=2026-10-07
        - in: query
          name: filter[pol_etd_at]
          description: >-
            Estimated port of lading departure date. Use YYYY-MM-DD or
            today/N.days.ago/N.days.from_now; prefix with =, <, <=, >, or >=.
            Arrays combine bounds with AND. Comma-separated dates mean OR. Use
            @exists or @not_exists for presence. Compares the stored date
            component, not timestamp instants; no automatic conversion to the
            port timezone is applied.
          schema:
            type: string
          x-t49-filter-kind: date
          x-t49-filter-key: pol_etd_at
          example: '>=2026-10-01'
        - in: query
          name: filter[pol_etd_at][]
          description: >-
            Bracketed array form of filter[pol_etd_at]. Estimated port of lading
            departure date. Use YYYY-MM-DD or today/N.days.ago/N.days.from_now;
            prefix with =, <, <=, >, or >=. Arrays combine bounds with AND.
            Comma-separated dates mean OR. Use @exists or @not_exists for
            presence. Compares the stored date component, not timestamp
            instants; no automatic conversion to the port timezone is applied.
          schema:
            type: array
            items:
              type: string
            minItems: 1
          style: form
          explode: true
          example:
            - '>=2026-10-01'
            - <=2026-10-07
        - in: query
          name: filter[pol_atd_at]
          description: >-
            Actual port of lading departure date. Use YYYY-MM-DD or
            today/N.days.ago/N.days.from_now; prefix with =, <, <=, >, or >=.
            Arrays combine bounds with AND. Comma-separated dates mean OR. Use
            @exists or @not_exists for presence. Compares the stored date
            component, not timestamp instants; no automatic conversion to the
            port timezone is applied.
          schema:
            type: string
          x-t49-filter-kind: date
          x-t49-filter-key: pol_atd_at
          example: '>=2026-10-01'
        - in: query
          name: filter[pol_atd_at][]
          description: >-
            Bracketed array form of filter[pol_atd_at]. Actual port of lading
            departure date. Use YYYY-MM-DD or today/N.days.ago/N.days.from_now;
            prefix with =, <, <=, >, or >=. Arrays combine bounds with AND.
            Comma-separated dates mean OR. Use @exists or @not_exists for
            presence. Compares the stored date component, not timestamp
            instants; no automatic conversion to the port timezone is applied.
          schema:
            type: array
            items:
              type: string
            minItems: 1
          style: form
          explode: true
          example:
            - '>=2026-10-01'
            - <=2026-10-07
        - in: query
          name: filter[empty_out_at]
          description: >-
            Empty equipment out date. Use YYYY-MM-DD or
            today/N.days.ago/N.days.from_now; prefix with =, <, <=, >, or >=.
            Arrays combine bounds with AND. Comma-separated dates mean OR. Use
            @exists or @not_exists for presence. Compares the stored date
            component, not timestamp instants; no automatic conversion to the
            port timezone is applied.
          schema:
            type: string
          x-t49-filter-kind: date
          x-t49-filter-key: empty_out_at
          example: '>=2026-10-01'
        - in: query
          name: filter[empty_out_at][]
          description: >-
            Bracketed array form of filter[empty_out_at]. Empty equipment out
            date. Use YYYY-MM-DD or today/N.days.ago/N.days.from_now; prefix
            with =, <, <=, >, or >=. Arrays combine bounds with AND.
            Comma-separated dates mean OR. Use @exists or @not_exists for
            presence. Compares the stored date component, not timestamp
            instants; no automatic conversion to the port timezone is applied.
          schema:
            type: array
            items:
              type: string
            minItems: 1
          style: form
          explode: true
          example:
            - '>=2026-10-01'
            - <=2026-10-07
        - in: query
          name: filter[pol_full_in_at]
          description: >-
            Full equipment in at port of lading date. Use YYYY-MM-DD or
            today/N.days.ago/N.days.from_now; prefix with =, <, <=, >, or >=.
            Arrays combine bounds with AND. Comma-separated dates mean OR. Use
            @exists or @not_exists for presence. Compares the stored date
            component, not timestamp instants; no automatic conversion to the
            port timezone is applied.
          schema:
            type: string
          x-t49-filter-kind: date
          x-t49-filter-key: pol_full_in_at
          example: '>=2026-10-01'
        - in: query
          name: filter[pol_full_in_at][]
          description: >-
            Bracketed array form of filter[pol_full_in_at]. Full equipment in at
            port of lading date. Use YYYY-MM-DD or
            today/N.days.ago/N.days.from_now; prefix with =, <, <=, >, or >=.
            Arrays combine bounds with AND. Comma-separated dates mean OR. Use
            @exists or @not_exists for presence. Compares the stored date
            component, not timestamp instants; no automatic conversion to the
            port timezone is applied.
          schema:
            type: array
            items:
              type: string
            minItems: 1
          style: form
          explode: true
          example:
            - '>=2026-10-01'
            - <=2026-10-07
        - in: query
          name: filter[pol_vessel_loaded_at]
          description: >-
            Vessel loading at port of lading date. Use YYYY-MM-DD or
            today/N.days.ago/N.days.from_now; prefix with =, <, <=, >, or >=.
            Arrays combine bounds with AND. Comma-separated dates mean OR. Use
            @exists or @not_exists for presence. Compares the stored date
            component, not timestamp instants; no automatic conversion to the
            port timezone is applied.
          schema:
            type: string
          x-t49-filter-kind: date
          x-t49-filter-key: pol_vessel_loaded_at
          example: '>=2026-10-01'
        - in: query
          name: filter[pol_vessel_loaded_at][]
          description: >-
            Bracketed array form of filter[pol_vessel_loaded_at]. Vessel loading
            at port of lading date. Use YYYY-MM-DD or
            today/N.days.ago/N.days.from_now; prefix with =, <, <=, >, or >=.
            Arrays combine bounds with AND. Comma-separated dates mean OR. Use
            @exists or @not_exists for presence. Compares the stored date
            component, not timestamp instants; no automatic conversion to the
            port timezone is applied.
          schema:
            type: array
            items:
              type: string
            minItems: 1
          style: form
          explode: true
          example:
            - '>=2026-10-01'
            - <=2026-10-07
        - in: query
          name: filter[pol_vessel_departed_at]
          description: >-
            Vessel departure at port of lading date. Use YYYY-MM-DD or
            today/N.days.ago/N.days.from_now; prefix with =, <, <=, >, or >=.
            Arrays combine bounds with AND. Comma-separated dates mean OR. Use
            @exists or @not_exists for presence. Compares the stored date
            component, not timestamp instants; no automatic conversion to the
            port timezone is applied.
          schema:
            type: string
          x-t49-filter-kind: date
          x-t49-filter-key: pol_vessel_departed_at
          example: '>=2026-10-01'
        - in: query
          name: filter[pol_vessel_departed_at][]
          description: >-
            Bracketed array form of filter[pol_vessel_departed_at]. Vessel
            departure at port of lading date. Use YYYY-MM-DD or
            today/N.days.ago/N.days.from_now; prefix with =, <, <=, >, or >=.
            Arrays combine bounds with AND. Comma-separated dates mean OR. Use
            @exists or @not_exists for presence. Compares the stored date
            component, not timestamp instants; no automatic conversion to the
            port timezone is applied.
          schema:
            type: array
            items:
              type: string
            minItems: 1
          style: form
          explode: true
          example:
            - '>=2026-10-01'
            - <=2026-10-07
        - in: query
          name: filter[arrival]
          description: >-
            POD arrival date: actual arrival takes precedence over estimated
            arrival. Use YYYY-MM-DD or today/N.days.ago/N.days.from_now; prefix
            with =, <, <=, >, or >=. Arrays combine bounds with AND.
            Comma-separated dates mean OR. Use @exists or @not_exists for
            presence. Compares the stored date component, not timestamp
            instants; no automatic conversion to the port timezone is applied.
          schema:
            type: string
          x-t49-filter-kind: date
          x-t49-filter-key: arrival
          example: '>=2026-10-01'
        - in: query
          name: filter[arrival][]
          description: >-
            Bracketed array form of filter[arrival]. POD arrival date: actual
            arrival takes precedence over estimated arrival. Use YYYY-MM-DD or
            today/N.days.ago/N.days.from_now; prefix with =, <, <=, >, or >=.
            Arrays combine bounds with AND. Comma-separated dates mean OR. Use
            @exists or @not_exists for presence. Compares the stored date
            component, not timestamp instants; no automatic conversion to the
            port timezone is applied.
          schema:
            type: array
            items:
              type: string
            minItems: 1
          style: form
          explode: true
          example:
            - '>=2026-10-01'
            - <=2026-10-07
        - in: query
          name: filter[picked_up_at]
          description: >-
            Pickup date. Use YYYY-MM-DD or today/N.days.ago/N.days.from_now;
            prefix with =, <, <=, >, or >=. Arrays combine bounds with AND.
            Comma-separated dates mean OR. Use @exists or @not_exists for
            presence. Compares the stored date component, not timestamp
            instants; no automatic conversion to the port timezone is applied.
          schema:
            type: string
          x-t49-filter-kind: date
          x-t49-filter-key: picked_up_at
          example: '>=2026-10-01'
        - in: query
          name: filter[picked_up_at][]
          description: >-
            Bracketed array form of filter[picked_up_at]. Pickup date. Use
            YYYY-MM-DD or today/N.days.ago/N.days.from_now; prefix with =, <,
            <=, >, or >=. Arrays combine bounds with AND. Comma-separated dates
            mean OR. Use @exists or @not_exists for presence. Compares the
            stored date component, not timestamp instants; no automatic
            conversion to the port timezone is applied.
          schema:
            type: array
            items:
              type: string
            minItems: 1
          style: form
          explode: true
          example:
            - '>=2026-10-01'
            - <=2026-10-07
        - in: query
          name: filter[empty_returned_at]
          description: >-
            Empty return date. Use YYYY-MM-DD or
            today/N.days.ago/N.days.from_now; prefix with =, <, <=, >, or >=.
            Arrays combine bounds with AND. Comma-separated dates mean OR. Use
            @exists or @not_exists for presence. Compares the stored date
            component, not timestamp instants; no automatic conversion to the
            port timezone is applied.
          schema:
            type: string
          x-t49-filter-kind: date
          x-t49-filter-key: empty_returned_at
          example: '>=2026-10-01'
        - in: query
          name: filter[empty_returned_at][]
          description: >-
            Bracketed array form of filter[empty_returned_at]. Empty return
            date. Use YYYY-MM-DD or today/N.days.ago/N.days.from_now; prefix
            with =, <, <=, >, or >=. Arrays combine bounds with AND.
            Comma-separated dates mean OR. Use @exists or @not_exists for
            presence. Compares the stored date component, not timestamp
            instants; no automatic conversion to the port timezone is applied.
          schema:
            type: array
            items:
              type: string
            minItems: 1
          style: form
          explode: true
          example:
            - '>=2026-10-01'
            - <=2026-10-07
        - in: query
          name: filter[created_at]
          description: >-
            Creation date. Use YYYY-MM-DD or today/N.days.ago/N.days.from_now;
            prefix with =, <, <=, >, or >=. Arrays combine bounds with AND.
            Comma-separated dates mean OR. Use @exists or @not_exists for
            presence. Compares the stored date component, not timestamp
            instants; no automatic conversion to the port timezone is applied.
          schema:
            type: string
          x-t49-filter-kind: date
          x-t49-filter-key: created_at
          example: '>=2026-10-01'
        - in: query
          name: filter[created_at][]
          description: >-
            Bracketed array form of filter[created_at]. Creation date. Use
            YYYY-MM-DD or today/N.days.ago/N.days.from_now; prefix with =, <,
            <=, >, or >=. Arrays combine bounds with AND. Comma-separated dates
            mean OR. Use @exists or @not_exists for presence. Compares the
            stored date component, not timestamp instants; no automatic
            conversion to the port timezone is applied.
          schema:
            type: array
            items:
              type: string
            minItems: 1
          style: form
          explode: true
          example:
            - '>=2026-10-01'
            - <=2026-10-07
        - in: query
          name: filter[updated_at]
          description: >-
            Last record update date. Use YYYY-MM-DD or
            today/N.days.ago/N.days.from_now; prefix with =, <, <=, >, or >=.
            Arrays combine bounds with AND. Comma-separated dates mean OR. Use
            @exists or @not_exists for presence. Compares the stored date
            component, not timestamp instants; no automatic conversion to the
            port timezone is applied.
          schema:
            type: string
          x-t49-filter-kind: date
          x-t49-filter-key: updated_at
          example: '>=2026-10-01'
        - in: query
          name: filter[updated_at][]
          description: >-
            Bracketed array form of filter[updated_at]. Last record update date.
            Use YYYY-MM-DD or today/N.days.ago/N.days.from_now; prefix with =,
            <, <=, >, or >=. Arrays combine bounds with AND. Comma-separated
            dates mean OR. Use @exists or @not_exists for presence. Compares the
            stored date component, not timestamp instants; no automatic
            conversion to the port timezone is applied.
          schema:
            type: array
            items:
              type: string
            minItems: 1
          style: form
          explode: true
          example:
            - '>=2026-10-01'
            - <=2026-10-07
        - in: query
          name: filter[last_free_day_on][]
          description: >-
            Inclusive two-date range, encoded as filter[last_free_day_on][]=FROM
            and filter[last_free_day_on][]=TO, without operators. Requires both
            dates. Also restricts to available/not_available/off_dock
            containers, tracking not stopped, and destination absent or the same
            as POD. Use pickup_lfd for general comparisons.
          schema:
            type: array
            items:
              type: string
            minItems: 2
            maxItems: 2
          x-t49-filter-kind: range
          x-t49-filter-key: last_free_day_on
          style: form
          explode: true
          example:
            - '2026-10-01'
            - '2026-10-07'
        - in: query
          name: filter[inland_destination_rail_unloaded_at]
          description: >-
            Inland rail unloading date. Use YYYY-MM-DD or
            today/N.days.ago/N.days.from_now; prefix with =, <, <=, >, or >=.
            Arrays combine bounds with AND. Comma-separated dates mean OR. Use
            @exists or @not_exists for presence. Compares the stored date
            component, not timestamp instants; no automatic conversion to the
            port timezone is applied.
          schema:
            type: string
          x-t49-filter-kind: date
          x-t49-filter-key: inland_destination_rail_unloaded_at
          example: '>=2026-10-01'
        - in: query
          name: filter[inland_destination_rail_unloaded_at][]
          description: >-
            Bracketed array form of filter[inland_destination_rail_unloaded_at].
            Inland rail unloading date. Use YYYY-MM-DD or
            today/N.days.ago/N.days.from_now; prefix with =, <, <=, >, or >=.
            Arrays combine bounds with AND. Comma-separated dates mean OR. Use
            @exists or @not_exists for presence. Compares the stored date
            component, not timestamp instants; no automatic conversion to the
            port timezone is applied.
          schema:
            type: array
            items:
              type: string
            minItems: 1
          style: form
          explode: true
          example:
            - '>=2026-10-01'
            - <=2026-10-07
        - in: query
          name: filter[final_destination_full_out_at]
          description: >-
            Final destination full out date. Use YYYY-MM-DD or
            today/N.days.ago/N.days.from_now; prefix with =, <, <=, >, or >=.
            Arrays combine bounds with AND. Comma-separated dates mean OR. Use
            @exists or @not_exists for presence. Compares the stored date
            component, not timestamp instants; no automatic conversion to the
            port timezone is applied.
          schema:
            type: string
          x-t49-filter-kind: date
          x-t49-filter-key: final_destination_full_out_at
          example: '>=2026-10-01'
        - in: query
          name: filter[final_destination_full_out_at][]
          description: >-
            Bracketed array form of filter[final_destination_full_out_at]. Final
            destination full out date. Use YYYY-MM-DD or
            today/N.days.ago/N.days.from_now; prefix with =, <, <=, >, or >=.
            Arrays combine bounds with AND. Comma-separated dates mean OR. Use
            @exists or @not_exists for presence. Compares the stored date
            component, not timestamp instants; no automatic conversion to the
            port timezone is applied.
          schema:
            type: array
            items:
              type: string
            minItems: 1
          style: form
          explode: true
          example:
            - '>=2026-10-01'
            - <=2026-10-07
        - in: query
          name: filter[inland_destination_eta_at]
          description: >-
            Estimated inland destination arrival date. Use YYYY-MM-DD or
            today/N.days.ago/N.days.from_now; prefix with =, <, <=, >, or >=.
            Arrays combine bounds with AND. Comma-separated dates mean OR. Use
            @exists or @not_exists for presence. Compares the stored date
            component, not timestamp instants; no automatic conversion to the
            port timezone is applied.
          schema:
            type: string
          x-t49-filter-kind: date
          x-t49-filter-key: inland_destination_eta_at
          example: '>=2026-10-01'
        - in: query
          name: filter[inland_destination_eta_at][]
          description: >-
            Bracketed array form of filter[inland_destination_eta_at]. Estimated
            inland destination arrival date. Use YYYY-MM-DD or
            today/N.days.ago/N.days.from_now; prefix with =, <, <=, >, or >=.
            Arrays combine bounds with AND. Comma-separated dates mean OR. Use
            @exists or @not_exists for presence. Compares the stored date
            component, not timestamp instants; no automatic conversion to the
            port timezone is applied.
          schema:
            type: array
            items:
              type: string
            minItems: 1
          style: form
          explode: true
          example:
            - '>=2026-10-01'
            - <=2026-10-07
        - in: query
          name: filter[inland_destination_ata_at]
          description: >-
            Actual inland destination arrival date. Use YYYY-MM-DD or
            today/N.days.ago/N.days.from_now; prefix with =, <, <=, >, or >=.
            Arrays combine bounds with AND. Comma-separated dates mean OR. Use
            @exists or @not_exists for presence. Compares the stored date
            component, not timestamp instants; no automatic conversion to the
            port timezone is applied.
          schema:
            type: string
          x-t49-filter-kind: date
          x-t49-filter-key: inland_destination_ata_at
          example: '>=2026-10-01'
        - in: query
          name: filter[inland_destination_ata_at][]
          description: >-
            Bracketed array form of filter[inland_destination_ata_at]. Actual
            inland destination arrival date. Use YYYY-MM-DD or
            today/N.days.ago/N.days.from_now; prefix with =, <, <=, >, or >=.
            Arrays combine bounds with AND. Comma-separated dates mean OR. Use
            @exists or @not_exists for presence. Compares the stored date
            component, not timestamp instants; no automatic conversion to the
            port timezone is applied.
          schema:
            type: array
            items:
              type: string
            minItems: 1
          style: form
          explode: true
          example:
            - '>=2026-10-01'
            - <=2026-10-07
        - in: query
          name: filter[pod_rail_departed_at]
          description: >-
            Rail departure from POD date. Use YYYY-MM-DD or
            today/N.days.ago/N.days.from_now; prefix with =, <, <=, >, or >=.
            Arrays combine bounds with AND. Comma-separated dates mean OR. Use
            @exists or @not_exists for presence. Compares the stored date
            component, not timestamp instants; no automatic conversion to the
            port timezone is applied.
          schema:
            type: string
          x-t49-filter-kind: date
          x-t49-filter-key: pod_rail_departed_at
          example: '>=2026-10-01'
        - in: query
          name: filter[pod_rail_departed_at][]
          description: >-
            Bracketed array form of filter[pod_rail_departed_at]. Rail departure
            from POD date. Use YYYY-MM-DD or today/N.days.ago/N.days.from_now;
            prefix with =, <, <=, >, or >=. Arrays combine bounds with AND.
            Comma-separated dates mean OR. Use @exists or @not_exists for
            presence. Compares the stored date component, not timestamp
            instants; no automatic conversion to the port timezone is applied.
          schema:
            type: array
            items:
              type: string
            minItems: 1
          style: form
          explode: true
          example:
            - '>=2026-10-01'
            - <=2026-10-07
        - in: query
          name: filter[pickup_lfd]
          description: >-
            Pickup last free day (LFD) date. Use YYYY-MM-DD or
            today/N.days.ago/N.days.from_now; prefix with =, <, <=, >, or >=.
            Arrays combine bounds with AND. Comma-separated dates mean OR. Use
            @exists or @not_exists for presence. Compares the stored date
            component, not timestamp instants; no automatic conversion to the
            port timezone is applied.
          schema:
            type: string
          x-t49-filter-kind: date
          x-t49-filter-key: pickup_lfd
          example: '>=2026-10-01'
        - in: query
          name: filter[pickup_lfd][]
          description: >-
            Bracketed array form of filter[pickup_lfd]. Pickup last free day
            (LFD) date. Use YYYY-MM-DD or today/N.days.ago/N.days.from_now;
            prefix with =, <, <=, >, or >=. Arrays combine bounds with AND.
            Comma-separated dates mean OR. Use @exists or @not_exists for
            presence. Compares the stored date component, not timestamp
            instants; no automatic conversion to the port timezone is applied.
          schema:
            type: array
            items:
              type: string
            minItems: 1
          style: form
          explode: true
          example:
            - '>=2026-10-01'
            - <=2026-10-07
        - in: query
          name: filter[pickup_lfd_rail_on]
          description: >-
            Reported rail pickup LFD date. Use YYYY-MM-DD or
            today/N.days.ago/N.days.from_now; prefix with =, <, <=, >, or >=.
            Arrays combine bounds with AND. Comma-separated dates mean OR. Use
            @exists or @not_exists for presence. Compares the stored date
            component, not timestamp instants; no automatic conversion to the
            port timezone is applied.
          schema:
            type: string
          x-t49-filter-kind: date
          x-t49-filter-key: pickup_lfd_rail_on
          example: '>=2026-10-01'
        - in: query
          name: filter[pickup_lfd_rail_on][]
          description: >-
            Bracketed array form of filter[pickup_lfd_rail_on]. Reported rail
            pickup LFD date. Use YYYY-MM-DD or today/N.days.ago/N.days.from_now;
            prefix with =, <, <=, >, or >=. Arrays combine bounds with AND.
            Comma-separated dates mean OR. Use @exists or @not_exists for
            presence. Compares the stored date component, not timestamp
            instants; no automatic conversion to the port timezone is applied.
          schema:
            type: array
            items:
              type: string
            minItems: 1
          style: form
          explode: true
          example:
            - '>=2026-10-01'
            - <=2026-10-07
        - in: query
          name: filter[pickup_lfd_terminal_on]
          description: >-
            Reported terminal pickup LFD date. Use YYYY-MM-DD or
            today/N.days.ago/N.days.from_now; prefix with =, <, <=, >, or >=.
            Arrays combine bounds with AND. Comma-separated dates mean OR. Use
            @exists or @not_exists for presence. Compares the stored date
            component, not timestamp instants; no automatic conversion to the
            port timezone is applied.
          schema:
            type: string
          x-t49-filter-kind: date
          x-t49-filter-key: pickup_lfd_terminal_on
          example: '>=2026-10-01'
        - in: query
          name: filter[pickup_lfd_terminal_on][]
          description: >-
            Bracketed array form of filter[pickup_lfd_terminal_on]. Reported
            terminal pickup LFD date. Use YYYY-MM-DD or
            today/N.days.ago/N.days.from_now; prefix with =, <, <=, >, or >=.
            Arrays combine bounds with AND. Comma-separated dates mean OR. Use
            @exists or @not_exists for presence. Compares the stored date
            component, not timestamp instants; no automatic conversion to the
            port timezone is applied.
          schema:
            type: array
            items:
              type: string
            minItems: 1
          style: form
          explode: true
          example:
            - '>=2026-10-01'
            - <=2026-10-07
        - in: query
          name: filter[pickup_lfd_line_on]
          description: >-
            Reported shipping-line pickup LFD date. Use YYYY-MM-DD or
            today/N.days.ago/N.days.from_now; prefix with =, <, <=, >, or >=.
            Arrays combine bounds with AND. Comma-separated dates mean OR. Use
            @exists or @not_exists for presence. Compares the stored date
            component, not timestamp instants; no automatic conversion to the
            port timezone is applied.
          schema:
            type: string
          x-t49-filter-kind: date
          x-t49-filter-key: pickup_lfd_line_on
          example: '>=2026-10-01'
        - in: query
          name: filter[pickup_lfd_line_on][]
          description: >-
            Bracketed array form of filter[pickup_lfd_line_on]. Reported
            shipping-line pickup LFD date. Use YYYY-MM-DD or
            today/N.days.ago/N.days.from_now; prefix with =, <, <=, >, or >=.
            Arrays combine bounds with AND. Comma-separated dates mean OR. Use
            @exists or @not_exists for presence. Compares the stored date
            component, not timestamp instants; no automatic conversion to the
            port timezone is applied.
          schema:
            type: array
            items:
              type: string
            minItems: 1
          style: form
          explode: true
          example:
            - '>=2026-10-01'
            - <=2026-10-07
        - in: query
          name: filter[pickup_lfd_terminal_effective_on]
          description: >-
            Terminal pickup LFD. Calculated values are used only when enabled
            and visible for the account/carrier; otherwise reported values are
            used. Use YYYY-MM-DD or today/N.days.ago/N.days.from_now; prefix
            with =, <, <=, >, or >=. Arrays combine bounds with AND.
            Comma-separated dates mean OR. Use @exists or @not_exists for
            presence. Compares the stored date component, not timestamp
            instants; no automatic conversion to the port timezone is applied.
          schema:
            type: string
          x-t49-filter-kind: date
          x-t49-filter-key: pickup_lfd_terminal_effective_on
          example: '>=2026-10-01'
        - in: query
          name: filter[pickup_lfd_terminal_effective_on][]
          description: >-
            Bracketed array form of filter[pickup_lfd_terminal_effective_on].
            Terminal pickup LFD. Calculated values are used only when enabled
            and visible for the account/carrier; otherwise reported values are
            used. Use YYYY-MM-DD or today/N.days.ago/N.days.from_now; prefix
            with =, <, <=, >, or >=. Arrays combine bounds with AND.
            Comma-separated dates mean OR. Use @exists or @not_exists for
            presence. Compares the stored date component, not timestamp
            instants; no automatic conversion to the port timezone is applied.
          schema:
            type: array
            items:
              type: string
            minItems: 1
          style: form
          explode: true
          example:
            - '>=2026-10-01'
            - <=2026-10-07
        - in: query
          name: filter[pickup_lfd_line_effective_on]
          description: >-
            Shipping-line pickup LFD. Calculated values are used only when
            enabled and visible for the account/carrier; otherwise reported
            values are used. Use YYYY-MM-DD or today/N.days.ago/N.days.from_now;
            prefix with =, <, <=, >, or >=. Arrays combine bounds with AND.
            Comma-separated dates mean OR. Use @exists or @not_exists for
            presence. Compares the stored date component, not timestamp
            instants; no automatic conversion to the port timezone is applied.
          schema:
            type: string
          x-t49-filter-kind: date
          x-t49-filter-key: pickup_lfd_line_effective_on
          example: '>=2026-10-01'
        - in: query
          name: filter[pickup_lfd_line_effective_on][]
          description: >-
            Bracketed array form of filter[pickup_lfd_line_effective_on].
            Shipping-line pickup LFD. Calculated values are used only when
            enabled and visible for the account/carrier; otherwise reported
            values are used. Use YYYY-MM-DD or today/N.days.ago/N.days.from_now;
            prefix with =, <, <=, >, or >=. Arrays combine bounds with AND.
            Comma-separated dates mean OR. Use @exists or @not_exists for
            presence. Compares the stored date component, not timestamp
            instants; no automatic conversion to the port timezone is applied.
          schema:
            type: array
            items:
              type: string
            minItems: 1
          style: form
          explode: true
          example:
            - '>=2026-10-01'
            - <=2026-10-07
        - in: query
          name: filter[tags]
          description: >-
            Account-scoped shipment tags. Comma-separated names or arrays match
            ANY tag by default.
          schema:
            type: string
          x-t49-filter-kind: tags
          x-t49-filter-key: tags
          example: EXAMPLE_VALUE
        - in: query
          name: filter[tags][]
          description: >-
            Bracketed array form of filter[tags]. Account-scoped shipment tags.
            Comma-separated names or arrays match ANY tag by default.
          schema:
            type: array
            items:
              type: string
          style: form
          explode: true
          example:
            - EXAMPLE_VALUE
        - in: query
          name: filter[tags_and]
          description: >-
            With tags, true requires ALL tags; false or absent means ANY. Has no
            effect without tags. The SDK requires tags (or shipment tag) when
            this modifier is supplied.
          schema:
            type: boolean
          x-t49-filter-kind: boolean
          x-t49-filter-key: tags_and
          example: true
        - in: query
          name: filter[parties]
          description: >-
            Filter by account-visible party IDs or presence, grouped by role.
            IDs within a role use OR; different roles use AND.
            pickup_dray_carrier checks only the container role; other roles
            check container or shipment roles. Unknown roles are ignored by the
            API and rejected by the SDK.
          schema:
            type: object
            properties:
              shipper:
                type: string
                description: >-
                  A party UUID, comma-separated UUIDs, or a supported presence
                  expression.
              consignee:
                type: string
                description: >-
                  A party UUID, comma-separated UUIDs, or a supported presence
                  expression.
              notify_party:
                type: string
                description: >-
                  A party UUID, comma-separated UUIDs, or a supported presence
                  expression.
              customs_broker:
                type: string
                description: >-
                  A party UUID, comma-separated UUIDs, or a supported presence
                  expression.
              customer:
                type: string
                description: >-
                  A party UUID, comma-separated UUIDs, or a supported presence
                  expression.
              freight_forwarder:
                type: string
                description: >-
                  A party UUID, comma-separated UUIDs, or a supported presence
                  expression.
              pickup_dray_carrier:
                type: string
                description: >-
                  A party UUID, comma-separated UUIDs, or a supported presence
                  expression.
            additionalProperties: false
          style: deepObject
          explode: true
          x-t49-filter-kind: parties
          x-t49-filter-key: parties
          example:
            shipper: 00000000-0000-4000-8000-000000000001
        - in: query
          name: filter[parties][shipper][]
          description: >-
            Array alternative for the shipper role. Party IDs use OR within this
            role.
          schema:
            type: array
            items:
              type: string
            minItems: 1
          style: form
          explode: true
          example:
            - 00000000-0000-4000-8000-000000000001
        - in: query
          name: filter[parties][consignee][]
          description: >-
            Array alternative for the consignee role. Party IDs use OR within
            this role.
          schema:
            type: array
            items:
              type: string
            minItems: 1
          style: form
          explode: true
          example:
            - 00000000-0000-4000-8000-000000000001
        - in: query
          name: filter[parties][notify_party][]
          description: >-
            Array alternative for the notify_party role. Party IDs use OR within
            this role.
          schema:
            type: array
            items:
              type: string
            minItems: 1
          style: form
          explode: true
          example:
            - 00000000-0000-4000-8000-000000000001
        - in: query
          name: filter[parties][customs_broker][]
          description: >-
            Array alternative for the customs_broker role. Party IDs use OR
            within this role.
          schema:
            type: array
            items:
              type: string
            minItems: 1
          style: form
          explode: true
          example:
            - 00000000-0000-4000-8000-000000000001
        - in: query
          name: filter[parties][customer][]
          description: >-
            Array alternative for the customer role. Party IDs use OR within
            this role.
          schema:
            type: array
            items:
              type: string
            minItems: 1
          style: form
          explode: true
          example:
            - 00000000-0000-4000-8000-000000000001
        - in: query
          name: filter[parties][freight_forwarder][]
          description: >-
            Array alternative for the freight_forwarder role. Party IDs use OR
            within this role.
          schema:
            type: array
            items:
              type: string
            minItems: 1
          style: form
          explode: true
          example:
            - 00000000-0000-4000-8000-000000000001
        - in: query
          name: filter[parties][pickup_dray_carrier][]
          description: >-
            Array alternative for the pickup_dray_carrier role. Party IDs use OR
            within this role.
          schema:
            type: array
            items:
              type: string
            minItems: 1
          style: form
          explode: true
          example:
            - 00000000-0000-4000-8000-000000000001
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                type: object
                properties:
                  data:
                    type: array
                    items:
                      $ref: '#/components/schemas/container'
                  included:
                    type: array
                    items:
                      $ref: '#/components/schemas/shipment'
                  links:
                    $ref: '#/components/schemas/links'
                  meta:
                    $ref: '#/components/schemas/meta'
              examples:
                Example List of containers:
                  value:
                    data:
                      - id: be0b247b-c144-4163-8919-cf9178930736
                        type: container
                        attributes:
                          number: TCLU6718159
                          seal_number: null
                          created_at: '2024-06-26T15:05:18Z'
                          ref_numbers: []
                          pod_arrived_at: '2024-06-21T14:12:00Z'
                          pod_discharged_at: '2024-06-23T00:19:00Z'
                          final_destination_full_out_at: null
                          holds_at_pod_terminal: []
                          available_for_pickup: false
                          equipment_type: dry
                          equipment_length: 40
                          equipment_height: high_cube
                          weight_in_lbs: 53502
                          pod_full_out_at: '2024-06-26T16:15:00Z'
                          empty_terminated_at: null
                          terminal_checked_at: '2024-06-26T18:47:56Z'
                          fees_at_pod_terminal: []
                          pickup_lfd: null
                          pickup_appointment_at: null
                          pod_full_out_chassis_number: null
                          location_at_pod_terminal: Community
                          pod_last_tracking_request_at: '2024-06-26T18:47:56Z'
                          shipment_last_tracking_request_at: '2024-06-26T15:05:18Z'
                          availability_known: true
                          pod_timezone: America/New_York
                          final_destination_timezone: null
                          empty_terminated_timezone: America/New_York
                          pod_rail_carrier_scac: null
                          ind_rail_carrier_scac: null
                          pod_rail_loaded_at: null
                          pod_rail_departed_at: null
                          ind_eta_at: null
                          ind_ata_at: null
                          ind_rail_unloaded_at: null
                          ind_facility_lfd_on: null
                          import_deadlines:
                            pickup_lfd_terminal: null
                            pickup_lfd_rail: null
                            pickup_lfd_line: null
                          current_status: picked_up
                        relationships:
                          shipment:
                            data:
                              id: cc8f8e43-d6a9-4edb-a8c0-d0ab03c113d3
                              type: shipment
                          pickup_facility:
                            data: null
                          pod_terminal:
                            data:
                              id: a243bdf8-0da3-4056-a6a7-05fe8ab43999
                              type: terminal
                          transport_events:
                            data:
                              - id: fb53b35c-6a0c-4e22-b196-b623e8ba7db5
                                type: transport_event
                              - id: 179897a3-04f5-450b-86e1-db57970c0248
                                type: transport_event
                              - id: a119b8e6-10c5-4967-8364-885f7dbf8e50
                                type: transport_event
                              - id: 3372d58c-df89-46a2-b064-b308a9dc7040
                                type: transport_event
                              - id: 800a3e59-8231-4e42-a80f-73c97cfb1be9
                                type: transport_event
                              - id: d466676b-0073-4b0c-89aa-d42486e9ed4f
                                type: transport_event
                              - id: 85665836-5915-4cb9-ab78-b8487598cd0d
                                type: transport_event
                              - id: 94cca22a-520a-4d19-a551-0554aceb3794
                                type: transport_event
                              - id: 032e812f-d5e4-48af-8d79-2c2b41a07032
                                type: transport_event
                              - id: 1b7dd74d-eff6-4e06-9a15-234295ce6fd5
                                type: transport_event
                              - id: b9f07b7e-1653-4209-b375-4588653d5275
                                type: transport_event
                              - id: a35f3c1b-ad35-4347-b0f2-9e08f0d4ca64
                                type: transport_event
                          raw_events:
                            data:
                              - id: e26fc659-f79d-4cc0-8efc-5ce5e8444891
                                type: raw_event
                              - id: 8820af5e-cb77-41c5-a897-906f2c56eb1e
                                type: raw_event
                              - id: a628a2c2-dab6-4b04-b3ae-d7ec99098a89
                                type: raw_event
                              - id: 6ca157f9-3b58-4db5-8155-fc7b41a62611
                                type: raw_event
                              - id: 6fb06390-4b0a-4c1f-9703-ec89927df7f3
                                type: raw_event
                              - id: 26fe408d-e091-412a-a2fb-23a4d778b6b9
                                type: raw_event
                              - id: 16490dd8-d79f-468a-91b1-dbb30bb45c85
                                type: raw_event
                              - id: ff3db923-a644-4706-8057-1bd53c95fbd5
                                type: raw_event
                              - id: 3fd27ffd-9618-477f-b1a9-cbc179defefe
                                type: raw_event
                              - id: f92efdd3-f79c-4a1c-97ce-9a47588b525c
                                type: raw_event
                              - id: 3b2a88ef-df0b-4e61-99c1-d4a175910111
                                type: raw_event
                              - id: 9b367e33-9e43-488f-8217-081698adf40d
                                type: raw_event
                              - id: ee0915df-e2f8-46b0-acf1-816871ca142d
                                type: raw_event
                      - id: a9e52f3d-2fa9-467c-8deb-09e90dac2f0b
                        type: container
                        attributes:
                          number: TCLU2224327
                          seal_number: null
                          created_at: '2024-06-26T15:05:34Z'
                          ref_numbers: []
                          pod_arrived_at: '2024-06-21T14:12:00Z'
                          pod_discharged_at: '2024-06-23T17:21:00Z'
                          final_destination_full_out_at: null
                          holds_at_pod_terminal: []
                          available_for_pickup: false
                          equipment_type: dry
                          equipment_length: 20
                          equipment_height: standard
                          weight_in_lbs: 44225
                          pod_full_out_at: null
                          empty_terminated_at: null
                          terminal_checked_at: '2024-06-26T18:47:56Z'
                          fees_at_pod_terminal: []
                          pickup_lfd: null
                          pickup_appointment_at: null
                          pod_full_out_chassis_number: null
                          location_at_pod_terminal: Yard
                          pod_last_tracking_request_at: '2024-06-26T18:47:56Z'
                          shipment_last_tracking_request_at: '2024-06-26T15:05:34Z'
                          availability_known: true
                          pod_timezone: America/New_York
                          final_destination_timezone: America/Chicago
                          empty_terminated_timezone: America/Chicago
                          pod_rail_carrier_scac: CSXT
                          ind_rail_carrier_scac: CSXT
                          pod_rail_loaded_at: null
                          pod_rail_departed_at: null
                          ind_eta_at: '2024-07-02T14:20:00Z'
                          ind_ata_at: null
                          ind_rail_unloaded_at: null
                          ind_facility_lfd_on: null
                          import_deadlines:
                            pickup_lfd_terminal: null
                            pickup_lfd_rail: null
                            pickup_lfd_line: null
                          current_status: awaiting_inland_transfer
                        relationships:
                          shipment:
                            data:
                              id: 99f84294-3bda-4765-81b3-31765e6d2a24
                              type: shipment
                          pickup_facility:
                            data:
                              id: e6fa9a01-511b-4f43-a7e1-d628315b84ef
                              type: terminal
                          pod_terminal:
                            data:
                              id: a243bdf8-0da3-4056-a6a7-05fe8ab43999
                              type: terminal
                          transport_events:
                            data:
                              - id: 4a5a04b7-8974-4c46-beaa-bf55004422c9
                                type: transport_event
                              - id: 11c90391-aa9c-408b-b20e-daed8dd09586
                                type: transport_event
                              - id: d7f23c71-7084-4fbb-9fef-740f624182aa
                                type: transport_event
                              - id: c4c3537d-5c47-4623-afe0-edc0dd6f75c5
                                type: transport_event
                              - id: e4002e13-0a74-4bd4-9147-787bb21e2fda
                                type: transport_event
                              - id: 57b5568f-d8a6-443d-b1c8-be5cd080e5ed
                                type: transport_event
                              - id: 0771cff1-79bf-4eaa-9d9d-790cb433ce44
                                type: transport_event
                              - id: 031021b9-7b39-41f7-bd45-26cc8cb799d2
                                type: transport_event
                              - id: 9956448d-34d3-4c23-bcfd-19807eb4034f
                                type: transport_event
                              - id: f1caf6ea-3e92-4b68-bcea-556828301062
                                type: transport_event
                              - id: 2dd558a8-fa07-454c-acf3-b53d072264af
                                type: transport_event
                              - id: 83118511-d9ed-4b16-b323-5e685d9b266e
                                type: transport_event
                          raw_events:
                            data:
                              - id: f256289f-219d-45f6-b727-56fb9c6bc433
                                type: raw_event
                              - id: c5581f60-ffb2-4ef0-a855-b70acd3b294f
                                type: raw_event
                              - id: 3c6716f9-814c-4459-9bbb-753f010446b2
                                type: raw_event
                              - id: 62c7b849-c99b-4e37-9861-105141cc0a4c
                                type: raw_event
                              - id: 7db37d43-426a-4f84-82af-2957621ce466
                                type: raw_event
                              - id: d4342119-db56-46fc-8299-f573f5b52e73
                                type: raw_event
                              - id: ba159c3b-590c-43ff-bc04-b0354fd326f4
                                type: raw_event
                              - id: ec1be31a-17f1-4f6f-85ab-c74cb0dbe6cb
                                type: raw_event
                              - id: d12c4656-0d1f-4f30-a0fa-a2ee887741a8
                                type: raw_event
                              - id: 146d56e2-b41d-4469-8202-0c7d7315e794
                                type: raw_event
                              - id: 6b86b4d1-f85f-4c26-9fbc-3132a62f0fbc
                                type: raw_event
                              - id: bb2c9105-e421-4372-9265-e61b3fa54851
                                type: raw_event
                              - id: 3a09c49f-c12e-49e9-b2de-b8dca2b3d608
                                type: raw_event
                              - id: 54d91ebc-8f57-4764-b7c6-a3f4dc2459be
                                type: raw_event
                              - id: 9e788c46-9431-41eb-baee-c8b14fb4f590
                                type: raw_event
                              - id: d3051802-8b6f-497d-ad16-fb35547c8662
                                type: raw_event
                              - id: af3090e7-c6d3-4d8e-88aa-9cd757102f9b
                                type: raw_event
                              - id: 95daf204-d95d-4a89-bedf-358bedb8b3b8
                                type: raw_event
                      - id: 8d1faeeb-3890-4fac-8659-cd13737b26f1
                        type: container
                        attributes:
                          number: CMAU0619052
                          seal_number: null
                          created_at: '2024-06-26T15:02:11Z'
                          ref_numbers: []
                          pod_arrived_at: '2024-06-22T22:10:00Z'
                          pod_discharged_at: '2024-06-23T20:38:00Z'
                          final_destination_full_out_at: null
                          holds_at_pod_terminal: []
                          available_for_pickup: false
                          equipment_type: dry
                          equipment_length: 20
                          equipment_height: standard
                          weight_in_lbs: null
                          pod_full_out_at: null
                          empty_terminated_at: null
                          terminal_checked_at: '2024-06-26T18:47:47Z'
                          fees_at_pod_terminal: []
                          pickup_lfd: '2024-06-27T07:00:00Z'
                          pickup_appointment_at: null
                          pod_full_out_chassis_number: null
                          location_at_pod_terminal: Grounded
                          pod_last_tracking_request_at: '2024-06-26T18:47:47Z'
                          shipment_last_tracking_request_at: '2024-06-26T15:02:11Z'
                          availability_known: true
                          pod_timezone: America/Los_Angeles
                          final_destination_timezone: Asia/Shanghai
                          empty_terminated_timezone: Asia/Shanghai
                          pod_rail_carrier_scac: null
                          ind_rail_carrier_scac: null
                          pod_rail_loaded_at: null
                          pod_rail_departed_at: null
                          ind_eta_at: null
                          ind_ata_at: null
                          ind_rail_unloaded_at: null
                          ind_facility_lfd_on: null
                          import_deadlines:
                            pickup_lfd_terminal: '2024-06-27T07:00:00Z'
                            pickup_lfd_rail: null
                            pickup_lfd_line: '2024-06-27T07:00:00Z'
                          current_status: not_available
                        relationships:
                          shipment:
                            data:
                              id: f706cbea-3264-473d-8d26-af257f3bc1be
                              type: shipment
                          pickup_facility:
                            data: null
                          pod_terminal:
                            data:
                              id: eaa2580c-5f5b-4198-85e4-821145d62098
                              type: terminal
                          transport_events:
                            data:
                              - id: 1bb3a814-edab-403f-8ef2-a6d0966df423
                                type: transport_event
                              - id: 19f197bf-444c-40ee-8478-6f02abe715a9
                                type: transport_event
                              - id: 4c9223bb-0218-4175-8a2e-7bb99c40642a
                                type: transport_event
                              - id: 432da964-6e99-45e9-b4b1-00b7be858591
                                type: transport_event
                              - id: b462b4d1-1e02-4037-af7f-6c8fa981f268
                                type: transport_event
                              - id: e3ca4a25-692f-474a-aa71-48fb9840aef1
                                type: transport_event
                              - id: 014b9d1f-f033-4a3e-89f9-c57569883436
                                type: transport_event
                              - id: 2cec71c9-721a-4060-993f-0ffcf01151cd
                                type: transport_event
                              - id: 24941515-1b5e-4fca-87eb-092e56ed156a
                                type: transport_event
                              - id: 0fd06bc0-1fda-467c-ab67-90a30c6d62ab
                                type: transport_event
                              - id: 0bce915e-b9ba-42a0-a484-136266fe8b9a
                                type: transport_event
                              - id: 582006aa-6547-4712-b964-5637aad839b4
                                type: transport_event
                              - id: 11458420-b354-4288-a275-7572d3c60e33
                                type: transport_event
                              - id: 5c900fa1-11bf-4f96-89e7-b12f6a98edc4
                                type: transport_event
                          raw_events:
                            data:
                              - id: 999d7de7-eaed-4313-85df-772a6d24a85e
                                type: raw_event
                              - id: ac9c2780-240d-443f-87f4-95465fa5447b
                                type: raw_event
                              - id: a0ee3724-91c3-4b78-af32-2f16e8c2d600
                                type: raw_event
                              - id: 79725b1f-19f7-4fc3-8c69-586e237c1719
                                type: raw_event
                              - id: 4f07f257-ea4f-4e61-94ed-a01598899020
                                type: raw_event
                              - id: 41612acb-b3d4-495f-9138-f34105851d21
                                type: raw_event
                              - id: 84ffdd37-ec39-404a-9b68-d72d8fb96d48
                                type: raw_event
                              - id: 7e9d8a6d-5339-4266-a6fb-22c28f41149f
                                type: raw_event
                              - id: 2359b787-b218-42dc-b9a5-84b608aee671
                                type: raw_event
                              - id: ea33303e-0e48-4442-9886-0dfe38b726b5
                                type: raw_event
                              - id: 3689d013-8525-418b-92ed-95ec684130b4
                                type: raw_event
                              - id: a64f7f7e-a6fa-4913-aba0-b28ba189d68b
                                type: raw_event
                              - id: c264a859-4fcb-4fab-95c0-29be99ec54a4
                                type: raw_event
                              - id: 2aabf25c-9a3e-44bc-b6c8-ed7b1e3c3630
                                type: raw_event
                              - id: 6ae70038-02d7-425a-99c1-8761c69a9033
                                type: raw_event
                              - id: c30021d8-93e9-4bfd-a978-e9e24de148c8
                                type: raw_event
                      - id: 853f1794-9b94-4118-9970-4e28e549440d
                        type: container
                        attributes:
                          number: TGHU6578122
                          seal_number: null
                          created_at: '2024-06-26T15:08:30Z'
                          ref_numbers: []
                          pod_arrived_at: '2024-06-23T21:58:00Z'
                          pod_discharged_at: '2024-06-24T02:28:00Z'
                          final_destination_full_out_at: null
                          holds_at_pod_terminal: []
                          available_for_pickup: false
                          equipment_type: dry
                          equipment_length: 40
                          equipment_height: high_cube
                          weight_in_lbs: 8898
                          pod_full_out_at: null
                          empty_terminated_at: null
                          terminal_checked_at: '2024-06-26T18:47:47Z'
                          fees_at_pod_terminal: []
                          pickup_lfd: '2024-06-27T07:00:00Z'
                          pickup_appointment_at: null
                          pod_full_out_chassis_number: null
                          location_at_pod_terminal: Wheeled
                          pod_last_tracking_request_at: '2024-06-26T18:47:46Z'
                          shipment_last_tracking_request_at: '2024-06-26T15:08:30Z'
                          availability_known: true
                          pod_timezone: America/Los_Angeles
                          final_destination_timezone: America/New_York
                          empty_terminated_timezone: America/New_York
                          pod_rail_carrier_scac: BNSF
                          ind_rail_carrier_scac: CSXT
                          pod_rail_loaded_at: null
                          pod_rail_departed_at: null
                          ind_eta_at: '2024-07-07T08:00:00Z'
                          ind_ata_at: null
                          ind_rail_unloaded_at: null
                          ind_facility_lfd_on: null
                          import_deadlines:
                            pickup_lfd_terminal: '2024-06-27T07:00:00Z'
                            pickup_lfd_rail: null
                            pickup_lfd_line: '2024-06-27T07:00:00Z'
                          current_status: awaiting_inland_transfer
                        relationships:
                          shipment:
                            data:
                              id: f3cfe624-706e-4a0c-89d5-140980d986fd
                              type: shipment
                          pickup_facility:
                            data:
                              id: 7e4557b9-cc5a-4298-aaec-1a32e90202c9
                              type: terminal
                          pod_terminal:
                            data:
                              id: eaa2580c-5f5b-4198-85e4-821145d62098
                              type: terminal
                          transport_events:
                            data:
                              - id: 94f687d0-dc6b-4342-8710-cb98bc98716e
                                type: transport_event
                              - id: a8d0a842-95fe-4c12-a80e-bd12e87a1421
                                type: transport_event
                              - id: c1f1a186-3737-41ca-ae2b-f79a17519991
                                type: transport_event
                              - id: 7fcc5496-d402-4b1c-a6c5-8514e6433070
                                type: transport_event
                              - id: ab7cd84a-edc5-476d-a1c4-190011582314
                                type: transport_event
                              - id: 68d91384-3eb3-4d21-ac7a-c1f688f649c2
                                type: transport_event
                              - id: 5a702f46-4356-4570-bd2e-2b8adab5ba3e
                                type: transport_event
                          raw_events:
                            data:
                              - id: a4b7e4b6-5227-4f34-9e91-9e75223798ae
                                type: raw_event
                              - id: 4f3e3c7b-d1e6-4fde-b95e-ce9a8835445c
                                type: raw_event
                              - id: 39e8570d-1a8f-4e10-8d2e-ac930abc5971
                                type: raw_event
                              - id: b8015a72-9741-4fbf-8adc-d30b87de6aa3
                                type: raw_event
                              - id: 61512b1a-a94e-4cac-8bab-763588dbbddf
                                type: raw_event
                              - id: c0bf87f2-37c3-4895-90b0-9f97ac4b5c13
                                type: raw_event
                              - id: 3856c7e7-f832-42ca-873b-096952599e29
                                type: raw_event
                              - id: 485be998-0861-4d10-8a60-f66d27eb46a7
                                type: raw_event
                              - id: 29cde194-bbd9-40c2-adba-5dcb1514f5fc
                                type: raw_event
                      - id: 681d713d-bcd6-4303-b082-b9f893e7d1d9
                        type: container
                        attributes:
                          number: CSNU8439129
                          seal_number: null
                          created_at: '2024-06-26T15:02:32Z'
                          ref_numbers: []
                          pod_arrived_at: '2024-06-23T21:58:00Z'
                          pod_discharged_at: '2024-06-26T04:30:00Z'
                          final_destination_full_out_at: null
                          holds_at_pod_terminal: []
                          available_for_pickup: true
                          equipment_type: dry
                          equipment_length: 40
                          equipment_height: high_cube
                          weight_in_lbs: 40488
                          pod_full_out_at: null
                          empty_terminated_at: null
                          terminal_checked_at: '2024-06-26T18:47:47Z'
                          fees_at_pod_terminal: []
                          pickup_lfd: '2024-07-01T07:00:00Z'
                          pickup_appointment_at: '2024-06-28T15:00:00Z'
                          pod_full_out_chassis_number: null
                          location_at_pod_terminal: Grounded
                          pod_last_tracking_request_at: '2024-06-26T18:47:46Z'
                          shipment_last_tracking_request_at: '2024-06-26T15:02:32Z'
                          availability_known: true
                          pod_timezone: America/Los_Angeles
                          final_destination_timezone: America/Chicago
                          empty_terminated_timezone: America/Chicago
                          pod_rail_carrier_scac: BNSF
                          ind_rail_carrier_scac: BNSF
                          pod_rail_loaded_at: null
                          pod_rail_departed_at: null
                          ind_eta_at: '2024-07-04T22:00:00Z'
                          ind_ata_at: null
                          ind_rail_unloaded_at: null
                          ind_facility_lfd_on: null
                          import_deadlines:
                            pickup_lfd_terminal: '2024-07-01T07:00:00Z'
                            pickup_lfd_rail: null
                            pickup_lfd_line: '2024-07-01T07:00:00Z'
                          current_status: available
                        relationships:
                          shipment:
                            data:
                              id: edd626cf-b0b5-4679-8a6c-80c8e9fe7698
                              type: shipment
                          pickup_facility:
                            data:
                              id: 572b372f-21c7-4403-8fb0-948377c74642
                              type: terminal
                          pod_terminal:
                            data:
                              id: eaa2580c-5f5b-4198-85e4-821145d62098
                              type: terminal
                          transport_events:
                            data:
                              - id: 9d19125a-2944-442c-8132-bf0d83670e5c
                                type: transport_event
                              - id: b2ff0b47-3151-41e2-8c46-7f95cdbe4167
                                type: transport_event
                              - id: e52feaa3-7a50-4570-a2ea-bf06f955ce23
                                type: transport_event
                              - id: c56d95e5-774f-432c-b6f4-c53967f07292
                                type: transport_event
                              - id: 9b1d8b48-e870-46fa-bc46-10f9b30c64d4
                                type: transport_event
                              - id: 3e1d3571-6b24-4ad2-a071-4e70d59af521
                                type: transport_event
                              - id: 60f5eefe-13d5-4f85-9b65-d13b4c67115a
                                type: transport_event
                          raw_events:
                            data:
                              - id: 2af51127-0971-4741-9b97-ea1b338e3a7c
                                type: raw_event
                              - id: 4472ded6-eb69-4f21-8666-9a4f2342dfeb
                                type: raw_event
                              - id: ce238754-d5fd-4dc8-9f55-2ac6efdfbb5e
                                type: raw_event
                              - id: 5cd3b5ef-843f-4f60-87ce-5beaeea86f7b
                                type: raw_event
                              - id: 55291737-98b6-403c-9424-1605e6e01007
                                type: raw_event
                              - id: cdc55ea8-a075-45b3-9570-ade6fb2f0d94
                                type: raw_event
                              - id: c0ab5406-4e10-4fdc-85a4-e17ce8d956f5
                                type: raw_event
                              - id: 965f0172-1c20-4342-a44a-7be0e594ff76
                                type: raw_event
                              - id: db178011-c795-42a4-9537-b4e77ffb4f98
                                type: raw_event
                    meta:
                      size: 5
                      total: 59229
                    links:
                      self: https://api.terminal49.com/v2/containers?page[size]=5
                      current: >-
                        https://api.terminal49.com/v2/containers?page[number]=1&page[size]=5
                      next: >-
                        https://api.terminal49.com/v2/containers?page[number]=2&page[size]=5
                      last: >-
                        https://api.terminal49.com/v2/containers?page[number]=11846&page[size]=5
        '400':
          description: >-
            Malformed supported filter value, operator, range, or strict
            boolean. The error identifies the invalid parameter where available.
          content:
            application/json:
              schema:
                type: object
                properties:
                  errors:
                    type: array
                    items:
                      $ref: '#/components/schemas/error'
components:
  schemas:
    container:
      title: Container model
      type: object
      x-examples:
        Example Container:
          id: ff77a822-23a7-4ccd-95ca-g534c071baaf3
          type: container
          attributes:
            number: KOCU4959010
            ref_numbers:
              - REF-1
              - REF-2
            seal_number: '210084213'
            created_at: '2021-10-18T09:52:33Z'
            equipment_type: dry
            equipment_length: 40
            equipment_height: high_cube
            weight_in_lbs: 20210
            fees_at_pod_terminal: []
            holds_at_pod_terminal: []
            pickup_lfd: '2022-01-21T08:00:00Z'
            pickup_appointment_at: null
            pod_full_out_chassis_number: APMZ418805
            location_at_pod_terminal: Delivered 02/11/2022 14:18
            availability_known: true
            available_for_pickup: false
            pod_arrived_at: '2022-01-03T10:30:00Z'
            pod_discharged_at: '2022-01-08T09:15:00Z'
            final_destination_full_out_at: null
            pod_full_out_at: '2022-02-11T22:18:00Z'
            empty_terminated_at: null
            terminal_checked_at: '2022-02-11T22:45:32Z'
            pod_rail_carrier_scac: UPRR
            ind_rail_carrier_scac: CSXT
            pod_timezone: America/Los_Angeles
            final_destination_timezone: null
            empty_terminated_timezone: null
            pod_last_tracking_request_at: '2022-02-11T22:40:00Z'
            shipment_last_tracking_request_at: '2022-02-11T22:40:00Z'
            pod_rail_loaded_at: '2022-02-11T22:18:00Z'
            pod_rail_departed_at: '2022-02-11T23:30:00Z'
            ind_eta_at: null
            ind_ata_at: '2022-02-15T01:12:00Z'
            ind_rail_unloaded_at: '2022-02-15T07:54:00Z'
            ind_facility_lfd_on: null
            import_deadlines:
              pickup_lfd_terminal: null
              pickup_lfd_rail: '2022-02-20T08:00:00Z'
              pickup_lfd_line: '2022-02-25T08:00:00Z'
            current_status: delivered
          relationships:
            shipment:
              data:
                id: x92acf88-c263-43ddf-b005-aca2a32d47f1
                type: shipment
            pod_terminal:
              data:
                id: x551cac7-aff5-40a6-9c63-49facf19cc3df
                type: terminal
            pickup_facility:
              data:
                id: d7d8d314-b02b-4caa-b04f-d3d4726f4107
                type: terminal
            transport_events:
              data:
                - id: xecfe2d1-c498-4022-a9f8-ec56722e1215
                  type: transport_event
                - id: 2900a9b8-d9e2-4696-abd86-4a767b885d23
                  type: transport_event
                - id: 5ad0dce1-x78e4-464d-af5f-a36190428a2c
                  type: transport_event
                - id: 876575d5-5ede-40d6-a093-c3a4cfcxaa1c7
                  type: transport_event
                - id: dc2a9d8f-75e6-43xa5-a04e-58458495f08c
                  type: transport_event
                - id: 50xd2ea1-01ac-473d-8a08-3b5d77d2b793
                  type: transport_event
                - id: 9d1f55xe3-6758-4be7-872a-30451ddd957e
                  type: transport_event
            raw_events:
              data:
                - id: 38084a1d-a2eb-434e-81ac3-606c89a61c4b
                  type: raw_event
                - id: 53680df3-93d5-4385-86c5-a33ee41b4c1f
                  type: raw_event
                - id: 7d9cdf70-51e8-4b75-a8229-f5d691495ab6
                  type: raw_event
                - id: e62d41ac-8738-42e8-b582-35ef28ae88e2
                  type: raw_event
                - id: 1209172b-acd8-4ce0-8821-dbc4934208b3
                  type: raw_event
                - id: 4265ea5f-2b9a-436f-98fa-803d8ed49acb2
                  type: raw_event
                - id: c3cb2eb7-6c0a-4db8-8742-517b97b175d5
                  type: raw_event
                - id: b1959f36-a218-4b6e-863a9-2e0b4ad5159c
                  type: raw_event
      description: Represents the equipment during a specific journey.
      properties:
        id:
          type: string
          format: uuid
        type:
          type: string
          enum:
            - container
        attributes:
          type: object
          properties:
            number:
              type: string
            ref_numbers:
              type: array
              items:
                type: string
            equipment_type:
              type: string
              enum:
                - dry
                - reefer
                - open top
                - flat rack
                - bulk
                - tank
                - null
              nullable: true
            equipment_length:
              type: integer
              enum:
                - null
                - 10
                - 20
                - 40
                - 45
              nullable: true
            equipment_height:
              type: string
              enum:
                - standard
                - high_cube
                - null
              nullable: true
            weight_in_lbs:
              type: number
              nullable: true
            created_at:
              type: string
              format: date-time
            seal_number:
              type: string
              nullable: true
            pickup_lfd:
              type: string
              format: date-time
              description: >-
                Coalesces `import_deadlines` values giving preference to
                `pickup_lfd_line`
              nullable: true
            pickup_appointment_at:
              type: string
              format: date-time
              description: >-
                When available the pickup appointment time at the terminal is
                returned.
              nullable: true
            availability_known:
              type: boolean
              description: >-
                Whether Terminal 49 is receiving availability status from the
                terminal.
            available_for_pickup:
              type: boolean
              description: >-
                If availability_known is true, then whether container is
                available to be picked up at terminal.
              nullable: true
            pod_arrived_at:
              type: string
              format: date-time
              description: Time the vessel arrived at the POD
              nullable: true
            pod_discharged_at:
              type: string
              format: date-time
              description: Discharge time at the port of discharge
              nullable: true
            pod_full_out_at:
              type: string
              format: date-time
              description: Full Out time at port of discharge. Null for inland moves.
              nullable: true
            terminal_checked_at:
              type: string
              format: date-time
              description: When the terminal was last checked.
              nullable: true
            pod_full_out_chassis_number:
              type: string
              description: >-
                The chassis number used when container was picked up at POD (if
                available)
              nullable: true
            location_at_pod_terminal:
              type: string
              description: Location at port of discharge terminal
              nullable: true
            final_destination_full_out_at:
              type: string
              format: date-time
              description: Pickup time at final destination for inland moves.
              nullable: true
            empty_terminated_at:
              type: string
              format: date-time
              description: Time empty container was returned.
              nullable: true
            holds_at_pod_terminal:
              type: array
              items:
                $ref: '#/components/schemas/terminal_hold'
            fees_at_pod_terminal:
              type: array
              items:
                $ref: '#/components/schemas/terminal_fee'
            pod_timezone:
              type: string
              description: >-
                IANA tz. Applies to attributes pod_arrived_at,
                pod_discharged_at, pickup_appointment_at, pod_full_out_at.
              nullable: true
            final_destination_timezone:
              type: string
              description: IANA tz. Applies to attribute final_destination_full_out_at.
              nullable: true
            empty_terminated_timezone:
              type: string
              description: IANA tz. Applies to attribute empty_terminated_at.
              nullable: true
            pod_rail_carrier_scac:
              type: string
              description: >-
                The SCAC of the rail carrier for the pickup leg of the
                container's journey.(BETA)
              nullable: true
            ind_rail_carrier_scac:
              type: string
              description: >-
                The SCAC of the rail carrier for the delivery leg of the
                container's journey.(BETA)
              nullable: true
            pod_last_tracking_request_at:
              type: string
              format: date-time
              description: >-
                Timestamp of the last time Terminal49 requested container
                tracking updates directly from the port-of-discharge terminal.
                Compare with `shipment_last_tracking_request_at`, which tracks
                shipment-level requests to the shipping line.
              nullable: true
            shipment_last_tracking_request_at:
              type: string
              format: date-time
              description: >-
                Timestamp of the last time Terminal49 requested shipment-level
                tracking updates from the shipping line for this container's
                shipment. Compare with `pod_last_tracking_request_at`, which
                tracks container-level requests made directly to the terminal.
              nullable: true
            pod_rail_loaded_at:
              type: string
              format: date-time
              nullable: true
            pod_rail_departed_at:
              type: string
              format: date-time
              nullable: true
            ind_eta_at:
              type: string
              format: date-time
              description: >-
                Estimated Time of Arrival at the inland destination, as reported
                by the rail carrier. For the shipping-line view at the
                shipment's destination, see `destination_eta_at` on the
                shipment. Corresponding timezone is
                `final_destination_timezone`.
              nullable: true
            ind_ata_at:
              type: string
              format: date-time
              description: >-
                Actual Time of Arrival at the inland destination, as reported by
                the rail carrier. For the shipping-line view at the shipment's
                destination, see `destination_ata_at` on the shipment.
                Corresponding timezone is `final_destination_timezone`.
              nullable: true
            ind_rail_unloaded_at:
              type: string
              format: date-time
              description: >-
                Time when the container is unloaded from rail at the inland
                destination.
              nullable: true
            ind_facility_lfd_on:
              type: string
              format: date-time
              description: Please use `import_deadlines.pickup_lfd_rail`
              nullable: true
              deprecated: true
            import_deadlines:
              type: object
              description: Import pickup deadlines for the container
              properties:
                pickup_lfd_terminal:
                  type: string
                  format: date-time
                  description: >-
                    The last free day for pickup before demmurage accrues.
                    Corresponding timezone is pod_timezone.
                  nullable: true
                pickup_lfd_rail:
                  type: string
                  format: date-time
                  description: >-
                    The last free day for pickup at the inland destination, as
                    reported by the rail carrier. Corresponding timezone is
                    final_destination_timezone. Subscribe to
                    `container.pickup_lfd_rail.changed` to be notified of
                    updates.
                  nullable: true
                pickup_lfd_line:
                  type: string
                  format: date-time
                  description: >-
                    The last free day as reported by the shipping line (carrier
                    dependent). Corresponding timezone is
                    final_destination_timezone or pod_timezone. Preferred source
                    for the coalesced top-level `pickup_lfd` field.
                  nullable: true
              nullable: true
            current_status:
              type: string
              description: >-
                The current status of the container in its journey. [Read guide
                to learn more.](/api-docs/in-depth-guides/container-statuses)
              enum:
                - new
                - on_ship
                - available
                - not_available
                - grounded
                - on_rail
                - picked_up
                - off_dock
                - delivered
                - dropped
                - loaded
                - empty_returned
                - awaiting_inland_transfer
        relationships:
          type: object
          properties:
            shipment:
              type: object
              properties:
                data:
                  type: object
                  properties:
                    id:
                      type: string
                    type:
                      type: string
                      enum:
                        - shipment
            pickup_facility:
              type: object
              properties:
                data:
                  type: object
                  properties:
                    id:
                      type: string
                    type:
                      type: string
                      enum:
                        - terminal
            pod_terminal:
              type: object
              properties:
                data:
                  type: object
                  properties:
                    id:
                      type: string
                    type:
                      type: string
                      enum:
                        - terminal
            transport_events:
              type: object
              properties:
                data:
                  type: array
                  items:
                    type: object
                    properties:
                      id:
                        type: string
                      type:
                        type: string
                        enum:
                          - transport_event
            raw_events:
              type: object
              properties:
                data:
                  type: array
                  items:
                    type: object
                    properties:
                      id:
                        type: string
                      type:
                        type: string
                        enum:
                          - raw_event
      required:
        - id
        - type
        - attributes
    shipment:
      title: Shipment model
      type: object
      x-examples: {}
      description: ''
      properties:
        id:
          type: string
          format: uuid
        relationships:
          type: object
          properties:
            destination:
              type: object
              properties:
                data:
                  type: object
                  nullable: true
                  properties:
                    type:
                      type: string
                      enum:
                        - port
                        - metro_area
                    id:
                      type: string
                      format: uuid
                  required:
                    - type
                    - id
            port_of_lading:
              type: object
              properties:
                data:
                  type: object
                  nullable: true
                  properties:
                    type:
                      type: string
                      enum:
                        - port
                    id:
                      type: string
                      format: uuid
                  required:
                    - type
                    - id
            containers:
              type: object
              properties:
                data:
                  type: array
                  items:
                    type: object
                    properties:
                      type:
                        type: string
                        enum:
                          - container
                      id:
                        type: string
                        format: uuid
                    required:
                      - type
                      - id
            port_of_discharge:
              type: object
              properties:
                data:
                  type: object
                  nullable: true
                  properties:
                    type:
                      type: string
                      enum:
                        - port
                    id:
                      type: string
                      format: uuid
                  required:
                    - type
                    - id
            pod_terminal:
              type: object
              properties:
                data:
                  type: object
                  properties:
                    type:
                      type: string
                      enum:
                        - terminal
                    id:
                      type: string
                      format: uuid
                  required:
                    - type
                    - id
            destination_terminal:
              type: object
              properties:
                data:
                  type: object
                  properties:
                    type:
                      type: string
                      enum:
                        - terminal
                        - rail_terminal
                    id:
                      type: string
                      format: uuid
                  required:
                    - type
                    - id
            line_tracking_stopped_by_user:
              type: object
              properties:
                data:
                  type: object
                  properties:
                    type:
                      type: string
                      enum:
                        - user
                    id:
                      type: string
                      format: uuid
                  required:
                    - type
                    - id
        attributes:
          type: object
          properties:
            bill_of_lading_number:
              type: string
            normalized_number:
              type: string
              description: >-
                The normalized version of the shipment number used for querying
                the carrier
            ref_numbers:
              type: array
              items:
                type: string
              nullable: true
            created_at:
              type: string
              format: date-time
            tags:
              type: array
              items:
                type: string
            port_of_lading_locode:
              type: string
              description: UN/LOCODE
              nullable: true
            port_of_lading_name:
              type: string
              nullable: true
            port_of_discharge_locode:
              type: string
              description: UN/LOCODE
              nullable: true
            port_of_discharge_name:
              type: string
              nullable: true
            destination_locode:
              type: string
              description: UN/LOCODE
              nullable: true
            destination_name:
              type: string
              nullable: true
            shipping_line_scac:
              type: string
            shipping_line_name:
              type: string
            shipping_line_short_name:
              type: string
            customer_name:
              type: string
              nullable: true
            pod_vessel_name:
              type: string
              nullable: true
            pod_vessel_imo:
              type: string
              nullable: true
            pod_voyage_number:
              type: string
              nullable: true
            pol_etd_at:
              type: string
              format: date-time
              description: >-
                Estimated Time of Departure from the Port of Lading, as reported
                by the shipping line. Carrier dependent; may be null.
              nullable: true
            pol_atd_at:
              type: string
              format: date-time
              description: >-
                Actual Time of Departure from the Port of Lading. Populated
                after the vessel has departed the origin port.
              nullable: true
            pod_eta_at:
              type: string
              format: date-time
              description: Estimated Time of Arrival at the Port of Discharge.
              nullable: true
            pod_original_eta_at:
              type: string
              format: date-time
              description: >-
                Initial Estimated Time of Arrival at the Port of Discharge, as
                first reported by the shipping line.
              nullable: true
            pod_ata_at:
              type: string
              format: date-time
              description: Actual Time of Arrival at the Port of Discharge.
              nullable: true
            destination_eta_at:
              type: string
              format: date-time
              description: >-
                Estimated Time of Arrival at the shipment's destination, as
                reported by the shipping line. For inland (rail) moves, see also
                the container-level `ind_eta_at`, which is reported by the rail
                carrier. Corresponding timezone is `destination_timezone`.
              nullable: true
            destination_ata_at:
              type: string
              format: date-time
              description: >-
                Actual Time of Arrival at the shipment's destination, as
                reported by the shipping line. For inland (rail) moves, see also
                the container-level `ind_ata_at`, which is reported by the rail
                carrier. Corresponding timezone is `destination_timezone`.
              nullable: true
            pol_timezone:
              type: string
              description: IANA tz
              nullable: true
            pod_timezone:
              type: string
              description: IANA tz
              nullable: true
            destination_timezone:
              type: string
              description: IANA tz
              nullable: true
            line_tracking_last_attempted_at:
              type: string
              format: date-time
              description: >-
                When Terminal49 last tried to update the shipment status from
                the shipping line
              nullable: true
            line_tracking_last_succeeded_at:
              type: string
              format: date-time
              description: >-
                When Terminal49 last successfully updated the shipment status
                from the shipping line
              nullable: true
            line_tracking_stopped_at:
              type: string
              format: date-time
              description: When Terminal49 stopped checking at the shipping line
              nullable: true
            line_tracking_stopped_reason:
              type: string
              enum:
                - all_containers_terminated
                - past_arrival_window
                - past_full_out_window
                - no_updates_at_line
                - cancelled_by_user
                - booking_cancelled
                - null
              description: The reason Terminal49 stopped checking
              nullable: true
          required:
            - bill_of_lading_number
        type:
          type: string
          enum:
            - shipment
        links:
          type: object
          properties:
            self:
              type: string
              format: uri
          required:
            - self
      required:
        - id
        - type
        - attributes
        - relationships
        - links
    links:
      title: links
      type: object
      properties:
        last:
          type: string
          format: uri
        next:
          type: string
          format: uri
        prev:
          type: string
          format: uri
        first:
          type: string
          format: uri
        self:
          type: string
          format: uri
    meta:
      title: meta
      type: object
      properties:
        size:
          type: integer
        total:
          type: integer
    error:
      title: Error model
      type: object
      properties:
        detail:
          type: string
          nullable: true
        title:
          type: string
          nullable: true
        source:
          type: object
          nullable: true
          properties:
            pointer:
              type: string
              nullable: true
            parameter:
              type: string
              nullable: true
        code:
          type: string
          nullable: true
        status:
          type: string
          nullable: true
        meta:
          type: object
          nullable: true
          additionalProperties: true
      required:
        - title
    terminal_hold:
      title: terminal_hold
      type: object
      properties:
        name:
          type: string
        status:
          type: string
          enum:
            - pending
            - hold
        description:
          type: string
          description: Text description from the terminal (if any)
          nullable: true
      required:
        - name
        - status
    terminal_fee:
      title: terminal_fee
      type: object
      properties:
        type:
          type: string
          enum:
            - demurrage
            - exam
            - extended_dwell_time
            - other
            - total
        amount:
          type: number
          description: The fee amount in local currency
        currency_code:
          type: string
          description: The ISO 4217 currency code of the fee is charged in. E.g. USD
          example: USD
      required:
        - type
        - amount
  securitySchemes:
    authorization:
      name: Authorization
      type: apiKey
      in: header
      description: >-
        Use a Terminal49 API key in the `Authorization` header with the `Token`
        prefix.


        `Authorization: Token YOUR_API_KEY`

````

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