Skip to content

Exolink API (1.0.0)

Download OpenAPI description
Overview
Exolink Support
Languages
Servers
Mock server
https://guides.exolink.com/_mock/apis/exolink_api
https://api.exolink.cloud

Public

Public endpoints

Operations

Auth

Authentication and authorization endpoints

Operations

User

User management endpoints

Operations

Product

Product and pricing endpoints

Operations

Static

Static configuration endpoints

Tenant

Tenant management endpoints

Operations

CPMS

CPMS management endpoints

Operations

Charger

Charger management endpoints

Operations

List Chargers

Request

Return the list of chargers for the given tenant

Security
bearerToken
Path
tenantstringrequired
curl -i -X GET \
  'https://guides.exolink.com/_mock/apis/exolink_api/tenant/{tenant}/charger' \
  -H 'Authorization: Bearer <YOUR_TOKEN_HERE>'

Responses

List of chargers

Bodyapplication/jsonArray [
idinteger

Unique identifier for the charger

Example: 1
tenantIdinteger

ID of the tenant that owns this charger

Example: 1
profileIdinteger

ID of the configuration profile associated with this charger

Example: 1
displayNamestring

User-friendly name for the charger

Example: "My Charger"
provisionedboolean

Indicates whether the charger has been provisioned and configured

Default false
Example: false
identitystring

Unique identity string used for OCPP communication

Example: "TEST"
chargeBoxSerialNumberstring

Serial number of the charge box hardware

Example: 12345
chargePointSerialNumberstring

Serial number of the charge point

Example: 12345
meterSerialNumberstring

Serial number of the integrated energy meter

chargePointModelstring

Model identifier of the charge point

Example: "KC-P30-EC2404B2-E00"
chargePointVendorstring

Manufacturer or vendor of the charge point

Example: "Keba AG"
firmwareVersionstring

Current firmware version running on the charger

Example: "1.0.0"
iccidstring

Integrated Circuit Card Identifier for the SIM card (if applicable)

imsistring

International Mobile Subscriber Identity for cellular connectivity (if applicable)

meterTypestring

Type or model of the energy meter

statusany

Current operational status of the charger

Enum"BLOCKED""NONE"
createdAtstring

Timestamp when the charger record was created

Example: "2025-10-15T15:19:50.834Z"
updatedAtstring

Timestamp when the charger record was last updated

Example: "2025-10-15T15:19:50.834Z"
deletedAtstring

Timestamp when the charger record was soft-deleted (null if active)

Example: "2025-10-15T15:19:50.834Z"
profileNamestring

Name of the configuration profile associated with this charger

Example: "Loadtest Profile"
chargerConnectedboolean

Indicates whether the charger is currently connected to the platform

cpmsConnectedboolean

Indicates whether the charger is currently connected to the CPMS backend

cpmsNamestring

Name of the CPMS backend this charger is connected to

Example: "MyCPMS"
cpmsUrlstring

WebSocket URL of the CPMS backend this charger is connected to

Example: "wss://cpms.exolink.com"
]
Response
application/json
{ "$ref": "#/components/examples/ChargerList" }

Create Charger

Request

Create a new charger

Security
bearerToken
Path
tenantstringrequired
Bodyapplication/jsonrequired
profileIdintegerrequired

Configuration profile ID

displayNamestringrequired

Charger display name

identitystringrequired

Unique identity for OCPP communication

provisionedboolean

Whether charger is pre-provisioned

Default false
chargeBoxSerialNumberstring

Charge box serial number

chargePointSerialNumberstring

Charge point serial number

meterSerialNumberstring

Meter serial number

chargePointModelstringrequired

Charge point model

chargePointVendorstringrequired

Charge point vendor

firmwareVersionstring

Firmware version

iccidstring

SIM card ICCID

imsistring

SIM card IMSI

meterTypestring

Meter type

curl -i -X POST \
  'https://guides.exolink.com/_mock/apis/exolink_api/tenant/{tenant}/charger' \
  -H 'Authorization: Bearer <YOUR_TOKEN_HERE>' \
  -H 'Content-Type: application/json' \
  -d '{
    "profileId": 0,
    "displayName": "string",
    "identity": "string",
    "provisioned": false,
    "chargeBoxSerialNumber": "string",
    "chargePointSerialNumber": "string",
    "meterSerialNumber": "string",
    "chargePointModel": "string",
    "chargePointVendor": "string",
    "firmwareVersion": "string",
    "iccid": "string",
    "imsi": "string",
    "meterType": "string"
  }'

Responses

Charger created successfully

Bodyapplication/json
idinteger

Unique identifier for the charger

Example: 1
tenantIdinteger

ID of the tenant that owns this charger

