Os tokens de acesso são usados na autenticação baseada em token para conceder a aplicativos acesso a APIs em nome de um usuário. Depois que um usuário faz login e autoriza o acesso, o aplicativo recebe um token de acesso. Esse token funciona como uma credencial que o aplicativo usa para se identificar e identificar o usuário autorizado ao chamar a API de destino.
Você precisa incluir um token de acesso válido no cabeçalho da requisição ao enviar requisições para endpoints de API protegidos.
Para obter um token de acesso, você precisa do seu client ID e client secret. Saiba como gerar um client ID e um client secret na referência da API do Payments Direct.
Para obter um token de autenticação para o ambiente UAT, envie uma requisição POST para a seguinte URL:
https://api.test.ripple.com/v2/oauth/tokenPara obter um token de acesso, use a operação authenticate na referência da API do Payments Direct.
Inclua audience e grant_type conforme o exemplo abaixo.
O valor do campo audience é baseado na sintaxe URN.
Formato: urn:ripplexcurrent-ENVIRONMENT_STRING:YOUR_TENANT_ID
Exemplo: urn:ripplexcurrent-uat:YOUR_TENANT_ID
curl -X POST 'https://api.test.ripple.com/v2/oauth/token' \
--header 'Content-Type: application/json' \
--data '{
"client_id": "{YOUR_CLIENT_ID}",
"client_secret": "{YOUR_CLIENT_SECRET}",
"audience": "urn:ripplexcurrent-uat:{YOUR_TENANT_ID}",
"grant_type": "client_credentials"
}'Armazene o access_token para usar em todas as demais operações da API. O valor de scope lista os escopos contidos no token.
{
"access_token": "eyJhbGciOiJSUzI1NiIsInR5cCI6IkpXVCJ9.eyJ",
"scope": "identities:create identities:read identities:write quote_collection:quote:create quote_collection:quote:read quote:quote:read pos:payments:create pos:payments:read ledger:balance:read",
"expires_in": 3600,
"token_type": "Bearer"
}Se uma requisição de token for rejeitada, o corpo da resposta contém um error e um error_description. Um 403 com error: unauthorized_client significa que o cliente não está autorizado a solicitar um token; um 403 com error: access_denied significa que o serviço não está habilitado para o domínio solicitado. Trate esses casos pelo código de status HTTP, e não pela string error, e não repita uma requisição 403 idêntica. Para ver a lista completa de respostas de autenticação, consulte a referência da API do Payments Direct.