Download OpenAPI specification:
API documentation for the frontend application.
Allows users to log in. The optional Realm field targets the user pool — omit it (or pass "frontend") for end-user app accounts. Pass "dashboard" to authenticate as a dashboard operator; the request returns 403 if the account lacks ROLE_ADMIN.
| Email required | string |
| Password required | string |
| Realm | string Default: "frontend" Enum: "frontend" "dashboard" Target user pool. Defaults to "frontend". Pass "dashboard" for operator login. |
{- "Email": "user@example.com",
- "Password": "password123"
}Registers a new user. The optional Realm field targets the user pool — omit it (or pass "frontend") to create an end-user account with ROLE_USER. Pass "dashboard" to create a dashboard operator account; the account is automatically assigned ROLE_ADMIN.
| FirstName | string |
| LastName | string |
| Email required | string |
| Password required | string |
| Phone | string |
| Realm | string Default: "frontend" Enum: "frontend" "dashboard" Target user pool. Defaults to "frontend". Pass "dashboard" to register a dashboard operator (auto-assigns ROLE_ADMIN). |
{- "FirstName": "John",
- "LastName": "Doe",
- "Email": "user@example.com",
- "Password": "password123",
- "Phone": "+1234567890"
}Sends a password-reset token to the provided email address. The optional Realm field scopes the lookup to the correct user pool — defaults to "frontend". Pass "dashboard" to target a dashboard operator account.
| Type required | string Value: "password-reset" |
| Email required | string |
| Realm | string Default: "frontend" Enum: "frontend" "dashboard" Target user pool. Defaults to "frontend". |
{- "Type": "password-reset",
- "Email": "user@example.com"
}[- {
- "ID": "CHARGER001",
- "UUID": "123e4567-e89b-12d3-a456-426614174000",
- "Name": "Main Charger",
- "UserID": "123e4567-e89b-12d3-a456-426614174001",
- "EndpointAddress": "192.168.1.1",
- "ChargePointVendor": "Vendor A",
- "ChargePointModel": "Model X",
- "ProtocolVersion": "OCPP 1.6",
- "FWVersion": "1.0.0",
- "FWUpdateStatus": "Updated"
}
]Retrieves details of a specific charger.
| chargerId required | string |
{- "ID": "CHARGER001",
- "UUID": "123e4567-e89b-12d3-a456-426614174000",
- "Name": "Main Charger",
- "UserID": "123e4567-e89b-12d3-a456-426614174001",
- "EndpointAddress": "192.168.1.1",
- "ChargePointVendor": "Vendor A",
- "ChargePointModel": "Model X",
- "ProtocolVersion": "OCPP 1.6",
- "FWVersion": "1.0.0",
- "FWUpdateStatus": "Updated"
}Retrieves details of a specific connector by charger and connector ID.
| chargerId required | string |
| connectorId required | string |
{- "ChargeBoxID": "CHARGEBOX001",
- "ConnectorID": 1,
- "ConnectorType": "Type1",
- "Status": "Available",
- "CreatedAt": "2023-01-01T12:00:00Z"
}Updates a specific connector.
| chargerId required | string |
| connectorId required | string |
| ChargeBoxID | string |
| ConnectorID | integer |
| ConnectorType | string |
| Status | string |
{- "ChargeBoxID": "CHARGEBOX001",
- "ConnectorID": 1,
- "ConnectorType": "Type2",
- "Status": "Charging"
}Retrieves all sessions for a specific charger and connector.
| chargerId required | string |
| connectorId required | string |
[- {
- "ID": 1,
- "UUID": "123e4567-e89b-12d3-a456-426614174000",
- "UserID": "123e4567-e89b-12d3-a456-426614174001",
- "ChargeBoxID": "CHARGEBOX001",
- "ConnectorID": 1,
- "MeterStart": 100,
- "MeterStop": 150,
- "TimestampStart": "2023-01-01T12:00:00Z",
- "TimestampStop": "2023-01-01T14:00:00Z"
}
]Starts a new session for a specific charger and connector.
| chargerId required | string |
| connectorId required | string |
| AuthCode | string |
| PaymentMethodID | string |
| Credits | number <float> |
| Currency | string |
{- "AuthCode": "ID12345"
}{- "Error": "Connector not ready for RemoteStart"
}Retrieves details of a specific session.
| sessionId required | string |
{- "ID": 1,
- "UUID": "123e4567-e89b-12d3-a456-426614174000",
- "UserID": "123e4567-e89b-12d3-a456-426614174001",
- "ChargeBoxID": "CHARGEBOX001",
- "ConnectorID": 1,
- "MeterStart": 100,
- "MeterStop": 150,
- "TimestampStart": "2023-01-01T12:00:00Z",
- "TimestampStop": "2023-01-01T14:00:00Z"
}Updates information about a specific user.
| userId required | string |
| FirstName | string |
| LastName | string |
string |
{- "FirstName": "John",
- "LastName": "Doe",
- "Email": "john.doe@example.com"
}Adds credit to the authenticated user's account using a two-phase commit. Credits are added to the balance first, then the payment token is committed via the payment adapter (CommitToken). If either step fails the credit is rolled back and the payment token is cancelled through the payment adapter.
| Currency required | string Currency code (e.g., CAD, AMD) |
| Amount required | number <float> |
| PaymentProcessorID required | string Stripe PaymentIntent ID, Arcaipay order ID, or Wevend token ID |
| PaymentProcessor required | string Enum: "Stripe" "Arcaipay" "Wevend" |
{- "Currency": "CAD",
- "Amount": 10,
- "PaymentProcessorID": "pi_123456789",
- "PaymentProcessor": "Stripe"
}{- "Message": "Credit added successfully"
}Retrieves all credit balances for the authenticated user, optionally filtered by currency.
| Currency | string Example: Currency=CAD Currency code to filter by (e.g., CAD) |
[- {
- "CurrencyCode": "CAD",
- "AvailableBalance": 15.59,
- "ReservedBalance": 10.01,
- "CreatedAt": "2019-08-24T14:15:22Z",
- "UpdatedAt": "2019-08-24T14:15:22Z"
}
]Retrieves the credit transaction history for the authenticated user.
[- {
- "ID": "3892eb50-4697-4c72-aadc-32b766bce3c0",
- "UserID": "08aac8e3-775d-4513-8aaa-658f6ba9bbcd",
- "CurrencyCode": "CAD",
- "Amount": 10,
- "TransactionType": "add_credit",
- "ReferenceID": "25c4d93c-5853-4e1c-8397-0685e76ea05b",
- "Description": "Added credit 10.00 CAD",
- "CreatedAt": "2019-08-24T14:15:22Z"
}
]Creates a billing profile for a specific user.
| userId required | string |
| name | string |
| rate_per_kw | number <float> |
| rate_per_minute | number <float> |
| idle_rate_per_minute | number <float> |
| idle_grace_period_min | integer |
| tax_jurisdiction_id | string |
{- "name": "Standard Plan",
- "rate_per_kw": 0.15,
- "rate_per_minute": 0.05,
- "idle_rate_per_minute": 0.1,
- "idle_grace_period_min": 5,
- "tax_jurisdiction_id": "123e4567-e89b-12d3-a456-426614174002"
}Updates a specific billing profile for a user.
| userId required | string |
| profileId required | string |
| id | string |
| name | string |
| rate_per_kw | number <float> |
| rate_per_minute | number <float> |
| idle_rate_per_minute | number <float> |
| idle_grace_period_min | integer |
| tax_jurisdiction_id | string |
{- "id": "123e4567-e89b-12d3-a456-426614174000",
- "name": "Updated Plan",
- "rate_per_kw": 0.2,
- "rate_per_minute": 0.07,
- "idle_rate_per_minute": 0.12,
- "idle_grace_period_min": 10,
- "tax_jurisdiction_id": "123e4567-e89b-12d3-a456-426614174002"
}Creates a new charge session for the authenticated user.
| transaction_id | integer |
| charge_box_id | string |
| connector_id | integer |
| user_id | string |
{- "transaction_id": 1,
- "charge_box_id": "CHARGEBOX001",
- "connector_id": 1,
- "user_id": "123e4567-e89b-12d3-a456-426614174001"
}Updates a specific charge session.
| sessionId required | string |
| id | string |
| transaction_id | integer |
| charge_box_id | string |
| connector_id | integer |
| user_id | string |
{- "id": "123e4567-e89b-12d3-a456-426614174000",
- "transaction_id": 1,
- "charge_box_id": "CHARGEBOX001",
- "connector_id": 1,
- "user_id": "123e4567-e89b-12d3-a456-426614174001"
}Creates a new charging profile.
| ChargeBoxID | string |
| ChargingProfileID | integer |
| StackLevel | integer |
| ChargingProfilePurpose | string |
| ChargingProfileKind | string |
| ChargingSchedule | string |
{- "ChargeBoxID": "CHARGEBOX001",
- "ChargingProfileID": 1,
- "StackLevel": 1,
- "ChargingProfilePurpose": "TxProfile",
- "ChargingProfileKind": "Absolute",
- "ChargingSchedule": "{\"duration\":3600,\"startSchedule\":\"2023-01-01T12:00:00Z\"}"
}Updates a specific charging profile.
| profileId required | string |
| ID | string |
| ChargeBoxID | string |
| StackLevel | integer |
| ChargingProfilePurpose | string |
| ChargingProfileKind | string |
| ChargingSchedule | string |
{- "ID": "123e4567-e89b-12d3-a456-426614174000",
- "ChargeBoxID": "CHARGEBOX001",
- "StackLevel": 2,
- "ChargingProfilePurpose": "TxProfile",
- "ChargingProfileKind": "Relative",
- "ChargingSchedule": "{\"duration\":1800,\"startSchedule\":\"2023-01-01T13:00:00Z\"}"
}Returns the active theme configuration for a given domain. Public endpoint — no authentication required.
| domain required | string Example: domain=app.jplug.io The domain to look up the theme for (e.g. app.jplug.io). |
{- "Domain": "app.jplug.io",
- "Theme": {
- "ID": "3892eb50-4697-4c72-aadc-32b766bce3c0",
- "Name": "string",
- "Description": "string",
- "IsActive": true,
- "Config": {
- "themeKey": "default",
- "language": "en",
- "companyName": "string",
- "companyDetails": [
- "string"
], - "countryCallingCode": "CA +1",
- "supportLink": "string",
- "termsUrl": "string",
- "logoImage": "string",
- "logoImageDark": "string",
- "logoAlt": "string",
- "title": "string",
- "description": "string",
- "favicon": "string",
- "chargerNamePrefix": "string",
- "og": {
- "title": "string",
- "description": "string",
- "image": "string"
}, - "designTokens": {
- "light": {
- "property1": "string",
- "property2": "string"
}, - "dark": {
- "property1": "string",
- "property2": "string"
}
}
}
}
}