Depois de criar e publicar um evento transacional, é necessário integrar o acionamento desse evento ao site.
A configuração do evento é detalhada em nesta seção.
Por exemplo, você deseja que um evento de "Abandono de carrinho" seja acionado sempre que um de seus clientes sair do site antes de comprar os produtos no carrinho. Para fazer isso, como desenvolvedor da Web, você deve usar a API de mensagens transacionais REST.
O evento transacional é enviado por meio de uma solicitação POST com a seguinte estrutura de URL:
POST https://mc.adobe.io/<ORGANIZATION>/campaign/<transactionalAPI>/<eventID>
<organization>: a ID pessoal da organização. Consulte esta seção.
<transactionalapi>: os endpoints da API de mensagens transacionais.
O nome do endpoint da API de Mensagens transacionais depende da configuração da sua instância. Ele corresponde ao valor "mc" seguido pela ID de organização pessoal. Vejamos o exemplo da empresa Geometrixx, com "geometrixx" como a ID da organização. Nesse caso, o pedido POST seria o seguinte:
POST https://mc.adobe.io/geometrixx/campaign/mcgeometrixx/<eventID>
Observe que o endpoint da API de mensagens transacionais também está visível durante a pré-visualização da API.
<eventid>: o tipo de evento que você deseja enviar. Essa ID é gerada ao criar a configuração do evento (consulte nesta seção).
A solicitação deve conter um cabeçalho "Content-Type: application/json".
Você deve adicionar um conjunto de caracteres, por exemplo utf-8. Observe que esse valor depende do aplicativo REST que você está usando.
-X POST \
-H 'Authorization: Bearer <ACCESS_TOKEN>' \
-H 'Cache-Control: no-cache' \
-H 'X-Api-Key: <API_KEY>' \
-H 'Content-Type: application/json;charset=utf-8' \
-H 'Content-Length:79' \
Os dados do evento estão contidos no corpo do POST JSON. A estrutura do evento depende de sua definição. O botão de visualização da API na tela de definição de recursos fornece um exemplo de solicitação. Consulte esta seção.
Os seguintes parâmetros opcionais podem ser adicionados ao conteúdo do evento para gerenciar o envio de mensagens transacionais vinculadas ao evento:
Os valores dos parâmetros "expiration" e "scheduled" seguem o formato ISO 8601. A norma ISO 8601 especifica a utilização da letra maiúscula "T" para separar a data e a hora. No entanto, ele pode ser removido da entrada ou saída para melhorar a legibilidade.
A resposta POST retorna o status do evento transacional no momento em que foi criada. Para recuperar o status atual (dados do evento, status do evento…), use a Chave primária retornada pela resposta POST em uma solicitação GET:
GET https://mc.adobe.io/<ORGANIZATION>/campaign/<transactionalAPI>/<eventID>/
Exemplo de solicitação
Solicitação POST para enviar o evento.
-X POST https://mc.adobe.io/<ORGANIZATION>/campaign/mcAdobe/EVTcartAbandonment \
-H 'Authorization: Bearer <ACCESS_TOKEN>' \
-H 'Cache-Control: no-cache' \
-H 'X-Api-Key: <API_KEY>' \
-H 'Content-Type: application/json;charset=utf-8' \
-H 'Content-Length:79'
{
"email":"test@example.com",
"scheduled":"2017-12-01 08:00:00.768Z",
"expiration":"2017-12-31 08:00:00.768Z",
"ctx":
{
"cartAmount": "$ 125",
"lastProduct": "Leather motorbike jacket",
"firstName": "Jack"
}
}
Resposta à solicitação POST.
{
"PKey":"<PKEY>",
"ctx":
{
"cartAmount": "",
"lastProduct": "",
"firstName": ""
}
"email":"",
"scheduled":"2017-12-01 08:00:00.768Z",
"expiration":"2017-12-31 08:00:00.768Z",
"href": "mcAdobe/EVTcartAbandonment/<PKEY>",
"serverUrl":" https://myserver.com ",
"status":"pending",
"type":""
}
Na resposta, o campo "status" permite saber se o evento foi processado ou não: