Skip to main content
Level 2
September 16, 2026
Question

LinkedIn Conversions API setup in AEP — two open questions (Destination SDK headers + Event Forwarding profile data)

  • September 16, 2026
  • 0 replies
  • 8 views

Hi all,

We're setting up server-side conversion tracking for LinkedIn Conversions API (CAPI) in Adobe Experience Platform, and have run into two separate issues while exploring both integration paths. Would appreciate guidance on either.
 

Question 1: Destination SDK — headers field not accepted in destination server config

We're building a custom streaming destination server via /authoring/destination-servers to call LinkedIn's Conversions API directly. LinkedIn's API requires several static headers beyond Authorization (X-Restli-Protocol-Version, X-RestLi-Method, Linkedin-Version), but adding a headers array inside httpTemplate causes a 400 Bad Request:

"type": "http://ns.adobe.com/aep/errors/DEST-0007-400",
"title": "Unreadable request: Invalid JSON input at line: 18, column: 26.
Incorrect type found for fields: [headers, httpTemplate, value]."

payload attempted
{
  "name": "Dest_LinkedIn_ConversionsAPI",
  "destinationServerType": "URL_BASED",
  "urlBasedDestination": {
    "url": {
      "templatingStrategy": "PEBBLE_V1",
      "value": "https://api.linkedin.com/rest/conversionEvents"
    },
    "splitUserById": false
  },
  "httpTemplate": {
    "httpMethod": "POST",
    "contentType": "application/json",
    "headers": [
      { "key": "X-Restli-Protocol-Version", "value": "2.0.0" },
      { "key": "X-RestLi-Method", "value": "BATCH_CREATE" },
      { "key": "Linkedin-Version", "value": "202601" }
    ],
    "requestBody": {
      "templatingStrategy": "PEBBLE_V1",
      "value": "{ \"elements\": [...] }"
    }
  }

Per the public templating-specs documentation, httpTemplate only lists httpMethod, requestBody, and contentType — no headers field is documented at this level. We also confirmed headers does exist elsewhere (inside customerAuthenticationConfigurations.accessTokenRequest.httpTemplate, for OAuth2 token-refresh calls), but that's not the same as the outbound data call to LinkedIn.

Question: Is there a supported way to attach custom static headers (X-Restli-Protocol-Version, X-RestLi-Method, Linkedin-Version) to the main httpTemplate used for the actual conversion event call? If so, what's the correct field name/structure? If not, is this a known gap for REST.li-based APIs like LinkedIn's?

 

Question 2: Event Forwarding + OOTB LinkedIn Conversions API extension — profile-only field (email) not present in the event

Separately, we're also testing the pre-built LinkedIn Conversions API extension via Event Forwarding, which avoids the header problem above since it's handled internally by the extension.

However, we've hit a data availability issue: LinkedIn's required user identifier (SHA-256 hashed email) is stored in our system as a Real-Time Customer Profile attribute, not as part of the actual XDM event payload sent to Edge for the "Quote Submitted" event. Since Event Forwarding data elements can only read from arc.event.xdm... (the specific event's payload), the email field resolves empty.

Question: Is there a supported way to enrich an outgoing event with existing Profile attributes at the point Event Forwarding processes it (e.g., a profile lookup/merge step), or is the only option to ensure fields like email are explicitly included in the XDM payload at collection time (client-side form field / server-side event call)? If enrichment from Profile isn't possible in Event Forwarding, can someone confirm whether this is by design, so we can document it as a known limitation?

Any pointers, working examples, or confirmation either way would be hugely helpful. Thanks!