Stop Departure & Arrival Callback
When the truck departs a stop and when the truck arrives at a stop, the following notifications will be POSTed to the callback URL.
STOP_DEPARTURE callback is NOT applicable for the following StopType → empty_return_location
STOP_ARRIVAL callback is NOT applicable for the following StopType → empty_pickup_location
STOP_DEPARTURE & STOP_ARRIVAL Request Parameters
STOP_DEPARTURE
{
"AutoDeparture": false,
"BillOfLading": "ABCD123",
"BookingNumber": "123456789",
"ContainerNumber": "TCNU2728729",
"ContainerType": null,
"FourKitesLoadId": 8233886,
"LoadNumber": "MM-4713_test1",
"MessageType": "STOP_DEPARTURE",
"ProNumber": null,
"ReferenceNumbers": [],
"Scac": null,
"Shipper": "oceanshipper",
"Source": "Carrier",
"StopName": "BEANR",
"StopReferenceId": "",
"StopSequence": 2,
"StopStatus": "completed",
"StopType": "port_of_loading",
"StopUnlocode": "BEANR",
"Tags": [],
"TerminalName": "TestTerminal",
"Timestamp": "2022-10-23T15:08:44+02:00",
"Timezone": "Europe/Brussels",
"TimezoneOffset": 7200,
"TimezoneShortName": "CEST",
"FourKitesDataSource" : "Carrier",
"VesselName": "SHADOW HUNTER",
"VoyageNumber": null
}When FourKites does not detect the stop departure (auto-completion or manual completion), the following notification will be POSTed to the callback URL.
Sample callback when the stop is manually picked up:
{
"MessageType": "MANUALLY_PICKED_UP",
"FourKitesLoadId": 1689,
"LoadNumber": "Sample_test_load",
"Mode": "Web",
"ProNumber": null,
"ReferenceNumbers": null,
"Scac": "TL",
"Shipper": "testshipper",
"StopName": "Stop 1",
"DepartedAt": "2018-11-18T06:00:00-06:00",
"StopReferenceId": 73246,
"StopSequence": 1,
"StopType": "pickup",
"Tags": null,
"Timestamp": "2018-11-19T04:13:38-06:00",
"Timezone": "America/Chicago",
"FourKitesDataSource" : "Carrier",
"TimezoneOffset": -21600,
"TimezoneShortName": "CST"
}Sample callback when the stop is manually delivered:
{
"MessageType": "MANUALLY_DELIVERED",
"FourKitesLoadId": 1689,
"LoadNumber": "Sample_test_load",
"Mode": "Web",
"ProNumber": null,
"ReferenceNumbers": null,
"Scac": "TL",
"Shipper": "testshipper",
"StopName": "Stop 2",
"DepartedAt": "2018-11-18T15:00:00-06:00",
"StopReferenceId": 23423,
"StopSequence": 2,
"StopStatus": "Completed",
"StopType": "delivery",
"Tags": null,
"Timestamp": "2018-11-19T04:26:46-06:00",
"Timezone": "America/Chicago",
"FourKitesDataSource" : "Carrier",
"TimezoneOffset": -21600,
"TimezoneShortName": "CST"
}STOP_ARRIVAL
{
"BillOfLading": "ABCD123",
"BookingNumber": "123456789",
"ContainerNumber": "TCNU2728729",
"ContainerType": null,
"FourKitesLoadId": 8233886,
"LoadNumber": "MM-4713_test1",
"MessageType": "STOP_ARRIVAL",
"ProNumber": null,
"ReferenceNumbers": [],
"Scac": null,
"Shipper": "oceanshipper",
"Source": "Carrier",
"StopName": "SGSIN",
"StopReferenceId": "",
"StopSequence": 3,
"StopStatus": "at_facility",
"StopType": "transhipment_port",
"StopUnlocode": "SGSIN",
"Tags": [],
"TerminalName": "TestTerminal2",
"Timestamp": "2022-10-24T15:08:44+08:00",
"Timezone": "Asia/Kuala_Lumpur",
"TimezoneOffset": 28800,
"TimezoneShortName": "+08",
"FourKitesDataSource" : "Nil",
"VesselName": null,
"VoyageNumber": null
}FourKites Data Source List
List of Sources | Mapping Field |
|---|---|
carrier_api dispatcher_updates_api superfile... And a few more. | "FourKitesDataSource" = "Carrier" |
ds_inferred_events | "FourKitesDataSource" = "Inferred" |
eta_propagation test_ocean_carrier geofence | "FourKitesDataSource" = "nil" |
STOP_DEPARTURE & STOP_ARRIVAL Callback Parameters Field Description
Name | Description | Key Always Present? | Value Always Present? |
|---|---|---|---|
MessageType | Indicates the type of the message* | Yes | Yes |
AutoDeparture | In rare cases, we receive arrival but not departure info for the final delivery stop on a load. When this happens, FourKites marks these stops as completed by auto-departure. This is a boolean value: true/false. | Yes | Yes |
FourKitesLoadId | Unique load identifier from FourKites system if the load was successfully created (IsSuccess = true). The field will be null if the load creation failed in FourKites | Yes | No |
LoadNumber | Unique shipment identifier from shipper's system | Yes | Yes |
Mode | The source from where we received the update. For example: 'Web', 'CarrierLink' | Yes | Yes |
ProNumber | Shipment's PRO # | Yes | No |
Shipper | Unique shipper ID from FourKites | Yes | Yes |
Scac | SCAC or identifier for the carrier | Yes | Yes |
Tags | List of tags associated with the load (empty list when tags are not present) | Yes | Yes |
StopReferenceNumbers | List of reference numbers associated with the particular stop | Yes | No |
StopUnlocode | UNLOCODE of the port. Specific to Ocean loads. | Yes | No |
ReferenceNumbers | List of additional reference numbers associated with the load (empty list when no reference numbers are associated with the load) | Yes | Yes |
StopReferenceId | Reference ID of the stop provided during load creation | Yes | No |
OdometerReading | Odometer reading associated with the check call (provided only for loads moved by dedicated carriers) | Yes | No |
StopName | Name of the stop provided during load creation | Yes | Yes |
DepartedAt | Time when the truck departed the pickup stop | Yes | Yes |
StopSequence | Sequence of the stop on the load that the truck departed from | Yes | Yes |
StopStatus | Status of the current stop. When delivered on the Stop Departure callback, this value will most often be "completed" | Yes | Yes |
StopType | Stop type - pickup, delivery, port_of_loading, transhipment_port, port_of_discharge, empty_pickup_location, place_of_receipt, place_of_delivery, empty_return_location | Yes | Yes |
DeviceID | DeviceID assigned to the load | No | No |
Timestamp | Time when the truck departed the stop in stop's local time (in ISO 8601 format with local time offset to UTC) | Yes | Yes |
Timezone | Local Timezone of the stop in which Timestamp is specified. | Yes | Yes |
TimezoneShortName | Short name of Timezone of the stop in which "Timestamp" is specified. | Yes | Yes |
TimezoneOffset | Number of seconds local timezone is ahead of UTC time. Negative for western hemisphere timezones. | Yes | Yes |
MessageType | Indicates the type of the message* | Yes | Yes |
EncryptedAccessToken | The access token that would be used to create an encrypted URL. | Only for Delivery stops | Only for Delivery stops |
EncryptedUrl | Encrypted URL of the load which is unique and which can be used to access details of the load | Only for Delivery stops | Only for Delivery stops |
BillofLading | It indicates the bill of lading associated with the load. | Yes | Yes |
BookingNumber | It indicates the shipping line's booking number. | Yes | Yes |
VesselName | It indicates the name of the vessel carrying the load. | Yes | Yes |
ContainerType | It indicates whether the container is a general, high cube, Reefer, etc., type of container. | Yes | Yes |
ContainerNumber | Container Number of the ocean load | Yes | Yes |
VoyageNumber | It indicates the unique identifier given for the voyage. | Yes | Yes |
