---
title: "GET /shipment"
method: GET
path: "/shipment"
tags: ["Shipment"]
---

# GET /shipment

`GET /shipment`

## Request

- Base URL: `https://api.sinay.ai/container-tracking/api/v2`
- URL: `https://api.sinay.ai/container-tracking/api/v2/shipment`
- Auth: API key in header `API_KEY`
- TypeScript: <https://skmtc.dev/sinay/apis/api-container-tracking/docs/shipment/get.ts> (a function with typed inputs; its response is checked against the schema)

## Query parameters

- `shipmentNumber` string, required
- `sealine` string
- `shipmentType` 'CT' | 'BL' | 'BK'
- `route` boolean
- `ais` boolean

## Response `200`

OK

- ShipmentDetails
  - `metadata` Metadata: <p>Additional data on the shipment</p>
    - `shipmentType` 'CT' | 'BL' | 'BK' | 'DC': <p>Shipment type (CT for Container, BK for booking number, BL for bill of lading, DC for document (if we could not recognize between a booking or bill of lading)</p> <p>If this parameter is not present in the request, it will be autodetected.</p>
    - `shipmentNumber` string: <p>Shipment reference entered as input.</p>
    - `sealine` string: <p>Shipping line SCAC code. If this parameter is not present in the request, it will be autodetected.</p>
    - `sealineName` string: <p>Name of the shipping line in full.</p>
    - `shippingStatus` 'PLANNED' | 'IN_TRANSIT' | 'DELIVERED' | 'UNKNOWN': <p>Short status of the shipment.</p> <p>If no event dates are available, status is `PLANNED`, if event dates are still in the future status is `IN_TRANSIT` and if all dates are in the past and delivery has been confirmed by sealine, status is `DELIVERED`.</p>
    - `updatedAt` string, date-time: <p>Timestamp from when data was last received from the carrier.</p>
    - `warnings` string[]: Warnings on data quality or discrepancies in data received from carrier. Possible values. - `MISSING_DATES` at least one of the event dates is null - `OBSOLETE_DATA` timestamp from `updatedAt` is older than 24 hours - `NO_POL` no Port of Loading received from carrier - `NO_POD` no Port of Discharge received from carrier - `STATUS_MISMATCH` shipment status is in conflict with event dates - `NO_EVENTS` carrier provided information on containers, but not on events - `NO_CONTAINERS` no container information received from carrier - `SPLIT_BL` the bl has been detected as split
  - `locations` Location[]
    - `name` string: Location name (as in UNECE database)
    - `state` string: Location state if provided.
    - `country` string: Country of the location.
    - `countryCode` string: Country code of the location (2 letters, as in UNECE database)
    - `locode` string: UN/Locode of the location
    - `coordinates` Coordinates
      - `lat` number, float
      - `lng` number, float
    - `timezone` string: Location timezone
  - `route` Route
    - `prepol` RouteInfo
      - `location` Location: Ordered list of the locations your shipment will transit by.
        - `name` string: Location name (as in UNECE database)
        - `state` string: Location state if provided.
        - `country` string: Country of the location.
        - `countryCode` string: Country code of the location (2 letters, as in UNECE database)
        - `locode` string: UN/Locode of the location
        - `coordinates` Coordinates
          - `lat` number, float
          - `lng` number, float
        - `timezone` string: Location timezone
      - `date` string, date-time: Date of the first event at this location. For POL usually date of Gate In, for POD usually date of Vessel arrival.
      - `actual` boolean: True if the date is actual, false if it is estimated.
      - `predictiveEta` string: Available only for POD and when the shipment is within 3 days of its arrival at POD. Sinay calculation based on historical AIS data, live port congestion and wheather.
    - `pol` RouteInfo
      - `location` Location: Ordered list of the locations your shipment will transit by.
        - `name` string: Location name (as in UNECE database)
        - `state` string: Location state if provided.
        - `country` string: Country of the location.
        - `countryCode` string: Country code of the location (2 letters, as in UNECE database)
        - `locode` string: UN/Locode of the location
        - `coordinates` Coordinates
          - `lat` number, float
          - `lng` number, float
        - `timezone` string: Location timezone
      - `date` string, date-time: Date of the first event at this location. For POL usually date of Gate In, for POD usually date of Vessel arrival.
      - `actual` boolean: True if the date is actual, false if it is estimated.
      - `predictiveEta` string: Available only for POD and when the shipment is within 3 days of its arrival at POD. Sinay calculation based on historical AIS data, live port congestion and wheather.
    - `pod` RouteInfo
      - `location` Location: Ordered list of the locations your shipment will transit by.
        - `name` string: Location name (as in UNECE database)
        - `state` string: Location state if provided.
        - `country` string: Country of the location.
        - `countryCode` string: Country code of the location (2 letters, as in UNECE database)
        - `locode` string: UN/Locode of the location
        - `coordinates` Coordinates
          - `lat` number, float
          - `lng` number, float
        - `timezone` string: Location timezone
      - `date` string, date-time: Date of the first event at this location. For POL usually date of Gate In, for POD usually date of Vessel arrival.
      - `actual` boolean: True if the date is actual, false if it is estimated.
      - `predictiveEta` string: Available only for POD and when the shipment is within 3 days of its arrival at POD. Sinay calculation based on historical AIS data, live port congestion and wheather.
    - `postpod` RouteInfo
      - `location` Location: Ordered list of the locations your shipment will transit by.
        - `name` string: Location name (as in UNECE database)
        - `state` string: Location state if provided.
        - `country` string: Country of the location.
        - `countryCode` string: Country code of the location (2 letters, as in UNECE database)
        - `locode` string: UN/Locode of the location
        - `coordinates` Coordinates
          - `lat` number, float
          - `lng` number, float
        - `timezone` string: Location timezone
      - `date` string, date-time: Date of the first event at this location. For POL usually date of Gate In, for POD usually date of Vessel arrival.
      - `actual` boolean: True if the date is actual, false if it is estimated.
      - `predictiveEta` string: Available only for POD and when the shipment is within 3 days of its arrival at POD. Sinay calculation based on historical AIS data, live port congestion and wheather.
  - `vessels` Vessel[]
    - `name` string: Vessel Name
    - `imo` integer: Unique IMO identifier of the vessel.
    - `callSign` string: Call sign of the vessel when provided.
    - `mmsi` integer: Maritime Mobile Service Identity number.
    - `flag` string: 2 letters country code (as in UNECE database)
  - `facilities` Facility[]
    - `name` string: Facility name
    - `countryCode` string: 2 letters country code.
    - `locode` string: UN/Locode of the facility
    - `bicCode` string
    - `smdgCode` string
    - `coordinates` Coordinates
      - `lat` number, float
      - `lng` number, float
  - `containers` Container[]
    - `number` string
    - `isoCode` string
    - `sizeType` string
    - `status` 'PLANNED' | 'IN_TRANSIT' | 'DELIVERED' | 'UNKNOWN'
    - `events` Event[]
      - `location` Location: Ordered list of the locations your shipment will transit by.
        - `name` string: Location name (as in UNECE database)
        - `state` string: Location state if provided.
        - `country` string: Country of the location.
        - `countryCode` string: Country code of the location (2 letters, as in UNECE database)
        - `locode` string: UN/Locode of the location
        - `coordinates` Coordinates
          - `lat` number, float
          - `lng` number, float
        - `timezone` string: Location timezone
      - `facility` Facility: List of facilities your shipment will transit by.
        - `name` string: Facility name
        - `countryCode` string: 2 letters country code.
        - `locode` string: UN/Locode of the facility
        - `bicCode` string
        - `smdgCode` string
        - `coordinates` Coordinates
          - `lat` number, float
          - `lng` number, float
      - `description` string: Event description
      - `eventType` 'SHIPMENT' | 'TRANSPORT' | 'EQUIPMENT': Event Type as in DCSA standard (if applicable)
      - `eventCode` 'ARRI' | 'DEPA' | 'LOAD' | 'DISC' | 'GTIN' | 'GTOT' | 'STUF' | 'STRP' | 'PICK' | 'AVPU' | 'DROP' | 'AVDO' | 'INSP' | 'RSEA' | 'RMVD' | 'CUSS' | 'CUSI' | 'CUSR' | 'CROS' | 'RECE' | 'DRFT' | 'PENA' | 'PENU' | 'PENC' | 'CONF' | 'REJE' | 'APPR' | 'ISSU' | 'SURR' | 'SUBM' | 'VOID' | 'REQS' | 'CMPL' | 'HOLD' | 'RELS' | 'CANC': Event Code as in DCSA standard (if applicable)
      - `status` 'CEP' | 'CPS' | 'CGI' | 'CLL' | 'VDL' | 'VAT' | 'CDT' | 'TSD' | 'CLT' | 'VDT' | 'VAD' | 'CDD' | 'CGO' | 'CDC' | 'CER' | 'LTS' | 'BTS' | 'UNK': 3 characters event identifier
      - `date` string, date-time: Event date in localtime
      - `isActual` boolean: True if the date is actual, false if estimated/
      - `isAdditionalEvent` boolean: False if the event data comes from the shipping line, true if it's calculated by Sinay from other sources
      - `routeType` 'SEA' | 'LAND'
      - `transportType` 'VESSEL' | 'BARGE' | 'FEEDER' | 'TRUCK' | 'RAIL' | 'AIR'
      - `vessel` Vessel: Ordered list of vessels involved in the shipment transportation.
        - `name` string: Vessel Name
        - `imo` integer: Unique IMO identifier of the vessel.
        - `callSign` string: Call sign of the vessel when provided.
        - `mmsi` integer: Maritime Mobile Service Identity number.
        - `flag` string: 2 letters country code (as in UNECE database)
      - `voyage` string: Voyage identifier if applicable.
  - `routeData` RouteData
    - `routeSegments` RouteSegment[]
      - `path` Coordinates[]
        - `lat` number, float
        - `lng` number, float
      - `routeType` 'SEA' | 'LAND'
    - `coordinates` Coordinates
      - `lat` number, float
      - `lng` number, float
    - `ais` Ais
      - `status` 'OK' | 'NOT_ON_BOARD' | 'NO_AIS_DATA'
      - `data` AisData
        - `lastEvent` AisDataEvent: Last event provided by the shipping line for the vessel
          - `description` string
          - `date` string, date-time
          - `voyage` string
        - `dischargePort` AisDataPort
          - `name` string
          - `countryCode` string
          - `code` string
          - `date` string, date-time
          - `dateLabel` 'ETA' | 'ATA' | 'ETD' | 'ATD'
        - `vessel` Vessel: Ordered list of vessels involved in the shipment transportation.
          - `name` string: Vessel Name
          - `imo` integer: Unique IMO identifier of the vessel.
          - `callSign` string: Call sign of the vessel when provided.
          - `mmsi` integer: Maritime Mobile Service Identity number.
          - `flag` string: 2 letters country code (as in UNECE database)
        - `lastVesselPosition` AisCoordinates
          - `lat` number, float
          - `lng` number, float
          - `updatedAt` string, date-time
        - `departurePort` AisDataPortWithoutName
          - `countryCode` string
          - `code` string
          - `date` string, date-time
          - `dateLabel` 'ETA' | 'ATA' | 'ETD' | 'ATD'
        - `arrivalPort` AisDataPortWithoutName
          - `countryCode` string
          - `code` string
          - `date` string, date-time
          - `dateLabel` 'ETA' | 'ATA' | 'ETD' | 'ATD'
        - `updatedAt` string, date-time

---

[API](https://skmtc.dev/sinay/apis/api-container-tracking.md) - [All operations](https://skmtc.dev/sinay/apis/api-container-tracking/llms.txt) - [OpenAPI document](https://skmtc.dev/sinay/apis/api-container-tracking/revisions/c62d97358d47?raw)
