This is an auto-generated translation

Construir la URL de solicitud

La URL de solicitud -la URL que devolverá los resultados de un módulo de adjuntar- consta de un dominio, un punto final, parámetros de solicitud y un parámetro de firma. Este ejemplo muestra un vuelo confirmado a LAX para 2 adultos con salida el 2 de enero de 2023 y regreso el 12 de enero de 2023 que se reservó el 12 de noviembre de 2022.

//xsell.expedia.com/xsell-pwa.js?partnerId=partner123&outboundEndDateTime=2023-01-02T12%3A55%3A00%2B08%3A00&returnStartDateTime=2023-01-12T22%3A30%3A00%2B08%3A00&destinationTla=LAX&numOfAdults=2&locale=en_US&currencyCode=USD&bookingDateTime=2022-11-12T12%3A32%3A15%2B08%3A00&bookingStatus=confirmed&signature=bj01fgT85mUiRmzxxSufSmlGpiI

Construir parámetros de solicitud

En general, los parámetros de solicitud incluyen detalles sobre la reserva efectuada, como el destino y las fechas de inicio y fin del viaje. Esta información se utiliza para generar recomendaciones para el módulo de acoplamiento. Algunos parámetros son opcionales en una petición, pero otros son necesarios para devolver resultados.

Information

Importante

Por seguridad, asegúrate de que todos los valores de los parámetros son percent-encoded UTF-8.

Parámetros de solicitud disponibles

ParámetroDescripciónValor de muestraCampo obligatorio
partnerIdValor de cadena proporcionado por Expedia que se utiliza para identificar a tu organización en los parámetros de la solicitudpartnername_hotel_conf_overlay
bookingStatusValor de cadena que especifica el estado de la reserva, que determina si se pueden aplicar tarifas adjuntas; si el estado de la reserva es pendiente o fallido, no se aplicarán tarifas adjuntasconfirmada
bookingDateTimeValor de cadena que especifica la fecha de la reserva; incluye fecha, hora y zona horaria en formato ISO 86012024-08-29T05:54:02

Valor codificado: 2024-08-29T05%3A54%3A02
outboundEndDateTimeValor de cadena que especifica la llegada al destino; incluye fecha, hora y zona horaria en formato ISO 86012024-08-29T05:54:02

Valor codificado: 2024-08-29T05%3A54%3A02
returnStartDateTimeValor de cadena que especifica la salida del destino; incluye fecha, hora y zona horaria en formato ISO 8601 Nota: Si no se especifica, la duración por defecto del viaje es de 7 días2024-08-29T05:54:02

Valor codificado: 2024-08-29T05%3A54%3A02
localeCadena de 5 caracteres proporcionada por Expedia que indica el idioma en el que se hizo la reserva. Consulta todos los detalles de la localización aquí.en_US
currencyCodeCadena proporcionada por Expedia que indica la moneda en la que se hizo la reservaUSD
destinationTlaCadena de 3 caracteres que indica el código de aeropuerto de la Asociación de Transporte Aéreo Internacional (IATA) ) para el destino

Nota: La URL de la solicitud debe incluir este parámetro (para reservas que incluyan un vuelo) O latitudey longitude (si no se incluye ningún vuelo)
LAXCondicionalmente necesario
latitude y longitudeValor flotante de hasta 12 decimales que especifica las coordenadas del destino del viaje Nota: La URL de la solicitud debe incluir este parámetro (si no se incluye ningún vuelo) O destinationTla (para reservas que incluyan un vuelo)latitud=40.7141667
&longitude=-74.0063889
Condicionalmente necesario
signatureValor de cadena alfanumérica de 27 caracteres que generarás basándote en una clave secreta que te proporcionaremos Consulta Construir la URL de solicitud para más informaciónBcND1F7KElTyGtyUHeXHd2JJLFs
numOfAdultsNúmero entero que especifica el número de adultos de la reserva; mínimo 12
numOfChildrenNúmero entero que especifica el número de hijos de la reserva3
childAgesComma-delimited matriz de enteros que especifica las edades de los niños de la reserva; sólo se requiere si se pasa numOfChildren5,4,2Sí, si se aprueba numOfChildren

Hemos incluido algunos supuestos para ayudarte a comprender los valores tanto de los viajes sencillos como de los más complicados.

|

One-way ejemplo de viaje

