---
title: "Create integrations for home state"
method: POST
path: "/api/v1/teams/{teamId}/home/integrations"
tags: ["Teams"]
---

# Create integrations for home state

`POST /api/v1/teams/{teamId}/home/integrations`

Create a new integration for the home state

## Path parameters

- `teamId` integer, required

## Query parameters

- `montaUserId` integer, nullable

## Request body

- IntegrationsSetupRequest
  - `homeIdentity` string, nullable
  - `feature` 'SOLAR_CHARGE' | 'FUSE_PROTECTION' | 'PEAK_PROTECTION'
  - `chargePointCTClamps` ChargePointCTClamps2
    - `chargePointIdentity` string, required
  - `saveeye` Saveeye2
    - `serialNumber` string, nullable
    - `deviceId` string, nullable
  - `powerfox` Powerfox2
    - `username` string, required
    - `password` string, required
  - `stromleser` Stromleser2
    - `deviceId` string, required
    - `pin` string, required
  - `enode` Enode2
    - `vendorType` 'INVERTER', required
  - `solarInverter` SolarInverter1
    - `deviceId` string, nullable
  - `solarPanel` SolarPanel3
    - `declination` number, double, required
    - `azimuth` number, double, required
    - `peakProductionKw` number, double, required
    - `productionModifier` number, double, required
  - `staticLimit` StaticLimit2
    - `enabled` boolean, required

## Response `200`

Integration setup response

