Docs
...

Autorização

Verificar Authorização de Aplicativos e Usuários (/verify)

Para que uma aplicação participante do ecossitema de aplicaçōes da plataforma iugu, por exemplo, sua aplicação, autorize um recurso (usuário ou aplicação externa) a executar uma determinada ação em seu aplicativo, fornecemos o endpoint /verify em nosso serviço Identity.

Assim, sempre que uma aplicação realizar uma chamada em seu aplicativo, após o processo de verificação dos tokens de acesso - autenticação é necessário verificar a autorização, para realizar as ações solicitadas em uma dada área de trabalho. Ou seja, verificar se a aplicação em questão possui permissão para realizar determinada ação em determinada área de trabalho

Especificação

post https://api.console.iugu.com/verify

Verifica se usuários / apps podem executar ações em um dado workspace.

Autorizações
oAuthClientCredentials
Flow type: clientCredentials
Token URL: https://identity.iugu.com/token
Scopes:
  • not:required - scopes are not in use

Schema

Tipo de conteúdo: application/json

workspace_id

Obrigatório

String

Id do workspace onde a verificação será feita

Ex: 3Eor4nBoTEoKgpCa16YMMB

principals

Obrigatório

Array of strings

Usuários e/ou apps a serem verificados

actions

Obrigatório

Array of strings

Ações a serem verificadas

Exemplo
1
2
3
4
5
6
7
8
9
{
  "workspace_id": "3Eor4nBoTEoKgpCa16YMMB",
  "principals": [
    "user:0MT3yowZCv3VrAOhC00kWY"
  ],
  "actions": [
    "pix:cob.write"
  ]
}

Respostas

200
successful
400
bad_request

Requisição

O endpoint utiliza autenticação através de access token do tipo Bearer. É necessário possuir um access token válido emitido por um dos fluxos de OAuth 2.0

curl --location --request POST 'https://identity.iugu.com/verify' \
--header 'Authorization: Bearer eyJ0eXAiOiJhdCtKV1QiLCJraWQiOiJjZWI5NjBjOS1iOD' \
--header 'Content-Type: application/json' \
--data-raw '{
    "workspace_id": "5AL1RkqmdeG908fMZUKvof",
    "principals": "user:55WvO7IL2ZtlgO61oMkNUR",
    "actions": [
        "pix:create",
        "billing:event.create"
    ]

}'

Resposta

{
    "pix:create": true,
    "billing:event.create": false
}

No exemplo da resposta acima, a permissão para criar pix na aplicação “Pix” existe, porém a permissão para criar um evento na aplicação “Billing” não existe. Isto pode ocorrer porque a aplicação Billing não está instalada na área de trabalho informada. Em nosso Guia de usuário você encontrará um exemplo de como estas duas aplicações podem conversar entre si chamando um app e recebendo uma chamada de um app.

Cache

Aconselhamos não aplicar sistemas de cache em chamadas para endpoint de autorização em ações críticas de sua aplicação, pois assim que uma política ou instalação de uma aplicação mudar na área de trabalho de interesse, a resposta do endpoint muda instantâneamente, refletindo o estado atual de permissionamento.