This parameter specifies during which event the relevant webhook request will be triggered and transmitted.
WebhookSubscribedEventsubscribedEvent| Value | Description |
|---|---|
| consignment.size.updated | Triggered when consignment size information is updated |
| consignment.status.updated | Triggered when consignment status is updated |
| consignment.label.created | Triggered when a new label is added to the consignment |
| package.status.updated | Triggered when a package's status or status message changes |
| package.size.updated | Triggered when a package's weight, desi or dimensions change |
These values can be used both when creating webhooks and when responding. You can integrate them into your own system to enhance integration and comprehensibility.
Below are example payloads that the webhook will send to your system for each event type.
These examples show the default JSON payload. Date values use RFC 3339 and include a timezone offset. All values, including the dates and offsets, are sample data.
Triggered when consignment status is updated. triggerEvent contains the event that triggered the webhook (id, status, statusMessage, statusUpdatedAt, location, originalStatus, packageId). When that event belongs to a package, triggerEvent.packageId identifies the package; otherwise it is null. triggerEvent is not included when the webhook is resent without a specific event. Package events keep triggering this event; package.status.updated is sent in addition.
{
"headers": {
"Authorization": "__YOUR_AUTH_KEY__",
"Content-Type": "application/json"
},
"body": {
"event": "consignment.status.updated",
"data": {
"consignmentId": 3396107,
"consignmentUuid": "8378bbe5-b66c-4048-bf9d-b4cd52469bec",
"barcode": "C2H04729482615",
"referenceNo": "KPTT1661447TDBZP",
"location": null,
"status": 1,
"statusMessage": "Consignment sent to provider",
"statusUpdatedAt": "2025-10-31T13:09:16+03:00",
"lastTrackingCode": "KPTT1661447TDBZP",
"createdAt": "2025-10-31T13:09:16+03:00",
"events": [
{
"status": 1,
"statusMessage": "Consignment sent to provider",
"statusUpdatedAt": "2025-10-31T13:09:16+03:00",
"location": null
}
],
"labels": [],
"triggerEvent": {
"id": 18734521,
"status": 1,
"statusMessage": "Consignment sent to provider",
"statusUpdatedAt": "2025-10-31T13:09:16+03:00",
"location": null,
"originalStatus": null,
"packageId": null
}
}
}
}
Triggered when a new label is added to the consignment. It reports the linked package information and the previous label, if one was replaced.
| Field | Type | Meaning |
|---|---|---|
package.packageId |
integer or null | ID of the package linked to the label. Sent as null when no ID is available. |
package.weight, package.length, package.width, package.height, package.desi |
number | Stored weight, dimensions and desi of the package linked to the label. |
replacedLabel |
object or null | trackingCode and trackingType of the previous label that was replaced. Sent as null when no replacement information is available. The previous code and type can also be null. |
trackingType |
integer or null | 1: barcode/tracking code; 2: reference number; null: type is not set. |
createdAt, updatedAt |
datetime string | Creation and update times of the label. |
The package object is always sent. When no package is linked to the label, packageId is null and measurements are 0. Measurements that are not set are also sent as 0. Measurements are the stored package values when the event is created.
replacedLabel: null does not by itself mean that a new package was created. package.packageId identifies the linked package.
In this example, package 41 is new to the receiver and no label was replaced.
{
"headers": {
"Authorization": "__YOUR_AUTH_KEY__",
"Content-Type": "application/json"
},
"body": {
"event": "consignment.label.created",
"data": {
"consignmentId": 3393215,
"consignmentUuid": "8f5ad2c9-3a2a-4e7d-a858-d1b9e17fd15d",
"barcode": "2791937361446",
"referenceNo": "EPTT898824753",
"trackingCode": "2791937361446",
"trackingType": 2,
"provider": "Ptt",
"replacedLabel": null,
"package": {
"packageId": 41,
"weight": 1.4,
"length": 0,
"width": 0,
"height": 0,
"desi": 3
},
"createdAt": "2026-10-12T10:00:00+03:00",
"updatedAt": "2026-10-12T10:00:00+03:00",
"base64label": "__BASE64_DATA__"
}
}
}
The same package 41 now has a tracking barcode (trackingType: 1) in place of its reference label (trackingType: 2). The previous label information is sent in replacedLabel.
{
"headers": {
"Authorization": "__YOUR_AUTH_KEY__",
"Content-Type": "application/json"
},
"body": {
"event": "consignment.label.created",
"data": {
"consignmentId": 3393215,
"consignmentUuid": "8f5ad2c9-3a2a-4e7d-a858-d1b9e17fd15d",
"barcode": "KP06696002342",
"referenceNo": "EPTT898824753",
"trackingCode": "KP06696002342",
"trackingType": 1,
"provider": "Ptt",
"replacedLabel": {
"trackingCode": "2791937361446",
"trackingType": 2
},
"package": {
"packageId": 41,
"weight": 1.4,
"length": 0,
"width": 0,
"height": 0,
"desi": 3
},
"createdAt": "2026-10-12T11:00:00+03:00",
"updatedAt": "2026-10-12T11:00:00+03:00",
"base64label": "__BASE64_DATA__"
}
}
}
The headers and body keys in these examples show the HTTP request parts. They are not an additional JSON wrapper in the request body.
Triggered when consignment size information is updated. The weight and desi fields contain consignment totals, including package quantities. Adding a package also triggers the event if it changes these totals. For multi-package consignments, weight and desi are the sum of the counted packages: cancelled packages are not counted, and after at least one package is accepted, packages that are not accepted are not counted either. The measurement of a single package is reported with package.size.updated.
{
"headers": {
"Authorization": "__YOUR_AUTH_KEY__",
"Content-Type": "application/json"
},
"body": {
"event": "consignment.size.updated",
"data": {
"consignmentId": 3393215,
"consignmentUuid": "8f5ad2c9-3a2a-4e7d-a858-d1b9e17fd15d",
"barcode": "C2H11294525102",
"referenceNo": "EPTT898824753",
"weight": 0.5,
"length": 0,
"width": 0,
"height": 0,
"desi": 1,
"lastTrackingCode": "KP05917924760",
"createdAt": "2025-10-31T13:09:16+03:00",
"updatedAt": "2025-10-31T13:09:16+03:00",
"events": [
{
"status": 1,
"statusMessage": "Consignment sent to provider",
"statusUpdatedAt": "2025-10-31T13:09:16+03:00",
"location": null
},
{
"status": 2,
"statusMessage": "Kabul Edildi",
"statusUpdatedAt": "2025-10-31T13:09:16+03:00",
"location": "SAKARYA PKİM/SAKARYA PKİM"
}
],
"statusMessage": "Kabul Edildi",
"status": 2
}
}
}
Triggered per package when that package's status or status message changes. A consignment with several packages sends one webhook for each package that changes.
package.status.updated when it receives its first status.TRACKING_TIMEOUT (28) status.consignment.status.updated event is still sent as before. To receive both levels, create a webhook for each event.| Field | Type | Meaning |
|---|---|---|
consignmentId, consignmentUuid, barcode, referenceNo |
integer, string | Consignment the package belongs to. |
packageId |
integer | ID of the package. |
packageReferenceNo, providerPackageId, specificProviderBarcode |
string or null | Package reference number, the package ID assigned by the carrier and the package-specific carrier barcode. null when not available. |
providerPackageSequence |
integer or null | Sequence number of the package at the carrier. null when not available. |
status, statusMessage |
integer, string | Current status of the package. Status values are listed on the Consignment Statuses page. |
statusUpdatedAt, location |
datetime string, string or null | Date and location of the latest event of the package. If the package has no event yet, statusUpdatedAt is the time the package was last updated and location is null. |
weight, width, length, height, desi |
number or null | Stored weight (kg), dimensions (cm) and desi of the package. |
events |
array | Events of this package only, oldest first. |
labels |
array | Labels of this package only (trackingCode, trackingType, provider, providerId). |
{
"headers": {
"Authorization": "__YOUR_AUTH_KEY__",
"Content-Type": "application/json"
},
"body": {
"event": "package.status.updated",
"data": {
"consignmentId": 3393215,
"consignmentUuid": "8f5ad2c9-3a2a-4e7d-a858-d1b9e17fd15d",
"barcode": "C2H11294525102",
"referenceNo": "EPTT898824753",
"packageId": 42,
"packageReferenceNo": null,
"providerPackageId": null,
"providerPackageSequence": null,
"specificProviderBarcode": null,
"status": 3,
"statusMessage": "Sevk Edildi",
"statusUpdatedAt": "2026-10-13T16:19:12+03:00",
"location": "Istanbul/Kadikoy",
"weight": 1.2,
"width": 0,
"length": 0,
"height": 0,
"desi": 2,
"events": [
{
"status": 2,
"statusMessage": "Kabul Edildi",
"statusUpdatedAt": "2026-10-13T16:18:20+03:00",
"location": "Istanbul/Kadikoy"
},
{
"status": 3,
"statusMessage": "Sevk Edildi",
"statusUpdatedAt": "2026-10-13T16:19:12+03:00",
"location": "Istanbul/Kadikoy"
}
],
"labels": [
{
"trackingCode": "KP17918974919TR",
"trackingType": 1,
"provider": "Ptt",
"providerId": 1
}
]
}
}
}
Triggered when the weight, desi, width, length or height of a package changes. The payload has the same fields as package.status.updated and carries the new measurements.
9.0 and 9.00) do not.package.status.updated.consignment.size.updated is sent with the new totals. This does not apply to draft consignments: when the packages of a draft are updated, package.size.updated can be sent, but consignment.size.updated is not.status and statusMessage can be null.{
"headers": {
"Authorization": "__YOUR_AUTH_KEY__",
"Content-Type": "application/json"
},
"body": {
"event": "package.size.updated",
"data": {
"consignmentId": 3393215,
"consignmentUuid": "8f5ad2c9-3a2a-4e7d-a858-d1b9e17fd15d",
"barcode": "C2H11294525102",
"referenceNo": "EPTT898824753",
"packageId": 41,
"packageReferenceNo": null,
"providerPackageId": null,
"providerPackageSequence": null,
"specificProviderBarcode": null,
"status": 2,
"statusMessage": "Kabul Edildi",
"statusUpdatedAt": "2026-10-13T16:18:04+03:00",
"location": "Istanbul/Kadikoy",
"weight": 2.5,
"width": 10,
"length": 15,
"height": 15,
"desi": 3,
"events": [
{
"status": 2,
"statusMessage": "Kabul Edildi",
"statusUpdatedAt": "2026-10-13T16:18:04+03:00",
"location": "Istanbul/Kadikoy"
}
],
"labels": [
{
"trackingCode": "8200000000211",
"trackingType": 1,
"provider": "Ptt",
"providerId": 1
}
]
}
}
}