Skip to content

Releases: AfterShip/tracking-sdk-php

14.0.0

12 Nov 01:39
c36d278

Choose a tag to compare

What's Changed

  • fix sign header and change slug_group to string by @1415003719 in #25

Full Changelog: 13.0.0...14.0.0

13.0.0

02 Sep 11:37
09413fa

Choose a tag to compare

What's Changed

Breaking Changes - AfterShip Tracking PHP SDK v13.0.0

System Requirements Changes

  • PHP Version: 8.0+ → 8.1+
  • Symfony Dependencies: Removed 5.4 support, minimum 6.4

1. Namespace And Model Name Changes

All request/response classes moved from API namespace to Model namespace:

// v12
use Tracking\API\Tracking\CreateTrackingRequest;
use Tracking\API\Courier\DetectCourierRequest;

// v13  
use Tracking\Model\CreateTrackingRequest;
use Tracking\Model\DetectCourierRequest;

Most of the request/response model names have been made more concise

// v12 - Suffix naming
use Tracking\Model\CourierEstimatedDeliveryDateTracking;
use Tracking\Model\ShipmentWeightTracking;
use Tracking\Model\AftershipEstimatedDeliveryDateTracking;
use Tracking\Model\CarbonEmissionsTracking;
use Tracking\Model\CustomEstimatedDeliveryDateTracking;

// v13 - Prefix naming
use Tracking\Model\TrackingCourierEstimatedDeliveryDate;
use Tracking\Model\TrackingShipmentWeight;
use Tracking\Model\TrackingAftershipEstimatedDeliveryDate;
use Tracking\Model\TrackingCarbonEmissions;
use Tracking\Model\TrackingCustomEstimatedDeliveryDate;

2. Response Structure Complete Refactor

All Response classes now contain responseHeader and data structure:

// v12 - Direct access to response properties
$response = $client->tracking->createTracking($request);
$id = $response->id;
$trackingNumber = $response->tracking_number;

// v13 - Must access through getData()
$response = $client->tracking->createTracking($request);
$data = $response->getData();
$id = $data->id;
$trackingNumber = $data->tracking_number;
$headers = $response->getResponseHeader(); // New feature: get response headers

Applies to all API responses: createTracking, getTrackingById, getTrackings, updateTrackingById, getCouriers, etc.

3. Constants to Enums

Multiple classes changed from class constants to PHP 8.1 native enums: #23

// v12 - Class constants
Tag::PENDING
Tag::DELIVERED
Tag::IN_TRANSIT

// v13 - Enum values
Tag::PENDING->value
Tag::DELIVERED->value  
Tag::IN_TRANSIT->value

Impact: If your code uses constants like Tag::PENDING for string comparison, change to Tag::PENDING->value.

Full Changelog: 12.0.0...13.0.0

12.0.0

22 Jul 08:12
a51b212

Choose a tag to compare

What's Changed

Full Changelog: 11.0.0...12.0.0

11.0.0

23 Apr 06:14
60e96b4

Choose a tag to compare

What's Changed

Full Changelog: 10.2.1...11.0.0

10.2.1

18 Mar 06:13

Choose a tag to compare

chore: adjust dependencies

Full Changelog: 10.2.0...10.2.1

10.2.0

12 Mar 03:47
611361e

Choose a tag to compare

What's Changed

Full Changelog: 10.1.3...10.2.0

10.1.3

03 Mar 03:45
851d96a

Choose a tag to compare

What's Changed

Full Changelog: 10.1.2...10.1.3

10.1.2

28 Feb 07:19
136d618

Choose a tag to compare

What's Changed

Full Changelog: 10.1.0...10.1.2

10.1.0

27 Feb 06:02
bbc1223

Choose a tag to compare

What's Changed

Full Changelog: 10.0.1...10.1.0

10.0.1

05 Feb 03:00
e886e10

Choose a tag to compare

What's Changed

Full Changelog: 10.0.0...10.0.1