Skip to main content

Snapchat Marketing

This page guides you through the process of setting up the Snapchat Marketing source connector.

Prerequisites

For Airbyte Cloud:

  • A Snapchat Marketing account with permission to access data from accounts you want to sync

For Airbyte Open Source:

  • client_id
  • client_secret
  • refresh_token
  • start_date

Setup guide

Step 1: Set up Snapchat

  1. Set up Snapchat Business account

For Airbyte Open Source:

  1. Activate Access to the Snapchat Marketing API
  2. Add the OAuth2 app:
    • Adding the OAuth2 app requires the redirect_url parameter.
    • save Client ID and Client Secret
  3. Get refresh token using OAuth2 authentication workflow:

You will receive the API key and refresh token in response. Use this refresh token in the connector specifications.
The useful link to Authentication process is here

Step 2: Set up the source connector in Airbyte

For Airbyte Cloud:

  1. Log into your Airbyte Cloud account.
  2. In the left navigation bar, click Sources. In the top-right corner, click + new source.
  3. On the source setup page, select Snapchat Marketing from the Source type dropdown and enter a name for this connector.
  4. lick Authenticate your account.
  5. Log in and Authorize to the Snapchat account
  6. Choose required Start date
  7. click Set up source.

For Airbyte Open Source:

  1. Go to local Airbyte page.
  2. In the left navigation bar, click Sources. In the top-right corner, click + new source.
  3. On the source setup page, select Snapchat Marketing from the Source type dropdown and enter a name for this connector.
  4. Add Client ID, Client Secret, Refresh Token
  5. Choose required Start date
  6. Click Set up source.

Supported streams and sync modes

StreamIncrementalKey
AdaccountsYes"id"
AdsYes"id"
AdsquadsYes"id"
CampaignsYes"id"
CreativesYes"id"
MediaYes"id"
OrganizationsNo"id"
SegmentsYes"id"
AdaccountsStatsHourlyYes["id", "granularity", "start_time"]
AdaccountsStatsDailyYes["id", "granularity", "start_time"]
AdaccountsStatsLifetimeNo["id", "granularity"]
AdsStatsHourlyYes["id", "granularity", "start_time"]
AdsStatsDailyYes["id", "granularity", "start_time"]
AdsStatsLifetimeNo["id", "granularity"]
AdsquadsStatsHourlyYes["id", "granularity", "start_time"]
AdsquadsStatsDailyYes["id", "granularity", "start_time"]
AdsquadsStatsLifetimeNo["id", "granularity"]
CampaignsStatsHourlyYes["id", "granularity", "start_time"]
CampaignsStatsDailyYes["id", "granularity", "start_time"]
CampaignsStatsLifetimeNo["id", "granularity"]

Performance considerations

Hourly streams can be slowly because they generate a lot of records.

Snapchat Marketing API has limitations to 1000 items per page.

Changelog

VersionDatePull RequestSubject
0.3.02023-05-2226358Remove deprecated authSpecification in favour of advancedAuth
0.2.02023-05-1025948Introduce new field in the Campaigns stream schema
0.1.162023-04-2020897Add missing fields to Basic Stats schema
0.1.152023-03-0222869Specified date formatting in specification
0.1.142023-02-1022808Enable default AvailabilityStrategy
0.1.132023-01-2722023Set AvailabilityStrategy for streams explicitly to None
0.1.122023-01-1121267Fix parse empty error response
0.1.112022-12-2320865Handle 403 permission error
0.1.102022-12-1520537Run on CDK 0.15.0
0.1.92022-12-1420498Fix output state when no records are read
0.1.82022-10-0517596Retry 429 and 5xx errors when refreshing access token
0.1.62022-07-2114924Remove additionalProperties field from specs
0.1.52022-07-1314577Added stats streams hourly, daily, lifetime
0.1.42021-12-078429Update titles and descriptions
0.1.32021-11-107811Add oauth2.0, fix stream_state
0.1.22021-11-087499Remove base-python dependencies
0.1.12021-07-295072Fix bug with incorrect stream_state value
0.1.02021-07-264843Initial release supporting the Snapchat Marketing API