API Overview & Authentication
The TrackLogy API is a RESTful HTTP API. All requests and responses use JSON. Use it to create and manage shipments, configure notifications, and integrate tracking into your platform.
Base URL
https://api.tracklogy.comAll endpoints are versioned under /v1:
https://api.tracklogy.com/v1/shipments
https://api.tracklogy.com/v1/notifications/settingsAuthentication
All API requests must be authenticated using a Bearer token — your workspace API key.
Authorization: Bearer YOUR_API_KEYGet your API key from Dashboard → Settings → API Keys.
Example
curl https://api.tracklogy.com/v1/shipments \
-H "Authorization: Bearer YOUR_API_KEY"Requests without a valid Authorization header will return 401 Unauthorized. Never expose your API key in client-side code.
Request Format
- Method: Standard HTTP verbs (GET, POST, PUT, DELETE)
- Content-Type:
application/jsonfor POST/PUT requests - Encoding: UTF-8
curl -X POST https://api.tracklogy.com/v1/shipments \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{ "tracking_number": "1Z999AA10123456784" }'Response Format
All responses follow a consistent JSON envelope:
Success:
{
"success": true,
"message": "Shipment created",
"data": {
"shipment": { ... }
}
}Error:
{
"success": false,
"error": {
"code": 422,
"message": "Tracking number is required"
},
"data": {}
}HTTP Status Codes
| Code | Meaning |
|---|---|
200 | Success |
201 | Resource created |
400 | Bad request |
401 | Unauthorized — missing or invalid API key |
402 | Payment required — tracker balance exhausted |
403 | Forbidden — insufficient permissions |
404 | Resource not found |
409 | Conflict — e.g. duplicate tracking number |
422 | Unprocessable entity — validation error |
429 | Too many requests — rate limit exceeded |
500 | Internal server error |
Rate Limiting
The API enforces rate limits to ensure fair usage across all workspaces. If you exceed the rate limit, you'll receive a 429 Too Many Requests response.
Retry with exponential backoff after receiving a 429. For higher rate limit needs, contact [email protected].
Pagination
List endpoints support pagination via query parameters:
| Parameter | Default | Max | Description |
|---|---|---|---|
page | 1 | — | Page number |
per_page | 25 | 100 | Results per page |
Paginated responses include:
{
"success": true,
"data": {
"items": [ ... ],
"total": 142,
"page": 1,
"per_page": 25,
"total_pages": 6
}
}Available Endpoints
| Method | Path | Description |
|---|---|---|
GET | /v1/shipments | List all shipments |
POST | /v1/shipments | Create a shipment |
GET | /v1/shipments/show | Get a single shipment by ID |
PUT | /v1/shipments/update | Update a shipment |
DELETE | /v1/shipments/delete | Delete a shipment |
GET | /v1/shipments/events | Get tracking events for a shipment |
POST | /v1/shipments/retry | Retry registration for a shipment |
GET | /v1/notifications/settings | Get notification settings |
PUT | /v1/notifications/settings | Update notification settings |
GET | /v1/billing | Get billing info and plans |
GET | /v1/api-keys | Get your API key info |