Skip to main content
Proxied do WorkOS — nao e armazenado no banco de dados da aplicacao.

Esquema

CampoTipoDescricao
roleIdstringIdentificador unico (formato WorkOS: role_*)
organizationIdUUIDv7?Org de escopo (null para roles de ambiente)
slugstringIdentificador unico
namestringNome de exibicao
descriptionstring?Descricao
typeenumENVIRONMENT_ROLE, ORGANIZATION_ROLE
permissionsstring[]Array de slugs de permissoes
inheritedbooleanSe e herdado do ambiente
createdAtdatetimeTimestamp de criacao
updatedAtdatetimeUltima atualizacao

Exemplo

{
  "roleId": "role_01JK8ADMIN12345ABCDE",
  "organizationId": "019525fd-8b21-7d3c-a1f5-3c7e9b1d5f8a",
  "slug": "admin",
  "name": "Administrador",
  "description": "Acesso completo a todos os recursos da organizacao",
  "type": "ORGANIZATION_ROLE",
  "permissions": [
    "users:read",
    "users:write",
    "users:delete",
    "billing:read",
    "billing:write",
    "settings:read",
    "settings:write"
  ],
  "inherited": false,
  "createdAt": "2026-01-15T10:30:00Z",
  "updatedAt": "2026-02-10T09:15:00Z"
}

Relacionamentos

Regras de Negocio

  • Slug unico por escopo
  • Nao pode referenciar permissoes inexistentes
  • ENVIRONMENT_ROLE e imutavel no nivel da organizacao
  • Cache multi-nivel
Roles sao sincronizados com o WorkOS. Alteracoes feitas diretamente no painel do WorkOS sao refletidas automaticamente na aplicacao.
Roles do tipo ENVIRONMENT_ROLE sao definidos globalmente e nao podem ser modificados no nivel da organizacao. Apenas ORGANIZATION_ROLE pode ser customizado por tenant.