Connected Vehicle API

Volvo Cars’ new platform for innovation

Getting there...

Your Applications

Link copied

Overview

Link copied

The Connected Vehicle API allows your application to not only receive data from the car, but to also send commands. It includes vehicle status, diagnostics and statistics as well as visualisations, and metadata for a complete end user experiences. The remote commands include functions such as flash the lights, sound the horn, start & stop the engine and lock & unlock the vehicle. You are also able to retrieve a complete list of any commands that you have sent.

This API is a Beta release, and as such can be tested against your own vehicle but not published for general release. This API works for all connected cars up to model year 2021, excluding the XC40 Recharge BEV.

Below is a step-by-step guide that shows you how to use the Connected Vehicle API and how to get onboarded.

For advanced usage, you can find detailed information about parameters within the swagger or below within the documentation section. You can also download the OpenAPI specification (swagger file) to generate clients from it.

Authorization

Link copied

Before registering your application you must prepare a callback URL for whitelisting in the OAuth flow, see the Authorization page for more details.

API information

Link copied

The Connected Vehicle API will provide the possibility for accredited 3rd party applications to access vehicle resource values grouped under pre-defined resource groups.

In this section you will find information about all of the endpoints exposed by the API with information such as example requests and responses.

Below you can find general information about the different responses the API can return like what models, fields and status codes you can expect from the API as well as information about what happens when a request fails and the API returns an error.

Common Response model

Link copied

Most of the responses from the API will have a common response body regardless which endpoint is called, for successful (except 204) responses the response body will contain a data field which contains the information exposed by the endpoint. Each endpoint contains different datasets hence the format of the data field will change.

1{
2  "status": 0,
3  "operationId": "string",
4  "data": {}
5}
6
FieldDescription

status

The HTTP Status codes.

operationId

The id of the specific operation which can be used for fault tracing.

data

A more in detail description of the error.

Pagination Responses

Link copied

If a successful response was from an endpoint where the media type includes "list" part of the response will contain a pagination section:

1{
2  "pagination": {
3    "limit": 0,
4    "next": "string",
5    "offset": 0,
6    "previous": "string",
7    "total": 0
8  }
9}
10

This part contains the information about the current set of results returned and where to find the next set in the sequence.

FieldDescription

limit

The current limit used.

next

The query string that should be used to fetch the next set of results.

offset

The current offset used.

previous

The querystring to fetch the previous set of results.

total

The total number of results that are available.

Regarding next and previous, if for example the current request has been made with the query string "?limit=100&offset=0", next will contain "?limit=100&offset=1" if there are more results available. If next is empty or not available in the response it means that you have reached the last set of results and no more are available.

Status codes and error handling

Link copied

Below all the status codes which the API can return are described, note that which error codes that can be returned differ from endpoint to endpoint.

HTTP Status CodeNameDescription

200

OK

Indicates a successful GET request.

204

No Content

Indicates a successful POST/PUT request, the response will not contain a body.

400

Bad Request

Error code which indicates that the update did not pass the validation rules defined in the Open API spec or an invalid json payload was sent.

401

Unauthorized

Error code which usually indicates and error with either the subscription key or Bearer token, check the error message for details.

403

Resource forbidden

Error code which usually indicates that there are scopes missing in the Bearer token, check the error message for details.

406

Not Acceptable

Error code which indicates that an invalid mediatype was sent in the Accept header.

415

Unsupported Media Type

Error code which indicates that an invalid mediatype was sent in the Content-Type header, only applicable on endpoints where a request body is sent (e.g POST/PUT endpoints).

422

Unprocessable Entity

Error code which indicates that the update passes the validation rules defined in the Open API spec but fails against the internal business rules.

500

Internal Server Error

Error Code which indicate that something went wrong when processing the request, check the error message for details.

502

Bad Gateway

Error Code which indicate that something went wrong when calling the API.

Sometime things go wrong, in such cases the API will in addition to the error code return a message body containing information about the errors. The API has a base structure which will be the same regardless of the error and a dynamic details field which contains detailed error data specific for the particular HTTP status code and endpoint.

1{
2  "status": 0,
3  "operationId": "string",
4  "error": {
5    "detail": ["string"],
6    "message": "string",
7    "description": "string"
8  }
9}
10

Explanation of the fields:

FieldDescription

status

The HTTP Status codes.

operationId

The id of the specific operation which can be used for fault tracing.

error.description

A more in detail description of the error.

error.detail

An object describing more in detail what exactly went wrong, the format of the details object can differ between the endpoint and error codes.

error.message

A more in detail message.

Additionally you can include a GUID in the vcc-api-operationid header, this will make it easier for us to find your requests in our logs in cases where deeper analysis is needed.

Vehicle sleep and error modes

Link copied

When the car has not been used for more than 3-5 days, the invocation command request may not be able to perform because is set in standby mode. When starting the car the system reactivates and you can send invocation commads again.

The diffrent error statuses that is possible to get from invocation commands are:

StatusDescription

VEHICLE_REQUEST_TIMEOUT

The service invocation request failed due to a timeout sending the request to the vehicle, e.g. the vehicle has poor connectivity

VEHICLE_RESPONSE_TIMEOUT

The service invocation request failed due a timeout when waiting for a response from the vehicle

VEHICLE_RESPONSE_ERROR

The service invocation request failed due to a vehicle error

VEHICLE_IN_SLEEP_MODE

The service invocation request failed due to the vehicle being in sleep mode

UNLOCK_TIME_FRAME_PASSED

The vehicle was not unlocked within the given time frame. The user did not press trunk handle within time limit to unlock the car

UNABLE_TO_LOCK_DOOR_OPEN

Service invocation request failed to complete due to an open door

PRIVACY_POLICY_ENABLED

The vehicle in question has privacy policy enabled

Example Response when vehicle in sleep mode

1{
2  "status": 200,
3  "operationId": "d1458f6a-53ae-4668-90de-321c95bd3ec6",
4  "data": {
5    "created": "2021-05-03T10:19:16.762Z",
6    "updated": "2021-05-03T10:19:18.133Z",
7    "command": "FLASH",
8    "requestId": "6567aa84-0d96-485e-b140-2be516d430db",
9    "invokeStatus": "VEHICLE_IN_SLEEP"
10  }
11}
12

Version 1

Link copied

The version 1 of the API currently has the following operations:

  • [GET] v1/vehicles - Provides all current valid relations between a Volvo Id (user) and its connected vehicles.
  • [GET] v1/vehicles/{vin} - Provides details about the vehicle such as model, model-year etc.
  • [GET] v1/vehicles/{vin}/windows - Vehicle's Latest Window Status Values.
  • [GET] v1/vehicles/{vin}/warnings - Vehicle's Latest Warning Values like bulb failure.
  • [GET] v1/vehicles/{vin}/tyres - Vehicle's Latest Tyre Pressure Values.
  • [GET] v1/vehicles/{vin}/statistics - Vehicle's Latest Statistics such as average-speed, external-temperature.
  • [GET] v1/vehicles/{vin}/odometer - Vehicle's latest odometer value in kilometers.
  • [GET] v1/vehicles/{vin}/fuel - Vehicle's Latest Fuel Amount in Liters.
  • [GET] v1/vehicles/{vin}/environment - Environment Values such as external temperature collected by means of Vehicle sensors.
  • [GET] v1/vehicles/{vin}/engine - Vehicle's Latest Engine Diagnostic Values such as engine-coolant-level, oil level etc.
  • [GET] v1/vehicles/{vin}/engine-status - Vehicle's Latest Engine Status Value like RUNNING or STOPPED.
  • [GET] v1/vehicles/{vin}/doors - Vehicle's Door and Lock Status Values.
  • [GET] v1/vehicles/{vin}/diagnostics - Vehicle's Latest Diagnostic Values.
  • [GET] v1/vehicles/{vin}/brakes - Vehicle's Latest Brake Status Values like brake fluid level.
  • [GET] v1/vehicles/{vin}/command-accessibility - Vehicle's accessibility to receive commmands.

Commands

  • [GET] /v1/vehicles/{vin}/commands - Used to list the commands which can be sent to the vehicle
  • [POST] v1/vehicles/{vin}/commands/climatization-start - Used to send a climatization start command to the vehicle
  • [POST] v1/vehicles/{vin}/commands/climatization-stop - Used to send a climatization stop command to the vehicle
  • [POST] v1/vehicles/{vin}/commands/engine-start - Used to send an engine start command to the vehicle
  • [POST] v1/vehicles/{vin}/commands/engine-stop - Used to send an engine stop command to the vehicle
  • [POST] v1/vehicles/{vin}/commands/flash - Used to send a flash command to the vehicle
  • [POST] v1/vehicles/{vin}/commands/honk-flash - Used to send a honk and flash command to the vehicle
  • [POST] v1/vehicles/{vin}/commands/honk - Used to send a honk command to the vehicle
  • [POST] v1/vehicles/{vin}/commands/lock - Used to send a lock command to the vehicle
  • [POST] v1/vehicles/{vin}/commands/unlock - Used to send an unlock command to the vehicle
  • [POST] v1/vehicles/{vin}/commands/navi-point-of-interest - Used to send points of interest to the vehicle

Requests after command is performed to the car

  • [GET] /v1/vehicles/{vin}/requests/{id} - Used to get the details of the command referenced by the id parameter
  • [GET] /v1/vehicles/{vin}/requests/ - Used to get a list of the active and past command-requests invoked against the vehicle
  • [POST] /v1/vehicles/{vin}/requests/search - Used to perform an advanced search through the command-requests

Get Vehicle List

Link copied

Endpoint used to get a list of the vehicles which have active relation to the Volvo-id account for whom the request is executed.

