Skip to main content

List Shipping Channels

Retrieves a paginated list of all shipping channels for the authenticated user.

Endpoint

GET /v1/shipping-channels

Authentication

API key required. Include it in the Authorization header:

Authorization: Bearer YOUR_API_KEY

Query Parameters

This endpoint does not support any query parameters at the moment.

Response

200 OK

{
"data": [
{
"id": "ch_123456",
"name": "DHL Channel",
"provider": "dhl",
"status": "active",
"settings": {
"api_key": "••••••••••••••••",
"account_number": "123456789"
},
"created_at": "2025-03-26T12:00:00Z",
"updated_at": "2025-03-26T12:00:00Z"
},
{
"id": "ch_234567",
"name": "DPD Channel",
"provider": "dpd",
"status": "active",
"settings": {
"api_key": "••••••••••••••••",
"account_number": "987654321"
},
"created_at": "2025-03-25T10:00:00Z",
"updated_at": "2025-03-25T10:00:00Z"
}
]
}

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/shipping-channels \
-H "Authorization: Bearer YOUR_API_KEY"

PHP

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

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

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

JavaScript

fetch('https://api.shipping-channels.com/v1/shipping-channels', {
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));