Authorization
bearerAuthAuthorizationBearer <token>Bearer token authentication
application/json- body
plane*string"admin""organization"permission*stringWhether the session's subject holds the permission, and who decided.
application/json- response
allowed*booleanThe decision to act on. A refusal is still a 200.
reason*|Why, from whoever decided: a registry reason under enforce, or legacy_allow/legacy_deny while the pre-registry check decides. Null when the host reports none. The set grows, so keep a default branch.
mode*|Resolved per permission from the global setting and the permission's own enforcement, so two keys in one batch can differ.
"legacy""shadow""enforce"nullcurl -X POST 'https://dev.auth.graphxserver.io/api/auth/authorization/check' \ -H 'Content-Type: application/json' \ -d '{ "plane": "admin", "permission": "string"}'{ "allowed": true, "reason": "string", "mode": "legacy"}bearerAuthAuthorizationBearer <token>Bearer token authentication
application/json- body
plane*string"admin""organization"permissions*array<string>One answer per distinct permission asked.
application/json- response
results*Keyed by permission. Repeated keys collapse to one entry.
curl -X POST 'https://dev.auth.graphxserver.io/api/auth/authorization/batch-check' \ -H 'Content-Type: application/json' \ -d '{ "plane": "admin", "permissions": [ "string" ]}'{ "results": { "property1": { "allowed": true, "reason": "string", "mode": "legacy" }, "property2": { "allowed": true, "reason": "string", "mode": "legacy" } }}bearerAuthAuthorizationBearer <token>Bearer token authentication
organizationId?string1 <= lengthcursor?numberlimit?numbersearch?stringstatus?|array<>system?boolean|sortBy?string"rank""role""displayName""createdAt"sortDirection?string"asc""desc"One page of the organization's roles, native rows included.
application/json- response
roles*array<>nextCursor*|The next page's cursor, or null on the last page.
previousCursor*integer|nulllimit*integertotal*integerRoles matching the filters, across every page.
curl -X GET 'https://dev.auth.graphxserver.io/api/auth/authorization/list-organization-roles'{ "roles": [ { "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08", "organizationId": "7bc05553-4b68-44e8-b7bc-37be63c6d9e9", "role": "string", "type": "string", "displayName": "string", "description": "string", "systemRoleId": "a73451d2-f8c5-42aa-8865-c55b4afe9de2", "rank": 0, "status": "active", "archivedAt": "2019-08-24T14:15:22Z", "createdByUserId": "4d2aef9a-17b0-44e6-902e-616812033620", "createdAt": "2019-08-24T14:15:22Z", "updatedAt": "2019-08-24T14:15:22Z", "permissions": [ { "key": "string", "effect": "allow" } ] } ], "nextCursor": 0, "previousCursor": 0, "limit": 0, "total": 0}bearerAuthAuthorizationBearer <token>Bearer token authentication
organizationId?string1 <= lengthroleId?string1 <= lengthOne organization role with its grants.
application/json- response
id*stringThe native role's id: the roleId every endpoint takes.
uuidorganizationId*stringuuidrole*stringThe identifier stored in members.role.
type*string|nulldisplayName*stringdescription*string|nullsystemRoleId*|Set when this is a system role: its permissions are managed by identity and cannot be edited by the organization.
uuidrank*integerstatus*string"active""archived"archivedAt*|date-timecreatedByUserId*|uuidcreatedAt*stringdate-timeupdatedAt*stringdate-timepermissions*array<>curl -X GET 'https://dev.auth.graphxserver.io/api/auth/authorization/get-organization-role'{ "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08", "organizationId": "7bc05553-4b68-44e8-b7bc-37be63c6d9e9", "role": "string", "type": "string", "displayName": "string", "description": "string", "systemRoleId": "a73451d2-f8c5-42aa-8865-c55b4afe9de2", "rank": 0, "status": "active", "archivedAt": "2019-08-24T14:15:22Z", "createdByUserId": "4d2aef9a-17b0-44e6-902e-616812033620", "createdAt": "2019-08-24T14:15:22Z", "updatedAt": "2019-08-24T14:15:22Z", "permissions": [ { "key": "string", "effect": "allow" } ]}bearerAuthAuthorizationBearer <token>Bearer token authentication
application/json- body
organizationId?string1 <= lengthrole*string3 <= length <= 64displayName*string1 <= length <= 100description?|length <= 500permissions?array<>The committed role with its grants, plus whether the write changed anything.
application/json- response
id*stringThe native role's id: the roleId every endpoint takes.
uuidorganizationId*stringuuidrole*stringThe identifier stored in members.role.
type*string|nulldisplayName*stringdescription*string|nullsystemRoleId*|Set when this is a system role: its permissions are managed by identity and cannot be edited by the organization.
uuidrank*integerstatus*string"active""archived"archivedAt*|date-timecreatedByUserId*|uuidcreatedAt*stringdate-timeupdatedAt*stringdate-timepermissions*array<>write*curl -X POST 'https://dev.auth.graphxserver.io/api/auth/authorization/create-organization-role' \ -H 'Content-Type: application/json' \ -d '{ "role": "string", "displayName": "string"}'{ "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08", "organizationId": "7bc05553-4b68-44e8-b7bc-37be63c6d9e9", "role": "string", "type": "string", "displayName": "string", "description": "string", "systemRoleId": "a73451d2-f8c5-42aa-8865-c55b4afe9de2", "rank": 0, "status": "active", "archivedAt": "2019-08-24T14:15:22Z", "createdByUserId": "4d2aef9a-17b0-44e6-902e-616812033620", "createdAt": "2019-08-24T14:15:22Z", "updatedAt": "2019-08-24T14:15:22Z", "permissions": [ { "key": "string", "effect": "allow" } ], "write": { "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08", "changed": true }}bearerAuthAuthorizationBearer <token>Bearer token authentication
application/json- body
organizationId?string1 <= lengthroleId*string1 <= lengthdisplayName?string1 <= length <= 100description?|length <= 500The committed role with its grants, plus whether the write changed anything.
application/json- response
id*stringThe native role's id: the roleId every endpoint takes.
uuidorganizationId*stringuuidrole*stringThe identifier stored in members.role.
type*string|nulldisplayName*stringdescription*string|nullsystemRoleId*|Set when this is a system role: its permissions are managed by identity and cannot be edited by the organization.
uuidrank*integerstatus*string"active""archived"archivedAt*|date-timecreatedByUserId*|uuidcreatedAt*stringdate-timeupdatedAt*stringdate-timepermissions*array<>write*curl -X POST 'https://dev.auth.graphxserver.io/api/auth/authorization/update-organization-role' \ -H 'Content-Type: application/json' \ -d '{ "roleId": "string"}'{ "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08", "organizationId": "7bc05553-4b68-44e8-b7bc-37be63c6d9e9", "role": "string", "type": "string", "displayName": "string", "description": "string", "systemRoleId": "a73451d2-f8c5-42aa-8865-c55b4afe9de2", "rank": 0, "status": "active", "archivedAt": "2019-08-24T14:15:22Z", "createdByUserId": "4d2aef9a-17b0-44e6-902e-616812033620", "createdAt": "2019-08-24T14:15:22Z", "updatedAt": "2019-08-24T14:15:22Z", "permissions": [ { "key": "string", "effect": "allow" } ], "write": { "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08", "changed": true }}bearerAuthAuthorizationBearer <token>Bearer token authentication
application/json- body
organizationId?string1 <= lengthroleId*string1 <= lengthpermissions*array<>The committed role with its grants, plus whether the write changed anything.
application/json- response
id*stringThe native role's id: the roleId every endpoint takes.
uuidorganizationId*stringuuidrole*stringThe identifier stored in members.role.
type*string|nulldisplayName*stringdescription*string|nullsystemRoleId*|Set when this is a system role: its permissions are managed by identity and cannot be edited by the organization.
uuidrank*integerstatus*string"active""archived"archivedAt*|date-timecreatedByUserId*|uuidcreatedAt*stringdate-timeupdatedAt*stringdate-timepermissions*array<>write*curl -X POST 'https://dev.auth.graphxserver.io/api/auth/authorization/set-organization-role-permissions' \ -H 'Content-Type: application/json' \ -d '{ "roleId": "string", "permissions": [ { "key": "string" } ]}'{ "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08", "organizationId": "7bc05553-4b68-44e8-b7bc-37be63c6d9e9", "role": "string", "type": "string", "displayName": "string", "description": "string", "systemRoleId": "a73451d2-f8c5-42aa-8865-c55b4afe9de2", "rank": 0, "status": "active", "archivedAt": "2019-08-24T14:15:22Z", "createdByUserId": "4d2aef9a-17b0-44e6-902e-616812033620", "createdAt": "2019-08-24T14:15:22Z", "updatedAt": "2019-08-24T14:15:22Z", "permissions": [ { "key": "string", "effect": "allow" } ], "write": { "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08", "changed": true }}