Creates a new dynamic report using the provided report body. The KQL IS NOT validated at this time, so if it is malformed, the report will not be able to be executed. Returns the created report with its ID and version information.
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
DynamicReportRequestV202607
| Property | Description | Type |
|---|---|---|
| kql | The KQL that defines the data to be retrieved by the report Required (defined) | string |
| reportDescription | The description of the report Max length of 4000 Required (defined) | string |
| reportName | The report name Max length of 255 Required (defined) | string |
| wattsChatMessageId | The chat message ID associated with this version of the report, if applicable. Required (defined) | integer (int32) |
Example Request Body
{ "kql": "string", "reportDescription": "string", "reportName": "string", "wattsChatMessageId": 1
}
Responses
200
OK
The request succeeded and the response body contains the requested data.
Response Body Parameters
DynamicReportResponseV202607
| Property | Description | Type | ||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| createdBy | UserChild | |||||||||||||
|
UserChild properties
|
||||||||||||||
| createdDate | Date and time when the report was created. | string (date-time) | ||||||||||||
| description | User-facing description stored on the current report version. Null when no description was supplied. | string | ||||||||||||
| dynamicReportId | Unique numeric identifier of the saved dynamic report. | integer (int32) | ||||||||||||
| dynamicReportInfo | User-facing saved report title. | string | ||||||||||||
| gridState | Serialized grid, chart, and panel state stored on the current report version. Null when no UI state has been saved. | string | ||||||||||||
| kql | KQL persisted on the current report version and used to reproduce its data. | string | ||||||||||||
| modifiedBy | UserChild | |||||||||||||
|
UserChild properties
|
||||||||||||||
| modifiedDate | Date and time when the current report version was most recently modified. | string (date-time) | ||||||||||||
| ownerId | Unique numeric identifier of the EnergyCAP owner that contains this report. | integer (int32) | ||||||||||||
| wattsChatId | Unique numeric identifier of the reporting chat that owns the linked assistant message. Null for legacy or unlinked reports. | integer (int32) | ||||||||||||
| wattsChatMessageId | Unique numeric identifier of the assistant message associated with the saved KQL. Null for legacy or unlinked reports. | integer (int32) | ||||||||||||
Example Response
{ "createdBy": { "fullName": "string", "userCode": "string", "userId": 1
}, "createdDate": "2026-09-26", "description": "string", "dynamicReportId": 1, "dynamicReportInfo": "string", "gridState": "string", "kql": "string", "modifiedBy": { "fullName": "string", "userCode": "string", "userId": 1
}, "modifiedDate": "2026-09-26", "ownerId": 1, "wattsChatId": 1, "wattsChatMessageId": 1
}