Skip to content

Depot msp desk

Registers the MSP desk-default routes on the practice face’s service-desk 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.

GETticket:managemsp facemspIdempotent

Source: [object Object]

listMspContactTags lists the MSP’s contact tag definitions by sort order, then label.

StatusBodyDescription
200application/json, ContactTagListViewSuccess.
400application/problem+json, ProblemDetailsOne or more validation errors occurred.
401application/problem+json, ProblemDetailsNo signed-in identity.
403application/problem+json, ProblemDetailsThe identity does not hold ticket:manage.
500application/problem+json, ProblemDetailsThe request failed.
503application/problem+json, ProblemDetailsThe MSP desk defaults are not available here.

200 response body

FieldTypeDescription
itemsrequiredarray of ContactTagView
items[].alertOnTicketsrequiredboolean
items[].coderequiredstring
items[].colorrequiredstring
items[].descriptionrequiredstring
items[].isSystemrequiredboolean
items[].labelrequiredstring
items[].singleHolderrequiredboolean
items[].sortOrderrequiredinteger
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/msp/contact-tags' \
-H 'X-CSRF-Token: <csrf-token>' \
-H 'Accept: application/json' \
-b 'outpost_console=<console-session>'

POSTticket:managemsp facemsp

Source: [object Object]

createMspContactTag adds a contact tag definition and copies it to every client.

Required, sent as application/json.

FieldTypeDescription
alertOnTicketsboolean or null
codestring or null
colorstring or null
descriptionstring or null
labelstring or null
singleHolderboolean or null
sortOrderinteger or null
StatusBodyDescription
201application/json, ContactTagViewCreated.
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 ticket:manage.
500application/problem+json, ProblemDetailsThe request failed.
503application/problem+json, ProblemDetailsThe MSP desk defaults are not available here.

201 response body

FieldTypeDescription
alertOnTicketsrequiredboolean
coderequiredstring
colorrequiredstring
descriptionrequiredstring
isSystemrequiredboolean
labelrequiredstring
singleHolderrequiredboolean
sortOrderrequiredinteger
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/msp/contact-tags' \
-H 'X-CSRF-Token: <csrf-token>' \
-H 'Accept: application/json' \
-H 'Content-Type: application/json' \
-b 'outpost_console=<console-session>' \
--data '{
"alertOnTickets": false,
"code": "string",
"color": "string",
"description": "string",
"label": "string",
"singleHolder": false,
"sortOrder": 0
}'

PATCHticket:managemsp facemsp

Source: [object Object]

patchMspContactTag changes a contact tag definition.

A system tag’s label, description and color can change; its single-holder rule cannot.

NameInTypeRequiredDescription
codepathstringYes

Required, sent as application/json.

FieldTypeDescription
alertOnTicketsboolean or null
codestring or null
colorstring or null
descriptionstring or null
labelstring or null
singleHolderboolean or null
sortOrderinteger or null
StatusBodyDescription
200application/json, ContactTagViewSuccess.
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 ticket:manage.
404application/problem+json, ProblemDetailsNo resource matches.
500application/problem+json, ProblemDetailsThe request failed.
503application/problem+json, ProblemDetailsThe MSP desk defaults are not available here.

200 response body

FieldTypeDescription
alertOnTicketsrequiredboolean
coderequiredstring
colorrequiredstring
descriptionrequiredstring
isSystemrequiredboolean
labelrequiredstring
singleHolderrequiredboolean
sortOrderrequiredinteger
Terminal window
# Sign in first. outpost_console is a session cookie, so send it with every request.
curl -X PATCH 'https://depot.example.com/api/v1/msp/contact-tags/<code>' \
-H 'X-CSRF-Token: <csrf-token>' \
-H 'Accept: application/json' \
-H 'Content-Type: application/json' \
-b 'outpost_console=<console-session>' \
--data '{
"alertOnTickets": false,
"code": "string",
"color": "string",
"description": "string",
"label": "string",
"singleHolder": false,
"sortOrder": 0
}'

DELETEticket:managemsp facemspIdempotent

Source: [object Object]

deleteMspContactTag removes a contact tag definition; every client loses its assignments on the next sync.

A built-in tag cannot be deleted.

