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 4 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 inapps/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
managerrole 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:
- Backstage β Tracking β Tracking Pixels β Create Pixel
- Define conversions (Purchase, Lead, etc.)
- Install pixel JS on your site (via GTM or manual)
- Wevion picks up the pixel on next sync (
taboola_pixelmodel)
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)
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.tshandles the user-providedconnect-credentialsflowapps/backend/src/providers/taboola/core/constants.tsholdsTABOOLA_TOKEN_URLapps/backend/src/services/taboola-pixel.service.tssyncs 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.