Skip to main content
POST
/
roles
Criar Papel
curl --request POST \
  --url https://api.example.com/roles \
  --header 'Authorization: <authorization>' \
  --header 'Content-Type: application/json' \
  --data '
{
  "organizationId": "<string>",
  "slug": "<string>",
  "name": "<string>",
  "description": "<string>",
  "permissions": [
    "<string>"
  ]
}
'
{
  "roleId": "10",
  "organizationId": null,
  "slug": "custom-editor",
  "name": "Custom Editor",
  "description": null,
  "type": "ORGANIZATION_ROLE",
  "permissions": ["users:read"],
  "inherited": false,
  "createdAt": "2026-03-25T14:00:00.000Z",
  "updatedAt": "2026-03-25T14:00:00.000Z"
}
Requer permissao roles:write.

Headers

Authorization
string
required
Bearer token.

Corpo da Requisicao

organizationId
string
O UUID da organizacao.
slug
string
required
Slug unico do papel.
name
string
required
Nome de exibicao.
description
string
Descricao opcional.
permissions
string[]
required
Array de slugs de permissoes.

Resposta

{
  "roleId": "10",
  "organizationId": null,
  "slug": "custom-editor",
  "name": "Custom Editor",
  "description": null,
  "type": "ORGANIZATION_ROLE",
  "permissions": ["users:read"],
  "inherited": false,
  "createdAt": "2026-03-25T14:00:00.000Z",
  "updatedAt": "2026-03-25T14:00:00.000Z"
}

Exemplos de Codigo

curl -X POST https://api.awsales.io/admin/roles \
  -H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
  "slug": "billing-manager",
  "name": "Billing Manager",
  "description": "Can manage billing and subscriptions",
  "permissions": [
    "billing:manage",
    "invoices:read"
  ]
}'

Codigos de Erro

StatusCodigoDescricao
400validation_errorEntrada invalida ou campos obrigatorios ausentes
401unauthorizedAutenticacao ausente ou invalida
403forbiddenPermissoes insuficientes
409role.slug_already_existsSlug do papel ja esta em uso
404permission.not_foundUma ou mais permissoes nao existem
500internal_server_errorOcorreu um erro inesperado