Skip to content

Depot endpointfields

Registers the definition admin routes and the per-endpoint value routes 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.

GETscript:readtenant facehosteditmspremoteIdempotent

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

Source: [object Object]

List endpoint field defs

NameInTypeRequiredDescription
dirquerystring, one of asc, descNoSort direction.
kindquerystring, one of checkbox, date, number, select, textNoComma-separated set. An unrecognised value is refused.
pagequeryintegerNoOne-based page number. Defaults to 1.
pageSizequeryintegerNoRows per page, 1 to 200. Defaults to 50.
qquerystringNoFree-text search term.
sortquerystring, one of created, key, label, order, updatedNoSort key.
StatusBodyDescription
200application/json, PagedResultEndpointFieldDefViewSuccess.
400application/problem+json, ProblemDetailsOne or more validation errors occurred.
401application/problem+json, ProblemDetailsNo signed-in identity.
403application/problem+json, ProblemDetailsThe identity does not hold script:read.
500application/problem+json, ProblemDetailsNo client store in request context.

200 response body

FieldTypeDescription
itemsrequiredarray of EndpointFieldDefView
items[].createdAtrequiredstring (date-time)
items[].descriptionrequiredstring
items[].keyrequiredstring
items[].kindrequiredstring
items[].labelrequiredstring
items[].optionsrequiredarray of string
items[].publicIdrequiredstring
items[].showInListrequiredboolean
items[].sortOrderrequiredinteger
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/endpoint-fields?dir=asc&kind=checkbox&page=0&pageSize=0&q=<q>&sort=created' \
-H 'X-CSRF-Token: <csrf-token>' \
-H 'Accept: application/json' \
-b 'outpost_console=<console-session>'

POSTscript:managetenant facehosteditmspremote

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

Source: [object Object]

Create endpoint field def

Required, sent as application/json.

FieldTypeDescription
descriptionstring or null
keystring or null
kindstring or null
labelstring or null
optionsrequiredarray of string
showInListboolean or null
sortOrderinteger or null
StatusBodyDescription
201application/json, EndpointFieldDefViewCreated.
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 script:manage.
409application/problem+json, ProblemDetailsThe request conflicts with the current state.
500application/problem+json, ProblemDetailsNo client store in request context.

201 response body

FieldTypeDescription
createdAtrequiredstring (date-time)
descriptionrequiredstring
keyrequiredstring
kindrequiredstring
labelrequiredstring
optionsrequiredarray of string
publicIdrequiredstring
showInListrequiredboolean
sortOrderrequiredinteger
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/endpoint-fields' \
-H 'X-CSRF-Token: <csrf-token>' \
-H 'Accept: application/json' \
-H 'Content-Type: application/json' \
-b 'outpost_console=<console-session>' \
--data '{
"description": "string",
"key": "string",
"kind": "string",
"label": "string",
"options": [
"string"
],
"showInList": false,
"sortOrder": 0
}'

PUTscript:managetenant facehosteditmspremoteIdempotent

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

Source: [object Object]

Update endpoint field def

NameInTypeRequiredDescription
fieldIdpathstringYesA uuid.

Required, sent as application/json.

FieldTypeDescription
descriptionstring or null
keystring or null
kindstring or null
labelstring or null
optionsrequiredarray of string
showInListboolean or null
sortOrderinteger or null
StatusBodyDescription
200application/json, EndpointFieldDefViewSuccess.
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 script:manage.
404application/problem+json, ProblemDetailsNo resource matches that id.
500application/problem+json, ProblemDetailsNo client store in request context.

200 response body

FieldTypeDescription
createdAtrequiredstring (date-time)
descriptionrequiredstring
keyrequiredstring
kindrequiredstring
labelrequiredstring
optionsrequiredarray of string
publicIdrequiredstring
showInListrequiredboolean
sortOrderrequiredinteger
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/endpoint-fields/<fieldId>' \
-H 'X-CSRF-Token: <csrf-token>' \
-H 'Accept: application/json' \
-H 'Content-Type: application/json' \
-b 'outpost_console=<console-session>' \
--data '{
"description": "string",
"key": "string",
"kind": "string",
"label": "string",
"options": [
"string"
],
"showInList": false,
"sortOrder": 0
}'

DELETEscript:managetenant facehosteditmspremoteIdempotent

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

Source: [object Object]

Delete endpoint field def

NameInTypeRequiredDescription
fieldIdpathstringYesA uuid.
StatusBodyDescription
204NoneSuccess, with no body.
401application/problem+json, ProblemDetailsNo signed-in identity.
403application/problem+json, ProblemDetailsThe identity does not hold script: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/endpoint-fields/<fieldId>' \
-H 'X-CSRF-Token: <csrf-token>' \
-H 'Accept: application/json' \
-b 'outpost_console=<console-session>'

GETendpoint:readtenant facehosteditmspremoteIdempotent

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

Source: [object Object]

Get endpoint field values

NameInTypeRequiredDescription
agentIDpathstringYesA uuid.
StatusBodyDescription
200application/json, EndpointFieldValuesViewSuccess.
400application/problem+json, ProblemDetailsOne or more validation errors occurred.
401application/problem+json, ProblemDetailsNo signed-in identity.
403application/problem+json, ProblemDetailsThe identity does not hold endpoint:read.
404application/problem+json, ProblemDetailsNo resource matches that id.
500application/problem+json, ProblemDetailsNo client store in request context.

200 response body

FieldTypeDescription
itemsrequiredarray of EndpointFieldValueView
items[].collectedAtrequiredstring (date-time)
items[].fieldKeyrequiredstring
items[].fieldPublicIdrequiredstring
items[].setByrequiredstring
items[].sourceCommandIdrequiredstring
items[].updatedAtrequiredstring (date-time)
items[].valuerequiredstring
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/endpoints/<agentID>/fields' \
-H 'X-CSRF-Token: <csrf-token>' \
-H 'Accept: application/json' \
-b 'outpost_console=<console-session>'

PUTendpoint:writetenant facehosteditmspremoteIdempotent

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

Source: [object Object]

Put endpoint field values

NameInTypeRequiredDescription
agentIDpathstringYesA uuid.

Required, sent as application/json.

FieldTypeDescription
valuesrequiredobject
StatusBodyDescription
200application/json, EndpointFieldValuesViewSuccess.
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 endpoint:write.
404application/problem+json, ProblemDetailsNo resource matches that id.
500application/problem+json, ProblemDetailsNo client store in request context.

200 response body

FieldTypeDescription
itemsrequiredarray of EndpointFieldValueView
items[].collectedAtrequiredstring (date-time)
items[].fieldKeyrequiredstring
items[].fieldPublicIdrequiredstring
items[].setByrequiredstring
items[].sourceCommandIdrequiredstring
items[].updatedAtrequiredstring (date-time)
items[].valuerequiredstring
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/endpoints/<agentID>/fields' \
-H 'X-CSRF-Token: <csrf-token>' \
-H 'Accept: application/json' \
-H 'Content-Type: application/json' \
-b 'outpost_console=<console-session>' \
--data '{
"values": {
"key": "string"
}
}'

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.