Esta é uma tradução automática

Gere a assinatura e construa a URL da solicitação.

Lista de verificação para gerar a assinatura e construir a URL da solicitação:

ItemOrigemObservações
Chave secreta/privadaPara ser compartilhado por Expedia Group.Uma chave secreta é uma sequência alfanumérica de 36 caracteres usada para gerar uma assinatura. Está associado ao partnerId.
Exemplo: 6f437404-261d-4beb-a7fc-43b92f694831.
Nota: Guarde a chave secreta em um local seguro e use-a apenas no server-side para gerar a assinatura. Não deve ser passado como parâmetro durante a construção da URL.
DomínioDomínio do parceiroO elemento domínio do seu site.
Ponto de extremidade/xsell-redirect-pwa?Observe que nosso endpoint é case-sensitive, portanto, todos os nomes de parâmetros devem ser escritos exatamente como mostrado neste documento.

Guia Step-by-step

Passo 1: Construa a URL de solicitação de link direto para a página de resultados propriedade

Construa a URL de solicitação de link direto para a página de resultados propriedade usando o domínio do parceiro em vez do domínio da Expedia no exemplo. Formate os parâmetros de pesquisa e o código de rastreamento conforme o guia de deeplink.

Parâmetros da URL de solicitação

ParâmetrosTipoObrigatórioDescriçãoValor de amostra
partnerIdSequênciaYA ser fornecido por Expedia Group.partnername-POS-Ext-Flight-Conf-EmailDL
urlSequênciaYCrie a URL de solicitação de deeplink para a página de resultados do hotel usando o domínio do parceiro, os parâmetros de pesquisa e o código de rastreamento, seguindo o guia de deeplink. Certifique-se de que o código de rastreamento (mdpcid) esteja incluído e que o valor do parâmetro de saída seja URL-encoded corretamente.
>> Leia o guia de deeplink
url = https%3A%2F%2Fexpedia.com%2Fgo%2Fhotel%2Fsearch%2FDestination%2F2025-12-22%2F2025-12-25%3FMDPCID%3DExpedia-IE.DPS.en_IE.confemail.attachDL.Flight%26CityName%3DORD%26SortBy%3Ddistance%26NumRoom%3D1%26NumAdult-Room1%3D3%26NumChild-Room1%3D2%26Room1-Child1Age%3D9%26Room1-Child2Age%3D6
outboundEndDateTimeRepresentação em formato de string de uma data, seguindo o padrão ISO 8601.YEspecifique a data e a hora de chegada da viagem ao destino. Deve incluir apenas a data, a hora e o fuso horário, de acordo com a norma ISO 8601.

O valor desse parâmetro precisa ser codificado.
2025-10-30T20%3A12%3A17.928020Z
originTlaSequência (3 letras)YEspecifique o código do aeroporto de origem da viagem: IATA.LAS
returnStartDateTimeRepresentação em formato de string de uma data, seguindo o padrão ISO 8601.Necessário apenas para viagens de ida e volta.Especifique a data e a hora de retorno da viagem a partir do destino. De acordo com a norma ISO 8601, pode incluir apenas a data, a hora e o fuso horário.

O valor desse parâmetro precisa ser codificado.
2025-11-10T20%3A12%3A17.928020Z
destinationTlaSequência (3 letras)YEspecifique o código do aeroporto de destino da viagem: IATA.JFK
bookingDateTimeRepresentação em formato de string de uma data, seguindo o padrão ISO 8601.YEspecifique a data e a hora da reserva efetuada. De acordo com a norma ISO 8601, pode incluir apenas a data, a hora e o fuso horário.

O valor desse parâmetro precisa ser codificado.
2025-07-25T20%3A12%3A17.928020Z
bookingStatusSequênciaCaso não seja fornecido, assumiremos que a reserva está confirmada.Os valores válidos para este parâmetro são: confirmed, pendingou failed
Nota: As taxas com desconto aplicam-se apenas quando o bookingStatusé confirmed.
confirmed
attachDLBooleanoYDefina o valor como verdadeiro para ativar as taxas de adesão com desconto.true
signatureSequênciaYGerado server-side pelo parceiro com base em uma chave secreta fornecida por Expedia Group. O comprimento dessa sequência é exatamente 27 caracteres. Codifique a assinatura binária resultante.BcND1F7KElTyGtyUHeXHd2JJLFs

Nota: Os parâmetros de solicitação diferenciam maiúsculas de minúsculas. O uso incorreto de maiúsculas e minúsculas resultará em erro.

URL de solicitação de deeplink:

https://expedia.com/go/hotel/search/Destination/2025-12-22/2025-12-25?MDPCID=Expedia-IE.DPS.en_IE.confemail.attachDL.Flight&CityName=ORD&SortBy=distance&NumRoom=1&NumAdult-Room1=3&NumChild-Room1=2&Room1-Child1Age=9&Room1-Child2Age=6

Etapa 2: Codifique o URL do deeplink usando UTF-8

URL de deeplink codificada:

https%3A%2F%2Fexpedia.com%2Fgo%2Fhotel%2Fsearch%2FDestination%2F2025-12-22%2F2025-12-25%3FMDPCID%3DExpedia-IE.DPS.en_IE.confemail.attachDL.Flight%26CityName%3DORD%26SortBy%3Ddistance%26NumRoom%3D1%26NumAdult-Room1%3D3%26NumChild-Room1%3D2%26Room1-Child1Age%3D9%26Room1-Child2Age%3D6

Etapa 3: Adicione todos os parâmetros necessários para habilitar as taxas de conexão.

