[Ultimate]{class="badge positive"}
Conexão da API HTTP
Visão geral overview
O destino da API HTTP é um destino de streaming do Experience Platform que ajuda a enviar dados de perfil para endpoints HTTP de terceiros.
Para enviar dados de perfil para pontos de extremidade HTTP, primeiro você deve se conectar ao destino no Experience Platform.
Casos de uso use-cases
Use o destino da API HTTP para exportar dados de perfil XDM e públicos-alvo para endpoints HTTP genéricos. Lá, você pode executar suas próprias análises ou executar outras operações que possam ser necessárias nos dados de perfil exportados do Experience Platform.
Os endpoints HTTP podem ser sistemas próprios dos clientes ou soluções de terceiros.
Públicos-alvo compatíveis supported-audiences
Esta seção descreve quais tipos de públicos-alvo você pode exportar para esse destino.
Esta categoria inclui todas as origens de público-alvo fora dos públicos-alvo gerados pelo Segmentation Service. Leia sobre as várias origens do público-alvo. Alguns exemplos incluem:
- carregar audiências personalizadas importadas para o Experience Platform de arquivos CSV,
- públicos-alvo semelhantes,
- públicos federados,
- públicos-alvo gerados em outros aplicativos Experience Platform, como Adobe Journey Optimizer,
- e muito mais.
Públicos-alvo compatíveis por tipo de dados de público-alvo:
Tipo e frequência de exportação export-type-frequency
Consulte a tabela abaixo para obter informações sobre o tipo e a frequência da exportação de destino.
Pré-requisitos prerequisites
Para usar o destino da API HTTP para exportar dados do Experience Platform, você deve atender aos seguintes pré-requisitos:
- Você deve ter um endpoint HTTP compatível com REST API.
- Seu endpoint HTTP deve ser compatível com o esquema de perfil do Experience Platform. Nenhuma transformação em um esquema de carga de terceiros é compatível com o destino da API HTTP. Consulte a seção dados exportados para obter um exemplo do esquema de saída do Experience Platform.
- Seu ponto de extremidade HTTP deve oferecer suporte a cabeçalhos.
- Seu endpoint HTTP deve responder em 2 segundos para garantir o processamento de dados adequado e evitar erros de tempo limite.
- Se você planeja usar mTLS: o endpoint de recebimento de dados deve ter o TLS desativado e somente o mTLS ativado.
Suporte e certificado do protocolo mTLS mtls-protocol-support
Você pode usar o Mutual Transport Layer Security (mTLS) para garantir a segurança aprimorada em conexões de saída com suas conexões de destino de API HTTP.
O mTLS é um protocolo de autenticação mútua que garante que ambas as partes que compartilham informações sejam quem afirmam ser antes que os dados sejam compartilhados. O mTLS inclui uma etapa adicional em comparação ao TLS padrão, no qual o servidor também solicita e verifica o certificado do cliente, enquanto o cliente verifica o certificado do servidor.
Considerações sobre mTLS mtls-considerations
O suporte mTLS para destinos de API HTTP se aplica somente ao ponto de extremidade de recebimento de dados para o qual são enviadas exportações de perfil (o campo Ponto de Extremidade HTTP em detalhes de destino).
Configuração de mTLS para exportação de dados configuring-mtls
Para usar mTLS com destinos da API HTTP, o Ponto de Extremidade HTTP (ponto de extremidade de recebimento de dados) configurado na página detalhes do destino deve ter os protocolos TLS desabilitados e somente o mTLS habilitado. Se o protocolo TLS 1.2 ainda estiver habilitado no endpoint, nenhum certificado será enviado para a autenticação de cliente. Isso significa que para usar mTLS com seu destino da API HTTP, o ponto de extremidade do servidor de recebimento de dados deve ser um ponto de extremidade de conexão habilitado somente para mTLS.
Recuperar e inspecionar detalhes do certificado certificate
Se você quiser inspecionar detalhes do certificado, como Nome Comum (CN) e Nomes Alternativos da Entidade (SAN), para validação adicional de terceiros, use a API para recuperar o certificado e extrair esses campos da resposta.
Consulte a documentação do ponto de extremidade do certificado público para obter mais informações.
INCLUO NA LISTA DE PERMISSÕES de endereços IP ip-address-allowlist
Para atender aos requisitos de segurança e conformidade dos clientes, o Experience Platform fornece uma lista de IPs estáticos que você pode incluir na lista de permissões para o destino da API HTTP. Consulte incluo na lista de permissões de endereços IP para destinos de streaming para obter a lista completa de IPs a serem incluídos na lista de permissões.
Tipos de autenticação compatíveis supported-authentication-types
O destino da API HTTP oferece suporte a vários tipos de autenticação para o terminal HTTP:
- Endpoint HTTP sem autenticação;
- Autenticação do token portador;
- Autenticação de credenciais de cliente OAuth 2.0 com o formulário de corpo, com client ID, client secret e grant type no corpo da solicitação HTTP, como mostrado no exemplo abaixo.
curl --location --request POST '<YOUR_API_ENDPOINT>' \
--header 'Content-Type: application/x-www-form-urlencoded' \
--data-urlencode 'grant_type=client_credentials' \
--data-urlencode 'client_id=<CLIENT_ID>' \
--data-urlencode 'client_secret=<CLIENT_SECRET>'
- Credenciais de cliente OAuth 2.0 com autorização básica, com um cabeçalho de autorização que contém client ID e client secret codificados em URL.
curl --location --request POST 'https://some-api.com/token' \
--header 'Authorization: Basic base64(clientId:clientSecret)' \
--header 'Content-type: application/x-www-form-urlencoded; charset=UTF-8' \
--data-urlencode 'grant_type=client_credentials'
Conectar ao destino connect-destination
Para se conectar a este destino, siga as etapas descritas no tutorial de configuração de destino. Ao se conectar a esse destino, você deve fornecer as seguintes informações:
Informações de autenticação authentication-information
Autenticação de token do portador bearer-token-authentication
Se você selecionar o tipo de autenticação Token de portador para se conectar ao seu ponto de extremidade HTTP, insira as informações abaixo e selecione Conectar-se ao destino:
- Token do portador: insira o token do portador para autenticar em seu local HTTP.
Sem autenticação no-authentication
Se você selecionar o tipo de autenticação Nenhum para se conectar ao seu ponto de extremidade HTTP:
Ao selecionar essa opção de autenticação, você só precisa selecionar Conectar-se ao destino e a conexão com seu ponto de extremidade é estabelecida.
Autenticação de senha do OAuth 2 oauth-2-password-authentication
Se você selecionar o tipo de autenticação Senha do OAuth 2 para se conectar ao seu ponto de extremidade HTTP, insira as informações abaixo e selecione Conectar-se ao destino:
- URL do Token de Acesso: a URL no seu lado que emite tokens de acesso e, opcionalmente, atualiza tokens.
- ID do Cliente: o
client IDque seu sistema atribui à Adobe Experience Platform. - Segredo do Cliente: o
client secretque seu sistema atribui à Adobe Experience Platform. - Nome de usuário: o nome de usuário para acessar seu ponto de extremidade HTTP.
- Senha: a senha para acessar seu ponto de extremidade HTTP.
Autenticação de Credenciais de Cliente OAuth 2 oauth-2-client-credentials-authentication
Se você selecionar o tipo de autenticação Credenciais de Cliente OAuth 2 para se conectar ao seu ponto de extremidade HTTP, insira as informações abaixo e selecione Conectar ao destino:
-
URL do Token de Acesso: a URL no seu lado que emite tokens de acesso e, opcionalmente, atualiza tokens.
-
ID do Cliente: o
client IDque seu sistema atribui à Adobe Experience Platform. -
Segredo do Cliente: o
client secretque seu sistema atribui à Adobe Experience Platform. -
Tipo de Credenciais do Cliente: selecione o tipo de concessão de Credenciais de Cliente OAuth 2 com suporte do seu ponto de extremidade:
- Formulário de Corpo Codificado: neste caso,
client IDeclient secretestão incluídos no corpo da solicitação enviada para o seu destino. Para ver um exemplo, consulte a seção Tipos de autenticação suportados. - Autorização básica: neste caso, o
client IDe oclient secretestão incluídos em um cabeçalhoAuthorizationdepois de serem codificados em base64 e enviados para o seu destino. Para ver um exemplo, consulte a seção Tipos de autenticação suportados.
- Formulário de Corpo Codificado: neste caso,
Preencher detalhes do destino destination-details
Para configurar detalhes para o destino, preencha os campos obrigatórios e opcionais abaixo. Um asterisco ao lado de um campo na interface do usuário indica que o campo é obrigatório.
- Nome: digite um nome pelo qual você reconhecerá este destino no futuro.
- Descrição: insira uma descrição que ajudará você a identificar este destino no futuro.
- Ponto de Extremidade HTTP: A URL do ponto de extremidade HTTP para o qual você deseja enviar os dados do perfil. Este é o terminal de recebimento de dados. Se você estiver usando mTLS, esse endpoint deve ter o TLS desativado e somente o mTLS ativado.
- Cabeçalhos: insira todos os cabeçalhos personalizados que você deseja incluir nas chamadas de destino, seguindo este formato:
header1:value1,header2:value2,...headerN:valueN. - Parâmetros de consulta: como opção, você pode adicionar parâmetros de consulta à URL do ponto de extremidade HTTP. Formate os parâmetros de consulta usados desta forma:
parameter1=value¶meter2=value. - Incluir carimbos de data/hora de público-alvo: ative se desejar que a exportação de dados inclua o carimbo de data/hora UNIX quando os públicos-alvo foram criados e atualizados, bem como o carimbo de data/hora UNIX quando os públicos-alvo foram mapeados para o destino para ativação. Para obter um exemplo de exportação de dados com essa opção selecionada, consulte a seção Dados exportados, mais abaixo.
- Incluir nomes de público-alvo: alterne se desejar que a exportação de dados inclua os nomes dos públicos-alvo que você está exportando. Observação: os nomes de públicos-alvo são incluídos apenas para públicos-alvo mapeados para o destino. Públicos não mapeados que aparecem na exportação não incluirão o campo
name. Para obter um exemplo de exportação de dados com essa opção selecionada, consulte a seção Dados exportados, mais abaixo. - Incluir somente públicos mapeados: ative esta opção para que o objeto
segmentMembershipna exportação inclua somente os públicos mapeados neste fluxo de dados. Mantenha a opção desativada para incluir públicos que compartilham a mesma política de mesclagem que os públicos mapeados, mesmo que eles não estejam mapeados neste fluxo de dados. Essa opção está ativada por padrão para novas conexões de destino. Os fluxos de dados criados antes dessa opção serem introduzidos não exibem essa opção e continuam a exportar todos os públicos-alvo que compartilham a mesma política de mesclagem. Para obter um exemplo de exportação de dados com essa opção selecionada, consulte a seção Dados exportados, mais abaixo.
Ativar alertas enable-alerts
Você pode ativar os alertas para receber notificações sobre o status do fluxo de dados para o seu destino. Selecione um alerta na lista para assinar e receber notificações sobre o status do seu fluxo de dados. Para obter mais informações sobre alertas, consulte o manual sobre assinatura de alertas de destino usando a interface.
Quando terminar de fornecer detalhes da conexão de destino, selecione Avançar.
Ativar públicos-alvo para esse destino activate
- Para ativar dados, você precisa de Exibir Destinos, Ativar Destinos, Exibir Perfis e Exibir Segmentos permissões de controle de acesso. Leia a visão geral do controle de acesso ou contate o administrador do produto para obter as permissões necessárias.
- A avaliação de política de consentimento não tem suporte atualmente em exportações para o destino da API HTTP. Leia mais.
Consulte Ativar dados de público-alvo para destinos de exportação de perfil de streaming para obter instruções sobre como ativar públicos-alvo para este destino.
Atributos de destino attributes
Na etapa Selecionar atributos, a Adobe recomenda selecionar um identificador exclusivo do seu esquema de união. Selecione o identificador exclusivo e quaisquer outros campos XDM que você deseja exportar para o destino.
Comportamento de exportação de perfil profile-export-behavior
O Experience Platform otimiza o comportamento de exportação de perfis para o destino da API HTTP, a fim de exportar dados somente para o endpoint da API quando atualizações relevantes para um perfil tiverem ocorrido após a qualificação de público-alvo ou outros eventos significativos. Os perfis são exportados para seu destino nas seguintes situações:
- A atualização do perfil foi determinada por uma alteração na associação de público-alvo para pelo menos um dos públicos-alvo mapeados para o destino. Por exemplo, o perfil se qualificou para um dos públicos mapeados para o destino ou saiu de um dos públicos mapeados para o destino.
- A atualização do perfil foi determinada por uma alteração no mapa de identidade. Por exemplo, um perfil que já se qualificou para um dos públicos-alvo mapeados para o destino teve uma nova identidade adicionada ao atributo do mapa de identidade.
- A atualização do perfil foi determinada por uma alteração nos atributos de pelo menos um dos atributos mapeados para o destino. Por exemplo, um dos atributos mapeados para o destino na etapa de mapeamento é adicionado a um perfil.
Em todos os casos descritos acima, somente os perfis em que ocorreram atualizações relevantes são exportados para o seu destino. Por exemplo, se um público-alvo mapeado para o fluxo de destino tiver cem membros e cinco novos perfis se qualificarem para o público-alvo, a exportação para o destino será incremental e incluirá apenas os cinco novos perfis.
O que determina uma exportação de dados e o que está incluído na exportação what-determines-export-what-is-included
Com relação aos dados exportados para um determinado perfil, é importante entender os dois conceitos diferentes de o que determina uma exportação de dados para seu destino de API HTTP e quais dados são incluídos na exportação.
- Atributos e públicos mapeados servem como indicação para uma exportação de destino. Isso significa que se o status
segmentMembershipde um perfil for alterado pararealizedouexitingou qualquer atributo mapeado for atualizado, uma exportação de destino será iniciada. - Como as identidades não podem ser mapeadas para destinos da API HTTP no momento, as alterações em qualquer identidade em um determinado perfil também determinam as exportações de destino.
- Uma alteração em um atributo é definida como qualquer atualização no atributo, seja ou não o mesmo valor. Isso significa que uma substituição em um atributo é considerada uma alteração, mesmo que o valor em si não tenha sido alterado.
- O objeto
segmentMembershipinclui o público mapeado no fluxo de dados de ativação, para o qual o status do perfil foi alterado após um evento de qualificação ou de saída de público. Quando a opção Incluir somente públicos mapeados está ativada, a exportação inclui somente os públicos mapeados no fluxo de dados de ativação. Quando esta opção está desativada, outros públicos não mapeados para os quais o perfil qualificado também podem fazer parte da exportação de destino, se esses públicos pertencerem à mesma política de mesclagem que o público mapeado no fluxo de dados de ativação. Os fluxos de dados criados antes dessa opção ser introduzida não a têm ativada e continuam a exportar todos os públicos-alvo que compartilham a mesma política de mesclagem.
Importante: quando a opção Incluir nomes de público-alvo está habilitada, os nomes de público-alvo são incluídos apenas para públicos mapeados para o destino. Públicos não mapeados que aparecem na exportação não incluirão o camponame, mesmo se a opção estiver habilitada. - Todas as identidades no objeto
identityMaptambém estão incluídas (no momento, o Experience Platform não oferece suporte ao mapeamento de identidade no destino da API HTTP). - Somente os atributos mapeados são incluídos na exportação de destino.
Por exemplo, considere esse fluxo de dados para um destino HTTP, onde três públicos-alvo são selecionados no fluxo de dados e quatro atributos são mapeados para o destino.
Uma exportação de perfil para o destino é acionada quando um perfil se qualifica para ou sai de um dos três públicos mapeados. Quando a opção Incluir somente públicos mapeados está ativada, o objeto segmentMembership (consulte Dados Exportados abaixo) inclui somente os três públicos mapeados. Quando esta opção está desativada, o objeto segmentMembership também pode incluir públicos não mapeados, se esse perfil for um membro deles e se eles compartilharem a mesma política de mesclagem que o público-alvo que acionou a exportação. Por exemplo, se um perfil se qualificar para o público-alvo Cliente com carros DeLosands, mas também for membro do filme Assistido “De volta para o futuro” e dos fãs de ficção científica, esses dois públicos-alvo também aparecerão no objeto segmentMembership quando Incluir somente públicos-alvo mapeados estiver desativado, desde que compartilhem a mesma política de mesclagem com o público-alvo Cliente com carros DeLosands.
Do ponto de vista dos atributos de perfil, qualquer alteração nos quatro atributos mapeados acima determinará uma exportação de destino e qualquer um dos quatro atributos mapeados presentes no perfil estará presente na exportação de dados.
Preenchimento retroativo de dados históricos historical-data-backfill
Quando você adiciona um novo público a um destino existente ou cria um novo destino e mapeia públicos a ele, o Experience Platform exporta dados históricos de qualificação de público para o destino. Os perfis qualificados para o público-alvo antes de o público-alvo ser adicionado ao destino são exportados para o destino em aproximadamente uma hora.
Dados exportados exported-data
Os dados exportados do Experience Platform chegam ao destino HTTP no formato JSON. Por exemplo, a exportação abaixo contém um perfil que se qualificou para um determinado público-alvo, é membro de outros dois públicos-alvo e saiu de outro público-alvo. A exportação também inclui o nome, sobrenome, data de nascimento e endereço de email pessoal do atributo de perfil. As identidades para esse perfil são ECID e email.
{
"person": {
"birthDate": "YYYY-MM-DD",
"name": {
"firstName": "John",
"lastName": "Doe"
}
},
"personalEmail": {
"address": "john.doe@acme.com"
},
"segmentMembership": {
"ups":{
"7841ba61-23c1-4bb3-a495-00d3g5fe1e93":{
"lastQualificationTime":"2022-01-11T21:24:39Z",
"status":"exited"
},
"59bd2fkd-3c48-4b18-bf56-4f5c5e6967ae":{
"lastQualificationTime":"2022-01-02T23:37:33Z",
"status":"realized"
},
"947c1c46-008d-40b0-92ec-3af86eaf41c1":{
"lastQualificationTime":"2021-08-25T23:37:33Z",
"status":"realized"
},
"5114d758-ce71-43ba-b53e-e2a91d67b67f":{
"lastQualificationTime":"2022-01-11T23:37:33Z",
"status":"realized"
}
}
},
"identityMap": {
"ecid": [
{
"id": "14575006536349286404619648085736425115"
},
{
"id": "66478888669296734530114754794777368480"
}
],
"email_lc_sha256": [
{
"id": "655332b5fa2aea4498bf7a290cff017cb4"
},
{
"id": "66baf76ef9de8b42df8903f00e0e3dc0b7"
}
]
}
}
Abaixo estão mais exemplos de dados exportados, dependendo das configurações de interface do usuário selecionadas no fluxo de destino de conexão para as opções Incluir nomes de público-alvo e Incluir carimbos de data/hora de público-alvo:
segmentMembership| code language-json |
|---|
|
| note |
|---|
| NOTE |
Neste exemplo, o primeiro público (5b998cb9-9488-4ec3-8d95-fa8338ced490) é mapeado para o destino e inclui o campo name. O segundo público-alvo (354e086f-2e11-49a2-9e39-e5d9a76be683) não está mapeado para o destino e não inclui o campo name, mesmo que a opção Incluir nomes de público-alvo esteja habilitada. |
segmentMembership| code language-json |
|---|
|
Política de limites e novas tentativas limits-retry-policy
95% do tempo, o Experience Platform tenta oferecer uma latência de taxa de transferência de menos de 10 minutos para mensagens enviadas com êxito, com uma taxa de menos de 10 mil solicitações por segundo para cada fluxo de dados a um destino HTTP.
Quando as solicitações para o destino da API HTTP falham, o Experience Platform as armazena e tenta novamente duas vezes.
Solução de problemas troubleshooting
Para garantir a entrega de dados confiável e evitar problemas de tempo limite, verifique se o seu ponto de extremidade HTTP responde em 2 segundos às solicitações do Experience Platform, conforme especificado na seção pré-requisitos. Respostas que demoram mais resultarão em erros de tempo limite.