NameInTypeRequiredDescription
codepathstringYes
StatusBodyDescription
204NoneSuccess, with no body.
401application/problem+json, ProblemDetailsNo signed-in identity.
403application/problem+json, ProblemDetailsThe identity does not hold ticket:manage.
404application/problem+json, ProblemDetailsNo resource matches.
500application/problem+json, ProblemDetailsThe request failed.
503application/problem+json, ProblemDetailsThe MSP desk defaults are not available here.
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/msp/contact-tags/<code>' \
-H 'X-CSRF-Token: <csrf-token>' \
-H 'Accept: application/json' \
-b 'outpost_console=<console-session>'

GETticket:managemsp facemspIdempotent

Source: [object Object]

getMspDesk reads the whole MSP desk set and its version.

StatusBodyDescription
200application/json, MspDeskViewSuccess.
400application/problem+json, ProblemDetailsOne or more validation errors occurred.
401application/problem+json, ProblemDetailsNo signed-in identity.
403application/problem+json, ProblemDetailsThe identity does not hold ticket:manage.
500application/problem+json, ProblemDetailsThe request failed.
503application/problem+json, ProblemDetailsThe MSP desk defaults are not available here.

200 response body

FieldTypeDescription
categoriesrequiredarray of MspDeskCategoryView
categories[].coderequiredstring
categories[].descriptionrequiredstring
categories[].isSystemrequiredboolean
categories[].namerequiredstring
categories[].publicIdrequiredstring
categories[].sortOrderrequiredinteger
categories[].updatedAtstring (date-time) or null
notificationTemplatesrequiredarray of MspDeskNotificationTemplateView
notificationTemplates[].bodyrequiredstring
notificationTemplates[].enabledrequiredboolean
notificationTemplates[].eventrequiredstring
notificationTemplates[].subjectrequiredstring
notificationTemplates[].updatedAtrequiredstring (date-time)
portalBaseUrlrequiredstring
sourceDefaultsrequiredarray of MspDeskSourceDefaultView
sourceDefaults[].categoryrequiredstring
sourceDefaults[].sourcerequiredstring
sourceDefaults[].subcategorystring or null
sourceDefaults[].updatedAtrequiredstring (date-time)
statusesrequiredarray of MspDeskStatusView
statuses[].categoryrequiredstring
statuses[].coderequiredstring
statuses[].isSystemrequiredboolean
statuses[].namerequiredstring
statuses[].publicIdrequiredstring
statuses[].sortOrderrequiredinteger
statuses[].stopsSlaClockrequiredboolean
statuses[].updatedAtstring (date-time) or null
subcategoriesrequiredarray of MspDeskSubcategoryView
subcategories[].categoryrequiredstring
subcategories[].coderequiredstring
subcategories[].descriptionrequiredstring
subcategories[].namerequiredstring
subcategories[].publicIdrequiredstring
subcategories[].sortOrderrequiredinteger
subcategories[].updatedAtrequiredstring (date-time)
versionrequiredinteger

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/msp/desk' \
-H 'X-CSRF-Token: <csrf-token>' \
-H 'Accept: application/json' \
-b 'outpost_console=<console-session>'

POSTticket:managemsp facemsp

Source: [object Object]

createMspDeskCategory adds an MSP default category.

Required, sent as application/json.

FieldTypeDescription
codestring or null
descriptionstring or null
namestring or null
sortOrderinteger or null
StatusBodyDescription
201application/json, MspDeskCategoryViewCreated.
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 ticket:manage.
404application/problem+json, ProblemDetailsNo resource matches.
422application/problem+json, ProblemDetailsThat code belongs to a built-in category.
500application/problem+json, ProblemDetailsThe request failed.
503application/problem+json, ProblemDetailsThe MSP desk defaults are not available here.

201 response body

FieldTypeDescription
coderequiredstring
descriptionrequiredstring
isSystemrequiredboolean
namerequiredstring
publicIdrequiredstring
sortOrderrequiredinteger
updatedAtstring (date-time) or null
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/msp/desk/categories' \
-H 'X-CSRF-Token: <csrf-token>' \
-H 'Accept: application/json' \
-H 'Content-Type: application/json' \
-b 'outpost_console=<console-session>' \
--data '{
"code": "string",
"description": "string",
"name": "string",
"sortOrder": 0
}'

PATCH /api/v1/msp/desk/categories/{categoryID}

Section titled “PATCH /api/v1/msp/desk/categories/{categoryID}”

PATCHticket:managemsp facemsp

Source: [object Object]

patchMspDeskCategory changes an MSP default category.

NameInTypeRequiredDescription
categoryIDpathstringYesA uuid.

Required, sent as application/json.

