Create a conversion destination
Changed onCreates a new place to send conversion events: a Google Ads conversion action or a LinkedIn conversion rule.
Supported for LinkedIn (conversion rule) and Google Ads (conversion action). It returns 405 for:
- Meta and OpenAI Ads: their pixels are created via their own tracking-tags flow instead (POST /v1/accounts/{accountId}/tracking-tags)
- Reddit: create Reddit pixels in Reddit Ads Manager
Creation is NOT idempotent. A retry creates a second destination. Deduplicate before retrying.
The rule is created with conversionMethod=CONVERSIONS_API and (by default) auto-associated with all of the ad account's campaigns via autoAssociationType=ALL_CAMPAIGNS. Pass autoAssociationType: NONE to opt out and manage associations explicitly via the associations endpoints below.
365-day attribution windows are only valid for these rule types; the API rejects other combinations locally:
- SUBMIT_APPLICATION
- PURCHASE
- ADD_TO_CART
- QUALIFIED_LEAD
- LEAD
Google Ads
Calling with a name that already exists reuses the existing conversion action transparently (the response is identical to a fresh create).
Calling with the same name but a different category, or a name already used by a website (WEBPAGE) action, returns a typed IDEMPOTENCY_CONFLICT (409) rather than silently returning the mismatched action.
The conversion action is created with type=UPLOAD_CLICKS (required for API-uploaded offline conversions, immutable after creation).
The type field carries the Google ConversionActionCategory enum value, e.g. PURCHASE, SUBSCRIBE_PAID, SIGNUP, IMPORTED_LEAD, BOOK_APPOINTMENT. Unified standard event names (e.g. Purchase, Subscribe, CompleteRegistration, Lead, Schedule) are resolved to their Google category equivalents automatically.
The action defaults to secondary (non-primary) to avoid immediately steering Smart Bidding; pass primaryForGoal: true to opt in.
Request
- Base URLhttps://zernio.com/api
- AuthHTTP bearer
Request body
Response
Destination created
Changes
- info
endpoint added
- info