Skip to main content

Choose Your Workflow

This page helps you pick the right Creator Ads workflow for your goal, flags the pitfalls that block teams across every workflow, and explains how the underlying APIs fit together.


Before You Begin

Creator Ads sits on top of the Public Profile API and the Ads API. If you haven't yet provisioned access, complete Public Profile API → Get Started first — that's the canonical guide for creating a business account, allowlisting your OAuth client, and generating access tokens. Don't duplicate that setup here; finish it once over there and come back.

A few Creator-Ads-specific assumptions on top of that baseline:

AssumptionDetails
Ad AccountAn active Ad Account with campaign permissions — this is where you'll create your Ads
Profile Admin RoleAdmin access on your Brand's Public Profile (not just Ad Account Admin) — without this, partnership invites will fail with AUTHORIZATION_PERMISSION_DENIED
OAuth ScopesYour access token must carry both snapchat-marketing-api and snapchat-profile-api — Creator Ads workflows cross both APIs

These workflows build on Media and Creatives. If you're new to the Ads API, review those first.


Choose Your Path

GoalWorkflowPermission LevelCreator Action Required
Boost existing organic postBrand PartnershipsBRAND_LEVELTags your brand in content
Run ads as Creator's profileAd PartnershipsAD_LEVELInitial approval only
Boost post without formal partnershipAd CodesNoneGenerates and shares code
Target Creator's followersAudience TargetingAD_LEVELInitial approval only

Most workflows require establishing a formal partnership with creators. Learn how to invite and get creator approval in Partnership Setup.


Use the decision tree below, or jump directly to a quick start based on your goal.

Quick Start: Pick Your Workflow

"I want to boost creator content that mentions my brand"

Partnership Setup + Brand Partnerships

1. Establish BRAND_LEVEL partnership
2. Creator posts with "Paid Partnership" tag
3. Discover tagged content via API
4. Claim as media asset
5. Create partnership ad

Permission required: BRAND_LEVEL
Time to first ad: Depends on creator posting content

"I want to run ads that look like they come from a creator"

Partnership Setup + Ad Partnerships

1. Establish AD_LEVEL partnership
2. Upload your creative asset
3. Create ad with creator as primary profile
4. Launch campaign

Permission required: AD_LEVEL
Time to first ad: Minutes after partnership approval

"A creator sent me a code for their post"

→ Use Ad Codes

1. Receive code from creator
2. Exchange for media ID
3. Wait for processing
4. Create ad

Permission required: None (code-based)
Time to first ad: Minutes after receiving code

"I want to target a creator's followers"

Partnership Setup + Audience Targeting

1. Establish AD_LEVEL partnership
2. Create profile engagement audience
3. Apply audience to ad campaigns
4. Monitor performance

Permission required: AD_LEVEL
Time to first audience: Minutes after partnership approval


Watch Out For

The decision tree above shows the "happy path." These common pitfalls can block you across different workflows—plan for them early.

The "Tag Only" Trap

A creator accepting your BRAND_LEVEL request does not automatically grant boosting rights.

When creators post with a Paid Partnership tag, they choose a permission scope:

Creator's SelectionYou Can See Post?You Can Boost?
Tagging Only✅ Yes❌ No
Tagging + Ad Creation✅ Yes✅ Yes
Tagging + Ad Creation + Insights✅ Yes✅ Yes

If a creator selects "Tagging Only," you'll see the post when Retrieving Collaboration Snaps, but the API will return a permissions error when you try to claim it.

Fix: Instruct creators to select "Tagging + Ad Creation" or higher when posting.

Learn more: Partnership Setup covers permission scopes in detail.

Content Eligibility Rules

Not all organic content can become an ad. The API will reject content that violates these specs:

Content TypeAspect RatioDurationNotes
Spotlight9:165–60 secondsStrict limits
Stories9:163–180 secondsMust be saved before 24-hour expiration

Music restriction: Content containing "Snap Library" audio cannot be boosted. Creators must use original audio or royalty-free sounds.

Ad Code Expiration vs. Asset Persistence

There's a crucial distinction between code life and asset life:

ItemLifespan
Ad Code7, 30, 60, 180, or 365 days (set by creator)
Claimed MediaPermanent in your Ad Account

Once you successfully exchange a code for a media_entity_id, that media lives in your Ad Account indefinitely—even after the code expires. For this reason you should claim media as soon as you receive the Ad code for the media.

Multi-Snap Stories

