Snapchat Conversion Cloud Mode Integration

Send events to Snapchat’s Conversion API using RudderStack cloud mode.

After you have successfully instrumented Snapchat Conversion as a destination in RudderStack, follow this guide to correctly send your events to Snapchat in cloud mode by leveraging their Conversions API.

warning
You must generate the events at least 28 days before for them to be eligible for reporting via the Conversions API.

Find the open source transformer code for this destination in the GitHub repository.

Track

You can use the track event to capture user actions along with their associated properties and send this information to Snapchat.

Note that:

  • RudderStack tracks and sends the web, mobile, and offline events to Snapchat via their v3 endpoint (https://tr.snapchat.com/v3/{ID}/events), where {ID} is the Advertiser ID associated with your Snapchat business account.
  • It uses Bearer authentication leveraging the Snap API token for authenticating all requests. OAuth is not supported currently.

A sample track call is shown below:

rudderanalytics.track("Order Completed", {
  order_id: "1234",
  currency: "USD",
  products: [{
      product_id: "345676543",
      price: 7.99
    },
  ],
}, {
  context: {
    traits: {
      email: "alex@example.com",
      phone: "+1-202-555-0146"

    }
  }
})

RudderStack recommends passing at least one of the following fields to send a track event to Snapchat successfully:

  • email
  • phone
  • idfa
  • ip and userAgent

You can also send the eventConversionType property in your track events to determine the type of event to send to Snapchat (web, mobile, or offline).

Snapchat event typeeventConversionType property value
WEBweb
MOBILE_APPmobile / mobile_app
OFFLINEoffline
warning
Make sure to specify the exact property values.

If eventConversionType is not found in the event, RudderStack checks if channel is present. If channel is absent too, RudderStack automatically sets eventConversionType to OFFLINE.

An example highlighting the use of eventConversionType is shown:

rudderanalytics.track("Products Searched", {
query: "HDMI cable",
eventConversionType: "mobile"
});

Event mappings

warning
This destination does not strictly adhere to the RudderStack Ecommerce Event Spec.

RudderStack automatically maps the following ecommerce events to the corresponding Snapchat Conversion events:

RudderStack eventSnapchat Conversion event
Products SearchedSEARCH
Product List ViewedVIEW_CONTENT
Promotion ViewedAD_VIEW
Promotion ClickedAD_CLICK
Product ViewedVIEW_CONTENT
Product AddedADD_CART
Checkout StartedSTART_CHECKOUT
Payment Info EnteredADD_BILLING
Order CompletedPURCHASE
Product Added to WishlistADD_TO_WISHLIST

RudderStack does not automatically map the following events and passes their properties as is, without any modification:

  • ACHIEVEMENT_UNLOCKED
  • APP_INSTALL
  • APP_OPEN
  • COMPLETE_TUTORIAL
  • INVITE
  • LIST_VIEW
  • LEVEL_COMPLETE
  • LOGIN
  • PAGE_VIEW
  • RATE
  • RESERVE
  • SAVE
  • SIGN_UP
  • SHARE
  • SPENT_CREDITS
  • START_TRIAL
  • SUBSCRIBE

Property mappings

Page

You can use the page call to record your website’s page views, with any additional relevant information about the viewed page.

warning

RudderStack processes page calls as track calls with the Snapchat event set to page_view.

Hence, all the required fields for track events are required here as well.

A sample page call sent to Snapchat is shown below:

rudderanalytics.page("Help", "Help Page", {
  name: "Contact Customer Care",
  request_ip: "203.0.113.0",
  context: {
    userAgent: "ABC"
  }
})

Questions? Contact us by email or on Slack