Skip to content
Docs

API reference / Operations by tag

automation

Automation rules, alerts, presets and run history.

17 operations. Base URL https://api.metrixed.com/v1; see authentication, errors and pagination.

Operations

MethodPathSummary
GET/automation/alertsList alerts (rules with kind=alert)
POST/automation/alertsCreate alert
GET/automation/catalogTrigger kinds, action types, events, derived metrics, periods
GET/automation/presetsAlert presets (cap near 90%, postback failure rate, CR drop, fraud spike)
POST/automation/presets/{key}/applyCreate an alert from a preset; optional overrides name, value, cooldown_seconds, dry_run, actions
GET/automation/rulesList AutomationRules
POST/automation/rulesCreate AutomationRule
GET/automation/rules/{id}Get AutomationRule
PATCH/automation/rules/{id}Update AutomationRule
DELETE/automation/rules/{id}Delete AutomationRule
GET/automation/rules/{id}/runsRun log of one rule
POST/automation/rules/bulk/applyBulk edit apply
POST/automation/rules/bulk/previewBulk edit preview
POST/automation/rules/searchSearch AutomationRules (advanced)
GET/automation/runsRun log across rules
GET/automation/scheduled-actionsList scheduled actions (one-shot or cron)
POST/automation/scheduled-actionsCreate scheduled action

GET /automation/alerts

List alerts (rules with kind=alert)

Operation getAutomationAlerts. Auth: API key (Bearer) or session cookie.

ParameterInTypeRequiredDescription
pagequeryintegerno
page_sizequeryintegerno
sortquerystringnofield or -field
includequerystringnocomma-separated relationships
filterqueryobject (free-form)no
qquerystringnofree-text search
StatusDescriptionBody
200okapplication/json AutomationRuleList
defaulterrorapplication/json Error
bash
curl 'https://api.metrixed.com/v1/automation/alerts?page=1&page_size=50' \
  -H "Authorization: Bearer $DT_API_KEY" \
  -H 'Accept: application/json'

Example 200 response:

json
{
  "data": [
    {}
  ],
  "page": {}
}

POST /automation/alerts

Create alert

Operation postAutomationAlerts. Auth: API key (Bearer) or session cookie.

Request body (application/json, required): AutomationRuleCreate

FieldTypeFlagsDescription
namestringrequired
descriptionstring
kindenum: rule, alert, scheduled_action
trigger_kindenum: metric_threshold, event, schedule, oncerequired
triggerobject (free-form)metric_threshold: entity, metric, op, value, period, compare_to, denominator_metric, min_denominator, entity_ids | event: event, filters | schedule: cron, timezone
conditionsarray of object (free-form)
actionsarray of object (free-form)required
cooldown_secondsinteger
dry_runboolean
statusenum: active, paused, done
run_atstring (date-time)
presetstring
StatusDescriptionBody
201okapplication/json AutomationRule
defaulterrorapplication/json Error
bash
curl -X POST 'https://api.metrixed.com/v1/automation/alerts' \
  -H "Authorization: Bearer $DT_API_KEY" \
  -H 'Accept: application/json' \
  -H 'Content-Type: application/json' \
  --data-raw '{"name":"","trigger_kind":"metric_threshold","actions":[{}]}'

Example 201 response:

json
{
  "external_ref": ""
}

GET /automation/catalog

Trigger kinds, action types, events, derived metrics, periods

Operation getAutomationCatalog. Auth: API key (Bearer) or session cookie.

StatusDescriptionBody
200okapplication/json Ok
defaulterrorapplication/json Error
bash
curl 'https://api.metrixed.com/v1/automation/catalog' \
  -H "Authorization: Bearer $DT_API_KEY" \
  -H 'Accept: application/json'

Example 200 response:

json
{
  "ok": false
}

GET /automation/presets

Alert presets (cap near 90%, postback failure rate, CR drop, fraud spike)