Operation

GET - https://api.volvocars.com/connected-vehicle/v1/vehicles

Headers

  • accept - The mediatype of what should be returned. The valid values are;
    • application/vnd.volvocars.api.connected-vehicle.vehiclelist.v1+json

  • authorization - The jwt token issued by Volvo ID identity system.
  • vcc-api-key - The Subscription key

*All these header values are mandatory. They must exist in every request.

Required JWT Token scopes

  • openid
  • conve:vehicle_relation

Example Request

1curl -v -X GET 'https://api.volvocars.com/connected-vehicle/v1/vehicles' \
2-H 'accept: application/vnd.volvocars.api.connected-vehicle.vehiclelist.v1+json' \
3-H 'authorization: Bearer <insert-the-access-token-here>' \
4-H 'vcc-api-key: <insert-api-key-here>'
5

Example Response

1{
2  "status": 200,
3  "operationId": "b24cbfc8-5d20-41b4-b77b-340a6b3bb36f",
4  "data": [
5    {
6      "vin": "XXXZWA8T1K1000147"
7    }
8  ],
9  "pagination": {
10    "limit": 1,
11    "total": 1
12  }
13}
14

Response body

The response's data node provides a list of the vehicles fitting to the function's criteria

Field nameDescription

vin

17 letter Vehicle Identification Number

Get Vehicle Details

Link copied

Endpoint used to get some generic properties of the vehicle such as model, model year, color etc. together with one exterior and one interior image url.

Operation

GET - https://api.volvocars.com/connected-vehicle/v1/vehicles/{vin}

Headers

  • accept - The mediatype of what should be returned. The valid values are;
    • application/vnd.volvocars.api.connected-vehicle.vehicle.v1+json

  • authorization - The jwt token issued by Volvo ID identity system.
  • vcc-api-key - The Subscription key

*All these header values are mandatory. They must exist in every request.

Required JWT Token scopes

  • openid
  • conve:vehicle_relation

Example Request

1curl -v -X GET 'https://api.volvocars.com/connected-vehicle/v1/vehicles/{VIN}' \
2-H 'accept: application/vnd.volvocars.api.connected-vehicle.vehicle.v1+json' \
3-H 'authorization: Bearer <insert-the-access-token-here>' \
4-H 'vcc-api-key: <insert-api-key-here>'
5

Example Response

1{
2  "status": 200,
3  "operationId": "9d955266-ce84-43c4-8da2-159361349df5",
4  "data": {
5    "modelYear": "2019",
6    "vin": "XXXZWA8T1K1000147",
7    "externalColour": "SAVILE GREY",
8    "images": {
9      "exteriorDefaultUrl": "https://cas.volvocars.com/image/vbsnext-v4/exterior/MY19_1817/225/A8/13/49200/R131/_/TP02/_/_/TM02/JT02_f13/SR02/_/_/JB0C/T206/default.png?market=us&client=connected-vehicle-api&w=1920&bg=00000000&angle=0&fallback",
10      "interiorDefaultUrl": "https://cas.volvocars.com/image/vbsnext-v4/interior/MY19_1817/225/1/RC0000_f13/NC04/DI02/RU06/_/_/FJ01/EV02/K502/default.png?market=us&client=connected-vehicle-api&w=1920&bg=00000000&angle=0&fallback"
11    },
12    "descriptions": {
13      "model": "V60 II",
14      "upholstery": "CHARCOAL/LEAC/CHARC",
15      "steering": "LEFT HAND DRIVE"
16    }
17  }
18}
19

Response body

The response's data node provides the details pre-defined in the endpoint's specifications.

Field nameDescription

vin

17 letter Vehicle Identification Number

modelYear

Vehicle's model year

gearbox

Text describing the vehicle's gearbox

powerTrain

A code representing the vehicle's engine

externalColour

Vehicle's exterior colour

fuelType

Fuel type like Diesel, Petrol etc.

images.exteriorDefaultUrl

A url which provides a generic image of the vehicle's exterior view. This url has a validity period. It should not be cached for a further usage.

images.interiorDefaultUrl

A url which provides a generic image of the vehicle's interior view. This url has a validity period. It should not be cached for a further usage.

descriptions.model

A short text describing the model name / code

descriptions.upholstery

Text describing the vehicle's upholstery

descriptions.bodyType

Text describing the vehicle's body-type

descriptions.salesVersion

Text describing the vehicle's sales-version

descriptions.steering

Vehicle's stering wheel description

Get Window Status Values

Link copied

Endpoint used to get Vehicle's Latest Window Status Values

Operation

GET - https://api.volvocars.com/connected-vehicle/v1/vehicles/{vin}/windows

Headers

  • accept - The mediatype of what should be returned. The valid values are;
    • application/vnd.volvocars.api.connected-vehicle.vehicledata.v1+json

  • authorization - The jwt token issued by Volvo ID identity system.
  • vcc-api-key - The Subscription key

*All these header values are mandatory. They must exist in every request.

Required JWT Token scopes

  • openid
  • conve:windows_status

Example Request

1curl -v -X GET 'https://api.volvocars.com/connected-vehicle/v1/vehicles/{VIN}/windows' \
2-H 'accept: application/vnd.volvocars.api.connected-vehicle.vehicledata.v1+json' \
3-H 'authorization: Bearer <insert-the-access-token-here>' \
4-H 'vcc-api-key: <insert-api-key-here>'
5

Example Response

1{
2  "status": 200,
3  "operationId": "c65248ec-1c94-11eb-adc1-0242ac120002",
4  "data": {
5    "frontLeft": {
6      "value": "CLOSED",
7      "timestamp": 1606913231959
8    },
9    "frontRight": {
10      "value": "CLOSED",
11      "timestamp": 1606913231959
12    },
13    "rearLeft": {
14      "value": "CLOSED",
15      "timestamp": 1606913231959
16    },
17    "rearRight": {
18      "value": "CLOSED",
19      "timestamp": 1606913231959
20    }
21  }
22}
23

Response body

The response's data node lists the vehicle's latest window status values.

Field nameDescription

frontLeft.value

CLOSED or OPEN

frontLeft.timestamp

timestamp in Epoch milliseconds when the status value has been last retrieved from the vehicle

frontRight.value

CLOSED or OPEN

frontRight.timestamp

timestamp in Epoch milliseconds when the status value has been last retrieved from the vehicle

rearRight.value

CLOSED or OPEN

rearRight.timestamp

timestamp in Epoch milliseconds when the status value has been last retrieved from the vehicle

rearLeft.value

CLOSED or OPEN

rearLeft.timestamp

timestamp in Epoch milliseconds when the status value has been last retrieved from the vehicle

Get Warnings

Link copied

Used to get the vehicle data grouped under warning category such as bulb failure.

Operation

GET - https://api.volvocars.com/connected-vehicle/v1/vehicles/{vin}/warnings

Headers

  • accept - The mediatype of what should be returned. The valid values are;
    • application/vnd.volvocars.api.connected-vehicle.vehicledata.v1+json

  • authorization - The jwt token issued by Volvo ID identity system.
  • vcc-api-key - The Subscription key

*All these header values are mandatory. They must exist in every request.

Required JWT Token scopes

  • openid
  • conve:warnings

Example Request

1curl -v -X GET 'https://api.volvocars.com/connected-vehicle/v1/vehicles/{VIN}/warnings' \
2-H 'accept: application/vnd.volvocars.api.connected-vehicle.vehicledata.v1+json' \
3-H 'authorization: Bearer <insert-the-access-token-here>' \
4-H 'vcc-api-key: <insert-api-key-here>'
5

Example Response

1{
2  "operationId": "c65248ec-1c94-11eb-adc1-0242ac120002",
3  "status": 200,
4  "data": {
5    "bulbFailure": {
6      "timestamp": 1606913231959,
7      "value": "MULTIPLE"
8    }
9  }
10}
11

Response body

The response's data node provides the details for the queried vehicle data.

Field nameDescription

bulbFailure.value

represents which bulb(s) may have failure. Possible values are LEFT_TURN_ANY RIGHT_TURN_ANY LOW_BEAM_ANY LOW_BEAM_LEFT LOW_BEAM_RIGHT HIGH_BEAM_ANY HIGH_BEAM_LEFT HIGH_BEAM_RIGHT FOG_FRONT_ANY FOG_REAR_ANY STOP_ANY POSITION_ANY DAY_RUNNING_ANY TRAILER_TURN_ANY TRAILER_TURN_LEFT_ANY TRAILER_TURN_RIGHT_ANY TRAILER_STOP_ANY TRAILER_ELECTRICAL_FAILURE MULTIPLE

bulbFailure.timestamp

timestamp in Epoch milliseconds when the value has been last retrieved from the vehicle

Get Tyre Status Values

Link copied

Endpoint used to get Vehicle's Latest Tyre Status Values

Operation

GET - https://api.volvocars.com/connected-vehicle/v1/vehicles/{vin}/tyres

Headers

  • accept - The mediatype of what should be returned. The valid values are;
    • application/vnd.volvocars.api.connected-vehicle.vehicledata.v1+json

  • authorization - The jwt token issued by Volvo ID identity system.
  • vcc-api-key - The Subscription key

*All these header values are mandatory. They must exist in every request.

Required JWT Token scopes

  • openid
  • conve:tyre_status

Example Request

1curl -v -X GET 'https://api.volvocars.com/connected-vehicle/v1/vehicles/{VIN}/tyres' \
2-H 'accept: application/vnd.volvocars.api.connected-vehicle.vehicledata.v1+json' \
3-H 'authorization: Bearer <insert-the-access-token-here>' \
4-H 'vcc-api-key: <insert-api-key-here>'
5