If a creator posts a Story with multiple segments (e.g., 5 snaps), you cannot automatically boost the whole sequence as one video.

The limitation: You initially claim individual snap_ids.

The solution: Use the /combine_snaps endpoint to stitch segments into a single media_entity_id.

The /combine_snaps endpoint is not yet documented in the API reference. Documentation will be added and this section will be updated with a link once it is available.

Constraint: All snaps in a bundle must have matching resolutions to combine successfully.


How It Works

Once you've chosen your path, understanding the underlying architecture helps you debug issues and design robust integrations.

Two APIs Working Together

Creator collaboration spans two APIs that work in tandem:

APIWhat It Handles
Public Profile APIPermissions, partnership handshakes, organic content retrieval
Ads APIMedia transformation, creative building, campaign execution

Claiming Content: Snap ID vs. Ad Code

There are two ways to claim creator content for ads. The difference lies in the partnership type (formal vs. informal) and the workflow (automated vs. manual).

AspectClaim by Snap IDClaim by Ad Code
Endpointclaim_media_by_snap_referenceclaim_media_by_ad_code
Inputsnap_id from API discoveryadcode_... string from creator
PartnershipFormal (BRAND_LEVEL required)None required
DiscoveryAutomated via Retrieve Collaboration SnapsManual (creator sends code)
Best ForOngoing campaigns, multiple postsOne-off boosts, quick collaborations

Claim by Snap ID (claim_media_by_snap_reference)

Use case: Formal Brand Partnerships where creators actively tag your brand using the "Paid Partnership" label.

How it works:

  1. You pre-approve the creator as a Brand Partner (BRAND_LEVEL)
  2. Creator posts organically and tags your brand
  3. You "listen" for tagged posts via Retrieve Collaboration Snaps
  4. You claim the content, turning it into a Media entity, using its snap_id via Claim Media by Snap Reference

Why use it: Scalable, automated discovery. You don't need to ask for a code every time—content flows to you automatically when creators tag your brand.

Claim by Ad Code (claim_media_by_ad_code)

Use case: One-off boosts or collaborations without a formal partnership in Business Manager.

How it works:

  1. Creator (any creator with a public profile) generates a code in their app
  2. Creator sends you the code string (e.g., adcode_a1b2c3d4...)
  3. You exchange the code via API to get the media asset

Why use it: Lightweight and permission-less. No need to add the creator to a "Pre-approved Partners" list. Great for testing collaborations or quick turnaround on trending content.

Permission Levels & Approval Process

Most workflows require establishing a formal partnership with creators through a two-way approval handshake:

Permission LevelNameRequired For
BRAND_LEVELBrand PartnerBrand Partnerships (boost tagged content)
AD_LEVELAd PartnerAd Partnerships + Audience Targeting (full permissions)

How it works:

  1. You invite the creator via Business Manager or API
  2. Creator receives push notification
  3. Creator approves in their Snapchat app
  4. Partnership becomes active (PENDINGACCEPTED)

For complete step-by-step instructions on inviting creators and managing partnerships, see Partnership Setup.


Technical Notes

ID Types: Don't Mix Them Up

ID TypeUsed ForAPI Context
profile_idPublic Profile identificationRoles/Permissions (Public Profile API)
ad_account_idAd Account identificationMedia/Ads (Ads API)

Attempting to add a creator role using an ad_account_id will fail. Use profile_id for permissions, ad_account_id for media and ads.

No Webhooks for Approvals

The API does not send webhooks when creators approve invitations. You must poll the roles endpoint to check status changes. See Partnership Setup for polling strategies and Troubleshooting for error handling.

Async Media Processing

When claiming organic content, media processing is asynchronous. Poll the media endpoint until media_status is READY before creating ads. See Technical Reference for timeout handling.


All Implementation Guides

GuideDescription
Partnership SetupStart here: Invite creators and establish partnerships
Brand PartnershipsOrganic-to-paid: boost creator content that tags you
Ad PartnershipsPaid-first: run ads as the creator's profile
Ad CodesQuick boost via shareable codes
Audience TargetingTarget creator followers and build lookalikes
Technical ReferenceSchemas, state machines, validation rules
TroubleshootingCommon errors and solutions

APIPurpose
Ads APICampaign management, ad creation, and performance reporting
Public Profile APICreator discovery and profile management
Conversions APIServer-to-server event tracking for attribution
Was this page helpful?
Yes
No