Skip to main content

EV Charge Finder API

Private Preview for the EV Charge Finder API

For pricing and to sign up for EV Charge Finder API, sign up here. Note that the features and functionality of the API are subject to change.

The EV Charge Finder API searches for EV charge points within a specific area. The API provides various filtering options (such as connector types) to match different charging needs. The response is structured according to the industry-standard OCPI v2.2.1 Locations module, with additional extensions by Mapbox.

Search for EV Charge Points

Search for charging stations within a specified geographic area, with options to filter results by charge point operator, connector types, availability, charging speeds, and other key attributes.

get
https://api.mapbox.com/ev/v1/locations?access_token={access_token}&latitude={latitude}&longitude={longitude}&distance={distance}

Required Parameters

ParameterTypeDescription
access_tokenstringA Mapbox access token with default permissions.
latitudefloatThe latitude of the location around which charge points are searched. The latitude must be a number between -90.0 and 90.0.
longitudefloatThe longitude of the location around which charge points are searched. The longitude must be a number between -180.0 and 180.0.
distancefloatThe maximum distance in kilometers around the latitude, longitude to search for charge points. You can specify a distance of up to 100 kilometers. The default value is 10 kilometers.

Optional Parameters

ParameterTypeDescription
limitintegerAn optional limit on the number of charge points to be provided in the response. You can specify a limit up to 100. The default value is 20.
connector_typesstringAn optional comma-delimited list of the OCPI v2.2.1 ConnectorType to be included in the response. By default all connector types will be included in the response.
operatorsstringAn optional comma-delimited list of the charge point operators to be included in the response. By default all operators will be included in the response. To get the current list of operators, refer to the Retrieve list of Charge Point Operators section.
min_charging_powerfloatAn optional value in watts that sets the lower limit for the charging power supported by EVSEs at a charge point. If max_charging_power is provided, the default value is 0.
max_charging_powerfloatAn optional value in watts that sets the upper limit for the charging power supported by EVSEs at a charge point. If min_charging_power is provided, The default value is 500000.
availabilitystringAn optional filter on the charge points availability, reflected by the status of their EVSEs. The value of this optional parameter must be a valid Status (for example, "AVAILABLE" will return all charge points that have an EVSE with the status AVAILABLE).

Example Request

# Retrieve EV charge points within 1 kilometer of San Jose Airport.

$curl "https://api.mapbox.com/ev/v1/locations?access_token=YOUR_MAPBOX_ACCESS_TOKEN&latitude=37.364714&longitude=-121.924238&distance=1"

Response

The response to an EV Charge Finder API request is a GeoJSON FeatureCollection object that contains the following properties:

PropertyTypeDescription
typestringThe GeoJSON object type, this value is always 'FeatureCollection'.
featuresarrayThe GeoJSON Feature objects describe a relevant EV charge point.
features[].typearrayThe GeoJSON object type, this value is always 'Feature'.
features[].geometryobjectA GeoJSON Geometry object that describes where the EV charge point object is located.
features[].propertiesobjectAn object that contains details about an OCPI Location.
features[].properties.locationobjectAn OCPI Location object.
features[].properties.proximityobjectA Proximity object that describes the distance from the proximity location's latitude and longitude to the charge point.

Example Response

{
"type": "FeatureCollection",
"features": [
{
"type": "Feature",
"geometry": {
"type": "Point",
"coordinates": [-121.920559, 37.367285]
},
"properties": {
"location": {
"country_code": "US",
"party_id": "MBX",
"id": "dXJuOm1ieHBvaToxMjM0NQ==",
"publish": false,
"name": "Hudson Concourse",
"address": "1741 Technology Drive",
"city": "San Jose",
"postal_code": "95110",
"state": "CA",
"country": "USA",
"coordinates": {
"latitude": "37.3672850",
"longitude": "-121.9205590"
},
"evses": [
{
"uid": "82686",
"evse_id": "82686",
"status": "AVAILABLE",
"connectors": [
{
"id": "5",
"standard": "IEC_62196_T1",
"format": "CABLE",
"power_type": "AC_2_PHASE",
"max_voltage": 240,
"max_amperage": 27,
"max_electric_power": 6.5,
"last_updated": "2022-08-11T14:03:44"
}
],
"coordinates": {
"latitude": "37.3672850",
"longitude": "-121.9205590"
},
"mbx_ext": { "pnc_capable": true },
"last_updated": "2022-08-11T14:03:44"
},
{
"uid": "82687",
"evse_id": "82687",
"status": "AVAILABLE",
"connectors": [
{
"id": "5",
"standard": "IEC_62196_T1",
"format": "CABLE",
"power_type": "AC_1_PHASE",
"max_voltage": 240,
"max_amperage": 27,
"max_electric_power": 6.5,
"last_updated": "2022-08-11T14:03:44"
}
],
"coordinates": {
"latitude": "37.3672850",
"longitude": "-121.9205590"
},
"mbx_ext": { "pnc_capable": true },
"last_updated": "2022-08-11T14:03:44"
}
],
"operator": {
"name": "ChargePoint"
},
"owner": {
"name": "ChargePoint"
},
"time_zone": "America/Los_Angeles",
"opening_times": {
"twentyfourseven": true
},
"mbx_ext": { "pnc_capable": true },
"last_updated": "2022-08-11T14:03:44"
},
"proximity": {
"latitude": 37.364714,
"longitude": -121.924238,
"distance": 0.43294229650723554
}
}
}
]
}

Errors

