This is an auto-generated translation

API Typeahead para Rapid

Ofrece sugerencias a los viajeros mientras buscan

Typehead (GET /suggestions) es un nuevo punto final de la API que te permite ofrecer a tus viajeros una experiencia de búsqueda sugerente basada en regiones geográficas, ubicaciones relevantes y propiedades disponibles. Este punto final devuelve una lista de sugerencias basadas en cadenas de búsqueda parciales y en cualquier parámetro de solicitud que hayan introducido. Ponte en contacto con tu gestor de cuenta para añadir Typeahead a tu cuenta.

Funcionamiento

Typeahead API es una herramienta de predicción lingüística, a veces denominada autocompletar o autosugerencia. Devuelve una lista de regiones, localidades o propiedades a partir de la introducción de información parcial tecleada en una casilla de búsqueda. Cuando el usuario escriba en una casilla de búsqueda, la API de Typeahead empezará a devolver hasta 10 resultados utilizando información sobre la ciudad, la región, la propiedad o el código postal. A continuación, el viajero puede seleccionar de esta lista para iniciar su búsqueda o seguir escribiendo para continuar afinando los resultados sugeridos automáticamente.

Por ejemplo, una búsqueda que empiece por "Memp" vería varias opciones geográficas, incluidos barrios, estaciones de tren, aeropuertos, etc. relacionados con Memphis, Tennessee, EE.UU., seguidos de Memphis, Misuri, EE.UU.

Guía de lanzamiento

Tendrás que ponerte en contacto con el gestor de tu cuenta o con un representante de Partner Connect para obtener información sobre la API. Solicitarán la aprobación de acceso y, si te aprueban, modificarán tu acuerdo para incluir Typeahead. Una vez que Typeahead haya sido habilitado para tu organización, el representante de Partner Connect te ayudará con cualquier desarrollo necesario.

Requisitos de lanzamiento:

  • Debes adoptar y utilizar el proceso de token de acceso opaco para la autenticación.
  • Los tokens de acceso sólo pueden ser utilizados por el mismo ID de circuito o clave API que lo solicitó.
  • Las fichas de acceso sólo pueden existir durante 25 minutos.
  • Las solicitudes de nuevos tokens de acceso deben crearse para que se actualicen sistemáticamente en ese horario y no con demasiada frecuencia.
  • El idioma y el texto de la solicitud son parámetros obligatorios. Consulta la lista de idiomas compatibles con Rapid en .

Autorización y acceso

La API Rapid Typeahead está disponible para ser solicitada en los puntos finales de la API por los socios que estén actualmente en la versión 3 de Rapid. Una vez aprobado, tu perfil existente tendrá los permisos necesarios para utilizar correctamente la API.

Establecer la autorización

La autenticación para la API Typeahead difiere de nuestras otras funciones de Rapid API en que requiere una clave de acceso. Utilizando una cabecera de autorización, proporcionarás tu apikey para llamar a la pasarela EPS y obtener una clave de acceso. A continuación, puedes llamar al punto final de la API Typeahead pasando la clave de acceso como cabecera de autorización.

Ejemplo: Codificar la clave API en formato base64

var api_key = postman.getEnvironmentVariable("api_key");
var shared_secret= postman.getEnvironmentVariable("shared_secret");
var base64Hash = CryptoJS.enc.Utf8.parse(api_key + ":" + shared_secret);
var base64 = CryptoJS.enc.Base64.stringify(base64Hash);
postman.setEnvironmentVariable("base64",base64);

Obtener un token de acceso opaco

Para utilizar la API Typeahead se necesita un token de acceso opaco, es decir, que no contenga ninguna información sobre el usuario o el recurso.

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" 

}

Hacer una petición de autocompletar

Tendrás que incluir alguna información necesaria en las cabeceras de la petición y en los parámetros de consulta. Para que la respuesta sea más sólida, también puedes incluir parámetros de consulta opcionales.

Encabezados de solicitud

Obligatorio

  • AcceptEspecifica el formato de respuesta que el cliente desea recibir. Este valor debe ser application/json.
  • Accept-EncodingEspecifica la codificación de la respuesta que el cliente desea recibir. Este valor debe ser gzip.
  • User-Agent: una cadena de encabezado de la solicitud del cliente, tal y como la captura tu integración. Si estás construyendo una aplicación, el valor de User-Agentdebe ser {app name}/{app version}. Por ejemplo,TravelNow/3.30.112.

Parámetros de consulta

Obligatorio

  • language: especifica la lengua deseada para la respuesta como un subconjunto del formato BCP47 que sólo utiliza pares de códigos de lengua y país con guión two-digit. Utiliza sólo los códigos de idioma ISO639-1 alfa 2 y los códigos de país ISO3166-1 alfa 2 descritos en w3.org (por ejemplo, language=en-US). Consulta la lista de los idiomas admitidos por Rapid .
  • text: la cadena de entrada a consultar, con un límite de 150 caracteres (por ejemplo, text=Springfie).

