This is an auto-generated translation

Autenticação OAuth 2.0

Diversas APIs da Rapid utilizam um processo de autenticação OAuth 2.0 em vez de autenticação por assinatura.

Leia mais sobre autenticação por assinatura.

Estabelecer autorização

A autenticação OAuth 2.0 requer um token de acesso. Para obter um token de acesso, você enviará uma solicitação ao gateway da Expedia usando suas credenciais de API. As duas partes de suas credenciais serão combinadas, codificadas em Base64 e enviadas como o cabeçalho Authorization com um prefixo Basic , e.g. Basic <base64>.

Exemplo: Codifique suas credenciais no formato Base64.

var client-id = postman.getEnvironmentVariable("client-id");
var client-secret= postman.getEnvironmentVariable("client-secret");
var base64Hash = CryptoJS.enc.Utf8.parse(client-id + ":" + client-secret);
var base64 = CryptoJS.enc.Base64.stringify(base64Hash);
postman.setEnvironmentVariable("base64",base64);

Nota: Se o seu gerenciador de inicialização forneceu uma chave Rapid API (api_key) ou um segredo compartilhado (shared_secret), você pode usá-los onde o exemplo de código pede client-id e client-secret, respectivamente. Neste contexto, são intercambiáveis.

Obtenha um token de acesso opaco.

Você precisará de um token de acesso opaco (ou seja, um que não contenha nenhuma informação sobre o usuário ou recurso) antes de poder fazer uma solicitação à API.

Exemplo de solicitação

POST – https://api.ean.com/identity/oauth2/v3/token 

Header: 
Key: ‘Authorization’ 
Value: ‘Basic {base64}’

Exemplo de resposta

{ 
    "access_token": "p1xy6rxahicQPUIX_Sq6a52yFnHXpX3ImaSX9sKiUI4:XM8qZiTr1HPDc8FgBE5HLvFTFdICuRFV0-l7gFWI-WU", 
    "token_type": "bearer", 
    "expires_in": 1800, 
    "scope": "demand-solutions.demand-api-wrappers-playground.all" 
}

Use o token de acesso opaco

Agora que você tem um access_token, você pode usá-lo para fazer solicitações para qualquer endpoint que suporte OAuth 2.0, como digitação antecipada, Geography e Cars.

GET - https://test.ean.com/v3/regions?include=standard&language=en-US&iata_location_code=SEA

Header: 
Key: 'Authorization' 
Value: 'Bearer {access_token}'
Esta página foi útil?
Como podemos melhorar esse conteúdo?
Agradecemos por nos ajudar a melhorar.