Skip to content
Last updated

Webhook Payload Schemas

Example payloads for each type of webhook are provided below. You can expect to receive a message with the same structure as these examples whenever you subscribe to the corresponding event. You'll notice that each payload includes a resource_type and a resource_url. Some payloads will contain additional information as well.

Webhook Event Payloads

Batch Processed (BATCH_PROCESSED_V2)

{
  "resource_url": "https://api.shipstation.com/v2/batches/se-1234567890",
  "resource_type": "BATCH_PROCESSED_V2"
}

Track Event (TRACK_EVENT_V2)

{
    "resource_url": "https://api.shipstation.com/v2/labels/se-1234567890/track",
    "resource_type": "TRACK_EVENT_V2",
    "data": {
        "tracking_number": "1Z0000000000000000",
        "tracking_url": "http://wwwapps.ups.com/WebTracking/processRequest?HTMLVersion=5.0&Requester=NES&AgreeToTermsAndConditions=yes&loc=en_US&tracknum=1Z0000000000000000",
        "status_code": "NY",
        "status_detail_code": null,
        "status_detail_description": null,
        "carrier_code": "ups",
        "carrier_id": 3,
        "carrier_detail_code": "MP",
        "status_description": "Not Yet In System",
        "carrier_status_code": "M",
        "carrier_status_description": "Shipper created a label, UPS has not received the package yet.",
        "ship_date": null,
        "estimated_delivery_date": "2026-04-30T00:00:00",
        "actual_delivery_date": null,
        "exception_description": null,
        "events": [
            {
                "occurred_at": "2026-04-29T22:59:36Z",
                "carrier_occurred_at": "2026-04-29T15:59:36",
                "description": "Shipper created a label, UPS has not received the package yet.",
                "city_locality": "",
                "state_province": "",
                "postal_code": "",
                "country_code": "US",
                "company_name": null,
                "signer": "",
                "event_code": "M",
                "carrier_detail_code": "MP",
                "status_code": "NY",
                "status_description": "Not Yet In System",
                "carrier_status_code": "M",
                "carrier_status_description": "Shipper created a label, UPS has not received the package yet.",
                "status_detail_code": null,
                "status_detail_description": null,
                "proof_of_delivery_url": null,
                "latitude": null,
                "longitude": null
            }
        ]
    }
}

Shipment Created (SHIPMENT_CREATED_V2)

{
  "resource_url": "https://api.shipstation.com/v2/shipments?import_batch_id=14b27e3b-4346-4ea2-ae7a-0fc01eb365a0",
  "resource_type": "SHIPMENT_CREATED_V2"
}

Label Created (LABEL_CREATED_V2)

{
  "resource_url": "https://api.shipstation.com/v2/labels?batch_id=se-1234567890",
  "resource_type": "LABEL_CREATED_V2"
}

Fulfillment Shipped (FULFILLMENT_SHIPPED_V2)

{
  "resource_url": "https://api.shipstation.com/v2/fulfillments?fulfillment_id=se-1234567890&shipment_id=se-0987654321",
  "resource_type": "FULFILLMENT_SHIPPED_V2"
}

Fulfillment Rejected (FULFILLMENT_REJECTED_V2)

{
    "resource_url": "https://api.shipstation.com/v2/shipments/se-1234567890",
    "resource_type": "FULFILLMENT_REJECTED_V2"
}