> For the complete documentation index, see [llms.txt](https://docs.terminal.africa/tship/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.terminal.africa/tship/miscallaneous/webhook-events.md).

# Webhook Events

Here you can find a list of webhook event types along with descriptions of each event.

These are every event type you can subscribe a webhook to. For the exact JSON delivered with each one, see [Sample Webhook Event Payloads](/tship/miscallaneous/sample-webhook-event-payloads.md).

| Event                           | Description                                                                                                                                                             |
| ------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| *address.created*               | This event is triggered when a new address is created.                                                                                                                  |
| *address.deleted*               | This event is triggered when an address is deleted.                                                                                                                     |
| *address.updated*               | This event is triggered when an existing address is updated.                                                                                                            |
| *claim.failed*                  | This event is triggered when a filed insurance claim is unsuccessful.                                                                                                   |
| *claim.success*                 | This event is triggered when a filed insurance claim is successful.                                                                                                     |
| *insurance.failed*              | This event is triggered when a purchase for insurance coverage fails.                                                                                                   |
| *insurance.pending*             | This event is triggered when insurance coverage is initiated for a shipment.                                                                                            |
| *insurance.success*             | This event is triggered when insurance coverage is successfully purchased for a shipment.                                                                               |
| *packaging.created*             | This event is triggered when a new packaging is created.                                                                                                                |
| *packaging.updated*             | This event is triggered when packaging information is updated.                                                                                                          |
| *pickup.scheduled*              | A pickup record has been created and is awaiting carrier booking.                                                                                                       |
| *pickup.booked*                 | The carrier or rider booking is confirmed, including an automatic replacement rider.                                                                                    |
| *pickup.updated*                | Collection progress or the shipments on a pickup changed.                                                                                                               |
| *pickup.completed*              | Collection completed; Priority Pickup completes at the hub, before onward shipment delivery.                                                                            |
| *pickup.cancelled*              | Collection has ended. Read next\_action for drop-off, scheduling or support instructions.                                                                               |
| *pickup.failed*                 | A pickup attempt failed or needs support. Read next\_action and retry to distinguish automatic recovery from terminal failure.                                          |
| *reconciliation.billed*         | This event is triggered when a weight discrepancy is billed on a shipment.                                                                                              |
| *reconciliation.corrected*      | This event is triggered when a weight discrepancy charge is corrected — either reversed in full, or reversed and re-billed at a corrected amount.                       |
| *reconciliation.flagged*        | This event is triggered when a weight discrepancy is flagged on a shipment.                                                                                             |
| *regulatory\_document.complete* | This event is triggered when every regulatory document required for a shipment is complete.                                                                             |
| *regulatory\_document.pending*  | This event is triggered when a regulatory document is required and has been requested for a shipment.                                                                   |
| *regulatory\_document.uploaded* | This event is triggered when a regulatory document is uploaded against a shipment.                                                                                      |
| *shipment.awaiting-clearance*   | This event is triggered when a shipment is held awaiting customs clearance.                                                                                             |
| *shipment.cancelled*            | This event is triggered when a shipment is cancelled.                                                                                                                   |
| *shipment.created*              | This event is triggered when a new shipment is created.                                                                                                                 |
| *shipment.customs\_event*       | This event is triggered when a customs delay is detected on a shipment, and again when that delay is resolved. The `status` field in the payload distinguishes the two. |
| *shipment.delivered*            | This event is triggered when a shipment is delivered. e.g, Shipment delivered to destination address                                                                    |
| *shipment.in-transit*           | This event is triggered only once when a new shipment is in-transit.                                                                                                    |
| *shipment.pending-cancellation* | This event is triggered when cancellation has been requested on a shipment but not yet confirmed by the carrier.                                                        |
| *shipment.returned*             | This event is triggered when a shipment is returned to the sender.                                                                                                      |
| *shipment.updated*              | This event is triggered when an active shipment is updated. e.g. Shipment is picked up by rider.                                                                        |
| *transaction.failed*            | This event is triggered when the transaction charge for a shipment fails.                                                                                               |
| *transaction.success*           | This event is triggered when the transaction charge for a shipment is successful.                                                                                       |

### Pickup recovery events

Pickup events share one contract for Priority and Scheduled Pickups. The envelope also includes `event_id` and `occurred_at`, and `data.version` increases for each new event. Read `next_action` to determine whether to wait, drop off, schedule again or contact support. A carrier-cancelled rider can be retried automatically; the pickup is only terminally cancelled when collection has ended. See [Pickup Workflow](/tship/guides/pickup-workflow.md) for the recovery flow.

See [Pickup Event Payloads](/tship/miscallaneous/sample-webhook-event-payloads/pickup.md) for examples of each event.


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation by asking a question.

Perform an HTTP GET request on the following URL with the `ask` and `goal` query parameters:

```
GET https://docs.terminal.africa/tship/miscallaneous/webhook-events.md?ask=<question>&goal=<user_goal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is what the user is ultimately trying to achieve, the reason they need the answer. Sharing it helps GitBook give you a better, more relevant answer. A goal is most helpful when it describes the outcome the user wants rather than restating the question. For example, with `ask=how do I create an API token`, a goal like `automate deployments from our CI pipeline` lets GitBook tailor the answer to that use case.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
