Changelog

ChangeBeforeAfter
Base URLhttps://api.aftership.com/tracking/2024-10https://api.aftership.com/tracking/2025-01
as-api-version header’s value2024-102025-01
ChangeAffected Endpoints
New fields in Tracking model:
first_mile.tracking_number
first_mile.slug
first_mile.transit_time
first_mile.courier_tracking_link
first_mile.courier_redirect_link
last_mile.transit_time
customers[x].role
customers[x].language
checkpoints[x].source
API endpoint:
- GET /trackings
- GET /trackings/:id
- DELETE /trackings/:id
- POST /trackings
- PUT /trackings/:id
- POST /trackings/:id/mark-as-completed
- POST /trackings/:id/retrack

Tracking Webhook
- The existing fields tracking.next_couriers will be replaced with tracking.last_mile
- The existing field tracking.customer_name will be replaced with tracking.customers[x].name
- The existing field tracking.smses will be replaced with tracking.customers[x].phone_number
- The existing field tracking.emails will be replaced with tracking.customers[x].email
API endpoint:
- GET /trackings
- GET /trackings/:id
- DELETE /trackings/:id
- POST /trackings
- PUT /trackings/:id
- POST /trackings/:id/mark-as-completed
- POST /trackings/:id/retrack

Tracking Webhook
The existing field tracking.last_updated_at will be deprecated.API endpoint:
- GET /trackings
- GET /trackings/:id
- DELETE /trackings/:id
- POST /trackings
- PUT /trackings/:id
- POST /trackings/:id/mark-as-completed
- POST /trackings/:id/retrack

Tracking Webhook
tracking.tracking_ship_date supports new value formats:
- YYYY-MM-DD
- YYYY-MM-DDTHH:mm:ss
- YYYY-MM-DDTHH:mm:ssZ
API endpoint:
- GET /trackings
- GET /trackings/:id
- DELETE /trackings/:id
- POST /trackings
- PUT /trackings/:id
- POST /trackings/:id/mark-as-completed
- POST /trackings/:id/retrack

Tracking Webhook
A new checkpoint will be created when the user marks a tracking as completed.API endpoint:
- GET /trackings
- GET /trackings/:id
- DELETE /trackings/:id
- POST /trackings
- PUT /trackings/:id
- POST /trackings/:id/mark-as-completed
- POST /trackings/:id/retrack

Tracking Webhook
- Rename tracking.courier_destination_country_iso3 to tracking.courier_destination_country_region
- Rename tracking.origin_country_iso3 to tracking.origin_country_region
- Rename tracking.destination_country_iso3 to tracking.destination_country_region
- Rename tracking.checkpoints[x].country_iso3 to tracking.checkpoints[x].country_region
- Rename tracking.checkpoints[x].country_name to tracking.checkpoints[x].country_region_name
- Rename tracking.tracking_origin_country to tracking.tracking_origin_country_region
- Rename tracking.tracking_destination_country to tracking.tracking_destination_country_region
- Rename courier.service_from_country_iso3 to courier.service_from_country_regions
- Rename estimated_delivery_date.origin_address.country to estimated_delivery_date.origin_address.country_region
- Rename estimated_delivery_date.destination_address.country to estimated_delivery_date.destination_address.country_region
API endpoint:
- GET /trackings
- GET /trackings/:id
- DELETE /trackings/:id
- POST /trackings
- PUT /trackings/:id
- POST /trackings/:id/mark-as-completed
- POST /trackings/:id/retrack
- GET /couriers
- GET /couriers/all
- POST /couriers/detect
- POST /estimated-delivery-date/predict-batch
- POST /estimated-delivery-date/predict

Tracking Webhook
Tracking marked as completed endpoint supportsevent_datetime fieldAPI endpoint:
- POST /trackings/:id/mark-as-completed