Monta
Monta API

Vehicles


Retrieve a list of vehicles

GET
https://partner-api.monta.com
/api/v1/vehicles

Required scope: vehicles:read

Retrieve a list of vehicles › query Parameters

ownerType
​string · enum · required

Filter by owner type of the vehicle

Enum values:
team
user
Example: team
page
​integer · int32

Page number to retrieve (starts with 0)

Default: 0
perPage
​integer · int32

Number of items per page (between 1 and 100, default 10)

Default: 10
ownerId
​integer · int64

Filter to retrieve vehicles with specified team ID or user ID defined by ownerType

Example: 13

Retrieve a list of vehicles › Responses

List of vehicles that match the criteria

​Vehicle_1[] · required
​MontaPage.Meta · required

Create a vehicle

POST
https://partner-api.monta.com
/api/v1/vehicles

Required scope: vehicles:write

Create a vehicle › Request Body

name
​string · minLength: 1 · required

Name of the vehicle

Example: Viking Bus 42
teamId
​integer · int64 · required

Id of the team the vehicle belongs to

Example: 100
modelId
​integer | null · int64

Id of the vehicle model

Example: 1234
licensePlate
​string | null

License plate of the vehicle

Example: AB12345
brand
​string | null · maxLength: 100

Manual vehicle brand name. Required when modelId is not provided.

Example: Volvo
modelName
​string | null · maxLength: 100

Manual vehicle model name. Required when modelId is not provided.

Example: FH Electric
vehicleType
​string | null · maxLength: 50

Vehicle type. Required when modelId is not provided.

