Get a list of cost avoidance tasks NOTE: does not include cost avoidance tasks created from prior versions of the software
Paginated endpoint — This API returns paginated results. Use the pageNumber and pageSize query parameters to control which page of results is returned. The response includes pagination metadata in the response headers. See the Pagination guide for details.
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. |
Query Parameters
| Name | Description | Type | Required |
|---|---|---|---|
| filter | string (string) | Optional | |
| pageSize | The number of elements to return in a page | integer (int32) | Optional |
| pageNumber | The current page number | integer (int32) | Optional |
Filters
| Filter | Description | Type | Operators |
|---|---|---|---|
| batchCode | Batch Number | String | equals not equals one of like not like not one of |
| batchId | Integer | equals not equals less than between one of greater than less than equal greater than equal not one of | |
| beginDate | DateTime | equals not equals less than between greater than less than equal greater than equal today yesterday last 7 days last 14 days last 30 days last 60 days last 90 days | |
| budgetVersionId | Integer | equals not equals less than between one of greater than less than equal greater than equal not one of | |
| exportFileName | String | equals not equals one of like not like not one of | |
| exportMode | Export Mode | String | equals not equals one of like not like not one of |
| fullName | Full Name | String | equals not equals one of like not like not one of |
| masterTaskId | Integer | equals not equals less than between one of greater than less than equal greater than equal not one of | |
| setupSheetAction | String | equals not equals one of like not like not one of | |
| setupSheetType | String | equals not equals one of like not like not one of | |
| taskGUID | Task GUID | String | equals not equals one of like not like not one of |
| taskId | Integer | equals not equals less than between one of greater than less than equal greater than equal not one of | |
| taskStatus | String | equals not equals one of like not like not one of |
Response Headers
This endpoint returns pagination metadata in the response headers.
| Header | Type | Description |
|---|---|---|
| PageNumber | integer | The current page number (1-based). |
| PageSize | integer | The maximum number of items per page. |
| TotalNumberOfRecords | integer | The total number of records matching the query across all pages. |
| TotalPages | integer | The total number of pages. Increment pageNumber until it equals this value to retrieve all results. |
See the Pagination guide for iteration examples and best practices.
Responses
200
OK
The request succeeded and the response body contains the requested data.
Response Body Parameters
Array of:
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-03-30", "costAvoidanceTaskId": 1, "endDate": "2026-03-30", "filters": [
{ "availableOperator": [], "caption": "string", "dataFieldId": 1, "dataType": {}, "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
}
}
]
204
No Content
The request succeeded. No content is returned in the response body.