FieldTypeDescription
codestring or null
descriptionstring or null
namestring or null
sortOrderinteger or null
StatusBodyDescription
200application/json, MspDeskCategoryViewSuccess.
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 ticket:manage.
404application/problem+json, ProblemDetailsNo resource matches that id.
500application/problem+json, ProblemDetailsThe request failed.
503application/problem+json, ProblemDetailsThe MSP desk defaults are not available here.

200 response body

FieldTypeDescription
coderequiredstring
descriptionrequiredstring
isSystemrequiredboolean
namerequiredstring
publicIdrequiredstring
sortOrderrequiredinteger
updatedAtstring (date-time) or null
Terminal window
# Sign in first. outpost_console is a session cookie, so send it with every request.
curl -X PATCH 'https://depot.example.com/api/v1/msp/desk/categories/<categoryID>' \
-H 'X-CSRF-Token: <csrf-token>' \
-H 'Accept: application/json' \
-H 'Content-Type: application/json' \
-b 'outpost_console=<console-session>' \
--data '{
"code": "string",
"description": "string",
"name": "string",
"sortOrder": 0
}'

DELETE /api/v1/msp/desk/categories/{categoryID}

Section titled “DELETE /api/v1/msp/desk/categories/{categoryID}”

DELETEticket:managemsp facemspIdempotent

Source: [object Object]

deleteMspDeskCategory removes an MSP default category and its subcategories; 409 while open tickets in a synced client carry it.

NameInTypeRequiredDescription
categoryIDpathstringYesA uuid.
StatusBodyDescription
204NoneSuccess, with no body.
400application/problem+json, ProblemDetailsOne or more validation errors occurred.
401application/problem+json, ProblemDetailsNo signed-in identity.
403application/problem+json, ProblemDetailsThe identity does not hold ticket:manage.
404application/problem+json, ProblemDetailsNo resource matches that id.
409application/problem+json, ProblemDetailsThe request conflicts with the current state.
500application/problem+json, ProblemDetailsThe request failed.
503application/problem+json, ProblemDetailsThe MSP desk defaults are not available here.
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/msp/desk/categories/<categoryID>' \
-H 'X-CSRF-Token: <csrf-token>' \
-H 'Accept: application/json' \
-b 'outpost_console=<console-session>'

GETticket:managemsp facemspIdempotent

Source: [object Object]

listMspDeskClients lists each client’s sync state against the MSP desk version.

NameInTypeRequiredDescription
pagequeryintegerNoOne-based page number. Defaults to 1.
pageSizequeryintegerNoRows per page, 1 to 200. Defaults to 50.
StatusBodyDescription
200application/json, PagedResultMspDeskClientStateViewSuccess.
400application/problem+json, ProblemDetailsOne or more validation errors occurred.
401application/problem+json, ProblemDetailsNo signed-in identity.
403application/problem+json, ProblemDetailsThe identity does not hold ticket:manage.
500application/problem+json, ProblemDetailsThe request failed.
503application/problem+json, ProblemDetailsThe MSP desk defaults are not available here.

200 response body

FieldTypeDescription
itemsrequiredarray of MspDeskClientStateView
items[].appliedMspVersionrequiredinteger

int64.

items[].clientIdrequiredstring
items[].clientNamerequiredstring
items[].overriddenrequiredarray of string
items[].reachablerequiredboolean
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/msp/desk/clients?page=0&pageSize=0' \
-H 'X-CSRF-Token: <csrf-token>' \
-H 'Accept: application/json' \
-b 'outpost_console=<console-session>'

PUT /api/v1/msp/desk/notification-templates/{event}

Section titled “PUT /api/v1/msp/desk/notification-templates/{event}”

PUTticket:managemsp facemspIdempotent

Source: [object Object]

putMspDeskNotificationTemplate sets the MSP version of one event’s email.

NameInTypeRequiredDescription
eventpathstringYes

Required, sent as application/json.

FieldTypeDescription
bodystring or null
enabledboolean or null
subjectstring or null
StatusBodyDescription
200application/json, MspDeskNotificationTemplateViewSuccess.
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 ticket:manage.
404application/problem+json, ProblemDetailsNo notification event has that name.
500application/problem+json, ProblemDetailsThe request failed.
503application/problem+json, ProblemDetailsThe MSP desk defaults are not available here.

200 response body

FieldTypeDescription
bodyrequiredstring
enabledrequiredboolean
eventrequiredstring
subjectrequiredstring
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/msp/desk/notification-templates/<event>' \
-H 'X-CSRF-Token: <csrf-token>' \
-H 'Accept: application/json' \
-H 'Content-Type: application/json' \
-b 'outpost_console=<console-session>' \
--data '{
"body": "string",
"enabled": false,
"subject": "string"
}'

