Skip to content

Depot alerts

Registers the alert queue 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 alerts

NameInTypeRequiredDescription
agentIdquerystringNo
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.
searchquerystringNoOlder spelling of q, kept so saved links keep working.
sortquerystring, one of newest, severity, updatedNoSort key.
StatusBodyDescription
200application/json, objectSuccess.
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 AlertView
items[].acknowledgedAtstring (date-time) or null
items[].acknowledgedBystring
items[].acknowledgedNotestring
items[].agentIdstring
items[].categoryrequiredstring
items[].createdAtrequiredstring (date-time)
items[].detailrequiredstring
items[].endpointHostnamestring
items[].endpointRetiredrequiredboolean
items[].endpointRetiredAtstring (date-time) or null
items[].firstSeenAtrequiredstring (date-time)
items[].lastSeenAtrequiredstring (date-time)
items[].occurrencesrequiredinteger
items[].publicIdrequiredstring
items[].resolutionstring, one of cleared, manual, retired, stale
items[].resolvedAtstring (date-time) or null
items[].resolvedBystring
items[].resolvedNotestring
items[].severityrequiredstring
items[].sourceKeyrequiredstring
items[].staterequiredstring
items[].titlerequiredstring
items[].updatedAtrequiredstring (date-time)
notificationCoveragerequiredboolean
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/alerts?agentId=<agentId>&dir=asc&page=0&pageSize=0&q=<q>&search=<search>' \
-H 'X-CSRF-Token: <csrf-token>' \
-H 'Accept: application/json' \
-b 'outpost_console=<console-session>'

GETalert:readtenant facehosteditmspremoteIdempotent

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

Source: [object Object]

Get alert

NameInTypeRequiredDescription
alertIdpathstringYesA uuid.
StatusBodyDescription
200application/json, AlertViewSuccess.
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
acknowledgedAtstring (date-time) or null
acknowledgedBystring
acknowledgedNotestring
agentIdstring
categoryrequiredstring
createdAtrequiredstring (date-time)
detailrequiredstring
endpointHostnamestring
endpointRetiredrequiredboolean
endpointRetiredAtstring (date-time) or null
firstSeenAtrequiredstring (date-time)
lastSeenAtrequiredstring (date-time)
occurrencesrequiredinteger
publicIdrequiredstring
resolutionstring, one of cleared, manual, retired, stale
resolvedAtstring (date-time) or null
resolvedBystring
resolvedNotestring
severityrequiredstring
sourceKeyrequiredstring
staterequiredstring
titlerequiredstring
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/alerts/<alertId>' \
-H 'X-CSRF-Token: <csrf-token>' \
-H 'Accept: application/json' \
-b 'outpost_console=<console-session>'

POSTalert:acktenant facehosteditmspremoteIdempotent

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

Source: [object Object]

Acknowledge alert

NameInTypeRequiredDescription
alertIdpathstringYesA uuid.

Required, sent as application/json.

FieldTypeDescription
notestring or null
StatusBodyDescription
200application/json, AlertViewSuccess.
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:ack.
404application/problem+json, ProblemDetailsNo resource matches that id.
409application/problem+json, ProblemDetailsThis alert is already resolved.
500application/problem+json, ProblemDetailsNo client store in request context.

200 response body

FieldTypeDescription
acknowledgedAtstring (date-time) or null
acknowledgedBystring
acknowledgedNotestring
agentIdstring
categoryrequiredstring
createdAtrequiredstring (date-time)
detailrequiredstring
endpointHostnamestring
endpointRetiredrequiredboolean
endpointRetiredAtstring (date-time) or null
firstSeenAtrequiredstring (date-time)
lastSeenAtrequiredstring (date-time)
occurrencesrequiredinteger
publicIdrequiredstring
resolutionstring, one of cleared, manual, retired, stale
resolvedAtstring (date-time) or null
resolvedBystring
resolvedNotestring
severityrequiredstring
sourceKeyrequiredstring
staterequiredstring
titlerequiredstring
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 POST 'https://depot.example.com/api/v1/alerts/<alertId>/acknowledge' \
-H 'X-CSRF-Token: <csrf-token>' \
-H 'Accept: application/json' \
-H 'Content-Type: application/json' \
-b 'outpost_console=<console-session>' \
--data '{
"note": "string"
}'

GETalert:managetenant facehosteditmspremoteIdempotent

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

Source: [object Object]

List alert deliveries

NameInTypeRequiredDescription
alertIdpathstringYesA uuid.
pagequeryintegerNoOne-based page number. Defaults to 1.
pageSizequeryintegerNoRows per page, 1 to 200. Defaults to 50.
StatusBodyDescription
200application/json, PagedResultAlertDeliveryViewSuccess.
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:manage.
404application/problem+json, ProblemDetailsNo resource matches that id.
500application/problem+json, ProblemDetailsNo client store in request context.

200 response body

FieldTypeDescription
itemsrequiredarray of AlertDeliveryView
items[].attemptsrequiredinteger
items[].channelNamerequiredstring
items[].channelPublicIdrequiredstring
items[].createdAtrequiredstring (date-time)
items[].lastErrorstring
items[].nextAttemptAtstring (date-time) or null
items[].publicIdrequiredstring
items[].purposerequiredstring
items[].sentAtstring (date-time) or null
items[].staterequiredstring
items[].tierrequiredinteger
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/alerts/<alertId>/deliveries?page=0&pageSize=0' \
-H 'X-CSRF-Token: <csrf-token>' \
-H 'Accept: application/json' \
-b 'outpost_console=<console-session>'

POSTalert:acktenant facehosteditmspremote

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

Source: [object Object]

Resolve alert

NameInTypeRequiredDescription
alertIdpathstringYesA uuid.

Required, sent as application/json.

FieldTypeDescription
notestring or null
StatusBodyDescription
200application/json, AlertViewSuccess.
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:ack.
404application/problem+json, ProblemDetailsNo resource matches that id.
500application/problem+json, ProblemDetailsNo client store in request context.

200 response body

FieldTypeDescription
acknowledgedAtstring (date-time) or null
acknowledgedBystring
acknowledgedNotestring
agentIdstring
categoryrequiredstring
createdAtrequiredstring (date-time)
detailrequiredstring
endpointHostnamestring
endpointRetiredrequiredboolean
endpointRetiredAtstring (date-time) or null
firstSeenAtrequiredstring (date-time)
lastSeenAtrequiredstring (date-time)
occurrencesrequiredinteger
publicIdrequiredstring
resolutionstring, one of cleared, manual, retired, stale
resolvedAtstring (date-time) or null
resolvedBystring
resolvedNotestring
severityrequiredstring
sourceKeyrequiredstring
staterequiredstring
titlerequiredstring
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/alerts/<alertId>/resolve' \
-H 'X-CSRF-Token: <csrf-token>' \
-H 'Accept: application/json' \
-H 'Content-Type: application/json' \
-b 'outpost_console=<console-session>' \
--data '{
"note": "string"
}'

GETalert:readtenant facehosteditmspremoteIdempotent

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

Source: [object Object]

alertCounts is the badge endpoint.

Polled every sixty seconds by every signed in console and every phone in the field, which is why it is one facet query rather than five list calls with the totals thrown away.

StatusBodyDescription
200application/json, AlertCountsViewSuccess.
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
acknowledgedrequiredinteger

int64.

generatedAtrequiredstring (date-time)
notificationCoveragerequiredboolean
openrequiredinteger

int64.

openCriticalrequiredinteger

int64.

openInforequiredinteger

int64.

openWarningrequiredinteger

int64.

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/alerts/counts' \
-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.