Devices Endpoints

Base URLs

https://devices-api.dimo.zone


Vehicle Commands 🔏

Developer Notes

To access the vehicle commands, a token exchange transaction is required to obtain a vehicle JWT to get permission to access the vehicle's commands. Please check Token Exchange API prior to using this endpoint.

Send a Vehicle Command to Lock the Doors

POST {baseUrl}/v1/vehicle/{tokenId}/commands/doors/lock

Sends a vehicle command to lock the doors.

Path Parameters

NameTypeDescription

tokenId*

String

Vehicle token ID, this is the token ID of your vehicle NFT. A prerequisite is to obtain a token that is permitted to access trips data for this specific vehicle.

Headers

NameTypeDescription

Authorization*

String

{
    "requestId": "2bh8fNMoix9qduuiE9NHUzTGpZx"
}

Send a Vehicle Command to Unlock the Doors

POST {baseUrl}/v1/vehicle/{tokenId}/commands/doors/unlock

Sends a vehicle command to unlock the doors.

Path Parameters

NameTypeDescription

tokenId*

String

Vehicle token ID, this is the token ID of your vehicle NFT. A prerequisite is to obtain a token that is permitted to access trips data for this specific vehicle.

Headers

NameTypeDescription

Authorization*

String

{
    "requestId": "2bh8fNMoix9qduuiE9NHUzTGpZx"
}

Send a Vehicle Command to Open the Frunk

POST {baseUrl}/v1/vehicle/{tokenId}/commands/frunk/open

Sends a vehicle command to open the frunk.

Path Parameters

NameTypeDescription

tokenId*

String

Vehicle token ID, this is the token ID of your vehicle NFT. A prerequisite is to obtain a token that is permitted to access trips data for this specific vehicle.

Headers

NameTypeDescription

Authorization*

String

{
    "requestId": "2bh8fNMoix9qduuiE9NHUzTGpZx"
}

Send a Vehicle Command to Open the Trunk

POST {baseUrl}/v1/vehicle/{tokenId}/commands/trunk/open

Sends a vehicle command to open the trunk.

Path Parameters

NameTypeDescription

tokenId*

String

Vehicle token ID, this is the token ID of your vehicle NFT. A prerequisite is to obtain a token that is permitted to access trips data for this specific vehicle.

Headers

NameTypeDescription

Authorization*

String

{
    "requestId": "2bh8fNMoix9qduuiE9NHUzTGpZx"
}

Vehicle Error Codes 🔐

Developer Notes

  1. The following endpoints defers back to using the Web3 access token given that API users are interacting with user devices under their personal possession. No additional permission is needed.

  2. Vehicle error codes are not actively synced with the DIMO Network, hence a submission of error codes is required to store error code history. This is also a function seen in the DIMO Mobile App: https://dimo.zone/news/how-to-scan-your-cars-error-codes-with-dimo-mobile

List All Available Error Codes by User Device ID

GET {baseUrl}/v1/user/devices/{userDeviceId}/error-codes

Retrieves a list of error code queries made for the vehicle identified by the user device ID.

Path Parameters

NameTypeDescription

userDeviceId*

String

For userDeviceId, please refer to the User Device entity under Devices API.

Headers

NameTypeDescription

Authorization*

String

Bearer authentication using the access_token generated from the authentication step.

{
  "queries": [
    {
      "clearedAt": "2023-05-23T12:57:05Z",
      "errorCodes": [
        {
          "code": "P0148",
          "description": "Fuel delivery error"
        }
      ],
      "requestedAt": "2023-05-23T12:56:36Z"
    }
  ]
}

Submit Error Codes for Description by User Device ID

POST {baseUrl}/v1/user/devices/{userDeviceId}/error-codes

Submits a list of error codes for the vehicle identified by the user device ID. This submission will actively store the error codes provided for the vehicle while returning the full descriptions for evaluation.

Use application/json for raw body parameters.

Path Parameters

NameTypeDescription

userDeviceId*

String

For userDeviceId, please refer to the User Device entity under Devices API.

Headers

NameTypeDescription

Authorization*

String

Bearer authentication using the access_token generated from the authentication step.

Request Body

NameTypeDescription

queryDeviceErrorCodes*

Object

{ "errorCodes": [ "P0106", "P0279" ] }

{
  "queries": [
    {
      "clearedAt": "2023-05-23T12:57:05Z",
      "errorCodes": [
        {
          "code": "P0148",
          "description": "Fuel delivery error"
        }
      ],
      "requestedAt": "2023-05-23T12:56:36Z"
    }
  ]
}

Submit to Clear Most Recently Submitted Error Codes by User Device ID

POST {baseUrl}/v1/user/devices/{userDeviceId}/error-codes/clear

Submits a clearing signal to DIMO, indicating that the most recently error codes submitted for the vehicle has been cleared.

Path Parameters

NameTypeDescription

userDeviceId*

String

For userDeviceId, please refer to the User Device entity under Devices API.

Headers

NameTypeDescription

Authorization*

String

Bearer authentication using the access_token generated from the authentication step.

{
  "clearedAt": "2023-05-23T12:57:05Z",
  "errorCodes": [
    {
      "code": "P0148",
      "description": "Fuel delivery error"
    }
  ],
  "requestedAt": "2023-05-23T12:56:36Z"
}

Swagger Doc

Last updated