DELETE /api/v1/msp/desk/notification-templates/{event}

Section titled “DELETE /api/v1/msp/desk/notification-templates/{event}”

DELETEticket:managemsp facemspIdempotent

Source: [object Object]

deleteMspDeskNotificationTemplate drops the MSP version of one event’s email; synced clients go back to the product’s text.

NameInTypeRequiredDescription
eventpathstringYes
StatusBodyDescription
204NoneSuccess, with no body.
401application/problem+json, ProblemDetailsNo signed-in identity.
403application/problem+json, ProblemDetailsThe identity does not hold ticket:manage.
404application/problem+json, ProblemDetailsNo notification event has that name.
500application/problem+json, ProblemDetailsThe request failed.
503application/problem+json, ProblemDetailsThe MSP desk defaults are not available here.
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/msp/desk/notification-templates/<event>' \
-H 'X-CSRF-Token: <csrf-token>' \
-H 'Accept: application/json' \
-b 'outpost_console=<console-session>'

POST /api/v1/msp/desk/notification-templates/{event}/preview

Section titled “POST /api/v1/msp/desk/notification-templates/{event}/preview”

POSTticket:managemsp facemsp

Source: [object Object]

previewMspDeskNotificationTemplate renders an unsaved MSP template against a sample ticket.

NameInTypeRequiredDescription
eventpathstringYes

Required, sent as application/json.

FieldTypeDescription
bodyrequiredstring
subjectrequiredstring
StatusBodyDescription
200application/json, TicketNotificationPreviewViewSuccess.
400application/problem+json, ProblemDetailsOne or more validation errors occurred.
401application/problem+json, ProblemDetailsNo signed-in identity.
403application/problem+json, ProblemDetailsThe identity does not hold ticket:manage.
404application/problem+json, ProblemDetailsNo notification event has that name.
500application/problem+json, ProblemDetailsThe request failed.
503application/problem+json, ProblemDetailsThe MSP desk defaults are not available here.

200 response body

FieldTypeDescription
htmlrequiredstring
subjectrequiredstring
textrequiredstring
warningsrequiredarray of string
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/msp/desk/notification-templates/<event>/preview' \
-H 'X-CSRF-Token: <csrf-token>' \
-H 'Accept: application/json' \
-H 'Content-Type: application/json' \
-b 'outpost_console=<console-session>' \
--data '{
"body": "string",
"subject": "string"
}'

PATCHticket:managemsp facemsp

Source: [object Object]

patchMspDeskSettings changes the requester portal URL.

Required, sent as application/json.

FieldTypeDescription
portalBaseUrlstring or null
StatusBodyDescription
200application/json, MspDeskSettingsViewSuccess.
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 ticket:manage.
404application/problem+json, ProblemDetailsNo resource matches.
500application/problem+json, ProblemDetailsThe request failed.
503application/problem+json, ProblemDetailsThe MSP desk defaults are not available here.

200 response body

FieldTypeDescription
portalBaseUrlrequiredstring
updatedAtrequiredstring (date-time)
versionrequiredinteger

int64.

Terminal window
# Sign in first. outpost_console is a session cookie, so send it with every request.
curl -X PATCH 'https://depot.example.com/api/v1/msp/desk/settings' \
-H 'X-CSRF-Token: <csrf-token>' \
-H 'Accept: application/json' \
-H 'Content-Type: application/json' \
-b 'outpost_console=<console-session>' \
--data '{
"portalBaseUrl": "string"
}'

PUT /api/v1/msp/desk/source-defaults/{source}

Section titled “PUT /api/v1/msp/desk/source-defaults/{source}”

PUTticket:managemsp facemspIdempotent

Source: [object Object]

putMspDeskSourceDefault sets the MSP default category for one auto-ticket source.

NameInTypeRequiredDescription
sourcepathstringYes

Required, sent as application/json.

FieldTypeDescription
categorystring or null
subcategorystring or null
StatusBodyDescription
200application/json, MspDeskSourceDefaultViewSuccess.
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 ticket:manage.
404application/problem+json, ProblemDetailsNo auto-ticket source has that name.
500application/problem+json, ProblemDetailsThe request failed.
503application/problem+json, ProblemDetailsThe MSP desk defaults are not available here.

200 response body

