Bing UET Conversions API
Server-side event delivery to Microsoft Advertising's Universal Event Tracking (UET) Conversions API for enhanced conversion tracking in Microsoft Ads campaigns, bypassing browser limitations and improving match quality.
Bing UET CAPI is a server destination in the walkerOS flow:
Sends events server-side to Microsoft's UET Conversions API using raw HTTP (no SDK). Identity fields (`em`, `ph`) are SHA-256 hashed before sending with Microsoft-specific email normalization. Events include a stable `eventId` for deduplication with the UET JavaScript tag.
Installation
- Integrated
- Bundled
Configuration
This destination uses the standard destination config wrapper (consent, data, env, id, ...). For the shared fields see destination configuration. Package-specific fields live under config.settings and are listed below.
Settings
| Property | Type | Description | More |
|---|---|---|---|
accessToken | string | Long-lived Bing UET CAPI access token from Microsoft Advertising | |
tagId | string | Microsoft Advertising UET tag ID | |
url | string | Custom Bing UET CAPI base URL (default https://capi.uet.microsoft.com/v1/) | |
doNotHash | Array<string> | User data fields to skip hashing | |
user_data | Record<string, string> | Mapping for user data fields | |
dataProvider | string | Identifier of the data source (default "walkerOS") | |
continueOnValidationError | boolean | When true, Microsoft continues to ingest events despite validation errors |
Mapping
Per-event rules under config.mapping. For the standard rule fields (consent, condition, data, batch, name, policy) see mapping.
| Property | Type | Description | More |
|---|---|---|---|
eventType | 'pageLoad' | 'custom' | Override event type: "pageLoad" for page views, "custom" (default) otherwise |
Examples
add to cart
lead
page view
purchase
Event types
Bing UET distinguishes two event types. Set the type via mapping.settings.eventType:
eventType | When to use |
|---|---|
pageLoad | Page view events (no eventName required) |
custom | All other conversion events (default, requires eventName) |
customData structure
Event properties must be nested under customData. Common fields include value, currency, transactionId, items, itemIds, pageType, eventCategory, eventLabel, eventValue, searchTerm.
Hashing
Only em (email) and ph (phone) are SHA-256 hashed before sending. All other identity fields pass through as-is: anonymousId, externalId, msclkid, clientIpAddress, clientUserAgent, idfa, gaid.
Microsoft-specific email normalization
Before hashing, emails are normalized to match Microsoft's canonicalization:
- Trim whitespace
- Lowercase the entire address
- Remove dots from the user portion (
a.b.c@example.combecomesabc@example.com) - Strip
+aliassuffix (user+promo@example.combecomesuser@example.com)
Pass raw values and hashing is handled for you. If a value is already hashed or you want to skip hashing for a specific field, use doNotHash:
Deduplication
Each event is sent with eventId set to the walkerOS event id. If you also run the UET JavaScript tag in the browser, Microsoft deduplicates server and browser events that share the same eventId and eventName, so conversions are not double-counted.
Consent
All events sent to this destination include adStorageConsent: "G" (granted). Gate the destination via walkerOS consent rules at the collector level rather than sending denied events.