Basics
API reference
Release notes
Deprecations
Examples
Sign in / Sign up
Sign in / Sign up
Mutate to start a new navigation session
Query navigation session

Subscribe to navigation updates

When you have obtained a navigation id through the startNavigation mutation, you can start a navigation subscription to get the turn-by-turn instructions and other subscription details. As the vehicle is approaching a charge station, a lot can happen. Therefore, we recommend subscribing to a navigation session to push updates to the navigation app when necessary. Updates can be triggered, for example, when all connectors are occupied at the planned charge stop or if the end-user takes a wrong exit. In both cases, a reroute will be triggered.

By subscribing to a navigation session, updates are pushed to the navigation app when necessary.

Subscription

The subscription service needs to be initiated with a navigation ID. From there on it will start a navigation session and provide you with updates.

Listen to the route id

When starting the subscription always include the route_id field. Whenever this value changes the navigation application needs to re-render the polyline. This id is updated when, for example, a wrong exit is taken and the recalculateNavigation mutation is called.

Supported turn-by-turn providers

The instructions field accepts three field arguments. The instructions_format accepts two values: MapboxV5 which returns the turn-by-turn instructions mapped for the latest Mapbox SDK and Chargetrip which can be used to map the instructions to a mapping provider that we do not yet officially support. Official support for more providers is on its way. The language argument currently accepts English and precision will encode the polyline with coordinates that either have 5 or 6 decimals.

For more information about upcoming providers and languages get in touch!

Arguments

id • ID

• Required

Frequently used fields

route_id • ID

The current route used for navigation

state • NavigationState

The state of a navigation session. The status can be driving, charging, finished, or error

Show NavigationState enum values

driving

Vehicle is driving

charging

Vehicle is charging

finished

Navigation session is completed (either manually or automatically 48 hours after the last update)

error

Failed to update navigation session due to route error or not found

state_of_charge • Float

State of charge at the last known location

Show arguments

unit • StateOfChargeUnit

Default • kilowatt_hour

Show StateOfChargeUnit enum values

kilometer

Return the state of charge in kilometers.

mile

Return the state of charge in miles.

kilowatt_hour

Return the state of charge in kilowatt hours.

percentage

Return the state of charge as a percentage.

next_station • NavigationStation

Next charging station

station_id • ID

The ID as string of the charging station

station_location • Point

GPS location of the charging station

type • PointType

Point type.

Show PointType enum values

Point

coordinates • Float

The coordinates array with longitude as first value and latitude as second one.

via • Point

An array with all GPS locations of via points until the next charging station

type • PointType

Point type.

Show PointType enum values

Point

coordinates • Float

The coordinates array with longitude as first value and latitude as second one.

estimated_state_of_charge • Float

Estimated state of charge, at arrival on the next charging station

Show arguments

unit • StateOfChargeUnit

Default • kilowatt_hour

Show StateOfChargeUnit enum values

kilometer

Return the state of charge in kilometers.

mile

Return the state of charge in miles.

kilowatt_hour

Return the state of charge in kilowatt hours.

percentage

Return the state of charge as a percentage.

estimated_consumption • Float

Estimated consumption, in kWh, from last the known location until the next charging station

estimated_duration • Int

Estimated duration, in seconds, from the last known location until the next charging station

alternative_stations • NavigationStation

A set of alternative charging stations to next station

station_id • ID

The ID as string of the charging station

station_location • Point

GPS location of the charging station

type • PointType

Point type.

Show PointType enum values

Point

coordinates • Float

The coordinates array with longitude as first value and latitude as second one.

via • Point

An array with all GPS locations of via points until the next charging station

type • PointType

Point type.

Show PointType enum values

Point

coordinates • Float

The coordinates array with longitude as first value and latitude as second one.

estimated_state_of_charge • Float

Estimated state of charge, at arrival on the next charging station

Show arguments

unit • StateOfChargeUnit

Default • kilowatt_hour

Show StateOfChargeUnit enum values

kilometer

Return the state of charge in kilometers.

mile

Return the state of charge in miles.

kilowatt_hour

Return the state of charge in kilowatt hours.

percentage

Return the state of charge as a percentage.

estimated_consumption • Float

Estimated consumption, in kWh, from last the known location until the next charging station

estimated_duration • Int

Estimated duration, in seconds, from the last known location until the next charging station

instructions • JSON

Navigation instructions

Other fields

id • ID

ID of the navigation session

route_alternative_id • ID

The current route alternative used for navigation

last_known_location • Point

Last known location

type • PointType

Point type.

Show PointType enum values

Point

coordinates • Float

The coordinates array with longitude as first value and latitude as second one.

meta • NavigationMeta

Navigation meta information.

created_at • DateTime

Creation time of the navigation session.

updated_at • DateTime

Last updated time of the navigation session.

Response

A response can either contain a data or an errors object. The response header will always return 200 as a status code.

Data object

When successful, a data object will be returned with the requested fields. If there are no fields present the data object will return the operation name with the appropriate return type. If the operation was a query, this output will be an object of the schema’s query root type; if the operation was a mutation, this output will be an object of the schema’s mutation root type.

Error object

If unsuccessful, an errors object will be returned with more details in the extensions object. The error object can contain any of the following objects.

Error

NAVIGATION_INVALID_MAPPING_LANGUAGE

Mapping language is not valid.

Error

NAVIGATION_INVALID_MAPPING_PROVIDER

Mapping provider is not valid.

Error

NAVIGATION_INVALID_ROUTE_STATUS

Cannot generate instructions mapping for route with status '$ROUTESTATUS'.

Error

NAVIGATION_NOT_FOUND

No navigation session was found with the provided ID.

Error

NAVIGATION_TRANSLATOR_NOT_FOUND

Translator for language "$LANGUAGE" was not found or loaded in the translators list.

Error

OPERATION_NOT_ALLOWED

You are not allowed to execute this operation. Enable it for the current application in the dashboard or reach out to customer support.

Error

ROUTE_POLYLINE_INVALID_DECIMALS

Value for decimals number is not valid. Allowed values are 5 or 6.

  • Basics

    API Basics GraphQL Basics EV basics
  • API reference

    API Vehicles Stations Routes Routes (NEW) Emissions Navigation Tile service Isolines Vehicle connectivity
  • Products

    Website Dashboard Help center SDKs
  • Tooling

    Playground Voyager Examples API Status
  • Legal

    Terms & Conditions Privacy Policy Cookie Policy Security
Mission Statement State of charge Try Chargetrip Go

© Chargetrip 2025

Build with love in

Amsterdam ❤️