Skip to main content
Snapchat Ads · BYO Setup Guide

Set up your own
Snap Marketing API app.

This guide walks you through creating a Snap Kit application that VelaReach will use to connect your Snapchat ad accounts — on your own credentials, your own rate limits, your own branded consent screen. Plan for about 10 minutes of clicking, plus Snap’s app review (3–5 business days) and domain verification (1–2 business days) if you haven’t already completed it.

~10 min setup Hard 3–5 days review Verified domain required
Read this before you start. Snapchat requires a verified domain in your Snap Business Manager before you can create a Marketing API app. If you haven’t verified your domain yet (via meta tag or DNS TXT record), do that first at business.snapchat.com → Public Profiles → Domain Verification. Snap’s review of the verification takes 1–2 business days. Without it, the Snap Kit portal will block app creation.
Use BYO if
  • · You manage Snap ad spend at scale and want your own rate-limit headroom
  • · You already have an approved Snap Marketing API app from another tool
  • · Your legal team needs Snapchat data isolated to a dedicated app
  • · You want your end-customers to see your brand on the consent screen
Stick with shared app if
  • · You don’t have a verified domain on your Snap Business Manager yet
  • · You’re still evaluating Snapchat as a channel
  • · You can’t wait 3–5 business days for Snap’s review
  • · You don’t have a legal/privacy policy URL ready to publish

Before you begin

1

Sign in to the Snap Kit portal

Open kit.snapchat.com/portal and sign in with the Snap account that has admin rights on your Business Manager. The portal will list any existing apps and a button to create new ones.

If you see a banner that says “Domain not verified” at the top of the portal, finish domain verification first — you won’t be able to create a Marketing API app until that’s done.
2

Create a new OAuth application

From the portal dashboard click My AppsCreate. Snap will ask for an app name, platform type, and basic metadata.

https://kit.snapchat.com/portal/apps/create
Snap Kit Portal · My Apps
↑ Pick something recognisable — this appears on the consent screen.
↑ “Web” is required for VelaReach’s server-side OAuth flow.
Create

Use a clear name like “VelaReach-Ads” so reviewers and your own team can identify it later.

3

Whitelist the VelaReach redirect URL

This is the most common thing to get wrong, so copy carefully. Inside your new app open the OAuth2 tab and find the Redirect URLs field. Paste this exact URL:

https://api.velareach.metaminds.store/api/v1/integrations/snapchat/callback
https://kit.snapchat.com/portal/apps/abc123/oauth2
VelaReach-Ads · OAuth2 settings
↑ Snap requires HTTPS. Trailing slashes break the match.
↑ Implicit flow is not supported — leave it off.
Save

The redirect URL must match character-for-character. No trailing slash, HTTPS only.

90% of BYO failures happen here. If OAuth later returns “invalid redirect_uri”, come back and check the URL is character-identical.
4

Enable the Marketing API scope

Still inside the OAuth2 tab, scroll to Scopes. Snap presents a checklist of available scopes — tick snapchat-marketing-api. This is the only scope VelaReach needs for ads data.

https://kit.snapchat.com/portal/apps/abc123/scopes
VelaReach-Ads · Scopes & Permissions
snapchat-marketing-api
snap-login
bitmoji
↑ Only snapchat-marketing-api is required for VelaReach.
Save scopes

Don’t add extra scopes — Snap reviewers will reject apps that request more than they need.

5

Submit for review

Click Submit for Review in the top-right of your app page. Snap will ask you to confirm your privacy policy URL, app icon, and a short description of how the app is used. Snap reviews most Marketing API apps within 3–5 business days.

Most rejections are for missing privacy policies or vague app descriptions. A one-paragraph description like “VelaReach is an ad management dashboard that pulls Snap campaign metrics for our team via the Marketing API” is usually enough.
6

Copy your Client ID and Client Secret

Once Snap approves the app, the status pill on your app page flips from In Review to Live. Open the App Details tab and copy the Client ID and Client Secret.

🔒
Treat the Client Secret like a password. VelaReach encrypts it with AES-256-GCM the moment you submit, and never writes it to logs.
7

Paste credentials into VelaReach

Back in VelaReach: SettingsIntegrations → click the Snapchat Ads card → ManageAdvanced tab → Set up BYO app. The 4-step wizard opens. Click past Intro and Guide, then on Step 3 paste the Client ID and Client Secret from the previous step.

Click Test & save. VelaReach makes a live call to Snap’s Marketing API with your credentials and runs validation checks inline, then prompts you to Reconnect now → through your new app.

After reconnecting, what changes?

✓ Preserved
  • · All historical spend, impressions, swipe-ups, and ROAS data
  • · Your picker selection (which Snap ad accounts are tracked)
  • · Automation rules and budget pacing configs
  • · Scheduled reports and Slack notifications
  • · Every tag, filter, and saved view
✦ Changed
  • · OAuth tokens revoked and re-minted via your app (365-day lifetime)
  • · Card shows violet BYO app pill
  • · Consent screen on future reconnects displays your app name
  • · Audit log records who switched and when
  • · API calls count against your app’s rate limits

Troubleshooting

“Domain not verified” when creating the app
Snap won’t let you create a Marketing API app until your Business Manager has at least one verified domain. Open business.snapchat.com → Public Profiles → Domain Verification, add your domain, and complete either the meta-tag or DNS TXT record method. Snap’s confirmation usually arrives within 1–2 business days.
“invalid_scope: snapchat-marketing-api” during OAuth
Your app hasn’t been approved yet — Snap rejects scope requests for apps still in review. Wait until the app status flips to Live in the Snap Kit portal and try again. If you submitted more than 5 business days ago without a response, ping Snap support directly from the portal.
“No ad accounts returned” after a successful OAuth
OAuth completed but the Marketing API returned an empty ad-account list. The most common cause is that the Snap user who signed in isn’t an admin on any Snap ad account. Check Business Manager → Users & Permissions and confirm they have at least Read access on the ad accounts you want to manage, then click Reconnect again.
I can’t tell the difference between Client ID and API Key
These are two different things in Snap Kit. The Client ID (sometimes labelled “Snap Kit Client ID”) is what VelaReach needs — it identifies your OAuth app. The API Key is used for server-to-server access without OAuth and is not what you want here. Both live on the App Details tab; copy only the Client ID.
Snap rejected my app submission
The most common rejection reasons are: missing privacy policy URL, broken privacy policy URL, vague app description, or app icon that doesn’t match the brand on the privacy policy page. Fix the issue Snap flagged in the rejection email, then click Submit for Review again. Resubmissions are usually re-reviewed in 2–3 business days.
💬
Stuck? Email us — we’ll hop on a 15-min screen share.
Snap BYO is the most fiddly of all our integrations because of the domain-verification dance and the hard-required app review. Email support@velareach.com with your workspace name + exact error and we’ll pair with you.