Monta Public API
MONTA Public API

List AFIR-compliant charge points

GET
https://public-api.monta.com
/api/v1/afir/charge-points

Returns a paginated list of publicly accessible, roaming-enabled charge points with AFIR Article 20-compliant data in DATEX II format.

List AFIR-compliant charge points › query Parameters

country
​string · enum · required

ISO 3166-1 alpha-2 country code

Enum values:
DK
BE
page
​integer | null · int32

Page number (1-based)

Default: 1
perPage
​integer | null · int32

Number of results per page (max 1000)

Default: 100

List AFIR-compliant charge points › Responses

Paginated list of AFIR-compliant charge points

DATEX II EnergyInfrastructureTablePublication — static charge point data
lang
​string · required

ISO 639-1 language code for text fields

Example: en
publicationTime
​string · required

ISO 8601 timestamp when this publication was generated

​object · required

Publisher identification

​DatexIITable[] · required

Energy infrastructure tables containing sites

​object · required

Pagination metadata


Get AFIR EVSE statuses changed since a cursor

GET
https://public-api.monta.com
/api/v1/afir/charge-points/status

Returns a batch of EVSE dynamic statuses (availability + ad-hoc price) that changed since the supplied since cursor, in DATEX II format. Omit since to fetch a full snapshot.

Code
Paging is cursor-based: pass the returned `publicationTime` back as `since` on the next request and repeat until an empty batch is returned. Because rows are de-duplicated after paging, a batch may contain fewer unique EVSEs than `perPage`; a short (non-empty) batch does NOT mean end-of-data — only an empty batch does. When a batch is empty the request's `since` is echoed back as `publicationTime` (the cursor does not advance). The `since`/`publicationTime` value is an opaque, full-precision datetime cursor (`YYYY-MM-DD HH:MM:SS.fffffffff`); pass it through verbatim without reformatting or truncating.

Get AFIR EVSE statuses changed since a cursor › query Parameters

country
​string · enum · required

ISO 3166-1 alpha-2 country code

Enum values:
DK
BE
since
​string | null

Seeds a fresh window from a wall-clock start time (e.g. one hour ago). Omit for a full snapshot. Full-precision datetime string — forwarded verbatim. To continue an existing traversal use cursor instead; since and cursor are mutually exclusive.

Example: 2026-06-28 01:01:51.151000000
cursor
​string | null

Opaque continuation token — pass back the previous response's cursor to fetch the next page, and keep going while hasMore is true. Treat it as opaque: do not parse, construct or modify it. Mutually exclusive with since.

perPage
​integer | null · int32

Maximum number of EVSE statuses per page (max 1000)

Default: 100

Get AFIR EVSE statuses changed since a cursor › Responses

Batch of AFIR EVSE statuses changed since the cursor

DATEX II EnergyInfrastructureStatusPublication — a batch of EVSE statuses that changed since a cursor
lang
​string · required

ISO 639-1 language code

Example: en
publicationTime
​string · required

ISO 8601 timestamp of when this publication was generated.

Example: 2026-06-28 01:01:51.151000000
cursor
​string · required

Opaque continuation token. Pass it back as the cursor query param to fetch the next page, and keep going while hasMore is true. Treat it as opaque — do not parse, construct or modify it. On an empty batch it still points at the current position, so you can resume polling from here.

hasMore
​boolean · required

True while more pages remain; false once you have caught up. Keep paging (cursor = this response's cursor) while true. Once false, hold the cursor and poll periodically — new changes surface past it.

Example: false
​object · required

Publisher identification

​DatexIIElectricChargingPointStatus[] · required

EVSE statuses in this page, at most perPage entries (one row per EVSE). Keep paging with the returned cursor while hasMore is true.


Get EVSE dynamic status

GET
https://public-api.monta.com
/api/v1/afir/charge-points/{evseId}/status

Returns the current availability status and ad-hoc price for a single EVSE.

Get EVSE dynamic status › path Parameters

evseId
​string · required

OCPI EVSE identifier (e.g. DKMONE100001)

Get EVSE dynamic status › Responses

EVSE dynamic status

DATEX II EnergyInfrastructureStatusPublication — dynamic EVSE status
lang
​string · required

ISO 639-1 language code

Example: en
publicationTime
​string · required

ISO 8601 timestamp when this publication was generated

​object · required

Publisher identification

​object · required

EVSE status data