e-Mobility Service Providers
Request accessPrivate Preview Notice
Purpose
The e-Mobility Service Providers (eMSP) endpoint enables clients to access available eMSPs in a given country.
This helps EV drivers choose their preferred e-Mobility Service Providers while searching for EV charging stations.
The list of eMSPs returned is sorted by coverage in the requested region, with higher coverage appearing at the top.
eMSPs can be queried for a specific set of countries using the countrySet filter parameter or
worldwide by omitting the filter.
Request data
HTTPS method: GET
For ease of viewing and identification:
- Constants and parameters enclosed in curly brackets { } must be replaced with their values.
- See Request parameters for the required and optional parameters and their values. The generic request format is as follows.
Request format
https://{baseURL}/maps/orbis/places/ev/emsps?key={Your_API_Key}&[countrySet={countryCodes}]&[view={view}]Request curl command example
curl 'https://api.tomtom.com/maps/orbis/places/ev/emsps?key={Your_API_Key}&countrySet=USA,DEU&view=Unified'Request parameters
The following table describes the parameters that can be used in a request.
- Required parameters must be used or the call will fail.
- Parameters and values are case-sensitive.
- Optional parameters may be used.
| Required parameters | Description |
|---|---|
baseURL string | Base URL for calling the API.
|
key string | An API Key valid for the requested service. Value: Your valid API Key. |
| Optional parameters | Description |
|---|---|
countrySet string | Comma-separated list of country codes. Supports both |
view string | Geopolitical View. The context used to resolve the handling of disputed territories.
|
Request headers
The following table describes HTTP request headers.
| Required headers | Description |
|---|---|
| TomTom-Api-Version | The version of the API being called.
Currently, only version 1 is supported.
Example: |
| Optional headers | Description |
|---|---|
| Tracking-ID | Specifies an identifier for the request.
Value: An |
| Accept | Specifies one of the following values as the response format of an API request:
|
| Accept-Encoding | Enables response compression. For details check RFC-9110
Value: |
| If-None-Match | Clients can provide an entity tag (ETag) that was returned as a header in a previous response. This allows clients to check the
freshness of the data. If the data has not changed, the service responds with a 304 (Not Modified) status. |
Response data
Response body
{ "results": [ { "countryCode": "USA", "paymentApplications": [ { "id": "H7Tm1ilM", "name": "ladenetz.de" }, { "id": "NZEwQz8r", "name": "EnelX" }, { "id": "FeC16qIv", "name": "NewMotion" }, { "id": "h8cZq7KJ", "name": "FrCS", "restricted": true }, { "id": "QV9Tbvhb", "name": "MyEasyCharge", "restricted": true }, { "id": "pEp9gSMe", "name": "Eneco" }, { "id": "6Hc4xCvV", "name": "Shell Recharge" } ] } ]}<response> <results> <item> <countryCode>FR</countryCode> <paymentApplications> <paymentApplication> <id>OEXM3ZBP</id> <name>Octopus Electroverse</name> </paymentApplication> <paymentApplication> <id>PL26DTVW</id> <name>Plugsurfing</name> </paymentApplication> <paymentApplication> <id>SR6TVFLW</id> <name>Shell Recharge</name> </paymentApplication> <paymentApplication> <id>ECK67WYK</id> <name>EVBox Charge</name> </paymentApplication> <paymentApplication> <id>ENADGFAQ</id> <name>Eneco</name> </paymentApplication> <paymentApplication> <id>VAPOYF4C</id> <name>Vandebron</name> </paymentApplication> </paymentApplications> </item> </results></response>Response fields
The following table describes all the fields that can appear in a response. Fields are listed by the response section they belong to and in the order that they appear in the response.
| Primary fields | |
|---|---|
| Field | Description |
results array | Array of results item objects. |
| item object | |
|---|---|
| Field | Description |
countryCode string | Requested country code. If |
paymentApplications array | List of available paymentApplication objects. |
| paymentApplication object | |
|---|---|
| Field | Description |
id string | Unique identifier of the payment application. |
name string | Name of the payment application. |
restricted boolean | Indicates if payment application is restricted to the current request. |
Response codes
| Code | Meaning & possible causes |
|---|---|
200 | OK: If any matching charging station was found, the body of the response will contain the data. Otherwise, an empty response will be returned: Empty response example - JSON |
400 | Bad request: One or more parameters were incorrectly specified or are out of range. |
403 | Forbidden: Possible causes include:
|
404 | Not Found: The requested resource could not be found, the HTTP request method or path is incorrect. |
405 | Method Not Allowed : The client used an HTTP method other than |
406 | Media Type Not Acceptable |
414 | The requested URI is too long |
429 | Too Many Requests: The API Key is over QPS (Queries per second). |
5xx | Server Error: The service was unable to process your request. Contact support to resolve the issue. |
Response headers
The following table lists HTTP response headers.
| Header | Description |
|---|---|
| Access-Control-Allow-Origin | The EV Search service allows cross-origin resource sharing. |
| Content-Encoding | The EV Search service supports HTTP compression if requested by the client.
Value: |
| Cache-Control | The Cache-Control general-header field is used to specify directives that must be obeyed by all caching mechanisms along the request/response chain.
Value: |
| Content-Type | Indicates the format of the response as chosen by the client.
Format: |
| ETag | Entity-tag of the served resource. Can be used by the client in the |
| Tracking-ID | An identifier for the request. If the Tracking-ID header was specified, it is replicated in the response.
Otherwise, it is generated automatically by the service. It is only meant to be used for support and does not involve tracking
of you or your users in any form. |
Error response
The error response content type depends on the Accept header.
{ "message": "Missing parameter 'parameterName'", "detailedError": { "code": "MissingParameter", "message": "Missing required parameter 'parameterName'." }, "httpStatusCode": "400"}<ErrorEvResponse> <message>Missing parameter 'parameterName'</message> <detailedError> <code>MissingParameter</code> <message>Missing required parameter 'parameterName'.</message> </detailedError></ErrorEvResponse>Error response fields
| Primary fields | Description |
|---|---|
| A human-readable description of the error. |
| Detailed information about the error.
|
| detailedError object | |
| Field | Description |
| One of a server-defined set of error codes. |
| A human-readable description of the error code. It is intended as an aid to developers and is not suitable for exposure to end users. |