Bulk-regenerates cost avoidance baselines and reprocesses savings for meters matching filter criteria
Use this endpoint to reprocess baselines and savings for multiple meters at once based on filter
conditions. Runs asynchronously as a background task. Use GET /task/{guid} to check progress.
Requires Baseline Engine Run permission.
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. |
Request Body
BulkBaselineProcessorRequest
| Property | Description | Type | ||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| filters | Filter criteria which determine the meters whose cost avoidance baselines will be reprocessed Cannot be Empty | FilterEdit[] | ||||||||||||
|
FilterEdit properties
|
||||||||||||||
| ignoreWeatherAdjustments | Determines if weather adjustments are applied to the reprocessed baseline or not Defaults to “false” | boolean | ||||||||||||
Example Request Body
{ "filters": [
{ "fieldId": 1, "operator": "string", "value": "string"
}
], "ignoreWeatherAdjustments": false
}
Responses
200
OK
The request succeeded and the response body contains the requested data.
Response Body Parameters
CostAvoidanceTask
| Property | Description | Type | |||||||||||||||||||||||||||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| baselineLog | BaselineLog | ||||||||||||||||||||||||||||||||||||||||||||||||||||
|
BaselineLog properties
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||
| beginDate | The date and time the task began | string (date-time) | |||||||||||||||||||||||||||||||||||||||||||||||||||
| costAvoidanceTaskId | The task ID | integer (int32) | |||||||||||||||||||||||||||||||||||||||||||||||||||
| endDate | The date and time the task finished. If the task is not finished, endDate will have no value | string (date-time) | |||||||||||||||||||||||||||||||||||||||||||||||||||
| filters | The task’s filters | FilterResponse[] | |||||||||||||||||||||||||||||||||||||||||||||||||||
|
FilterResponse properties
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||
| hasAttachments | Indicates whether or not the task has an output log available for download | boolean | |||||||||||||||||||||||||||||||||||||||||||||||||||
| message | If there was a catastrophic error during task processing, it will go here | string | |||||||||||||||||||||||||||||||||||||||||||||||||||
| reason | The reason for the cost avoidance task. Will be one of the following:
|
string | |||||||||||||||||||||||||||||||||||||||||||||||||||
| savingsLog | SavingsLog | ||||||||||||||||||||||||||||||||||||||||||||||||||||
|
SavingsLog properties
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||
| settings | CostAvoidanceSettings | ||||||||||||||||||||||||||||||||||||||||||||||||||||
|
CostAvoidanceSettings properties
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||
| status | The status of the cost avoidance task. Will be one of the following:
|
string | |||||||||||||||||||||||||||||||||||||||||||||||||||
| taskGUId | The task GUID | string (uuid) | |||||||||||||||||||||||||||||||||||||||||||||||||||
| taskNote | Notes added to the cost avoidance task by the user | string | |||||||||||||||||||||||||||||||||||||||||||||||||||
| taskType | TaskType | ||||||||||||||||||||||||||||||||||||||||||||||||||||
|
TaskType properties
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||
| user | UserChild | ||||||||||||||||||||||||||||||||||||||||||||||||||||
|
UserChild properties
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||
Example Response
{ "baselineLog": { "errorCount": 1, "numberOfMeters": 1, "status": "string", "successCount": 1, "warningCount": 1
}, "beginDate": "2026-06-29", "costAvoidanceTaskId": 1, "endDate": "2026-06-29", "filters": [
{ "availableOperator": [
"string"
], "caption": "string", "dataFieldId": 1, "dataType": { "dataTypeCode": "string", "dataTypeId": 1, "dataTypeInfo": "string"
}, "fieldId": 1, "hidden": false, "operator": "string", "queryParameterName": "string", "recommended": false, "required": false, "value": "string"
}
], "hasAttachments": false, "message": "string", "reason": "string", "savingsLog": { "errorCount": 1, "numberOfMeters": 1, "status": "string", "successCount": 1, "warningCount": 1
}, "settings": { "billSelectionOption": "string", "ignoredSpecialAdjustmentType": "string", "ignoredWeatherAdjustments": false, "minimumBillingPeriod": 1, "skippedMultiAccountIfBillsMissing": false
}, "status": "string", "taskGUId": "string", "taskNote": "string", "taskType": { "taskTypeCode": "string", "taskTypeId": 1, "taskTypeInfo": "string"
}, "user": { "fullName": "string", "userCode": "string", "userId": 1
}
}