- IntegrationsSetupResponse
  - `chargePointCTClamps` ChargePointCTClamps1
    - `result` 'COULD_NOT_FIND_CHARGE_POINT' | 'BRAND_MODEL_NOT_SUPPORTED' | 'FIRMWARE_NOT_SUPPORTED' | 'COULD_NOT_SET_CONFIGURATION_KEY' | 'NO_DATATRANSFER_RECEIVED' | 'SUCCESS', required
  - `saveeye` Saveeye1
    - `result` 'DEVICE_ID_NOT_FOUND' | 'API_NOT_RESPONDING' | 'SUCCESS' | 'ALREADY_INTEGRATED' | 'OTHER_SAVEEYE_ALREADY_INTEGRATED', required
  - `enode` Enode1
    - `result` 'API_NOT_RESPONDING' | 'VENDOR_TYPE_NOT_SUPPORTED' | 'SUCCESS' | 'ALREADY_INTEGRATED' | 'NO_REGISTRATION_LINK' | 'UNSUCCESSFUL', required
  - `solarPanel` SolarPanel2
    - `result` 'SUCCESS' | 'INVALID_PEAK_PRODUCTION', required
  - `staticLimit` StaticLimit1
    - `result` 'SUCCESS', required
  - `powerfox` Powerfox1
    - `result` 'MAIN_DEVICE_NOT_FOUND' | 'API_NOT_RESPONDING' | 'SUCCESS' | 'ALREADY_INTEGRATED' | 'UNAUTHORIZED_USER', required
  - `stromleser` Stromleser1
    - `result` 'SUCCESS' | 'ALREADY_INTEGRATED' | 'API_NOT_RESPONDING' | 'DEVICE_ID_NOT_FOUND', required
  - `solarInverter` SolarInverter
    - `result` 'API_NOT_RESPONDING' | 'VENDOR_TYPE_NOT_SUPPORTED' | 'SUCCESS' | 'ALREADY_INTEGRATED' | 'NO_REGISTRATION_LINK' | 'UNSUCCESSFUL', required
  - `homeState` HomeState
    - `homeIdentity` string, required
    - `teamId` integer, nullable
    - `operatorId` integer, nullable
    - `chargePoints` Charger[], required
      - `id` integer, required
      - `identity` string, required
      - `connectorId` integer, nullable
      - `name` string, required
      - `teamId` integer, required
      - `ctClamps` boolean, required
      - `solarCharge` boolean, required
      - `modelImageUrl` string, nullable
      - `brandName` string, nullable
      - `modelName` string, nullable
      - `configuredNumberOfPhases` integer, nullable
      - `phaseMode` 'AUTO' | 'ONE' | 'THREE' | 'PHASE_SWITCHING', required
      - `phaseSwitchMinIntervalSeconds` integer, required
      - `meterValues` EnergyMeterValues
        - `measuredAt` string, date-time, 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
      - `lastCurrentLimitA` number, double, nullable
      - `lastCurrentLimitAt` string, date-time, nullable
      - `lastChargingNumberOfPhases` integer, nullable
      - `charge` ChargerCharge
        - `isControlled` boolean, required
        - `isSolarCharge` boolean, required
        - `chargeId` integer, nullable
        - `externalChargeId` string, nullable
        - `user` ChargerChargeUser
          - `id` integer, required
          - `identifier` string, required
          - `language` string, nullable
          - `languages` string[], nullable
        - `fuseProtectionLimitingCounter` integer, nullable
        - `chargingPowerOverrideRange` ChargerChargingPowerOverrideRange
          - `minKw` number, double, required
          - `maxKw` number, double, nullable
    - `smartMeterValues` EnergyMeterValues
      - `measuredAt` string, date-time, 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
    - `residualValues` EnergyMeterValues
      - `measuredAt` string, date-time, 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
    - `solarForecast` SolarForecast
      - `items` ForecastItem[], required
        - `timestamp` string, date-time, required
        - `forecastPowerKw` number, double, required
        - `isPowerEnoughForCharging` boolean, required
      - `forecastFetchedAt` string, date-time, nullable
    - `solarChargingState` SolarChargingState
      - `surplusPowerKw` number, double, nullable
      - `solarChargeOperationalState` 'ENABLED' | 'DISABLED' | 'NOT_ENOUGH_SURPLUS' | 'NULL_DATA' | 'OUTDATED_DATA', required
      - `lastDataAt` string, date-time, nullable
    - `fuseProtectionState` FuseProtectionState
      - `fuseProtectionOperationalState` 'DISABLED' | 'ACTIVATED' | 'ACTIVE_LIMITING' | 'NULL_DATA' | 'OUTDATED_DATA', required
      - `lastDataAt` string, date-time, nullable
    - `peakProtectionState` PeakProtectionState
      - `peakProtectionOperationalState` 'DISABLED' | 'ACTIVATED' | 'ACTIVE_LIMITING' | 'NULL_DATA' | 'OUTDATED_DATA', required
      - `currentTotalPowerKw` number, double, nullable
      - `lastDataAt` string, date-time, nullable
    - `batteryProtectionState` BatteryProtectionState
      - `zeroUntil` string, date-time, nullable
      - `lockedUntil` string, date-time, nullable
    - `integrations` Integrations, required
      - `chargePointCTClamps` ChargePointCTClamps
        - `chargePointIdentity` string, required
        - `meterValues` EnergyMeterValues
          - `measuredAt` string, date-time, 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
      - `saveeye` Saveeye
        - `deviceId` string, required
        - `meterValues` EnergyMeterValues
          - `measuredAt` string, date-time, 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
      - `solarPanels` SolarPanel1[], nullable
        - `integrationUuid` string, required
        - `longitude` number, double, required
        - `latitude` number, double, required
        - `declination` number, double, required
        - `azimuth` number, double, required
        - `peakProductionKw` number, double, required
        - `productionModifier` number, double, required
        - `meterValues` EnergyMeterValues
          - `measuredAt` string, date-time, 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
      - `enode` Enode
        - `vendorType` 'INVERTER', required
        - `deviceId` string, nullable
        - `vendorName` string, nullable
        - `meterValues` EnergyMeterValues
          - `measuredAt` string, date-time, 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
      - `powerfox` Powerfox
        - `deviceId` string, required
        - `meterValues` EnergyMeterValues
          - `measuredAt` string, date-time, 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
      - `staticLimit` StaticLimit
        - `enabled` boolean, required
      - `stromleser` Stromleser
        - `deviceId` string, required
        - `meterValues` EnergyMeterValues
          - `measuredAt` string, date-time, 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
      - `saveeyeMqtt` SaveeyeMqtt
        - `deviceId` string, required
        - `meterValues` EnergyMeterValues
          - `measuredAt` string, date-time, 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
    - `settings` Settings, required
      - `circuitSettings` CircuitSettings, required
        - `voltageLevelVLN` number, double, required
        - `numPhases` integer, required
        - `continuousConsumptionW` number, double, nullable
      - `solarChargingSettings` SolarChargingSettings, required
        - `solarChargingEnabled` boolean, required
        - `minSurplusCurrentForChargingA` number, double, required
        - `solarChargingSource` 'FORECAST' | 'SAVEEYE' | 'CT_CLAMPS' | 'SMART_METER' | 'ENODE' | 'POWERFOX'
        - `batteryProtectionEnabled` boolean, required
        - `solarChargeByDefault` boolean, required
        - `solarChargeGracePeriodSeconds` integer, required
        - `batteryProtectionLockTimeMinutes` integer, required
      - `fuseProtectionSettings` FuseProtectionSettings, required
        - `fuseProtectionEnabled` boolean, required
        - `fuseLimitCurrentA` number, double, required
        - `fuseSafetyMarginCurrentA` number, double, required
        - `fuseProtectionNotificationEnabled` boolean, required
        - `dataSource` 'CT_CLAMPS' | 'SAVEEYE' | 'ENODE' | 'POWERFOX'
        - `changedAt` string, date-time, nullable
      - `peakProtectionSettings` PeakProtectionSettings, required
        - `peakProtectionEnabled` boolean, required
        - `peakLimitPowerKw` number, double, required
        - `peakSafetyMarginKw` number, double, required
        - `peakProtectionNotificationEnabled` boolean, required
        - `dataSource` 'CT_CLAMPS' | 'SAVEEYE' | 'ENODE' | 'POWERFOX'
        - `changedAt` 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

---

[API](https://skmtc.net/monta/apis/monta-partner-api.md) · [All operations](https://skmtc.net/monta/apis/monta-partner-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/monta/monta-partner-api/revisions/517e18f11015/schema)
