Skip to content

Depot alertrules

Registers the routing rules on the TENANT mux.

This page is generated from the Depot route table. Every operation carries the permission it needs and the anchor an agent can link to.

GETalert:readtenant facehosteditmspremoteIdempotent

From an MSP console, prefix the path with /api/v1/clients/{clientID} to reach one client.

Source: [object Object]

List alert rules

NameInTypeRequiredDescription
dirquerystring, one of asc, descNoSort direction.
pagequeryintegerNoOne-based page number. Defaults to 1.
pageSizequeryintegerNoRows per page, 1 to 200. Defaults to 50.
qquerystringNoFree-text search term.
sortquerystring, one of name, order, updatedNoSort key.
StatusBodyDescription
200application/json, PagedResultAlertRuleViewSuccess.
400application/problem+json, ProblemDetailsOne or more validation errors occurred.
401application/problem+json, ProblemDetailsNo signed-in identity.
403application/problem+json, ProblemDetailsThe identity does not hold alert:read.
500application/problem+json, ProblemDetailsNo client store in request context.

200 response body

FieldTypeDescription
itemsrequiredarray of AlertRuleView
items[].categoriesrequiredarray of string
items[].channelIdsrequiredarray of string
items[].createdAtrequiredstring (date-time)
items[].enabledrequiredboolean
items[].escalationTiersrequiredarray of EscalationTierView
items[].escalationTiers[].afterMinutesrequiredinteger
items[].escalationTiers[].channelIdsrequiredarray of string
items[].filterrequiredAlertRuleFilterView

alertRuleFilterView is the endpoint scope.

items[].filter.agentIdsrequiredarray of string
items[].filter.osFamiliesrequiredarray of string
items[].filter.siteIdsrequiredarray of string
items[].minSeverityrequiredstring
items[].namerequiredstring
items[].notifyOnResolverequiredboolean
items[].publicIdrequiredstring
items[].runOrderrequiredinteger
items[].updatedAtrequiredstring (date-time)
pagerequiredinteger
pageSizerequiredinteger
totalrequiredinteger
Terminal window
# Sign in first. outpost_console is a session cookie, so send it with every request.
# This operation is idempotent. Repeating it does not repeat its effect.
curl -X GET 'https://depot.example.com/api/v1/alert-rules?dir=asc&page=0&pageSize=0&q=<q>&sort=name' \
-H 'X-CSRF-Token: <csrf-token>' \
-H 'Accept: application/json' \
-b 'outpost_console=<console-session>'

POSTalert:managetenant facehosteditmspremote

From an MSP console, prefix the path with /api/v1/clients/{clientID} to reach one client.

Source: [object Object]

Create alert rule

Required, sent as application/json.

FieldTypeDescription
categoriesarray of string or null
channelIdsarray of string or null
enabledboolean or null
escalationTiersarray of EscalationTierReq or null
escalationTiers[].afterMinutesrequiredinteger
escalationTiers[].channelIdsrequiredarray of string
filterAlertRuleFilterReq
filter.agentIdsarray of string or null
filter.osFamiliesarray of string or null
filter.siteIdsarray of string or null
minSeveritystring or null
namestring or null
notifyOnResolveboolean or null
runOrderinteger or null
StatusBodyDescription
201application/json, AlertRuleViewCreated.
400application/problem+json, ProblemDetailsThe request body is not valid JSON.
401application/problem+json, ProblemDetailsNo signed-in identity.
403application/problem+json, ProblemDetailsThe identity does not hold alert:manage.
404application/problem+json, ProblemDetailsAlert rule not found.
409application/problem+json, ProblemDetailsA rule with that name already exists.
500application/problem+json, ProblemDetailsNo client store in request context.

201 response body

FieldTypeDescription
categoriesrequiredarray of string
channelIdsrequiredarray of string
createdAtrequiredstring (date-time)
enabledrequiredboolean
escalationTiersrequiredarray of EscalationTierView
escalationTiers[].afterMinutesrequiredinteger
escalationTiers[].channelIdsrequiredarray of string
filterrequiredAlertRuleFilterView

alertRuleFilterView is the endpoint scope.

filter.agentIdsrequiredarray of string
filter.osFamiliesrequiredarray of string
filter.siteIdsrequiredarray of string
minSeverityrequiredstring
namerequiredstring
notifyOnResolverequiredboolean
publicIdrequiredstring
runOrderrequiredinteger
updatedAtrequiredstring (date-time)
Terminal window
# Sign in first. outpost_console is a session cookie, so send it with every request.
curl -X POST 'https://depot.example.com/api/v1/alert-rules' \
-H 'X-CSRF-Token: <csrf-token>' \
-H 'Accept: application/json' \
-H 'Content-Type: application/json' \
-b 'outpost_console=<console-session>' \
--data '{
"categories": [
"string"
],
"channelIds": [
"string"
],
"enabled": false,
"escalationTiers": [
{
"afterMinutes": 0,
"channelIds": [
"string"
]
}
],
"filter": {
"agentIds": [
"string"
],
"osFamilies": [
"string"
],
"siteIds": [
"string"
]
},
"minSeverity": "string",
"name": "string",
"notifyOnResolve": false,
"runOrder": 0
}'

GETalert:readtenant facehosteditmspremoteIdempotent

From an MSP console, prefix the path with /api/v1/clients/{clientID} to reach one client.

Source: [object Object]

Get alert rule

