The Snapchat Conversions API Program

If you are an advertiser running ad campaigns in Snapchat, you can integrate your ATS configuration with the Snapchat Conversions API Program. Snapchat CAPI allows you to pass ATS envelope data and conversion events to Snapchat. By passing these events, advertisers can access post-view and post-swipe campaign reporting to measure performance and incrementality.

In this guide, you will learn how to integrate your ATS API implementation with Snapchat Conversions API and create the call to send the events.

🚧

Not Available for Mobile

The CAPI programs only support the sending of online web events and cannot be used for mobile app events.

Requirements

To get started, you must have the following prepared:

  • Pixel ID: You can find your Pixel ID by logging in to Snapchat Ads Manager and navigating to the Events Manager settings. If you don't have a Snap Pixel set up yet, see Snap's article "Getting Started with Enabling the Pixel" to learn how.
  • Snapchat Authentication Token: To give ATS access and authenticate requests to Snapchat, you need an access token. See Snapchat’s article “Authentication” to learn how you can generate the token.
  • ATS Configuration ID: Creating a call to the Snapchat Conversion API endpoint requires an ATS configuration ID. To retrieve this ID, log in to Console and select ATS > Web. Select a configuration, and select the Admin tab. You can find the Configuration ID in the "Placement Details" area.

Set Up Snapchat CAPI in Console

Before sending events to our conversions API adapter, you must first integrate an ATS configuration with Conversions API for Snapchat in Console. During this process you will have to provide the ad account ID an authentication token from Snapchat.

To set up the integration, log in to Console and follow the steps in “Set Up Snapchat Conversions API Integrations in Console”.

Store the Identity Envelope With a Timestamp

Once you start calling the ATS envelope API as you normally would with conversions API enabled, you must store the identity envelope in a first-party cookie or local storage. See Store the Envelope With a Timestamp to learn how to do this.

Create the Request

If you have a Snapchat tag or pixel installed on your website, a cookie should appear: _scid. This cookie should be passed to the API in the ​user_data​ section. If cookies are not enabled, the _scid value can be found in the URL by searching for &ScCid= URL parameter. See the request examples below.

POST: https://capi.analytics.rlcdn.com/send-events/atsconfigid

❗️

While the CAPI endpoint supports collecting and sending batch events, all events must belong to the same user session. Sending large batches (e.g., 1000 events) or combining events across multiple user sessions may result in unexpected behavior.

Examples of the most common use cases with data:

{
  "events": [
    {
      "event_manager": [
        "snapchat"
      ],
      "event_id": "evt_001",
      "event_type": "PURCHASE",
      "event_time": 1754906400,
      "event_source_url": "https://www.example-store.com/checkout/confirmation",
      "user_data": {
        "partner_id": "partner_12345"
      },
      "custom_data": [
        {
          "key": "item_ids",
          "value": ["sku_123", "sku_456"]
        },
        {
          "key": "item_category",
          "value": ["shoes", "running"]
        },
        {
          "key": "brands",
          "value": ["Nike", "Adidas"]
        },
        {
          "key": "contents",
          "value": [
            { "id": "sku_123", "quantity": 1, "item_price": 89.99, "delivery_category": "standard" },
            { "id": "sku_456", "quantity": 1, "item_price": 49.5, "delivery_category": "express" }
          ]
        },
        {
          "key": "content_type",
          "value": "product"
        },
        {
          "key": "price",
          "value": [89.99]
        },
        {
          "key": "currency",
          "value": "USD"
        },
        {
          "key": "number_items",
          "value": [2]
        },
        {
          "key": "description",
          "value": "Black running shoes size 43"
        },
        {
          "key": "level",
          "value": 3
        },
        {
          "key": "search_string",
          "value": "black running shoes"
        },
        {
          "key": "sign_up_method",
          "value": "email"
        },
        {
          "key": "data_use",
          "value": ["lmu"]
        },
        {
          "key": "device_model",
          "value": "iPhone 15 Pro"
        },
        {
          "key": "os_version",
          "value": "iOS 17.5"
        },
        {
          "key": "click_id",
          "value": "fbclid_abc123"
        },
        {
          "key": "uuid_c1",
          "value": "123e4567-e89b-12d3-a456-426614174000"
        },
        {
          "key": "delivery_method",
          "value": "delivery"
        },
        {
          "key": "customer_status",
          "value": "returning"
        },
        {
          "key": "country",
          "value": "NL"
        },
        {
          "key": "region",
          "value": "NH"
        },
        {
          "key": "predicted_ltv",
          "value": 420.5
        },
        {
          "key": "event_tag",
          "value": "promo_summer_2025"
        }
      ]
    }
  ]
}
{
  "events": [
    {
      "event_manager": [
        "snapchat"
      ],
      "event_id": "456f",
      "event_type": "ADD_CART",
      "event_time": 1744873500,
      "event_source_url": "https://www.example-shop.com/product/some-item",
      "user_data": {
        "partner_id": "AnMtR07xnEC7ryaheztaWkUbrrtdqM2b2XxvaCsdkSFiQMSJKBAnw3zRfUN3c"
      },
      "custom_data": [
        {
          "key": "item_category",
          "value": "electronics"
        },
        {
          "key": "item_ids",
          "value": [
            "SKU789",
            "SKU901"
          ]
        },
        {
          "key": "price",
          "value": [
            "49.99",
            "29.99"
          ]
        },
        {
          "key": "currency",
          "value": "EUR"
        },
        {
          "key": "number_items",
          "value": "2"
        }
      ]
    }
  ]
}
{
  "events": [
    {
      "event_manager": [
        "snapchat"
      ],
      "event_id": "6421",
      "event_type": "PAGE_VIEW",
      "event_time": 1744990200,
      "event_source_url": "https://www.example-electronics-store.com/laptops",
      "user_data": {
        "partner_id": "AnMtR07xnEC7ryaheztaWkUbrrtdqM2b2XxvaCsdkSFiQMSJKBAnw3zRfUN3c"
      }
    }
  ]
}
{
  "events": [
    {
      "event_manager": [
        "snapchat"
      ],
      "event_id": "1234",
      "event_type": "START_CHECKOUT",
      "event_time": 1744989600,
      "event_source_url": "https://www.example-electronics-store.com/checkout",
      "user_data": {
        "partner_id": "AnMtR07xnEC7ryaheztaWkUbrrtdqM2b2XxvaCsdkSFiQMSJKBAnw3zRfUN3c"
      },
      "custom_data": [
        {
          "key": "item_ids",
          "value": [
            "LAPTOP_PRO_X1",
            "WIRELESS_MOUSE_A2"
          ]
        },
        {
          "key": "price",
          "value": [
            "1299.00",
            "25.50"
          ]
        },
        {
          "key": "currency",
          "value": "EUR"
        },
        {
          "key": "number_items",
          "value": "2"
        },
        {
          "key": "cart_total",
          "value": "1324.50"
        }
      ]
    }
  ]
}

Refresh the ATS Envelopes

You can refresh existing CAPI-scoped envelopes by calling:

https://api.rlcdn.com/api/identity/v2/envelope/refresh?pid=[placement id]&it=[envelope type]&iv=[envelope value]&ct=[consent type]&cv=[consent string]

You must populate the it parameter with 19 to correspond to the CAPI-scoped envelope type. This will reset the envelope expiration to the maximum allowed value.

To learn more about refreshing envelopes, see Implement the ATS Envelope Refresh API.