Skip to main content

Documentation Index

Fetch the complete documentation index at: https://terminal49-codex-docs-audit-diataxis-skill.mintlify.app/llms.txt

Use this file to discover all available pages before exploring further.

Data Sources

  • Ocean carriers (aka steamship lines): bill of lading/booking details, vessel eta, containers and milestones
  • Container terminal operators: container availability, last free day, holds, fees etc
  • Container rail carriers: container milestones via rail
  • Vessel position data: vessel details and location tracking for entitled vessel, routing, and map features. Coverage and freshness vary by vessel and data source.

Supported ocean carriers

The table below is the docs-published carrier coverage matrix. Coverage can vary by number type and source availability.
CarrierNicknameSCACBOL prefixSupportNotes
American President LinesAPLAPLUAPLUYes-
Australia National LineANLANNUANLCYes-
China Ocean Shipping CompanyCOSCOCOSUCCMJYes-
CMA CGMCMA CGMCMDUCMDUYes-
EvergreenEvergreenEGLVEISUYes-
Hamburg SudHamburg SudSUDUSUDUYes-
Hapag-LloydHapag-LloydHLCUHLCUYes-
Hyundai Merchant MarineHyundaiHDMUHDMUPartialNo container numbers
MaerskMaerskMAEUMAEUYes-
Matson Navigation CompanyMatsonMATSMATSYes-
Mediterranean Shipping CompanyMSCMSCUMEDUYes-
Ocean Network ExpressONEONEYONEYYes-
Orient Overseas Container LineOOCLOOLUOOLUYes-
Pacific International LinesPILPCIUPABVYes-
Safmarine Container LineSafmarineSAFMSAFMYes-
SeaLandSeaLandSEALSEAUYes-
Yangming Marine TransportYangmingYMLUYMLUYes-
Wan Hai LinesWan HaiWHLCWHLCYes-
MatsonMatsonMATS-On roadmap-
ZimZimZIMUZIMUYes-
Seaboard MarineSeaboardCLAM-On roadmap-
CrowleyCrowleyCLAM-On roadmap-
You can also use the Auto-Detect Carrier API to automatically identify the SCAC from a tracking number.

Ports and terminals

The table below is the docs-published terminal coverage matrix. Terminal data availability can vary by field, terminal source, and shipment state.
TerminalNicknameFIRMS codePortPort codeSupport
Dundalk Marine TerminalDundalkA321BaltimoreUSBALYes
Seagirt TerminalSeagirtC324BaltimoreUSBALYes
Paul W Conley TerminalConley TerminalA295BostonUSBOSYes
Barbours Cut TerminalAPMS787HoustonUSHOUYes
Bayport Container TerminalBayportV136HoustonUSHOUYes
SSA CooperSSA CooperN296JAXPORTUSJAXYes
Trapac Jacksonville TerminalTrapac JacksonvilleM029JAXPORTUSJAXYes
Long Beach Container TerminalLBCT Pier FW183Long BeachUSLGBYes
Long Beach Container TerminalLBCT Pier EWAC8Long BeachUSLGBYes
Total Terminals InternationalTTIZ952Long BeachUSLGBYes
International Transportation ServiceITSY309Long BeachUSLGBYes
Pacific Container TerminalPCTW182Long BeachUSLGBYes
SSA Pier APier AZ978Long BeachUSLGBYes
APM TerminalsAPMTW185Los AngelesUSLAXYes
Fenix Marine ServicesFMSY257Los AngelesUSLAXYes
West Basin Container TerminalWBCTY773Los AngelesUSLAXYes
Everport Terminal SerivcesETSY124Los AngelesUSLAXYes
TraPac LATraPac LAY258Los AngelesUSLAXYes
Yusen TerminalsYusenY790Los AngelesUSLAXYes
Port of Miami Terminal Operating CompanyPOMTOCL239Miami SeaportUSMIAYes
South Florida Container TerminalSFCTN775Miami SeaportUSMIAYes
APM TerminalAPM MobileR103MobileUSMOBYes
Napoleon Container TerminalNapoleonP260New OrleansUSMSYYes
New Orleans TerminalMilanQ795New OrleansUSMSYYes
Port ElizabethAPM TerminalsE425New York / New JerseyUSNYCYes
GCT New York LPGCTE005New York / New JerseyUSNYCYes
Maher TerminalsMaherE416New York / New JerseyUSNYCYes
GCT BayonneGCTBE364New York / New JerseyUSNYCYes
Port Newark Container TerminalPNCTF577New York / New JerseyUSNYCYes
Oakland International Container TerminalSSAZ985OaklandUSOAKYes
TraPac TerminalTraPacY549OaklandUSOAKYes
Ben E. Nutter TerminalEverportY738OaklandUSOAKYes
Packer AvenuePacker AvenueC095PhilaPortUSPHLYes
Florida International TerminalFITN751Port EvergladesUSPEFYes
Tampa Bay Container TerminalTampa BayM669Port Tampa BayUSPOTYes
Garden City TerminalsGCTL737SavannahUSSAVYes
SSA Terminal 18Terminal 18X117SeattleUSSEAYes
SSA Terminal 30Terminal 30Y197SeattleUSSEAYes
Pierce County TerminalPCTX215TacomaUSTIWYes
Husky TerminalHuskyZ693TacomaUSTIWYes
Washington United TerminalsWUTZ705TacomaUSTIWYes
Tacoma Container TerminalTCTWAM2TacomaUSTIWYes
Richmond Marine TerminalRichmond (RMT)LAQ4VirginiaUSORFYes
Portsmouth Marine TerminalPortsmouth (PMT)L045VirginiaUSORFYes
Virginia International GatewayVirginia (VIG)N195VirginiaUSORFYes
Norfolk International TerminalsNorfolk (NIT)L005VirginiaUSORFYes

