Skip to main content

Prerequisites — Create an API Key

Before making any API calls, you’ll need an API key. Head to the Telemax Webhooks and API Key section in the Telemax dashboard to create your own key.
Navigate to Telemax Dashboard → Webhooks and API Key to generate a new API key. Copy the key and keep it secure — you’ll use it in the step below.

Step 1 — Get an access token

V2 token endpoints are at /api/v2/authentication/token/.... Interactive reference: API key token.
curl -s -X POST "https://api.telemax.com.au/api/v2/authentication/token/api-key" \
  -H "Content-Type: application/x-www-form-urlencoded" \
  --data-urlencode "apiKey=a3f1c2b4-5d6e-7890-abcd-ef1234567890"
200 OK response shape:
{
  "access_token": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...",
  "token_type": "bearer",
  "expires_in": 86399
}
Cache this token and reuse it. Tokens are valid for ~24 hours — see Authentication for the recommended caching pattern.

Step 2 — List your companies

Use GET /api/v2/companies to discover the company IDs your token can access. The Id on the first result is your primary company ID — you’ll need it for fleet and alert endpoints.
curl -s "https://api.telemax.com.au/api/v2/companies" \
  -H "Authorization: Bearer <access_token>"
200 OK — paginated list of companies:
{
  "items": [
    { "Id": 85, "Name": "Acme Fleet", "ParentId": null }
  ],
  "currentPage": 1,
  "numberOfPages": 1,
  "totalResults": 1,
  "lastResultIndex": 0
}

Step 3 — Get your fleet’s last positions

Use GET /api/v2/companies/{id}/vehicles/last-position with the company ID from Step 2 to fetch the current location of every vehicle.
curl -s "https://api.telemax.com.au/api/v2/companies/85/vehicles/last-position?page=1&pageSize=50" \
  -H "Authorization: Bearer <access_token>"
200 OK — paginated PositionDto list with fields including DeviceId, DeviceName, Lat, Lng, UtcTime, Speed, Ignition.

Step 4 — Fetch a single vehicle’s last position

Use GET /api/v2/vehicles/{id}/last-position for a specific vehicle by its legacy vehicle ID (DeviceId):
curl -s "https://api.telemax.com.au/api/v2/vehicles/88421/last-position" \
  -H "Authorization: Bearer <access_token>"
If you only have an IMEI, convert it first with GET /api/v2/vehicles/{imei}/device-ids.

Common first errors

SymptomCauseFix
401 with no bodyMissing or invalid Authorization headerObtain a fresh token; prefix with Bearer
401 from token endpointWrong password or unknown API keyVerify credentials; GUID keys must exist in ApiKeys non-deleted
403 on a data routeToken not scoped to that companyCheck GET /api/v2/companies for accessible company IDs
404 on a vehicle routeVehicle ID unknown or not in your companyUse POST /api/v2/vehicles/list to confirm the vehicle exists
429 Too Many RequestsRate limit exceeded (60 req / 60 s per token)Wait the Retry-After header value before retrying
Empty access_tokenParsing errorEnsure Content-Type is application/x-www-form-urlencoded, not JSON
See Error handling for the full list of error codes and retry guidance.