QUICKSTART
API Quick Start
Authentication
SignString
OAuth
Overview
Getting Started
Scope List
Versioning
Rate Limit
Body Envelope
Request Errors
Try API Endpoints
CHANGELOG
Changelog
Migration Guide
REFERENCE
API Overview
Estimated delivery date
Batch prediction for the Estimated Delivery Date
post
Tracking
Get trackings
get
Create a tracking
post
Get a tracking by ID
get
Update a tracking by ID
put
Delete a tracking by ID
delete
Retrack an expired tracking by ID
post
Mark tracking as completed by ID
post
Get a tracking (Legacy)
get
Update a tracking (Legacy)
put
Delete a tracking (Legacy)
delete
Retrack an expired tracking (Legacy)
post
Mark tracking as completed (Legacy)
post
Courier
Get user activated couriers
get
Detect courier
post
Get all couriers
get
Last Checkpoint
Get last checkpoint by tracking ID
get
Get last checkpoint (Legacy)
get
Notification
Get tracking notification by tracking ID
get
Add a notification by tracking ID
post
Remove a notification by tracking ID
post
Get tracking notification (Legacy)
get
Add a notification (Legacy)
post
Remove a notification (Legacy)
post
MODEL
Tracking
Courier
Checkpoint
Notification
ENUM
Additional Tracking Fields
Delivery Statuses
Delivery Sub-statuses
Slug Groups
Events
Confidence Codes
Webhook
Webhook Overview
Webhook Versioning
Webhook Specifications
Webhook Signature
Webhook OAuth 2.0
Webhook Outgoing IPs
Webhook Changelog
OTHERS
Supported Couriers
CSV Upload & CSV Auto-Fetch
Shipment CSV Export
Order CSV Export
SDK
Java SDK
Node.js SDK
.NET SDK
Python SDK
Ruby Gem
PHP SDK
Golang SDK
Open Source
phone
email-verifier
Support
Contact Support

Webhook Versioning

Webhook users can select the desired webhook version for each webhook receiver URL, and the specific version of the webhook payload will be sent to the receiving URL accordingly.

This versioning mechanism helps webhook users to concurrently test multiple webhook versions, facilitating a seamless transition during webhook migration.

You can pick from any of the available webhook versions for each webhook URL. Simply navigate to the webhook URL configuration screen in the admin.aftership.com web portal, as shown below:

webhook_version.png

To ensure a smooth transition, you can test the new version by adding another webhook URL and selecting the desired version for testing purposes.

It's important to note that your selected webhook version operates independently of the API version you're using. For instance, you can specify 2024-04 in the API request URL, while continuing to use 2024-01 for the selected webhook version within the admin portals.

as-webhook-version request header is included in every webhook request to indicate the payload version.

Header NameDescriptionFormat
as-webhook-versionSelected webhook version.YYYY-MM

2023-10 2024-01 2024-04 2024-07 and so on.

The lifecycle of a webhook version aligns with the corresponding API version, including both its initiation and end-of-support dates. When a selected webhook version reaches its end-of-life, AfterShip will update it to the oldest supported version automatically. Consequently, the deprecated version will no longer be available for selection.