Para un viaje one-way, no incluyes el returnStartDateTimecomo parte del parámetro de resultado. Se aplicará el plazo por defecto de 7 días. Para un viaje directo, one-way, con salida de Chicago el 10 de septiembre de 2024 a las 13:00 h y llegada a Las Vegas el mismo día a las 16:00 h, los parámetros serían los siguientes:

  • bookingDateTime: 2024-09-01T05:54:02
  • origin: ORD
  • destinationTla: LAS
  • outboundEndDateTime: 2024-09-10T16:00:00

//xsell.expedia.com/xsell-pwa.js?partnerId=partner123&outboundEndDateTime=2024-09-10T12%3A55%3A00%2B08%3A00&destinationTla=LAS&numOfAdults=2&locale=en_US&currencyCode=USD&bookingDateTime=2024-09-01T12%3A32%3A15%2B08%3A00&bookingStatus=confirmed&signature=bj01fgT85mUiRmzxxSufSmlGpiI

Round-trip ejemplo

Una solicitud de reserva directa, round-trip, entre los mismos destinos, con regreso el 14 de septiembre de 2024, incluiría los siguientes parámetros:

  • bookingDateTime: 2024-09-01T05:54:02
  • origin: ORD
  • destinationTla: LAS
  • outboundEndDateTime: 2024-09-10T16:00:00
  • returnStartDateTime: 2024-09-14T18:00:00

//xsell.expedia.com/xsell-pwa.js?partnerId=partner123&outboundEndDateTime=2024-09-102T12%3A55%3A00%2B08%3A00&returnStartDateTime=2024-09-14T22%3A30%3A00%2B08%3A00&destinationTla=LAS&numOfAdults=2&locale=en_US&currencyCode=USD&bookingDateTime=2024-09-01T12%3A32%3A15%2B08%3A00&bookingStatus=confirmed&signature=bj01fgT85mUiRmzxxSufSmlGpiI

Multi-destination ejemplo de viaje

Para un viaje con varios destinos, recomendamos enviar los datos del viaje sólo para el Tramo 1.

Etapa 1: De Chicago a Las Vegas

  • bookingDateTime: 2024-09-01T05:54:02
  • origin: ORD
  • destinationTla: LAS
  • outboundEndDateTime: 2024-09-10T16:17:00
  • returnStartDateTime: 2024-09-12T13:27:00 (Fecha y hora de inicio de la etapa 2)

Etapa 2: De Las Vegas a San Francisco (No es necesario)

  • origin: LAS
  • destinationTla: OFS
  • StartDateTime: 2024-09-12T13:27:00
  • outboundEndDateTime: 2024-09-15T16:10:00

Etapa 3: De San Francisco a Chicago (No es necesario)
  • origin: OFS
  • destinationTla: ORD
  • StartDateTime: 2024-09-15T16:15:00
  • outboundEndDateTime: 2024-09-19T20:22:00

//xsell.expedia.com/xsell-pwa.js?partnerId=partner123&outboundStartDateTime=2024-09-10T11%3A05%3A00&outboundEndDateTime=2024-09-10T16%3A17%3A00&origin=ORD&destinationTla=LAS&outboundStartDateTime=2024-09-12T13%3A27%3A00&outboundEndDateTime=2024-09-12T16%3A10%3A00&origin=LAS&destinationTla=SFO&outboundStartDateTime=2024-09-14T16%3A15%3A00&outboundEndDateTime=2024-09-14T20%3A22%3A00&origin=SFO&destinationTla=ORD&bookingDateTime=2024-09-01T05:54:02

Construir la URL de solicitud

Todas las URL de solicitud incluirán el dominio y el punto final, seguidos de los parámetros de solicitud, y terminarán con la firma generada con la clave secreta.

Clave secreta

Una clave secreta es una cadena alfanumérica que Expedia comparte de forma segura y que se utiliza para generar una firma que verifica la transacción. Tendrá 36 caracteres, y está asociado a la etiqueta #.partnerId.

Warning

Nota

Guarda tu clave secreta en un lugar seguro y utilízala sólo para generar la firma. No pases el secreto como parámetro durante la construcción de la URL.

Dominio, punto final y parámetros de la solicitud

