Especificações do servidor para destinos criados com o Destination SDK
As especificações do servidor de destino definem o tipo de plataforma de destino que receberá os dados do Adobe Experience Platform e os parâmetros de comunicação entre a Platform e o seu destino. Por exemplo:
- Uma especificação do servidor de destino de transmissão define o ponto de extremidade do servidor HTTP que receberá as mensagens HTTP da Platform. Para saber como as chamadas HTTP para o ponto de extremidade são formatadas, leia a página especificações do modelo.
- Uma especificação do servidor de destino do Amazon S3 define o nome e o caminho do bucket do S3 para o qual a Platform exportará os arquivos.
- Uma especificação do servidor de destino SFTP define o nome do host, o diretório raiz, a porta de comunicação e o tipo de criptografia do servidor SFTP para o qual a Platform exportará os arquivos.
Para entender onde esse componente se encaixa em uma integração criada com o Destination SDK, consulte o diagrama na documentação das opções de configuração ou consulte as seguintes páginas de visão geral da configuração de destino:
Você pode configurar as especificações do servidor de destino por meio do ponto de extremidade /authoring/destination-servers
. Consulte as seguintes páginas de referência de API para obter exemplos detalhados de chamadas de API, onde é possível configurar os componentes mostrados nesta página.
Esta página mostra todos os tipos de servidor de destino suportados pelo Destination SDK, com todos os seus parâmetros de configuração. Ao criar seu destino, substitua os valores de parâmetro pelos seus próprios.
Tipos de integração compatíveis supported-integration-types
Consulte a tabela abaixo para obter detalhes sobre quais tipos de integrações suportam a funcionalidade descrita nesta página.
Ao criar ou atualizar um servidor de destino, use uma das configurações de tipo de servidor descritas nesta página. Dependendo dos seus requisitos de integração, substitua os valores de parâmetro de amostra desses exemplos pelos seus próprios.
Campos codificados permanentemente em comparação a campos de modelo templatized-fields
Ao criar um servidor de destino por meio do Destination SDK, você pode definir valores de parâmetros de configuração codificando-os na configuração ou usando campos com modelo. Campos modelados permitem que você leia os valores fornecidos pelo usuário na interface do usuário da Platform.
Os parâmetros do servidor de destino têm dois campos configuráveis. Essas opções determinam se você está usando valores codificados ou com modelos.
templatingStrategy
Obrigatório. Define se há um valor embutido em código fornecido pelo campo value
ou um valor configurável pelo usuário na interface. Valores compatíveis:
NONE
: Use esse valor quando estiver codificando o valor do parâmetro através do parâmetrovalue
(veja a próxima linha). Exemplo:"value": "my-storage-bucket"
.PEBBLE_V1
: Use esse valor quando quiser que os usuários forneçam um valor de parâmetro na interface. Exemplo:"value": "{{customerData.bucket}}"
.
value
Obrigatório. Define o valor do parâmetro. Tipos de valores suportados:
- Valor embutido em código: use um valor embutido em código (como
"value": "my-storage-bucket"
) quando não precisar que os usuários insiram um valor de parâmetro na interface. Ao codificar permanentemente um valor,templatingStrategy
deve sempre ser definido comoNONE
. - Valor com modelo: use um valor com modelo (como
"value": "{{customerData.bucket}}"
) quando quiser que os usuários forneçam um valor de parâmetro na interface. Ao usar valores de modelos,templatingStrategy
deve sempre ser definido comoPEBBLE_V1
.
Quando usar campos embutidos em código ou com modelos
Os campos embutidos em código e com modelo têm seus próprios usos no Destination SDK, dependendo do tipo de integração que está sendo criada.
Conectando ao seu destino sem entrada de usuário
Quando os usuários se conectam ao seu destino na interface da Platform, talvez você queira manipular o processo de conexão de destino sem sua entrada.
Para fazer isso, você pode codificar os parâmetros de conexão da plataforma de destino na especificação do servidor. Quando você usa valores de parâmetro embutidos em código na configuração do servidor de destino, a conexão entre o Adobe Experience Platform e a plataforma de destino é manipulada sem nenhuma entrada do usuário.
No exemplo abaixo, um parceiro cria um servidor de destino da Zona de aterrissagem de dados com o campo path.value
codificado.
{
"name":"Data Landing Zone destination server",
"destinationServerType":"FILE_BASED_DLZ",
"fileBasedDlzDestination":{
"path":{
"templatingStrategy":"NONE",
"value":"Your/hardcoded/path/here"
},
"useCase": "Your use case"
}
}
Como resultado, quando os usuários passam pelo tutorial de conexão de destino, eles não veem uma etapa de autenticação. Em vez disso, a autenticação é realizada pela Platform, conforme mostrado na imagem abaixo.
Conectando ao seu destino com a entrada do usuário
Quando a conexão entre a Platform e seu destino deve ser estabelecida seguindo uma entrada de usuário específica na interface do usuário da Platform, como selecionar um endpoint da API ou fornecer um valor de campo, você pode usar campos modelos na especificação do servidor para ler a entrada do usuário e se conectar à plataforma de destino.
No exemplo abaixo, um parceiro cria uma integração em tempo real (streaming) e o campo url.value
usa o parâmetro de modelo {{customerData.region}}
para personalizar parte do ponto de extremidade da API com base na entrada do usuário.
{
"name":"Templatized API endpoint example",
"destinationServerType":"URL_BASED",
"urlBasedDestination":{
"url":{
"templatingStrategy":"PEBBLE_V1",
"value":"https://api.yourcompany.com/data/{{customerData.region}}/items"
}
}
}
Para dar aos usuários a opção de selecionar um valor na interface da Platform, o parâmetro region
também deve ser definido na configuração de destino como um campo de dados do cliente, conforme mostrado abaixo:
"customerDataFields":[
{
"name":"region",
"title":"Region",
"description":"Select an option",
"type":"string",
"isRequired":true,
"readOnly":false,
"enum":[
"US",
"EU"
]
}
Como resultado, quando os usuários passam pelo tutorial de conexão de destino, eles devem selecionar uma região antes de se conectarem à plataforma de destino. Quando se conectam ao destino, o campo de modelo {{customerData.region}}
é substituído pelo valor selecionado pelo usuário na interface, como mostrado na imagem abaixo.
Servidor de destino (transmissão) em tempo real streaming-example
Esse tipo de servidor de destino permite exportar dados do Adobe Experience Platform para o seu destino por meio de solicitações HTTP. A configuração do servidor contém informações sobre o servidor que recebe as mensagens (o servidor do seu lado).
Esse processo fornece dados do usuário como uma série de mensagens HTTP para a plataforma de destino. Os parâmetros abaixo formam o modelo de especificações do servidor HTTP.
A amostra abaixo mostra um exemplo de uma configuração de servidor de destino para um destino em tempo real (transmissão).
{
"name":"Your destination server name",
"destinationServerType":"URL_BASED",
"urlBasedDestination":{
"url":{
"templatingStrategy":"PEBBLE_V1",
"value":"{YOUR_API_ENDPOINT}"
}
}
}
name
Moviestar destination server
.destinationServerType
URL_BASED
para destinos de streaming.templatingStrategy
Obrigatório.
- Use
PEBBLE_V1
se estiver usando um campo de modelo em vez de um valor embutido em código no campovalue
. Use esta opção se você tiver um ponto de extremidade como:https://api.moviestar.com/data/{{customerData.region}}/items
, em que os usuários devem selecionar a região do ponto de extremidade na interface do usuário da Platform. - Use
NONE
se nenhuma transformação com modelo for necessária no lado do Adobe, por exemplo, se você tiver um ponto de extremidade como:https://api.moviestar.com/data/items
value
Amazon S3 servidor de destino s3-example
Esse servidor de destino permite exportar arquivos contendo dados do Adobe Experience Platform para o armazenamento do Amazon S3.
A amostra abaixo mostra um exemplo de uma configuração de servidor de destino para um destino Amazon S3.
{
"name":"Amazon S3 destination",
"destinationServerType":"FILE_BASED_S3",
"fileBasedS3Destination":{
"bucket":{
"templatingStrategy":"PEBBLE_V1",
"value":"{{customerData.bucket}}"
},
"path":{
"templatingStrategy":"PEBBLE_V1",
"value":"{{customerData.path}}"
}
}
}
name
destinationServerType
FILE_BASED_S3
.fileBasedS3Destination.bucket.templatingStrategy
Obrigatório. Defina este valor de acordo com o tipo de valor usado no campo bucket.value
.
- Se você quiser que seus usuários insiram seu próprio nome de bucket na interface de usuário do Experience Platform, defina esse valor como
PEBBLE_V1
. Nesse caso, você deve modelar o campovalue
para ler um valor dos campos de dados do cliente preenchidos pelo usuário. Esse caso de uso é mostrado no exemplo acima. - Se você estiver usando um nome de bucket embutido em código para a integração, como
"bucket.value":"MyBucket"
, defina esse valor comoNONE
.
fileBasedS3Destination.bucket.value
"value":"MyBucket"
.fileBasedS3Destination.path.templatingStrategy
Obrigatório. Defina este valor de acordo com o tipo de valor usado no campo path.value
.
- Se você quiser que seus usuários insiram seu próprio caminho na interface do Experience Platform, defina esse valor como
PEBBLE_V1
. Nesse caso, você deve modelar o campopath.value
para ler um valor dos campos de dados do cliente preenchidos pelo usuário. Esse caso de uso é mostrado no exemplo acima. - Se estiver usando um caminho embutido em código para sua integração, como
"bucket.value":"/path/to/MyBucket"
, então defina esse valor comoNONE
.
fileBasedS3Destination.path.value
"value":"/path/to/MyBucket"
.SFTP servidor de destino sftp-example
Este servidor de destino permite exportar arquivos contendo dados do Adobe Experience Platform para o servidor de armazenamento do SFTP.
O exemplo abaixo mostra um exemplo de configuração de servidor de destino para um destino SFTP.
{
"name":"File-based SFTP destination server",
"destinationServerType":"FILE_BASED_SFTP",
"fileBasedSFTPDestination":{
"rootDirectory":{
"templatingStrategy":"PEBBLE_V1",
"value":"{{customerData.rootDirectory}}"
},
"hostName":{
"templatingStrategy":"PEBBLE_V1",
"value":"{{customerData.hostName}}"
},
"port":22,
"encryptionMode":"PGP"
}
}
name
destinationServerType
FILE_BASED_SFTP
.fileBasedSFTPDestination.rootDirectory.templatingStrategy
Obrigatório. Defina este valor de acordo com o tipo de valor usado no campo rootDirectory.value
.
- Se você quiser que seus usuários insiram seu próprio caminho de diretório raiz na interface do usuário do Experience Platform, defina esse valor como
PEBBLE_V1
. Nesse caso, você deve modelar o camporootDirectory.value
para ler um valor fornecido pelo usuário dos campos de dados do cliente preenchidos pelo usuário. Esse caso de uso é mostrado no exemplo acima. - Se estiver usando um caminho de diretório raiz embutido em código para a integração, como
"rootDirectory.value":"Storage/MyDirectory"
, defina esse valor comoNONE
.
fileBasedSFTPDestination.rootDirectory.value
"value":"Storage/MyDirectory"
fileBasedSFTPDestination.hostName.templatingStrategy
Obrigatório. Defina este valor de acordo com o tipo de valor usado no campo hostName.value
.
- Se você quiser que seus usuários insiram seu próprio nome de host na interface do usuário do Experience Platform, defina esse valor como
PEBBLE_V1
. Nesse caso, você deve modelar o campohostName.value
para ler um valor fornecido pelo usuário dos campos de dados do cliente preenchidos pelo usuário. Esse caso de uso é mostrado no exemplo acima. - Se você estiver usando um nome de host codificado para sua integração, como
"hostName.value":"my.hostname.com"
, defina esse valor comoNONE
.
fileBasedSFTPDestination.hostName.value
"hostName.value":"my.hostname.com"
.port
encryptionMode
Indica se deve ser usada criptografia de arquivo. Valores compatíveis:
- PGP
- None
Azure Data Lake Storage (ADLS) servidor de destino adls-example
Este servidor de destino permite exportar arquivos contendo dados do Adobe Experience Platform para sua conta do Azure Data Lake Storage.
A amostra abaixo mostra um exemplo de uma configuração de servidor de destino para um destino Azure Data Lake Storage.
{
"name":"ADLS destination server",
"destinationServerType":"FILE_BASED_ADLS_GEN2",
"fileBasedAdlsGen2Destination":{
"path":{
"templatingStrategy":"PEBBLE_V1",
"value":"{{customerData.path}}"
}
}
}
name
destinationServerType
FILE_BASED_ADLS_GEN2
.fileBasedAdlsGen2Destination.path.templatingStrategy
Obrigatório. Defina este valor de acordo com o tipo de valor usado no campo path.value
.
- Se você quiser que seus usuários insiram o caminho da pasta ADLS na interface do usuário do Experience Platform, defina esse valor como
PEBBLE_V1
. Nesse caso, você deve modelar o campopath.value
para ler um valor dos campos de dados do cliente preenchidos pelo usuário. Esse caso de uso é mostrado no exemplo acima. - Se estiver usando um caminho embutido em código para sua integração, como
"abfs://<file_system>@<account_name>.dfs.core.windows.net/<path>/"
, então defina esse valor comoNONE
.
fileBasedAdlsGen2Destination.path.value
abfs://<file_system>@<account_name>.dfs.core.windows.net/<path>/
.Azure Blob Storage servidor de destino blob-example
Este servidor de destino permite exportar arquivos contendo dados do Adobe Experience Platform para o container Azure Blob Storage.
A amostra abaixo mostra um exemplo de uma configuração de servidor de destino para um destino Azure Blob Storage.
{
"name":"Blob destination server",
"destinationServerType":"FILE_BASED_AZURE_BLOB",
"fileBasedAzureBlobDestination":{
"path":{
"templatingStrategy":"PEBBLE_V1",
"value":"{{customerData.path}}"
},
"container":{
"templatingStrategy":"PEBBLE_V1",
"value":"{{customerData.container}}"
}
}
}
name
destinationServerType
FILE_BASED_AZURE_BLOB
.fileBasedAzureBlobDestination.path.templatingStrategy
Obrigatório. Defina este valor de acordo com o tipo de valor usado no campo path.value
.
- Se você quiser que seus usuários insiram seu próprio Azure Blob URI da conta de armazenamento na interface do Experience Platform, defina este valor como
PEBBLE_V1
. Nesse caso, você deve modelar o campopath.value
para ler o valor dos campos de dados do cliente preenchidos pelo usuário. Esse caso de uso é mostrado no exemplo acima. - Se estiver usando um caminho embutido em código para sua integração, como
"path.value": "https://myaccount.blob.core.windows.net/"
, então defina esse valor comoNONE
.
fileBasedAzureBlobDestination.path.value
https://myaccount.blob.core.windows.net/
.fileBasedAzureBlobDestination.container.templatingStrategy
Obrigatório. Defina este valor de acordo com o tipo de valor usado no campo container.value
.
- Se você quiser que seus usuários insiram seu próprio Azure Blob nome do contêiner na interface do Experience Platform, defina este valor como
PEBBLE_V1
. Nesse caso, você deve modelar o campocontainer.value
para ler o valor dos campos de dados do cliente preenchidos pelo usuário. Esse caso de uso é mostrado no exemplo acima. - Se estiver usando um nome de contêiner embutido em código para sua integração, como
"path.value: myContainer"
, defina esse valor comoNONE
.
fileBasedAzureBlobDestination.container.value
myContainer
.Data Landing Zone (DLZ) servidor de destino dlz-example
Este servidor de destino permite exportar arquivos contendo dados da Platform para um armazenamento do Data Landing Zone.
A amostra abaixo mostra um exemplo de uma configuração de servidor de destino para um destino Data Landing Zone (DLZ).
{
"name":"Data Landing Zone destination server",
"destinationServerType":"FILE_BASED_DLZ",
"fileBasedDlzDestination":{
"path":{
"templatingStrategy":"PEBBLE_V1",
"value":"{{customerData.path}}"
},
"useCase": "Your use case"
}
}
name
destinationServerType
FILE_BASED_DLZ
.fileBasedDlzDestination.path.templatingStrategy
Obrigatório. Defina este valor de acordo com o tipo de valor usado no campo path.value
.
- Se você quiser que seus usuários insiram sua própria conta Data Landing Zone na interface do usuário do Experience Platform, defina esse valor como
PEBBLE_V1
. Nesse caso, você deve modelar o campopath.value
para ler um valor dos campos de dados do cliente preenchidos pelo usuário. Esse caso de uso é mostrado no exemplo acima. - Se estiver usando um caminho embutido em código para sua integração, como
"path.value": "https://myaccount.blob.core.windows.net/"
, então defina esse valor comoNONE
.
fileBasedDlzDestination.path.value
Google Cloud Storage servidor de destino gcs-example
Este servidor de destino permite exportar arquivos contendo dados da plataforma para a conta do Google Cloud Storage.
A amostra abaixo mostra um exemplo de uma configuração de servidor de destino para um destino Google Cloud Storage.
{
"name":"Google Cloud Storage Server",
"destinationServerType":"FILE_BASED_GOOGLE_CLOUD",
"fileBasedGoogleCloudStorageDestination":{
"bucket":{
"templatingStrategy":"PEBBLE_V1",
"value":"{{customerData.bucket}}"
},
"path":{
"templatingStrategy":"PEBBLE_V1",
"value":"{{customerData.path}}"
}
}
}
name
destinationServerType
FILE_BASED_GOOGLE_CLOUD
.fileBasedGoogleCloudStorageDestination.bucket.templatingStrategy
Obrigatório. Defina este valor de acordo com o tipo de valor usado no campo bucket.value
.
- Se você quiser que seus usuários insiram seu próprio nome de bucket Google Cloud Storage na interface do usuário do Experience Platform, defina esse valor como
PEBBLE_V1
. Nesse caso, você deve modelar o campobucket.value
para ler um valor dos campos de dados do cliente preenchidos pelo usuário. Esse caso de uso é mostrado no exemplo acima. - Se você estiver usando um nome de bucket embutido em código para a integração, como
"bucket.value": "my-bucket"
, defina esse valor comoNONE
.
fileBasedGoogleCloudStorageDestination.bucket.value
"value": "my-bucket"
.fileBasedGoogleCloudStorageDestination.path.templatingStrategy
Obrigatório. Defina este valor de acordo com o tipo de valor usado no campo path.value
.
- Se você quiser que seus usuários insiram seu próprio caminho de bucket Google Cloud Storage na interface do usuário do Experience Platform, defina esse valor como
PEBBLE_V1
. Nesse caso, você deve modelar o campopath.value
para ler um valor dos campos de dados do cliente preenchidos pelo usuário. Esse caso de uso é mostrado no exemplo acima. - Se estiver usando um caminho embutido em código para sua integração, como
"path.value": "/path/to/my-bucket"
, então defina esse valor comoNONE
.
fileBasedGoogleCloudStorageDestination.path.value
"value": "/path/to/my-bucket"
.Próximas etapas next-steps
Depois de ler este artigo, você terá que entender melhor o que é uma especificação de servidor de destino e como configurá-la.
Para saber mais sobre os outros componentes do servidor de destino, consulte os seguintes artigos: