Mon May 06 2024 13:55:54 GMT+0000 (Coordinated Universal Time)
This page provides information about the Integration User Account process for the following scenario:
Data engineers want to upstream various data sources into Customer Data Platform (CDP) through API integration. Their objective is to test and push an initiated payload of email events from the Email Service Provider (ESP) to CDP.
The following are the important considerations to manage and configure API integration:
Self-Service Integration: Manage your mapping configurations through API integration.
Extract, Transform, and Load (ETL) Tool Requirement: Use an ETL tool to transform your source system schema to match the CDP schema on a one-to-one basis. This is crucial as the API requires a consistent object format for upstream requests.
Scheduling and Ingestion: This feature does not support self-service functionality. To schedule the integration, contact Acquia Professional Services.
When developing a fully automated solution and streamlining the process, see the API policy page to ensure the successful construction of your automated framework.
Use the following checklist to test and push a payload of email events from an ESP to CDP:
S.No. | Task |
---|---|
1 | Create a user role through a DW Tracker instance |
2 | Create a user role through Postman |
3 | Initiate your payload test |
Click Add folder to create a new folder for Payload.
POST
.Select Key as scheme and Value as a1user.
Post URL: https://api7-green.agilone.com/v2/*TENANTID*/dw/tracker?scheme=a1user
.
The following are the URL parameters:
Cloud Region | URL Endpoint | Parameter Description |
---|---|---|
AWS | api7-green.agilone.com/v2 |
|
Click the Headers tab.
Add Key as Content-Type and Value as application/json.
Click Body.
The following is the sample code:
{ "events":[ { "SourceSystemID":"Responsys", "Type":"emailClick", "Cookie": "a1cookie", "SourceCustomerNumber":"6952E515-B67C-CB1B-3B21-58367BEC1CA2", "TenantId":"1232", "Email":"[email protected]", "EventTimeStamp":{{epochVariable}}, "SourceMessageNumber":"PT-2022041102" } ], "Customers":[ { "SourceSystemID":"Responsys", "SourceCustomerNumber":"6952E515-B67C-CB1B-3B21-58367BEC1CA2", "Email":"[email protected]", "FirstName":"Brook", "LastName":"Blake", "BirthDay":"27", "BirthMonth":"03", "DoNotEmail":"N", "DoNotCall":"Y", "DoNotText":"N", "DoNotMail":"Y", "EmailStatus":"valid", "MobilePhone":"3172722349", "PrimaryPhone":"3172722349" } ] }
Click Pre-request Script and add the provided Postman script.
The system populates the current epoch date as {{epochVariable}}. For example:
function epoch (date) {
pm.collectionVariables.set("epochVariable", Date.parse(date))
console.log(pm.collectionVariables.get("epochVariable"))
}
const dateToday = new Date()
const timestamp = epoch(dateToday)
The EventTimeStamp
object contains the date and time when the payload is pushed to CDP.
Click Save and click Send.
For successful requests, Postman displays Status: 200 OK.
The following are the reasons to expand the test folders:
As more integrations are developed, conduct POST test payloads in Postman to ensure that requests are correctly functioning, and payloads, objects, and values are properly landing in CDP.
When you use Postman for testing, it serves as a valuable troubleshooting tool for future integrations. By conducting simple payload tests to check responses or other factors, you can quickly identify and address any issues that may arise.
Postman provides an intuitive platform for testing our API with your various source system payloads. By successfully conducting these tests, you gain a better understanding of the structural aspects of the API integration.
Help
If you can't find what you're looking for, then you can reach out to our Support team for further assistance.