La URL de tu petición empieza por el dominio. Te recomendamos que mantengas el dominio Expedia para las URL de petición protocol-agnostic://xsell.expedia.com/. La siguiente sección de la URL es la cadena de petición, que consiste en el punto final case-sensitive /xsell-pwa.js?y los parámetros de la petición. Recuerda que los parámetros de la solicitud deben ser UTF-8 percent-encoded.

Paso 1: Construye la cadena de solicitud

La cadena de solicitud incluye el punto final y los parámetros de la solicitud (pero no el dominio). Debería tener este aspecto.

/xsell-pwa.js?partnerId=partner123&outboundEndDateTime=2023-01-02T12%3A55%3A00%2B08%3A00&returnStartDateTime=2023-01-12T22%3A30%3A00%2B08%3A00&destinationTla=LAX&numOfAdults=2&locale=en_US&currencyCode=USD&bookingDateTime=2022-11-12T12%3A32%3A15%2B08%3A00&bookingStatus=confirmed

Paso 2: Firma la solicitud

La cadena obtenida en el paso 1 (incluido el encabezamiento /) debe firmarse con un algoritmo de autenticación de mensajes (HMAC-SHA1) utilizando la clave secreta compartida por hash-based Expedia. En la mayoría de las bibliotecas criptográficas, la firma resultante estará en formato binario.

Hay muchas implementaciones de esta función hash criptográfica definidas en el RFC 2104 para lenguajes y marcos informáticos. Las implementaciones disponibles incluyen:

Paso 3: Codificar la firma resultante

Codifica la firma binaria utilizando la versión modificada de Base64 para URL, que sustituye los caracteres +y /de la salida Base64 por - (guión) y _ (guión bajo), respectivamente, para hacerla segura para URL (consulta RFC 4648 para obtener información adicional). Debería tener un aspecto similar a éste:

bj01fgT85mUiRmzxxSufSmlGpiI

También es importante tener en cuenta que el relleno = (si existe) debe eliminarse de la cadena codificada en Base64.

Paso 4: Construye la URL de la solicitud final

Añade la firma del paso 3 a la cadena del paso 1 como parámetro signature. La firma debe ser siempre el último parámetro de la URL de la petición final.

//xsell.expedia.com/xsell-pwa.js?partnerId=partner123&outboundEndDateTime=2023-01-02T12%3A55%3A00%2B08%3A00&returnStartDateTime=2023-01-12T22%3A30%3A00%2B08%3A00&destinationTla=LAX&numOfAdults=2&locale=en_US&currencyCode=USD&bookingDateTime=2022-11-12T12%3A32%3A15%2B08%3A00&bookingStatus=confirmed&signature=bj01fgT85mUiRmzxxSufSmlGpiI

Antepone el protocolo (// O http:// O https://) y el dominio (recomendamos //xsell.expedia.com para las URL protocol-agnostic ) a la cadena resultante.

//xsell.expedia.com/xsell-pwa.js?partnerId=partner123&outboundStartDateTime=2024-10-22T11%3A55%3A00%2B08%3A00&outboundEndDateTime=2024-10-22T13%3A55%3A00%2B08%3A00&returnStartDateTime=2024-10-30T20%3A30%3A00%2B08%3A00&returnEndDateTime=2024-10-30T22%3A30%3A00%2B08%3A00&destinationTla=LAX&numOfAdults=2&locale=en_US&currencyCode=USD&bookingDateTime=2024-04-12T12%3A32%3A15%2B08%3A00&bookingId=123ABC&bookingStatus=confirmed&signature=bj01fgT85mUiRmzxxSufSmlGpiI

Paso 5: Añade el código JavaScript

Utilizarás la URL de la solicitud final como atributo JavaScript src en la página donde deba aparecer el módulo. Por ejemplo:

<<script src="//xsell.expedia.com/xsell-pwa.js?partnerId=partner123&outboundEndDateTime=2023-01-02T12%3A55%3A00%2B08%3A00&returnStartDateTime=2023-01-12T22%3A30%3A00%2B08%3A00&destinationTla=LAX&numOfAdults=2&locale=en_US&currencyCode=USD&bookingDateTime=2022-11-12T12%3A32%3A15%2B08%3A00&bookingStatus=confirmed&signature=bj01fgT85mUiRmzxxSufSmlGpiI"></script>>

Una vez que hayas creado la URL de solicitud, estás listo para integrarla en el código de tu página.

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