Autenticación OAuth 2.0
Configura la autenticación OAuth 2.0 para tu implementación de Rapid API
Todas las API de Rapid, excepto la API de Alojamiento, utilizan un proceso de autenticación OAuth 2.0. Esta información se aplica a:
- API para coches rápidos
- API de Vuelo Rápido
- API de actividades rápidas
- API de escritura rápida
Nota: La API de alojamiento incluye la autenticación por firma en su esquema, pero para utilizar la API Typeahead con el alojamiento, tendrás que incluir también la autenticación OAuth 2.0.
Más información sobre la autenticación de firmas
Establecer la autorización
La autenticación OAuth 2.0 requiere un token de acceso. Para obtener un token de acceso, enviarás una solicitud a la pasarela Expedia utilizando tus credenciales de la API. Las dos partes de tus credenciales se combinarán, se codificarán en Base64 y se enviarán como cabecera Authorization con un prefijo Basic , e.gBasic <base64>..
Ejemplo: Codifica tus credenciales en 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);Obtener un token de acceso opaco
Necesitarás un token de acceso opaco (es decir, que no contenga ninguna información sobre el usuario o el recurso) antes de poder hacer una solicitud a la API.
Solicitud de muestras
POST – https://api.ean.com/identity/oauth2/v3/token
Header:
Key: ‘Authorization’
Value: ‘Basic {base64}’Muestra de respuesta
{
"access_token": "p1xy6rxahicQPUIX_Sq6a52yFnHXpX3ImaSX9sKiUI4:XM8qZiTr1HPDc8FgBE5HLvFTFdICuRFV0-l7gFWI-WU",
"token_type": "bearer",
"expires_in": 1800,
"scope": "demand-solutions.demand-api-wrappers-playground.all"
}Utiliza el token de acceso opaco
Ahora que tienes un access_token, puedes utilizarlo para hacer peticiones a cualquier punto final que admita OAuth 2.0, como Typeahead, Geography y Cars.
GET - https://test.ean.com/v3/regions?include=standard&language=en-US&iata_location_code=SEA
Header:
Key: 'Authorization'
Value: 'Bearer {access_token}'