Example Response

1{
2  "status": 200,
3  "operationId": "c65248ec-1c94-11eb-adc1-0242ac120002",
4  "data": {
5    "frontLeft": {
6      "value": "NORMAL",
7      "timestamp": 1606913231959
8    },
9    "frontRight": {
10      "value": "NORMAL",
11      "timestamp": 1606913231959
12    },
13    "rearLeft": {
14      "value": "NORMAL",
15      "timestamp": 1606913231959
16    },
17    "rearRight": {
18      "value": "NORMAL",
19      "timestamp": 1606913231959
20    }
21  }
22}
23

Response body

The response's data node lists the vehicle's latest window status values.

Field nameDescription

<tyre>.value

Tyre's latest retrieved pressure level. Possible values are LOW NORMAL HIGH LOWSOFT LOWHARD NOSENSOR SYSTEMFAULT

<tyre>.timestamp

timestamp in Epoch milliseconds when the status value has been last retrieved from the vehicle

Get Vehicle Statistics

Link copied

Endpoint used to get vehicle values grouped under the category of statistics. The latest retrieved value is presented upon a successful execution.

Operation

GET - https://api.volvocars.com/connected-vehicle/v1/vehicles/{vin}/statistics

Headers

  • accept - The mediatype of what should be returned. The valid values are;
    • application/vnd.volvocars.api.connected-vehicle.vehicledata.v1+json

  • authorization - The jwt token issued by Volvo ID identity system.
  • vcc-api-key - The Subscription key

*All these header values are mandatory. They must exist in every request.

Required JWT Token scopes

  • openid
  • conve:trip_statistics

Example Request

1curl -v -X GET 'https://api.volvocars.com/connected-vehicle/v1/vehicles/{VIN}/statistics' \
2-H 'accept: application/vnd.volvocars.api.connected-vehicle.vehicledata.v1+json' \
3-H 'authorization: Bearer <insert-the-access-token-here>' \
4-H 'vcc-api-key: <insert-api-key-here>'
5

Example Response

1{
2  "status": 200,
3  "operationId": "c65248ec-1c94-11eb-adc1-0242ac120002",
4  "data": {
5    "averageFuelConsumption": {
6      "value": "18.2",
7      "unit": "liters",
8      "timestamp": 1606913231959
9    },
10    "averageSpeed": {
11      "value": "14",
12      "unit": "kilometers_per_hour",
13      "timestamp": 1606913231959
14    },
15    "tripMeter1": {
16      "value": "222",
17      "unit": "kilometers",
18      "timestamp": 1606913231959
19    },
20    "tripMeter2": {
21      "value": "0",
22      "unit": "kilometers",
23      "timestamp": 1606913231959
24    }
25  }
26}
27

Response body

The response's data node lists the vehicle's latest statistic values.

Field nameDescription

averageFuelConsumption.value

The average fuel consumption per 100 kilometers calculated by the vehicle.

averageFuelConsumption.unit

always liters

averageFuelConsumption.timestamp

timestamp in Epoch milliseconds when the value has been last retrieved from the vehicle

averageSpeed.value

The average speed per hour calculated by the vehicle.

averageSpeed.unit

always kilometers_per_hour

averageSpeed.timestamp

timestamp in Epoch milliseconds when the value has been last retrieved from the vehicle

tripMeter1.value

TODO

tripMeter1.unit

always kilometers

tripMeter1.timestamp

timestamp in Epoch milliseconds when the value has been last retrieved from the vehicle

tripMeter2.value

TODO

tripMeter2.unit

always kilometers

tripMeter2.timestamp

timestamp in Epoch milliseconds when the value has been last retrieved from the vehicle

Get Odometer Value

Link copied

Endpoint used to read vehicle's latest odometer value in kilometers

Operation

GET - https://api.volvocars.com/connected-vehicle/v1/vehicles/{vin}/odometer

Headers

  • accept - The mediatype of what should be returned. The valid values are;
    • application/vnd.volvocars.api.connected-vehicle.vehicledata.v1+json

  • authorization - The jwt token issued by Volvo ID identity system.
  • vcc-api-key - The Subscription key

*All these header values are mandatory. They must exist in every request.

Required JWT Token scopes

  • openid
  • conve:odometer_status

Example Request

1curl -v -X GET 'https://api.volvocars.com/connected-vehicle/v1/vehicles/{VIN}/odometer' \
2-H 'accept: application/vnd.volvocars.api.connected-vehicle.vehicledata.v1+json' \
3-H 'authorization: Bearer <insert-the-access-token-here>' \
4-H 'vcc-api-key: <insert-api-key-here>'
5

Example Response

1{
2  "status": 200,
3  "operationId": "c65248ec-1c94-11eb-adc1-0242ac120002",
4  "data": {
5    "odometer": {
6      "value": "23554",
7      "unit": "kilometers",
8      "timestamp": 1606913231959
9    }
10  }
11}
12

Response body

The response's data node lists the vehicle's latest odometer value.

Field nameDescription

odometer.value

The latest retrieved odometer value

odometer.unit

always kilometers

odometer.timestamp

timestamp in Epoch milliseconds when the value has been last retrieved from the vehicle

Get Fuel Amount

Link copied

Endpoint used to get vehicle's latest fuel amount in liters

Operation

GET - https://api.volvocars.com/connected-vehicle/v1/vehicles/{vin}/fuel

Headers

  • accept - The mediatype of what should be returned. The valid values are;
    • application/vnd.volvocars.api.connected-vehicle.vehicledata.v1+json

  • authorization - The jwt token issued by Volvo ID identity system.
  • vcc-api-key - The Subscription key

*All these header values are mandatory. They must exist in every request.

Required JWT Token scopes

  • openid
  • conve:fuel_status

Example Request

1curl -v -X GET 'https://api.volvocars.com/connected-vehicle/v1/vehicles/{VIN}/fuel' \
2-H 'accept: application/vnd.volvocars.api.connected-vehicle.vehicledata.v1+json' \
3-H 'authorization: Bearer <insert-the-access-token-here>' \
4-H 'vcc-api-key: <insert-api-key-here>'
5

Example Response

1{
2  "status": 200,
3  "operationId": "c65248ec-1c94-11eb-adc1-0242ac120002",
4  "data": {
5    "fuelAmount": {
6      "value": "47",
7      "unit": "liters",
8      "timestamp": 1606913231959
9    }
10  }
11}
12

Response body

The response's data node lists the vehicle's latest fuel amount.

Field nameDescription

fuelAmount.value

The latest retrieved remaing fuel-amount

fuelAmount.unit

always liters

fuelAmount.timestamp

timestamp in Epoch milliseconds when the value has been last retrieved from the vehicle

Get Environment Values

Link copied

Environment Values such as external temperature collected by means of Vehicle sensors

Operation

GET - https://api.volvocars.com/connected-vehicle/v1/vehicles/{vin}/environment

Headers

  • accept - The mediatype of what should be returned. The valid values are;
    • application/vnd.volvocars.api.connected-vehicle.vehicledata.v1+json

  • authorization - The jwt token issued by Volvo ID identity system.
  • vcc-api-key - The Subscription key

*All these header values are mandatory. They must exist in every request.

Required JWT Token scopes

  • openid
  • conve:environment

Example Request

1curl -v -X GET 'https://api.volvocars.com/connected-vehicle/v1/vehicles/{VIN}/environment' \
2-H 'accept: application/vnd.volvocars.api.connected-vehicle.vehicledata.v1+json' \
3-H 'authorization: Bearer <insert-the-access-token-here>' \
4-H 'vcc-api-key: <insert-api-key-here>'
5

Example Response

1{
2  "status": 200,
3  "operationId": "c65248ec-1c94-11eb-adc1-0242ac120002",
4  "data": {
5    "externalTemp": {
6      "value": "4",
7      "unit": "celsius",
8      "timestamp": 1606913231959
9    }
10  }
11}
12

Response body

The response's data node lists the values fitting into the category of environment

Field nameDescription

externalTemp.value

The external temperature read by the vehicle's exterior temperature sensor

externalTemp.unit

always celsius

externalTemp.timestamp

timestamp in Epoch milliseconds when the value has been last retrieved from the vehicle

Get Engine Diagnostics

Link copied

Vehicle's latest engine diagnostic values such as engine-coolant-level, oil level etc.

Operation

GET - https://api.volvocars.com/connected-vehicle/v1/vehicles/{vin}/engine

Headers

  • accept - The mediatype of what should be returned. The valid values are;
    • application/vnd.volvocars.api.connected-vehicle.vehicledata.v1+json

  • authorization - The jwt token issued by Volvo ID identity system.
  • vcc-api-key - The Subscription key

*All these header values are mandatory. They must exist in every request.

Required JWT Token scopes

  • openid
  • conve:diagnostics_engine_status

Example Request

1curl -v -X GET 'https://api.volvocars.com/connected-vehicle/v1/vehicles/{VIN}/engine' \
2-H 'accept: application/vnd.volvocars.api.connected-vehicle.vehicledata.v1+json' \
3-H 'authorization: Bearer <insert-the-access-token-here>' \
4-H 'vcc-api-key: <insert-api-key-here>'
5

Example Response

1{
2  "status": 200,
3  "operationId": "c65248ec-1c94-11eb-adc1-0242ac120002",
4  "data": {
5    "engineRunning": {
6      "value": "STOPPED",
7      "timestamp": 1606913231959
8    },
9    "oilPressure": {
10      "value": "NORMAL",
11      "timestamp": 1606913231959
12    },
13    "engineCoolantLevel": {
14      "value": "NORMAL",
15      "timestamp": 1606913231959
16    },
17    "oilLevel": {
18      "value": "NORMAL",
19      "timestamp": 1606913231959
20    },
21    "engineCoolantTemp": {
22      "value": "48",
23      "unit": "celsius",
24      "timestamp": 1606913231959
25    }
26  }
27}
28

