Skip to content
Documentation Menu

Types

CiString type

Case Insensitive String. Only printable ASCII allowed. (Non-printable characters like: Carriage returns, Tabs, Line breaks, etc are not allowed)

DateTime type

All timestamps are formatted as string(25) following RFC 3339, with some additional limitations.

All timestamps SHALL be in UTC. The absence of the timezone designator implies a UTC timestamp. Fractional seconds MAY be used.

Example of how timestamps shall be formatted in OCPI, other formats/patterns are not allowed:

2015-06-29T20:39:09Z
2015-06-29T20:39:09
2016-12-29T17:45:09.2Z
2016-12-29T17:45:09.2
2018-01-01T01:08:01.123Z
2018-01-01T01:08:01.123

Note: +00:00 is not the same as UTC.

DisplayText class

PropertyTypeCard.Description
languagestring(2)1Language Code ISO 639-1.
textstring(512)1Text to be displayed to a end user. No markup, html etc. allowed.

Example:

Type displaytext example

number type

Numbers in OCPI are formatted as JSON numbers. Unless mentioned otherwise, numbers use 4 decimals and a sufficiently large amount of digits.

Price class

PropertyTypeCard.Description
excl_vatnumber1Price/Cost excluding VAT.
incl_vatnumber?Price/Cost including VAT.

Role enum

ValueDescription
CPOCharge Point Operator Role.
EMSPeMobility Service Provider Role.
HUBHub role.
NAPNational Access Point Role (national Database with all Location information of a country).
NSPNavigation Service Provider Role, role like an eMSP (probably only interested in Location information).
OTHEROther role.
SCSPSmart Charging Service Provider Role.

string type

Case Sensitive String. Only printable UTF-8 allowed. (Non-printable characters like: Carriage returns, Tabs, Line breaks, etc are not allowed)

All strings in messages and enumerations are case sensitive, unless explicitly stated otherwise.

URL type

An URL a string(255) type following the w3.org spec.