---
title: "Attach an EVSE to a node"
method: POST
path: "/api/v1/energy/sites/{siteId}/nodes/{nodeId}/evses"
tags: ["Energy Sites"]
---

# Attach an EVSE to a node

`POST /api/v1/energy/sites/{siteId}/nodes/{nodeId}/evses`

## Request

- Base URL: `https://partner-api.monta.com`
- URL: `https://partner-api.monta.com/api/v1/energy/sites/{siteId}/nodes/{nodeId}/evses`
- Auth: HTTP bearer

Required scope: `energy:write`

🚧 **BETA** — This endpoint is currently in the BETA phase and its response structure may change in the future.

📘 **Feature flag required** — This endpoint is not available by default. It must be explicitly enabled for your operator account upon request. Please contact your Monta Business Partner to request access to this feature.

## Path parameters

- `siteId` integer, required
- `nodeId` integer, required

## Request body

- AttachEvseRequest
  - `chargingStationIdentity` string, required
  - `connectorId` integer, required
  - `phaseSetup` string, required
  - `minCurrentA` number, double, nullable
  - `maxCurrentA` number, double, nullable
  - `maxPowerW` number, double, nullable
  - `minPowerW` number, double, nullable
  - `zeroAllowed` boolean, required
  - `loadManagementDisabled` boolean, required

## Response `201`

attachEvse 201 response

- Evse
  - `chargingStationIdentity` string, required
  - `connectorId` integer, required
  - `phaseSetup` string, required
  - `minPowerW` number, double, nullable
  - `maxPowerW` number, double, nullable
  - `minCurrentA` number, double, nullable
  - `maxCurrentA` number, double, nullable
  - `charge` Charge1
    - `chargeId` integer, nullable
    - `ocppChargeId` string, required
    - `startTime` string, date-time, required
    - `meterValues` MeterValues
      - `measuredAt` string, required
      - `currentL1A` number, double, nullable
      - `currentL2A` number, double, nullable
      - `currentL3A` number, double, nullable
      - `voltageL1V` number, double, nullable
      - `voltageL2V` number, double, nullable
      - `voltageL3V` number, double, nullable
      - `powerL1W` number, double, nullable
      - `powerL2W` number, double, nullable
      - `powerL3W` number, double, nullable
      - `powerW` number, double, nullable
      - `kwh` number, double, nullable
      - `soc` number, double, nullable
      - `currentDcA` number, double, nullable
      - `voltageDcV` number, double, nullable
      - `powerDcW` number, double, nullable
    - `schedule` ChargeScheduleItem[], nullable
      - `start` string, required
      - `end` string, required
      - `currentA` number, double, required
      - `numberOfPhases` integer, required
      - `powerW` number, double, required
    - `chargeIntentInstance` ChargeIntentInstance
      - `intentSource` IntentSource, required
        - `type` string, required
        - `idTag` string, nullable
      - `type` string, required
      - `departureTime` string, date-time, nullable
      - `target` Target, required
        - `soc` number, double, nullable
        - `kwh` number, double, nullable
      - `priority` integer, required
    - `startingWh` integer, nullable
    - `startingSoc` number, double, nullable
    - `chargedWh` integer, nullable
    - `remainingKwh` number, double, nullable
    - `soc` number, double, nullable
    - `kwh` number, double, nullable
    - `vehicle` Vehicle
      - `vehicleId` integer, nullable
      - `vehicleIdTag` string, required
      - `batteryCapacityKwh` number, double, nullable
      - `chargeIntent` ChargeIntent, required
        - `type` 'PRICE_OPTIMIZE' | 'CHARGE_NOW', required
        - `departureTime` string, partial-time, nullable
        - `target` Target
          - `soc` number, double, nullable
          - `kwh` number, double, nullable
        - `scheduleOverrides` ScheduleOverride[], required
          - `id` string, nullable
          - `startDay` 'MONDAY' | 'TUESDAY' | 'WEDNESDAY' | 'THURSDAY' | 'FRIDAY' | 'SATURDAY' | 'SUNDAY', required
          - `startTime` string, partial-time, required
          - `endDay` 'MONDAY' | 'TUESDAY' | 'WEDNESDAY' | 'THURSDAY' | 'FRIDAY' | 'SATURDAY' | 'SUNDAY', required
          - `endTime` string, partial-time, required
          - `type` 'PRICE_OPTIMIZE' | 'CHARGE_NOW', required
          - `departureDay` 'MONDAY' | 'TUESDAY' | 'WEDNESDAY' | 'THURSDAY' | 'FRIDAY' | 'SATURDAY' | 'SUNDAY'
          - `departureTime` string, partial-time, nullable
          - `target` Target
            - `soc` number, double, nullable
            - `kwh` number, double, nullable
        - `priority` integer, nullable
      - `integrationCapacityKwh` number, double, nullable
      - `maxKwAc` number, double, nullable
      - `maxKwDc` number, double, nullable
    - `maxObservedPowerW` number, double, nullable
    - `lastAllocatedCurrent` number, double, nullable
    - `lastAllocatedPowerW` number, double, nullable
    - `lastAllocatedAt` string, date-time, nullable
    - `estimatedEndTime` string, date-time, nullable
    - `ocppStatus` string, nullable
    - `ocppStatusAt` string, date-time, nullable
    - `batteryCapacityKwh` number, double, nullable
    - `effectiveTargetKwh` number, double, nullable
    - `assumedVehicleMaxPowerW` number, double, nullable
    - `topUpDeltaW` number, double, nullable
  - `zeroAllowed` boolean, required
  - `loadManagementDisabled` boolean, required
  - `phpChargerId` integer, nullable
  - `rampUpProtectionState` string, nullable
  - `externalPowerLimitW` number, double, nullable
  - `externalPowerLimitExpiresAt` string, date-time, nullable
  - `chargeIntentTemplate` ChargeIntent
    - `type` 'PRICE_OPTIMIZE' | 'CHARGE_NOW', required
    - `departureTime` string, partial-time, nullable
    - `target` Target
      - `soc` number, double, nullable
      - `kwh` number, double, nullable
    - `scheduleOverrides` ScheduleOverride[], required
      - `id` string, nullable
      - `startDay` 'MONDAY' | 'TUESDAY' | 'WEDNESDAY' | 'THURSDAY' | 'FRIDAY' | 'SATURDAY' | 'SUNDAY', required
      - `startTime` string, partial-time, required
      - `endDay` 'MONDAY' | 'TUESDAY' | 'WEDNESDAY' | 'THURSDAY' | 'FRIDAY' | 'SATURDAY' | 'SUNDAY', required
      - `endTime` string, partial-time, required
      - `type` 'PRICE_OPTIMIZE' | 'CHARGE_NOW', required
      - `departureDay` 'MONDAY' | 'TUESDAY' | 'WEDNESDAY' | 'THURSDAY' | 'FRIDAY' | 'SATURDAY' | 'SUNDAY'
      - `departureTime` string, partial-time, nullable
      - `target` Target
        - `soc` number, double, nullable
        - `kwh` number, double, nullable
    - `priority` integer, nullable
  - `ocppStatus` string, nullable
  - `ocppStatusAt` string, date-time, nullable