Response body

The response's data node lists the values fitting into the category of `engine diagnostics

Field nameDescription

engineRunning.value

The latest retrieved engine-status value.It can be either RUNNING or STOPPED

engineRunning.timestamp

timestamp in Epoch milliseconds when the value has been last retrieved from the vehicle

oilPressure.value

The vehicle's oil pressure value. It can be any of LOW NORMAL HIGH LOWSOFT LOWHARD NOSENSOR SYSTEMFAULT

oilPressure.timestamp

timestamp in Epoch milliseconds when the value has been last retrieved from the vehicle

engineCoolantLevel.value

The vehicle's latest coolant-level. It can be any of VERY_LOW LOW NORMAL HIGH VERY_HIGH

engineCoolantLevel.timestamp

timestamp in Epoch milliseconds when the value has been last retrieved from the vehicle

oilLevel.value

latest oil-level. It can be any of VERY_LOW LOW NORMAL HIGH VERY_HIGH

oilLevel.timestamp

timestamp in Epoch milliseconds when the value has been last retrieved from the vehicle

engineCoolantTemp.value

Latest retrieved cooloant-temperature.

engineCoolantTemp.unit

always celsius

engineCoolantTemp.timestamp

timestamp in Epoch milliseconds when the value has been last retrieved from the vehicle

Get Engine Status

Link copied

Vehicle's Latest Engine Status Value

Operation

GET - https://api.volvocars.com/connected-vehicle/v1/vehicles/{vin}/engine-status

Headers

  • accept - The mediatype of what should be returned. The valid values are;
    • application/vnd.volvocars.api.connected-vehicle.vehicledata.v1+json

  • authorization - The jwt token issued by Volvo ID identity system.
  • vcc-api-key - The Subscription key

*All these header values are mandatory. They must exist in every request.

Required JWT Token scopes

  • openid
  • conve:engine_status

Example Request

1curl -v -X GET 'https://api.volvocars.com/connected-vehicle/v1/vehicles/{VIN}/engine-status' \
2-H 'accept: application/vnd.volvocars.api.connected-vehicle.vehicledata.v1+json' \
3-H 'authorization: Bearer <insert-the-access-token-here>' \
4-H 'vcc-api-key: <insert-api-key-here>'
5

Example Response

1{
2  "status": 200,
3  "operationId": "c65248ec-1c94-11eb-adc1-0242ac120002",
4  "data": {
5    "engineRunning": {
6      "value": "STOPPED",
7      "timestamp": 1606913231959
8    }
9  }
10}
11

Response body

The response's data node provides the details for the queried vehicle data.

Field nameDescription

engineRunning.value

The latest retrieved engine-status value.It can be either RUNNING or STOPPED

engineRunning.timestamp

timestamp in Epoch milliseconds when the value has been last retrieved from the vehicle

Get Door And Lock Status Values

Link copied

Vehicle's door and lock status values

Operation

GET - https://api.volvocars.com/connected-vehicle/v1/vehicles/{vin}/doors

Headers

  • accept - The mediatype of what should be returned. The valid values are;
    • application/vnd.volvocars.api.connected-vehicle.vehicledata.v1+json

  • authorization - The jwt token issued by Volvo ID identity system.
  • vcc-api-key - The Subscription key

*All these header values are mandatory. They must exist in every request.

Required JWT Token scopes

  • openid
  • conve:doors_status
  • conve:lock_status

Example Request

1curl -v -X GET 'https://api.volvocars.com/connected-vehicle/v1/vehicles/{VIN}/doors' \
2-H 'accept: application/vnd.volvocars.api.connected-vehicle.vehicledata.v1+json' \
3-H 'authorization: Bearer <insert-the-access-token-here>' \
4-H 'vcc-api-key: <insert-api-key-here>'
5

Example Response

1{
2  "status": 200,
3  "operationId": "c65248ec-1c94-11eb-adc1-0242ac120002",
4  "data": {
5    "carLocked": {
6      "value": "UNLOCKED",
7      "timestamp": 1606913231959
8    },
9    "frontLeft": {
10      "value": "CLOSED",
11      "timestamp": 1606913231959
12    },
13    "frontRight": {
14      "value": "CLOSED",
15      "timestamp": 1606913231959
16    },
17    "hood": {
18      "value": "CLOSED",
19      "timestamp": 1606913231959
20    },
21    "rearLeft": {
22      "value": "CLOSED",
23      "timestamp": 1606913231959
24    },
25    "rearRight": {
26      "value": "CLOSED",
27      "timestamp": 1606913231959
28    },
29    "tailGate": {
30      "value": "CLOSED",
31      "timestamp": 1606913231959
32    }
33  }
34}
35

Response body

The response's data node provides the details for the queried vehicle data.

Field nameDescription

carLocked.value

LOCKED or UNLOCKED

carLocked.timestamp

timestamp in Epoch milliseconds when the value has been last retrieved from the vehicle

frontLeft.value

Front-left door status; OPEN or CLOSED

frontLeft.timestamp

timestamp in Epoch milliseconds when the value has been last retrieved from the vehicle

frontRight.value

Front-right door status; OPEN or CLOSED

frontRight.timestamp

timestamp in Epoch milliseconds when the value has been last retrieved from the vehicle

rearLeft.value

Rear-left door status; OPEN or CLOSED

rearLeft.timestamp

timestamp in Epoch milliseconds when the value has been last retrieved from the vehicle

rearRight.value

Rear-right door status; OPEN or CLOSED

rearRight.timestamp

timestamp in Epoch milliseconds when the value has been last retrieved from the vehicle

tailGate.value

Tailgate or trunk status; OPEN or CLOSED

tailGate.timestamp

timestamp in Epoch milliseconds when the value has been last retrieved from the vehicle

hood.value

Hood status; OPEN or CLOSED

hood.timestamp

timestamp in Epoch milliseconds when the value has been last retrieved from the vehicle

Get Diagnostic Values

Link copied

Used to get the vehicle values grouped under diagnostic category

Operation

GET - https://api.volvocars.com/connected-vehicle/v1/vehicles/{vin}/diagnostics

Headers

  • accept - The mediatype of what should be returned. The valid values are;
    • application/vnd.volvocars.api.connected-vehicle.vehicledata.v1+json

  • authorization - The jwt token issued by Volvo ID identity system.
  • vcc-api-key - The Subscription key

*All these header values are mandatory. They must exist in every request.

Required JWT Token scopes

  • openid
  • conve:diagnostics_workshop

Example Request

1curl -v -X GET 'https://api.volvocars.com/connected-vehicle/v1/vehicles/{VIN}/diagnostics' \
2-H 'accept: application/vnd.volvocars.api.connected-vehicle.vehicledata.v1+json' \
3-H 'authorization: Bearer <insert-the-access-token-here>' \
4-H 'vcc-api-key: <insert-api-key-here>'
5

Example Response

1{
2  "status": 200,
3  "operationId": "c65248ec-1c94-11eb-adc1-0242ac120002",
4  "data": {
5    "serviceStatus": {
6      "value": "TIME_EXCEEDED",
7      "timestamp": 1606913231959
8    },
9    "serviceTrigger": {
10      "value": "CALENDAR_TIME",
11      "timestamp": 1606913231959
12    },
13    "engineHoursToService": {
14      "value": "198",
15      "timestamp": 1606913231959
16    },
17    "kmToService": {
18      "value": "6462",
19      "unit": "kilometers",
20      "timestamp": 1606913231959
21    },
22    "monthsToService": {
23      "value": "0",
24      "timestamp": 1606913231959
25    },
26    "serviceType": {
27      "value": "KEYOUT",
28      "timestamp": 1606913231959
29    },
30    "washerFluidLevel": {
31      "value": "NORMAL",
32      "timestamp": 1606913231959
33    }
34  }
35}
36

Response body

The response's data node provides the details for the queried vehicle data.

Field nameDescription

serviceStatus.value

represents the service-status of the the vehicle. Possible values; NORMAL ALMOST_TIME_FOR_SERVICE TIME_FOR_SERVICE TIME_EXCEEDED

serviceStatus.timestamp

timestamp in Epoch milliseconds when the value has been last retrieved from the vehicle

serviceTrigger.value

The vehicle property triggering the service warning. CALENDAR_TIME ECM DISTANCE ENGINE_HOURS

serviceTrigger.timestamp

timestamp in Epoch milliseconds when the value has been last retrieved from the vehicle

engineHoursToService.value

The remaining engine-hours till the next scheduled service maintenance

engineHoursToService.timestamp

timestamp in Epoch milliseconds when the value has been last retrieved from the vehicle

kmToService.value

The remaining kilometers till the next scheduled service maintenance

kmToService.timestamp

timestamp in Epoch milliseconds when the value has been last retrieved from the vehicle

monthsToService.value

The remaining months till the next scheduled service maintenance

monthsToService.timestamp

timestamp in Epoch milliseconds when the value has been last retrieved from the vehicle

serviceType.value

???

serviceType.timestamp

timestamp in Epoch milliseconds when the value has been last retrieved from the vehicle

washerFluidLevel.value

THe latest retrieved washer fluid level. VERY_LOW LOW NORMAL HIGH VERY_HIGH

washerFluidLevel.timestamp

timestamp in Epoch milliseconds when the value has been last retrieved from the vehicle

Get Brake Status

Link copied

Used to get the vehicle values grouped under brake category

