Skip to content

Depot racks

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

GETdiscovery:readtenant facehosteditmspremoteIdempotent

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

Source: [object Object]

List racks

NameInTypeRequiredDescription
pagequeryintegerNoOne-based page number. Defaults to 1.
pageSizequeryintegerNoRows per page, 1 to 200. Defaults to 50.
qquerystringNo
sitequerystringNo
StatusBodyDescription
200application/json, PagedResultRackViewSuccess.
400application/problem+json, ProblemDetailsOne or more validation errors occurred.
401application/problem+json, ProblemDetailsNo signed-in identity.
403application/problem+json, ProblemDetailsThe identity does not hold discovery:read.
500application/problem+json, ProblemDetailsNo client store in request context.
503application/problem+json, ProblemDetailsRacks are not available on this Depot.

200 response body

FieldTypeDescription
itemsrequiredarray of RackView
items[].createdAtrequiredstring (date-time)
items[].heightUrequiredinteger
items[].idrequiredstring
items[].namerequiredstring
items[].notesrequiredstring
items[].placementCountrequiredinteger
items[].placementsarray of RackPlacementView
items[].placements[].facerequiredstring
items[].placements[].heightUrequiredinteger
items[].placements[].idrequiredstring
items[].placements[].labelrequiredstring
items[].placements[].positionUrequiredinteger
items[].placements[].refIdrequiredstring
items[].placements[].refTyperequiredstring
items[].siteIdrequiredstring
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/racks?page=0&pageSize=0&q=<q>&site=<site>' \
-H 'X-CSRF-Token: <csrf-token>' \
-H 'Accept: application/json' \
-b 'outpost_console=<console-session>'

POSTnetwork_map:edittenant facehosteditmspremote

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

Source: [object Object]

Create rack

Required, sent as application/json.

FieldTypeDescription
heightUinteger or null
namestring or null
notesstring or null
siteIdstring or null
StatusBodyDescription
201application/json, RackViewCreated.
400application/problem+json, ProblemDetailsOne or more validation errors occurred.
401application/problem+json, ProblemDetailsNo signed-in identity.
403application/problem+json, ProblemDetailsThe identity does not hold network_map:edit.
404application/problem+json, ProblemDetailsNo site matches that id.
500application/problem+json, ProblemDetailsNo client store in request context.
503application/problem+json, ProblemDetailsRacks are not available on this Depot.

201 response body

FieldTypeDescription
createdAtrequiredstring (date-time)
heightUrequiredinteger
idrequiredstring
namerequiredstring
notesrequiredstring
placementCountrequiredinteger
placementsarray of RackPlacementView
placements[].facerequiredstring
placements[].heightUrequiredinteger
placements[].idrequiredstring
placements[].labelrequiredstring
placements[].positionUrequiredinteger
placements[].refIdrequiredstring
placements[].refTyperequiredstring
siteIdrequiredstring
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/racks' \
-H 'X-CSRF-Token: <csrf-token>' \
-H 'Accept: application/json' \
-H 'Content-Type: application/json' \
-b 'outpost_console=<console-session>' \
--data '{
"heightU": 0,
"name": "string",
"notes": "string",
"siteId": "string"
}'

GETdiscovery:readtenant facehosteditmspremoteIdempotent

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

Source: [object Object]

Get rack

NameInTypeRequiredDescription
rackIdpathstringYesA uuid.
StatusBodyDescription
200application/json, RackViewSuccess.
401application/problem+json, ProblemDetailsNo signed-in identity.
403application/problem+json, ProblemDetailsThe identity does not hold discovery:read.
404application/problem+json, ProblemDetailsNo resource matches that id.
500application/problem+json, ProblemDetailsNo client store in request context.
503application/problem+json, ProblemDetailsRacks are not available on this Depot.

200 response body

FieldTypeDescription
createdAtrequiredstring (date-time)
heightUrequiredinteger
idrequiredstring
namerequiredstring
notesrequiredstring
placementCountrequiredinteger
placementsarray of RackPlacementView
placements[].facerequiredstring
placements[].heightUrequiredinteger
placements[].idrequiredstring
placements[].labelrequiredstring
placements[].positionUrequiredinteger
placements[].refIdrequiredstring
placements[].refTyperequiredstring
siteIdrequiredstring
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/racks/<rackId>' \
-H 'X-CSRF-Token: <csrf-token>' \
-H 'Accept: application/json' \
-b 'outpost_console=<console-session>'

PATCHnetwork_map:edittenant facehosteditmspremoteIdempotent

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

Source: [object Object]

Patch rack

NameInTypeRequiredDescription
rackIdpathstringYesA uuid.

Required, sent as application/json.

FieldTypeDescription
heightUinteger or null
namestring or null
notesstring or null
siteIdstring or null
StatusBodyDescription
200application/json, RackViewSuccess.
400application/problem+json, ProblemDetailsOne or more validation errors occurred.
401application/problem+json, ProblemDetailsNo signed-in identity.
403application/problem+json, ProblemDetailsThe identity does not hold network_map:edit.
404application/problem+json, ProblemDetailsNo resource matches that id.
409application/problem+json, ProblemDetailsThe request conflicts with the current state.
500application/problem+json, ProblemDetailsNo client store in request context.
503application/problem+json, ProblemDetailsRacks are not available on this Depot.

200 response body

