{
"compatible": true,
"reason": null,
"capabilities": [
{
"capable": false,
"endpoint": "/engine/oil",
"permission": "read_engine_oil",
"reason": "SMARTCAR_NOT_CAPABLE"
},
{
"capable": true,
"endpoint": "/battery",
"permission": "read_battery",
"reason": null
},
{
"capable": true,
"endpoint": "/battery/capacity",
"permission": "read_battery",
"reason": null
},
{
"capable": true,
"endpoint": "/vin",
"permission": "read_vin",
"reason": null
}
]
}
Compatibility API (Legacy)
By VIN (Deprecated)
Compatibility will vary by model, year, and trim. This API is for reference purposes only and it showcases vehicle makes and models that may be compatible with Smartcar and it does not guarantee that a specific vehicle will be compatible.
GET
/
v2.0
/
compatibility
{
"compatible": true,
"reason": null,
"capabilities": [
{
"capable": false,
"endpoint": "/engine/oil",
"permission": "read_engine_oil",
"reason": "SMARTCAR_NOT_CAPABLE"
},
{
"capable": true,
"endpoint": "/battery",
"permission": "read_battery",
"reason": null
},
{
"capable": true,
"endpoint": "/battery/capacity",
"permission": "read_battery",
"reason": null
},
{
"capable": true,
"endpoint": "/vin",
"permission": "read_vin",
"reason": null
}
]
}
This endpoint is deprecated and will be removed on September 15, 2026. After that date, requests return
410 Gone.Compatibility by VIN infers compatibility from a VIN’s make and model and does not guarantee that a specific vehicle is compatible. The most reliable way to confirm compatibility is to connect the vehicle through Smartcar Connect — Smartcar then reports exactly which signals and commands that vehicle supports, based on real activity on the platform.To browse coverage across makes and regions, see Compatible Vehicles, which reflects vehicles already active on the platform.- The vehicle supports the feature (e.g., a Ford Escape supports /fuel but a Mustang Mach-e does not)
- Smartcar supports the feature for the vehicle’s make
capabilities for VINs in Canada and Europe.
Request
Headersstring
default:"Basic "
required
The HTTP Authorization header using the Basic authentication scheme.To construct the Authorization header value:
- Join your
client_idandclient_secretwith a single colon (:). - Base64-encode the resulting string:
base64({client_id}:{client_secret}) - Prepend
Basic(with a trailing space) to the encoded string.
Basic bXktY2xpZW50LWlkOm15LWNsaWVudC1zZWNyZXQ=string
required
The VIN (Vehicle Identification Number) of the vehicle.
string
required
A space-separated list of permissions.
string
default:"US"
An optional country code string according to ISO 3166-1 alpha-2.
Response
boolean
true if the vehicle is likely compatible, false otherwise.string | null
array
An array containing capability objects for the set of endpoints that the provided scope value can provide authorization for.
This array will be empty if
compatible is false.Show Capability object
Show Capability object
string
One of the permissions provided in the scope parameter
string
One of the endpoints that the permission authorizes access to
boolean
true if the vehicle is likely capable of this feature, false otherwise {
"compatible": true,
"reason": null,
"capabilities": [
{
"capable": false,
"endpoint": "/engine/oil",
"permission": "read_engine_oil",
"reason": "SMARTCAR_NOT_CAPABLE"
},
{
"capable": true,
"endpoint": "/battery",
"permission": "read_battery",
"reason": null
},
{
"capable": true,
"endpoint": "/battery/capacity",
"permission": "read_battery",
"reason": null
},
{
"capable": true,
"endpoint": "/vin",
"permission": "read_vin",
"reason": null
}
]
}
A vehicle’s compatibility depends on many factors such as its make, model, model year, trim, etc. The API optimizes returning false positives.
Was this page helpful?