Operation getAutomationPresets. Auth: API key (Bearer) or session cookie.

StatusDescriptionBody
200okapplication/json Ok
defaulterrorapplication/json Error
bash
curl 'https://api.metrixed.com/v1/automation/presets' \
  -H "Authorization: Bearer $DT_API_KEY" \
  -H 'Accept: application/json'

Example 200 response:

json
{
  "ok": false
}

POST /automation/presets/{key}/apply

Create an alert from a preset; optional overrides name, value, cooldown_seconds, dry_run, actions

Operation postAutomationPresetsKeyApply. Auth: API key (Bearer) or session cookie.

ParameterInTypeRequiredDescription
keypathstringyes
StatusDescriptionBody
201okapplication/json AutomationRule
defaulterrorapplication/json Error
bash
curl -X POST 'https://api.metrixed.com/v1/automation/presets/<key>/apply' \
  -H "Authorization: Bearer $DT_API_KEY" \
  -H 'Accept: application/json'

Example 201 response:

json
{
  "external_ref": ""
}

GET /automation/rules

List AutomationRules

Operation getAutomationRules. Auth: API key (Bearer) or session cookie.

ParameterInTypeRequiredDescription
pagequeryintegerno
page_sizequeryintegerno
sortquerystringnofield or -field
includequerystringnocomma-separated relationships
filterqueryobject (free-form)no
qquerystringnofree-text search
StatusDescriptionBody
200okapplication/json AutomationRuleList
defaulterrorapplication/json Error
bash
curl 'https://api.metrixed.com/v1/automation/rules?page=1&page_size=50' \
  -H "Authorization: Bearer $DT_API_KEY" \
  -H 'Accept: application/json'

Example 200 response:

json
{
  "data": [
    {}
  ],
  "page": {}
}

POST /automation/rules

Create AutomationRule

Operation postAutomationRules. Auth: API key (Bearer) or session cookie.

Request body (application/json, required): AutomationRuleCreate

FieldTypeFlagsDescription
namestringrequired
descriptionstring
kindenum: rule, alert, scheduled_action
trigger_kindenum: metric_threshold, event, schedule, oncerequired
triggerobject (free-form)metric_threshold: entity, metric, op, value, period, compare_to, denominator_metric, min_denominator, entity_ids | event: event, filters | schedule: cron, timezone
conditionsarray of object (free-form)
actionsarray of object (free-form)required
cooldown_secondsinteger
dry_runboolean
statusenum: active, paused, done
run_atstring (date-time)
presetstring
StatusDescriptionBody
201okapplication/json AutomationRule
defaulterrorapplication/json Error
bash
curl -X POST 'https://api.metrixed.com/v1/automation/rules' \
  -H "Authorization: Bearer $DT_API_KEY" \
  -H 'Accept: application/json' \
  -H 'Content-Type: application/json' \
  --data-raw '{"name":"","trigger_kind":"metric_threshold","actions":[{}]}'

Example 201 response:

json
{
  "external_ref": ""
}

GET /automation/rules/{id}

Get AutomationRule

Operation getAutomationRulesId. Auth: API key (Bearer) or session cookie.

ParameterInTypeRequiredDescription
idpathstringyes
StatusDescriptionBody
200okapplication/json AutomationRule
defaulterrorapplication/json Error
bash
curl 'https://api.metrixed.com/v1/automation/rules/<id>' \
  -H "Authorization: Bearer $DT_API_KEY" \
  -H 'Accept: application/json'

Example 200 response:

json
{
  "external_ref": ""
}

PATCH /automation/rules/{id}

Update AutomationRule

Operation patchAutomationRulesId. Auth: API key (Bearer) or session cookie.

ParameterInTypeRequiredDescription
idpathstringyes

Request body (application/json, required): AutomationRuleUpdate

