Sessions

openOBD sessions are sessions that can be created to automate diagnostic routines using gRPC. The session allows direct communication with a vehicle, as well as interacting with the vehicle side technician through a user interface. A newly created session will have to be activated through gRPC before communication is possible. More information on openOBD and the available gRPC calls can be found at https://docs.openobd.com.

Function

A function object provides information about a registered openOBD function.

id
string <uuid>

The identifier of the openOBD function.

description
string [ 1 .. 1500 ] characters

Description as set by the function owner.

name
string [ 3 .. 255 ] characters

Name as set by the function owner.

online
boolean

Whether the function is currently available to be run.

object (Money)

Price that should be paid for a function invocation.

amount
number <float> >= 0

The monetary amount.

currency
string <iso-4217>

The currency of the monetary amount.

provider_id
string <uuid>

The identifier of the provider that provides this function.

public
boolean

Whether this function is available for other partners to execute. If set to false, this function can only invoked by the partner that registered the function.

supported_products
Array of strings <uuid> >= 0 items

Supported products as set by the function owner.

supported_vehicles
Array of integers <int64> >= 0 items

Supported vehicles as set by the function owner.

version
string [ 1 .. 50 ] characters

Version as set by the function owner. Any string is allowed. E.g. '1.12.3a', 'beta', '21', etc.

visibility
string (FunctionVisibility)

Determines where the function will be shown. Does not affect whether the function can be run or not.

Enum Value Description
visible

The function will show up in UIs.

hidden

The function will not be shown in UIs.

{
  • "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
  • "description": "string",
  • "name": "string",
  • "online": true,
  • "price": {
    },
  • "provider_id": "fe3d49af-4061-436b-ae60-f7044f252a44",
  • "public": true,
  • "supported_products": [
    ],
  • "supported_vehicles": [
    ],
  • "version": "beta 1.12.3a (semi-production)",
  • "visibility": "hidden"
}

Session

A session object provides information about the current state of an openOBD session.

id
string <uuid>

Identifier referencing this specific openOBD session.

authentication_token
string

Token required to be passed to the gRPC endpoint to activate the openOBD session. One time use only.

created_at
string <date-time>

Time when the session was created.

grpc_endpoint
string <uri>

Endpoint to communicate to when using gRPC.

state
string

The current state of the openOBD session.

Enum Value Description
available

A new openOBD session has been started and is ready for authentication.

active

The openOBD session has been authenticated and can be used to make gRPC calls.

interrupted

The openOBD session has been forcibly stopped by an API call.

finished

The openOBD session has been gracefully ended by a gRPC call.

failed

The openOBD session has been stopped due to an internal error.

{
  • "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
  • "authentication_token": "string",
  • "created_at": "2019-08-24T14:15:22.651+0000",
  • "grpc_endpoint": "http://example.com",
  • "state": "available"
}

Get sessions

Get a list of openOBD sessions.

SecurityOAuth2
Request
query Parameters
limit
integer <int32> [ 0 .. 1000 ]
Default: 25

Limits the amount of resources in result.

offset
integer <int64> >= 0
Default: 0

Offset of resources in result.

Responses
200

Retrieved all sessions.

Response Schema: application/json
object >= 0 properties

Applied query parameters, including defaults.

limit
integer <int32> [ 0 .. 1000 ]
Default: 25

The applied value of the limit query parameter on the resources in result.

offset
integer <int64> >= 0
Default: 0

The applied value of the offset query parameter on the resources in result.

property name*
additional property
any
Array of objects (Session) >= 0 items

List of sessions.

Array (>= 0 items)
id
string <uuid>

Identifier referencing this specific openOBD session.

authentication_token
string

Token required to be passed to the gRPC endpoint to activate the openOBD session. One time use only.

created_at
string <date-time>

Time when the session was created.

grpc_endpoint
string <uri>

Endpoint to communicate to when using gRPC.

state
string

The current state of the openOBD session.

Enum Value Description
available

A new openOBD session has been started and is ready for authentication.

active

The openOBD session has been authenticated and can be used to make gRPC calls.

interrupted

The openOBD session has been forcibly stopped by an API call.

finished

The openOBD session has been gracefully ended by a gRPC call.

failed

The openOBD session has been stopped due to an internal error.

total
integer <int64>

Total number of resources matching provided query parameters.

default

An error occurred - see status code and problem response for more information.

get/v2/open-obd/sessions
Response samples
application/json
{
  • "query": {
    },
  • "result": [
    ],
  • "total": 4
}

Get session

Get info on an openOBD session.

SecurityOAuth2
Request
path Parameters
session-id
required
string <uuid>

The identifier of the session.

Responses
200

Successful response.

Response Schema: application/json
id
string <uuid>

Identifier referencing this specific openOBD session.

authentication_token
string

Token required to be passed to the gRPC endpoint to activate the openOBD session. One time use only.

created_at
string <date-time>

Time when the session was created.

grpc_endpoint
string <uri>

Endpoint to communicate to when using gRPC.

state
string

The current state of the openOBD session.

Enum Value Description
available

A new openOBD session has been started and is ready for authentication.

active

The openOBD session has been authenticated and can be used to make gRPC calls.

interrupted

The openOBD session has been forcibly stopped by an API call.

finished

The openOBD session has been gracefully ended by a gRPC call.

failed

The openOBD session has been stopped due to an internal error.

default

An error occurred - see status code and problem response for more information.

get/v2/open-obd/sessions/{session-id}
Response samples
application/json
{
  • "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
  • "authentication_token": "string",
  • "created_at": "2019-08-24T14:15:22.651+0000",
  • "grpc_endpoint": "http://example.com",
  • "state": "available"
}

Interrupt a session

Interrupt an openOBD session.

SecurityOAuth2
Request
path Parameters
session-id
required
string <uuid>

The identifier of the session.

Responses
200

Successful response.

Response Schema: application/json
id
string <uuid>

Identifier referencing this specific openOBD session.

authentication_token
string

Token required to be passed to the gRPC endpoint to activate the openOBD session. One time use only.

created_at
string <date-time>

Time when the session was created.

grpc_endpoint
string <uri>

Endpoint to communicate to when using gRPC.

state
string

The current state of the openOBD session.

Enum Value Description
available

A new openOBD session has been started and is ready for authentication.

active

The openOBD session has been authenticated and can be used to make gRPC calls.

interrupted

The openOBD session has been forcibly stopped by an API call.

finished

The openOBD session has been gracefully ended by a gRPC call.

failed

The openOBD session has been stopped due to an internal error.

default

An error occurred - see status code and problem response for more information.

delete/v2/open-obd/sessions/{session-id}
Response samples
application/json
{
  • "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
  • "authentication_token": "string",
  • "created_at": "2019-08-24T14:15:22.651+0000",
  • "grpc_endpoint": "http://example.com",
  • "state": "available"
}