Connect Taboola

Taboola uses an OAuth2 client_credentials grant. Paste your Taboola Client ID + Client Secret at /connect/taboola; Wevion validates and stores them encrypted, then syncs campaigns + pixels.

Written By Salvatore Sinigaglia

Last updated About 5 hours ago

Taboola uses an OAuth2 client_credentials grant. Paste your Taboola Client ID + Client Secret at /connect/taboola; Wevion validates and stores them encrypted, then syncs campaigns + pixels.

Connect Taboola

Taboola integration uses an OAuth2 client_credentials grant. You paste your own Taboola Client ID + Client Secret at /connect/taboola (POST /api/v1/taboola/connect-credentials, verified in apps/backend/src/routes/taboola-login.route.ts); Wevion validates them against Taboola's token endpoint and stores them encrypted (TABOOLA_TOKEN_ENCRYPTION_KEY). Sync imports campaigns + pixels.

Who is this for

Mediabuyers running native ads on Taboola's content-discovery network β€” premium publisher sites like Bloomberg, MSN, USA Today, where your ad blends in as a content recommendation.

How Taboola's auth differs from Meta/Google/TikTok

The other 3 platforms use user-facing OAuth flows (you authenticate via your own Meta/Google/TikTok account, no secrets to copy). Taboola is different:

  • Uses the client_credentials OAuth2 grant (server-to-server, no OAuth redirect/popup)
  • You obtain a Client ID + Client Secret from Taboola (request them from your Taboola account manager / support@taboola.com)
  • You paste those credentials into Wevion at /connect/taboola
  • Wevion exchanges them for an access token against Taboola's token endpoint and stores the credentials encrypted

There is no OAuth popup for Taboola β€” the flow is credentials-based.

Before you start

  • A Taboola advertiser account
  • Your Taboola Client ID + Client Secret (request from Taboola account manager / support@taboola.com)
  • Wevion role: mediabuyer, admin, owner, or super_admin (the manager role is not permitted on the connect page)

How to connect

Step 1: Get your Client ID + Client Secret from Taboola

Request API credentials (Client ID + Client Secret) from your Taboola account manager or support@taboola.com. These are the credentials Wevion will use for the client_credentials grant.

Step 2: Open the connector page

In the sidebar click Connect β†’ Taboola or visit /connect/taboola. The page asks for your Client ID and Client Secret (and an optional name).

Step 3: Paste the credentials and connect

Paste the Client ID and Client Secret, then submit. Wevion calls Taboola's token endpoint with grant_type=client_credentials to validate them. If they're valid, the credentials are stored encrypted and the connection is created; if not, you get an "Invalid Taboola credentials" error.

Step 4: First sync

15-min sync starts. Pulls campaigns, ad groups, ads, sites, pixels, last 90 days insights. Typical duration: 5-10 min.

What you'll see when it works

  • Connector card: green Connected badge
  • The connection name (or Client ID prefix) shown
  • Dashboard populates with Taboola data
  • Ads Manager shows imported Taboola campaigns
  • Toast: "Imported N campaigns from Taboola"

Taboola pixel setup

Taboola has a tracking pixel (the Taboola Pixel) for conversion tracking:

  1. Backstage β†’ Tracking β†’ Tracking Pixels β†’ Create Pixel
  2. Define conversions (Purchase, Lead, etc.)
  3. Install pixel JS on your site (via GTM or manual)
  4. Wevion picks up the pixel on next sync (taboola_pixel model)

Pixel events flow back to Taboola β†’ optimize Sales/Lead campaigns.

Currency

Each Backstage account has its own currency, set at signup, not changeable. Cross-channel rollups in Wevion convert via daily FX rates to workspace currency (same as Meta/Google/TikTok).

Differences from social ads (Meta/TikTok)

AspectMeta/TikTokTaboola
FormatImage/video in feedNative ad blended in publisher content
IntentDiscovery via feed scrollDiscovery via content reading
CPC rangeWide; depends on auctionGenerally lower, content-discovery rates
Conversion pathDirect response commonLonger path (click β†’ article β†’ action)
Best forDirect e-commerce, retargetingAwareness, content marketing, top-funnel

See tbl-102 for picking the right objective.

Multiple Backstage accounts

If your agency manages multiple Taboola accounts, connect each in Wevion with its own account ID. Each appears as a separate connector card.

Token model

OAuth2 client_credentials:

  • Access token issued by Taboola from your Client ID + Secret
  • Token is valid 12 hours (43200 s) per Taboola
  • Auto-refreshed by a background worker as needed (your credentials are stored encrypted so it can re-mint tokens)
  • No user-side reconnect required under normal use
  • If your Client ID/Secret are revoked or rotated on the Taboola side, reconnect with the new credentials

Common issues

  • "Invalid Taboola credentials" error: the Client ID / Client Secret you pasted didn't validate against Taboola's token endpoint. Re-copy them (no leading/trailing spaces) or request fresh credentials from Taboola.
  • No campaigns visible after connect: 15-min sync delay. Verify campaigns exist in your Taboola account.
  • "Unauthorized" from Taboola API after connecting: your Client ID/Secret were revoked or rotated on the Taboola side. Reconnect with the current credentials.
  • Pixel events not tracked: Taboola pixel JS not installed on site. Install via Taboola's tracking instructions.

Wevion's Taboola provider

Verified vs codebase:

  • apps/backend/src/routes/taboola-login.route.ts handles the user-provided connect-credentials flow
  • apps/backend/src/providers/taboola/core/constants.ts holds TABOOLA_TOKEN_URL
  • apps/backend/src/services/taboola-pixel.service.ts syncs pixels
  • Tokens/credentials encrypted with TABOOLA_TOKEN_ENCRYPTION_KEY
  • Models: taboola_token, taboola_ad_account, taboola_pixel

FAQ

How does connecting Taboola differ from Meta or Google?

Taboola uses an OAuth2 client_credentials grant (server-to-server, no OAuth popup), while Meta, Google, and TikTok use user-facing OAuth flows. For Taboola you obtain a Client ID + Client Secret from Taboola and paste them at /connect/taboola; Wevion validates them against Taboola's token endpoint and stores them encrypted. There's no OAuth redirect for Taboola.

Do I need to reconnect Taboola periodically?

No. Taboola access tokens are valid 12 hours (43200 s), and a background worker auto-refreshes them from your stored (encrypted) credentials. No routine reconnect is needed. You only reconnect if your Client ID/Secret are revoked or rotated on the Taboola side.

What role do I need to connect Taboola in Wevion?

You need a Wevion role of mediabuyer, admin, owner, or super_admin (the manager role is not permitted on the connect page). You'll also need a Taboola advertiser account and its API Client ID + Client Secret, obtained from your Taboola account manager or support@taboola.com.

Can I connect multiple Taboola accounts to Wevion?

Yes. If your agency manages multiple Taboola accounts, connect each one in Wevion with its own Client ID + Client Secret, and each appears as a separate connector card.

What does the first Taboola sync import?

The first 15-minute sync pulls campaigns, ad groups, ads, sites, pixels, and the last 90 days of insights, typically taking 5-10 minutes. When it works, the connector card turns green, the connection name shows, the dashboard populates with Taboola data, and Ads Manager displays your imported campaigns.