Adobe Target
Adobe Target is Adobe’s personalisation, A/B testing, and recommendations product. This integration sends server-side notifications to the Adobe Target Delivery API, recording display, click, and order/conversion events against your Target activities. Sending these server-side keeps revenue and engagement reporting accurate (and feeds the recommendation algorithms) even when the client-side at.js library is blocked or removed.
This connector uses the notifications path of the Delivery API. It does not perform experience decisioning (fetching offers); it records that a known visitor reached a configured mbox and, for purchases, what they bought.
Prerequisites
- An Adobe Target account with at least one activity that uses a server-side mbox (for example an order-confirmation mbox). The mbox name is the join key between Signal’s notifications and your Target reporting.
- Your Target clientCode (Administration > Implementation in the Target UI). This scopes the API; there is no API key.
- A durable tntId for each visitor. The tntId is Adobe Target’s persistent visitor identifier. Signal reads it from the
adobe_tnt_idcollected ID, which the Datafly.js collector captures from the Target cookie set on the customer’s site.
Configuration
| Field | Required | Description |
|---|---|---|
| Client Code | Yes | Your Target clientCode. Forms the API host (CLIENTCODE.tt.omtrdc.net) and the client query parameter. |
| Notification mbox | Yes | The mbox name your order/conversion notifications are recorded against. Must match an mbox used by an existing Target activity. |
Configure in Signal
- In the management UI, add a new integration and select Adobe Target.
- Enter your Client Code and the Notification mbox name.
- Choose the Default preset. It maps
pageto a display notification andOrder Completedto an order/conversion notification. - Attach the integration to your pipeline and save. Delivery mode is server-side.
API Endpoint
POST https://{clientCode}.tt.omtrdc.net/rest/v1/delivery?client={clientCode}
Content-Type: application/json
Cache-Control: no-cacheThe Delivery API requires no authentication. The clientCode in the host and client parameter is the only credential. See the Delivery API overview.
Identity Signals
Adobe Target attributes a notification to a visitor via the durable tntId, sent in the request body id.tntId. Signal maps this from the adobe_tnt_id collected ID. Where available, the Experience Cloud ID (adobe_ecid) is also sent as id.marketingCloudVisitorId to support Analytics-for-Target (A4T) stitching. No PII is sent to Target by this integration, so no hashing is applied.
Event Mapping
| Signal event | Delivery API notification | Notes |
|---|---|---|
page | notifications[].type: display | Records a display against the configured mbox. |
Order Completed | notifications[].type: display + notifications[].order | Records the purchase: order id, total, and purchased product IDs. |
Example: Order Completed
Datafly.js call on the order-confirmation page:
datafly.track("Order Completed", {
order_id: "ORD-10492",
revenue: 149.95,
currency: "GBP",
product_ids: ["SKU-22", "SKU-87"]
});Resulting Delivery API request body sent by Signal:
{
"id": {
"tntId": "8a3f...c1.35_0",
"marketingCloudVisitorId": "0825983...AdobeOrg"
},
"context": {
"channel": "web",
"address": {
"url": "https://shop.example.com/order/confirm",
"referringUrl": "https://shop.example.com/checkout"
},
"userAgent": "Mozilla/5.0 ..."
},
"experienceCloud": {
"analytics": { "logging": "server_side" }
},
"notifications": [
{
"id": "evt-7f21a9",
"type": "display",
"timestamp": 1749200400000,
"mbox": { "name": "orderConfirmPage" },
"order": {
"id": "ORD-10492",
"total": 149.95,
"purchasedProductIds": ["SKU-22", "SKU-87"]
}
}
]
}Testing
- Trigger a
pageorOrder Completedevent through your pipeline with a validadobe_tnt_idpresent. - In the Signal Event Debugger, confirm the outbound request hits
https://{clientCode}.tt.omtrdc.net/rest/v1/delivery?client={clientCode}and returns HTTP 200. - In Adobe Target, open the activity that uses your notification mbox and confirm impressions (and, for orders, revenue) increment in reporting. Reporting can lag; allow time for processing.
Troubleshooting
- 200 OK but nothing in Target reporting — The notification was accepted but attributed to nothing. Confirm the mbox name exactly matches an mbox used by a live Target activity, and that the activity is running.
- Missing tntId — Notifications without a durable
tntIdcannot be attributed to a visitor. Confirm the Datafly.js collector is capturing theadobe_tnt_idcollected ID from the Target cookie. Until a tntId exists, thepagenotification is the required first call to obtain one. - Wrong host — Some accounts are provisioned on a first-party CNAME instead of
CLIENTCODE.tt.omtrdc.net. If requests 404, confirm the correct edge host with your Adobe representative. - Revenue not recorded —
order.totalmust be numeric andorder.idmust be present. ThepurchasedProductIdsarray drives cross-sell recommendation algorithms; omit it only if you do not run recommendations.