Operation

GET - https://api.volvocars.com/connected-vehicle/v1/vehicles/{vin}/brakes

Headers

  • accept - The mediatype of what should be returned. The valid values are;
    • application/vnd.volvocars.api.connected-vehicle.vehicledata.v1+json

  • authorization - The jwt token issued by Volvo ID identity system.
  • vcc-api-key - The Subscription key

*All these header values are mandatory. They must exist in every request.

Required JWT Token scopes

  • openid
  • conve:brake_status

Example Request

1curl -v -X GET 'https://api.volvocars.com/connected-vehicle/v1/vehicles/{VIN}/brakes' \
2-H 'accept: application/vnd.volvocars.api.connected-vehicle.vehicledata.v1+json' \
3-H 'authorization: Bearer <insert-the-access-token-here>' \
4-H 'vcc-api-key: <insert-api-key-here>'
5

Example Response

1{
2  "status": 200,
3  "operationId": "c65248ec-1c94-11eb-adc1-0242ac120002",
4  "data": {
5    "brakeFluid": {
6      "value": "NORMAL",
7      "timestamp": 1606913231959
8    }
9  }
10}
11

Response body

The response's data node provides the details for the queried vehicle data.

Field nameDescription

brakeFluid.value

Latest read brake fluid level. Possible values; VERY_LOW LOW NORMAL HIGH VERY_HIGH

brakeFluid.timestamp

timestamp in Epoch milliseconds when the value has been last retrieved from the vehicle

Get Command Accessibility

Link copied

Provides information if the vehicle is accessible to receive and process invocation commands together with a timestamp till when it is or was accessible. In the case of accessible field is false, the vehicle needs to be started manually.

Operation

GET - https://api.volvocars.com/connected-vehicle/v1/vehicles/{vin}/command-accessibility

Headers

  • accept - The mediatype of what should be returned. The valid values are;
    • application/vnd.volvocars.api.connected-vehicle.commands.accessibility.v1+json

  • authorization - The jwt token issued by Volvo ID identity system.
  • vcc-api-key - The Subscription key

*All these header values are mandatory. They must exist in every request.

Required JWT Token scopes

  • openid
  • conve:command_accessibility

Example Request

1curl -v -X GET 'https://api.volvocars.com/connected-vehicle/v1/vehicles/{VIN}/command-accessibility' \
2-H 'accept: application/vnd.volvocars.api.connected-vehicle.commands.accessibility.v1+json' \
3-H 'authorization: Bearer <insert-the-access-token-here>' \
4-H 'vcc-api-key: <insert-api-key-here>'
5

Example Response

1{
2  "status": 200,
3  "operationId": "ca69f5b6-1aee-4966-8d98-2e4833c45dfc",
4  "data": {
5    "accessible": false,
6    "accessibleUntil": "2021-06-09T22:30:28Z"
7  }
8}
9

Response body

The response's data node provides the details for the queried vehicle data.

Field nameDescription

accessible

Status if the vehicle is accessible. Possible values; true false

accessibleUntil

The timestamp in Epoch milliseconds that the vehicle is accessible until it goes offline

List available commands

Link copied

Used to list the commands which can be sent to the vehicle. Each command can then be used in the respective endpoint. See below example response with list of commands.

Operation

GET - https://api.volvocars.com/connected-vehicle/v1/vehicles/{vin}/commands

Headers

  • accept - The mediatype of what should be returned. The valid values are;
    • application/vnd.volvocars.api.connected-vehicle.commandlist.v1+json

  • authorization - The jwt token issued by Volvo ID identity system.
  • vcc-api-key - The Subscription key

*All these header values are mandatory. They must exist in every request.

Required JWT Token scopes

  • openid
  • conve:commands

Example Request

1curl -v -X GET 'https://api.volvocars.com/connected-vehicle/v1/vehicles/{vin}/commands' \
2-H 'accept: application/vnd.volvocars.api.connected-vehicle.commandlist.v1+json' \
3-H 'authorization: Bearer <insert-the-access-token-here>' \
4-H 'vcc-api-key: <insert-api-key-here>'
5

Example response

1{
2  "status": 200,
3  "operationId": "7aea85bb-3a32-4638-b7b1-8319698e8f74",
4  "data": [
5    {
6      "command": "CLIMATIZATION_START",
7      "href": "https://api.volvocars.com/connected-vehicle/v1/vehicles/{vin}/commands/climatization-start"
8    },
9    {
10      "command": "CLIMATIZATION_STOP",
11      "href": "https://api.volvocars.com/connected-vehicle/v1/vehicles/{vin}/commands/climatization-stop"
12    },
13    {
14      "command": "ENGINE_START",
15      "href": "https://api.volvocars.com/connected-vehicle/v1/vehicles/{vin}/commands/engine-start"
16    },
17    {
18      "command": "ENGINE_STOP",
19      "href": "https://api.volvocars.com/connected-vehicle/v1/vehicles/{vin}/commands/engine-stop"
20    },
21    {
22      "command": "FLASH",
23      "href": "https://api.volvocars.com/connected-vehicle/v1/vehicles/{vin}/commands/flash"
24    },
25    {
26      "command": "HONK",
27      "href": "https://api.volvocars.com/connected-vehicle/v1/vehicles/{vin}/commands/honk"
28    },
29    {
30      "command": "HONK_AND_FLASH",
31      "href": "https://api.volvocars.com/connected-vehicle/v1/vehicles/{vin}/commands/honk-flash"
32    },
33    {
34      "command": "LOCK",
35      "href": "https://api.volvocars.com/connected-vehicle/v1/vehicles/{vin}/commands/lock"
36    },
37    {
38      "command": "UNLOCK",
39      "href": "https://api.volvocars.com/connected-vehicle/v1/vehicles/{vin}/commands/unlock"
40    }
41  ]
42}
43

Response body

The response's data node provides the details for the queried request

Field nameDescription

command

Name of the commads available for a vehicle

href

URL of the specific command for a vehicle

Post climatization start

Link copied

Used to send a climatization start command to the vehicle

Operation

POST - https://api.volvocars.com/connected-vehicle/v1/vehicles/{vin}/commands/climatization-start

Headers

  • content-type - The mediatype of what should be returned. The valid values are;
    • application/vnd.volvocars.api.connected-vehicle.climatizationstart.v1+json

  • authorization - The jwt token issued by Volvo ID identity system.
  • vcc-api-key - The Subscription key

*All these header values are mandatory. They must exist in every request.

Required JWT Token scopes

  • openid
  • conve:climatization_start_stop

Example Request

1curl -v -X POST 'https://api.volvocars.com/connected-vehicle/v1/vehicles/{vin}/commands/climatization-start' \
2-H 'content-type: application/vnd.volvocars.api.connected-vehicle.climatizationstart.v1+json' \
3-H 'authorization: Bearer <insert-the-access-token-here>' \
4-H 'vcc-api-key: <insert-api-key-here>' \
5-d ''
6

Request body

The request body data needed to perform the invocation command is NONE

Example response

1{
2  "status": 202,
3  "operationId": "d91bc882-ab09-4cdf-95eb-1e52b43d06d6",
4  "async": {
5    "status": "RUNNING",
6    "id": "2b116f42-921b-4976-b369-d3506de58a29",
7    "href": "https://api.volvocars.com/connected-vehicle/v1/vehicles/{vin}/request/2b116f42-921b-4976-b369-d3506de58a29",
8    "expires": "2022-03-12T13:25:21Z"
9  }
10}
11

Response body

The response's data node provides the details for the queried request

Field nameDescription

status

Response status code

operationId

Id to log and track and the request

async.status

Status of the request sent to the vehicle. Possible values: RUNNING,WAITING, COMPLETED, REJECTED, UNKNOWN, TIMEOUT, CONNECTION_FAILURE, VEHICLE_IN_SLEEP, UNLOCK_TIME_FRAME_PASSED, UNABLE_TO_LOCK_DOOR_OPEN

async.id

Request id

async.href

URL of the request to see the details and status of the command

async.expires

The expiry date for getting the details about the request. The invocation log is stored for one year.

Post climatization stop

Link copied

Used to send a climatization stop command to the vehicle

Operation

POST - https://api.volvocars.com/connected-vehicle/v1/vehicles/{vin}/commands/climatization-stop

Headers

  • content-type - The mediatype of what should be returned. The valid values are;
    • application/vnd.volvocars.api.connected-vehicle.climatizationstop.v1+json

  • authorization - The jwt token issued by Volvo ID identity system.
  • vcc-api-key - The Subscription key

*All these header values are mandatory. They must exist in every request.

Required JWT Token scopes

  • openid
  • conve:climatization_start_stop

Example Request

1curl -v -X POST 'https://api.volvocars.com/connected-vehicle/v1/vehicles/{vin}/commands/climatization-stop' \
2-H 'content-type: application/vnd.volvocars.api.connected-vehicle.climatizationstop.v1+json' \
3-H 'authorization: Bearer <insert-the-access-token-here>' \
4-H 'vcc-api-key: <insert-api-key-here>' \
5-d ''
6

Request body

The request body data needed to perform the invocation command is NONE

Example response

1{
2  "status": 202,
3  "operationId": "d91bc882-ab09-4cdf-95eb-1e52b43d06d6",
4  "async": {
5    "status": "RUNNING",
6    "id": "2b116f42-921b-4976-b369-d3506de58a29",
7    "href": "https://api.volvocars.com/connected-vehicle/v1/vehicles/{vin}/request/2b116f42-921b-4976-b369-d3506de58a29",
8    "expires": "2022-03-12T13:25:21Z"
9  }
10}
11

Response body

The response's data node provides the details for the queried request

