Two ways to exercise these endpoints from this documentation: against a mock server, or against production with your own credentials.There is no separate customer test environment. Calls with real credentials go to production, so build against the mock until you are confident in what you are sending.
Every endpoint has a mock available from its reference page, and it needs no credentials. Responses are generated from the spec, so they carry the right fields, types and structure without touching production.Use it to:
Check a response shape before you write a parser
Build and demo a client while onboarding is still in progress
Reproduce an integration bug without creating real transactions
Develop against addons your account does not have enabled
Mock data is shaped like real data, not drawn from it
A mock returns a plausible vessel with plausible screening results. The schema generates it. Use it to validate structure and integration logic, never to judge a specific vessel or the quality of a check.
Endpoint pages have a Try it button that sends a real request from your browser.
1
Have both values readyPurpleTRAC needs a username and an api_key, issued by your Pole Star representative. See Authentication.
2
Enter them on the endpoint pageBoth are query parameters, so they appear as fields on the request. Enter them on each endpoint you try.
3
Send the requestThe call goes to production under your own credentials, with your own account configuration.
Reads first
Try it sends genuine requests. A GET is harmless. POST /registration creates a real transaction and PUT /transaction/{id}/track starts real tracking, both of which consume screening volume. Use the mock for anything that writes until you mean it.
If you would rather work outside this documentation, export the endpoints to your own client. Each endpoint page offers generated code in several languages, and the reference can be exported as a collection you import into Postman, Insomnia or similar.Once imported, store your credentials as collection variables rather than repeating them on every request. username and api_key are needed on every call, so two variables cover the whole collection.
1
Import the collectionUse your client's import option and point it at the exported file.
2
Set the variablesOpen the collection settings and fill in username and api_key. Every request in the collection then carries them.
3
Point at the right serverProduction is https://api.polestar-production.com/purpletrac/v1. Only production exists at this host. Confirm the collection points to https://api.polestar-production.com/purpletrac/v1 before you read anything into a response.
Confirm which addons you haveCarbon Rating, BL Verification and Container Screening are enabled per account. Call one endpoint from each and check you do not get a 403.
2
Handle the error shapes you have not seenPurpleTRAC returns several, and some are not JSON. Branch on the status code first. See Errors & Status Codes.
3
Store every transaction idAlmost every follow-up call needs one, and rescreening keeps the original. Losing an id means starting a vessel again.
4
Decide your tracking lifecycleTracking runs until you stop it or until the configured conditions end it. Work out which vessels should stop, and when, before you enable it in volume.
Talk to our team. Include the endpoint, the transaction id and the full response body, since PurpleTRAC error bodies vary and the body is often the only detail available.