FieldTypeFlagsDescription
namestring
descriptionstring
kindenum: rule, alert, scheduled_action
trigger_kindenum: metric_threshold, event, schedule, once
triggerobject (free-form)metric_threshold: entity, metric, op, value, period, compare_to, denominator_metric, min_denominator, entity_ids | event: event, filters | schedule: cron, timezone
conditionsarray of object (free-form)
actionsarray of object (free-form)
cooldown_secondsinteger
dry_runboolean
statusenum: active, paused, done
run_atstring (date-time)
presetstring
StatusDescriptionBody
200okapplication/json AutomationRule
defaulterrorapplication/json Error
bash
curl -X PATCH 'https://api.metrixed.com/v1/automation/rules/<id>' \
  -H "Authorization: Bearer $DT_API_KEY" \
  -H 'Accept: application/json' \
  -H 'Content-Type: application/json' \
  --data-raw '{"name":"","description":"","kind":"rule","trigger_kind":"metric_threshold"}'

Example 200 response:

json
{
  "external_ref": ""
}

DELETE /automation/rules/{id}

Delete AutomationRule

Operation deleteAutomationRulesId. Auth: API key (Bearer) or session cookie.

ParameterInTypeRequiredDescription
idpathstringyes
StatusDescriptionBody
204okapplication/json Ok
defaulterrorapplication/json Error
bash
curl -X DELETE 'https://api.metrixed.com/v1/automation/rules/<id>' \
  -H "Authorization: Bearer $DT_API_KEY" \
  -H 'Accept: application/json'

Example 204 response:

json
{
  "ok": false
}

GET /automation/rules/{id}/runs

Run log of one rule

Operation getAutomationRulesIdRuns. Auth: API key (Bearer) or session cookie.

ParameterInTypeRequiredDescription
idpathstringyes
pagequeryintegerno
page_sizequeryintegerno
sortquerystringnofield or -field
includequerystringnocomma-separated relationships
filterqueryobject (free-form)no
qquerystringnofree-text search
StatusDescriptionBody
200okapplication/json LogSearchResult
defaulterrorapplication/json Error
bash
curl 'https://api.metrixed.com/v1/automation/rules/<id>/runs?page=1&page_size=50' \
  -H "Authorization: Bearer $DT_API_KEY" \
  -H 'Accept: application/json'

Example 200 response:

json
{
  "rows": [
    {}
  ],
  "next_cursor": "",
  "has_more": false
}

POST /automation/rules/bulk/apply

Bulk edit apply

Operation postAutomationRulesBulkApply. Auth: API key (Bearer) or session cookie.

Request body (application/json, required): BulkPatch

FieldTypeFlagsDescription
idsarray of stringrequired
patchesarray of objectrequired
StatusDescriptionBody
200okapplication/json BulkPreview
defaulterrorapplication/json Error
bash
curl -X POST 'https://api.metrixed.com/v1/automation/rules/bulk/apply' \
  -H "Authorization: Bearer $DT_API_KEY" \
  -H 'Accept: application/json' \
  -H 'Content-Type: application/json' \
  --data-raw '{"ids":[""],"patches":[{"field":"","value":{}}]}'

Example 200 response:

json
{
  "affected": 0,
  "changes": [
    {}
  ],
  "warnings": [
    ""
  ],
  "token": ""
}

POST /automation/rules/bulk/preview

Bulk edit preview

Operation postAutomationRulesBulkPreview. Auth: API key (Bearer) or session cookie.

Request body (application/json, required): BulkPatch

FieldTypeFlagsDescription
idsarray of stringrequired
patchesarray of objectrequired
StatusDescriptionBody
200okapplication/json BulkPreview
defaulterrorapplication/json Error
bash
curl -X POST 'https://api.metrixed.com/v1/automation/rules/bulk/preview' \
  -H "Authorization: Bearer $DT_API_KEY" \
  -H 'Accept: application/json' \
  -H 'Content-Type: application/json' \
  --data-raw '{"ids":[""],"patches":[{"field":"","value":{}}]}'