Field nameDescription

status

Response status code

operationId

Id to log and track and the request

async.status

Status of the request sent to the car. Possible values: RUNNING,WAITING, COMPLETED, REJECTED, UNKNOWN, TIMEOUT, CONNECTION_FAILURE, VEHICLE_IN_SLEEP, UNLOCK_TIME_FRAME_PASSED, UNABLE_TO_LOCK_DOOR_OPEN

async.id

Request id

async.href

URL of the request to see the details and status of the command

async.expires

The expiry date for getting the details about the request. The invocation log is stored for one year.

Post engine start

Link copied

Used to send an engine start command to the vehicle

Operation

POST - https://api.volvocars.com/connected-vehicle/v1/vehicles/{vin}/commands/engine-start

Headers

  • content-type - The mediatype of what should be returned. The valid values are;
    • application/vnd.volvocars.api.connected-vehicle.enginestart.v1+json

  • authorization - The jwt token issued by Volvo ID identity system.
  • vcc-api-key - The Subscription key

*All these header values are mandatory. They must exist in every request.

Required JWT Token scopes

  • openid
  • conve:engine_start_stop

Example Request

1curl -v -X POST 'https://api.volvocars.com/connected-vehicle/v1/vehicles/{vin}/commands/engine-start' \
2-H 'content-type: application/vnd.volvocars.api.connected-vehicle.enginestart.v1+json' \
3-H 'authorization: Bearer <insert-the-access-token-here>' \
4-H 'vcc-api-key: <insert-api-key-here>' \
5-d '{\"runtimeMinutes\":10}'
6

Example request body

The request body data needed to perform the invocation command is runtimeMinutes. This is the time in minutes engine will be running. Is required for engine start and can maximum be set to 15 minutes.

1{
2  "runtimeMinutes": 10
3}
4

Example response

1{
2  "status": 202,
3  "operationId": "d91bc882-ab09-4cdf-95eb-1e52b43d06d6",
4  "async": {
5    "status": "RUNNING",
6    "id": "2b116f42-921b-4976-b369-d3506de58a29",
7    "href": "https://api.volvocars.com/connected-vehicle/v1/vehicles/{vin}/request/2b116f42-921b-4976-b369-d3506de58a29",
8    "expires": "2022-03-12T13:25:21Z"
9  }
10}
11

Response body

The response's data node provides the details for the queried request

Field nameDescription

status

Response status code

operationId

Id to log and track and the request

async.status

Status of the request sent to the car. Possible values: RUNNING,WAITING, COMPLETED, REJECTED, UNKNOWN, TIMEOUT, CONNECTION_FAILURE, VEHICLE_IN_SLEEP, UNLOCK_TIME_FRAME_PASSED, UNABLE_TO_LOCK_DOOR_OPEN

async.id

Request id

async.href

URL of the request to see the details and status of the command

async.expires

The expiry date for getting the details about the request. The invocation log is stored for one year.

Post engine stop

Link copied

Used to send an engine stop command to the vehicle

Operation

POST - https://api.volvocars.com/connected-vehicle/v1/vehicles/{vin}/commands/engine-stop

Headers

  • content-type - The mediatype of what should be returned. The valid values are;
    • application/vnd.volvocars.api.connected-vehicle.enginestop.v1+json

  • authorization - The jwt token issued by Volvo ID identity system.
  • vcc-api-key - The Subscription key

*All these header values are mandatory. They must exist in every request.

Required JWT Token scopes

  • openid
  • conve:engine_start_stop

Example Request

1curl -v -X POST 'https://api.volvocars.com/connected-vehicle/v1/vehicles/{vin}/commands/engine-stop' \
2-H 'content-type: application/vnd.volvocars.api.connected-vehicle.enginestop.v1+json' \
3-H 'authorization: Bearer <insert-the-access-token-here>' \
4-H 'vcc-api-key: <insert-api-key-here>' \
5-d ''
6

Request body

The request body data needed to perform the invocation command is NONE.

Example response

1{
2  "status": 202,
3  "operationId": "d91bc882-ab09-4cdf-95eb-1e52b43d06d6",
4  "async": {
5    "status": "RUNNING",
6    "id": "2b116f42-921b-4976-b369-d3506de58a29",
7    "href": "https://api.volvocars.com/connected-vehicle/v1/vehicles/{vin}/request/2b116f42-921b-4976-b369-d3506de58a29",
8    "expires": "2022-03-12T13:25:21Z"
9  }
10}
11

Response body

The response's data node provides the details for the queried request

Field nameDescription

status

Response status code

operationId

Id to log and track and the request

async.status

Status of the request sent to the car. Possible values: RUNNING,WAITING, COMPLETED, REJECTED, UNKNOWN, TIMEOUT, CONNECTION_FAILURE, VEHICLE_IN_SLEEP, UNLOCK_TIME_FRAME_PASSED, UNABLE_TO_LOCK_DOOR_OPEN

async.id

Request id

async.href

URL of the request to see the details and status of the command

async.expires

The expiry date for getting the details about the request. The invocation log is stored for one year.

Post flash

Link copied

Used to send a flash command to the vehicle. The vehicles turn signals will flash.

Operation

POST - https://api.volvocars.com/connected-vehicle/v1/vehicles/{vin}/commands/flash

Headers

  • content-type - The mediatype of what should be returned. The valid values are;
    • application/vnd.volvocars.api.connected-vehicle.flash.v1+json

  • authorization - The jwt token issued by Volvo ID identity system.
  • vcc-api-key - The Subscription key

*All these header values are mandatory. They must exist in every request.

Required JWT Token scopes

  • openid
  • conve:honk_flash

Example Request

1curl -v -X POST 'https://api.volvocars.com/connected-vehicle/v1/vehicles/{vin}/commands/flash' \
2-H 'content-type: application/vnd.volvocars.api.connected-vehicle.flash.v1+json' \
3-H 'authorization: Bearer <insert-the-access-token-here>' \
4-H 'vcc-api-key: <insert-api-key-here>' \
5-d ''
6

Request body

The request body data needed to perform the invocation command is NONE.

Example response

1{
2  "status": 202,
3  "operationId": "d91bc882-ab09-4cdf-95eb-1e52b43d06d6",
4  "async": {
5    "status": "RUNNING",
6    "id": "2b116f42-921b-4976-b369-d3506de58a29",
7    "href": "https://api.volvocars.com/connected-vehicle/v1/vehicles/{vin}/request/2b116f42-921b-4976-b369-d3506de58a29",
8    "expires": "2022-03-12T13:25:21Z"
9  }
10}
11

Response body

The response's data node provides the details for the queried request

Field nameDescription

status

Response status code

operationId

Id to log and track and the request

async.status

Status of the request sent to the car. Possible values: RUNNING,WAITING, COMPLETED, REJECTED, UNKNOWN, TIMEOUT, CONNECTION_FAILURE, VEHICLE_IN_SLEEP, UNLOCK_TIME_FRAME_PASSED, UNABLE_TO_LOCK_DOOR_OPEN

async.id

Request id

async.href

URL of the request to see the details and status of the command

async.expires

The expiry date for getting the details about the request. The invocation log is stored for one year.

Post honk and flash

Link copied

Used to send a honk and flash command to the vehicle

Operation

POST - https://api.volvocars.com/connected-vehicle/v1/vehicles/{vin}/commands/honk-flash

Headers

  • content-type - The mediatype of what should be returned. The valid values are;
    • application/vnd.volvocars.api.connected-vehicle.honkandflash.v1+json

  • authorization - The jwt token issued by Volvo ID identity system.
  • vcc-api-key - The Subscription key

*All these header values are mandatory. They must exist in every request.

Required JWT Token scopes

  • openid
  • conve:honk_flash

Example Request

1curl -v -X POST 'https://api.volvocars.com/connected-vehicle/v1/vehicles/{vin}/commands/honk-flash' \
2-H 'content-type: application/vnd.volvocars.api.connected-vehicle.honkandflash.v1+json' \
3-H 'authorization: Bearer <insert-the-access-token-here>' \
4-H 'vcc-api-key: <insert-api-key-here>' \
5-d ''
6

Request body

The request body data needed to perform the invocation command is NONE.

Example response

1{
2  "status": 202,
3  "operationId": "d91bc882-ab09-4cdf-95eb-1e52b43d06d6",
4  "async": {
5    "status": "RUNNING",
6    "id": "2b116f42-921b-4976-b369-d3506de58a29",
7    "href": "https://api.volvocars.com/connected-vehicle/v1/vehicles/{vin}/request/2b116f42-921b-4976-b369-d3506de58a29",
8    "expires": "2022-03-12T13:25:21Z"
9  }
10}
11

Response body

The response's data node provides the details for the queried request

Field nameDescription

status

Response status code

operationId

Id to log and track and the request

async.status

Status of the request sent to the car. Possible values: RUNNING,WAITING, COMPLETED, REJECTED, UNKNOWN, TIMEOUT, CONNECTION_FAILURE, VEHICLE_IN_SLEEP, UNLOCK_TIME_FRAME_PASSED, UNABLE_TO_LOCK_DOOR_OPEN

async.id

Request id

async.href

URL of the request to see the details and status of the command

async.expires

The expiry date for getting the details about the request. The invocation log is stored for one year.

Post honk

Link copied

Used to send a honk command to the vehicle

Operation

POST - https://api.volvocars.com/connected-vehicle/v1/vehicles/{vin}/commands/honk

Headers

  • content-type - The mediatype of what should be returned. The valid values are;
    • application/vnd.volvocars.api.connected-vehicle.honk.v1+json

  • authorization - The jwt token issued by Volvo ID identity system.
  • vcc-api-key - The Subscription key

