Skip to main content

Get Shipment Statuses

Retrieves a list of all possible shipment statuses.

Endpoint

GET /v1/shipments/statuses

Authentication

API key required. Include it in the Authorization header:

Authorization: Bearer YOUR_API_KEY

Response

200 OK

{
"data": [
{
"value": "pending",
"label": "Pending",
"color": "#FFC107",
"is_final": false,
"is_successful": false
},
{
"value": "created",
"label": "Created",
"color": "#28A745",
"is_final": false,
"is_successful": true
},
{
"value": "shipped",
"label": "Shipped",
"color": "#007BFF",
"is_final": false,
"is_successful": true
},
{
"value": "delivered",
"label": "Delivered",
"color": "#28A745",
"is_final": true,
"is_successful": true
},
{
"value": "cancelled",
"label": "Cancelled",
"color": "#DC3545",
"is_final": true,
"is_successful": false
},
{
"value": "returned",
"label": "Returned",
"color": "#6C757D",
"is_final": true,
"is_successful": false
}
]
}

Error Responses

Status CodeDescription
401Unauthorized - Invalid or missing API key
429Too Many Requests - Rate limit exceeded
500Server Error - Something went wrong on our end

Example Request

cURL

curl -X GET \
https://api.shipping-channels.com/v1/shipments/statuses \
-H "Authorization: Bearer YOUR_API_KEY"

PHP

<?php
$client = new \GuzzleHttp\Client();

$response = $client->request('GET', 'https://api.shipping-channels.com/v1/shipments/statuses', [
'headers' => [
'Authorization' => 'Bearer YOUR_API_KEY',
'Accept' => 'application/json',
],
]);

$data = json_decode($response->getBody(), true);

JavaScript

fetch('https://api.shipping-channels.com/v1/shipments/statuses', {
method: 'GET',
headers: {
'Authorization': 'Bearer YOUR_API_KEY',
'Accept': 'application/json'
}
})
.then(response => response.json())
.then(data => console.log(data))
.catch(error => console.error('Error:', error));