Replace a member's policy attributes (e.g. `{"tenant": "ACME"}`).
Attribute writes gate data visibility, so they carry the same scope as policy writes. **Required scope:** `rls_policies:write`
Authorization
BearerAuth Security scheme for OpenAPI endpoints. Validates both JWT tokens and API keys.
In: header
Path Parameters
uuiduuidRequest Body
application/json
TypeScript Definitions
Use the request body type in TypeScript.
Response Body
application/json
application/json
application/json
application/json
application/json
application/json
application/json
application/json
application/json
application/json
curl -X PUT "https://example.com/v1/organisations/497f6eca-6276-4993-bfeb-53cbbbba6f08/users/497f6eca-6276-4993-bfeb-53cbbbba6f08/attributes" \ -H "Content-Type: application/json" \ -d '{ "property1": "string", "property2": "string" }'{}{ "code": "string", "message": "string", "request_id": "string", "details": [ { "field": "string", "message": "string" } ]}{ "code": "string", "message": "string", "request_id": "string", "details": [ { "field": "string", "message": "string" } ]}{ "code": "string", "message": "string", "request_id": "string", "details": [ { "field": "string", "message": "string" } ]}{ "code": "string", "message": "string", "request_id": "string", "details": [ { "field": "string", "message": "string" } ]}{ "code": "string", "message": "string", "request_id": "string", "details": [ { "field": "string", "message": "string" } ]}{ "code": "string", "message": "string", "request_id": "string", "details": [ { "field": "string", "message": "string" } ]}{ "code": "string", "message": "string", "request_id": "string", "details": [ { "field": "string", "message": "string" } ]}{ "code": "string", "message": "string", "request_id": "string", "details": [ { "field": "string", "message": "string" } ]}{ "code": "string", "message": "string", "request_id": "string", "details": [ { "field": "string", "message": "string" } ]}Merge a partial attribute patch into a member's bag. Present keys are upserted, `null` values delete the key, omitted keys are untouched — concurrent edits to different keys both land (the merge is a single atomic statement), unlike the full-replace `PUT`.
**Required scope:** `rls_policies:write`
List Azure storage accounts
Uses the authenticated user's linked Azure OAuth identity to enumerate all Azure subscriptions, storage accounts, and blob containers the user has access to. The result is a tree: subscriptions → storage accounts → containers. Requires the user to have linked an Azure provider via `POST /v1/auth/providers/azure/authorize` first.