HTTP Status CodeResponse PayloadDescription
400Bad RequestThe feature is not enabled for the provided Mapbox access token, or an expected parameter, either latitude, longitude, or distance, was not provided.
401Not AuthorizedThe API is not authorized for use for the provided access token.

Get Charge Point details by ID

Get charge point details by ID. First, use the Search for EV Charge Points feature to get a list of charge points. Then, get a specific charge point’s ID from the id property of the OCPI Location object and use it to get detailed information about that charge point.

get
https://api.mapbox.com/ev/v1/locations/{location_id}

Required Parameters

ParameterTypeDescription
access_tokenstringA Mapbox access token with default permissions.
location_idstringid property of OCPI Location object

Example Request

# Get details of a charge point near San Jose Airport.

$curl "https://api.mapbox.com/ev/v1/locations/dXJuOm1ieGV2OmY3Y2E2ZmNlLTZjYTAtMTFlZC1hYjVjLWEwNDIzZjQyYWYwNjtzcmM9NA?access_token=YOUR_MAPBOX_ACCESS_TOKEN"

Response

The response is a GeoJSON FeatureCollection object that contains the following properties:

PropertyTypeDescription
typestringThe GeoJSON object type, this value is always 'Feature'.
geometryobjectA GeoJSON Geometry object that describes where the EV charge point object is located.
propertiesobjectAn object that contains details about an OCPI Location.
properties.locationobjectAn OCPI Location object.
properties.proximityobjectA Proximity object that describes the distance from the proximity location's latitude and longitude to the charge point.
properties.tariffsarrayAn array of Tariff objects that describes the detailed price information for charging.

Example Response

{
"type": "Feature",
"geometry": {
"type": "Point",
"coordinates": [
-121.928896,
37.370011
]
},
"properties": {
"location": {
"country_code": "US",
"party_id": "MBX",
"id": "dXJuOm1ieGV2OmY3Y2E2ZmNlLTZjYTAtMTFlZC1hYjVjLWEwNDIzZjQyYWYwNjtzcmM9NA",
"publish": true,
"address": "1701 Airport Boulevard",
"city": "San Jose",
"country": "USA",
"coordinates": {
"latitude": "37.370011",
"longitude": "-121.928896"
},
"time_zone": "America/Los_Angeles",
"last_updated": "2024-11-07T08:09:09Z",
"evses": [
{
"uid": "538824",
"status": "AVAILABLE",
"last_updated": "2024-11-07T08:09:09Z",
"connectors": [
{
"id": "5",
"standard": "IEC_62196_T1",
"format": "CABLE",
"power_type": "AC_1_PHASE",
"max_voltage": 240,
"max_amperage": 27,
"last_updated": "2024-11-07T08:09:09Z",
"tariff_ids": [
"bd40fa72d66b359796c0d10e9c64389c"
],
"max_electric_power": 6480
}
],
"evse_id": "538824"
}
],
"name": "Norman Y. Mineta San Jose International Airport",
"postal_code": "95110",
"parking_type": "ALONG_MOTORWAY",
"operator": {
"name": "ChargePoint"
},
"owner": {
"name": "ChargePoint",
"website": "https://www.chargepoint.com/"
},
"opening_times": {
"twentyfourseven": false,
"regular_hours": [
{
"weekday": 1,
"period_begin": "00:00",
"period_end": "24:00"
},
{
"weekday": 2,
"period_begin": "00:00",
"period_end": "24:00"
},
{
"weekday": 3,
"period_begin": "00:00",
"period_end": "24:00"
},
{
"weekday": 4,
"period_begin": "00:00",
"period_end": "24:00"
},
{
"weekday": 5,
"period_begin": "00:00",
"period_end": "24:00"
},
{
"weekday": 6,
"period_begin": "00:00",
"period_end": "24:00"
},
{
"weekday": 7,
"period_begin": "00:00",
"period_end": "24:00"
}
],
},
"charging_when_closed": false,
},
"tariffs": [
{
"country_code": "US",
"party_id": "MBX",
"id": "bd40fa72d66b359796c0d10e9c64389c",
"currency": "USD",
"last_updated": "2024-11-07T03:17:19Z",
"elements": [
{
"price_components": [
{
"type": "FLAT",
"price": 0,
"step_size": 0
}
]
}
],
"tariff_alt_text": [],
"type": "AD_HOC_PAYMENT"
}
]
}
}

Errors

HTTP Status CodeResponse PayloadDescription
401Not AuthorizedThe API is not authorized for use for the provided access token.
404Not FoundThe charge point is not found.

Retrieve list of Charge Point Operators

Retrieve a list of charge point operators. The response includes party_id, name, and country_code, helping users to search for charge points from preferred operators using Search for EV Charge Points.

get
https://api.mapbox.com/ev/v1/operators

Required Parameters

ParameterTypeDescription
access_tokenstringA Mapbox access token with default permissions.

Example Request

# Retrieve the Operators list.

$curl "https://api.mapbox.com/ev/v1/operators?access_token=YOUR_MAPBOX_ACCESS_TOKEN"

Response

The response is a Array of objects that contains the following properties:

PropertyTypeCardinalityDescription
dataarray*Array of Operator representing EV Charge Point operator.

Example Response

{
"data": [
{
"party_id": "BCH",
"name": "Bc Hydro",
"country_code": "CA"
},
{
"party_id": "CRK",
"name": "CircleK/Couche-Tard Recharge",
"country_code": "CA"
},
{
"party_id": "SIM",
"name": "ChargeHub",
"country_code": "CA"
},
{
"party_id": "ECS",
"name": "EVCS",
"country_code": "US"
},
{
"party_id": "GYW",
"name": "evGateway",
"country_code": "US"
}
]
}

