Draft enhanced conversions upload
draft_upload_enhanced_conversions_for_leadsDraft an Enhanced Conversions for LEADS upload from a CSV — PREVIEW.
Instructions
Draft an Enhanced Conversions for LEADS upload from a CSV — PREVIEW.
Uploads lead conversions via
ConversionUploadService.UploadClickConversions with user_identifiers,
matching hashed customer PII back to the Google users who clicked the ads.
The CSV holds RAW PII in columns: Email, Phone
Number, First Name, Last Name (plus Conversion Name, Conversion Time,
Conversion Value, Conversion Currency; optional Order ID dedup key, and
optional Ad User Data / Ad Personalization consent columns).
PII is normalized and SHA-256-hashed AT PREVIEW TIME — only the hashes are stored in the plan. Raw email/phone/name never land in the plan or the audit log. The target conversion action must be UPLOAD_CLICKS-type.
An Order ID column makes re-uploads dedup instead of double-counting.
Rows that repeat inside one file are named in dedup_warnings. Rows
sharing an Order ID count once at Google; two rows with different Order
IDs are two real orders and are not reported.
The CSV comes from csv_path (a file on the machine running AdLoop) or from upload_id (a file uploaded with upload_conversion_csv, the only way on AdLoop Cloud). An uploaded file is deleted once the draft has read it.
Returns a preview with a plan_id, the row counts, the consent the rows
actually carry (consent_summary) and the skipped rows; nothing is
uploaded until that preview is confirmed.
Google Ads API: https://developers.google.com/google-ads/api/docs/start
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| consent | No | Consent signals for GDPR/EEA, as an object with "ad_user_data" and/or "ad_personalization", each "GRANTED", "DENIED" or "UNSPECIFIED". None sends UNSPECIFIED. A row whose own "Ad User Data" / "Ad Personalization" columns are filled in overrides this for that row; empty cells fall back to it. | |
| csv_path | No | Path of the CSV file holding the upload rows, read on the machine that runs AdLoop. Refused on the hosted server; use upload_id there. | |
| upload_id | No | Id of a CSV uploaded with upload_conversion_csv (up_...), instead of csv_path. | |
| customer_id | No | Google Ads customer ID (digits, e.g. "1234567890"). Empty uses the configured default account. | |
| default_region | No | ISO 3166-1 alpha-2 country assumed for phone numbers that carry no country code, e.g. "DE" for "0151 12345678". Empty leaves such numbers unusable; the row still uploads when its email or its complete address identifies the lead. |
Output Schema
| Name | Required | Description | Default |
|---|---|---|---|
No arguments | |||