🛡️Gatekeeper/ SDKs

Tenant RBAC: custom roles, assignment, and permission checks. Mutations require owner/admin. Bearer required.

import { GatekeeperCore, PermissionsService } from '@orkait/sdk';
 
const permissions = new PermissionsService(core);

Methods#

MethodReturnsNotes
createRole(tenantId, name, permissions)Roleowner/admin
listRoles(tenantId)Page<Role>
updateRole(roleId, updates)Role{ name?, permissions? }; system roles rejected
deleteRole(roleId)voidowner/admin
assign(userId, tenantId, roleId)voidowner/admin
revoke(userId, tenantId, roleId)voidowner/admin
can(userId, tenantId, permission)boolean
list(userId, tenantId)string[]effective permissions

Example#

const role = await permissions.createRole('t1', 'editor', ['posts:write']);
await permissions.assign('usr_1', 't1', role.id);
if (await permissions.can('usr_1', 't1', 'posts:write')) { /* allowed */ }