Last updated

Unified Carrier Push API's

This page outlines why and how to (additionally) integrate with the Unified Carrier Push APIs to enrich your tracked shipments with additional data.

This set of endpoints allows your carrier to push events, positions and route segments to your shipments. You may also utilise these endpoints to push data to your own shipments, on behalf of your carrier, while making it look like the data was provided by your carrier. It’s essentially a separate ingress for shipment data that can live alongside all other carrier integrations that Project44 already supports out-of-the-box.

This page assumes you are already creating shipments through Project44’s unified shipment tracking API. If you’re only interested in providing data as a shipper, please utilise those endpoints instead.

Specific configuration is needed to enable the Carrier Push endpoints for your account. Please inquire with your account manager for enablement.

Push carrier events and position updates

Project44 provides two endpoints to append events and positions for a specific shipment, as a carrier:

  1. POST /services/tracking/v4/shipments/{shipmentId}/events-positions
    This endpoint allows you to append events and positions to a shipment by it’s Project44 shipment ID. The shipment ID can be obtained from the shipment creation response payload.

  2. POST /services/tracking/v4/events-positions
    This endpoint allows you to append events and positions to a shipment by specifying a list of logistics identifiers (for example ocean BOOKING_NUMBER and CARRIER_SCAC). An advantage of using this endpoint is that it doesn’t necessarily require you to store Project44’s shipment ID. Please note that when using this endpoint, we will try match the identifiers against existing shipments, which may not be perfect when providing identifiers that can be re-used across multiple shipments (examples are CONTAINER_ID’s or TRAIN_NUMBER’s).

Each endpoint allows you to push only events, only positions, or both, in a single request. Project44’s API reference can help you learn more about how to structure your requests and will show you what responses you can expect in return.

Push carrier route segments

Project44 provides two endpoints to push carrier provided route segments for a specific shipment, as a carrier:

  1. PUT /services/tracking/v4/shipments/{shipmentId}/route-segments
    This endpoint allows you to state the route segments on a shipment by it’s Project44 shipment ID. The shipment ID can be obtained from the shipment creation response payload.

  2. PUT /services/tracking/v4/route-segments
    This endpoint allows you to state the route segments on a shipment by specifying a list of logistics identifiers (for example ocean BOOKING_NUMBER and CARRIER_SCAC). An advantage of using this endpoint is that it doesn’t necessarily require you to store Project44’s shipment ID. When using this endpoint, we will match the identifiers against existing shipments, which can be imperfect when used in combination with identifiers that are re-used across multiple shipments (examples are CONTAINER_ID's or TRAIN_NUMBER’s).

Project44’s API reference can help you learn more about how to structure your requests and will show you what responses you can expect in return.

When providing both events and route segments, make sure that the stops provided on the events match the stops provided on the route segments, for all fields.