Subscribers will get notifications about multiple events, they will be informed even about small deviations. If clients want to inform their customer only about a specific deviation time, clients must filter notifications and inform their users only about deviation of, e.g. more than 15 minutes late or 30 minutes too early.
{
"notificationContentType": "ETA_INFO", // ETA_INFO, SUBSCRIPTION_CONFIRMATION,
"topicType": "ETA",
"notificationPayLoad":[{
"scheduledTime":"YYYY-MM-DDThh:mm:ss.0000000+01:00", // user planned time for truck arrival
"estimatedTime":"YYYY-MM-DDThh:mm:ss.0000000+01:00", // expected time when truck will arrive,
"relatedTime": "YYYY-MM-DDThh:mm:ss.0000000+01:00", // time at which this ETA was calculated
"uniqSeqId": "07210517-a3f8-4637-8b6d-aa7900b41238",
"info": "PositionEvent",
"trafficTimeLoss": 241, // total time lost due to traffic
"breakAndRestPeriod": 870, // total break and rest period on road and at stop
"waitingPeriod": 0,
"scemid":"X9X9X9X9X9" // SCEM-ID of concerned stop
}],
"subscriptionID": "9b2902977a7b455ca793aa7900b5544c"
}
Immediately after subscription to a tour SCEM-ID notifications will be sent of all stops that belong to the specified tour:
{
"notificationContentType":"SUBSCRIPTION_CONFIRMATION",
"topicType": "ETA",
"notificationPayLoad":[{
"scheduledTime":"YYYY-MM-DDThh:mm:ss.0000000+01:00", // user planned time for truck arrival
"estimatedTime":"YYYY-MM-DDThh:mm:ss.0000000+01:00", // expected time when truck will arrive,
"relatedTime": "YYYY-MM-DDThh:mm:ss.0000000+01:00",
"uniqSeqId": "07210517-a3f8-4637-8b6d-aa7900b41238",
"info": "Confirmation",
"trafficTimeLoss": 241,
"breakAndRestPeriod": 870,
"waitingPeriod": 0,
"scemid": "X8X8X8X8X8"
}, {
"scheduledTime": "YYYY-MM-DDThh:mm:ss.0000000+01:00",
"estimatedTime": "YYYY-MM-DDThh:mm:ss.0000000+01:00",
"relatedTime": "YYYY-MM-DDThh:mm:ss.0000000+01:00",
"uniqSeqId": "07210517-a3f8-4637-8b6d-aa7900b41238",
"info": "Confirmation",
"trafficTimeLoss": 241,
"breakAndRestPeriod": 1800,
"waitingPeriod": 0,
"scemid": "X9X9X9X9X9"
}],
"subscriptionID": "d2dac125bec94e248e80aa7900b8f91c"
}
The info field in the notificationPayload can contains useful information regarding how the ETA was calculated.
{
{
"notificationContentType": "ETA_INFO",
"notificationPayLoad": [{
...
"info": "PositionEvent - (traffic information excluded due to inaccessible route sections)",
}
],
"subscriptionID": "9b2902977a7b455ca793aa7900b5544c",
"topicType": "ETA"
}
Subscription to stops will be notified as following:
{
"notificationContentType":"ETA_INFO",
"topicType": "ETA",
"notificationPayLoad":[{
"scheduledTime": "YYYY-MM-DDThh:mm:ss.0000000+01:00",
"estimatedTime": "YYYY-MM-DDThh:mm:ss.0000000+01:00",
"relatedTime": "YYYY-MM-DDThh:mm:ss.0000000+01:00",
"uniqSeqId": "07210517-a3f8-4637-8b6d-aa7900b41238",
"info": "Confirmation",
"trafficTimeLoss": 241,
"breakAndRestPeriod": 1800,
"waitingPeriod": 0,
"scemid": "X9X9X9X9X9"
}],
"subscriptionID": "d2dac125bec94e248e80aa7900b8f91c"
}
STATUS_STOP events with one of the event subtypes ARRIVED, DEPARTED, SUSPENDED or CANCELLED also trigger notification(s) when the stop to which the event is sent has subscription(s). A subscribed tour also receives the notification.
Such notifications have one of the notificationContentType:
{
"notificationContentType": "STOP_ARRIVED",
"topicType": "ETA",
"notificationPayLoad": [
{
"coordinate": {
"locationX": "7.4406359857",
"locationY": "51.529677327"
},
"addInfo": "...",
"distanceToStop": 0,
"timeStamp": "YYYY-MM-DDThh:mm:ss.000000+00:00", // time of STATUS_STOP -> CANCELLED event sent
"scemid": "X9X9X9X9X9" // stop being suspended with event sent
}
],
"subscriptionID": "00000000000000000000000000000000" // subscription id to which this notification will be sent
}
Following notification is pushed on subscription over PUSH_MOBILE.
{
"notificationContentType": "SUBSCRIPTION_CONFIRMATION", // SUBSCRIPTION_CONFIRMATION, TOUR_UPDATE
"topicType": "TOUR_UPDATE", // TOUR_UPDATE, ETA_INFO
"notificationPayLoad": [
{
"info": "Tour update subscription confirmation",
"source": "MY_APP_V1.2",
"scemid": "X9X9X9X9X9" // Tour SCEMID
}],
"subscriptionID": "00000000000000000000000000000000" // subscription id to which this notification was sent
}
On tour changes, following notification is created and pushed to mobile/web applications.
{
"notificationContentType": "TOUR_UPDATE", // SUBSCRIPTION_CONFIRMATION, TOUR_UPDATE
"topicType": "TOUR_UPDATE", // TOUR_UPDATE, ETA_INFO
"notificationPayLoad": [
{
"info": "Tour X9X9X9X9X9 was updated",
"source": "MY_APP_V1.2",
"scemid": "X9X9X9X9X9" // Tour SCEMID
}],
"subscriptionID": "00000000000000000000000000000000" // subscription id to which this notification was sent
}
D&A users with a valid subscription to the tour or a stop for topic type ETA will be notified on any routing error.
Such notification has the type : ETA_FAILED_INFO
An error payload included in the notification contains:
Defined ErrorCodes:
{
"notificationContentType": "ETA_FAILED_INFO",
"topicType": "ETA"
"notificationPayLoad": [
{
"errorCode": "STOP_UNROUTEABLE",
"errorMessage": "cannot calculate route (concerning leg 11)",
"info": "RefRoute - Route cannot be calculated.",
"relatedTime": "YYYY-MM-DDThh:mm:ss.000000+00:00",
"scemid": "X9X9X9X9X9",
"stopIndex": 11
}],
"subscriptionID": "00000000000000000000000000000000",
}
© 2025 PTV Logistics GmbH | Imprint