Snapchat Marketing
Pipeline Concepts
Section titled βPipeline ConceptsβBefore setting up the Pipeline, learn about Pipeline concepts here
Step by Step Guide
Section titled βStep by Step GuideβSTEP-1: Configure Connection
Section titled βSTEP-1: Configure ConnectionβTo learn about Connection, refer here
- Log into Sprinkle application
- Navigate to Ingest -> Connections Tab -> New Connection ->
- Select Snapchat Marketing
- Provide all the mandatory details
- Name: Name to identify this connection
- Advance Setting : Refer here
- Connect to Snapchat
- Test Connection
- Create
STEP-2: Configure Pipeline
Section titled βSTEP-2: Configure PipelineβTo learn about Pipeline, refer here
- Navigate to Ingest -> Pipeline Tab -> Add ->
- Select Snapchat Marketing
- Provide the name -> Create
- Connection Tab:
- From the drop-down, select the name of connection created in STEP-2
- Update
STEP-3: Create Dataset
Section titled βSTEP-3: Create DatasetβDatasets Tab: To learn about Dataset, refer here. Add Dataset for each report/dataset that you want to integrate, providing following details
- Org Id (Required): Select from the drop-down
- Account Id (Required) : Select from the drop-down
- Report Type (Required): Select from the drop-down
- Destination Schema (Required) : Data warehouse schema where the table will be ingested into
- Flatten Level(Required) : Select One Level or Multi Level. In one level, flattening will not be applied on complex type. They will be stored as string. In multi level, flattening will be applied in complex level till they become simple type.
- Destination Table name (Required) : It is the table name to be created on the warehouse. If not given, sprinkle will create like ds_<Pipelinename>_<tablename>
- Destination Create Table Clause: Provide additional clauses to warehouse-create table queries such as clustering, partitioning, and more, useful for optimizing DML statements. Learn more on how to use this field.
- Create
STEP-4: Run and schedule Ingestion
Section titled βSTEP-4: Run and schedule IngestionβIn the Ingestion Jobs tab:
- Trigger the Job, using Run button
- To schedule, enable Auto-Run. Change the frequency if needed
Advanced Connection Settings
Section titled βAdvanced Connection Settingsβ- API Read Timeout (In seconds) : Maximum time of inactivity between two data packets when waiting for the serverβs response. The default value is 30 seconds.
- API Connection Timeout (In seconds) : Time period within which a connection between a client and a server must be established.
- Retry Limit : Number of retries allowed when an API call fails. For example if an API call fails and retry limit is 5 then it will check 5 times for that API call and if it succeeded then it will stop checking.
- Retry Sleep Time (In milliseconds) : Given time, after which retry should happen in case an API call fails.
- Version : It gives information about the version of Snapchat Marketing API being used.
- Incremental Batch Size (In days) : No. of days in one batch for which data is being downloaded during incremental ingestion.
Dataset Fields
Section titled βDataset FieldsβAds
- ad_squad_id
- creative_id
- name
- paying_advertiser_name
- review_status
- review_status_reasons
- status
- type
- delivery_status
- deleted
Ads Account
- sub_request_status
- adaccount_id
- adaccount_updated_at
- adaccount_created_at
- adaccount_name
- adaccount_type
- adaccount_status
- adaccount_organization_id
- adaccount_currency
- adaccount_timezone
- adaccount_advertiser_organization_id
- adaccount_billing_center_id
- adaccount_billing_type
- adaccount_agency_representing_client
- adaccount_client_paying_invoices
- adaccount_agency_client_metadata
- adaccount_regulations_restricted_delivery_signals
Ad Account Stats
- sprinkle_ingestion_date
- sub_request_status
- total_stat_id
- total_stat_type
- total_stat_granularity
- total_stat_stats_spend
- total_stat_start_time
- total_stat_end_time
- total_stat_finalized_data_end_time
Ad Squads
- campaign_id
- bid_micro
- billing_event
- child_ad_type
- forced_view_setting
- daily_budget_micro
- lifetime_budget_micro
- end_time
- name
- optimization_goal
- placement_v2
- start_time
- status
- story_ad_creative_type
- targeting type
- included_content_types
- excluded_content_types
- cap_and_exclusion_config
- ad_scheduling_config
- auto_bid
- target_bid
- bid_strategy
- roas_value_micro
- pixel_id
- measurement_provider_names
- delivery_constraint
- reach_and_frequency_status
- reach_goal impression_goal
- pacing_type
- delivery_status event_sources
- skadnetwork_properties.status
- deleted
- separated_types
Billing Centers
- sub_request_status
- billingcenter_id
- billingcenter_updated_at
- billingcenter_created_at
- billingcenter_organization_id
- billingcenter_name
- billingcenter_email_address
- billingcenter_country
Campaigns
- ad_account_id
- daily_budget_micro
- end_time
- name
- start_time
- status
- lifetime_spend_cap_micro
- measurement_spec
- objective
- buy_model
- regulations
- delivery_status
- deleted
Catalogs
- sub_request_status
- catalog_created_at
- catalog_updated_at catalog_id
- catalog_name
- catalog_organization_id
- catalog_source
- catalog_default_product_set_id
- catalog_vertical
- catalog_settings_commerce_settings_native_checkout_eligibility
Creatives
- ad_account_id
- brand_name
- call_to_action
- headline
- shareable
- name
- top_snap_media_id
- top_snap_crop_position
- type
- forced_view_eligibility
- preview_creative_id
- playback_type
- ad_product
Demographics by Advanced Demographics
- sub_request_status
- advanced_demographics_id
- advanced_demographics_name
- advanced_demographics_path
- advanced_demographics_source
- advanced_demographics_type
- advanced_demographics_parentid
- advanced_demographics_ishec
Demographics by Age Group Tables
- sub_request_status
- age_group_id
- age_group_name
Demographics by Gender
- sub_request_status
- gender_id
- gender_name
Demographics by Language
- sub_request_status
- languages_name
- languages_id
Device by Carrier
- sub_request_status
- carrier_valid_country
- carrier_name
- carrier_id
Device by Connection Type
- sub_request_status
- connection_type_id
- connection_type_name
Device by Marketing Name
- sub_request_status
- marketing_name_name
- marketing_name_id
Device by OS Type
- sub_request_status
- os_type_id
- os_type_name
Geolocation
- sub_request_status
- country_continent_id
- country_continent_name
- country_country_id
- country_country_name
- country_country_code
- country_country_code2
- country_lat
- country_lng
Interests
- sub_request_status
- scls_id
- scls_name
- scls_path
- scls_parent_id
- scls_source
Invoices
- org_id
- invoice_id
- netsuite_file_id
- ad_account_id
- customer.name
- customer.netsuite_id
- document_number
- line_last_modified
- last_modified
- amount_cent
- currency
- billing_period
- due_date
- created_at
- invoice_status
- invoice_content
Location
- sub_request_status
- categories_loi_id
- categories_loi_name
- categories_loi_path
- categories_loi_source
- categories_loi_parent_id
Media
- sub_request_status
- media_id
- media_updated_at
- media_created_at
- media_name
- media_ad_account_id
- media_type
- media_media_status
- media_file_name
- media_download_link
- media_image_metadata_height_px
- media_image_metadata_width_px
- media_image_metadata_image_format
- media_file_size_in_bytes
- media_is_demo_media
- media_hash
- media_visibility
Members
- sub_request_status
- member_id
- member_updated_at
- member_created_at
- member_email
- member_organization_id
- member_display_name
- member_member_status
Pixels
- sub_request_status
- pixel_id
- pixel_updated_at
- pixel_created_at
- pixel_name
- pixel_organization_id
- pixel_ad_account_id
- pixel_status
- pixel_pixel_javascript
- pixel_visible_to_0_
Organizations
- sub_request_status
- organization_id
- organization_updated_at
- organization_created_at
- organization_name
- organization_country
- organization_contact_name
- organization_contact_email
- organization_contact_phone
- organization_accepted_term_version
- organization_marketing_optin
- organization_is_agency
- organization_contact_phone_optin
- organization_type
- organization_state
- organization_business_type
- organization_roles_0_
- organization_my_display_name
- organization_my_invited_email
- organization_my_member_id
- organization_createdbycaller
Roles in Adaccounts
- sub_request_status
- role_id role_container_kind
- role_container_id
- role_member_id
- role_ad_account_id
- role_type
Roles in Organization
- sub_request_status
- role_id role_container_kind
- role_container_id
- role_member_id
- role_organization_id
- role_type
Users
- id
- updated_at
- created_at
- created_by_app_id
- created_by_user
- last_updated_by_app_id
- last_updated_by_user
- organization_id
- display_name
- member_status