Smartcar uses HTTP status codes to indicate success or failure of API requests. This includes:

  • 2XX: indicates success
  • 4XX: indicates an invalid request (e.g. a required parameter is missing from the request body)
  • 5XX: indicates Smartcar-related issues (e.g. a vehicle is not capable of fulfilling a request).

Error Response

All Smartcar errors contain the following fields:

NameTypeDescription
typestringA unique identifier that groups codes into broad categories of errors
codestringA short, descriptive identifier for the error that occurred
descriptionstringA short description of the code that provides additional information about the error. The description is always provided in English.
docURLstringA link to Smartcar’s doc center guide for the given type and code
statusCodenumberThe HTTP status code
requestIdstringSmartcar’s request ID
resolutionobjectAn object with at least one enumerated property named as “type” that specifies which action can be taken to resolve this error. There are three possible values for the property “type”: RETRY_LATER - Retry the request at a later time; REAUTHENTICATE - Prompt the user to re-authenticate in Smartcar Connect; and CONTACT_SUPPORT - Contact Smartcar’s support team. This object could contain other properties depending on the “type” of error.
detailarrayAn array of objects that provide further detail regarding the error. Only included with validation errors.

Error Codes

CodeTypeStatus
ACCOUNT_ISSUECONNECTED_SERVICES_ACCOUNT400
AUTHENTICATION_FAILEDCONNECTED_SERVICES_ACCOUNT400
NO_VEHICLESCONNECTED_SERVICES_ACCOUNT400
PERMISSIONCONNECTED_SERVICES_ACCOUNT400
SUBSCRIPTIONCONNECTED_SERVICES_ACCOUNT400
VEHICLE_MISSINGCONNECTED_SERVICES_ACCOUNT400
VIRTUAL_KEY_REQUIREDCONNECTED_SERVICES_ACCOUNT400
nullVALIDATION400
PARAMETERVALIDATION400
nullAUTHENTICATION401
nullPERMISSION403
PATHRESOURCE_NOT_FOUND404
VERSIONRESOURCE_NOT_FOUND404
ASLEEPVEHICLE_STATE409
CHARGING_IN_PROGRESSVEHICLE_STATE409
CHARGE_FAULTVEHICLE_STATE409
NOT_CHARGINGVEHICLE_STATE409
CHARGING_PLUG_NOT_CONNECTEDVEHICLE_STATE409
CHARGING_PLUG_CONNECTEDVEHICLE_STATE409
DOOR_OPENVEHICLE_STATE409
FULLY_CHARGEDVEHICLE_STATE409
HOOD_OPENVEHICLE_STATE409
IGNITION_ONVEHICLE_STATE409
IN_MOTIONVEHICLE_STATE409
LOW_BATTERYVEHICLE_STATE409
REMOTE_ACCESS_DISABLEDVEHICLE_STATE409
TRUNK_OPENVEHICLE_STATE409
UNKNOWNVEHICLE_STATE409
UNREACHABLEVEHICLE_STATE409
VEHICLE_OFFLINE_FOR_SERVICEVEHICLE_STATE409
VEHICLERATE_LIMIT429
SMARTCAR_APIRATE_LIMIT429
INVALID_PLANBILLING430
VEHICLE_LIMITBILLING430
VEHICLE_REQUEST_LIMITBILLING430
ACCOUNT_SUSPENDEDBILLING430
INTERNALSERVER500
INTERNALMULTIPLE_RECORDS_FOUND500
INTERNALRECORD_NOT_FOUND500
MAKE_NOT_COMPATIBLECOMPATIBILITY501
SMARTCAR_NOT_CAPABLECOMPATIBILITY501
VEHICLE_NOT_CAPABLECOMPATIBILITY501
PLATFORM_NOT_CAPABLECOMPATIBILITY501
INVALID_DATAUPSTREAM502
KNOWN_ISSUEUPSTREAM502
NO_RESPONSEUPSTREAM502
RATE_LIMITUPSTREAM502
UNKNOWN_ISSUEUPSTREAM502