*All these header values are mandatory. They must exist in every request.

Required JWT Token scopes

  • openid
  • conve:honk_flash

Example Request

1curl -v -X POST 'https://api.volvocars.com/connected-vehicle/v1/vehicles/{vin}/commands/honk' \
2-H 'content-type: application/vnd.volvocars.api.connected-vehicle.honk.v1+json' \
3-H 'authorization: Bearer <insert-the-access-token-here>' \
4-H 'vcc-api-key: <insert-api-key-here>' \
5-d ''
6

Request body

The request body data needed to perform the invocation command is NONE.

Example response

1{
2  "status": 202,
3  "operationId": "d91bc882-ab09-4cdf-95eb-1e52b43d06d6",
4  "async": {
5    "status": "RUNNING",
6    "id": "2b116f42-921b-4976-b369-d3506de58a29",
7    "href": "https://api.volvocars.com/connected-vehicle/v1/vehicles/{vin}/request/2b116f42-921b-4976-b369-d3506de58a29",
8    "expires": "2022-03-12T13:25:21Z"
9  }
10}
11

Response body

The response's data node provides the details for the queried request

Field nameDescription

status

Response status code

operationId

Id to log and track and the request

async.status

Status of the request sent to the car. Possible values: RUNNING,WAITING, COMPLETED, REJECTED, UNKNOWN, TIMEOUT, CONNECTION_FAILURE, VEHICLE_IN_SLEEP, UNLOCK_TIME_FRAME_PASSED, UNABLE_TO_LOCK_DOOR_OPEN

async.id

Request id

async.href

URL of the request to see the details and status of the command

async.expires

The expiry date for getting the details about the request. The invocation log is stored for one year.

Post lock

Link copied

Used to send a lock command to the vehicle

Operation

POST - https://api.volvocars.com/connected-vehicle/v1/vehicles/{vin}/commands/lock

Headers

  • content-type - The mediatype of what should be returned. The valid values are;
    • application/vnd.volvocars.api.connected-vehicle.lock.v1+json

  • authorization - The jwt token issued by Volvo ID identity system.
  • vcc-api-key - The Subscription key

*All these header values are mandatory. They must exist in every request.

Required JWT Token scopes

  • openid
  • conve:lock

Example Request

1curl -v -X POST 'https://api.volvocars.com/connected-vehicle/v1/vehicles/{vin}/commands/lock' \
2-H 'content-type: application/vnd.volvocars.api.connected-vehicle.lock.v1+json' \
3-H 'authorization: Bearer <insert-the-access-token-here>' \
4-H 'vcc-api-key: <insert-api-key-here>' \
5-d ''
6

Request body

The request body data needed to perform the invocation command is NONE.

Example response

1{
2  "status": 202,
3  "operationId": "d91bc882-ab09-4cdf-95eb-1e52b43d06d6",
4  "async": {
5    "status": "RUNNING",
6    "id": "2b116f42-921b-4976-b369-d3506de58a29",
7    "href": "https://api.volvocars.com/connected-vehicle/v1/vehicles/{vin}/request/2b116f42-921b-4976-b369-d3506de58a29",
8    "expires": "2022-03-12T13:25:21Z"
9  }
10}
11

Response body

The response's data node provides the details for the queried request

Field nameDescription

status

Response status code

operationId

Id to log and track and the request

async.status

Status of the request sent to the car. Possible values: RUNNING,WAITING, COMPLETED, REJECTED, UNKNOWN, TIMEOUT, CONNECTION_FAILURE, VEHICLE_IN_SLEEP, UNLOCK_TIME_FRAME_PASSED, UNABLE_TO_LOCK_DOOR_OPEN

async.id

Request id

async.href

URL of the request to see the details and status of the command

async.expires

The expiry date for getting the details about the request. The invocation log is stored for one year.

Post unlock

Link copied

Used to send an unlock command to the vehicle. The trunk/boot door will be unlocked. When opening the trunk/boot door in a certain unlock duration time the other doors will be opened as well.

Operation

POST - https://api.volvocars.com/connected-vehicle/v1/vehicles/{vin}/commands/unlock

Headers

  • content-type - The mediatype of what should be returned. The valid values are;
    • application/vnd.volvocars.api.connected-vehicle.unlock.v1+json

  • authorization - The jwt token issued by Volvo ID identity system.
  • vcc-api-key - The Subscription key

*All these header values are mandatory. They must exist in every request.

Required JWT Token scopes

  • openid
  • conve:unlock

Example Request

1curl -v -X POST 'https://api.volvocars.com/connected-vehicle/v1/vehicles/{vin}/commands/unlock' \
2-H 'content-type: application/vnd.volvocars.api.connected-vehicle.unlock.v1+json' \
3-H 'authorization: Bearer <insert-the-access-token-here>' \
4-H 'vcc-api-key: <insert-api-key-here>' \
5-d '{\"unlockDuration\":120}'
6

Example request body

The request body data needed to perform the invocation command is unlockDuration. This it the time in seconds that the trunk/boot door can be unlocked. After that time the trunk/boot door will not be able to open. Can maximum be set to 120 seconds.

1{
2  "unlockDuration": 120
3}
4

Example response

1{
2  "status": 202,
3  "operationId": "d91bc882-ab09-4cdf-95eb-1e52b43d06d6",
4  "async": {
5    "status": "RUNNING",
6    "id": "2b116f42-921b-4976-b369-d3506de58a29",
7    "href": "https://api.volvocars.com/connected-vehicle/v1/vehicles/{vin}/request/2b116f42-921b-4976-b369-d3506de58a29",
8    "expires": "2022-03-12T13:25:21Z"
9  }
10}
11

Response body

The response's data node provides the details for the queried request

Field nameDescription

status

Response status code

operationId

Id to log and track and the request

async.status

Status of the request sent to the car. Possible values: RUNNING,WAITING, COMPLETED, REJECTED, UNKNOWN, TIMEOUT, CONNECTION_FAILURE, VEHICLE_IN_SLEEP, UNLOCK_TIME_FRAME_PASSED, UNABLE_TO_LOCK_DOOR_OPEN

async.id

Request id

async.href

URL of the request to see the details and status of the command

async.expires

The expiry date for getting the details about the request. The invocation log is stored for one year.

Post navigation point of interest

Link copied

Used to send points of interest to the vehicle's infotainment system. The points will be saved under the dashboard library. You can start navigation against the position and also send a name and phone number of the destination. This will only work if the vehicle has internet access via either external sim card, Bluetooth or wifi.

Operation

POST - https://api.volvocars.com/connected-vehicle/v1/vehicles/{vin}/commands/navi-point-of-interest

Headers

  • content-type - The mediatype of what should be returned. The valid values are;
    • application/vnd.volvocars.api.connected-vehicle.navipointofinterest.v1+json

  • authorization - The jwt token issued by Volvo ID identity system.
  • vcc-api-key - The Subscription key

*All these header values are mandatory. They must exist in every request.

Required JWT Token scopes

  • openid
  • conve:navigation

Example Request

1curl -v -X POST 'https://api.volvocars.com/connected-vehicle/v1/vehicles/{vin}/commands/navi-point-of-interest' \
2-H 'content-type: application/vnd.volvocars.api.connected-vehicle.navipointofinterest.v1+json' \
3-H 'authorization: Bearer <insert-the-access-token-here>' \
4-H 'vcc-api-key: <insert-api-key-here>' \
5-d '{\"pointsOfInterest\": [{\"latitude\": 80.30,\"longitude\": 73.31,\"name\": \"Home sweet home\",\"phone\": \"+46707001337432\"}]}'
6

Example request body

The request body data needed to perform the invocation command is latitude, longitude, name, phone .

  • latitude - Is mandatory and should be a value between -180 and 180.
  • longitude - Is mandatory and should be a value between -90 and 90.
  • name - Is mandatory and should be a value with at least 3 characters and maximum 17 characters.
  • phone - Is optional and should be a value with maximum 17 characters.
1{
2  "pointsOfInterest": [
3    {
4      "latitude": 80.3,
5      "longitude": 73.31,
6      "name": "Home sweet home",
7      "phone": "+46707001337432"
8    }
9  ]
10}
11

Example response

1{
2  "status": 202,
3  "operationId": "f50780fd-1bd0-4706-a8ca-5a4884ce1a92",
4  "async": {
5    "status": "COMPLETED",
6    "id": "95d0b239-0a73-4b72-9f2b-639a74687334",
7    "href": "https://api.volvocars.com/connected-vehicle/v1/vehicles/{vin}/requests/95d0b239-0a73-4b72-9f2b-639a74687334",
8    "expires": "2022-07-08T13:25:24Z"
9  }
10}
11

Response body

The response's data node provides the details for the queried request

Field nameDescription

status

Response status code

operationId

Id to log and track and the request

async.status

Status of the request sent to the car. Possible values: COMPLETED

async.id

Request id

async.href

URL of the request to see the details and status of the command

async.expires

The expiry date for getting the details about the request. The invocation log is stored for one year.

List active command requests

Link copied

Used to get a list of the active and past command-requests invoked against the vehicle.

Operation

GET - https://api.volvocars.com/connected-vehicle/v1/vehicles/{vin}/requests/

Headers

  • accept - The mediatype of what should be returned. The valid values are;
    • application/vnd.volvocars.api.connected-vehicle.requestlist.v1+json

  • authorization - The jwt token issued by Volvo ID identity system.
  • vcc-api-key - The Subscription key

*All these header values are mandatory. They must exist in every request.

Query params

  • limit - The number of the items to display in each result set. Default is 50.
  • after - An identifier to for the next page of the result.

The query params is optional values to be added in the request URL

