Autenticação OAUTH 2.0

Autenticação Pré Pago
Autenticação Íris

OAuth 2.0 Authorization Code

1. Access Token

Após efetuar seu cadastro no portal, você deverá cadastrar a sua APP. Essa APP é o seu meio de acesso e consumo as APIs disponibilizadas. Após a criação dessa APP, você receberá o client_id, que será o primeiro item a ser passado no endpoint a seguir, via POST:

O cabeçalho deve conter as seguintes informações:

Content-Type: application/x-www-form-urlencoded
client_id: client provido da APP
Authorization: Basic client_id:client_secret
grant_type: password
			
OBS: Este client_id:client_secret deve ser uma string convertida em Base64, usando os dados da APP criada. O exemplo do cabeçalho com o client_id e secret convertidos para base64, seria:
Authorization : Basic ZjkyMTIxNzMtZTcwNS0zNzNiLWE2OTgtNjE5MjNlMzc4MzU5OjAyYWI1Mjg4LTkyZGItM2FiMy05OWZkLWZhYzRhZjg1N2Q4MQ==

No corpo de requisição (Request Body) devemos passar as seguintes informações:

"username": "Usuário provido pela Cateno"
"password" : "Senha provido pela Cateno"

Como resultado, espera-se uma resposta com um "access token" que permitirá o consumo das APIs, conforme exibido abaixo:

{
  "access_token": "57f10f0e-3d2e-311f-a797-4011f66e1cbf",
  "refresh_token": "ca81cb16-43e4-3e96-aaea-4861e7791dc7",
  "token_type": "access_token",
  "expires_in": 3600
}
			

2. Consumo das APIs

Com o par de tokens em mãos, basta utilizá-los no header de suas chamadas, conforme exibido abaixo:

client_id : f9212173-e705-373b-a698-61923e378359
access_token : 57f10f0e-3d2e-311f-a797-4011f66e1cbf
			

OAuth 2.0 Refresh Token

Sempre que seu access_token expirar, para que não tenha que refazer o ciclo de autenticação, desde a chamada do grant code, você pode utilizar o refresh token, onde a partir de apenas 1 requisição, você tem um novo access token para consumo. Para isso, você deve realizar uma chamada muito parecida com a do access token, após a recuperação do grant code, onde ao invés de solicitar um authorization_code, você solicitará um refresh_token, conforme exemplos abaixo:

Deve-ser realizar um novo POST no seguinte endpoint:

O cabeçalho deve conter as seguintes informações:

Content-Type: application/x-www-form-urlencoded
Authorization : Basic client_id:client_secret
			
OBS: Este client_id:client_secret deve ser uma string convertida em Base64, usando os dados da APP criada. O exemplo do cabeçalho com o client_id e secret convertidos para base64, seria:
Authorization : Basic ZjkyMTIxNzMtZTcwNS0zNzNiLWE2OTgtNjE5MjNlMzc4MzU5OjAyYWI1Mjg4LTkyZGItM2FiMy05OWZkLWZhYzRhZjg1N2Q4MQ==

O corpo deve conter a estrutura abaixo (no campo refresh_token, deve ser informado o refresh token, recuperado na chamada anterior, onde foi recuperado o access_token):

"grant_type": "refresh_token"
"refresh_token" : "ca81cb16-43e4-3e96-aaea-4861e7791dc7"
			

Como resultado, espera-se uma resposta com um novo "access token", oriundo agora do seu antigo refresh token, que permitirá o consumo das APIs, conforme exibido abaixo:

{
  "access_token": "ca81cb16-43e4-3e96-aaea-4861e7791dc7",
  "refresh_token": "677b881a-d0b6-3b29-b9a8-f0cdb50ce035",
  "token_type": "access_token",
  "expires_in": 3600
}
			

Endereços para chamadas OAuth

Português, Brasil