Gerar Token de Acesso
Tempo de Expiração do token de acesso
O tempo para expiração do token de acesso é de 2 dias no ambiente de produção e de 5 minutos em nosso ambiente de homologação(sandbox).
O padrão de autenticação bearer-token foi utilizado para todas as requisições:
Para se obter o token de acesso no ambiente de homologação deve-se consumir a operação gerar_token no seguinte endereço:
[https://sandbox.grupocard.com.br/authorization/token]
No corpo da requisição deve se enviar duas informações grant_type e scope, no formato x-www-form-urlencoded, conforme exemplo abaixo:
POST /authorization/token
Host: 127.0.0.1
Authorization: Basic NmM2MTM5NDUtOGQ1YS00YTBkLWI2NjAtMDlkZTVmYmRiNzUzOjMxZTA5M2Y5OGVhZDIyZWZjMjFiMzhhODdhMmE1YmQ3MWZjMTJiZWRlMzM3OWY1ZWFlNmM2ZjdkYTlkYWJjNWY=
Content-Type: application/x-www-form-urlencoded
grant_type=client_credentials&scope=Venda_Telecom, Venda_Egift...
Para identificar as credenciais do usuário que deseja obter o token se faz necessário o envio de um cabeçalho Authorization utilizando o basic auth:
KEY | VALUE | Descrição |
---|---|---|
Authorization | Basic Base64(app-key +app-secret ) | Deve se enviar token em base 64 do app-key mais app-secret fornecido para seu usuário |
Corpo da requisição da operação gerar_token:
KEY | VALUE | Descrição |
---|---|---|
grant_type | client_credentials | A estrutura OAuth especifica vários tipos de concessão para diferentes casos de uso, bem como uma estrutura para criar novos tipos de concessão, ex: client_credentials. |
scope | Venda_Egift Venda_FlexPark Venda_Guaicurus Venda_MSCAP Venda_SPTrans Venda_Telecom Venda_TeleSena Venda_TvPrePaga Venda_Voucher Envio_SMS PagamentoDeContas | Nome do escopo de produtos a ser utilizado nas operações, podem ser enviados vários escopos separados por um espaço, ex: MultiProdutos_Telecom |
Resposta da requisição da operação gerar_token:
Campo | Tipo | Descrição |
---|---|---|
access_token | String | Token de acesso para ser utilizado no cabeçalho das requisições |
token_type | String | Tipo do token de acesso |
expires_in | Long | Timestamp representando a data de expiração do token de autenticação |
refresh_token | String | Para estender um token existente, você pode usar a concessão de refresh_token |
scope | String | Escopos do multiprodutos que estarão disponíveis para uso através do token de acesso gerado, caso haja mais de um escopo devem ser enviados separados por um espaço |
Exemplo de resposta:
{
"access_token": "eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJpc3MiOiJodHRwczpcL1wvc2FuZGJveC5ncnVwb2NhcmQuY29tLmJyIiwic3ViIjoiNzk3OGI0MzItYzdhYS01MzJhLTgyMjAtMDIxNzlkZWUyZmMwIiwiaWF0IjoxNjUxNDk5Njc5LCJleHAiOjE2NTE2NzI0NzksIm5hbWUiOiJhZG1pbiJ9.Z5DjhkjQPn4whOBctKXI9ZIvTUUNoR3GcIyEQZ9KmU4",
"token_type": "bearer",
"expires_in": 1651672479,
"refresh_token": "b1ef83e36ba5db577940-1133662f0d58c0818f91ba01cf422e26aa5f9a6e09ac0e70-f2700f8e12",
"scope": "MultiProdutos_Telecom,MultiProdutos_Voucher"
}
Exemplo de geração de token na ferramenta Postman:


Para estender um token existente, você pode usar a concessão de token de atualização, conforme exemplo abaixo:
POST /authorization/token
Host: 127.0.0.1
Content-Type: application/x-www-form-urlencoded
grant_type=refresh_token&refresh_token=65e95c8da122a0a5522f-534b054a029019548036c8253d591309247d2899223a6a7b-907deae7ff
Corpo da requisição da operação atualizar_token :
KEY | VALUE | Descrição |
---|---|---|
grant_type | refresh_token | A estrutura OAuth especifica vários tipos de concessão para diferentes casos de uso, bem como uma estrutura para criar novos tipos de concessão, ex: client_credentials. |
refresh_token | Valor obtido na requisição anterior no campo "refresh_token" | Token a ser utilizado para atualizar a concessão ao token de acesso anterior |
Exemplo de reposta da operação atualizar_token:
{
"access_token": "eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJpc3MiOiJodHRwczpcL1wvc2FuZGJveC5ncnVwb2NhcmQuY29tLmJyIiwic3ViIjoiNmQwZjQyYzQtMWNjOS01ODNmLWE3N2QtZDI0ZmI0NGFjYTdhIiwiaWF0IjoxNjUzMDU4ODE2LCJleHAiOjE2NTMyMzE2MTYsIm5hbWUiOiJBZG1pbmlzdHJhdG9yIn0.NlZaXUA9JzIjpwPoi3YYyyoFTeGBNHIZLR647TdfsZY",
"token_type": "bearer",
"expires_in": 1653231616,
"refresh_token": "24bf79aa57de8d97ca87-6642a963aa964bce379e9372df50a455e58f4c65efbcb510-00c2cb834f",
"scope": "Venda_Telecom"
}
Erros possíveis na geração de token
Credenciais não enviadas no header da requisição:
{
"error": "invalid_request",
"error_description": "Credentials not available"
}
Credenciais desconhecidas ou app-key
+app-secret
fornecido de forma incorreta:
{
"error": "invalid_client",
"error_description": "Unknown credentials"
}
Escopo inválido para o usuário fornecido:
{
"error": "invalid_scope",
"error_description": "No valid scope given"
}
URL do ambiente de produção para consumo
O ambiente de produção possui duas URLs distintas, que são utilizadas conforme o modelo de conectividade escolhido pelo parceiro.
Para acesso ao ambiente de produção, a URL a ser utilizada é:
[https://hub.grupocard.com.br]