Example: 1
profileIdinteger

ID of the configuration profile associated with this charger

Example: 1
displayNamestring

User-friendly name for the charger

Example: "My Charger"
provisionedboolean

Indicates whether the charger has been provisioned and configured

Default false
Example: false
identitystring

Unique identity string used for OCPP communication

Example: "TEST"
chargeBoxSerialNumberstring

Serial number of the charge box hardware

Example: 12345
chargePointSerialNumberstring

Serial number of the charge point

Example: 12345
meterSerialNumberstring

Serial number of the integrated energy meter

chargePointModelstring

Model identifier of the charge point

Example: "KC-P30-EC2404B2-E00"
chargePointVendorstring

Manufacturer or vendor of the charge point

Example: "Keba AG"
firmwareVersionstring

Current firmware version running on the charger

Example: "1.0.0"
iccidstring

Integrated Circuit Card Identifier for the SIM card (if applicable)

imsistring

International Mobile Subscriber Identity for cellular connectivity (if applicable)

meterTypestring

Type or model of the energy meter

statusany

Current operational status of the charger

Enum"BLOCKED""NONE"
createdAtstring

Timestamp when the charger record was created

Example: "2025-10-15T15:19:50.834Z"
updatedAtstring

Timestamp when the charger record was last updated

Example: "2025-10-15T15:19:50.834Z"
deletedAtstring

Timestamp when the charger record was soft-deleted (null if active)

Example: "2025-10-15T15:19:50.834Z"
profileNamestring

Name of the configuration profile associated with this charger

Example: "Loadtest Profile"
chargerConnectedboolean

Indicates whether the charger is currently connected to the platform

cpmsConnectedboolean

Indicates whether the charger is currently connected to the CPMS backend

cpmsNamestring

Name of the CPMS backend this charger is connected to

Example: "MyCPMS"
cpmsUrlstring

WebSocket URL of the CPMS backend this charger is connected to

Example: "wss://cpms.exolink.com"
Response
application/json
{ "id": 1, "tenantId": 1, "profileId": 1, "displayName": "My Charger", "provisioned": false, "identity": "TEST", "chargeBoxSerialNumber": 12345, "chargePointSerialNumber": 12345, "meterSerialNumber": "string", "chargePointModel": "KC-P30-EC2404B2-E00", "chargePointVendor": "Keba AG", "firmwareVersion": "1.0.0", "iccid": "string", "imsi": "string", "meterType": "string", "status": "BLOCKED", "createdAt": "2025-10-15T15:19:50.834Z", "updatedAt": "2025-10-15T15:19:50.834Z", "deletedAt": "2025-10-15T15:19:50.834Z", "profileName": "Loadtest Profile", "chargerConnected": true, "cpmsConnected": true, "cpmsName": "MyCPMS", "cpmsUrl": "wss://cpms.exolink.com" }

Batch Update Chargers

Request

Update multiple chargers at once

Security
bearerToken
Path
tenantstringrequired
Bodyapplication/jsonrequired
One of:
Array [
idinteger
displayNamestring
]
curl -i -X PUT \
  'https://guides.exolink.com/_mock/apis/exolink_api/tenant/{tenant}/charger' \
  -H 'Authorization: Bearer <YOUR_TOKEN_HERE>' \
  -H 'Content-Type: application/json' \
  -d '{
    "chargerIds": [
      0
    ],
    "displayName": "string"
  }'

Responses

Chargers updated successfully

Get Charger

Request

Get details of a specific charger

Security
bearerToken
Path
tenantstringrequired
chargerIdintegerrequired
curl -i -X GET \
  'https://guides.exolink.com/_mock/apis/exolink_api/tenant/{tenant}/charger/{chargerId}' \
  -H 'Authorization: Bearer <YOUR_TOKEN_HERE>'

Responses

Charger details

Bodyapplication/json
idinteger

Unique identifier for the charger

Example: 1
tenantIdinteger

ID of the tenant that owns this charger

Example: 1
profileIdinteger

ID of the configuration profile associated with this charger

Example: 1
displayNamestring

User-friendly name for the charger

Example: "My Charger"
provisionedboolean

Indicates whether the charger has been provisioned and configured

Default false
Example: false
identitystring

Unique identity string used for OCPP communication

Example: "TEST"
chargeBoxSerialNumberstring

Serial number of the charge box hardware

Example: 12345
chargePointSerialNumberstring

Serial number of the charge point

Example: 12345
meterSerialNumberstring

Serial number of the integrated energy meter

chargePointModelstring

Model identifier of the charge point

Example: "KC-P30-EC2404B2-E00"
chargePointVendorstring

Manufacturer or vendor of the charge point

Example: "Keba AG"
firmwareVersionstring

