Use PHP to track USPS shipments with USPS Tracking API.
- Real-time USPS tracking.
- Batch USPS tracking.
- Other features to manage your USPS tracking.
Installation is easy:
$ composer require trackingmore/trackingmore-sdk-php
Get the API key:
To use this API, you need to generate your API key.
- Click here to access TrackingMore admin.
-
Go to the "Developer" section.
-
Click "Generate API Key".
-
Give a name to your API key, and click "Save" .
Then, start to track your USPS shipments.
Create a tracking (Real-time tracking):
require('vendor/autoload.php');
use Trackingmore\TrackingMoreException;
use TrackingMore\Trackings;
$key = 'your api key';
$response = null;
$trackings = new Trackings($key);
try {
$params = ['tracking_number'=>'9400111899562537683144','courier_code'=>'usps'];
$response = $trackings->createTracking($params);
} catch (TrackingMoreException $e) {
echo $e->getMessage();
}
print_r($response);
Create trackings (Max. 40 tracking numbers create in one call):
require('vendor/autoload.php');
use Trackingmore\TrackingMoreException;
use TrackingMore\Trackings;
$key = 'your api key';
$response = null;
$trackings = new Trackings($key);
try {
$params = [
['tracking_number'=>'92632903279511573030094832','courier_code'=>'usps'],
['tracking_number'=>'92642903289511563030094932','courier_code'=>'usps']
];
$response = $trackings->batchCreateTrackings($params);
} catch (TrackingMoreException $e) {
echo $e->getMessage();
}
print_r($response);
Get status of the shipment:
require('vendor/autoload.php');
use Trackingmore\TrackingMoreException;
use TrackingMore\Trackings;
$key = 'your api key';
$response = null;
$trackings = new Trackings($key);
try {
$params = ['courier_code'=>'usps','created_date_min'=>'2023-08-23T06:00:00+00:00','created_date_max'=>'2023-09-05T07:20:42+00:00'];
$response = $trackings->getTrackingResults($params);
} catch (TrackingMoreException $e) {
echo $e->getMessage();
}
print_r($response);
Update a tracking by ID:
require('vendor/autoload.php');
use Trackingmore\TrackingMoreException;
use TrackingMore\Trackings;
$key = 'your api key';
$response = null;
$trackings = new Trackings($key);
try {
$params = ['customer_name'=>'New name','note'=>'New tests order note'];
$idString = '9a1d3844a50f3851e76e3ee347881588';
$response = $trackings->updateTrackingByID($idString,$params);
} catch (TrackingMoreException $e) {
echo $e->getMessage();
}
print_r($response);