Example 200 response:

json
{
  "affected": 0,
  "changes": [
    {}
  ],
  "warnings": [
    ""
  ],
  "token": ""
}

POST /automation/rules/search

Search AutomationRules (advanced)

Operation postAutomationRulesSearch. Auth: API key (Bearer) or session cookie.

Request body (application/json, required): SearchRequest

FieldTypeFlagsDescription
filtersarray of object
searchstring
sortarray of object (free-form)
pageinteger
page_sizeinteger
includearray of string
StatusDescriptionBody
200okapplication/json AutomationRuleList
defaulterrorapplication/json Error
bash
curl -X POST 'https://api.metrixed.com/v1/automation/rules/search' \
  -H "Authorization: Bearer $DT_API_KEY" \
  -H 'Accept: application/json' \
  -H 'Content-Type: application/json' \
  --data-raw '{"filters":[{}],"search":"","sort":[{}],"page":0}'

Example 200 response:

json
{
  "data": [
    {}
  ],
  "page": {}
}

GET /automation/runs

Run log across rules

Operation getAutomationRuns. Auth: API key (Bearer) or session cookie.

ParameterInTypeRequiredDescription
pagequeryintegerno
page_sizequeryintegerno
sortquerystringnofield or -field
includequerystringnocomma-separated relationships
filterqueryobject (free-form)no
qquerystringnofree-text search
StatusDescriptionBody
200okapplication/json LogSearchResult
defaulterrorapplication/json Error
bash
curl 'https://api.metrixed.com/v1/automation/runs?page=1&page_size=50' \
  -H "Authorization: Bearer $DT_API_KEY" \
  -H 'Accept: application/json'

Example 200 response:

json
{
  "rows": [
    {}
  ],
  "next_cursor": "",
  "has_more": false
}

GET /automation/scheduled-actions

List scheduled actions (one-shot or cron)

Operation getAutomationScheduledActions. Auth: API key (Bearer) or session cookie.

ParameterInTypeRequiredDescription
pagequeryintegerno
page_sizequeryintegerno
sortquerystringnofield or -field
includequerystringnocomma-separated relationships
filterqueryobject (free-form)no
qquerystringnofree-text search
StatusDescriptionBody
200okapplication/json AutomationRuleList
defaulterrorapplication/json Error
bash
curl 'https://api.metrixed.com/v1/automation/scheduled-actions?page=1&page_size=50' \
  -H "Authorization: Bearer $DT_API_KEY" \
  -H 'Accept: application/json'

Example 200 response:

json
{
  "data": [
    {}
  ],
  "page": {}
}

POST /automation/scheduled-actions

Create scheduled action

Operation postAutomationScheduledActions. Auth: API key (Bearer) or session cookie.

Request body (application/json, required): AutomationRuleCreate

FieldTypeFlagsDescription
namestringrequired
descriptionstring
kindenum: rule, alert, scheduled_action
trigger_kindenum: metric_threshold, event, schedule, oncerequired
triggerobject (free-form)metric_threshold: entity, metric, op, value, period, compare_to, denominator_metric, min_denominator, entity_ids | event: event, filters | schedule: cron, timezone
conditionsarray of object (free-form)
actionsarray of object (free-form)required
cooldown_secondsinteger
dry_runboolean
statusenum: active, paused, done
run_atstring (date-time)
presetstring
StatusDescriptionBody
201okapplication/json AutomationRule
defaulterrorapplication/json Error
bash
curl -X POST 'https://api.metrixed.com/v1/automation/scheduled-actions' \
  -H "Authorization: Bearer $DT_API_KEY" \
  -H 'Accept: application/json' \
  -H 'Content-Type: application/json' \
  --data-raw '{"name":"","trigger_kind":"metric_threshold","actions":[{}]}'

Example 201 response:

json
{
  "external_ref": ""
}