Open Inventory / Docs
EndpointsAccess controlApiAccessRolesKey

Update an access role

The API runs on your application instance. Schemas and field names come directly from the OpenAPI specification. Session-authenticated requests require a session on that instance.

PATCH
/api/access/roles/{key}

Requires an authenticated browser session with the roles.manage permission. Changing permissions revokes user-bound API tokens for members of this role. The built-in Admin role must retain every permission.

Authorization

adminSession
cookieauthjs.session-token<token>

Authenticated Auth.js browser session cookie; each operation declares its required permission. Not restricted to administrators. HTTPS deployments use the secure-prefixed cookie variant.

Path Parameters

key*string

Stable role key.

Match^[a-z][a-z0-9_-]{0,63}$
Length1 <= length <= 64

Header Parameters

X-Organization-ID?string

Organization membership selected for this request. User-bound credentials may select any active membership; standalone tokens may only repeat their pinned organization ID.

Formatuuid

Request Body

application/json
  1. body
Properties1 <= properties
name?string
Length1 <= length <= 120
description?string
Lengthlength <= 1000
permissions?array<>
Itemsitems <= 30

Response Body

Role updated

application/json
  1. response
role*
Example Request
curl -X PATCH 'https://example.com/api/access/roles/editor' \  -H 'Content-Type: application/json' \  -d '{}'
Example Response
{  "role": {    "key": "editor",    "name": "string",    "description": "string",    "permissions": [      "inventory.read"    ],    "isSystem": true,    "memberCount": 0,    "createdBy": "string",    "updatedBy": "string",    "createdAt": "2019-08-24T14:15:22Z",    "updatedAt": "2019-08-24T14:15:22Z"  }}