[Beta]{class="badge informative"}
Crie uma conexão de origem e um fluxo de dados para SAP Commerce usando a API de Serviço de Fluxo
O tutorial a seguir orienta você pelas etapas para criar uma conexão de origem SAP Commerce e um fluxo de dados para trazer contatos de SAP Cobrança de assinatura e dados do cliente para a Adobe Experience Platform usando a Flow Service API.
Introdução
Este guia requer uma compreensão funcional dos seguintes componentes do Experience Platform:
- Fontes: o Experience Platform permite a assimilação de dados de várias fontes, ao mesmo tempo em que fornece a capacidade de estruturar, rotular e aprimorar os dados recebidos usando os serviços do Experience Platform.
- Sandboxes: a Experience Platform fornece sandboxes virtuais que particionam uma única instância do Experience Platform em ambientes virtuais separados para ajudar a desenvolver aplicativos de experiência digital.
As seções a seguir fornecem informações adicionais que você precisará saber para se conectar com êxito ao SAP Commerce usando a API Flow Service.
Coletar credenciais necessárias
Para conectar SAP Commerce ao Experience Platform, você deve fornecer valores para as seguintes propriedades de conexão:
clientId
clientId
da chave de serviço.clientSecret
clientSecret
da chave de serviço.tokenEndpoint
url
da chave de serviço será semelhante a https://subscriptionbilling.authentication.eu10.hana.ondemand.com
.region
url
e tem um valor semelhante a eu10
ou us10
. Por exemplo, se o url
for https://subscriptionbilling.authentication.eu10.hana.ondemand.com
, então você precisará de eu10
.Para obter mais informações sobre essas credenciais, consulte a SAP Commerce documentação.
Conectar o SAP Commerce ao Experience Platform usando a API Flow Service
A seguir estão descritas as etapas que você precisa realizar para autenticar sua origem do SAP Commerce, criar uma conexão de origem e criar um fluxo de dados para trazer seus dados de contas e contatos para a Experience Platform.
Criar uma conexão básica base-connection
Uma conexão base retém informações entre sua origem e a Experience Platform, incluindo as credenciais de autenticação da origem, o estado atual da conexão e a ID de conexão base exclusiva. A ID de conexão básica permite explorar e navegar pelos arquivos de dentro da origem e identificar os itens específicos que deseja assimilar, incluindo informações sobre os tipos de dados e formatos.
Para criar uma ID de conexão base, faça uma solicitação POST para o ponto de extremidade /connections
ao fornecer suas credenciais de autenticação do SAP Commerce como parte do corpo da solicitação.
Formato da API
POST /connections
Solicitação
A solicitação a seguir cria uma conexão base para SAP Commerce:
curl -X POST \
'https://platform.adobe.io/data/foundation/flowservice/connections' \
-H 'Authorization: Bearer {ACCESS_TOKEN}' \
-H 'x-api-key: {API_KEY}' \
-H 'x-gw-ims-org-id: {ORG_ID}' \
-H 'x-sandbox-name: {SANDBOX_NAME}' \
-H 'Content-Type: application/json' \
-d '{
"name": "SAP Commerce base connection",
"description": "Authenticated base connection for SAP Commerce",
"connectionSpec": {
"id": "d8ee38de-7ae9-4058-9610-c79ce75f8e92",
"version": "1.0"
},
"auth": {
"specName": "OAuth2 Client Credential",
"params": {
"region": "{REGION}",
"clientId": "{CLIENT_ID}",
"clientSecret": "{CLIENT_SECRET}"
"tokenEndpoint": "{TOKEN_ENDPOINT}"
}
}
}'
name
description
connectionSpec.id
auth.specName
auth.params.region
url
e tem um valor semelhante a eu10
ou us10
. Por exemplo, se o url
for https://subscriptionbilling.authentication.eu10.hana.ondemand.com
, você precisará de eu10
.auth.params.clientId
clientId
da chave de serviço.auth.params.clientSecret
clientSecret
da chave de serviço.auth.params.tokenEndpoint
url
da chave de serviço será semelhante a https://subscriptionbilling.authentication.eu10.hana.ondemand.com
.Resposta
Uma resposta bem-sucedida retorna a conexão base recém-criada, incluindo seu identificador de conexão exclusivo (id
). Essa ID é necessária para explorar a estrutura de arquivos e o conteúdo da fonte na próxima etapa.
{
"id": "5f6d6022-3f64-400c-ba01-d4010de2d8ff",
"etag": "\"f8018de1-0000-0200-0000-6482d7210000\""
}
Explorar sua fonte explore
Depois de ter a ID de conexão básica, você pode explorar o conteúdo e a estrutura dos dados de origem executando uma solicitação GET para o ponto de extremidade /connections
enquanto fornece a ID de conexão básica como um parâmetro de consulta.
Formato da API
GET /connections/{BASE_CONNECTION_ID}/explore?objectType=rest&object={OBJECT}&fileType={FILE_TYPE}&preview={PREVIEW}&sourceParams={SOURCE_PARAMS}
Ao executar solicitações do GET para explorar a estrutura e o conteúdo do arquivo de origem, você deve incluir os parâmetros de consulta listados na tabela abaixo:
{BASE_CONNECTION_ID}
objectType=rest
rest
.{OBJECT}
json
.fileType=json
json
é o único tipo de arquivo com suporte.{PREVIEW}
{SOURCE_PARAMS}
Define parâmetros para o arquivo de origem que você deseja trazer para a Experience Platform. Para recuperar o tipo de formato aceito para {SOURCE_PARAMS}
, você deve codificar a cadeia inteira em base64.
SAP Commerce dá suporte a várias APIs. Dependendo do tipo de objeto que você estiver utilizando, passe uma das opções abaixo:
customers
contacts
A origem SAP Commerce dá suporte a várias APIs. Dependendo do tipo de objeto que você está usando, a solicitação a ser enviada é como a seguir:
accordion | ||
---|---|---|
Solicitação | ||
Para a API de clientes SAP Commerce, o valor de
|
accordion | ||
---|---|---|
Resposta | ||
Uma resposta bem-sucedida retorna uma estrutura JSON como a seguinte:
|
accordion | ||
---|---|---|
Solicitação | ||
Para a API de Contatos SAP Commerce, o valor de
|
accordion | ||
---|---|---|
Resposta | ||
Uma resposta bem-sucedida retorna uma estrutura JSON como a seguinte:
|
Criar uma conexão de origem source-connection
Você pode criar uma conexão de origem fazendo uma solicitação POST para o ponto de extremidade /sourceConnections
da API Flow Service. Uma conexão de origem consiste em uma ID de conexão, um caminho para o arquivo de dados de origem e uma ID de especificação de conexão.
Formato da API
POST /sourceConnections
Dependendo do tipo de objeto que você estiver utilizando, selecione uma das guias abaixo:
accordion | ||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Solicitação | ||||||||||||||||||||
A solicitação a seguir cria uma conexão de origem para dados de clientes SAP Commerce:
|
accordion | ||
---|---|---|
Resposta | ||
Uma resposta bem-sucedida retorna o identificador exclusivo (
|
accordion | ||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Solicitação | ||||||||||||||||||||
A solicitação a seguir cria uma conexão de origem para dados de contatos de SAP Commerce:
|
accordion | ||
---|---|---|
Resposta | ||
Uma resposta bem-sucedida retorna o identificador exclusivo (
|
Criar um esquema XDM de destino target-schema
Para que os dados de origem sejam usados no Experience Platform, um esquema de destino deve ser criado para estruturar os dados de origem de acordo com suas necessidades. O esquema de destino é usado para criar um conjunto de dados do Experience Platform no qual os dados de origem estão contidos.
Um esquema XDM de destino pode ser criado executando uma solicitação POST para a API do Registro de Esquema.
Para obter etapas detalhadas sobre como criar um esquema XDM de destino, consulte o tutorial sobre criação de um esquema usando a API.
Criar um conjunto de dados de destino target-dataset
Um conjunto de dados de destino pode ser criado executando uma solicitação POST para a API de Serviço de Catálogo, fornecendo a ID do esquema de destino na carga.
Para obter etapas detalhadas sobre como criar um conjunto de dados de destino, consulte o tutorial sobre criação de um conjunto de dados usando a API.
Criar uma conexão de destino target-connection
Uma conexão de destino representa a conexão com o destino em que os dados assimilados devem ser armazenados. Para criar uma conexão de destino, você deve fornecer a ID de especificação da conexão fixa que corresponde ao data lake. Esta ID é: c604ff05-7f1a-43c0-8e18-33bf874cb11c
.
Agora você tem os identificadores exclusivos, um esquema de destino, um conjunto de dados de destino e a ID de especificação da conexão para o data lake. Usando esses identificadores, você pode criar uma conexão de destino usando a API Flow Service para especificar o conjunto de dados que conterá os dados de origem de entrada.
Formato da API
POST /targetConnections
Solicitação
A solicitação a seguir cria uma conexão de destino para SAP Commerce:
curl -X POST \
'https://platform.adobe.io/data/foundation/flowservice/targetConnections' \
-H 'Authorization: Bearer {ACCESS_TOKEN}' \
-H 'x-api-key: {API_KEY}' \
-H 'x-gw-ims-org-id: {ORG_ID}' \
-H 'x-sandbox-name: {SANDBOX_NAME}' \
-H 'Content-Type: application/json' \
-d '{
"name": "SAP Commerce Target Connection Generic Rest",
"description": "SAP Commerce Target Connection Generic Rest",
"connectionSpec": {
"id": "c604ff05-7f1a-43c0-8e18-33bf874cb11c",
"version": "1.0"
},
"data": {
"format": "parquet_xdm",
"schema": {
"id": "https://ns.adobe.com/{TENANT_ID}/schemas/325fd5394ba421246b05c0a3c2cd5efeec2131058a63d473",
"version": "1.2"
}
},
"params": {
"dataSetId": "645923cd7aeeea1c06c5e92e"
}
}'
name
description
connectionSpec.id
6b137bf6-d2a0-48c8-914b-d50f4942eb85
.data.format
params.dataSetId
Resposta
Uma resposta bem-sucedida retorna o identificador exclusivo (id
) da nova conexão de destino. Essa ID é necessária nas etapas posteriores.
{
"id": "5b72a4b6-2fb8-4ca7-8ad8-4114a3063c5c",
"etag": "\"db00c6dc-0000-0200-0000-6482d8280000\""
}
Criar um mapeamento mapping
Para que os dados de origem sejam assimilados em um conjunto de dados de destino, eles devem primeiro ser mapeados para o esquema de destino ao qual o conjunto de dados de destino adere. Isso é feito executando uma solicitação POST para Data Prep API com mapeamentos de dados definidos na carga da solicitação.
Formato da API
POST /conversion/mappingSets
accordion | ||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Solicitação | ||||||||||||||
A solicitação a seguir cria um mapeamento para os dados da API do cliente SAP Commerce
|
accordion | ||
---|---|---|
Resposta | ||
Uma resposta bem-sucedida retorna detalhes do mapeamento recém-criado, incluindo seu identificador exclusivo (
|
accordion | ||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Solicitação | ||||||||||||||
A solicitação a seguir cria um mapeamento para os dados da API de Contatos SAP Commerce
|
accordion | ||
---|---|---|
Resposta | ||
Uma resposta bem-sucedida retorna detalhes do mapeamento recém-criado, incluindo seu identificador exclusivo (
|
Criar um fluxo flow
A última etapa para trazer dados de SAP Commerce para a Experience Platform é criar um fluxo de dados. Até agora, você tem os seguintes valores necessários preparados:
Um fluxo de dados é responsável por agendar e coletar dados de uma origem. Você pode criar um fluxo de dados executando uma solicitação POST enquanto fornece os valores mencionados anteriormente na carga.
Formato da API
POST /flows
Solicitação
curl -X POST \
'https://platform.adobe.io/data/foundation/flowservice/flows' \
-H 'x-api-key: {API_KEY}' \
-H 'x-gw-ims-org-id: {ORG_ID}' \
-H 'x-sandbox-name: {SANDBOX_NAME}' \
-H 'Content-Type: application/json' \
-d '{
"name": "SAP Commerce Connector Description Flow Generic Rest",
"description": "SAP Commerce Connector Description Flow Generic Rest",
"flowSpec": {
"id": "6499120c-0b15-42dc-936e-847ea3c24d72",
"version": "1.0"
},
"sourceConnectionIds": [
"2ef2e831-f4f1-4363-a0f7-08b4ea347164"
],
"targetConnectionIds": [
"5b72a4b6-2fb8-4ca7-8ad8-4114a3063c5c"
],
"transformations": [
{
"name": "Mapping",
"params": {
"mappingId": "ddf0592bcc9d4ac391803f15f2429f87",
"mappingVersion": "0"
}
}
],
"scheduleParams": {
"startTime": "1625040887",
"frequency": "once",
}
}'
name
description
flowSpec.id
6499120c-0b15-42dc-936e-847ea3c24d72
.flowSpec.version
1.0
.sourceConnectionIds
targetConnectionIds
transformations
transformations.name
transformations.params.mappingId
transformations.params.mappingVersion
0
.scheduleParams.startTime
scheduleParams.frequency
scheduleParams.interval
Resposta
Uma resposta bem-sucedida retorna a ID (id
) do fluxo de dados recém-criado. Você pode usar essa ID para monitorar, atualizar ou excluir seu fluxo de dados.
{
"id": "fcd16140-81b4-422a-8f9a-eaa92796c4f4",
"etag": "\"9200a171-0000-0200-0000-6368c1da0000\""
}
Apêndice
A seção a seguir fornece informações sobre as etapas que podem ser seguidas para monitorar, atualizar e excluir o fluxo de dados.
Monitorar seu fluxo de dados
Depois que o fluxo de dados for criado, você poderá monitorar os dados que estão sendo assimilados por meio dele para ver informações sobre execuções de fluxo, status de conclusão e erros. Para obter exemplos completos de API, leia o guia em monitorando seus fluxos de dados de fontes usando a API.
Atualizar seu fluxo de dados
Atualize os detalhes do seu fluxo de dados, como seu nome e descrição, bem como seu agendamento de execução e conjuntos de mapeamento associados fazendo uma solicitação PATCH para o ponto de extremidade /flows
da API Flow Service, ao mesmo tempo em que fornece a ID do seu fluxo de dados. Ao fazer uma solicitação PATCH, você deve fornecer o etag
exclusivo do fluxo de dados no cabeçalho If-Match
. Para obter exemplos completos de API, leia o guia em atualizando fluxos de dados de fontes usando a API.
Atualizar sua conta
Atualize o nome, a descrição e as credenciais da conta de origem executando uma solicitação PATCH para a API Flow Service enquanto fornece a ID da conexão base como um parâmetro de consulta. Ao fazer uma solicitação PATCH, você deve fornecer o etag
exclusivo da sua conta de origem no cabeçalho If-Match
. Para obter exemplos completos de API, leia o guia em atualizando a conta de origem usando a API.
Excluir seu fluxo de dados
Exclua seu fluxo de dados executando uma solicitação DELETE para a API Flow Service enquanto fornece a ID do fluxo de dados que você deseja excluir como parte do parâmetro de consulta. Para obter exemplos completos de API, leia o guia em excluindo seus fluxos de dados usando a API.
Excluir sua conta
Exclua sua conta executando uma solicitação DELETE para a API Flow Service enquanto fornece a ID de conexão básica da conta que você deseja excluir. Para obter exemplos completos de API, leia o guia em excluindo sua conta de origem usando a API.