FieldTypeDescription
categoryrequiredstring
sourcerequiredstring
subcategorystring or null
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/msp/desk/source-defaults/<source>' \
-H 'X-CSRF-Token: <csrf-token>' \
-H 'Accept: application/json' \
-H 'Content-Type: application/json' \
-b 'outpost_console=<console-session>' \
--data '{
"category": "string",
"subcategory": "string"
}'

DELETE /api/v1/msp/desk/source-defaults/{source}

Section titled “DELETE /api/v1/msp/desk/source-defaults/{source}”

DELETEticket:managemsp facemspIdempotent

Source: [object Object]

deleteMspDeskSourceDefault drops the MSP default for one auto-ticket source; synced clients go back to “incident”.

NameInTypeRequiredDescription
sourcepathstringYes
StatusBodyDescription
204NoneSuccess, with no body.
401application/problem+json, ProblemDetailsNo signed-in identity.
403application/problem+json, ProblemDetailsThe identity does not hold ticket:manage.
404application/problem+json, ProblemDetailsNo auto-ticket source has that name.
500application/problem+json, ProblemDetailsThe request failed.
503application/problem+json, ProblemDetailsThe MSP desk defaults are not available here.
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/msp/desk/source-defaults/<source>' \
-H 'X-CSRF-Token: <csrf-token>' \
-H 'Accept: application/json' \
-b 'outpost_console=<console-session>'

POSTticket:managemsp facemsp

Source: [object Object]

createMspDeskStatus adds an MSP default status.

Required, sent as application/json.

FieldTypeDescription
categorystring or null
codestring or null
namestring or null
sortOrderinteger or null
stopsSlaClockboolean or null
StatusBodyDescription
201application/json, MspDeskStatusViewCreated.
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 ticket:manage.
404application/problem+json, ProblemDetailsNo resource matches.
422application/problem+json, ProblemDetailsThat code belongs to a built-in status.
500application/problem+json, ProblemDetailsThe request failed.
503application/problem+json, ProblemDetailsThe MSP desk defaults are not available here.

201 response body

FieldTypeDescription
categoryrequiredstring
coderequiredstring
isSystemrequiredboolean
namerequiredstring
publicIdrequiredstring
sortOrderrequiredinteger
stopsSlaClockrequiredboolean
updatedAtstring (date-time) or null
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/msp/desk/statuses' \
-H 'X-CSRF-Token: <csrf-token>' \
-H 'Accept: application/json' \
-H 'Content-Type: application/json' \
-b 'outpost_console=<console-session>' \
--data '{
"category": "string",
"code": "string",
"name": "string",
"sortOrder": 0,
"stopsSlaClock": false
}'

PATCH /api/v1/msp/desk/statuses/{statusID}

Section titled “PATCH /api/v1/msp/desk/statuses/{statusID}”

PATCHticket:managemsp facemsp

Source: [object Object]

patchMspDeskStatus changes an MSP default status.

NameInTypeRequiredDescription
statusIDpathstringYesA uuid.

Required, sent as application/json.

FieldTypeDescription
categorystring or null
codestring or null
namestring or null
sortOrderinteger or null
stopsSlaClockboolean or null
StatusBodyDescription
200application/json, MspDeskStatusViewSuccess.
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 ticket:manage.
404application/problem+json, ProblemDetailsNo resource matches that id.
500application/problem+json, ProblemDetailsThe request failed.
503application/problem+json, ProblemDetailsThe MSP desk defaults are not available here.

200 response body

FieldTypeDescription
categoryrequiredstring
coderequiredstring
isSystemrequiredboolean
namerequiredstring
publicIdrequiredstring
sortOrderrequiredinteger
stopsSlaClockrequiredboolean
updatedAtstring (date-time) or null
Terminal window
# Sign in first. outpost_console is a session cookie, so send it with every request.
curl -X PATCH 'https://depot.example.com/api/v1/msp/desk/statuses/<statusID>' \
-H 'X-CSRF-Token: <csrf-token>' \
-H 'Accept: application/json' \
-H 'Content-Type: application/json' \
-b 'outpost_console=<console-session>' \
--data '{
"category": "string",
"code": "string",
"name": "string",
"sortOrder": 0,
"stopsSlaClock": false
}'

DELETE /api/v1/msp/desk/statuses/{statusID}

Section titled “DELETE /api/v1/msp/desk/statuses/{statusID}”

DELETEticket:managemsp facemspIdempotent

Source: [object Object]

deleteMspDeskStatus removes an MSP default status; 409 while open tickets in a synced client are in it.

