Consignment events
| Event | Fires when |
|---|---|
consignment.created | A consignment is created (API, import, or dashboard) |
items.classified | The classifier assigns HS codes to items |
duties.calculated | A duty assessment completes |
payment.requested | A duty payment link is issued |
payment.paid | The payer completes payment |
email.queued / email.opened | Notification emails move |
hold.placed / hold.released | A hold changes state |
label.generated | A carrier label is produced |
group.scanned | A parcel is scanned into a processing group |
product.applied / product.matched | Catalogue products attach to items |
pre_alert.created | A pre-alert is sent |
comment | A timeline comment is added |
Manifest events
| Event | Fires when |
|---|---|
manifest.created | A manifest is created |
manifest.linked | A consignment links to a manifest row |
manifest.mismatch | A linked row disagrees with declared data |
manifest.import.completed | An uploaded manifest finishes importing |
manifest.ingest.completed / manifest.ingest.failed | Automated ingest finishes or fails |
Carrier events
| Event | Fires when |
|---|---|
carrier.tracking | Any harmonised tracking event arrives, with matched parcel IDs |
Test
| Event | Fires when |
|---|---|
test.ping | You press the test button on the Developers page. Delivered synchronously — the response reports your endpoint’s actual HTTP status. |
Use category wildcards to subscribe to a family:
manifest.* receives every
manifest event, including types added later.