Required JWT Token scopes

  • openid
  • conve:commands

Example Request

1curl -v -X GET 'https://api.volvocars.com/connected-vehicle/v1/vehicles/{vin}/requests?limit=50&after=2537699f-e34e-4bef-9b78-0c56a52a2234' \
2-H 'accept: application/vnd.volvocars.api.connected-vehicle.requestlist.v1+json' \
3-H 'authorization: Bearer <insert-the-access-token-here>' \
4-H 'vcc-api-key: <insert-api-key-here>'
5

Example response

1{
2  "status": 200,
3  "operationId": "d91bc882-ab09-4cdf-95eb-1e52b43d06d6",
4  "data": [
5    {
6      "created": "2021-03-08T20:55:26Z",
7      "updated": "2021-03-08T20:55:27Z",
8      "command": "FLASH",
9      "requestId": "5e62fd15-f92f-4d3a-91d2-e1432b4a52c1",
10      "invokeStatus": "RUNNING",
11      "href": "https://api.volvocars.com/connected-vehicle/v1/vehicles/{vin}/request/5e62fd15-f92f-4d3a-91d2-e1432b4a52c1"
12    }
13  ],
14  "pagination": {
15    "limit": 50,
16    "next": "https://api.volvocars.com/connected-vehicle/v1/vehicles/{vin}/requests/?limit=1&after=5e62fd15-f92f-4d3a-91d2-e1432b4a52c1",
17    "cursors": {
18      "after": "5e62fd15-f92f-4d3a-91d2-e1432b4a52c1"
19    }
20  }
21}
22

Response body

The response's data node provides the details for the queried request

Field nameDescription

status

Response status code

operationId

Id to log and track and the request

data.created

Created date for the request

data.updated

The updated date when the request was able to be sent to the vehicle.

data.command

The type of command. Possible values: CLIMATIZATION_START, CLIMATIZATION_STOP, ENGINE_START, ENGINE_STOP, FLASH, HONK_AND_FLASH, HONK, LOCK, UNLOCK

data.requestId

Request id of the request

data.invokeStatus

Status of the request sent to the vehicle. Possible values: RUNNING,WAITING, COMPLETED, REJECTED, UNKNOWN, TIMEOUT, CONNECTION_FAILURE, VEHICLE_IN_SLEEP, UNLOCK_TIME_FRAME_PASSED, UNABLE_TO_LOCK_DOOR_OPEN

data.href

Direct URL of the request to see the details and status of the command

pagination.limit

Number of command results in the response

pagination.next

URL for the next page for the search result

cursor.after

Next cursor id for pagination

Get request details

Link copied

Used to get the details of the command referenced by the request id parameter

Operation

GET - https://api.volvocars.com/connected-vehicle/v1/vehicles/{vin}/requests/{id}

Headers

  • accept - The mediatype of what should be returned. The valid values are;
    • application/vnd.volvocars.api.connected-vehicle.requestdetailresponse.v1+json

  • authorization - The jwt token issued by Volvo ID identity system.
  • vcc-api-key - The Subscription key

*All these header values are mandatory. They must exist in every request.

Required JWT Token scopes

  • openid
  • conve:commands

Example Request

1curl -v -X GET 'https://api.volvocars.com/connected-vehicle/v1/vehicles/{vin}/requests/5e62fd15-f92f-4d3a-91d2-e1432b4a52c1' \
2-H 'accept: application/vnd.volvocars.api.connected-vehicle.requestdetailresponse.v1+json' \
3-H 'authorization: Bearer <insert-the-access-token-here>' \
4-H 'vcc-api-key: <insert-api-key-here>'
5

Example response

1{
2  "status": 200,
3  "operationId": "0047daec-c157-4b8e-a59f-3c67388545bc",
4  "data": {
5    "created": "2021-03-12T13:23:22Z",
6    "updated": "2021-03-12T13:23:23Z",
7    "command": "CLIMATIZATION_START",
8    "requestId": "5e62fd15-f92f-4d3a-91d2-e1432b4a52c1",
9    "invokeStatus": "COMPLETED"
10  }
11}
12

Response body

The response's data node provides the details for the queried request

Field nameDescription

status

Response status code

operationId

Id to log and track and the request

data.created

Created date for the request

data.updated

The updated date when the request was able to be sent to the vehicle.

data.command

The type of command. Possible values: CLIMATIZATION_START, CLIMATIZATION_STOP, ENGINE_START, ENGINE_STOP, FLASH, HONK_AND_FLASH, HONK, LOCK, UNLOCK

data.requestId

Request id of the request

data.invokeStatus

Status of the request sent to the vehicle. Possible values: RUNNING,WAITING, COMPLETED, REJECTED, UNKNOWN, TIMEOUT, CONNECTION_FAILURE, VEHICLE_IN_SLEEP, UNLOCK_TIME_FRAME_PASSED, UNABLE_TO_LOCK_DOOR_OPEN

Search command requests

Link copied

Used to perform an advanced search through the command requests

Operation

POST - https://api.volvocars.com/connected-vehicle/v1/vehicles/{vin}/requests/search

Headers

  • content-type - The mediatype of what should be returned. The valid values are;
    • application/vnd.volvocars.api.connected-vehicle.searchrequestlist.v1+json

  • authorization - The jwt token issued by Volvo ID identity system.
  • vcc-api-key - The Subscription key

*All these header values are mandatory. They must exist in every request.

Query params

  • limit - The number of the items to display in each result set. Default is 50.
  • after - An identifier to for the next page of the result.

The query params is optional values to be added in the request URL

Required JWT Token scopes

  • openid
  • conve:commands

Example Request

1curl -v -X POST 'https://api.volvocars.com/connected-vehicle/v1/vehicles/{vin}/requests/search?limit=50&after=2537699f-e34e-4bef-9b78-0c56a52a2234' \
2-H 'content-type: application/vnd.volvocars.api.connected-vehicle.requestlist.v1+json' \
3-H 'authorization: Bearer <insert-the-access-token-here>' \
4-H 'vcc-api-key: <insert-api-key-here>' \
5-d '{\"searchCommandRequest\":{\"operationId\":\"d91bc882-ab09-4cdf-95eb-1e52b43d06d6\",\"commands\":[\"FLASH\", \"ENGINE_START\"],\"startDate\":\"2021-03-16T14:12:31.802Z\",\"endDate\":\"2021-03-16T14:12:31.802Z\",\"ids\":[\"5e62fd15-f92f-4d3a-91d2-e1432b4a52c1\"]}}"
6

Example request body

The request body data to perform the advance search

1{
2  "searchCommandRequest": {
3    "operationId": "d91bc882-ab09-4cdf-95eb-1e52b43d06d6",
4    "commands": ["FLASH", "ENGINE_START"],
5    "startDate": "2021-01-16T14:12:31Z",
6    "endDate": "2021-03-16T14:12:31Z",
7    "ids": ["5e62fd15-f92f-4d3a-91d2-e1432b4a52c1"]
8  }
9}
10

Request body

The request data for advanced search

Field nameDescription

operationId

Id to log and track and the request

commands

The possible commands to search for. Possible values: CLIMATIZATION_START, CLIMATIZATION_STOP, ENGINE_START, ENGINE_STOP, FLASH, HONK_AND_FLASH, FLASH, LOCK, UNLOCK;

startDate

Start date for the requests to search for. Date format ISO-8601, example 2021-01-16T14:12:31Z

endDate

End date for the requests to search for. Date format ISO-8601, example 2021-01-16T14:12:31Z

ids

One or several request id's

Example response

1{
2  "status": 200,
3  "operationId": "d91bc882-ab09-4cdf-95eb-1e52b43d06d6",
4  "data": [
5    {
6      "created": "2021-03-08T20:55:26Z",
7      "updated": "2021-03-08T20:55:27Z",
8      "command": "FLASH",
9      "requestId": "5e62fd15-f92f-4d3a-91d2-e1432b4a52c1",
10      "invokeStatus": "COMPLETED",
11      "href": "https://api.volvocars.com/connected-vehicle/v1/vehicles/{vin}/request/5e62fd15-f92f-4d3a-91d2-e1432b4a52c1"
12    }
13  ],
14  "pagination": {
15    "limit": 50,
16    "next": "https://api.volvocars.com/connected-vehicle/v1/vehicles/{vin}/requests/?limit=1&after=5e62fd15-f92f-4d3a-91d2-e1432b4a52c1",
17    "cursors": {
18      "after": "5e62fd15-f92f-4d3a-91d2-e1432b4a52c1"
19    }
20  }
21}
22

Response body

The response's data node provides the details for the queried request

Field nameDescription

status

Response status code

operationId

Id to log and track and the request

data.created

Created date for the request

data.updated

The updated date when the request was able to be sent to the vehicle.

data.command

The type of command. Possible values: CLIMATIZATION_START, CLIMATIZATION_STOP, ENGINE_START, ENGINE_STOP, FLASH, HONK_AND_FLASH, HONK, LOCK, UNLOCK

data.requestId

Request id of the request

data.invokeStatus

Status of the request sent to the vehicle. Possible values: RUNNING,WAITING, COMPLETED, REJECTED, UNKNOWN, TIMEOUT, CONNECTION_FAILURE, VEHICLE_IN_SLEEP, UNLOCK_TIME_FRAME_PASSED, UNABLE_TO_LOCK_DOOR_OPEN

data.href

Direct URL of the request to see the details and status of the command

pagination.limit

Number of command results in the response

pagination.next

URL for the next page for the search result

cursor.after

Next cursor id for pagination

Swagger

Link copied
Copyright © 2021 Volvo Car Corporation (or its affiliates or licensors)