Changelog 2026-05-05T11:04:41.774Z
API Changes
GET /systems/list
- added the new optional
queryrequest parameterpage - added the new optional
queryrequest parameterper_page
query request parameter pagequery request parameter per_pagemfaEnabled (media type: application/json)mfaEnabled (media type: application/vnd.gridx.v2+json)GatewayUpdateGatewayUpdateStrictThis change fixes the documentation of the Webhook Callback event payloads to match the actual implementation.
ev/control, ev/create, ev/delete, ev/update and their schemasApplianceEventDatafirmware, parent, gatewayTypeGatewayEventDatagatewayDeviceIDEVChargeSessionFailedEventDatacreatedAt, completedAt, kind (enum: START|STOP)stateEVMeasurementEventDatachargeState (enum: INITIALIZING|CHARGING|COMPLETE|STOPPED|FAULT|NO_POWER|DISCHARGING|""), plugState (enum: PLUGGED|UNPLUGGED|UNKNOWN), isControllablerange, chargeLimit, capacityUserActionEventPayload (was SystemActionEventData)capabilities (enum: chargeState|information|startCharging|stopCharging|location), gatewayID, assetID, systemID, status (enum: OPEN|SOLVED)UserActionResolutionaction (enum: Link|LinkAdditionalAsset)WebhookEventBaseaccountID from required propertiescorrelationID → correlationIdApplianceEventDatasystemID from required properties (still present as optional)SystemActionEventtype enum from [ping] to [system/action]EVEventDataBase and EVStateChangeEventData; their properties are now inlined into each event data schema (EVChargeSessionFailedEventData, EVChargingStartEventData, EVChargingStopEventData, EVMeasurementEventData, EVPluggedEventData, EVUnpluggedEventData)EVChargeSessionEvent → EVChargeStartedEvent + EVChargeStoppedEventEVChargeSessionEventData → EVChargingStartEventData + EVChargingStopEventDataEVPluggedEvent → EVPluggedEvent (state: PLUGGED) + EVUnpluggedEvent (state: UNPLUGGED)SystemActionEventData → UserActionEventPayloadresolution object → new schema UserActionResolutionEVChargeSessionFailureReason as EVChargeSessionFailedEventData.failureReasonWebhookEventRequest)ev/charge-started → EVChargeStartedEvent (was EVChargeSessionEvent)ev/charge-stopped → EVChargeStoppedEvent (was EVChargeSessionEvent)ev/unplugged → EVUnpluggedEvent (was EVPluggedEvent)ALL_CONTROLLABLE_APPLIANCES_OFFLINE enum value to the periods/items/error_code response property for the response status 200ALL_CONTROLLABLE_APPLIANCES_OFFLINE enum value to the status/error_code response property for the response status 200(sha 2d956404)
query request parameter pagequery request parameter per_pageAbstractClusterAbstractClusterStrictAbstractCommissioningTargetAbstractCommissioningTargetStrictAbstractVirtualGridExpansionAssetConnectionStatusAssetHardwareStatusAssetUpdateAssetUpdateStrictBaseAssetBaseEVStationAssetBaseOutputChannelSGReadyBatteryAssetClusterClusterApplianceClusterSetClusterSetStrictCommissioningTargetCustomerAccountCreateCustomerAccountCreateStrictEVAssetEVChargingScheduleUpdateEVChargingScheduleUpdateStrictEVStationAssetExternalControllerAssetFileFileCreateHeatPumpAssetHeaterAssetIODeviceAssetIODeviceAssetInputActionIODeviceAssetInputChannelIODeviceAssetOutputActionIODeviceAssetOutputActionSGReadyIODeviceAssetOutputChannelInverterAssetMeterAssetMoveAccountMoveAccountStrictOutputChannelApplianceOutputChannelApplianceCreateOutputChannelCreateOutputChannelCreateStrictOutputChannelSGReadyOutputChannelSGReadyCreatePolicyDocumentAssignPolicyDocumentAssignStrictPolicyGroupAssignmentPolicyGroupAssignmentStrictPowerLimitScheduleCreatePowerLimitScheduleCreateStrictProductFunctionalityAssignmentProductFunctionalityCreationProductFunctionalityCreationStrictProductOptionCreationProductOptionCreationStrictProductOptionUpdateProductOptionUpdateStrictUserAccountVirtualGridExpansionVirtualGridExpansionCreateVirtualGridExpansionUpdate(sha 633959f7)
query request parameter filterBy from ^(((\w+):(eq|ne|has|incl|excl|lt|le|gt|ge|li|empty|nempty|any|all|bool)\((([\w: .\-\']*)(,[\w: .\-\']+)*))\))(;((\w+):(eq|ne|has|incl|excl|lt|le|gt|ge|li|empty|nempty|any|all|bool)\((([\w: .\-\']*)(,[\w: .\-\']+)*)\)))*$ to ^(((\w+):(eq|ne|has|incl|excl|lt|le|gt|ge|li|empty|nempty|any|only|all|bool)\((([\w: .\-\']*)(,[\w: .\-\']+)*))\))(;((\w+):(eq|ne|has|incl|excl|lt|le|gt|ge|li|empty|nempty|any|only|all|bool)\((([\w: .\-\']*)(,[\w: .\-\']+)*)\)))*$ 422items/oneOf[subschema #1: Inverter]/gatewayType to the response with the 200 statusitems/oneOf[subschema #2: Meter]/gatewayType to the response with the 200 statusitems/oneOf[subschema #3: Heat Pump]/gatewayType to the response with the 200 statusitems/oneOf[subschema #4: EV Charging Station]/gatewayType to the response with the 200 statusitems/oneOf[subschema #5: IO Device]/gatewayType to the response with the 200 statusitems/oneOf[subschema #6: Heater]/gatewayType to the response with the 200 statusitems/oneOf[subschema #7: External controller]/gatewayType to the response with the 200 statusitems/oneOf[subschema #8: Electric Vehicle]/gatewayType to the response with the 200 statusoneOf[subschema #1: Inverter]/gatewayType to the response with the 200 statusoneOf[subschema #2: Meter]/gatewayType to the response with the 200 statusoneOf[subschema #3: Heat Pump]/gatewayType to the response with the 200 statusoneOf[subschema #4: EV Charging Station]/gatewayType to the response with the 200 statusoneOf[subschema #5: IO Device]/gatewayType to the response with the 200 statusoneOf[subschema #6: Heater]/gatewayType to the response with the 200 statusoneOf[subschema #7: External controller]/gatewayType to the response with the 200 statusoneOf[subschema #8: Electric Vehicle]/gatewayType to the response with the 200 statusoneOf[subschema #1: Inverter]/gatewayType to the response with the 200 statusoneOf[subschema #2: Meter]/gatewayType to the response with the 200 statusoneOf[subschema #3: Heat Pump]/gatewayType to the response with the 200 statusoneOf[subschema #4: EV Charging Station]/gatewayType to the response with the 200 statusoneOf[subschema #5: IO Device]/gatewayType to the response with the 200 statusoneOf[subschema #6: Heater]/gatewayType to the response with the 200 statusoneOf[subschema #7: External controller]/gatewayType to the response with the 200 statusoneOf[subschema #8: Electric Vehicle]/gatewayType to the response with the 200 statusitems/appliances/items/oneOf[subschema #1: Inverter]/gatewayType to the response with the 200 statusitems/appliances/items/oneOf[subschema #2: Meter]/gatewayType to the response with the 200 statusitems/appliances/items/oneOf[subschema #3: Heat Pump]/gatewayType to the response with the 200 statusitems/appliances/items/oneOf[subschema #4: EV Charging Station]/gatewayType to the response with the 200 statusitems/appliances/items/oneOf[subschema #5: IO Device]/gatewayType to the response with the 200 statusitems/appliances/items/oneOf[subschema #6: Heater]/gatewayType to the response with the 200 statusitems/appliances/items/oneOf[subschema #7: External controller]/gatewayType to the response with the 200 statusitems/appliances/items/oneOf[subschema #8: Electric Vehicle]/gatewayType to the response with the 200 statusquery request parameter filterBy from ^(((\w+):(eq|ne|has|incl|excl|lt|le|gt|ge|li|empty|nempty|any|all|bool)\((([\w: .\-\']*)(,[\w: .\-\']+)*))\))(;((\w+):(eq|ne|has|incl|excl|lt|le|gt|ge|li|empty|nempty|any|all|bool)\((([\w: .\-\']*)(,[\w: .\-\']+)*)\)))*$ to ^(((\w+):(eq|ne|has|incl|excl|lt|le|gt|ge|li|empty|nempty|any|only|all|bool)\((([\w: .\-\']*)(,[\w: .\-\']+)*))\))(;((\w+):(eq|ne|has|incl|excl|lt|le|gt|ge|li|empty|nempty|any|only|all|bool)\((([\w: .\-\']*)(,[\w: .\-\']+)*)\)))*$ query request parameter filterBy from ^(((\w+):(eq|ne|has|incl|excl|lt|le|gt|ge|li|empty|nempty|any|all|bool)\((([\w: .\-\']*)(,[\w: .\-\']+)*))\))(;((\w+):(eq|ne|has|incl|excl|lt|le|gt|ge|li|empty|nempty|any|all|bool)\((([\w: .\-\']*)(,[\w: .\-\']+)*)\)))*$ to ^(((\w+):(eq|ne|has|incl|excl|lt|le|gt|ge|li|empty|nempty|any|only|all|bool)\((([\w: .\-\']*)(,[\w: .\-\']+)*))\))(;((\w+):(eq|ne|has|incl|excl|lt|le|gt|ge|li|empty|nempty|any|only|all|bool)\((([\w: .\-\']*)(,[\w: .\-\']+)*)\)))*$ BATTERY_OEM_ERROR enum value to the periods/items/warnings/items/ response property for the response status 200INVALID_DEPARTURE_TIME enum value to the periods/items/warnings/items/ response property for the response status 200BATTERY_OEM_ERROR enum value to the status/warnings/items/ response property for the response status 200INVALID_DEPARTURE_TIME enum value to the status/warnings/items/ response property for the response status 200mfaEnabled (media type: application/json)mfaEnabled (media type: application/vnd.gridx.v2+json)422(sha 0f8212db)
items/oneOf[subschema #1: Inverter]/pv/arrays to the response with the 200 statusoneOf[subschema #1: Inverter]/pv/arrays to the response with the 200 statusoneOf[subschema #1: Inverter]/pv/arrays to the response with the 200 statusitems/appliances/items/oneOf[subschema #1: Inverter]/pv/arrays to the response with the 200 statusapplication/vnd.gridx.v2+json for the response with the status 200periods/items/maxExportActivePower to the response with the 200 statusEV_DEPARTURE_TIME_ROLLOVER enum value to the periods/items/error_code response property for the response status 200EV_DEPARTURE_TIME_ROLLOVER enum value to the status/error_code response property for the response status 200(sha 26e9439d)
email response’s property type/format changed from string/email to string/`` for status 200items/accounts/items/email response’s property type/format changed from string/email to string/`` for status 200email response’s property type/format changed from string/email to string/`` for status 200ev/infeasible-charging-goals enum value to the webhookSubscriptions/items/eventTypes/items/ response property for the response status 200ev/infeasible-charging-goals enum value to the eventTypes/items/ response property for the response status 201ev/infeasible-charging-goals enum value to the request property eventTypes/items/ev/infeasible-charging-goals enum value to the eventTypes/items/ response property for the response status 200ev/infeasible-charging-goals enum value to the eventTypes/items/ response property for the response status 200ev/infeasible-charging-goals enum value to the request property eventTypes/items/system/accounts/items/email response’s property type/format changed from string/email to string/`` for status 200409items/accounts/items/email response’s property type/format changed from string/email to string/`` for status 200accounts/items/email response’s property type/format changed from string/email to string/`` for status 200systems/items/accounts/items/email response’s property type/format changed from string/email to string/`` for status 200accounts/items/email response’s property type/format changed from string/email to string/`` for status 200accounts/items/email response’s property type/format changed from string/email to string/`` for status 200ApplianceCreateApplianceCreateStrictBaseApplianceCreateEVStationCreateHeatPumpCreateHeaterCreateIODeviceCreateInverterCreateMeterCreateWriteIODevice(sha 7d1857e6)
items/oneOf[subschema #1: Inverter]/cryptoSettings/items/ reactivateditems/oneOf[subschema #2: Meter]/cryptoSettings/items/ reactivateditems/oneOf[subschema #3: Heat Pump]/cryptoSettings/items/ reactivateditems/oneOf[subschema #4: EV Charging Station]/cryptoSettings/items/ reactivateditems/oneOf[subschema #5: IO Device]/cryptoSettings/items/ reactivateditems/oneOf[subschema #6: Heater]/cryptoSettings/items/ reactivateditems/oneOf[subschema #7: External controller]/cryptoSettings/items/ reactivateditems/oneOf[subschema #8: Electric Vehicle]/cryptoSettings/items/ reactivatedoneOf[subschema #1: Inverter]/cryptoSettings/items/ reactivatedoneOf[subschema #2: Meter]/cryptoSettings/items/ reactivatedoneOf[subschema #3: Heat Pump]/cryptoSettings/items/ reactivatedoneOf[subschema #4: EV Charging Station]/cryptoSettings/items/ reactivatedoneOf[subschema #5: IO Device]/cryptoSettings/items/ reactivatedoneOf[subschema #6: Heater]/cryptoSettings/items/ reactivatedoneOf[subschema #7: External controller]/cryptoSettings/items/ reactivatedoneOf[subschema #8: Electric Vehicle]/cryptoSettings/items/ reactivatedoneOf[subschema #1: Inverter]/cryptoSettings/items/ reactivatedoneOf[subschema #2: Meter]/cryptoSettings/items/ reactivatedoneOf[subschema #3: Heat Pump]/cryptoSettings/items/ reactivatedoneOf[subschema #4: EV Charging Station]/cryptoSettings/items/ reactivatedoneOf[subschema #5: IO Device]/cryptoSettings/items/ reactivatedoneOf[subschema #6: Heater]/cryptoSettings/items/ reactivatedoneOf[subschema #7: External controller]/cryptoSettings/items/ reactivatedoneOf[subschema #8: Electric Vehicle]/cryptoSettings/items/ reactivateditems/appliances/items/oneOf[subschema #1: Inverter]/cryptoSettings/items/ reactivateditems/appliances/items/oneOf[subschema #2: Meter]/cryptoSettings/items/ reactivateditems/appliances/items/oneOf[subschema #3: Heat Pump]/cryptoSettings/items/ reactivateditems/appliances/items/oneOf[subschema #4: EV Charging Station]/cryptoSettings/items/ reactivateditems/appliances/items/oneOf[subschema #5: IO Device]/cryptoSettings/items/ reactivateditems/appliances/items/oneOf[subschema #6: Heater]/cryptoSettings/items/ reactivateditems/appliances/items/oneOf[subschema #7: External controller]/cryptoSettings/items/ reactivateditems/appliances/items/oneOf[subschema #8: Electric Vehicle]/cryptoSettings/items/ reactivated(sha 8299efc6)
BaseCostSettingsBatteryParametersBestWeekResponseCostBalanceAggregatedCostSettingsEVParametersEnergyBalanceAggregatedEstimatedSavingsResponseFinalCostSettingsForecastsHeatPumpParametersLoadParametersMarketCostSettingsModeFloatMapOperationDataOperationSettingsPVParametersPostCalculateSavingsBodyDTOPriceMetricsPricesProblemProblem400Problem500WeeklyKPI(sha 8831eae0)
(sha 25876719)
query request parameter filterBy from ^(((\w+):(eq|ne|has|incl|excl|lt|le|gt|ge|li|empty|nempty|any|only|all|bool)\((([\w: .\-\']*)(,[\w: .\-\']+)*))\))(;((\w+):(eq|ne|has|incl|excl|lt|le|gt|ge|li|empty|nempty|any|only|all|bool)\((([\w: .\-\']*)(,[\w: .\-\']+)*)\)))*$ to ^(((\w+):(eq|ne|has|incl|excl|lt|le|gt|ge|li|empty|nempty|any|only|all|none|bool)\((([\w: .\-\']*)(,[\w: .\-\']+)*))\))(;((\w+):(eq|ne|has|incl|excl|lt|le|gt|ge|li|empty|nempty|any|only|all|none|bool)\((([\w: .\-\']*)(,[\w: .\-\']+)*)\)))*$ query request parameter filterBy from ^(((\w+):(eq|ne|has|incl|excl|lt|le|gt|ge|li|empty|nempty|any|only|all|bool)\((([\w: .\-\']*)(,[\w: .\-\']+)*))\))(;((\w+):(eq|ne|has|incl|excl|lt|le|gt|ge|li|empty|nempty|any|only|all|bool)\((([\w: .\-\']*)(,[\w: .\-\']+)*)\)))*$ to ^(((\w+):(eq|ne|has|incl|excl|lt|le|gt|ge|li|empty|nempty|any|only|all|none|bool)\((([\w: .\-\']*)(,[\w: .\-\']+)*))\))(;((\w+):(eq|ne|has|incl|excl|lt|le|gt|ge|li|empty|nempty|any|only|all|none|bool)\((([\w: .\-\']*)(,[\w: .\-\']+)*)\)))*$ query request parameter filterBy from ^(((\w+):(eq|ne|has|incl|excl|lt|le|gt|ge|li|empty|nempty|any|only|all|bool)\((([\w: .\-\']*)(,[\w: .\-\']+)*))\))(;((\w+):(eq|ne|has|incl|excl|lt|le|gt|ge|li|empty|nempty|any|only|all|bool)\((([\w: .\-\']*)(,[\w: .\-\']+)*)\)))*$ to ^(((\w+):(eq|ne|has|incl|excl|lt|le|gt|ge|li|empty|nempty|any|only|all|none|bool)\((([\w: .\-\']*)(,[\w: .\-\']+)*))\))(;((\w+):(eq|ne|has|incl|excl|lt|le|gt|ge|li|empty|nempty|any|only|all|none|bool)\((([\w: .\-\']*)(,[\w: .\-\']+)*)\)))*$ UNCONTROLLABLE_EV enum value to the periods/items/error_code response property for the response status 200UNCONTROLLABLE_EV enum value to the status/error_code response property for the response status 200(sha 71b91ded)
(sha ad768963)
query request parameter filterBy from ^(((\w+):(eq|ne|has|incl|excl|lt|le|gt|ge|li|empty|nempty|any|only|all|none|bool)\((([\w: .\-\']*)(,[\w: .\-\']+)*))\))(;((\w+):(eq|ne|has|incl|excl|lt|le|gt|ge|li|empty|nempty|any|only|all|none|bool)\((([\w: .\-\']*)(,[\w: .\-\']+)*)\)))*$ to ^(((\w+):(eq|ne|has|incl|excl|lt|le|gt|ge|li|empty|nempty|any|only|all|none|bool)\((([^,();]*)(,[^,();]+)*))\))(;((\w+):(eq|ne|has|incl|excl|lt|le|gt|ge|li|empty|nempty|any|only|all|none|bool)\((([^,();]*)(,[^,();]+)*)\)))*$ query request parameter filterBy from ^(((\w+):(eq|ne|has|incl|excl|lt|le|gt|ge|li|empty|nempty|any|only|all|none|bool)\((([\w: .\-\']*)(,[\w: .\-\']+)*))\))(;((\w+):(eq|ne|has|incl|excl|lt|le|gt|ge|li|empty|nempty|any|only|all|none|bool)\((([\w: .\-\']*)(,[\w: .\-\']+)*)\)))*$ to ^(((\w+):(eq|ne|has|incl|excl|lt|le|gt|ge|li|empty|nempty|any|only|all|none|bool)\((([^,();]*)(,[^,();]+)*))\))(;((\w+):(eq|ne|has|incl|excl|lt|le|gt|ge|li|empty|nempty|any|only|all|none|bool)\((([^,();]*)(,[^,();]+)*)\)))*$ query request parameter filterBy from ^(((\w+):(eq|ne|has|incl|excl|lt|le|gt|ge|li|empty|nempty|any|only|all|none|bool)\((([\w: .\-\']*)(,[\w: .\-\']+)*))\))(;((\w+):(eq|ne|has|incl|excl|lt|le|gt|ge|li|empty|nempty|any|only|all|none|bool)\((([\w: .\-\']*)(,[\w: .\-\']+)*)\)))*$ to ^(((\w+):(eq|ne|has|incl|excl|lt|le|gt|ge|li|empty|nempty|any|only|all|none|bool)\((([^,();]*)(,[^,();]+)*))\))(;((\w+):(eq|ne|has|incl|excl|lt|le|gt|ge|li|empty|nempty|any|only|all|none|bool)\((([^,();]*)(,[^,();]+)*)\)))*$ (sha 21035658)
intentSegments/items/to became nullable for the status 200modifierSegments/additionalProperties/items/to became nullable for the status 200intentSegments/items/to became optional for the status 200modifierSegments/additionalProperties/items/to became optional for the status 200(sha 7a79ceae)
assetsGatewayType to the property items/ of the query request parameter includeitems/assetsGatewayType to the response with the 200 statussystem/assetsGatewayType to the response with the 200 statusassetsGatewayType to the property items/ of the query request parameter includeitems/assetsGatewayType to the response with the 200 statusassetsGatewayType to the response with the 200 statusassetsGatewayType to the property items/ of the query request parameter includesystems/items/assetsGatewayType to the response with the 200 statusassetsGatewayType to the property items/ of the query request parameter includeassetsGatewayType to the response with the 200 statusassetsGatewayType to the response with the 200 status(sha 0f9ddb77)
application/vnd.gridx.v2+json for the response with the status 200(sha ac0d7f5e)
items/oneOf[subschema #1: Inverter]/pv/azimuth from the response with the 200 statusitems/oneOf[subschema #1: Inverter]/pv/nominalPower from the response with the 200 statusitems/oneOf[subschema #1: Inverter]/pv/tilt from the response with the 200 statusoneOf[subschema #1: Inverter]/pv/azimuth from the response with the 200 statusoneOf[subschema #1: Inverter]/pv/nominalPower from the response with the 200 statusoneOf[subschema #1: Inverter]/pv/tilt from the response with the 200 statusoneOf[subschema #1: Inverter]/pv/azimuth from the response with the 200 statusoneOf[subschema #1: Inverter]/pv/nominalPower from the response with the 200 statusoneOf[subschema #1: Inverter]/pv/tilt from the response with the 200 statusitems/appliances/items/oneOf[subschema #1: Inverter]/pv/azimuth from the response with the 200 statusitems/appliances/items/oneOf[subschema #1: Inverter]/pv/nominalPower from the response with the 200 statusitems/appliances/items/oneOf[subschema #1: Inverter]/pv/tilt from the response with the 200 status(sha 6e228db2)