Replace the caller's desktop home layout
Overwrites the caller's saved home dashboard widget layout for this workspace. Requires `workspace:read`. This is a full replacement rather than a patch, so sending the same layout twice is a no-op.
apiKeyAuthorizationBearer <snoze_sk_…>Workspace API key created in Workspace settings → API keys. Scopes on the key bound what it can read and write.
workspaceId*stringapplication/json- body
widgets*array<>Success
application/json- response
data*curl -X PUT 'https://api.snoze.dev/v1/workspaces/string/preferences/home-layout' \ -H 'Content-Type: application/json' \ -d '{ "widgets": [ { "id": "string", "kind": "string", "x": 0, "y": 0, "w": 0, "h": 0 } ]}'{ "data": { "homeLayout": { "widgets": [ { "id": "string", "kind": "string", "x": 0, "y": 0, "w": 0, "h": 0, "config": {} } ] } }}Set the caller's custom order for an item
Stores the caller's custom sort position for one workspace item in their sidebar, creating the preference row if needed. Requires `workspace:read`. Naturally idempotent: writing the same order again leaves the row unchanged.
Replace the caller's mobile home layout
Overwrites the caller's saved mobile home layout for this workspace, and clears a stored desktop layout that was only ever a legacy mobile stand-in. Requires `workspace:read`. Send an `Idempotency-Key` header to make retries safe; a replay within the window returns the original response.