NameInTypeRequiredDescription
ruleIdpathstringYesA uuid.
StatusBodyDescription
200application/json, AlertRuleViewSuccess.
401application/problem+json, ProblemDetailsNo signed-in identity.
403application/problem+json, ProblemDetailsThe identity does not hold alert:read.
404application/problem+json, ProblemDetailsNo resource matches that id.
500application/problem+json, ProblemDetailsNo client store in request context.

200 response body

FieldTypeDescription
categoriesrequiredarray of string
channelIdsrequiredarray of string
createdAtrequiredstring (date-time)
enabledrequiredboolean
escalationTiersrequiredarray of EscalationTierView
escalationTiers[].afterMinutesrequiredinteger
escalationTiers[].channelIdsrequiredarray of string
filterrequiredAlertRuleFilterView

alertRuleFilterView is the endpoint scope.

filter.agentIdsrequiredarray of string
filter.osFamiliesrequiredarray of string
filter.siteIdsrequiredarray of string
minSeverityrequiredstring
namerequiredstring
notifyOnResolverequiredboolean
publicIdrequiredstring
runOrderrequiredinteger
updatedAtrequiredstring (date-time)
Terminal window
# Sign in first. outpost_console is a session cookie, so send it with every request.
# This operation is idempotent. Repeating it does not repeat its effect.
curl -X GET 'https://depot.example.com/api/v1/alert-rules/<ruleId>' \
-H 'X-CSRF-Token: <csrf-token>' \
-H 'Accept: application/json' \
-b 'outpost_console=<console-session>'

PUTalert:managetenant facehosteditmspremoteIdempotent

From an MSP console, prefix the path with /api/v1/clients/{clientID} to reach one client.

Source: [object Object]

Update alert rule

NameInTypeRequiredDescription
ruleIdpathstringYesA uuid.

Required, sent as application/json.

FieldTypeDescription
categoriesarray of string or null
channelIdsarray of string or null
enabledboolean or null
escalationTiersarray of EscalationTierReq or null
escalationTiers[].afterMinutesrequiredinteger
escalationTiers[].channelIdsrequiredarray of string
filterAlertRuleFilterReq
filter.agentIdsarray of string or null
filter.osFamiliesarray of string or null
filter.siteIdsarray of string or null
minSeveritystring or null
namestring or null
notifyOnResolveboolean or null
runOrderinteger or null
StatusBodyDescription
200application/json, AlertRuleViewSuccess.
400application/problem+json, ProblemDetailsThe request body is not valid JSON.
401application/problem+json, ProblemDetailsNo signed-in identity.
403application/problem+json, ProblemDetailsThe identity does not hold alert:manage.
404application/problem+json, ProblemDetailsNo resource matches that id.
409application/problem+json, ProblemDetailsA rule with that name already exists.
500application/problem+json, ProblemDetailsNo client store in request context.

200 response body

FieldTypeDescription
categoriesrequiredarray of string
channelIdsrequiredarray of string
createdAtrequiredstring (date-time)
enabledrequiredboolean
escalationTiersrequiredarray of EscalationTierView
escalationTiers[].afterMinutesrequiredinteger
escalationTiers[].channelIdsrequiredarray of string
filterrequiredAlertRuleFilterView

alertRuleFilterView is the endpoint scope.

filter.agentIdsrequiredarray of string
filter.osFamiliesrequiredarray of string
filter.siteIdsrequiredarray of string
minSeverityrequiredstring
namerequiredstring
notifyOnResolverequiredboolean
publicIdrequiredstring
runOrderrequiredinteger
updatedAtrequiredstring (date-time)
Terminal window
# Sign in first. outpost_console is a session cookie, so send it with every request.
# This operation is idempotent. Repeating it does not repeat its effect.
curl -X PUT 'https://depot.example.com/api/v1/alert-rules/<ruleId>' \
-H 'X-CSRF-Token: <csrf-token>' \
-H 'Accept: application/json' \
-H 'Content-Type: application/json' \
-b 'outpost_console=<console-session>' \
--data '{
"categories": [
"string"
],
"channelIds": [
"string"
],
"enabled": false,
"escalationTiers": [
{
"afterMinutes": 0,
"channelIds": [
"string"
]
}
],
"filter": {
"agentIds": [
"string"
],
"osFamilies": [
"string"
],
"siteIds": [
"string"
]
},
"minSeverity": "string",
"name": "string",
"notifyOnResolve": false,
"runOrder": 0
}'

DELETEalert:managetenant facehosteditmspremoteIdempotent

From an MSP console, prefix the path with /api/v1/clients/{clientID} to reach one client.

Source: [object Object]

Delete alert rule

NameInTypeRequiredDescription
ruleIdpathstringYesA uuid.
StatusBodyDescription
204NoneSuccess, with no body.
401application/problem+json, ProblemDetailsNo signed-in identity.
403application/problem+json, ProblemDetailsThe identity does not hold alert:manage.
404application/problem+json, ProblemDetailsNo resource matches that id.
500application/problem+json, ProblemDetailsNo client store in request context.
Terminal window
# Sign in first. outpost_console is a session cookie, so send it with every request.
# This operation is idempotent. Repeating it does not repeat its effect.
curl -X DELETE 'https://depot.example.com/api/v1/alert-rules/<ruleId>' \
-H 'X-CSRF-Token: <csrf-token>' \
-H 'Accept: application/json' \
-b 'outpost_console=<console-session>'

Content is licensed CC BY 4.0. Code samples are MIT. Outpost and the Outpost mark are trademarks of Outpost Business Solutions, PBC and are not covered by either license.