EasyPost · AsyncAPI Specification
EasyPost Webhooks API
Version 1.0.0
AsyncAPI specification for EasyPost's webhook surface. EasyPost dispatches Event objects to subscriber URLs whenever asynchronous objects (batches, trackers, scan forms, refunds, reports, payments, claims, insurance, shipment invoices) change state. Webhooks are configured on the EasyPost account and are signed with an HMAC-SHA256 signature in the X-Hmac-Signature header, derived from a webhook secret provided at webhook creation time. Subscribers must respond with a 2XX status code (200 OK preferred) to acknowledge receipt; non-2XX responses are retried.
View Spec
View on GitHub
ShippingLogisticsMulti-CarrierTrackingLabelsInsuranceAsyncAPIWebhooksEvents
Channels
webhook
Receive an EasyPost Event
Single delivery channel. EasyPost POSTs an Event payload to the subscriber's configured webhook URL for every event type the account is subscribed to. The specific event type is conveyed by the `description` field of the Event payload.
Messages
BatchCreated
Batch Created
Initial batch object creation has completed.
BatchUpdated
Batch Updated
A batch's status has changed (e.g. label generation progress).
TrackerCreated
Tracker Created
A Tracker has been created for a tracking code.
TrackerUpdated
Tracker Updated
A Tracker's status or scan history has been updated.
ScanFormCreated
Scan Form Created
A scan form (SCAN form/manifest) has been created.
ScanFormUpdated
Scan Form Updated
A scan form's status or contents have been updated.
RefundSuccessful
Refund Successful
A refund request has completed successfully.
ReportNew
Report New
A new report has been requested and is being generated.
ReportEmpty
Report Empty
Report generation finished but produced no rows.
ReportAvailable
Report Available
Report generation completed; CSV is downloadable from `url`.
ReportFailed
Report Failed
Report generation failed.
PaymentCreated
Payment Created
A bank account or credit card has been charged.
PaymentCompleted
Payment Completed
A bank transfer has successfully completed.
PaymentFailed
Payment Failed
A transfer or charge encountered an issue.
InsurancePurchased
Insurance Purchased
An insurance policy has been purchased for a shipment.
InsuranceCancelled
Insurance Cancelled
An insurance policy has been cancelled.
ClaimsSubmitted
Claim Submitted
A claim has been submitted to EasyPost for processing.
ClaimsCancelled
Claim Cancelled
A claim has been cancelled.
ClaimsUpdated
Claim Updated
A claim's status or fields have been updated.
ClaimsRejected
Claim Rejected
A claim has been rejected.
ClaimsApproved
Claim Approved
A claim has been approved.
ShipmentInvoiceCreated
Shipment Invoice Created
A shipment invoice has been created.
ShipmentInvoiceUpdated
Shipment Invoice Updated
A shipment invoice has been updated.
Servers
https
subscriber
{webhook_url}
Subscriber-controlled HTTPS endpoint registered with EasyPost. URL is configured per-webhook in the EasyPost account. TLS is required, with a certificate from a trusted public authority.