LogoLogo
DocsHomeSupportContact
  • Getting Started
    • Introduction
    • Build on DIMO
  • DEVELOPER GUIDE
    • Developer Overview
    • Developer Console
    • Authentication
    • DIMO Developer SDKs
      • Data SDK
      • Login with DIMO SDK
        • React Component
        • Login with DIMO Redirect
        • Core Functionalities
      • TypeScript: Transactions SDK
      • SDK Release Notes
    • Low Code Tools
      • n8n: Getting Started
    • Permissions Contract: SACD
    • DIMO Credits
    • Response Types
    • Rate Limits
    • Developer FAQ
    • Developer Changelogs
    • Troubleshooting Common Issues
  • API References
    • Overview of DIMO API
    • Attestation API
    • Device Definitions API
    • Identity API
      • Schema & Types
      • Scalars
      • Nodes & Objects
        • AftermarketDevice
        • AftermarketDeviceConnection
        • DCN
        • DCNConnection
        • DeveloperLicense
        • DeviceDefinition
        • Earning
        • EarningsConnection
        • Manufacturer
        • Sacd
        • SyntheticDevice
        • Vehicle
        • VehicleConnection
        • VehicleEarnings
        • UserRewards
      • Common Queries
    • Telemetry API
      • Schema & Types
      • Scalars
      • Nodes & Objects
        • Signals
        • SignalsLatest
      • Common Queries
    • Token Exchange API
    • Trips API
    • Valuations API
  • DIMO Hardware
    • Introduction
    • DIMO Hardware Application
    • DIMO Manufacturing License
    • Development & Certification
    • Audits & Assessments
      • Hardware & Security Audit
      • Customer Experience Assessment
      • Integration Testing & Quality Control
      • Final Approval
    • DIMO Device License
      • Device Minting Certificates
    • Essential Documents
      • Hardware & Security Audit Checklist
      • Approved Hardware Auditors
      • DIMO Memorandum of Understanding (MOU)
  • Additional References
    • Developer License
    • DIMO GraphQL Basics
  • Deprecated Resources
    • Guides
      • Developer Journey
      • Quick Start Guide
      • Hello World
      • Code Exchange Flow
    • Data Availability
Powered by GitBook
On this page
  • Base URLs
  • VIN Decoding
  • Submit a Decode VIN Request
  • Device Definitions Lookup
  • Get Device Definitions by Search Filters

Was this helpful?

  1. API References

Device Definitions API

PreviousAttestation APINextIdentity API

Last updated 2 days ago

Was this helpful?

Developer Notes

As of 2024, the source of truth for Device Definitions are now stored in - a decentralized cloud database. Device Definitions details can now be returned from Identity API (see ). This API now consist of some helper functions for development needs.

Base URLs

https://device-definitions-api.dimo.zone


VIN Decoding

Submit a Decode VIN Request

POST /device-definitions/decode-vin

Submits a decoding request for , returns the device definition ID corresponding to the VIN.

Use application/json for raw body parameters.

Request Body

Name
Type
Description

countryCode*

String

Example:

vin*

String

Vehicle identifier number.

Example:

Headers

Name
Type
Description

Authorization*

String

{ deviceDefinitionId: 'lexus_nx_2021', newTransactionHash: '' }

VIN Decoding: Data SDK Function Calls

await dimo.devicedefinitions.decodeVin({
    developerJwt, 
    countryCode, 
    vin
});
dimo.device_definitions.decode_vin(dev_jwt, country_code, vin)
dimoClient.DeviceDefinitionsService.DecodeVinAsync(
    access_token,
    countryCode,
    vin
);

Device Definitions Lookup

Get Device Definitions by Search Filters

Retrieves a list of device definitions by search filters.

Query Parameters

Name
Type
Description

query*

String

Query filter (e.g. Lexus gx 2023)

makeSlug

String

Make of the vehicle (e.g. audi, lexus, etc)

modelSlug

String

Model of the vehicle (e.g. Tacoma, Accord, etc)

year

Number

Year of the vehicle (e.g. 2024)

page

Number

Page number (for pagination, defaults to the 1st page)

pageSize

Number

Page size (to specify the items to show in one page)

{
  "deviceDefinitions": [
    {
      "id": "lexus_gx_2023",
      "legacy_ksuid": "2ZvYP0pSbQoXPh2WUdQPeA6g4dM",
      "name": "2023 Lexus GX",
      "make": "Lexus",
      "model": "GX",
      "year": 2023,
      "imageUrl": ""
    },
    {
      "id": "lexus_gx-460_2023",
      "legacy_ksuid": "2CMmZpP6YjaKQlQnGDSAzQ4PJEG",
      "name": "2023 Lexus GX 460",
      "make": "Lexus",
      "model": "GX 460",
      "year": 2023,
      "imageUrl": ""
    }
  ],
  "facets": {
    "makes": [
      {
        "name": "Lexus",
        "count": 2
      }
    ],
    "models": [
      {
        "name": "GX",
        "count": 1
      },
      {
        "name": "GX 460",
        "count": 1
      }
    ],
    "years": [
      {
        "name": "2023",
        "count": 2
      }
    ]
  },
  "pagination": {
    "page": 1,
    "pageSize": 20,
    "totalItems": 2,
    "totalPages": 1
  }
}

Device Definitions by Search: Data SDK Function Calls

await dimo.DeviceDefinitions.search({
    query, 
    makeSlug, 
    modelSlug, 
    year, 
    page, 
    pageSize
});
dimo.device_definitions.search(query, make_slug, model_slug, year, page, page_size)
dimoClient.DeviceDefinitionsService.SearchAsync(
    query,
    makeSlug,
    modelSlug,
    year,
    page,
    pageSize
);

3-letter country code.

Developer JWT from the .

GET /device-definitions/search

"countryCode": "USA"
"vin": "1HGCM66886A015965"
{baseUrl}
ISO 3166-1 alpha-3
authentication step
Tableland
vehicle identification number
{baseUrl}
common queries