About the API
Structures and paradigms for the Trackstar API
The Trackstar API can be hit at https://production.trackstarhq.com.
Trackstar API responses are all returned in JSON format.
Authentication
All Trackstar API requests require an API Key to authenticate requests. You can view and manage your API keys in the Trackstar dashboard.
Additionally most endpoints also require an access token, which maps to an integrated WMS. Access tokens are returned at the end of the Token Exchange process. They can also be found in the Connections page of the Trackstar dashboard.
To authenticate a request, include the following headers:
headers = {
"x-trackstar-api-key": "<x-trackstar-api-key>",
"x-trackstar-access-token": "<x-trackstar-access-token>" # When required
}
Postman Collection
The Trackstar Postman collection can be found in JSON format at https://production.trackstarhq.com/postman.json. To use it, simply open the Postman app or web client, click “Import”, and type in the above URL.
Errors
Standard HTTP status codes are used to indicate success or failure of an API request.
Error response bodies are returned in the following format:
{
"error": "Sample error message"
}
and will have a status code associated with them. Some types of errors will contain additional fields, but all will contain "error"
.
Unimplemented Endpoints
Endpoints that are not supported for a given integration (e.g. GET /wms/returns
for the Cool WMS
integration)
will return a 501
status code with the following body:
{
"error": "Endpoint get_returns is not implemented for Cool WMS"
}
Pagination
Endpoints that list data retrieve 1000 items by default. You can change this using the limit
query parameter.
Endpoints implement pagination logic and return a next_token
, which will be null
if there is no additional data.
Valid next_token
s can then be passed into the endpoint’s page_token
parameter to get the next page of results.
Leave this field out to get the first page.
Filtering
Some list endpoints support different shapes for query parameters.
For parameters that support them, possible comparison operators are = or eq
(equal),
neq
(not equal), gt
(greater than), lt
(less than), gte
(greater than or equal),
lte
(less than or equal), in
(in a list), and nin
(not in a list).
For in
and nin
the API accepts a comma separated string e.g. value_1,value_2
.
More details can be found in each individual endpoint’s documentation.