LinkedIn Conversions API
Server-side event delivery to LinkedIn's Conversions API for enhanced ad attribution and privacy-compliant conversion tracking.
LinkedIn Conversions API is a server destination in the walkerOS flow:
Sends conversion events server-side to LinkedIn's Conversions API, bypassing browser limitations for improved data quality. Deduplicates with the browser-side Insight Tag via eventId.
Installation
Setup
- Integrated
- Bundled
Configuration reference
| Property | Type | Description | More |
|---|---|---|---|
accessToken | string | LinkedIn OAuth 2.0 Bearer token for Conversions API authentication | |
conversionRuleId | string | Default LinkedIn conversion rule ID from Campaign Manager | |
apiVersion | string | Linkedin-Version header value in YYYYMM format | |
doNotHash | Array<string> | Array of user data fields that should not be hashed | |
url | string | Custom URL for LinkedIn Conversions API endpoint | |
user_data | Record<string, string> | Mapping configuration for user data fields |
User identification
The destination builds a userIds array from the event data. At least one identifier is required or the event is silently skipped.
SHA256_EMAIL -- Resolved from event.user.email or a user_data.email mapping. The email is normalized (trimmed, lowercased) and SHA-256 hashed before sending. Set doNotHash: ['email'] if you are pre-hashing upstream.
LINKEDIN_FIRST_PARTY_ADS_TRACKING_UUID -- The LinkedIn click ID (li_fat_id) forwarded from the browser session. Map it via user_data in settings or through event mapping:
Per-event conversion override
The default conversionRuleId from settings applies to all events. Override it per event via mapping to route different events to different Campaign Manager conversion rules:
Browser deduplication
When running both the web LinkedIn Insight Tag and this server destination, use the same eventId (from event.id) on both sides. LinkedIn deduplicates conversions that share the same eventId and conversion rule, so only one conversion is counted.
Docker deployment
Step 1: Create flow configuration
Use the $env.NAME syntax in your flow configuration to reference environment variables at runtime:
Step 2: Bundle the flow
Bundle your flow configuration before running in Docker:
Step 3: Run with Docker
Docker Compose example
Never commit access tokens to version control. Use environment variables or a secrets manager to inject credentials at runtime.