Enode

Enode provides a single API to connect and control electric vehicles, chargers, HVAC systems, batteries, solar inverters, and smart meters across more than a thousand hardware brands. The energy-transition API links end-user devices via OAuth, normalizes telemetry, and exposes smart-charging and device-control endpoints for energy apps, VPPs, and home energy management.

7 APIs 0 Features
EnergyElectric VehiclesEV ChargingSmart ChargingEnergy Transition

APIs

Enode Users & Link API

Create and manage end users and generate Link sessions so users can authorize Enode to access their connected energy devices via vendor OAuth.

Enode Vehicles API

List and read connected electric vehicles, retrieve charge state, battery, location, and odometer telemetry, and issue charge start/stop and max-current control actions.

Enode Chargers API

List and read connected EV chargers, monitor charge state and power draw, and control charging including start/stop, max-current, and charge-rate limits.

Enode HVAC API

List and read connected HVAC units such as heat pumps and thermostats, and control set point, mode, schedule following, and permanent hold.

Enode Batteries & Inverters API

List and read connected home batteries and solar inverters, retrieve charge level and production statistics, and set battery operation mode.

Enode Smart Charging API

Configure smart-charging policies, plans, overrides, and status for vehicles, optimizing charging against electricity tariffs, location, and user deadlines.

Enode Webhooks API

Register, list, update, test, and delete webhooks to receive near-real-time device-update and user-event notifications instead of polling.

Collections

Enode API

OPEN

Pricing Plans

Enode Plans Pricing

2 plans

PLANS

Rate Limits

Enode Rate Limits

3 limits

RATE LIMITS

FinOps

Enode Finops

FINOPS

Resources

👥
GitHubOrganization
GitHubOrganization
🔗
LinkedIn
LinkedIn
🔗
Website
Website
🔗
Documentation
Documentation
🔗
Plans
Plans
🔗
RateLimits
RateLimits
🔗
FinOps
FinOps

Sources

Raw ↑
opencollection: 1.0.0
info:
  name: Enode API
  version: '2024-10-01'
request:
  auth:
    type: bearer
    token: '{{bearerToken}}'
items:
- info:
    name: Users & Link
    type: folder
  items:
  - info:
      name: Create a Link session for a user.
      type: http
    http:
      method: POST
      url: https://enode-api.production.enode.io/users/{userId}/link
      body:
        type: json
        data: "{\n  \"vendorType\": \"vehicle\",\n  \"redirectUri\": \"https://example.com/callback\"\n}"
    docs: Create a Link session so the user can authorize vendors via OAuth.
  - info:
      name: Get a user.
      type: http
    http:
      method: GET
      url: https://enode-api.production.enode.io/users/{userId}
    docs: Get a user.
  - info:
      name: List users.
      type: http
    http:
      method: GET
      url: https://enode-api.production.enode.io/users
    docs: List users.
  - info:
      name: Deauthorize and delete a user.
      type: http
    http:
      method: DELETE
      url: https://enode-api.production.enode.io/users/{userId}
    docs: Deauthorize and delete a user.
- info:
    name: Vehicles
    type: folder
  items:
  - info:
      name: List vehicles.
      type: http
    http:
      method: GET
      url: https://enode-api.production.enode.io/vehicles
    docs: List vehicles.
  - info:
      name: Get a vehicle.
      type: http
    http:
      method: GET
      url: https://enode-api.production.enode.io/vehicles/{vehicleId}
    docs: Get a vehicle.
  - info:
      name: Start or stop vehicle charging.
      type: http
    http:
      method: POST
      url: https://enode-api.production.enode.io/vehicles/{vehicleId}/charging
      body:
        type: json
        data: "{\n  \"action\": \"START\"\n}"
    docs: Start or stop vehicle charging.
- info:
    name: Chargers
    type: folder
  items:
  - info:
      name: List chargers.
      type: http
    http:
      method: GET
      url: https://enode-api.production.enode.io/chargers
    docs: List chargers.
  - info:
      name: Get a charger.
      type: http
    http:
      method: GET
      url: https://enode-api.production.enode.io/chargers/{chargerId}
    docs: Get a charger.
  - info:
      name: Start or stop charger charging.
      type: http
    http:
      method: POST
      url: https://enode-api.production.enode.io/chargers/{chargerId}/charging
      body:
        type: json
        data: "{\n  \"action\": \"START\"\n}"
    docs: Start or stop charger charging.
- info:
    name: HVAC
    type: folder
  items:
  - info:
      name: List HVAC units.
      type: http
    http:
      method: GET
      url: https://enode-api.production.enode.io/hvacs
    docs: List HVAC units.
  - info:
      name: Get an HVAC unit.
      type: http
    http:
      method: GET
      url: https://enode-api.production.enode.io/hvacs/{hvacId}
    docs: Get an HVAC unit.
- info:
    name: Batteries & Inverters
    type: folder
  items:
  - info:
      name: List batteries.
      type: http
    http:
      method: GET
      url: https://enode-api.production.enode.io/batteries
    docs: List batteries.
  - info:
      name: Set battery operation mode.
      type: http
    http:
      method: POST
      url: https://enode-api.production.enode.io/batteries/{batteryId}/operation-mode
      body:
        type: json
        data: "{\n  \"action\": \"CHARGE\"\n}"
    docs: Set battery operation mode.
  - info:
      name: List solar inverters.
      type: http
    http:
      method: GET
      url: https://enode-api.production.enode.io/inverters
    docs: List solar inverters.
- info:
    name: Smart Charging
    type: folder
  items:
  - info:
      name: Get a vehicle smart-charging policy.
      type: http
    http:
      method: GET
      url: https://enode-api.production.enode.io/vehicles/{vehicleId}/smart-charging-policy
    docs: Get a vehicle smart-charging policy.
  - info:
      name: Set a vehicle smart-charging policy.
      type: http
    http:
      method: POST
      url: https://enode-api.production.enode.io/vehicles/{vehicleId}/smart-charging-policy
      body:
        type: json
        data: "{\n  \"deadline\": \"07:30\",\n  \"isEnabled\": true,\n  \"minimumChargeLimit\": 20\n}"
    docs: Set a vehicle smart-charging policy.
- info:
    name: Webhooks
    type: folder
  items:
  - info:
      name: List webhooks.
      type: http
    http:
      method: GET
      url: https://enode-api.production.enode.io/webhooks
    docs: List webhooks.
  - info:
      name: Create a webhook.
      type: http
    http:
      method: POST
      url: https://enode-api.production.enode.io/webhooks
      body:
        type: json
        data: "{\n  \"url\": \"https://example.com/enode-webhook\",\n  \"secret\": \"<string>\",\n  \"events\": [\"user:vehicle:updated\"\
          ]\n}"
    docs: Create a webhook.
  - info:
      name: Delete a webhook.
      type: http
    http:
      method: DELETE
      url: https://enode-api.production.enode.io/webhooks/{webhookId}
    docs: Delete a webhook.
  - info:
      name: Send a test event to a webhook.
      type: http
    http:
      method: POST
      url: https://enode-api.production.enode.io/webhooks/{webhookId}/test
    docs: Send a test event to a webhook.