outboundEndDateTime(codificado) + originTLA + returnStartDateTime (codificado) + destinationTLA + bookingDateTime (codificado) + partnerid +attachDL

Etapa 4: Construir URL para geração de assinatura (não incluir domínio)

endpoint+ link direto codificado url + outboundEndDateTime (codificado) + originTLA + returnStartDateTime (codificado) + destinationTLA + bookingDateTime (codificado) + partnerid +attachDL

Exemplo

/xsell-redirect-pwa?url=https%3A%2F%2Fexpedia.com%2Fgo%2Fhotel%2Fsearch%2FDestination%2F2025-12-22%2F2025-12-25%3Fmdpcid%3DExpedia-IE.DPS.Expedia.ExtFlightEmail-Xsell_CTA.Hotel%26CityName%3DORD%26SortBy%3Ddistance%26NumRoom%3D1%26NumAdult1%3D3%26NumChild1%3D2%26Rm1child1age%3D9%26Rm1child2age%3D6&outboundEndDateTime=2025-10-30T20%3A12%3A17.928020Z&destinationTLA=LAS&returnStartDateTime=2025-11-10T20%3A12%3A17.928020Z&originTLA=JFK&bookingDateTime=2025-07-25T20%3A12%3A17.928020Z&attachDL=true&partnerid=new-pwa-xsell-testing-airnz

Nota: Substitua Expediapela sua marca

Etapa 5: Assinar a solicitação/gerar a assinatura

A string (URL) obtida na Etapa 4 deve ser assinada usando o algoritmo HMAC-SHA1 com a chave secreta/privada compartilhada por Expedia Group. Na maioria das bibliotecas criptográficas, a assinatura resultante estará em formato binário, podendo ser necessário decodificar a chave para seu formato binário original.

Existem diversas implementações dessa função hash criptográfica definidas na RFC 2104 para várias linguagens e frameworks de computador. A lista a seguir é um subconjunto das implementações disponíveis:

  • Java
  • JavaScript
  • C#
  • Python
  • Ruby

Etapa 6: Codifique a assinatura binária resultante

Codifique a assinatura binária usando Base64URL modificado, que substitui os caracteres +e /da saída Base64URL por - (hífen) e _ (sublinhado), respectivamente, para tornar a URL segura (consulte RFC 4648 para obter informações adicionais). A assinatura deve ter exatamente 27 caracteres.

Exemplos

bj01fgT85mUiRmzxxSufSmlGpiI

9Wzh3Er5-ob35Hbxbk1ltyYHex4

FeW_4NNu4ITpGaSt1KZl-vLb9PI

Além disso, é importante observar que o preenchimento = (se houver) deve ser removido da string codificada em Base64URL.

Etapa 7: Construindo a URL de solicitação final

Construa a URL final do deeplink com estes elementos:

domain+ endpoint + deeplink codificado url + outboundEndDateTime (codificado) + originTLA + returnStartDateTime (codificado) + destinationTLA + bookingDateTime (codificado) + partnerid + attachDL +signature

Exemplo

https://www.expedia.com/xsell-redirect-pwa?url=https%3A%2F%2Fexpedia.com%2Fgo%2Fhotel%2Fsearch%2FDestination%2F2025-12-22%2F2025-12-25%3Fmdpcid%3DExpedia-IE.DPS.Expedia.ExtFlightEmail-Xsell_CTA.Hotel%26CityName%3DORD%26SortBy%3Ddistance%26NumRoom%3D1%26NumAdult1%3D3%26NumChild1%3D2%26Rm1child1age%3D9%26Rm1child2age%3D6&outboundEndDateTime=2025-10-30T20%3A12%3A17.928020Z&destinationTla=LAS&returnStartDateTime=2025-11-10T20%3A12%3A17.928020Z&originTla=JFK&bookingDateTime=2025-07-25T20%3A12%3A17.928020Z&attachDL=true&partnerId=new-pwa-xsell-testing-airnz&signature=3WQjtTHsSCRxrogs3xhY7edWfgE

Etapa 8: Incorpore o URL final no caminho post-booking da companhia aérea.

Lista de verificação

Antes de incorporar o conteúdo no caminho post-booking (como em um e-mail), verifique os seguintes elementos.

Assinatura

  • Em formato Base64URL (não hexadecimal).
  • Tratado como um número inteiro (e não uma string) ao converter para a codificação Base64URL: Substituir+ com- e/ com_ se necessário. Por exemplo:m6y13j0747-x_h81wEzR9jE1fco=.
  • Remover o acolchoamento= (se houver) da string codificada em Base64URL.
  • Com exatamente 27 caracteres.
  • A chave secreta não é visível publicamente no lado do cliente.

Parâmetros

Domínio e ponto final

  • O valor correto é /xsell-redirect-pwa.
  • O URL da solicitação final deve ser uma combinação dedomain +endpoint + link direto codificadourl +outboundEndDateTime (codificado) +originTLA +returnStartDateTime (codificado) +destinationTLA +bookingDateTime (codificado) +partnerid +attachDL + signature

Testes

Verifique se o módulo está anexado antes da implantação em ambiente de teste/produção. A solicitação deve redirecionar para a página de resultados propriedade com base nos critérios de pesquisa no URL de link direto codificado.

Observação: A solução Expedia suporta apenas um ambiente de produção. Se você deseja realizar testes em pre-production, precisará apontar seu domínio pre-production para o domínio de produção da Expedia.

Esta página foi útil?
Como podemos melhorar esse conteúdo?
Agradecemos por nos ajudar a melhorar.