Skip to main content

Google Data Manager API

Server Source code Package

The Google Data Manager API destination package provides server-side integration for sending conversion events and audience data to Google's advertising ecosystem through a single unified API endpoint.

Where this fits

Google Data Manager API is a server destination in the walkerOS flow:

Sends conversion events server-side to Google Ads, Display & Video 360, and GA4 through a single unified API.

Installation

Loading...
Loading...

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

PropertyTypeDescriptionMore
credentialscredentialsService account credentials (client_email + private_key). Recommended for serverless environments.
client_email*stringService account email
private_key*stringService account private key (PEM format)
keyFilenamestringPath to service account JSON file. For local development or environments with filesystem access.
scopesArray<string>OAuth scopes for Data Manager API. Defaults to datamanager scope.
destinations*Array<object>Array of destination accounts and conversion actions/user lists (max 10)
eventSourceEvent source for all events. Defaults to WEB. Values: WEB, APP, IN_STORE, PHONE, OTHER
batchSizeintegerMaximum number of events to batch before sending (max 2000, like 100)
batchIntervalintegerTime in milliseconds to wait before auto-flushing batch
validateOnlybooleanIf true, validate request without ingestion (testing mode)
urlstringOverride API endpoint for testing
consentconsentRequest-level consent for all events
adUserDataConsent for data collection and use
adPersonalizationConsent for ad personalization
testEventCodestringTest event code for debugging
logLevelLog level for debugging (debug shows all API calls)
userDataRecord<string, any>Guided helper: User data mapping for all events
userIdanyGuided helper: First-party user ID for all events
clientIdanyGuided helper: GA4 client ID for all events
appInstanceIdanyGuided helper: GA4 app instance ID (Firebase) for all events
sessionAttributesanyGuided helper: Privacy-safe attribution for all events
consentAdUserDatastring | booleanConsent mapping: Field name from event.consent (like 'marketing') or static boolean value
consentAdPersonalizationstring | booleanConsent mapping: Field name from event.consent (like 'targeting') or static boolean value
* Required fields

Mapping

This package does not define custom rule-level settings. For the standard rule fields (consent, condition, data, batch, name, policy) see mapping.

Examples

Page view

A page view is sent to Data Manager as a page_view event tied to the walker user id.

Event
Mapping
Out

Lead

A demo request form submission is sent to Data Manager as a generate_lead conversion with a hashed email.

Event
Mapping
Out

Purchase

A completed order is posted to Google Data Manager as a purchase conversion with hashed user identifiers.

Event
Mapping
Out

Guided mapping helpers

Define common fields once in Settings instead of repeating them in every event mapping:

Loading...

Consent mapping: Map your consent field names (string) or use static values (boolean). Event mappings always override Settings helpers.

Store sales (IN_STORE)

For physical store conversions, set eventSource: 'IN_STORE' on the destination and map a storeId in the event mapping. The destination wraps it into the API's required eventLocation.storeId shape.

Loading...

Hash encoding

Every request is sent with encoding: 'HEX'. Google requires the field whenever the payload contains hashed userData. The value is pinned because all hashing in this destination produces lowercase hex SHA-256 digests; exposing encoding as a setting would risk silently mismatched identifiers.

💡 Need implementation support?
elbwalker offers hands-on support: setup review, measurement planning, destination mapping, and live troubleshooting. Book a 2-hour session (€399)