Perfil de permissões

Esta é uma API de gerenciamento de perfils de permissões de acesso às APIs, também chamado de Role.

Listar Perfils de Permissões Paginados

API de listagem de perfils de permissões paginados. Ver documentação de paginação.

GET /api/roles

GET /api/roles?cursor=0&size=15

Exemplo de requisição

GET /api/roles HTTP/1.1
Host: api.exemplo.com
Accept: application/json
Authorization: Bearer <Access-Token>
from itflex_sdk.auth.types import GetRolesPageRequest

request = GetRolesPageRequest(cursor=0, size=15)
pages = sdk.auth.get_roles_pages(request)
const pages = sdk.auth.getRolesPages();
const response = await pages.next();
console.log(response.payload);

Exemplo de resposta

HTTP/1.1 200 OK
Content-Type: application/json

{
  "cursor": {"current": 0, "next": null, "previous": null},
  "roles": [
      {
        "id": 1,
        "name": "Gerenciamento de usuários",
        "scopes":[{"name": "auth.users", "read": true, "write": true}],
      }
  ],
}
page = pages.next()
page = pages.previous()

# retornar os itens de uma página
for role in page.roles:
    print(role)

# retornar os itens de todas as páginas
for role in pages:
    print(role)
[
  {
    id: 1,
    name: "Gerenciamento de usuários",
    scopes: [{ name: "auth.users", read: true, write: true }]
  }
];

Buscar Perfil de Permissão

API de busca de um perfil de permissão existente.

GET /api/roles/<id>

Exemplo de requisição

GET /api/roles/1 HTTP/1.1
Host: api.exemplo.com
Accept: application/json
Authorization: Bearer <Access-Token>
from itflex_sdk.auth.types import GetRoleRequest

request = GetRoleRequest(id=1)
response = sdk.auth.get_role(request)
const response = await sdk.auth.getRole({ id: 1 });
console.log(response.payload);

Exemplo de resposta

HTTP/1.1 200 OK
Content-Type: application/json

{
  "id": 1,
  "name": "Gerenciamento de usuários",
  "scopes":[{"name": "auth.users", "read": true, "write": true}],
}
if response.success:
    return response.user
{
  id: 1,
  name: "Gerenciamento de usuários",
  scopes: [{ name: "auth.users", read: true, write: true }]
}

Cadastrar Perfil de Permissão

API de cadastro de perfil de permissão. Para cadastrar um perfil de permissão é necessário dar permissões de acesso de leitura e escrita para um escopo diponível na aplicação. Consulte a lista de escopos diponíveis.

POST /api/roles

Exemplo de requisição

POST /api/roles HTTP/1.1
Host: api.exemplo.com
Accept: application/json
Authorization: Bearer <Access-Token>

{
  "name": "Gerenciamento de usuários",
  "scopes":[{"name": "auth.users", "read": true, "write": true}],
}
from itflex_sdk.auth.types import CreateRoleRequest

request = CreateRoleRequest(
            name="Gerenciamento de usuários",
            scopes=[{"name": "auth.users", "read": true, "write": true}],
          )
response = sdk.auth.create_role(request)
const role = sdk.auth.types.Role();
role.name = "Docs Role";
role.scopes = [{ name: "auth.users", read: true, write: false }];

const response = await sdk.auth.createRole(role);
console.log(response.payload);

Exemplo de resposta

HTTP/1.1 200 OK
Content-Type: application/json

{
  "id": 1,
  "name": "Gerenciamento de usuários",
  "scopes":[{"name": "auth.users", "read": true, "write": true}],
}
if response.success:
    return response.user
{
  id: 2,
  name: "Docs Role",
  scopes: [{ name: "auth.users", read: true, write: false }]
}

Editar Perfil de Permissão

API de edição de um perfil de permissão existente. Para editar um perfil de permissão é necessário dar permissões de acesso de leitura e escrita para um escopo diponível na aplicação. Consulte a lista de escopos diponíveis.

PUT /api/roles/<id>

Exemplo de requisição

PUT /api/roles/1 HTTP/1.1
Host: api.exemplo.com
Accept: application/json
Authorization: Bearer <Access-Token>

{
  "id": 1,
  "name": "Gerenciamento de usuários",
  "scopes":[{"name": "auth.users", "read": true, "write": true}],
}
from itflex_sdk.auth.types import UpdateRoleRequest

request = UpdateRoleRequest(
          name="Gerenciamento de usuários",
          scopes=[{"name": "auth.users", "read": true, "write": true}],
        )
response = sdk.auth.update_role(request)
const role = {
  id: 1,
  name: "Docs Role edited",
  scopes: [{ name: "auth.users", read: true, write: true }]
};

const response = await sdk.auth.updateRole(role);
console.log(response.payload);

Exemplo de resposta

HTTP/1.1 200 OK
Content-Type: application/json

{
  "id": 1,
  "name": "Gerenciamento de usuários",
  "scopes":[{"name": "auth.users", "read": true, "write": true}],
}
if response.success:
    return response.user
{
  id: 2,
  name: "Docs Role edited",
  scopes:[{ name: "auth.users", read: true, write: true }],
}

Excluir Perfil de Permissão

API de exclusão de um perfil de permissão existente.

DELETE /api/roles/<id>

Exemplo de requisição

DELETE /api/roles/1 HTTP/1.1
Host: api.exemplo.com
Accept: application/json
Authorization: Bearer <Access-Token>
from itflex_sdk.auth.types import DeleteRoleRequest

request = DeleteRoleRequest(id=1)
response = sdk.auth.delete_role(request)
const response = await sdk.auth.deleteRole({ id: 1 });

Exemplo de resposta

HTTP/1.1 200 OK
Content-Type: application/json
return response.success:

Formato dos dados

Parâmetros da url

Parâmetro Tipo
id integer

Requisição

Parâmetro Tipo Valor Dafault Descrição
id integer Identificador do perfil de permissão
name string requerido unico Nome do perfil de permissão
scopes array requerido Lista de permissões de acesso

Resposta

Parâmetro Tipo Descrição
id integer Identificador do perfil de permissão
name string Nome do perfil de permissão
scopes array Lista de permissões de acesso