Ocean Shipment Schema Overview
Ocean Tracking uses Project44's Unified Shipment Tracking Schema to provide visibility into ocean shipments. This schema includes various identifiers and data points that help in tracking and managing ocean shipments effectively.
TrackedShipmentHistory($)
The basic structure of the unified shipment schema can be understood by looking at the Get Full Tracking History API response (shown below). Further sections of this page delve into more detailed explanation of the schema, particularly focusing on ocean shipment tracking.
Shipment tracking model used to initiate a shipment.
All states that the shipment was or currently is in. Order is not guaranteed.
All events that occurred for this shipment. Will always be in ascending order by the date the event occurred.
All costs incurred for this shipment and the assets contained within.
This model is populated when the data is shared across tenants, it conditionally describes which tenant(s) are involved with the shared data using tenant name and tenant UUID.
${ShipmentEventHistory.apiModel.exceptions.value}
Contents of the shipment, including product categories and set points for temperature sensitive shipments.
${ShipmentEventHistory.apiModel.sensorContext.value}
Locations where this shipment has been recorded. Data may be down-sampled. Will always be in ascending order by the date that the shipment was at that position.
This schema is used to represent the full tracking history of a shipment, including all events and position history. Whereas Get Shipment Event History API and Get Shipment Position History API response schemas only represent the events and positions for a specific shipment respectively. Both the schemas have the same structure, but the TrackedShipmentHistory
schema is a superset of the other two.
$.shipment.identifiers
Identifiers are typically used to identify a shipment. They can be used while creating a shipment to initiate tracking. P44 ocean tracking system also adds identifiers to the shipment as they are received from various data sources.
The standard which defines who assigns the identifier and what it identifies. Required field.
The value of this identifier. Required field.
$.shipment.identifiers[].type
.type | Description |
---|---|
BILL_OF_LADING | A unique document issued by the carrier, serving as a contract of carriage and receipt of goods |
BOOKING_NUMBER | The reference number assigned by the carrier or forwarder to the shipment reservation for tracking and management purposes |
HOUSE_BILL_OF_LADING | A bill of lading issued by a freight forwarder or NVOCC, not the ocean carrier, documenting the agreement between shipper and forwarder |
TRACKING_NUMBER | A code assigned by the carrier or forwarder to track the movement and status of the shipment through its journey |
CONTAINER_ID | The unique alphanumeric identifier assigned to an individual shipping container, registered and standardized globally |
CONTAINER_TYPE | The specific code or designation indicating the type and size of the container (e.g., 20DC, 40HC) |
CARRIER_SCAC | The Standard Carrier Alpha Code—a four-letter code uniquely identifying an ocean carrier, used in tracking |
CARRIER_NAME | The standard name of the ocean carrier used in tracking, as defined in P44 system |
CARRIER_MASTER_ID | The unique identifier assinged to the carrier by Project44 |
FFW_SCAC | The SCAC (Standard Carrier Alpha Code) for a freight forwarder, identifying the forwarder in transportation and logistics documents |
FFW_NAME | The name of the freight forwarder used in tracking, as defined in P44 system |
FFW_MASTER_ID | The unique identifier assigned to the freight forwarder by Project44 |
NVOCC_SCAC | The SCAC for a Non-Vessel Operating Common Carrier (NVOCC), used to identify the NVOCC in transactions and documents |
NVOCC_NAME | The name of the NVOCC used in tracking, as defined in P44 system |
NVOCC_MASTER_ID | The unique identifier assigned to the NVOCC by Project44 |
POL_QUALITY_CONTROL_PROVIDER | The SCAC of the quality control provider for the Port of Loading, in context of RoRo shipments |
POD_QUALITY_CONTROL_PROVIDER | The SCAC of the quality control provider for the Port of Discharge, in context of RoRo shipments |
EXPORT_CUSTOMS_BROKER | The SCAC of the customs broker handling export clearance for the shipment, if applicable |
IMPORT_CUSTOMS_BROKER | The SCAC of the customs broker handling import clearance for the shipment, if applicable |
$.shipment.routeInfo.stops
Stops represent the various locations where the ocean shipment or a container passes through during its journey. There may be 0 stops while we are still acquiring data for this shipment.
The id of this stop. Will always be populated on response.
The type of stop.
The location of the stop.
$.shipment.routeInfo.stops[].type
.type | Description |
---|---|
ORIGIN | The initial point where the shipment begins, typically the shipper |
DESTINATION | The final point where the shipment is intended to be delivered |
PORT_OF_LOADING | The port where the cargo / container is loaded onto the vessel |
PORT_OF_DISCHARGE | The port where the cargo / container is unloaded from the vessel |
TRANSSHIPMENT_PORT | A port where the cargo is transferred from one vessel to another |
PICKUP | The location where empty container is picked up by the shipper or forwarder |
RETURN | The location where the empty container is returned after unloading |
ORIGIN_CFS | The Container Freight Station at the origin where cargo is consolidated into a container |
DESTINATION_CFS | The Container Freight Station at the destination where cargo is deconsolidated into a container |
TRANSFER | A stop where the cargo is transferred between different modes of transport, typically a Rail Ramp, Container Yard or Barge Dock |
$.shipment.routeInfo.stops[].location.identifiers[].type
.location.identifiers[].type | Description |
---|---|
PORT_UN_LOCODE | The UN Location Code (UN/LOCODE) for the port, a five-character code used to identify locations globally. |
LOCODE | The UN Location Code (UN/LOCODE) for any location, a five-character code used to identify locations globally. |
FACILITY_ID | A unique identifier for the facility, such as a terminal or container depot or CFS, where the stop occurs. |
$.shipment.routeInfo.routeSegments
The route segments represent the various transportation modes and segments of the ocean shipment's journey. They contain information about how the shipment moved from each stop to the next.
The id of this route segment. Will always be populated on response. Should not be populated by the client - the ID is automatically generated based on from- and to- stops.
The starting stop of this route segment. Will always be populated on response.
The ending stop of this route segment. Will always be populated on response.
The mode of transportation on which the shipment was traveling. Will always be populated on response.
Identifiers that are not part of the overall shipment but are relevant to this route segment.
Describes emission data.
$.shipment.routeInfo.routeSegments[].transportationMode
.transportationMode | Description |
---|---|
OCEAN | Indicates that shipment is being transported by sea. This is the primary mode for ocean shipments. |
RAIL | Indicates that shipment is being transported by rail, often used for intermodal transport. |
TRUCK | Indicates that shipment is being transported by truck, typically for last-mile delivery or inland transport. |
BARGE | Indicates that shipment is being transported by barge, often used for inland waterways. |
UNKNOWN | Indicates that the transportation mode is not specified or unknown. This can happen if the data is incomplete or not provided by the data provider. |
$.shipment.routeInfo.routeSegments[].identifiers[].type
.identifiers[].type | Description |
---|---|
VESSEL_NAME | The name of the vessel used for the ocean transport, |
VESSEL_IMO | The International Maritime Organization (IMO) number, also known as Lloyd’s code, a unique identifier for the vessel. |
VESSEL_MMSI | The Maritime Mobile Service Identity (MMSI) number, a unique nine-digit number used to identify the vessel in maritime communication. |
VESSEL_CALL_SIGN | The call sign of the vessel, used for radio communication and identification. |
VOYAGE_NUMBER | The voyage number assigned to the specific journey of the vessel, used for tracking and scheduling purposes. |
CARRIER_SCAC | The SCAC of the Ocean Carrier responsible for this segment of the shipment. |
VESSEL_P44_ID | The unique identifier for the vessel in Project44's system, used for internal tracking and management. |
CONTAINER_ID | Container ID associated with this segment, applicable if its an LCL shipment. |
$.shipment.plan
${ShipmentPlan.apiModel.expectedTransportationModes.value}
${ShipmentPlan.apiModel.exclusions.value}
Configuration for vessel tracking on a shipment.
$.events
Events represent significant occurrences in the lifecycle of an ocean shipment. They are used to track the progress of the shipment and provide visibility into its status and milestones.
The time when this event occurred. If relevant, the offset will be relative to where the event occurred, otherwise will be in UTC. Will only be populated for events that have already happened.
The time when project44 received or calculated this event. Will only be populated for events that have already happened.
The unique identifier of the event. Might not be provided for shipments created in 2024 and earlier.
The type of event that occurred. Will always be populated.
A human readable description of this event. Optional response field.
If relevant, this will be populated with the id of the stop to which this event relates.
If relevant, this will be populated with the id of a route segment on which this event occurred. This can be used to associate the event with a specific vehicle.
The estimated time that this event is likely to occur. Only populated if event has not occurred yet.
The time when project44 last calculated the estimate for this event. Only populated if event has not occurred yet.
The planned time when this event is scheduled to occur. If plannedEndDateTime is set, this is the start of the planned window of time for the event.
The end of the planned window of time for the event.
A list of times retrieved from different sources.
Optional extended details of an event.
$.events[].details.ocean.code
stopType = $.shipment.routeInfo.stops[id=.stopId].type
The stopType column in the following tables indicates the type of stop where the event occurred. It can be determined by matching the stopId in the event with the id of the list of stops in the shipment routeInfo.
Routing Milestones
.details.ocean.code | .type | stopType | Description |
---|---|---|---|
GATE_OUT_EMPTY_CONTAINER_AT_TERMINAL | GATE_OUT_EMPTY | PICKUP | Empty container leaves terminal for positioning to an exporter, forwarder, or shipper. |
ARRIVAL_OF_EMPTY_CONTAINER_AT_ORIGIN | ARRIVAL_AT_STOP , GATE_IN_EMPTY | ORIGIN | Empty container arrives at shipper’s or origin facility, ready for loading. |
READY_FOR_PICK_UP_AT_ORIGIN | STUFF | ORIGIN | Loaded cargo is ready and awaiting pickup from shipper’s premises or warehouse. |
PICKED_UP_AT_ORIGIN | PICKED_UP , GATE_OUT_FULL | ORIGIN | Loaded cargo is picked up from shipper/origin and is en route to the next stop. |
ARRIVAL_AT_INLAND_EXPORT_TERMINAL | ARRIVAL_AT_STOP , GATE_IN_FULL | TRANSFER | Loaded cargo arrives at an inland terminal to be transferred onto another mode. |
DISCHARGE_AT_INLAND_EXPORT_TERMINAL | DISCHARGE | TRANSFER | Cargo is unloaded from a vehicle or train at the inland export terminal. |
LOAD_AT_INLAND_EXPORT_TERMINAL | LOAD | TRANSFER | Cargo is loaded onto a vehicle or train for onward movement, typically to the port. |
DEPARTURE_FROM_INLAND_EXPORT_TERMINAL | DEPARTURE_FROM_STOP , GATE_OUT_FULL | TRANSFER | Loaded cargo departs the inland export terminal on its way to the port or next stop. |
GATE_IN_FULL_AT_PORT_OF_LOADING | GATE_IN_FULL , ARRIVAL_AT_STOP | PORT_OF_LOADING | Loaded cargo arrives and registers entry at the port of loading terminal. |
SHORT_SHIPPED_AT_PORT_OF_LOADING | PORT_OF_LOADING | Cargo was scheduled for a vessel but did not get loaded, usually due to space constraints. | |
CONTAINER_ROLLED_AT_PORT_OF_LOADING | ROLLED_OVER | PORT_OF_LOADING | Cargo was rolled to a later vessel at the port of loading, missing its scheduled voyage. |
LOAD_ONTO_VESSEL_AT_PORT_OF_LOADING | LOAD | PORT_OF_LOADING | Cargo is physically loaded onto the booked vessel at the port of loading. |
VESSEL_DEPARTURE_FROM_PORT_OF_LOADING | DEPARTURE_FROM_STOP | PORT_OF_LOADING | Vessel with loaded cargo departs from the port of loading, starting the ocean voyage. |
VESSEL_ARRIVAL_AT_TRANSSHIPMENT_PORT | ARRIVAL_AT_STOP | TRANSSHIPMENT_PORT | Vessel arrives at a transshipment port where cargo may be shifted to another vessel. |
DISCHARGE_FROM_VESSEL_AT_TRANSSHIPMENT_PORT | DISCHARGE | TRANSSHIPMENT_PORT | Cargo is unloaded from the vessel at the transshipment port for onward transit. |
SHORT_SHIPPED_AT_TRANSSHIPMENT_PORT | TRANSSHIPMENT_PORT | Cargo did not get loaded onto the next vessel at the transshipment port. | |
CONTAINER_ROLLED_AT_TRANSSHIPMENT_PORT | ROLLED_OVER | TRANSSHIPMENT_PORT | Cargo’s movement was postponed to a subsequent vessel at the transshipment port. |
LOAD_ONTO_VESSEL_AT_TRANSSHIPMENT_PORT | LOAD | TRANSSHIPMENT_PORT | Cargo is loaded onto the outbound vessel at the transshipment port. |
VESSEL_DEPARTURE_FROM_TRANSSHIPMENT_PORT | DEPARTURE_FROM_STOP | TRANSSHIPMENT_PORT | Vessel departs from the transshipment port. |
VESSEL_ARRIVAL_AT_PORT_OF_DISCHARGE | ARRIVAL_AT_STOP | PORT_OF_DISCHARGE | Vessel arrives at the port of discharge where the cargo will be unloaded. |
DISCHARGE_FROM_VESSEL_AT_PORT_OF_DISCHARGE | DISCHARGE | PORT_OF_DISCHARGE | Cargo is unloaded from the vessel at the port of discharge. |
SHORT_SHIPPED_AT_PORT_OF_DISCHARGE | PORT_OF_DISCHARGE | Cargo was not unloaded as originally planned at the port of discharge. | |
GATE_OUT_FULL_AT_PORT_OF_DISCHARGE | GATE_OUT_FULL , DEPARTURE_FROM_STOP | PORT_OF_DISCHARGE | Full cargo leaves the port terminal for delivery to a consignee or inland point. |
HANDOVER_TO_THIRD_PARTY | HANDOVER | PORT_OF_DISCHARGE | Carrier transfers custody of the cargo to a third-party agent. |
ARRIVAL_AT_INLAND_IMPORT_TERMINAL | ARRIVAL_AT_STOP , GATE_IN_FULL | TRANSFER | Cargo arrives at an inland import terminal for intermodal transfer or further delivery. |
DISCHARGE_AT_INLAND_IMPORT_TERMINAL | DISCHARGE | TRANSFER | Cargo is unloaded from a vehicle or train at the inland import terminal. |
LOAD_AT_INLAND_IMPORT_TERMINAL | LOAD | TRANSFER | Cargo is loaded onto a delivery vehicle at the import terminal for final delivery. |
DEPARTURE_FROM_INLAND_IMPORT_TERMINAL | DEPARTURE_FROM_STOP , GATE_OUT_FULL | TRANSFER | Full cargo departs from the terminal to its final destination. |
ARRIVAL_OF_FULL_CONTAINER_AT_CONSIGNEE | ARRIVAL_AT_STOP | DESTINATION | Cargo arrives at the consignee’s facility, ready for unloading. |
PROOF_OF_DELIVERY | DELIVERY | DESTINATION | Documented confirmation that cargo has been delivered to the consignee. |
READY_FOR_PICKUP_EMPTY_CONTAINER_AT_CONSIGNEE_LOCATION | STRIP | DESTINATION | After unloading, empty container is available at the consignee location for pickup/return. |
PICKED_UP_EMPTY_CONTAINER_FROM_CONSIGNEE | DEPARTURE_FROM_STOP | DESTINATION | Empty container is picked up from the consignee’s facility, starting the return journey. |
GATE_IN_EMPTY_CONTAINER_AT_TERMINAL | GATE_IN_EMPTY | RETURN | Empty container is returned and gated in at the container terminal or depot. |
LCL Specific Milestones
.details.ocean.code | .type | stopType | Description |
---|---|---|---|
ARRIVAL_AT_ORIGIN_CFS_OR_WAREHOUSE | ARRIVAL_AT_STOP | ORIGIN , ORIGIN_CFS | The cargo arrives at the origin Container Freight Station (CFS) or warehouse, ready to be prepared for export. This is where consolidation of shipments typically occurs before container loading. |
LOAD_AT_ORIGIN_CFS_OR_WAREHOUSE | LOAD | ORIGIN , ORIGIN_CFS | The cargo is loaded (stuffed) into the container at the origin CFS or warehouse. This marks the point when the cargo is physically secured inside the container, ready for further transport. |
DEPARTURE_FROM_ORIGIN_CFS_OR_WAREHOUSE | DEPARTURE_FROM_STOP | ORIGIN , ORIGIN_CFS | The loaded container departs from the origin CFS or warehouse, beginning its journey to the port or next logistics facility. |
ARRIVAL_AT_TRANSSHIPMENT_CFS | ARRIVAL_AT_STOP | TRANSSHIPMENT_PORT | The container or cargo arrives at an intermediate CFS located at a transshipment port, where cargo may be transferred to another container or vessel for onward transport. |
DISCHARGE_AT_TRANSSHIPMENT_CFS | DISCHARGE | TRANSSHIPMENT_PORT | The cargo is unloaded (stripped) at the transshipment CFS, usually for reconsolidation or transfer to a different transport mode or vessel. |
LOAD_INTO_CONTAINER_AT_TRANSSHIPMENT_CFS | LOAD | TRANSSHIPMENT_PORT | The cargo is reloaded (stuffed) into a new container at the transshipment CFS for continuation of its journey, often as part of a vessel or mode change. |
DEPARTURE_FROM_TRANSSHIPMENT_CFS | DEPARTURE_FROM_STOP | TRANSSHIPMENT_PORT | The container or cargo departs the transshipment CFS, proceeding on to the destination or next transfer point in the supply chain. |
ARRIVAL_AT_DESTINATION_CFS_OR_WAREHOUSE | ARRIVAL_AT_STOP | DESTINATION , DESTINATION_CFS | The container or cargo arrives at the destination CFS or warehouse, where it will be unpacked or destuffed for final delivery. |
STRIP_AT_DESTINATION_CFS_OR_WAREHOUSE | STRIP | DESTINATION , DESTINATION_CFS | The cargo is stripped (unloaded) from the container at the destination CFS or warehouse, making it available for pickup by the final consignee. |
DEPARTURE_FROM_DESTINATION_CFS_OR_WAREHOUSE | DEPARTURE_FROM_STOP | DESTINATION , DESTINATION_CFS | The cargo departs the destination CFS or warehouse for final mile delivery to the consignee, completing the LCL ocean shipment process. |
Informational Milestones
.details.ocean.code | .type | stopType | Description |
---|---|---|---|
BOOKING_CONFIRMED_BY_FFW | INFO | ORIGIN | Confirmation received from the freight forwarder that the cargo booking has been arranged and is accepted for shipment. |
BOOKING_CONFIRMED_BY_OCEAN_CARRIER | INFO | ORIGIN | Confirmation received from the ocean carrier that the space booking for the container or cargo on the vessel is secured and accepted. |
BOOKING_CANCELLED | INFO | ORIGIN | Notification that a previously confirmed booking for shipment has been cancelled, either by the shipper, forwarder, or carrier. |
EXPORT_CUSTOMS_DOCS_FILING | CUSTOMS_DOCS_FILING | ORIGIN , PORT_OF_LOADING , TRANSFER | Filing of necessary export documents with customs authorities at the origin, port of loading, or transfer point to begin the clearance process. |
EXPORT_CUSTOMS_HOLD | CUSTOMS_HOLD | TRANSFER | The cargo or shipment has been placed on hold by export customs authorities during transfer possibly due to review, inspection, or documentation issues. |
EXPORT_CUSTOMS_CLEARANCE | CUSTOMS_CLEARANCE | ORIGIN , PORT_OF_LOADING , TRANSFER | The cargo has successfully cleared export customs formalities at the relevant location, authorizing it for onward shipment. |
IMPORT_CUSTOMS_DOCS_FILING | CUSTOMS_DOCS_FILING | PORT_OF_DISCHARGE , DESTINATION , TRANSFER | Required import documentation is filed with customs authorities at the port of discharge, final destination, or a transfer point to initiate import clearance. |
IMPORT_CUSTOMS_HOLD | CUSTOMS_HOLD | TRANSFER | The incoming cargo is detained by customs at a transfer facility pending additional review, possibly due to incomplete paperwork or inspection requirements. |
IMPORT_CUSTOMS_CLEARANCE | CUSTOMS_CLEARANCE | PORT_OF_DISCHARGE , DESTINATION , TRANSFER | Import customs authorities have granted clearance for the shipment, allowing onward delivery or final release to the consignee. |
CARRIER_HOLD_AT_PORT_OF_DISCHARGE | CARRIER_HOLD | PORT_OF_DISCHARGE | Cargo is placed on hold by the carrier at the port of discharge, often because of pending freight payment, missing documents, or regulatory holds. |
CARRIER_RELEASE_AT_PORT_OF_DISCHARGE | RECEIVE_FROM_CARRIER | PORT_OF_DISCHARGE | The carrier has released the cargo at the port of discharge, typically after all holds are resolved and obligations are met, making it available for pickup. |
CONSIGNEE_NOTIFY | CONSIGNEE_NOTIFY | TRANSFER | Notice has been sent to the consignee or their agent that the shipment is available or has arrived at a transfer point, port, or terminal. |
EXPORT_HOLD | HELD | PORT_OF_LOADING | Shipment is held at the port of loading possibly due to export restrictions, pending paperwork, regulatory issues, or operational reasons. |
EXPORT_AVAILABLE | AVAILABLE | PORT_OF_LOADING | Shipment is fully cleared and available at the port of loading, ready for loading onto the vessel. |
IMPORT_HOLD | HELD | PORT_OF_DISCHARGE | Cargo is held at the port of discharge, possibly due to customs, compliance, unpaid charges, or incomplete delivery arrangements. |
IMPORT_AVAILABLE | AVAILABLE | PORT_OF_DISCHARGE | Shipment is available at the port of discharge, having cleared customs and resolved all holds, and can now proceed to the consignee. |
$.events[].type
Events Without Ocean Code
.type | stopType | Description |
---|---|---|
REMOVED_FROM_BOOKING | - | Indicates that the container has been removed from the booking, typically due to cancellation or changes in plans. This event does not have a specific stop type associated with it. |
CUSTOMS_TRANSIT_DOCS_ISSUED | - | Customs transit documents have been issued, allowing cargo to be transported from the port/airport to another location for final import customs clearance. |
CUSTOMS_TRANSIT_DOCS_CLOSED | - | Customs transit is complete and documents are closed, indicating that the shipment has completed its transit and actual import customs clearance can begin. |
P44 Generated Events
The .dateTimes[].source
field for these events is typically P44
, indicating that they are generated by Project44's internal systems.
.type | Description |
---|---|
TRACKING_INITIATE | Indicates that tracking has been initiated for the shipment. |
TRACKING_START | Indicates that tracking has started for the shipment, typically after receiving the first update from the data provider. |
TRACKING_STOP | Indicates that tracking has stopped for the shipment, either due to completion or manual intervention. |
TRACKING_END_BY_USER | Indicates that tracking has been manually ended by the user for the shipment using API or Movement UI. |
TRACKING_END_DUE_TO_TIMEOUT | Indicates that tracking has ended due to a timeout, typically when no updates are received for a certain period. |
$.events[].dateTimes
Each ocean event can be retrieved from various ocean data sources or providers, and the most reliable source is chosen by Project44 based on certain rules and heuristics. The dateTimes
field in the event schema contains a list of entries for the event, each with a source
field indicating the source of the event. The selected
field indicates which source was preferred for that event by Project44.
The type of the dateTime provided.<br><br>PLANNED - Denotes that a dateTime is planned or scheduled to occur.<br>ACTUAL - Denotes that a dateTime actually occurred.<br>ESTIMATE - Denotes that a dateTime is a calculated estimate.
The time that this event occurred or will occur. If accompanied by endDateTime, this value denotes the start time of the resulting window.
The end time of the window in which the event occurred or will occur.
Denotes when the provided dateTime was last modified.
The source of the provided dateTime.<br><br>UNKNOWN - The source of the provided dateTime is unknown.<br>CARRIER -The dateTime is provided by CARRIER.<br>BROKER - The dateTime is provided by BROKER.<br>FFW - The dateTime is provided by FFW.<br>USER - The dateTime is provided by USER. Can only provide this value in POST/PUT. <br>CONTRACT - Contractually defined dateTime. <br>GEOFENCE - The dateTime is provided by GEOFENCE logic.<br>FACILITY - The dateTime is provided by a facility (e.g. terminal, airport, container depot, cross-dock station).<br>P44 - The dateTime is calculated by other P44 services.
An optional list of standardized 3rd party identifiers which provide more detail about the source of this dateTime. Can indicate a specific device, vehicle, carrier, or other freight entity.
Denotes whether this dateTime is the one used as the top level dateTime of the event.
A number that indicates the order in which dateTimes of the same type and source were received.
$.events[].dateTimes[].source
.dateTimes[].source | Description |
---|---|
CARRIER | The event was retrieved from an ocean carrier connection |
FFW | The event was retrieved from a freight forwarder connection |
NVOCC | The event was retrieved from a Non-Vessel Operating Common Carrier (NVOCC) connection |
GEOFENCE | The event was retrieved from Project44's AIS vessel detection system |
BROKER | The event was retrieved from a customs broker connection |
FACILITY | The event was retrieved from a facility connection, such as a port, terminal or depot |
P44 | The event was generated by Project44's internal systems |
$.events[].details.qualityControl.code
.details.qualityControl.code | .type | Description |
---|---|---|
SURVEY | SURVEY | Shipment is surveyed by quality control. |
HELD | HELD | Shipment is held by quality control. |
DAMAGE_HELD | HELD | Shipment is held by quality control due to damage. |
PLANT_HELD | HELD | Shipment is held by quality control due to plant request. |
QUALITY_CAMPAIGN_HELD | HELD | Shipment is held by quality control due to quality campaign. |
CUSTOMS_HELD | HELD | Shipment is held by customs. |
POWER_WASH_HELD | HELD | Shipment is held by quality control for power washing. |
OTHER_HELD | HELD | Shipmen is held by quality control for other reasons. |
QUALITY_CONTROL_HELD | HELD | Shipment is held by quality control due to quality control. |
IMPORT_HELD | HELD | Shipment is held by quality control due to import hold. |
RELEASE | RELEASE | Shipment is released from hold by quality control. |
AVAILABLE | AVAILABLE | Shipment is available for pickup. |
EXPORT_SURVEY | SURVEY | Shipment is finally surveyed before export. |
$.states
States represent the status of the ocean shipment. The list contains all states that the shipment was or currently is in.
The specific type of state that the shipment was in. Will always be populated.
The time that this state began. May not be populated if the shipment is not yet in this state or if we do not have data for when this state began.
The time that this state ended. May not be populated if the shipment is still in this state.
If relevant, this will be populated with the id of the stop to which this state relates
If relevant, this will be populated with the id of a route segment on which this state occurred.
$.states[].type
.type | Description |
---|---|
AT_STOP | Indicates that the shipment is currently at a specific stop, such as a port or terminal. This state is used when the shipment is not in transit but has not yet reached its final destination. |
IN_TRANSIT | Indicates that the shipment is currently in transit, moving from one location to another. This state is used when the shipment is actively being transported, such as on a vessel or truck. |
COMPLETED | Indicates that the shipment has reached its final destination and all necessary actions have been completed. |
SCHEDULED | Indicates that the shipment is scheduled for a future date or time, but has not yet started its journey or has not yet started tracking. |
$.costs
Costs represent the various charges associated with the ocean shipment and the assets contained within.
The type of cost or fee that occurred. Will always be populated.
A list of identifiers that specify the asset to which this cost or fee pertains.
A monetary value expressing amount and currency type.
The currency of the shipment value
The value of the shipment
The current tier that is applied to calculate the costs.
$.costs[].type
.type | Description |
---|---|
EXPORT_DEMURRAGE | Typically, a fee charged by the port or terminal when a loaded export container remains within the terminal beyond the allotted free time, waiting to be loaded onto a vessel. This is usually charged to the cargo owner or exporter for using the port’s space beyond the free period. |
EXPORT_DETENTION | Typically, a charge incurred when the exporter holds onto the carrier’s empty container outside the port (for loading) beyond the agreed free time, before returning it for export stuffing or shipping. |
IMPORT_DEMURRAGE | Typically, a fee levied by the port or terminal when an import container (usually full) stays at the terminal longer than the permitted free period, after vessel discharge and before removal from the port. This is usually charged to the consignee or importer. |
IMPORT_DETENTION | Typically, a charge imposed by the shipping line when the consignee keeps the carrier’s empty container outside the port beyond the free allowed time after it has been picked up and emptied, before returning the container. |
$.costs[].tier
.tier | Description |
---|---|
FREE_PERIOD | The initial grace period during which no demurrage or detention charges apply. Containers may remain at the terminal or in possession of shipper/consignee without penalty. |
FIRST_PERIOD | The first tier of chargeable days occurring immediately after the free period. Daily demurrage or detention rates are levied at the lowest chargeable level specified in the contract. |
SECOND_PERIOD | The next chargeable period following the first period. Demurrage or detention rates per day increase to a higher level, providing a greater financial incentive to move or return containers promptly. |
THEREAFTER_PERIOD | The final and highest charge tier, applied after the second period. The daily charge typically reaches its maximum rate and remains in effect until the container is removed from the terminal or returned to the carrier. |