Skip to main content

Support TikTok Spark Ads with Website Conversion + Pixel Optimization

We need support for creating TikTok Spark Ads from an existing authorized TikTok post, while also using Website Conversion optimization with a TikTok Pixel and optimization event.

Our required flow is:

Campaign └── Ad Group ├── Website Conversion objective ├── Pixel ID ├── Optimization event (e.g. SHOPPING / ON_WEB_ORDER) └── Spark Ad ├── platformPostId └── sparkAuthCode

Today, these capabilities are split across two endpoints:

POST /v1/ads/boost → supports Spark Ads via platformPostId + sparkAuthCode → does not forward promotedObject / pixel settings POST /v1/ads/create → supports Website Conversion + promotedObject.pixelId + customEventType → does not support existing TikTok posts or Spark authorization codes

Because of this, the exact combination we need is currently not possible.

Requested capability

Please support creating a TikTok Spark Ad with:

{ "goal": "conversions", "promotedObject": { "pixelId": "76552139", "customEventType": "ON_WEB_ORDER" }, "platformPostId": "7659772882", "sparkAuthCode": "..." }

Ideally this could be supported either by:

  • forwarding promotedObject correctly through /v1/ads/boost, or

  • allowing /v1/ads/create to accept platformPostId + sparkAuthCode as the Ad creative source.

This is a critical capability for our TikTok Ads automation workflow because most of our TikTok ad testing uses Spark Ads + conversion optimization, rather than uploaded native creatives.

We are already building our Meta Ads automation workflow on Zernio and would like to use the same infrastructure for TikTok if this capability is supported.

This is currently a blocker for us adopting Zernio for TikTok Ads automation at scale.

Status: Completed1 comment

Log in to comment and vote

Comments1

  • Miquel Palet López

    Team•

    Sep 15

    Shipped and live. POST /v1/ads/boost now accepts promotedObject and forwards it onto the ad group, so your exact payload works:

    {
      "goal": "conversions",
      "platformPostId": "7659772882",
      "sparkAuthCode": "...",
      "promotedObject": { "pixelId": "76552139", "customEventType": "ON_WEB_ORDER" }
    }

    The two were never actually in conflict: the pixel lives on the ad group and the Spark item on the creative. Boost simply was not passing the pixel through.

    One thing differs from your request: customEventType is required, not optional. We verified against TikTok with a real advertiser, pixel and authorized post, and a conversion ad group carrying a pixel with no event is refused with a bare "Select a pixel event." You now get a 400 naming the field instead. The event must already exist on that pixel in Events Manager.

    pixelId takes either the numeric pixel id or the alphanumeric pixel code, and customEventType takes either an optimization_event code (ON_WEB_ORDER, SHOPPING, FORM) or the exact event name from Events Manager. Both are resolved for you.

    Verified end to end on our own account: a Spark creative from an authorized organic post inside a WEB_CONVERSIONS ad group, read back from TikTok with the pixel and event attached.

    One note in case it bites you: pass the organic TikTok account id as accountId on boost, not the TikTok Ads account id. The ads credentials are derived from it, and an ads account id returns "Account ID not found".