Rail carriers

  • BNSF Railway
  • Canadian National Railway (CN)
  • Canadian Pacific Railway (CP)
  • CSX Transportation
  • Norfolk Southern Railway (NS)
  • Union Pacific Railroad (UP)

Known issues (ocean)

Shipment data is populated from requests to the shipping lines. Below is a list of known issues with the Terminal49 data sources:

Cma-Cgm, APL, ANL

  • No container weight
  • No container seal number

Maersk, Sealand, Safmarine

  • Shipment departure/arrival events are not always available depending on when BL is entered into system.
  • No container seal number

Hamburg Süd

  • No estimated departure time
  • No container weight
  • No container seal number

MSC

  • No container seal number

Hapag Lloyd

  • No container weight
  • No container seal number

Evergreen

  • All dates are provided as dates, not datetimes. Terminal49 records and returns them all as midnight at the location the event happened (when location is available) or midnight UTC.
  • Only Dry, Reefer, and Flatpack container types are mapped to the Terminal49 system

COSCO

  • No departure or arrival events. Does not affect departure/arrival times.

OOCL

  • No container seal number

ONE

  • Only Dry and Reefer container types are mapped to the Terminal49 system

Yang-Ming

  • When BL has multiple containers, the container weight returned is the average of the shipment. (i.e. the BL gross weight / number of containers)

Hyundai Merchant Marine

  • No container type

ZIM

  • No container weight
  • No container seal number

Westwood Shipping

  • No container weight
  • Only Dry container types are mapped to the Terminal49 system

Data fields and availability

Below is a list of data that can be retrieved via the API, including whether is is always available, or whether it is only supported by certain carriers (Carrier Dependent), certain Terminals (Terminal Dependent) or on certain types of journeys (Journey dependent).

Shipment data

Shipment data is the primary data that comes from the carrier. It containers the details of the shipment retrieved from the Bill of Lading, and references multiple container objects.
DataAvailabilityMore detailsNotes
Port of LadingAlwaysPort of Lading name, Port of Lading UN/LOCODE, Port of Lading Timezone
Port of DischargeAlwaysPort of Discharge name, Port of discharge UN/LOCODE,Port of Discharge Timezone
Final Destination beyond Port of DischargeCarrier dependent, Journey DependentDestination name, Destination UN/LOCODE, Destination UN/LOCODE, Destination TimezoneOnly for shipments with inland moves provided by or booked by the carrier.
Listing of Container NumbersAlwaysA list of container numbers with data attributes listed below
Bill of Lading NumberAlways (inputted by user)BOL
Shipping Line DetailsAlwaysSCAC, SSL Name
Voyage DetailsMilestone-basedVessel Name, Vessel IMO, Voyage Number
Estimated Time of DepartureCarrier dependentTimestamp
Actual Time of DepartureAlwaysTimestampAfter departure
Estimated Time of Arrival at Port of DischargeCarrier dependentTimestamp
Actual Time of Arrival at Port of DischargeAlwaysTimestampAvailable after arrival
Estimated Time of Arrival at Final DestinationCarrier dependent, Journey dependentTimestampOnly for vessels with inland moves.