## Other responses

- `400`: The request is invalid
- `401`: Consumer with provided credentials was not found
- `403`: Operator doesn't have access to resource
- `404`: Entity with the provided id was not found

## Changes

- **2026-11-03** `0ca400461c52`: 6 breaking, 15 info
  - the response property `charge/allOf[#/components/schemas/Charge_1]/vehicle/allOf[#/components/schemas/Vehicle]/batteryCapacityKwh` became nullable for the status `201`
  - the response property `charge/allOf[#/components/schemas/Charge_1]/vehicle/allOf[#/components/schemas/Vehicle]/vehicleId` became nullable for the status `201`
  - the response property `charge/allOf[#/components/schemas/Charge_1]/vehicle/allOf[#/components/schemas/Vehicle]/batteryCapacityKwh` became optional for the status `201`
  - the response property `charge/allOf[#/components/schemas/Charge_1]/vehicle/allOf[#/components/schemas/Vehicle]/vehicleId` became optional for the status `201`
  - …17 more

[Operation history](https://skmtc.dev/monta/apis/monta-partner-api/changes/api/v1/energy/sites/:siteId/nodes/:nodeId/evses/post.md)

---

[API](https://skmtc.dev/monta/apis/monta-partner-api.md) - [All operations](https://skmtc.dev/monta/apis/monta-partner-api/llms.txt) - [OpenAPI document](https://skmtc.dev/monta/apis/monta-partner-api/revisions/0ca400461c52?raw)
