What are Webhooks?
A webhook is an HTTP callback: when an event you subscribed to occurs in Wing, we send a POST request
with a JSON body to the endpoint you registered. Your system reacts in real time, without polling our
API.
Key Concepts
Events
An event is something that happened to one of your orders or parcels: an order was packed, a parcel was created, its status changed… Each webhook configuration subscribes to one or more event types, and only receives those.
Webhook endpoint
Your endpoint is an HTTPS URL on your side that:
- accepts
POSTrequests with a JSON body; - answers with a
2xxstatus code once the event is received; - answers quickly, and defers any long processing.
Available Events
Every event type you can subscribe to, when it is sent and the data it carries, is detailed in Events & Payloads.
Request Body
Every webhook receives the event type, its timestamp, its sequence and the event data:
{
"event": "order.packed",
"timestamp": "2026-10-08T12:55:24.206Z",
"sequence": 128734512,
"message": {
"orderId": "…",
"fulfillmentOrderIds": ["…"],
"fulfillmentOrderId": "…",
"eventDate": "2026-10-08T12:55:24.195Z"
}
}
Ordering and duplicates
Events may arrive out of order, and the same event may be delivered more than once.
- Use
sequenceto order the events of an order or a parcel: a largersequenceis a more recent state. Do not rely ontimestampfor this: two changes made at the same time can carry timestamps in the reverse order of the states they describe. - Use
sequenceto detect a duplicate: it is unique per event and does not change when an event is delivered again.