Container data

At the container level, the following data is available. Container data is combined from all sources to create a single data view of the container. As such some of this data will only available when certain milestones have passed.
DataAvailabilityMore DetailsNotes
Container NumberAlwaysnumber
Seal NumberCarrier dependentnumber
Equipment TypeAlwaysDry, reefer, open top, flat rack, tank, hard topEnumerated data type
Equipment lengthAlways20, 40, 45, 50Enumerated Data Type
Equipment heightAlwaysStandard, high cubeEnumerated Data Type
WeightCarrier DependentNumber
Terminal AvailabilityAlwaysAvailability Known, Availability for Pickup
HoldsTerminal DependentArray of statusesEach status includes the hold name (one of: customs, freight, TMF, other, USDA) and the status (pending, hold) as well as any extra description
FeesTerminal DependentArray of statusesEach status includes the fee type (one of: Demurrage, Exam, Other) and the amount the hold is for (a float)
Last Free DayTerminal DependentDate of last free day
Arrived at Port of DischargeAlwaysOnce Arrived
Discharged at Port of DischargeAlwaysOnce discharged
Full Out at Port of DischargeAlways
Full out at final destinationJourney DependentOnly if non-port final destination
Rail Loaded At Port of DischargeJourney DependentOnly if non-port final destination
Rail Departed At Port of DischargeJourney DependentOnly if non-port final destination
Rail Carrier Scac at Port of DischargeJourney DependentOnly if non-port final destination
ETA for final destinationCarrier Dependent, Journey DependentOnly if non-port final destination
ATA for final destinationJourney DependentOnly if non-port final destination
LFD at final destinationCarrier Dependent, Journey DependentOnly if non-port final destination

Milestone event data

When a milestone passes, the Terminal49 API will ping one of your webhooks with a Milestone event. For each milestone, the following data is always provided. Container, Shipment, Vessel, Location and Terminal data will be provided as objects that contain the information listed above.
Milestone DataDescription
Event Namethe name of the event. e.g. ‘container.transport.vessel_loaded’
Created Atwhen the event was created in the Terminal49 system
Timestampwhen the event occured
TimezoneWhich timezone did the event occur in.
Voyage Numberthe voyage number of the vessel
ContainerA link to the Container Data
ShipmentA link to the Shipment Data
VesselWhich vessel did the event occur on.
LocationWhere did the event oocur.
TerminalWhich terminal did this occur at.

Milestone events supported

A list of milestones that the API can track, as well as the event name used in the API. In future, further events may be supported.
Milestone Event NameEvent Name
Vessel Loadedcontainer.transport.vessel_loaded
Vessel Departedcontainer.transport.vessel_departed
Vessel Arrivedcontainer.transport.vessel_arrived
Vessel Berthedcontainer.transport.vessel_berthed
Vessel Dischargedcontainer.transport.vessel_discharged
Empty Outcontainer.transport.empty_out
Full Incontainer.transport.full_in
Full Outcontainer.transport.full_out
Empty Incontainer.transport.empty_in
Rail Departedcontainer.transport.rail_departed
Rail Arrivedcontainer.transport.rail_arrived
Rail Loadedcontainer.transport.rail_loaded
Rail Unloadedcontainer.transport.rail_unloaded
Transshipment Arrivedcontainer.transport.transshipment_arrived
Transshipment Dischargedcontainer.transport.transshipment_discharged
Transshipment Loadedcontainer.transport.transshipment_loaded
Transshipment Departedcontainer.transport.transshipment_departed
Feeder Arrivedcontainer.transport.feeder_arrived
Feeder Dischargedcontainer.transport.feeder_discharged
Feeder Loadedcontainer.transport.feeder_loaded
Feeder Departedcontainer.transport.feeder_departed
Arrived at inland destinationcontainer.transport.arrived_at_inland_destination
Estimated Arrived at inland destinationcontainer.transport.estimated.arrived_at_inland_destination
Pickup LFD changedcontainer.pickup_lfd.changed
Available at Destinationcontainer.transport.available