Pular para o conteúdo principal

Autenticação

Temos um microserviço centralizado para autenticação em todos nossos sistemas:

Auth: https://auth.codilo.com.br/.

Para a utilização de nossas APIs, usamos o padrão OAuth2.0 de client_credentials.

OAuth2

Utilizado para receber um token válido (expirável) que deve ser informado em todos os endpoints da API.

Tipos de permissão

ScopeScope DescriçãoDescrição
cw-api:adminscope adminAcesso total
cw-api:wscope writeSomente escrita
cw-api:rscope readSomente leitura

Requisição

POST https://auth.codilo.com.br/oauth/token

Parâmetros

{
"grant_type": "client_credentials",
"id": "key",
"secret": "secret"
}

Retorno (json)

ChaveDescrição
token_typeTipo do token retornado
access_tokenToken de acesso gerado
expires_inTempo de expiração do token

Na resposta, virá a propriedade access_token. Este é um JWT válido do usuário logado que pode ser usado em qualquer requisição de nossas APIs. Deve ser enviado como header na propriedade Authorization:.

Assim que qualquer destas requisições retornar Access Denied (Status Code: 401), deve ser gerado um novo access_token para ser reutilizado nas próximas consultas até sua expiração.

StatusSignificadoDescriçãoSchema
200OKSucessoNone
401Undocumented"key" must be one of [cnj, number, cartaprecatoria, doc, documentodelegacia, legado, nome, nomeadvogado, oab, numerocda, nomeadv, nomeparte, numorigem, numregistro, numstj]None
401UnauthorizedAccess deniedNone
429Too Many RequestsWaiting for request dataNone

Fluxo

Obter token

Para o token, nossa API segue o padrão OAuth2 de client credentials.

O access_token via API deve ser obtido com um POST em: https://auth.codilo.com.br/oauth/token. Utilizar body:

{
"grant_type": "client_credentials",
"id": "key",
"secret": "secret"
}

Informar token nas requisicoes

Assim que retornado, o access_token será passado no header nas requisições da API, na propriedade Authorization.

Exemplo:

Headers: { "Authorization": "Bearer access_token_retornado" }

Token expirado

Quando o token expirar, nossa API retorna Access Denied, sendo necessário solicitar um novo access_token no endpoint /oauth/token.