Gate webhooks are triggered by events related to warehouse gates.
For gate webhooks:
category:GATEtriggerName: One of the available gate events (see below)payload: Contains the Gate object as returned by the Integration API
For complete webhook structure and field descriptions, see Webhooks.
GATE_STATUS_CHANGE- Fired when status changes between AVAILABLE, LOADING, OUT_OF_SERVICEGATE_UNAUTHORIZED_LOADING_ADDED- Fired when unauthorized loading is added to the gateGATE_UNAUTHORIZED_LOADING_RESOLVED- Fired when unauthorized loading is resolved (suppressed when resolution is due to status change to LOADING)
Trigger: GATE_STATUS_CHANGE
Fired when gate status changes between AVAILABLE, LOADING, and OUT_OF_SERVICE states.
{
"category": "GATE",
"webhookUuid": "92e1b4b0-2f7d-4cbd-8c0b-efc1a1b3f001",
"eventIdentifier": "evt-6c1d9f2a-7b04-4e51-9f3a-2a1c0b7d5e10",
"triggerName": "GATE_STATUS_CHANGE",
"triggerTime": 1756124061881,
"entityExternalId": "GATE-12A",
"entityUuid": "f1f6b1a7-4bde-4e7a-9c0c-0fcbab12d001",
"payload": {
"uuid": "ea1a1775-e9a4-4211-ae8d-1b3a6511de2a",
"createDate": 1749649124552,
"updateDate": 1756289187591,
"externalIdentifier": "GATE-12A",
"name": "Gate 12A",
"status": "LOADING",
"unauthorizedLoadings": [],
"unauthorizedLoadingsTruncated": false,
"totalUnauthorizedLoadingsCount": 0
}
}Trigger: GATE_UNAUTHORIZED_LOADING_ADDED
Fired when unauthorized loading is added to a gate with status AVAILABLE. This occurs when warehouse operators load items without an active manifest, creating a discrepancy between expected and actual loading operations.
{
"category": "GATE",
"webhookUuid": "e6a6fbe3-1ec5-4db1-9a42-7e7b1a0c9002",
"eventIdentifier": "evt-a29f7c14-3d8b-4c62-8e05-9b1f6a2d4c33",
"triggerName": "GATE_UNAUTHORIZED_LOADING_ADDED",
"triggerTime": 1756124099999,
"entityExternalId": "GATE-12A",
"entityUuid": "f1f6b1a7-4bde-4e7a-9c0c-0fcbab12d001",
"payload": {
"uuid": "ea1a1775-e9a4-4211-ae8d-1b3a6511de2a",
"createDate": 1749649124552,
"updateDate": 1756289187591,
"externalIdentifier": "GATE-12A",
"name": "Gate 12A",
"status": "AVAILABLE",
"unauthorizedLoadings": [
{
"uuid": "f907c4a7-0a57-4340-8ee8-6a4343284746",
"createDate": 1756289223562,
"updateDate": 1756289223562,
"track": {
"uuid": "39a64455-9ea9-4f74-8ef0-971ee16d35eb",
"trackCode": "000-130",
"wmsId": "local-33121364151",
"status": "ACTIVE"
},
"trackIdentifier": "local-33121364151",
"markerValue": "33121434156",
"loadedDate": 1756289223031,
"loadingStatus": "UNAUTHORIZED_LOADED"
}
],
"unauthorizedLoadingsTruncated": false,
"totalUnauthorizedLoadingsCount": 1
}
}Trigger: GATE_UNAUTHORIZED_LOADING_RESOLVED
Fired when unauthorized loading is resolved.
Note: Suppressed when resolution is due to status change to LOADING. In that case, only GATE_STATUS_CHANGE is emitted to prevent duplicate events.
For webhook header fields (category, eventIdentifier, triggerName, triggerTime, entityExternalId, entityUuid), see Webhooks.
| Field | Type | Description |
|---|---|---|
uuid | String | Gate UUID |
createDate | Long | Unix timestamp when gate was created |
updateDate | Long | Unix timestamp when gate was last updated |
externalIdentifier | String | Gate external identifier |
name | String | Gate display name |
status | String | Gate status (AVAILABLE, LOADING, OUT_OF_SERVICE) |
unauthorizedLoadings | Array | Unauthorized loading events (descending by loadedDate, max 50 items) |
unauthorizedLoadingsTruncated | Boolean | Whether the list is truncated due to 50-item limit |
totalUnauthorizedLoadingsCount | Number | Total count of active unauthorized loadings (always present; use when the array is truncated) |
| Field | Type | Description |
|---|---|---|
uuid | String | Unauthorized loading UUID |
createDate | Long | Unix timestamp when loading was created |
updateDate | Long | Unix timestamp when loading was last updated |
track | Object | Track object with loading information |
trackIdentifier | String | Unique identifier for the track |
markerValue | String | Marker identifier for tracking |
loadedDate | Number | Unix timestamp when loaded |
loadingStatus | String | Current loading status (UNAUTHORIZED_LOADED, etc.) |
| Field | Type | Description |
|---|---|---|
uuid | String | Track UUID |
trackCode | String | Track code identifier |
wmsId | String | WMS system identifier |
status | String | Track status (ACTIVE, INACTIVE, etc.) |
When resolving unauthorized items due to status change to LOADING:
- Do NOT emit
GATE_UNAUTHORIZED_LOADING_RESOLVED - Emit only
GATE_STATUS_CHANGE
This prevents duplicate events and provides complete state change information.
unauthorizedLoadingsarray is capped at 50 items- When
unauthorizedLoadingsTruncated: true, usetotalUnauthorizedLoadingsCountfor full scope - Use additional API calls if you need access to all unauthorized loadings