Opcional

  • type: describe el lugar que busca el usuario. Este parámetro puede suministrarse varias veces con valores diferentes (por ejemplo, type=AIRPORT&type=CITY). Si no se proporciona, el valor por defecto incluirá todos los tipos. Consulta la tabla Valores permitidos más abajo para ver las opciones disponibles.
  • line_of_business: Este parámetro proporciona una heurística de búsqueda, y un valor válido garantiza que la respuesta será más relevante. Aunque este parámetro es opcional, omitirlo puede afectar a los resultados de la búsqueda, por lo que hemos establecido por defecto properties. Consulta la tabla Valores permitidos más abajo para ver las opciones disponibles.
  • package_type: filtra según los tipos de paquetes que especifique el usuario. Consulta la tabla Valores permitidos más abajo para ver las opciones disponibles.
  • feature: cambia el cálculo de los resultados de la sugerencia. Los valores incluyen hierarchy, nearby_airporty postal_code.
  • region_id: filtra los resultados a los alojamientos con la región especificada.
  • origin: especifica si el texto de la consulta es un origen y no un destino. La búsqueda por defecto sólo encontrará destinos.
  • limit: especifica el número máximo de sugerencias que devuelve la respuesta. Este valor debe estar comprendido entre 1 y 10 (por ejemplo, limit=5). Si no se proporciona este parámetro, el valor por defecto es 10.

Valores permitidos

typeline_of_businesspackage_type
airportproperties (por defecto)flight_property
cityflightsflight_property_car
multi_city_vicinitypackagesflight_car
neighborhoodcarsproperty_car
point_of_interestactivities 
airport_metro_code  
multi_region  
train_station  
metro_station  
address  
property  
bus_station  

Cualquier valor no incluido en la tabla anterior dará lugar a un error.

Solicitud de datos

Una vez que tengas el access_token, configurarás la solicitud GET.

Solicitud de muestras

GET - https://api.ean.com/v3/suggestions?language=en-US&line_of_business=properties&limit=3&text=chicago&type=city&type=neighborhood 

Header : 
Authorization: Bearer {{access_token}}

Muestra de respuesta

[
  {
    "related_id": "4477519",
    "type": "airport",
    "name": "Chicago, IL (ORD-O'Hare Intl.)",
    "name_full": "Chicago, IL, United States of America (ORD-O'Hare Intl.)",
    "name_display": "<B>Chicago</B>, IL, United States of America (ORD-O'Hare Intl.)",
    "country_code": "US",
    "country_code_3": "USA",
    "iata_airport_code": "ORD",
    "iata_airport_metro_code": "CHI",
    "coordinates": {
      "latitude": 41.976977,
      "longitude": -87.90481
    }
  },
  {
    "related_id": "829",
    "type": "city",
    "name": "Chicago",
    "name_full": "Chicago, Illinois, United States of America",
    "name_display": "<B>Chicago</B>, Illinois, United States of America",
    "country_code": "US",
    "country_code_3": "USA",
    "iata_airport_code": "CHI",
    "iata_airport_metro_code": "CHI",
    "coordinates": {
      "latitude": 41.878113,
      "longitude": -87.629799
    }
  },
  {
    "related_id": "6350699",
    "type": "neighborhood",
    "name": "Downtown Chicago",
    "name_full": "Downtown Chicago, Chicago, Illinois, United States of America",
    "name_display": "Downtown <B>Chicago</B>, <B>Chicago</B>, Illinois, United States of America",
    "country_code": "US",
    "country_code_3": "USA",
    "iata_airport_code": "CHI",
    "iata_airport_metro_code": "CHI",
    "coordinates": {
      "latitude": 41.885969845574834,
      "longitude": -87.62933540465228
    }
  }
]

Códigos de error

La API Typeahead comparte códigos de error comunes con las demás API Rapid. Todos esos códigos están detallados en nuestra página Respuestas a errores comunes .

Interactuar con otras API de Rapid

Cuando el usuario final escribe un texto en la barra de búsqueda, la API Typeahead extrae la información de la región (ID de la región, nombre, coordenadas, etc.) o del alojamiento, dependiendo de la búsqueda designada type. A continuación, la API muestra esa información como resultados en la lista de autocompletar.

Cuando el usuario selecciona una región de la lista de autocompletar, se llama a la API de Región para obtener una lista de propiedades en torno a esa región. Utiliza los ID de los alojamientos devueltos por esa búsqueda para llamar a la API de la Tienda, obtener la disponibilidad y mostrar las propiedades en la lista.

Si el usuario selecciona un inmueble de la lista de autocompletar, la API de Compras generará una página de detalles con información sobre la disponibilidad y el contenido del inmueble.

Detalles de la API

Explora las definiciones de los puntos de conexión relacionados en esta página y usa API Explorer u otro software de pruebas para ver la diferencia entre los ejemplos y las definiciones de esquemas, y el resultado real.


Recursos adicionales

Tanto si quieres probar todos los puntos finales de Rapid API como si quieres descargar sus especificaciones OpenAPI o nuestra colección Postman, tenemos lo que necesitas.


¿Te ha resultado útil esta página?
¿Cómo podemos mejorar este contenido?
¡Gracias por ayudarnos a mejorar!