PUT /api/v3/account/{accountId}/meter/{meterId}/calculatedBill/{versionId}/demand

Creates or updates the demand calculation configuration for a calculated bill version

ManageCalculateBillDemandV3 Permissions: Chargebacks (Manage)
Use this endpoint to define how the calculated bill derives its demand value. Options include copying from a source meter channel or using a fixed value. Unlike use and cost, demand is optional — sending null for both channel and fixed value clears the demand configuration. The operation is transactional.

Request Headers

Header Value Required Description
ECI-ApiKey string Yes Your API key. See Authentication.
Content-Type application/json Yes All requests must specify JSON content type, including the request body.

Path Parameters

Name Description Type Required
accountId Unique numeric identifier of the account integer (int32) Required
meterId Unique numeric identifier of the meter integer (int32) Required
versionId Unique numeric identifier of the calculated bill distribution version integer (int32) Required

Request Body

CalculatedBillDemandRequest
Property Description Type
fixedDemand FixedDemandRequest
FixedDemandRequest properties
Property Description Type
fixedDemandAmount Fixed demand amount Required Max scale of 6 number (double)
unitId Unit to which demand is applied Required integer (int32)
readingsChannelId Use channel data readings to calculate bill demand Required (defined) Only one of ReadingsChannelId, ReadingsEsaChannelId, FixedDemand, UseWatticsDataPoint can be set integer (int32)
readingsEsaChannelId Use ESA channel data readings to calculate bill demand Required (defined) Only one of ReadingsChannelId, ReadingsEsaChannelId, FixedDemand, UseWatticsDataPoint can be set integer (int32)
useWatticsDataPoint Use SmartAnalytics (Wattics) data readings to calculate bill demand Required (defined) Only one of ReadingsChannelId, ReadingsEsaChannelId, FixedDemand, UseWatticsDataPoint can be set boolean
Example Request Body application/json
{  "fixedDemand": {    "fixedDemandAmount": 1.0,    "unitId": 1
  },  "readingsChannelId": 1,  "readingsEsaChannelId": 1,  "useWatticsDataPoint": false
}

Responses

200 OK The request succeeded and the response body contains the requested data.

Response Body Parameters

CalculatedBillDemandResponse
Property Description Type
fixedDemand FixedAmountResponse
FixedAmountResponse properties
Property Description Type
amount Fixed amount number (double)
unit UnitChild
UnitChild properties
Property Description Type
unitCode The unit code string
unitId The unit identifier integer (int32)
unitInfo The unit info string
readingsFromChannel ChannelChildWithObservationType
ChannelChildWithObservationType properties
Property Description Type
channelCode The channel code Combines observationTypeCode:unitCode:observationMethodCode:observationRuleCode:interval in minutes string
channelId The channel identifier integer (int32)
interval The channel interval in seconds. Monthly = 2592000 Weekly = 604800 Daily = 86400 Hourly = 3600 Thirty_Minutes = 1800 Fifteen_Minutes = 900 integer (int32)
rule ObservationRule
ObservationRule properties
Property Description Type
observationRuleCode The observation rule code string
observationRuleId The observation rule identifier integer (int32)
observationRuleInfo The observation rule info string
type ObservationTypeChild
ObservationTypeChild properties
Property Description Type
credit Indicates the type of credit for the observation type. Possible values include: 1 (Credit), 2 (Debit), 3 (Ignore) integer (int32)
nounCode The observation type’s noun code string
nounId The identifier for the observation type’s noun integer (int32)
observationTypeCode The observation type code string
observationTypeId The observation type identifier integer (int32)
observationTypeInfo The observation type info string
readingsFromEsaChannel EsaChannelChildWithObservationType
EsaChannelChildWithObservationType properties
Property Description Type
esaChannelId integer (int32)
esaChannelInfo string
interval integer (int32)
rule ObservationRule
ObservationRule properties
Property Description Type
observationRuleCode The observation rule code string
observationRuleId The observation rule identifier integer (int32)
observationRuleInfo The observation rule info string
type ObservationTypeChild
ObservationTypeChild properties
Property Description Type
credit Indicates the type of credit for the observation type. Possible values include: 1 (Credit), 2 (Debit), 3 (Ignore) integer (int32)
nounCode The observation type’s noun code string
nounId The identifier for the observation type’s noun integer (int32)
observationTypeCode The observation type code string
observationTypeId The observation type identifier integer (int32)
observationTypeInfo The observation type info string
readingsFromWatticsDataPoint WatticsDataPointChild
WatticsDataPointChild properties
Property Description Type
watticsDataPointId The identifier for a SmartAnalytics (Wattics) meter integer (int32)
watticsDataPointInfo The name for a SmartAnalytics (Wattics) meter string
Example Response application/json
{  "fixedDemand": {    "amount": 1.0,    "unit": {      "unitCode": "string",      "unitId": 1,      "unitInfo": "string"
    }
  },  "readingsFromChannel": {    "channelCode": "string",    "channelId": 1,    "interval": 1,    "rule": {      "observationRuleCode": "string",      "observationRuleId": 1,      "observationRuleInfo": "string"
    },    "type": {      "credit": 1,      "nounCode": "string",      "nounId": 1,      "observationTypeCode": "string",      "observationTypeId": 1,      "observationTypeInfo": "string"
    }
  },  "readingsFromEsaChannel": {    "esaChannelId": 1,    "esaChannelInfo": "string",    "interval": 1,    "rule": {      "observationRuleCode": "string",      "observationRuleId": 1,      "observationRuleInfo": "string"
    },    "type": {      "credit": 1,      "nounCode": "string",      "nounId": 1,      "observationTypeCode": "string",      "observationTypeId": 1,      "observationTypeInfo": "string"
    }
  },  "readingsFromWatticsDataPoint": {    "watticsDataPointId": 1,    "watticsDataPointInfo": "string"
  }
}