Example: truck
vid
​string | null · pattern: ^VID:[0-9A-Fa-f]{6,2…

VID identifier for auto-charge. Format: VID:xxxxxxxxxxxx

Example: VID:001681036794

Create a vehicle › Responses

Vehicle created

No data returned

Retrieve a list of vehicle brands

GET
https://partner-api.monta.com
/api/v1/vehicles/brands

Required scope: vehicles:read

Retrieve a list of vehicle brands › query Parameters

ownerType
​string · enum · required

Filter by owner type of the vehicle

Enum values:
team
user
Example: team
page
​integer · int32

Page number to retrieve (starts with 0)

Default: 0
perPage
​integer · int32

Number of items per page (between 1 and 100, default 10)

Default: 10
ownerId
​integer · int64

Filter to retrieve vehicles with specified team ID or user ID defined by ownerType

Example: 13

Retrieve a list of vehicle brands › Responses

List of all available vehicle brands

​VehicleBrand[] · required
​MontaPage.Meta · required

Retrieve a list of vehicle connectors

GET
https://partner-api.monta.com
/api/v1/vehicles/connectors

Required scope: vehicles:read

Retrieve a list of vehicle connectors › query Parameters

ownerType
​string · enum · required

Filter by owner type of the vehicle

Enum values:
team
user
Example: team
page
​integer · int32

Page number to retrieve (starts with 0)

Default: 0
perPage
​integer · int32

Number of items per page (between 1 and 100, default 10)

Default: 10
ownerId
​integer · int64

Filter to retrieve vehicles with specified team ID or user ID defined by ownerType

Example: 13

Retrieve a list of vehicle connectors › Responses

List of all available vehicle connectors

​VehicleConnector[] · required
​MontaPage.Meta · required

Retrieve a single vehicle integration

GET
https://partner-api.monta.com
/api/v1/vehicles/integration/{integrationId}

Required scope: vehicle:read

Retrieve a single vehicle integration › path Parameters

integrationId
​integer · int64 · required

Retrieve a single vehicle integration › query Parameters

ownerId
​integer · int32

Filter to retrieve vehicles with specified team ID or user ID defined by ownerType

ownerType
​string · enum

Filter by owner type of the vehicle

Enum values:
team
user

Retrieve a single vehicle integration › Responses

Vehicle integration with provided id

id
​integer · int64 · required

Id of the vehicle integration

Example: 1
lastSeenAt
​string | null · date-time

Vehicle was last seen at

Example: 2025-01-12T15:56:45.91Z
vin
​string | null

Vehicle identification number

Example: 1HGCM82633A123456
odometer
​number | null · double

Odometer in Km

Example: 999991
​object

Charge state of the vehicle

​object

Location of the vehicle. It is available only if the necessary permissions have been granted and applies exclusively to team-owned vehicles, not end-user vehicles.


POST
https://partner-api.monta.com
/api/v1/vehicles/integrations/authorization-link

Required scope: vehicles:write. Returns the link an application user follows to authorize their vehicle account (e.g. Enode or Smartcar) so it can be connected to Monta.

Create a vehicle authorization link › Request Body

userId
​integer · int64 · required

Id of the application user the authorization link is created for

Example: 10000
redirectUri
​string · minLength: 1 · pattern: ^https://\S+$ · required

URI the user is redirected to after authorizing their vehicle account. Must be an https:// URL.

Example: https://example.com/vehicle/callback
provider
​string | null · enum · pattern: enode|smartcar

Vehicle integration provider. Defaults to enode when omitted.

Enum values:
enode
smartcar
Example: enode
brandId
​integer | null · int64

Vehicle brand id used to pick a provider-specific authorization flow

Example: 1234
scopes
​array | null

Scopes requested from the vehicle account. Defaults to charge-state and control-charging. charge-state also grants the odometer, location the vehicle's location, all every scope. Smartcar always requests every scope.

Enum values:
all
charge-state
location
control-charging
Example: ["charge-state","location"]

Create a vehicle authorization link › Responses

Authorization link created

authorizeLink
​string · required

Link the user follows to authorize their vehicle account

Example: https://link.enode.com/abc123
provider
​string · required

Vehicle integration provider that issued the link

Example: enode
authFlow
​string · required

Authorization flow the client should use to complete linking

Example: enode-sdk
token
​string | null

Token identifying the authorization session

Example: 8c3f0b2e-1a4d-4f7e-9c2b-1d2e3f4a5b6c

Retrieve a list of vehicle models

GET
https://partner-api.monta.com
/api/v1/vehicles/models

Required scope: vehicles:read

Retrieve a list of vehicle models › query Parameters

ownerType
​string · enum · required

Filter by owner type of the vehicle

Enum values:
team
user
Example: team
page
​integer · int32

Page number to retrieve (starts with 0)

Default: 0
perPage
​integer · int32

Number of items per page (between 1 and 100, default 10)

Default: 10
ownerId
​integer · int64

Filter to retrieve vehicles with specified team ID or user ID defined by ownerType

Example: 13

Retrieve a list of vehicle models › Responses

List of vehicle models matching the criteria

​VehicleModel[] · required
​MontaPage.Meta · required

Retrieve a single vehicle model

GET
https://partner-api.monta.com
/api/v1/vehicles/models/{modelId}

Required scope: vehicles:read

Retrieve a single vehicle model › path Parameters

modelId
​integer · int64 · required

Retrieve a single vehicle model › Responses

Vehicle model with the provided id

​object · required

Brand of the vehicle model

model
​string · required

Model name

Example: Model 3
displayName
​string · required

Display name of the vehicle model

Example: Tesla Model 3 Long Range (2021) - 72 kWh
​VehicleConnector[] · required

List of connectors supported by this vehicle model

id
​integer · int64

Id of the vehicle model

Example: 1
variant
​string | null

Variant of the vehicle model

Example: Long Range
releaseYear
​integer | null · int32

Release year of the vehicle model

Example: 2021
pictureUrl
​string | null

URL of the vehicle model picture

Example: https://imgix.monta.com/models/tesla-model3.png
capacityKwh
​number | null · double

Battery capacity in kWh

Example: 72.5
maxKwAc
​number | null · double

Maximum AC charging power in kW

Example: 11
maxKwDc
​number | null · double

Maximum DC charging power in kW

Example: 150

Retrieve a single vehicle

GET
https://partner-api.monta.com
/api/v1/vehicles/{vehicleId}

Required scope: vehicle:read

Retrieve a single vehicle › path Parameters

vehicleId
​integer · int64 · required

Retrieve a single vehicle › Responses

Vehicle integration with provided id

id
​integer · int64

Id of the vehicle

Example: 1
teamId
​integer | null · int64

Team Id that the vehicle belongs to

Example: 2
userId
​integer | null · int64

User Id that the vehicle belongs to

Example: 3
name
​string | null

Name of the vehicle, can be customized by the user

Example: Tesla
licensePlate
​string | null

License plate of the vehicle

Example: CT88585
batteryCapacityKwh
​number | null · double

Battery capacity of the vehicle in Kwh

Example: 85
maxPowerKwAc
​number | null · double

Maximum AC charging power (in kW) that the vehicle can accept when charging via an AC charger

Example: 29
maxPowerKwDc
​number | null · double

Maximum DC charging power (in kW) that the vehicle can accept when using a DC fast charger

Example: 35.5
displayName
​string | null

Display name of the vehicle

Example: Tesla Model 3 Performance (2021) - 72 kWh
integrationId
​integer | null · int64

Id of the vehicle integration

Example: 89188
integrationStatus
​string | null

Status of the vehicle integration

Example: connected
manuallyConfiguredAt
​string | null · date-time

Timestamp when the vehicle was manually configured (null if using catalog model)

​object

Custom specification for manually configured vehicles

vid
​string | null

VID identifier for auto-charge

Example: VID:001681036794

Update a vehicle

PATCH
https://partner-api.monta.com
/api/v1/vehicles/{vehicleId}

Required scope: vehicles:write

Update a vehicle › path Parameters

vehicleId
​integer · int64 · required

Update a vehicle › Request Body

name
​string | null

Name of the vehicle

Example: Viking Bus 42
modelId
​integer | null · int64

Id of the vehicle model. Omit or leave null to keep the existing value.

Example: 1234
teamId
​integer | null · int64

Id of the team the vehicle belongs to

Example: 100
licensePlate
​string | null

License plate of the vehicle

Example: AB12345
brand
​string | null · maxLength: 100

Manual vehicle brand name.

Example: Volvo
modelName
​string | null · maxLength: 100

Manual vehicle model name.

Example: FH Electric
vehicleType
​string | null · maxLength: 50

Vehicle type.

Example: truck
vid
​string | null · pattern: ^$|^VID:[0-9A-Fa-f]{…

VID identifier for auto-charge. Format: VID:xxxxxxxxxxxx. Send an empty string to remove the vehicle's VID.

Example: VID:001681036794

Update a vehicle › Responses

Vehicle updated

id
​integer · int64

Id of the vehicle

Example: 1
teamId
​integer | null · int64

Team Id that the vehicle belongs to

Example: 2
userId
​integer | null · int64

User Id that the vehicle belongs to

Example: 3
name
​string | null

Name of the vehicle, can be customized by the user

Example: Tesla
licensePlate
​string | null

License plate of the vehicle

Example: CT88585
batteryCapacityKwh
​number | null · double

Battery capacity of the vehicle in Kwh

Example: 85
maxPowerKwAc
​number | null · double

Maximum AC charging power (in kW) that the vehicle can accept when charging via an AC charger

Example: 29
maxPowerKwDc
​number | null · double

Maximum DC charging power (in kW) that the vehicle can accept when using a DC fast charger

Example: 35.5
displayName
​string | null

Display name of the vehicle

Example: Tesla Model 3 Performance (2021) - 72 kWh
integrationId
​integer | null · int64

Id of the vehicle integration

Example: 89188
integrationStatus
​string | null

Status of the vehicle integration

Example: connected
manuallyConfiguredAt
​string | null · date-time

Timestamp when the vehicle was manually configured (null if using catalog model)

​object

Custom specification for manually configured vehicles

vid
​string | null

VID identifier for auto-charge

Example: VID:001681036794

Delete a vehicle

DELETE
https://partner-api.monta.com
/api/v1/vehicles/{vehicleId}

Required scope: vehicles:delete

Delete a vehicle › path Parameters

vehicleId
​integer · int64 · required

Delete a vehicle › Responses

Vehicle deleted

No data returned

DELETE
https://partner-api.monta.com
/api/v1/vehicles/{vehicleId}/integrations

Required scope: vehicles:write

vehicleId
​integer · int64 · required

Vehicle integrations unlinked successfully

No data returned

Connect a vehicle integration

POST
https://partner-api.monta.com
/api/v1/vehicles/{vehicleId}/integrations/{integrationId}/connect

Required scope: vehicles:write

Connect a vehicle integration › path Parameters

vehicleId
​integer · int64 · required
integrationId
​integer · int64 · required

Connect a vehicle integration › Responses

Vehicle with the connected integration

id
​integer · int64

Id of the vehicle

Example: 1
teamId
​integer | null · int64

Team Id that the vehicle belongs to

Example: 2
userId
​integer | null · int64

User Id that the vehicle belongs to

Example: 3
name
​string | null

Name of the vehicle, can be customized by the user

Example: Tesla
licensePlate
​string | null

License plate of the vehicle

Example: CT88585
batteryCapacityKwh
​number | null · double

Battery capacity of the vehicle in Kwh

Example: 85
maxPowerKwAc
​number | null · double

Maximum AC charging power (in kW) that the vehicle can accept when charging via an AC charger

Example: 29
maxPowerKwDc
​number | null · double

Maximum DC charging power (in kW) that the vehicle can accept when using a DC fast charger

Example: 35.5
displayName
​string | null

Display name of the vehicle

Example: Tesla Model 3 Performance (2021) - 72 kWh
integrationId
​integer | null · int64

Id of the vehicle integration

Example: 89188
integrationStatus
​string | null

Status of the vehicle integration

Example: connected
manuallyConfiguredAt
​string | null · date-time

Timestamp when the vehicle was manually configured (null if using catalog model)

​object

Custom specification for manually configured vehicles

vid
​string | null

VID identifier for auto-charge

Example: VID:001681036794

Retrieve the users a vehicle is shared with

GET
https://partner-api.monta.com
/api/v1/vehicles/{vehicleId}/users

Required scope: vehicles:read

Retrieve the users a vehicle is shared with › path Parameters

vehicleId
​integer · int64 · required

Retrieve the users a vehicle is shared with › query Parameters

page
​integer · int32

Page number to retrieve (starts with 0)

Default: 0
perPage
​integer · int32

Number of items per page (between 1 and 100, default 10)

Default: 10

Retrieve the users a vehicle is shared with › Responses

List of users the vehicle is shared with

​VehicleUser[] · required
​MontaPage.Meta · required

Share a vehicle with a user

POST
https://partner-api.monta.com
/api/v1/vehicles/{vehicleId}/users

Required scope: vehicles:write. Shares the vehicle with the given user. The user must belong to the vehicle's team or already be a shared user. Idempotent.

Share a vehicle with a user › path Parameters

vehicleId
​integer · int64 · required

Share a vehicle with a user › query Parameters

page
​integer · int32

Page number to retrieve (starts with 0)

Default: 0
perPage
​integer · int32

Number of items per page (between 1 and 100, default 10)

Default: 10

Share a vehicle with a user › Request Body

userId
​integer · int64 · required

Id of the user to share the vehicle with. Must belong to the vehicle's team or already be a shared user.

Example: 3

Share a vehicle with a user › Responses

Updated list of users the vehicle is shared with

​VehicleUser[] · required
​MontaPage.Meta · required

Remove a user from a shared vehicle

DELETE
https://partner-api.monta.com
/api/v1/vehicles/{vehicleId}/users/{userId}

Required scope: vehicles:write. Stops sharing the vehicle with the given user. Removing the current owner also clears ownership. Idempotent.

Remove a user from a shared vehicle › path Parameters

vehicleId
​integer · int64 · required
userId
​integer · int64 · required

Remove a user from a shared vehicle › query Parameters

page
​integer · int32

Page number to retrieve (starts with 0)

Default: 0
perPage
​integer · int32

Number of items per page (between 1 and 100, default 10)

Default: 10

Remove a user from a shared vehicle › Responses

Updated list of users the vehicle is shared with

​VehicleUser[] · required
​MontaPage.Meta · required

Transfer vehicle ownership

POST
https://partner-api.monta.com
/api/v1/vehicles/{vehicleId}/users/{userId}/transfer-ownership

Required scope: vehicles:write. Transfers ownership of the vehicle to the given user, who must already be one of the vehicle's shared users.

Transfer vehicle ownership › path Parameters

vehicleId
​integer · int64 · required
userId
​integer · int64 · required

Transfer vehicle ownership › Responses

Vehicle with the new owner

id
​integer · int64

Id of the vehicle

Example: 1
teamId
​integer | null · int64

Team Id that the vehicle belongs to

Example: 2
userId
​integer | null · int64

User Id that the vehicle belongs to

Example: 3
name
​string | null

Name of the vehicle, can be customized by the user

Example: Tesla
licensePlate
​string | null

License plate of the vehicle

Example: CT88585
batteryCapacityKwh
​number | null · double

Battery capacity of the vehicle in Kwh

Example: 85
maxPowerKwAc
​number | null · double

Maximum AC charging power (in kW) that the vehicle can accept when charging via an AC charger

Example: 29
maxPowerKwDc
​number | null · double

Maximum DC charging power (in kW) that the vehicle can accept when using a DC fast charger

Example: 35.5
displayName
​string | null

Display name of the vehicle

Example: Tesla Model 3 Performance (2021) - 72 kWh
integrationId
​integer | null · int64

Id of the vehicle integration

Example: 89188
integrationStatus
​string | null

Status of the vehicle integration

Example: connected
manuallyConfiguredAt
​string | null · date-time

Timestamp when the vehicle was manually configured (null if using catalog model)

​object

Custom specification for manually configured vehicles

vid
​string | null

VID identifier for auto-charge

Example: VID:001681036794