PUT /api/v202101/meter/{meterId}/channel/{channelId}/version/{versionId}

Update a channel version

EditChannelVersionV202101 Permissions: Meters (Edit)

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
meterId Id of the meter the channel is linked to integer (int32) Required
channelId Id of the channel the version is linked to integer (int32) Required
versionId Id of the channel version to update integer (int32) Required

Request Body

ChannelVersionWithBeginDateRequestV202101
Property Description Type
beginDate Date the channel version started to be used Must be between 12/30/1899 and 12/31/2099 string (date-time)
maximumReading The channel’s max reading Required Must be between 0 and 999999999999999 Max scale of 16, max precision of 38 number (double)
multiplier The channel multiplier Required Must be between 0 and 999999999999999 Max scale of 16, max precision of 38 number (double)
observationRule The channel’s observation rule. Possible values include “Odometer” and “Trip” Required One of ‘Odometer’, ‘Trip’ string
udfs List of user defined/custom fields and values for this version If the Udfs list is null or empty no values are assigned If a udf is omitted no value is assigned to that udf To remove a value from an existing Udf, pass in the UdfId and set the Value to null UDFValue[]
UDFValue properties
Property Description Type
udfId udfId of the UDF being edited Required (defined) integer (int32)
value Required (defined) string
unitCode The channel’s unit of measure Required string
Example Request Body application/json
{  "beginDate": "2026-03-30",  "maximumReading": 1.0,  "multiplier": 1.0,  "observationRule": "string",  "udfs": [
    {    "udfId": 1,    "value": "string"
  }
  ],  "unitCode": "string"
}

Responses

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

Response Body Parameters

ChannelResponseV202101
Property Description Type
channelDescription Description of the channel string
channelId The channel identifier integer (int32)
channelImportId The import identifier for the channel. string
channelVersions List of channel versions Versions include channel settings that may change over time ChannelVersionResponseV202101[]
ChannelVersionResponseV202101 properties
Property Description Type
beginDate Date this channel version started to be used string (date-time)
channelVersionId The channel version identifier integer (int32)
endDate Date this channel version stopped being used string (date-time)
maximumReading The channel’s max reading number (double)
multiplier The channel multiplier number (double)
observationRule 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
udfs List of user defined/custom fields and values for this version UDFFieldChild[]
UDFFieldChild properties
Property Description Type
dataType DataTypeResponse
DataTypeResponse properties
Property Description Type
dataTypeCode Required (defined) string
dataTypeId Required (defined) integer (int32)
dataTypeInfo Required (defined) string
description Required (defined) string
displayOrder Required (defined) integer (int32)
important Required (defined) boolean
name Required (defined) string
udfId Required (defined) integer (int32)
udfSelectValues Required (defined) UDFSelectValueEntityResponse[]
UDFSelectValueEntityResponse properties
Property Description Type
displayOrder Required (defined) integer (int32)
udfSelectValueId Required (defined) integer (int32)
value Required (defined) string
value Required (defined) string
unit UnitChild
UnitChild properties
Property Description Type
unitCode The unit code string
unitId The unit identifier integer (int32)
unitInfo The unit info string
firstReadingDate Date of the earliest reading for the channel string (date-time)
hasReadings Indicates if the channel has readings boolean
intervalMinutes The interval of the channel. The interval is measured in minutes integer (int32)
isUsedOnDistribution Indicates if the channel is a part of a distribution boolean
lastReadingDate Date of the most recent reading for the channel string (date-time)
meter MeterChildIncludeMeterImportIdAndRoute
MeterChildIncludeMeterImportIdAndRoute properties
Property Description Type
active Indicates whether the Meter is Active boolean
commodity CommodityChild
CommodityChild properties
Property Description Type
commodityCode The commodity code Required (defined) string
commodityIcon Icon
Icon properties
Property Description Type
code The icon code Must be between 0 and 64 characters Required when Color is set string
color The icon color Must be between 0 and 32 characters Required when Code is set string
commodityId The commodity identifier Required (defined) integer (int32)
commodityInfo The commodity info Required (defined) string
isCalculatedMeter Indicates whether the meter is a calculated meter boolean
isEsaCalculatedMeter Indicates whether the meter is an ESA calculated meter boolean
isSplitChildMeter Indicates whether the meter is a child of a split boolean
isSplitParentMeter Indicates whether the meter is a parent of a split boolean
meterCode The meter code string
meterId The meter identifier integer (int32)
meterImportId Meter’s import id string
meterInfo The meter info string
meterType MeterTypeChild
MeterTypeChild properties
Property Description Type
meterTypeCode string
meterTypeId integer (int32)
meterTypeInfo string
route RouteChild
RouteChild properties
Property Description Type
routeCode The route code string
routeId The route identifier integer (int32)
routeInfo The route info string
serialNumber The meter’s current serial number string
observationType 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
Example Response application/json
{  "channelDescription": "string",  "channelId": 1,  "channelImportId": "string",  "channelVersions": [
    {    "beginDate": "2026-03-30",    "channelVersionId": 1,    "endDate": "2026-03-30",    "maximumReading": 1.0,    "multiplier": 1.0,    "observationRule": {      "observationRuleCode": "string",      "observationRuleId": 1,      "observationRuleInfo": "string"
    },    "udfs": [
      {      "dataType": {},      "description": "string",      "displayOrder": 1,      "important": false,      "name": "string",      "udfId": 1,      "udfSelectValues": [],      "value": "string"
    }
    ],    "unit": {      "unitCode": "string",      "unitId": 1,      "unitInfo": "string"
    }
  }
  ],  "firstReadingDate": "2026-03-30",  "hasReadings": false,  "intervalMinutes": 1,  "isUsedOnDistribution": false,  "lastReadingDate": "2026-03-30",  "meter": {    "active": false,    "commodity": {      "commodityCode": "string",      "commodityIcon": {},      "commodityId": 1,      "commodityInfo": "string"
    },    "isCalculatedMeter": false,    "isEsaCalculatedMeter": false,    "isSplitChildMeter": false,    "isSplitParentMeter": false,    "meterCode": "string",    "meterId": 1,    "meterImportId": "string",    "meterInfo": "string",    "meterType": {      "meterTypeCode": "string",      "meterTypeId": 1,      "meterTypeInfo": "string"
    },    "route": {      "routeCode": "string",      "routeId": 1,      "routeInfo": "string"
    },    "serialNumber": "string"
  },  "observationType": {    "credit": 1,    "nounCode": "string",    "nounId": 1,    "observationTypeCode": "string",    "observationTypeId": 1,    "observationTypeInfo": "string"
  }
}