FieldTypeDescription
createdAtrequiredstring (date-time)
heightUrequiredinteger
idrequiredstring
namerequiredstring
notesrequiredstring
placementCountrequiredinteger
placementsarray of RackPlacementView
placements[].facerequiredstring
placements[].heightUrequiredinteger
placements[].idrequiredstring
placements[].labelrequiredstring
placements[].positionUrequiredinteger
placements[].refIdrequiredstring
placements[].refTyperequiredstring
siteIdrequiredstring
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 PATCH 'https://depot.example.com/api/v1/racks/<rackId>' \
-H 'X-CSRF-Token: <csrf-token>' \
-H 'Accept: application/json' \
-H 'Content-Type: application/json' \
-b 'outpost_console=<console-session>' \
--data '{
"heightU": 0,
"name": "string",
"notes": "string",
"siteId": "string"
}'

DELETEnetwork_map:edittenant facehosteditmspremoteIdempotent

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

Source: [object Object]

Delete rack

NameInTypeRequiredDescription
rackIdpathstringYesA uuid.
StatusBodyDescription
204NoneSuccess, with no body.
401application/problem+json, ProblemDetailsNo signed-in identity.
403application/problem+json, ProblemDetailsThe identity does not hold network_map:edit.
404application/problem+json, ProblemDetailsNo resource matches that id.
500application/problem+json, ProblemDetailsNo client store in request context.
503application/problem+json, ProblemDetailsRacks are not available on this Depot.
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/racks/<rackId>' \
-H 'X-CSRF-Token: <csrf-token>' \
-H 'Accept: application/json' \
-b 'outpost_console=<console-session>'

GETdiscovery:readtenant facehosteditmspremoteIdempotentdownloadNot fully resolved

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

What this page does not know
  • response

These are parts of the route the extractor could not read from the source. Everything else on this page came straight from it.

Source: [object Object]

exportRack downloads the rack’s elevations.

NameInTypeRequiredDescription
rackIdpathstringYesA uuid.
formatquerystringNo
StatusBodyDescription
200application/octet-stream, string (binary)Success. The body shape was not resolved; see x-outpost-unresolved.
400application/problem+json, ProblemDetailsOne or more validation errors occurred.
401application/problem+json, ProblemDetailsNo signed-in identity.
403application/problem+json, ProblemDetailsThe identity does not hold discovery:read.
404application/problem+json, ProblemDetailsNo resource matches that id.
500application/problem+json, ProblemDetailsNo client store in request context.
503application/problem+json, ProblemDetailsRacks are not available on this Depot.
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/racks/<rackId>/export?format=<format>' \
-H 'X-CSRF-Token: <csrf-token>' \
-H 'Accept: application/json' \
-b 'outpost_console=<console-session>'

PUTnetwork_map:edittenant facehosteditmspremoteIdempotent

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

Source: [object Object]

putRackPlacements replaces the rack’s placements with the list given.

NameInTypeRequiredDescription
rackIdpathstringYesA uuid.

Required, sent as application/json.

FieldTypeDescription
placementsrequiredarray of RackPlacementView
placements[].facerequiredstring
placements[].heightUrequiredinteger
placements[].idrequiredstring
placements[].labelrequiredstring
placements[].positionUrequiredinteger
placements[].refIdrequiredstring
placements[].refTyperequiredstring
StatusBodyDescription
200application/json, RackViewSuccess.
400application/problem+json, ProblemDetailsOne or more validation errors occurred.
401application/problem+json, ProblemDetailsNo signed-in identity.
403application/problem+json, ProblemDetailsThe identity does not hold network_map:edit.
404application/problem+json, ProblemDetailsNo resource matches that id.
409application/problem+json, ProblemDetailsThe request conflicts with the current state.
500application/problem+json, ProblemDetailsNo client store in request context.
503application/problem+json, ProblemDetailsRacks are not available on this Depot.

200 response body

FieldTypeDescription
createdAtrequiredstring (date-time)
heightUrequiredinteger
idrequiredstring
namerequiredstring
notesrequiredstring
placementCountrequiredinteger
placementsarray of RackPlacementView
placements[].facerequiredstring
placements[].heightUrequiredinteger
placements[].idrequiredstring
placements[].labelrequiredstring
placements[].positionUrequiredinteger
placements[].refIdrequiredstring
placements[].refTyperequiredstring
siteIdrequiredstring
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/racks/<rackId>/placements' \
-H 'X-CSRF-Token: <csrf-token>' \
-H 'Accept: application/json' \
-H 'Content-Type: application/json' \
-b 'outpost_console=<console-session>' \
--data '{
"placements": [
{
"face": "string",
"heightU": 0,
"id": "string",
"label": "string",
"positionU": 0,
"refId": "string",
"refType": "string"
}
]
}'

GETdiscovery:readtenant facehosteditmspremoteIdempotent

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

Source: [object Object]

findRackPlacements answers where devices are racked: for the map’s details panel (“Rack A, U12-13”).

NameInTypeRequiredDescription
pagequeryintegerNoOne-based page number. Defaults to 1.
pageSizequeryintegerNoRows per page, 1 to 200. Defaults to 50.
refIdquerystringNo
refTypequerystringNo
StatusBodyDescription
200application/json, PagedResultRackPlacementFoundViewSuccess.
400application/problem+json, ProblemDetailsOne or more validation errors occurred.
401application/problem+json, ProblemDetailsNo signed-in identity.
403application/problem+json, ProblemDetailsThe identity does not hold discovery:read.
500application/problem+json, ProblemDetailsNo client store in request context.
503application/problem+json, ProblemDetailsRacks are not available on this Depot.

200 response body

FieldTypeDescription
itemsrequiredarray of RackPlacementFoundView
items[].facerequiredstring
items[].heightUrequiredinteger
items[].labelrequiredstring
items[].placementIdrequiredstring
items[].positionUrequiredinteger
items[].rackIdrequiredstring
items[].rackNamerequiredstring
items[].refIdrequiredstring
items[].refTyperequiredstring
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/racks/placements?page=0&pageSize=0&refId=<refId>&refType=<refType>' \
-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.