Truckload Notifications
Truckload notifications are updates sent to your configured webhook about the position and status changes of a Truckload (FTL) shipment. Truckload notifications are sent only if:
-
The update occurs after the shipment has been created
-
There is a change to the Truckload shipment's position (geo-coordinates) or status
Truckload notifications will not be triggered for:
-
Updates to appointment windows, attributes, or any other information that is not the shipment's position or status
-
Historical Backfill. This is any tracking update that occurred before the shipment was created.
-
Out of Order events. These are tracking updates with timestamps after shipment creation but before a previously processed update.
Updates to any of the above information can be found in the APIs (FTL or Unified) or in project44's User Interface (Movement or the Visibility Operations Center).
project44 will send a notification to your configured webhook every time a new set of geo-coordinates or status updates is received from the Carrier for an FTL shipment.
Below is a sample Webhook PUSH message using the FTL Webhook APIs. The two important components of the payload to pay attention to are the latestStatusUpdates
and statusUpdates
arrays.
The latestStatusUpdates
portion of the payload shows the most recent status update (or two most recent status updates) according to the timestamp of the status change in real life.
The statusUpdates
portion of the payload shows all status updates on the shipment, if configured. Historical Backfill and Out of Order events will not trigger a Truckload Notification, but they will be visible in the statusUpdates
section of the notification.
{ "shipment": { "carrierIdentifier": { "type": "DOT_NUMBER", "value": "string" }, "shipmentIdentifiers": [ { "type": "ORDER", "value": "string" } ], "shipmentStops": [ { "stopNumber": 1, "appointmentWindow": { "startDateTime": "2023-12-11T10:30:00", "endDateTime": "2023-12-11T10:30:00", "localTimeZoneIdentifier": "America/New_York" }, "additionalAppointmentWindows": [], "location": { "address": { "postalCode": "string", "addressLines": [ "string" ], "city": "string", "state": "string", "country": "US" }, "contact": { "companyName": "Company Name", "email": "string" } }, "locationIdentifiers": [ { "type": "SYSTEM", "value": "string" } ], "stopName": "Stop Name", "geoCoordinates": { "latitude": 39.070183, "longitude": -84.125244 }, "uuid": "string" }, { "stopNumber": 2, "appointmentWindow": { "startDateTime": "2023-12-13T08:00:00", "endDateTime": "2023-12-13T08:00:00", "localTimeZoneIdentifier": "America/New_York" }, "additionalAppointmentWindows": [], "location": { "address": { "postalCode": "string", "addressLines": [ "string" ], "city": "string", "state": "string", "country": "US" }, "contact": { "companyName": "string", "phoneNumber": "string" } }, "locationIdentifiers": [ { "type": "SYSTEM", "value": "string" } ], "stopName": "string", "geoCoordinates": { "latitude": 42.023483, "longitude": -71.60379 }, "uuid": "string" } ], "equipmentIdentifiers": [ { "type": "VEHICLE_ID", "value": "string" } ], "sensors": [], "shippingDetails": { "multipleDrivers": false }, "trackingDetails": [ { "trackingType": "TELEMATICS", "equipmentIdentifier": { "type": "VEHICLE_ID", "value": "string" }, "equipmentIdentifierSource": "CUSTOMER" } ], "apiConfiguration": { "fallBackToDefaultAccountGroup": false, "webhookEndpointConfigName": "P44_TL_WebHook" }, "attributes": [], "id": 0, "shipmentLegId": "string", "masterShipmentId": "string", "idleDuration": 0, "equipmentIdentifierChanges": [], "pointsOfInterest": [] }, "latestStatusUpdate": { "timestamp": "2023-12-12T00:48:02-0500", "statusCode": "IN_TRANSIT", "statusReason": { "code": "IDLE", "description": "The vehicle is idle." }, "geoCoordinates": { "latitude": 39.656254, "longitude": -84.61627 }, "address": { "postalCode": "string", "addressLines": [], "city": "string", "state": "string", "country": "US" }, "stopNumber": 2 }, "statusUpdates": [ { "timestamp": "2023-12-12T00:48:02-0500", "statusCode": "IN_TRANSIT", "statusReason": { "code": "IDLE", "description": "The vehicle is idle." }, "geoCoordinates": { "latitude": 39.656254, "longitude": -84.61627 }, "address": { "postalCode": "string", "addressLines": [], "city": "string", "state": "string", "country": "US" }, "stopNumber": 2 }, { "timestamp": "2023-12-12T00:28:02-0500", "statusCode": "IN_TRANSIT", "statusReason": { "code": "IDLE", "description": "The vehicle is idle." }, "geoCoordinates": { "latitude": 39.656254, "longitude": -84.61627 }, "address": { "postalCode": "string", "addressLines": [], "city": "string", "state": "string", "country": "US" }, "stopNumber": 2 } ], "sensorHistories": [], "latestStopStatuses": [ { "stopNumber": 1, "statusCode": "DEPARTED", "arrivalCode": "EARLY", "arrivalDateTime": "2023-12-11T09:21:50-0500", "departureDateTime": "2023-12-11T12:02:04-0500", "additionalAppointmentWindowStatuses": [] }, { "stopNumber": 2, "statusCode": "EN_ROUTE", "arrivalEstimate": { "estimatedArrivalWindow": { "startDateTime": "2023-12-13T05:32:02-0500", "endDateTime": "2023-12-13T08:00:00-0500" }, "lastCalculatedDateTime": "2023-12-12T00:48:02-0500" }, "arrivalCode": "UNKNOWN", "additionalAppointmentWindowStatuses": [] } ], "pointOfInterestStatus": [], "infoMessages": [ { "severity": "INFO", "message": "Current time is before start of pickup window", "diagnostic": "Too Early", "source": "SYSTEM" } ] }
For more information on FTL Webhooks, see project44's Developer Portal documentation.
If you are using Unified API, please refer to the Webhook Guide to set up and manage your webhook. The pushed message will have the Get full tracking history payload. For more information on using project44's Unified APIs for FTL Visibility, see project44's FTL Visibility API Guide for Shippers.