[Index]
Record of a single anomaly detection execution run. Tracks timing, status, anomaly counts, and an optional LLM-generated markdown findings report for non-ML-expert admins.
Model ref.: data/AnomalyDetectionRun
The full URL would include the host-proxy name: https://[host-proxy].
Variables are enclosed in square brackets.
{
"$schema": "http://json-schema.org/draft-03/schema",
"type": "object",
"properties": {
"run_id": {
"title": "Run ID",
"description": "Unique run identifier (UUID). Used as business key for foreign key references from DetectedAnomaly.",
"type": "string",
"required": true,
"maxLength": 1024
},
"detection_config": {
"title": "Detection Config",
"description": "Reference to the AnomalyDetectionConfig that was executed",
"type": "string",
"format": "uri",
"required": true,
"target": "/api/data/AnomalyDetectionConfig/choices/?field=name&format=json&hierarchy=[hierarchy]&auth_token=[authtoken],
"target_attr": "name",
"maxLength": 1024,
"target_model_type": "data/AnomalyDetectionConfig",
"choices": []
},
"status": {
"title": "Status",
"description": "Outcome of the detection run",
"type": "string",
"required": true,
"choices": [
{
"value": "in_progress",
"title": "In Progress"
},
{
"value": "success",
"title": "Success"
},
{
"value": "failed",
"title": "Failed"
},
{
"value": "partial",
"title": "Partial"
}
],
"maxLength": 1024
},
"started_at": {
"title": "Started At",
"description": "Timestamp when the detection run began",
"type": "string",
"format": "date-time",
"required": true,
"maxLength": 1024
},
"detection_duration_ms": {
"title": "Detection Duration (ms)",
"description": "Pipeline execution time in milliseconds up to and including anomaly persistence",
"type": "integer",
"required": false
},
"total_duration_ms": {
"title": "Total Duration (ms)",
"description": "Total execution time in milliseconds including optional LLM summarization",
"type": "integer",
"required": false
},
"anomalies_created": {
"title": "Anomalies Created",
"description": "Number of new anomaly records created during this run",
"type": "integer",
"required": false,
"default": 0
},
"anomalies_suppressed": {
"title": "Anomalies Suppressed",
"description": "Number of duplicate anomalies that incremented existing occurrence counts instead of creating new records",
"type": "integer",
"required": false,
"default": 0
},
"findings": {
"title": "Findings",
"description": "LLM-generated markdown findings from the detection run for non-ML-expert admins. Null when summarization step is suppressed or fails.",
"type": "string",
"maxLength": 524288,
"required": false
},
"error_code": {
"title": "Error Code",
"description": "Error code when the run fails or partially fails. Null on successful runs.",
"type": "string",
"required": false,
"maxLength": 1024
},
"expires_at": {
"title": "Expires At",
"description": "Datetime when this run record is eligible for automatic purge. Computed at creation as started_at + run_summary_retention_days from the config.",
"type": "string",
"format": "date-time",
"required": true,
"maxLength": 1024
}
},
"schema_version": "1.5.1"
}
| Task | Call | URL | Parameters | Response |
|---|---|---|---|---|
| Get the GUI Add form. | GET | /api/data/AnomalyDetectionRun/add/ |
|
The GUI Add form of data/AnomalyDetectionRun as JSON |
The API call to the /add/ URL can only be made from a hierarchy that allows the model type to be added. The actions in the response shows the url for the POST API call to create an instance.
| Task | Call | URL | Parameters | Payload |
|---|---|---|---|---|
| Create | POST | /api/data/AnomalyDetectionRun | hierarchy=[hierarchy] |
|
tool/Transaction/[trans pkid]to inspect the created resource and its instance pkid.
| Task | Call | URL | Parameters | Payload |
|---|---|---|---|---|
| Bulk delete [pkid1],[pkid2]... | DELETE | /api/data/AnomalyDetectionRun/ | hierarchy=[hierarchy] | {"hrefs":["/api/data/AnomalyDetectionRun/[pkid1]", "/api/data/AnomalyDetectionRun/[pkid2]", ...]} |
GET http://[host-proxy]/api/data/AnomalyDetectionRun/?hierarchy=[hierarchy]&format=json
| Task | Call | URL | Parameters | Payload |
|---|---|---|---|---|
| Get a selected [export_format] of the schema and instances [pkid1], [pkid2],... of data/AnomalyDetectionRun; optionally with tag_version at [version] and Configuration Template as [configtemplate]. | POST | /api/data/AnomalyDetectionRun/export/ |
|
{ "hrefs":["/api/data/AnomalyDetectionRun/[pkid1]", "/api/data/AnomalyDetectionRun/[pkid2]",...]}} |
For export_format=json, the response is a time stamped zip file of data in JSON as in the system database. Item properties such as strings that are empty or Boolean values that are not set, are not included. The filename in the response is of the format as the example:
Content-Disposition: attachment; filename=export_2013-05-17_14:20:19.186444.json.zip
Content-Language:en
Content-Type:application/x-zip
For export_format=raw_xlsx, the response is a MS Excel spreadsheet with columns corresponding to the JSON format export and a response filename format:
Content-Disposition: attachment; filename=<resource_type>_<resource_name>_exportedsheet_CCYY-MM-DD_HH-MM-SS.xlsx
Content-Language:en
Content-Type:application/vnd.openxmlformats-officedocument.spreadsheetml.sheet
For export_format=xlsx, the response is a MS Excel spreadsheet, arranged by any Field Display Policies that apply. The columns correspond with those of a Bulk Load Template export sheet. The response filename format is:
Content-Disposition: attachment; filename=<resource_type>_<resource_name>_exportedsheet_formatted_CCYY-MM-DD_HH-MM-SS.xlsx
Content-Language:en
Content-Type:application/vnd.openxmlformats-officedocument.spreadsheetml.sheet
The XLSX format can be used to bulk load instances of data/AnomalyDetectionRun and the JSON format can be used to import instances of data/AnomalyDetectionRun.
GET http://[host-proxy]/api/data/AnomalyDetectionRun/?hierarchy=[hierarchy]
| Task | Call | URL | Parameters | Response |
|---|---|---|---|---|
| Configuration Template | GET | /api/data/AnomalyDetectionRun/configuration_template/ | hierarchy=[hierarchy] |
|
POST http://[host-proxy]/api/data/ConfigurationTemplate/?hierarchy=[hierarchy]
| Task | Call | URL | Parameters | Response |
|---|---|---|---|---|
| Field Display Policy | GET | /api/data/AnomalyDetectionRun/field_display_policy/ | hierarchy=[hierarchy] |
|
POST http://[host-proxy]/api/data/FieldDisplayPolicy/?hierarchy=[hierarchy]
| Task | Call | URL | Parameters | Response |
|---|---|---|---|---|
| Migration Template | GET | /api/data/AnomalyDetectionRun/migration/ |
|
| Task | Call | URL | Parameters | Response |
|---|---|---|---|---|
| List | GET | /api/data/AnomalyDetectionRun/ |
|
The data/AnomalyDetectionRun schema and all instances as JSON. |
(The list will return 0 to 3 data/AnomalyDetectionRun instances)
{
"pagination": {
"skip": 0,
"limit": 3,
"maximum_limit": 2000,
"total": 0,
"total_limit": null,
"order_by": "started_at",
"direction": "asc",
"current": "/api/data/AnomalyDetectionRun/?skip=0&limit=3&order_by=started_at&direction=asc&traversal=down"
},
"operations": [
"add",
"bulk_update_form",
"list",
"update",
"transform",
"migration",
"remove",
"export",
"help",
"configuration_template",
"field_display_policy",
"get",
"export_bulkload_template"
],
"meta": {
"model_type": "data/AnomalyDetectionRun",
"summary_attrs": [
{
"name": "started_at",
"title": "Started At"
},
{
"name": "detection_config",
"title": "Detection Config"
},
{
"name": "status",
"title": "Status"
},
{
"name": "anomalies_created",
"title": "Anomalies Created"
},
{
"name": "expires_at",
"title": "Expires At"
},
{
"name": "hierarchy_friendly_name",
"title": "Located At",
"allow_filtering": true
}
],
"tagged_versions": [],
"tags": [],
"title": "?",
"business_key": {
"unique": [
"run_id"
],
"hierarchy": false
},
"api_version": "21.2",
"cached": true,
"references": {
"children": [],
"parent": [
{
"href": "/api/data/HierarchyNode/6t0ggef2c0deab00hb595101",
"pkid": "6t0ggef2c0deab00hb595101"
}
],
"device": [
{
"href": "",
"pkid": ""
}
],
"foreign_key": []
},
"model_specific_actions": [
"add",
"get",
"list",
"update",
"remove",
"export",
"configuration_template",
"field_display_policy",
"migration"
],
"schema_version": "1.5.1",
"actions": [
{
"add": {
"method": "GET",
"class": "add",
"href": "/api/data/AnomalyDetectionRun/add/?hierarchy=[hierarchy]",
"support_async": false,
"title": "Add"
}
},
{
"remove": {
"method": "DELETE",
"class": "delete",
"href": "/api/data/AnomalyDetectionRun/?hierarchy=[hierarchy]",
"support_async": true,
"title": "Delete"
}
},
{
"export": {
"method": "POST",
"class": "export",
"href": "/api/data/AnomalyDetectionRun/export/?hierarchy=[hierarchy]",
"support_async": false,
"title": "Export",
"view": "/api/view/ExportData/add/?auth_token=[authtoken],
"submit": "payload"
}
},
{
"configuration_template": {
"method": "GET",
"class": "config",
"href": "/api/data/AnomalyDetectionRun/configuration_template/?hierarchy=[hierarchy]",
"support_async": false,
"title": "Configuration Template"
}
},
{
"field_display_policy": {
"method": "GET",
"class": "display_policy",
"href": "/api/data/AnomalyDetectionRun/field_display_policy/?hierarchy=[hierarchy]",
"support_async": false,
"title": "Field Display Policy"
}
},
{
"migration": {
"method": "GET",
"class": "migration",
"href": "/api/data/AnomalyDetectionRun/migration/?hierarchy=[hierarchy]",
"support_async": false,
"title": "Migration Template"
}
},
{
"list": {
"method": "GET",
"class": "list",
"href": "/api/data/AnomalyDetectionRun/?hierarchy=[hierarchy]",
"support_async": false,
"title": "List"
}
}
]
},
"resources": []
}
| Task | Call | URL | Parameters | Payload |
|---|---|---|---|---|
| Modify | PUT | /api/data/AnomalyDetectionRun/[pkid] | hierarchy=[hierarchy] | (For payload specification) |
For Bulk modification, refer to the Bulk Modify section.
| Task | Call | URL | Parameters | Response |
|---|---|---|---|---|
| Delete | DELETE | /api/data/AnomalyDetectionRun/[pkid] | hierarchy=[hierarchy] |
| Task | Call | URL | Parameters | Response |
|---|---|---|---|---|
| Get a selected [export_format] of the schema and a single instance with [pkid] of data/AnomalyDetectionRun; optionally with tag_version at [version] and Configuration Template as [configtemplate]. | GET | /api/data/AnomalyDetectionRun/[pkid]/export |
|
The response is an attachment. Refer to the list below. |
For export_format=raw_xlsx, the response is a "raw" MS Excel spreadsheet with columns corresponding to the JSON format export and a response format:
Content-Disposition: attachment; filename=<resource_type>_<resource_name>_exportedsheet_CCYY-MM-DD_HH-MM-SS.xlsx
Content-Language:en
Content-Type:application/vnd.openxmlformats-officedocument.spreadsheetml.sheet
For export_format=xlsx, the response is a MS Excel spreadsheet, formatted to show all columns and a response format:
Content-Disposition: attachment; filename=<resource_type>_<resource_name>_exportedsheet_formatted_CCYY-MM-DD_HH-MM-SS.xlsx
Content-Language:en
Content-Type:application/vnd.openxmlformats-officedocument.spreadsheetml.sheet
For export_format=json, the response is a time stamped zip file of data in JSON and a response format:
Content-Disposition: attachment; filename=export_2013-05-17_14:20:19.186444.json.zip
Content-Language:en
Content-Type:application/x-zip
The XLSX format can be used to bulk load instances of data/AnomalyDetectionRun and the JSON format can be used to import instances of data/AnomalyDetectionRun.
For Bulk Export, refer to the Bulk Export section.
| Task | Call | URL | Parameters | Response |
|---|---|---|---|---|
| Get | GET | /api/data/AnomalyDetectionRun/[pkid] | hierarchy=[hierarchy] | The data/AnomalyDetectionRun instance with [pkid]. |