Errors

HTTP Status CodeResponse PayloadDescription
401Not AuthorizedThe API is not authorized for use for the provided access token.

Data Models

The structured representations of data used in the EV Charge Finder API are defined below.

Proximity

proximity in which to conduct a search for charge point POIs.

PropertyTypeCardinalityDescription
latitudefloat1Latitude of the proximity in decimal degree. The latitude must be a number between -90.0 and 90.0.
longitudefloat1Longitude of the proximity in decimal degree. The longitude must be a number between -180.0 and 180.0.
distancefloat1The distance, in kilometers, of the POI from the proximity.

Operator

Charge point operator that owns EV charge points.

PropertyTypeCardinalityDescription
party_idstring13 letter identifier of the operator.
namestring1Name of the operator.
country_codestring1ISO-3166 alpha-2 country code of the operator.

OCPI Location

The Location object describes the location and its properties where a group of EVSEs that belong together are installed. Refer to this type in the OCPI GitHub repository for more details.

PropertyTypeCardinalityDescription
country_codestring1ISO-3166 alpha-2 country code of the operator that 'owns' this Location.
party_idstring13 letter identifier of the operator.
idstring1Uniquely identifies the location within the operator's platform (and suboperator platforms). This field can never be changed, modified or renamed.
publishboolean1Defines if a Location may be published on a website or app etc. When set to false, this location is only visible by tokens identified in the field: publish_allowed_to. When the same location has EVSEs that may be published and may not be published, two 'Locations' should be created.
publish_allowed_toobject*PublishTokenType object. This field may only be used when the publish field is false. The location is shared only with owners of Tokens that match all the set fields of one PublishToken in the list.
namestring?Display name of the location.
addressstring1Street/block name and house number if available.
citystring1City or town.
postal_codestring?Postal code of the location, may only be omitted when the location has no postal code: in some countries charging locations at highways don’t have postal codes.
statestring?State or province of the location, only to be used when relevant.
countrystring1ISO 3166-1 alpha-3 code for the country of this location.
coordinatesobject1GeoLocation object representing coordinates of the location.
related_locationsarray*AdditionalGeoLocation object representing geographical location of related points relevant to the user.
parking_typestring?ParkingType value. The general type of parking at the charge point location.
evsesarray*Array of EVSE objects that belong to this Location.
directionsobject*DisplayText object representing human-readable directions on how to reach the location.
operatorobject?BusinessDetails object representing information of the operator. When not specified, the information retrieved from the Credentials module, selected by the country_code and party_id of this Location, should be used instead.
suboperatorobject?BusinessDetails object representing information of the suboperator if available.
ownerobject?BusinessDetails object representing information of the owner if available.
facilitiesarray*Array of Facility this charging location directly belongs to.
time_zonestring1One of IANA time zone data’s TZ-values representing the time zone of the location. Examples: "Europe/Oslo", "Europe/Zurich".
opening_timesobject?Hours object representing the times when the EVSEs at the location can be accessed for charging.
charging_when_closedboolean?Indicates if the EVSEs are still charging outside the opening hours of the location. for example when the parking garage closes its barriers over night, is it allowed to charge till the next morning? Default: true
imagesobject*Image object representing links to images related to the location such as photos or logos.
energy_mixobject?EnergyMix object representing details on the energy supplied at this location.
last_updatedstring1Timestamp in OCPI DateTime format when this Location or one of its EVSEs or Connectors were last updated (or created).

OCPI EVSE

The EVSE object describes the part that controls the power supply to a single EV in a single session. It always belongs to a Location object. Refer to this type in the OCPI GitHub repository for more details.