NameInTypeRequiredDescription
statusIDpathstringYesA uuid.
StatusBodyDescription
204NoneSuccess, with no body.
400application/problem+json, ProblemDetailsOne or more validation errors occurred.
401application/problem+json, ProblemDetailsNo signed-in identity.
403application/problem+json, ProblemDetailsThe identity does not hold ticket:manage.
404application/problem+json, ProblemDetailsNo resource matches that id.
409application/problem+json, ProblemDetailsThe request conflicts with the current state.
500application/problem+json, ProblemDetailsThe request failed.
503application/problem+json, ProblemDetailsThe MSP desk defaults are not available here.
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/msp/desk/statuses/<statusID>' \
-H 'X-CSRF-Token: <csrf-token>' \
-H 'Accept: application/json' \
-b 'outpost_console=<console-session>'

POSTticket:managemsp facemsp

Source: [object Object]

createMspDeskSubcategory adds an MSP default subcategory, of a built-in or MSP category.

Required, sent as application/json.

FieldTypeDescription
categorystring or null
codestring or null
descriptionstring or null
namestring or null
sortOrderinteger or null
StatusBodyDescription
201application/json, MspDeskSubcategoryViewCreated.
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 ticket:manage.
404application/problem+json, ProblemDetailsNo resource matches.
500application/problem+json, ProblemDetailsThe request failed.
503application/problem+json, ProblemDetailsThe MSP desk defaults are not available here.

201 response body

FieldTypeDescription
categoryrequiredstring
coderequiredstring
descriptionrequiredstring
namerequiredstring
publicIdrequiredstring
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/msp/desk/subcategories' \
-H 'X-CSRF-Token: <csrf-token>' \
-H 'Accept: application/json' \
-H 'Content-Type: application/json' \
-b 'outpost_console=<console-session>' \
--data '{
"category": "string",
"code": "string",
"description": "string",
"name": "string",
"sortOrder": 0
}'

PATCH /api/v1/msp/desk/subcategories/{subcategoryID}

Section titled “PATCH /api/v1/msp/desk/subcategories/{subcategoryID}”

PATCHticket:managemsp facemsp

Source: [object Object]

patchMspDeskSubcategory changes an MSP default subcategory.

NameInTypeRequiredDescription
subcategoryIDpathstringYesA uuid.

Required, sent as application/json.

FieldTypeDescription
categorystring or null
codestring or null
descriptionstring or null
namestring or null
sortOrderinteger or null
StatusBodyDescription
200application/json, MspDeskSubcategoryViewSuccess.
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 ticket:manage.
404application/problem+json, ProblemDetailsNo resource matches that id.
500application/problem+json, ProblemDetailsThe request failed.
503application/problem+json, ProblemDetailsThe MSP desk defaults are not available here.

200 response body

FieldTypeDescription
categoryrequiredstring
coderequiredstring
descriptionrequiredstring
namerequiredstring
publicIdrequiredstring
sortOrderrequiredinteger
updatedAtrequiredstring (date-time)
Terminal window
# Sign in first. outpost_console is a session cookie, so send it with every request.
curl -X PATCH 'https://depot.example.com/api/v1/msp/desk/subcategories/<subcategoryID>' \
-H 'X-CSRF-Token: <csrf-token>' \
-H 'Accept: application/json' \
-H 'Content-Type: application/json' \
-b 'outpost_console=<console-session>' \
--data '{
"category": "string",
"code": "string",
"description": "string",
"name": "string",
"sortOrder": 0
}'

DELETE /api/v1/msp/desk/subcategories/{subcategoryID}

Section titled “DELETE /api/v1/msp/desk/subcategories/{subcategoryID}”

DELETEticket:managemsp facemspIdempotent

Source: [object Object]

deleteMspDeskSubcategory removes an MSP default subcategory; 409 while open tickets in a synced client carry it.

NameInTypeRequiredDescription
subcategoryIDpathstringYesA uuid.
StatusBodyDescription
204NoneSuccess, with no body.
400application/problem+json, ProblemDetailsOne or more validation errors occurred.
401application/problem+json, ProblemDetailsNo signed-in identity.
403application/problem+json, ProblemDetailsThe identity does not hold ticket:manage.
404application/problem+json, ProblemDetailsNo resource matches that id.
409application/problem+json, ProblemDetailsThe request conflicts with the current state.
500application/problem+json, ProblemDetailsThe request failed.
503application/problem+json, ProblemDetailsThe MSP desk defaults are not available here.
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/msp/desk/subcategories/<subcategoryID>' \
-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.