Tracking request events
These events fire when a tracking request changes status.| Event | Description |
|---|---|
tracking_request.succeeded | Shipment created and linked to the tracking request. Your tracking is active. |
tracking_request.failed | The tracking request failed. The carrier could not find the shipment. |
tracking_request.awaiting_manifest | The carrier has not yet manifested this shipment. Terminal49 will retry automatically. |
tracking_request.tracking_stopped | Terminal49 is no longer updating this tracking request (shipment delivered or manually stopped). |
Transport milestone events
These events map to physical milestones in a container’s journey. They fire in roughly chronological order as a container moves from origin to destination.Origin
| Event | Description |
|---|---|
container.transport.empty_out | Empty container picked up at port of lading. |
container.transport.full_in | Full container returned to port of lading. |
container.transport.vessel_loaded | Container loaded onto the vessel at port of lading. |
container.transport.vessel_departed | Vessel departed the port of lading. |
Transshipment
| Event | Description |
|---|---|
container.transport.transshipment_arrived | Container arrived at a transshipment port. |
container.transport.transshipment_discharged | Container discharged at the transshipment port. |
container.transport.transshipment_loaded | Container loaded onto a new vessel at the transshipment port. |
container.transport.transshipment_departed | Vessel departed the transshipment port. |
Feeder vessel
| Event | Description |
|---|---|
container.transport.feeder_arrived | Container arrived on a feeder vessel or barge. |
container.transport.feeder_discharged | Container discharged from the feeder vessel or barge. |
container.transport.feeder_loaded | Container loaded onto a feeder vessel or barge. |
container.transport.feeder_departed | Feeder vessel or barge departed. |
Destination
| Event | Description |
|---|---|
container.transport.vessel_arrived | Vessel arrived at the port of discharge. |
container.transport.vessel_berthed | Vessel berthed at the port of discharge. |
container.transport.vessel_discharged | Container discharged from the vessel at the port of discharge. |
container.transport.available | Container is available for pickup at the destination. |
container.transport.full_out | Container picked up (gated out) at the port of discharge. |
container.transport.empty_in | Empty container returned at the destination. |
Rail (inland moves)
| Event | Description |
|---|---|
container.transport.rail_loaded | Container loaded onto a rail car. |
container.transport.rail_departed | Rail car departed. |
container.transport.rail_arrived | Rail car arrived at the inland destination. |
container.transport.rail_unloaded | Container unloaded from the rail car. |
container.transport.arrived_at_inland_destination | Container arrived at the final inland destination. |
ETA and estimate events
These events fire when an estimated arrival time changes.| Event | Description |
|---|---|
shipment.estimated.arrival | ETA changed for the port of discharge. |
container.transport.estimated.arrived_at_inland_destination | ETA changed for the inland destination. |
Container update events
These events fire when container attributes change.| Event | Description |
|---|---|
container.created | A new container was added to a shipment. Common for bookings where containers are assigned after sailing. |
container.updated | One or more container attributes changed (weight, seal number, equipment type, etc.). The payload includes the updated fields. |
container.pod_terminal_changed | The port of discharge terminal assignment changed for the container. |
container.pickup_lfd.changed | The terminal Last Free Day (LFD) changed. |
container.pickup_lfd_line.changed | The shipping line Last Free Day (LFD) changed. |
Payload structure
Every webhook notification follows the same structure: adata object containing the event metadata, and an included array with the related shipment, container, and event objects.
See Payload Examples for complete JSON payloads for each event type.
Related
- Setting up webhooks — create and configure webhook endpoints
- Best practices — retry handling, idempotency, and reliability
- Webhook API Reference — programmatic webhook management