PropertyTypeCardinalityDescription
uidstring1Uniquely identifies the EVSE within the operators' platform (and suboperator platforms). For example a database ID or the actual "EVSE ID". This field can never be changed, modified or renamed. This is the 'technical' identification of the EVSE, not to be used as 'human readable' identification, use the field evse_id for that.
evse_idstring?Compliant with the following specification for EVSE ID from "eMI3 standard version V1.0" (http://emi3group.com/documents-links/) "Part 2: business objects." Optional because: If an EVSE ID is to be reused in the real world, you can remove the evse_id from an EVSE object if the status after setting its status to REMOVED.
statusstring1Status value that indicates the current status of the EVSE.
status_schedulearray*Array of StatusSchedule representing a planned status update of the EVSE.
capabilitiesarray*Array of Capability that the EVSE is capable of.
connectorsarray+Array of available Connector objects on the EVSE.
floor_levelstring?Level on which the Charge Point is located (in garage buildings) in the locally displayed numbering scheme.
coordinatesobject?GeoLocation object representing coordinates of the EVSE.
physical_referencestring?A number/string printed on the outside of the EVSE for visual identification.
directionsarray*DisplayText object representing multi-language human-readable directions when more detailed information on how to reach the EVSE from the Location is required.
parking_restrictionsarray*Array of ParkingRestriction values that apply to the parking spot.
imagesarray*Array of Image objects representing links to images related to the EVSE such as photos or logos.
last_updatedstring1Timestamp in DateTime format when this EVSE or one of its Connectors was last updated (or created).

OCPI Connector

A Connector is the socket or cable and plug available for the EV to use. A single EVSE may provide multiple Connectors but only one of them can be in use at the same time. A Connector always belongs to an EVSE object. Refer to this type in the OCPI GitHub repository for more details.

PropertyTypeCardinalityDescription
idstring1Identifier of the Connector within the EVSE. Two Connectors may have the same id as long as they do not belong to the same EVSE object.
standardstring1ConnectorType value indicating the standard of the installed connector.
formatstring1ConnectorFormat value indicating the format (socket/cable) of the installed connector.
power_typestring1PowerType value indicating electrical power configuration.
max_voltageinteger1Maximum voltage of the connector (line to neutral for AC_3_PHASE), in volt [V]. For example: DC Chargers might vary the voltage during charging when battery almost full.
max_amperageinteger1Maximum amperage of the connector, in ampere [A].
max_electric_powerinteger?Maximum electric power that can be delivered by this connector, in Watts (W). Used when the maximum electric power is lower than the calculated value from voltage and amperage. For example: A DC Charge Point which can delivers up to 920V and up to 400A can be limited to a maximum of 150kW (max_electric_power = 150000). Depending on the car, it may supply max voltage or current, but not both at the same time. For AC Charge Points, the amount of phases used can also have influence on the maximum power.
tariff_idsstring*Identifiers of the valid charging tariffs. Multiple tariffs are possible, but only one of each Tariff.type can be active at the same time. Tariffs with the same type are only allowed if they are not active at the same time: start_date_time and end_date_time period not overlapping. Only included in the response of the Get Charge Point details by ID API
terms_and_conditionsstring?URL to the operator’s terms and conditions.
last_updatedstring1Timestamp in DateTime format when this Connector was last updated (or created).

OCPI AdditionalGeoLocation

This class defines an additional geographic location that is relevant for the Charge Point. The geodetic system to be used is WGS 84. Refer to this type in the OCPI GitHub repository for more details.

PropertyTypeCardinalityDescription
latitudestring1Latitude of the point in decimal degree. The latitude must be a number between -90.0 and 90.0.
longitudestring1Longitude of the point in decimal degree. The longitude must be a number between -180.0 and 180.0.
nameobject?DisplayText object representing name of the point in local language or as written at the location. For example the street name of a parking lot entrance or it’s number.

OCPI BusinessDetails

This class is information about a business operator, including its name, an optional website URL, and an optional logo image link. Refer to this type in the OCPI GitHub repository for more details.

PropertyTypeCardinalityDescription
namestring1Name of the operator.
websitestring?Link to the operator’s website.
logoobject?Image object representing link to the operator’s logo.

OCPI Capability

The capabilities of an EVSE. Refer to this type in the OCPI GitHub repository for more details.

ValueDescription
CHARGING_PROFILE_CAPABLEThe EVSE supports charging profiles.
CHARGING_PREFERENCES_CAPABLEThe EVSE supports charging preferences.
CHIP_CARD_SUPPORTEVSE has a payment terminal that supports chip cards.
CONTACTLESS_CARD_SUPPORTEVSE has a payment terminal that supports contactless cards.
CREDIT_CARD_PAYABLEEVSE has a payment terminal that makes it possible to pay for charging using a credit card.
DEBIT_CARD_PAYABLEEVSE has a payment terminal that makes it possible to pay for charging using a debit card.
PED_TERMINALEVSE has a payment terminal with a pin-code entry device.
REMOTE_START_STOP_CAPABLEThe EVSE can remotely be started/stopped.
RESERVABLEThe EVSE can be reserved.
RFID_READERCharging at this EVSE can be authorized with an RFID token.
START_SESSION_CONNECTOR_REQUIREDWhen a StartSession is received by this EVSE, the eMSP is required to add the optional connector_id field in the StartSession object.
TOKEN_GROUP_CAPABLEThis EVSE supports token groups, two or more tokens work as one, so that a session can be started with one token and stopped with another (handy when an EV driver has both a card and key-fob).
UNLOCK_CAPABLEConnectors have mechanical lock that can be requested by the eMSP to be unlocked.

OCPI ConnectorFormat

The format of the connector, whether it is a socket or a plug. Refer to this type in the OCPI GitHub repository for more details.

ValueDescription
SOCKETThe connector is a socket; the EV user needs to bring a fitting plug.
CABLEThe connector is an attached cable; the EV users car needs to have a fitting inlet.

OCPI ConnectorType

The socket or plug standard of the charge point. Refer to this type in the OCPI GitHub repository for more details.

ValueDescription
CHADEMOThe connector type is CHAdeMO, DC
CHAOJIThe ChaoJi connector. The new generation charging connector, harmonized between CHAdeMO and GB/T. DC.
DOMESTIC_AStandard/Domestic household, type "A", NEMA 1-15, 2 pins
DOMESTIC_BStandard/Domestic household, type "B", NEMA 5-15, 3 pins
DOMESTIC_CStandard/Domestic household, type "C", CEE 7/17, 2 pins
DOMESTIC_DStandard/Domestic household, type "D", 3 pin
DOMESTIC_EStandard/Domestic household, type "E", CEE 7/5 3 pins
DOMESTIC_FStandard/Domestic household, type "F", CEE 7/4, Schuko, 3 pins
DOMESTIC_GStandard/Domestic household, type "G", BS 1363, Commonwealth, 3 pins
DOMESTIC_HStandard/Domestic household, type "H", SI-32, 3 pins
DOMESTIC_IStandard/Domestic household, type "I", AS 3112, 3 pins
DOMESTIC_JStandard/Domestic household, type "J", SEV 1011, 3 pins
DOMESTIC_KStandard/Domestic household, type "K", DS 60884-2-D1, 3 pins
DOMESTIC_LStandard/Domestic household, type "L", CEI 23-16-VII, 3 pins
DOMESTIC_MStandard/Domestic household, type "M", BS 546, 3 pins
DOMESTIC_NStandard/Domestic household, type "N", NBR 14136, 3 pins
DOMESTIC_OStandard/Domestic household, type "O", TIS 166-2549, 3 pins
GBT_ACGuobiao GB/T 20234.2 AC socket/connector
GBT_DCGuobiao GB/T 20234.3 DC connector
IEC_60309_2_single_16IEC 60309-2 Industrial Connector single phase 16 amperes (usually blue)
IEC_60309_2_three_16IEC 60309-2 Industrial Connector three phases 16 amperes (usually red)
IEC_60309_2_three_32IEC 60309-2 Industrial Connector three phases 32 amperes (usually red)
IEC_60309_2_three_64IEC 60309-2 Industrial Connector three phases 64 amperes (usually red)
IEC_62196_T1IEC 62196 Type 1 "SAE J1772"
IEC_62196_T1_COMBOCombo Type 1 based, DC
IEC_62196_T2IEC 62196 Type 2 "Mennekes"
IEC_62196_T2_COMBOCombo Type 2 based, DC
IEC_62196_T3AIEC 62196 Type 3A
IEC_62196_T3CIEC 62196 Type 3C "Scame"
NEMA_5_20NEMA 5-20, 3 pins
NEMA_6_30NEMA 6-30, 3 pins
NEMA_6_50NEMA 6-50, 3 pins
NEMA_10_30NEMA 10-30, 3 pins
NEMA_10_50NEMA 10-50, 3 pins
NEMA_14_30NEMA 14-30, 3 pins, rating of 30 A
NEMA_14_50NEMA 14-50, 3 pins, rating of 50 A
PANTOGRAPH_BOTTOM_UPOn-board Bottom up Pantograph typically for bus charging
PANTOGRAPH_TOP_DOWNOff-board Top down Pantograph typically for bus charging
TESLA_RTesla Connector "Roadster"-type (round, 4 pin)
TESLA_STesla Connector "Model-S"-type (oval, 5 pin)

OCPI EnergyMix

This type is used to specify the energy mix and environmental impact of the supplied energy at a location or in a tariff. Refer to this type in the OCPI GitHub repository for more details.

PropertyTypeCardinalityDescription
is_green_energyboolean1True if 100% from regenerative sources. (CO2 and nuclear waste is zero)
energy_sourcesarray*Array of EnergySource objects representing energy sources of this location’s tariff in key-value pairs (enum + percentage).
environ_impactarray*Array of EnvironmentalImpact objects representing nuclear waste and CO2 exhaust of this location’s tariff in Key-value pairs (enum + percentage).
supplier_namestring?Name of the energy supplier, delivering the energy for this location or tariff.
energy_product_namestring?Name of the energy suppliers product/tariff plan used at this location.

OCPI EnergySource

Key-value pairs (enum + percentage) of energy sources. All given values of all categories should add up to 100 percent. Refer to this type in the OCPI GitHub repository for more details.

PropertyTypeCardinalityDescription
sourcestring1EnergySourceCategory value indicating the type of energy source.
percentageinteger1Percentage of this source (0-100) in the mix.

OCPI EnergySourceCategory

Categories of energy sources. Refer to this type in the OCPI GitHub repository for more details.

ValueDescription
NUCLEARNuclear power sources.
GENERAL_FOSSILAll kinds of fossil power sources.
COALFossil power from coal.
GASFossil power from gas.
GENERAL_GREENAll kinds of regenerative power sources.
SOLARRegenerative power from photo voltaic.
WINDRegenerative power from wind turbines.
WATERRegenerative power from water turbines.

OCPI EnvironmentalImpact

Amount of waste produced/emitted per kWh. Refer to this type in the OCPI GitHub repository for more details.

PropertyTypeCardinalityDescription
categorystring1EnvironmentalImpactCategory value indicating the environmental impact category.
amountfloat1Amount of this part in g/kWh.

OCPI EnvironmentalImpactCategory

Categories of environmental impact values. Refer to this type in the OCPI GitHub repository for more details.

ValueDescription
NUCLEAR_WASTEProduced nuclear waste in grams per kilowatt hour.
CARBON_DIOXIDEExhausted carbon dioxide in grams per kilowatt hour.

OCPI ExceptionalPeriod

Specifies one exceptional period for opening or access hours. Refer to this type in the OCPI GitHub repository for more details.

PropertyTypeCardinalityDescription
period_beginstring1Begin timestamp of the exception in DateTime format. In UTC, time_zone field can be used to convert to local time.
period_endstring1End timestamp of the exception in DateTime format. In UTC, time_zone field can be used to convert to local time.

OCPI Facility

A facility to which a charging location directly belongs. Refer to this type in the OCPI GitHub repository for more details.

ValueDescription
HOTELA hotel.
RESTAURANTA restaurant.
CAFEA cafe.
MALLA mall or shopping center.
SUPERMARKETA supermarket.
SPORTSport facilities: gym, field etc.
RECREATION_AREAA recreation area.
NATURELocated in, or close to, a park, nature reserve etc.
MUSEUMA museum.
BIKE_SHARINGA bike/e-bike/e-scooter sharing location.
BUS_STOPA bus stop.
TAXI_STANDA taxi stand.
TRAM_STOPA tram stop/station.
METRO_STATIONA metro station.
TRAIN_STATIONA train station.
AIRPORTAn airport.
PARKING_LOTA parking lot.
CARPOOL_PARKINGA carpool parking.
FUEL_STATIONA Fuel station.
WIFIWifi or other type of internet available.

OCPI GeoLocation

This class defines the geographic location of the Charge Point. The geodetic system to be used is WGS 84. Refer to this type in the OCPI GitHub repository for more details.

PropertyTypeCardinalityDescription
latitudestring1Latitude of the point in decimal degree. The latitude must be a number between -90.0 and 90.0.
longitudestring1Longitude of the point in decimal degree. The longitude must be a number between -180.0 and 180.0.

OCPI Hours

Opening and access hours of the location. Refer to this type in the OCPI GitHub repository for more details.

PropertyTypeCardinalityDescription
twentyfoursevenboolean1True to represent 24 hours a day and 7 days a week, except the given exceptions.
regular_hoursarray*Array of RegularHours objects representing regular hours, weekday-based. Only to be used if twentyfourseven=false, then this field needs to contain at least one RegularHours object.
exceptional_openingsarray*Array of ExceptionalPeriod objects representing exceptions for specified calendar dates, time-range based. Times the station is operating/accessible. Additional to regular_hours. May overlap regular rules.
exceptional_closingsarray*Array of ExceptionalPeriod objects representing exceptions for specified calendar dates, time-range based. Times the station is not operating/accessible. Overwriting regular_hours and exceptional_openings. Should not overlap exceptional_openings.

OCPI Image

This class references an image related to an EVSE as a file name or URL. Refer to this type in the OCPI GitHub repository for more details.

PropertyTypeCardinalityDescription
urlstring1URL from where the image data can be fetched through a web browser.
thumbnailstring?URL from where a thumbnail of the image can be fetched through a web browser.
categorystring1ImageCategory value indicating what the image is used for.
typestring1Image type like: GIF, JPG, PNG, SVG.
widthinteger?Width of the full scale image.
heightinteger?Height of the full scale image.

OCPI ImageCategory

The category of an image to get the correct usage in a user presentation. Refer to this type in the OCPI GitHub repository for more details.

ValueDescription
CHARGERPhoto of the physical device that contains one or more EVSEs.
ENTRANCELocation entrance photo. Should show the car entrance to the location from street side.
LOCATIONLocation overview photo.
NETWORKLogo of an associated roaming network to be displayed with the EVSE for example in lists, maps and detailed information views.
OPERATORLogo of the charge point operator, for example a municipality, to be displayed in the EVSEs detailed information view or in lists and maps, if no network logo is present.
OTHEROther
OWNERLogo of the charge point owner, for example a local store, to be displayed in the EVSEs detailed information view.

OCPI ParkingRestriction

This value, if provided, is the restriction to the parking spot for different purposes. Refer to this type in the OCPI GitHub repository for more details.

ValueDescription
EV_ONLYReserved parking spot for electric vehicles.
PLUGGEDParking is only allowed while plugged in (charging).
DISABLEDReserved parking spot for disabled people with valid ID.
CUSTOMERSParking spot for customers/guests only, for example in case of a hotel or shop.
MOTORCYCLESParking spot only suitable for (electric) motorcycles or scooters.

OCPI ParkingType

Reflects the general type of the charge point’s location. May be used for user information. Refer to this type in the OCPI GitHub repository for more details.

ValueDescription
ALONG_MOTORWAYLocation on a parking facility/rest area along a motorway, freeway, interstate, highway etc.
PARKING_GARAGEMultistorey car park.
PARKING_LOTA cleared area that is intended for parking vehicles, as in at super markets, bars, etc.
ON_DRIVEWAYLocation is on the driveway of a house/building.
ON_STREETParking in public space along a street.
UNDERGROUND_GARAGEMultistorey car park, mainly underground.

OCPI PowerType

This value indicates an electrical power configuration of a connector. Refer to this type in the OCPI GitHub repository for more details.

ValueDescription
AC_1_PHASEAC single phase.
AC_2_PHASEAC two phases, only two of the three available phases connected.
AC_2_PHASE_SPLITAC two phases using split phase system.
AC_3_PHASEAC three phases.
DCDirect Current.

OCPI PublishTokenType

Defines the set of values that identify a token to which a Location might be published. Refer to this type in the OCPI GitHub repository for more details.

PropertyTypeCardinalityDescription
uidstring?Unique ID by which this Token can be identified.
typestring?TokenType value indicating type of the token.
visual_numberstring?Visual readable number/identification as printed on the Token (RFID card).
issuerstring?Issuing company, most of the times the name of the company printed on the token (RFID card), not necessarily the eMSP.
group_idstring?This ID groups a couple of tokens. This can be used to make two or more tokens work as one.

OCPI TokenType

Type of Token. Refer to this type in the [OCPI GitHub repository](Refer to this type in the OCPI GitHub repository for more details.

ValueDescription
AD_HOC_USEROne time use Token ID generated by a server (or App.) The eMSP uses this to bind a Session to a customer, probably an app user.
APP_USERToken ID generated by a server (or App.) to identify a user of an App. The same user uses the same Token for every Session.
OTHEROther type of token
RFIDRFID Token

OCPI RegularHours

Regular recurring operation or access hours. Refer to this type in the OCPI GitHub repository for more details.

PropertyTypeCardinalityDescription
weekdayinteger1Number of day in the week, from Monday (1) till Sunday (7)
period_beginstring1Begin of the regular period, in local time, given in hours and minutes. Must be in 24h format with leading zeros. Example: "18:15".
period_endstring1End of the regular period, in local time, syntax as for period_begin. Must be later than period_begin.

OCPI Status

The status of an EVSE. Refer to this type in the OCPI GitHub repository for more details.

ValueDescription
AVAILABLEThe EVSE/Connector is able to start a new charging session.
BLOCKEDThe EVSE/Connector is not accessible because of a physical barrier, as in a car.
CHARGINGThe EVSE/Connector is in use.
INOPERATIVEThe EVSE/Connector is not yet active, or temporarily not available for use, but not broken or defect.
OUTOFORDER The EVSE/Connector is out of order, some part/components may be broken/defective.
PLANNEDThe EVSE/Connector is planned, will be operating soon.
REMOVEDThe EVSE/Connector was discontinued/removed.
RESERVEDThe EVSE/Connector is reserved for a particular EV driver and is unavailable for other drivers.
UNKNOWNNo status information available (also used when offline).

OCPI StatusSchedule

This type is used to schedule status period in the future. Refer to this type in the OCPI GitHub repository for more details.

PropertyTypeCardinalityDescription
period_beginstring1Begin timestamp in DateTime format of the scheduled period.
period_endstring?End timestamp in DateTime format of the scheduled period, if known.
statusStatus1Status value during the scheduled period.

OCPI DateTime

All timestamps are formatted as string following RFC 3339, with some additional limitations. Refer to this type in the OCPI GitHub repository for more details.

OCPI DisplayText

Refer to this type in the OCPI GitHub repository for more details.

PropertyTypeCardinalityDescription
languagestring1Language Code ISO 639-1.
textstring1Text to be displayed to an end user. No markup, HTML etc. allowed.

OCPI Price

Type of price and cost. Refer to this type in the OCPI GitHub repository for more details.

PropertyTypeCardinalityDescription
excl_vatfloat1Price/Cost excluding VAT.
incl_vatfloat?Price/Cost including VAT.

OCPI Tariff

A Tariff object consists of a list of one or more Tariff Elements, which in turn consist of Price Components. A Tariff Element is a group of Price Components that apply under the same conditions. A Price Component describes how the usage of a particular dimension (time, energy, etc.) maps to an amount of money owed. Refer to this type in the OCPI GitHub repository for more details.

PropertyTypeCardinalityDescription
country_codestring1ISO-3166 alpha-2 country code of the operator that owns this Tariff.
party_idstring13 letter identifier of the operator.
idstring1Uniquely identifies the tariff within the CPO’s platform (and suboperator platforms).
currencystring1ISO-4217 code of the currency of this tariff.
typestring?TariffType of the tariff. This allows for distinction in case of given Charging Preferences. When omitted, this tariff is valid for all sessions.
tariff_alt_textarray*DisplayText object representing list of multi-language alternative tariff information texts.
tariff_alt_urlstring?URL to a webpage that contains an explanation of the tariff information in human readable form.
min_priceobject?Price object. Use this property to declare a Charging Session tariff will base cost of this amount. This is different from a FLAT fee (Start Tariff, Transaction Fee), a FLAT fee is a fixed amount for any Charging Session. A minimum price indicates that when the cost of a Charging Session is lower than this amount, the cost of the Session will be equal to this amount. (Also see note below)
max_priceobject?Price object. Set this field and a Charging Session with this tariff will NOT cost more than this amount. (See note below)
elementsarray+List of TariffElement.
start_date_timestring?The time in OCPI DateTime format when this tariff becomes active, in UTC, time_zone field of the Location can be used to convert to local time. Typically used for a new tariff that is already given with the location, before it becomes active. (See note below)
end_date_timestring?The time in OCPI DateTime format after which this tariff is no longer valid, in UTC, time_zone field if the Location can be used to convert to local time. Typically used when this tariff is going to be replaced with a different tariff soon. (See note below)
energy_mixobject?Details on the energy supplied with this tariff.
last_updatedstring1Timestamp in OCPI DateTime format when this Tariff was last updated (or created).

OCPI TariffType

The type of the tariff. Refer to this type in the OCPI GitHub repository for more details.

ValueDescription
AD_HOC_PAYMENTUsed to describe that a Tariff is valid when ad-hoc payment is used at the Charge Point (for example: Debit or Credit card payment terminal).
PROFILE_CHEAPUsed to describe that a Tariff is valid when setting Charging Preference: CHEAP for the session.
PROFILE_FASTUsed to describe that a Tariff is valid when setting Charging Preference: FAST for the session.
PROFILE_GREENUsed to describe that a Tariff is valid when setting Charging Preference: GREEN for the session.
REGULARUsed to describe that a Tariff is valid when using an RFID, without any Charging Preference, or when setting Charging Preference: REGULAR for the session.

OCPI TariffElement

The type of tariff element. Refer to this type in the OCPI GitHub repository for more details.

PropertyTypeCardinalityDescription
price_componentsarray+List of PriceComponent that describe the pricing of a tariff.
restrictionsobject?List of TariffRestrictions Restrictions that describe the applicability of a tariff.

OCPI PriceComponent

The type of price component for tariff. Refer to this type in the OCPI GitHub repository for more details.

PropertyTypeCardinalityDescription
typestring1TariffDimensionType of tariff dimension.
pricefloat1Price per unit (excl. VAT) for this tariff dimension.
vatinteger?Applicable VAT percentage for this tariff dimension. If omitted, no VAT is applicable. Not providing a VAT is different from 0% VAT, which would be a value of 0.0 here.
step_sizeinteger1Minimum amount to be billed. This unit will be billed in this step_size blocks. Amounts that are less then this step_size are rounded up to the given step_size. For example: if type is TIME and step_size has a value of 300, then time will be billed in blocks of 5 minutes. If 6 minutes were used, 10 minutes (2 blocks of step_size) will be billed.

OCPI TariffDimensionType

Type of tariff dimension. Refer to this type in the OCPI GitHub repository for more details.

ValueDescription
ENERGYDefined in kWh, step_size multiplier: 1 Wh
FLATFlat fee without unit for step_size
PARKING_TIMETime not charging: defined in hours, step_size multiplier: 1 second
TIMETime charging: defined in hours, step_size multiplier: 1 second

OCPI TariffRestrictions

These restrictions are not for the entire Charging Session. They only describe if a TariffElement becomes active or inactive during a Charging Session. Refer to this type in the OCPI GitHub repository for more details.

PropertyTypeCardinalityDescription
start_timestring?Start time of day in local time, the time zone is defined in the time_zone field of the Location, for example 13:30, valid from this time of the day. Must be in 24h format with leading zeros. Hour/Minute separator: ":" Regex: ([0-1][0-9]
end_timestring?End time of day in local time, the time zone is defined in the time_zone field of the Location, for example 19:45, valid until this time of the day. Same syntax as start_time. If end_time < start_time then the period wraps around to the next day. To stop at end of the day use: 00:00.
start_datestring?Start date in local time, the time zone is defined in the time_zone field of the Location, for example: 2015-12-24, valid from this day (inclusive). Regex: ([12][0-9]3)-(0[1-9]
end_datestring?End date in local time, the time zone is defined in the time_zone field of the Location, for example: 2015-12-27, valid until this day (exclusive). Same syntax as start_date.
min_kwhfloat?Minimum consumed energy in kWh, for example 20, valid from this amount of energy (inclusive) being used.
max_kwhfloat?Maximum consumed energy in kWh, for example 50, valid until this amount of energy (exclusive) being used.
min_currentfloat?Sum of the minimum current (in Amperes) over all phases, for example 5. When the EV is charging with more than, or equal to, the defined amount of current, this TariffElement is/becomes active. If the charging current is or becomes lower, this TariffElement is not or no longer valid and becomes inactive. This describes NOT the minimum current over the entire Charging Session. This restriction can make a TariffElement become active when the charging current is above the defined value, but the TariffElement MUST no longer be active when the charging current drops below the defined value.
max_currentfloat?Sum of the maximum current (in Amperes) over all phases, for example 20. When the EV is charging with less than the defined amount of current, this TariffElement becomes/is active. If the charging current is or becomes higher, this TariffElement is not or no longer valid and becomes inactive. This describes NOT the maximum current over the entire Charging Session. This restriction can make a TariffElement become active when the charging current is below this value, but the TariffElement MUST no longer be active when the charging current raises above the defined value.
min_powerfloat?Minimum power in kW, for example 5. When the EV is charging with more than, or equal to, the defined amount of power, this TariffElement is/becomes active. If the charging power is or becomes lower, this TariffElement is not or no longer valid and becomes inactive. This describes NOT the minimum power over the entire Charging Session. This restriction can make a TariffElement become active when the charging power is above this value, but the TariffElement MUST no longer be active when the charging power drops below the defined value.
max_powerfloat?Maximum power in kW, for example 20. When the EV is charging with less than the defined amount of power, this TariffElement becomes/is active. If the charging power is or becomes higher, this TariffElement is not or no longer valid and becomes inactive. This describes NOT the maximum power over the entire Charging Session. This restriction can make a TariffElement become active when the charging power is below this value, but the TariffElement MUST no longer be active when the charging power raises above the defined value.
min_durationinteger?Minimum duration in seconds the Charging Session MUST last (inclusive). When the duration of a Charging Session is longer than the defined value, this TariffElement is or becomes active. Before that moment, this TariffElement is not yet active.
max_durationinteger?Maximum duration in seconds the Charging Session MUST last (exclusive). When the duration of a Charging Session is shorter than the defined value, this TariffElement is or becomes active. After that moment, this TariffElement is no longer active.
day_of_week`array*Array of DayOfWeek representing which day(s) of the week this tariff element is active.
reservation`string?ReservationRestrictionType. When this field is present, the TariffElement describes reservation costs. A reservation starts when the reservation is made, and ends when the driver starts charging on the reserved EVSE/Location, or when the reservation expires. A reservation can only have: FLAT and TIME TariffDimensions, where TIME is for the duration of the reservation.

OCPI DayOfWeek

Refer to this type in the OCPI GitHub repository for more details.

ValueDescription
MONDAYMonday
TUESDAYTuesday
WEDNESDAYWednesday
THURSDAYThursday
FRIDAYFriday
SATURDAYSaturday
SUNDAYSunday

OCPI ReservationRestrictionType

Refer to this type in the OCPI GitHub repository for more details.

ValueDescription
RESERVATIONUsed in TariffElements to describe costs for a reservation.
RESERVATION_EXPIRESUsed in TariffElements to describe costs for a reservation that expires (as in when driver does not start a charging session before expiry_date of the reservation).

EV Charge Finder API restrictions and limits

  • Maximum 300 requests per minute.
  • The limit parameter up to a maximum of 100.
  • The distance parameter up to a maximum of 10 kilometers.

If you require a higher rate limit, contact us.

Was this page helpful?