Skip to main content
GET
/
api
/
devices
/
{deviceId}
/
dtc-codes
Get DTC Codes
curl --request GET \
  --url https://api.telemax.com.au/api/devices/{deviceId}/dtc-codes \
  --header 'Authorization: Bearer <token>'
[
  [
    {
      "code": "P0300",
      "description": "Random/Multiple Cylinder Misfire Detected",
      "severity": "<string>"
    }
  ]
]

Overview

Returns DTC rows from the latest stored DTC general record for the vehicle’s handler state.
A V2 version of this endpoint is available: DTC codes. New integrations should prefer V2.

Endpoint

GET /api/devices/{id}/dtc-codes

Path parameters

id
integer
required
Legacy vehicle id (despite devices in the path).

Response

200 OK — JSON array of arrays of DtcDto (one inner list per code in source):
FieldTypeDescription
codestringRaw code
descriptionstringOften empty in current implementation
severitystringOften empty

Example shape

[
  [
    {
      "code": "P0420",
      "description": "",
      "severity": ""
    }
  ],
  [
    {
      "code": "P0171",
      "description": "",
      "severity": ""
    }
  ]
]

Authorization

Uses the same vehicle check as GetReplay privilege (GetReplay).

Authorizations

Authorization
string
header
required

JWT Bearer token obtained from POST /api/authentication/token/user or POST /api/authentication/token/api-key.

Lifetime: ~24 hours (86,399 seconds). Cache the token and reuse it. Re-authenticate 5 minutes before expiry.

Scoping:

  • User tokens are scoped to a single company.
  • API key tokens may restrict access to a vehicle allowlist and/or action set (see token claims).

No refresh endpoint — re-authenticate with your credentials when the token expires.

Headers

Content-Type
string

Standard and must keep as it is.

Authorization
string
required

Bearer your_token

Path Parameters

deviceId
integer
required

Vehicle ID

Response

Successfully retrieved DTC codes

code
string
Example:

"P0300"

description
string
Example:

"Random/Multiple Cylinder Misfire Detected"

severity
string