Skip to content

Depot profile

Is called from Mount.

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

GETpublic facehosteditmspremoteIdempotentNot fully resolved

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]

getProfile answers the caller’s own document.

AN ACCOUNT THAT HAS NEVER SAVED ONE GETS 200 AND {}, NOT 404. Never having saved is the ordinary state of almost every account, and 404 would make the first screen of this feature an error path: the console would have to treat a missing document as a success case anyway, and every HTTP layer between here and it would log a not-found that is not one.

The document is written back BYTE FOR BYTE as it was stored, not re-encoded. The server does not understand it, so it is in no position to normalise it, and a round trip through map[string]any would silently reorder keys and turn every integer into a float.

StatusBodyDescription
200NoneSuccess. The body shape was not resolved; see x-outpost-unresolved.
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/console/me/profile' \
-H 'X-CSRF-Token: <csrf-token>' \
-b 'outpost_console=<console-session>'

PUTpublic facehosteditmspremoteIdempotent

Source: [object Object]

setProfile replaces the document wholesale.

A PUT rather than a PATCH, and no merge: the console holds the whole document already, it is the only writer, and a server-side merge of a schema the server does not know would have to guess what a missing key means. Sending {} is how the console clears it, which is why an empty object is a valid save rather than a refusal.

Required, sent as application/json.

The body is any.

StatusBodyDescription
204NoneSuccess, with no body.
400application/problem+json, ProblemDetailsThe request body is not acceptable.
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/console/me/profile' \
-H 'X-CSRF-Token: <csrf-token>' \
-H 'Accept: application/json' \
-H 'Content-Type: application/json' \
-b 'outpost_console=<console-session>' \
--data '"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.