Current firmware version running on the charger

Example: "1.0.0"
iccidstring

Integrated Circuit Card Identifier for the SIM card (if applicable)

imsistring

International Mobile Subscriber Identity for cellular connectivity (if applicable)

meterTypestring

Type or model of the energy meter

statusany

Current operational status of the charger

Enum"BLOCKED""NONE"
createdAtstring

Timestamp when the charger record was created

Example: "2025-10-15T15:19:50.834Z"
updatedAtstring

Timestamp when the charger record was last updated

Example: "2025-10-15T15:19:50.834Z"
deletedAtstring

Timestamp when the charger record was soft-deleted (null if active)

Example: "2025-10-15T15:19:50.834Z"
profileNamestring

Name of the configuration profile associated with this charger

Example: "Loadtest Profile"
chargerConnectedboolean

Indicates whether the charger is currently connected to the platform

cpmsConnectedboolean

Indicates whether the charger is currently connected to the CPMS backend

cpmsNamestring

Name of the CPMS backend this charger is connected to

Example: "MyCPMS"
cpmsUrlstring

WebSocket URL of the CPMS backend this charger is connected to

Example: "wss://cpms.exolink.com"
Response
application/json
{ "id": 1, "tenantId": 1, "profileId": 1, "displayName": "My Charger", "provisioned": false, "identity": "TEST", "chargeBoxSerialNumber": 12345, "chargePointSerialNumber": 12345, "meterSerialNumber": "string", "chargePointModel": "KC-P30-EC2404B2-E00", "chargePointVendor": "Keba AG", "firmwareVersion": "1.0.0", "iccid": "string", "imsi": "string", "meterType": "string", "status": "BLOCKED", "createdAt": "2025-10-15T15:19:50.834Z", "updatedAt": "2025-10-15T15:19:50.834Z", "deletedAt": "2025-10-15T15:19:50.834Z", "profileName": "Loadtest Profile", "chargerConnected": true, "cpmsConnected": true, "cpmsName": "MyCPMS", "cpmsUrl": "wss://cpms.exolink.com" }

Update Charger

Request

Update charger information

Security
bearerToken
Path
tenantstringrequired
chargerIdintegerrequired
Bodyapplication/jsonrequired
displayNamestring

Charger display name

curl -i -X PUT \
  'https://guides.exolink.com/_mock/apis/exolink_api/tenant/{tenant}/charger/{chargerId}' \
  -H 'Authorization: Bearer <YOUR_TOKEN_HERE>' \
  -H 'Content-Type: application/json' \
  -d '{
    "displayName": "string"
  }'

Responses

Charger updated successfully

Delete Charger

Request

Delete a charger

Security
bearerToken
Path
tenantstringrequired
chargerIdintegerrequired
curl -i -X DELETE \
  'https://guides.exolink.com/_mock/apis/exolink_api/tenant/{tenant}/charger/{chargerId}' \
  -H 'Authorization: Bearer <YOUR_TOKEN_HERE>'

Responses

Charger deleted successfully

Send Charger Action

Request

Send action command to charger

Security
bearerToken
Path
tenantstringrequired
chargerIdintegerrequired
Bodyapplication/jsonrequired
actionstringrequired

Action command

dataobject

Action data

curl -i -X PATCH \
  'https://guides.exolink.com/_mock/apis/exolink_api/tenant/{tenant}/charger/{chargerId}' \
  -H 'Authorization: Bearer <YOUR_TOKEN_HERE>' \
  -H 'Content-Type: application/json' \
  -d '{
    "action": "string",
    "data": {}
  }'

Responses

Action sent successfully

Get Charger Status

Request

Get real-time status of a charger

Security
bearerToken
Path
tenantstringrequired
chargerIdintegerrequired
curl -i -X GET \
  'https://guides.exolink.com/_mock/apis/exolink_api/tenant/{tenant}/charger/{chargerId}/status' \
  -H 'Authorization: Bearer <YOUR_TOKEN_HERE>'

Responses

Charger status

Bodyapplication/json
connectedboolean

Whether charger is currently connected

lastSeenstring(date-time)

Last connection time

statusstring

Current OCPP ChargePointStatus

Enum"Available""Preparing""Charging""SuspendedEVSE""SuspendedEV""Finishing""Reserved""Unavailable""Faulted"
errorCodestring

OCPP error code if status is Faulted

connectorsArray of objects

Status of individual connectors

Response
application/json
{ "connected": true, "lastSeen": "2019-08-24T14:15:22Z", "status": "Available", "errorCode": "string", "connectors": [ {} ] }

Lab

Lab management endpoints

Operations

Logs

Log endpoints

Operations

Domain

Custom Domain endpoints

Operations