Skip to main content

Offer Disclaimers

The Offer Disclaimers feature enables the ability to show additional offer details for a product or service.

Offer Details Example

Overview

Who is this for?

Advertisements in regulated verticals (e.g., Auto, Pharma, FinServ) often need to include terms, conditions or disclaimers in their ad campaigns. With Offer Disclaimers, Snapchatters get a better ad viewing experience without extensive on-screen text, and advertisers remain complaint while reserving more space for the ad creative.

Compatability Matrix

Ad FormatNon-DPADPA
Single image or video (Snap ads)
Story Ads
Commercials
Collection ads
Spotlight

Spotlight placement is not supported i.e. "See Offer Details" pill will not render.

Offer Sources

There are two potential sources that the ad delivery system will reference from when producing the text observed Offer Details:

  1. A Product Catalog through a field
  2. An Offer Disclaimer Entity
Ad TypeSourceOffer Disclaimer Render Type
Dynamic Product Ad (DPA)Product Catalog (field: offer_details)DYNAMIC
Traditional, Non-DPAOffer Disclaimer (field: disclaimer_text)STATIC

Regardless of the source an Offer Disclaimer Entity must always exist & be correctly associated.

Getting Started

Dynamic Product Ads (DPA)

In short, the Dynamic Product Ad generates ads on-the-fly and relies on data from a Product Catalog. The data fed to the Product Catalog may include an optional new field offer_details.

1. Get Access

For DPA offer details, please notify your account team that you’d like to utilize Offer Details, and Snap will make sure to provide you appropriate access.

2. Update Catalog

The offer_details - only within the context of Product Catalogs - may be up to 10,000 characters.

Update your Product Catalog to include offer_details as a new field, and [publish the changes]

    name             , offer_details, ... , other_fields
"cool insurnance", "supports 10,000 characters", .... ,

3. Setup Offer Disclaimer

Once the data feed is pushing products that contain the offer_details; create an Offer Disclaimer Entity that must be:

  1. DYNAMIC, and have it's disclaimer_text be null
  2. associated the creative to this Offer Disclaimer.

4. Disable Spotlight & Wrap

Ensure your ad stays compliant w/ the type of ads Offer Disclaimers support and disable spotlight.

Wrap it up! Offer details should now auto populate for relevant products that have the field in their product catalog.

Non-DPA

For any traditional snap advertisement - anything but a dynamic product ad - you'll operate directly with the Offer Disclaimer Entity which is generally available.

1. Setup Offer Disclaimer

The disclaimer_text of the Offer Disclaimer Entity may be up to 5,000 characters.

Once you've prepared your disclaimer, and within the context of non-DPA only, create an Offer Disclaimer Entity that must be:

  1. STATIC, and have it's disclaimer_text be non null
  2. associate the creative to this Offer Disclaimer

2. Disable Spotlight & Wrap

Ensure your ad stays compliant w/ the type of ads Offer Disclaimers support and disable spotlight.

Offer Disclaimer Entity

An Offer Disclaimer is a reusable piece of text owned by an Ad Account. It can be associated with one or more Creatives to display legal text, terms, or other required disclosures as part of an ad.

Attributes

AttributeDescriptionRequiredPossible Values
idThe unique ID of the Offer Disclaimer.Read-OnlyA UUID string.
ad_account_idThe ID of the Ad Account that owns the disclaimer.RA UUID string.
nameThe user-defined name for the disclaimer.RString, max length: 255 characters.
disclaimer_textThe full legal or disclosure text.RString, max length: 5000 characters.
disclaimer_render_typeDetermines where the details are pulled fromRSTATIC: Render text this entity itself i.e. the disclaimer_text, 'DYNAMIC': Render text rom a product catalog source; for Dynamic Product Ads only
created_atThe timestamp when the disclaimer was created.Read-OnlyISO 8601 formatted date-time string.
updated_atThe timestamp when the disclaimer was last updated.Read-OnlyISO 8601 formatted date-time string.

HTTP Methods

Create an Offer Disclaimer (POST)

Creates one or more new Offer Disclaimers under a specified Ad Account.

POST /v1/adaccounts/{ad_account_id}/offer_disclaimers

Example Create Request for non-DPA

The following example creates a single Offer Disclaimer with render type STATIC for non-DPA.

curl -X POST \
-H "Content-Type: application/json" \
-H "Authorization: Bearer meowmeowmeow" \
'https://adsapi.snapchat.com/v1/adaccounts/82225ba6-7559-4000-9663-bace8adff5f2/offer_disclaimers' \
-d '{
"offer_disclaimers": [{
"name": "Summer Sale T&Cs",
"ad_account_id": "82225ba6-7559-4000-9663-bace8adff5f2",
"disclaimer_text": "Offer valid for a limited time. Restrictions apply.",
"disclaimer_render_type": "STATIC"
}]
}'

The above command returns JSON structured like this:

{
"request_status": "SUCCESS",
"request_id": "a1b2c3d4-e5f6-7890-1234-fedcba987654",
"offer_disclaimers": [
{
"sub_request_status": "SUCCESS",
"offer_disclaimer": {
"id": "3d7f2c99-1a2b-3c4d-5e6f-7890abcdef12",
"created_at": "2025-06-09T18:00:00.000Z",
"updated_at": "2025-06-09T18:00:00.000Z",
"name": "Summer Sale T&Cs",
"ad_account_id": "82225ba6-7559-4000-9663-bace8adff5f2",
"disclaimer_text": "Offer valid for a limited time. Restrictions apply.",
"disclaimer_render_type": "STATIC"
}
}
]
}

Example Create Request for DPA

The following example creates a single Offer Disclaimer with render type DYNAMIC for DPA.

curl -X POST \
-H "Content-Type: application/json" \
-H "Authorization: Bearer meowmeowmeow" \
'https://adsapi.snapchat.com/v1/adaccounts/82225ba6-7559-4000-9663-bace8adff5f2/offer_disclaimers' \
-d '{
"offer_disclaimers": [{
"name": "Summer Sale T&Cs",
"ad_account_id": "82225ba6-7559-4000-9663-bace8adff5f2",
"disclaimer_text": null,
"disclaimer_render_type": "DYNAMIC"
}]
}' \

The above command returns JSON structured like this:

{
"request_status": "SUCCESS",
"request_id": "a1b2c3d4-e5f6-7890-1234-fedcba987654",
"offer_disclaimers": [
{
"sub_request_status": "SUCCESS",
"offer_disclaimer": {
"id": "3d7f2c99-1a2b-3c4d-5e6f-7890abcdef12",
"created_at": "2025-06-09T18:00:00.000Z",
"updated_at": "2025-06-09T18:00:00.000Z",
"name": "Summer Sale T&Cs",
"ad_account_id": "82225ba6-7559-4000-9663-bace8adff5f2",
"disclaimer_text": null,
"disclaimer_render_type": "DYNAMIC"
}
}
]
}

Get a Specific Offer Disclaimer (GET)

Retrieves the details for a single Offer Disclaimer by its ID.

GET /v1/adaccounts/{ad_account_id}/offer_disclaimers/{offer_disclaimer_id}

Example Request

The following example gets an Offer Disclaimer with a specific ID.

curl -X GET \
-H "Content-Type: application/json" \
-H "Authorization: Bearer meowmeowmeow" \
'https://adsapi.snapchat.com/v1/adaccounts/82225ba6-7559-4000-9663-bace8adff5f2/offer_disclaimers/3d7f2c99-1a2b-3c4d-5e6f-7890abcdef12'

The above command returns JSON structured like this:

{
"request_status": "SUCCESS",
"request_id": "b2c3d4e5-f6a7-8901-2345-edcba9876543",
"offer_disclaimers": [
{
"id": "3d7f2c99-1a2b-3c4d-5e6f-7890abcdef12",
"created_at": "2025-06-09T18:00:00.000Z",
"updated_at": "2025-06-09T18:00:00.000Z",
"name": "Summer Sale T&Cs",
"ad_account_id": "82225ba6-7559-4000-9663-bace8adff5f2",
"disclaimer_text": "Offer valid for a limited time. Restrictions apply.",
"disclaimer_render_type": "STATIC"
}
]
}

List Offer Disclaimers (GET)

Retrieves a paginated list of all Offer Disclaimers belonging to an Ad Account.

GET /v1/adaccounts/{ad_account_id}/offer_disclaimers

Parameters

AttributeDescriptionRequiredPossible Values
limitThe maximum number of disclaimers to return in a single page.OInteger between 1 and 1000. Default: 50.
cursorA pointer to a specific page of results.OString returned in the next_link of a previous request.

Example Request

The following example lists all Offer Disclaimers for an Ad Account.

curl -X GET \
-H "Content-Type: application/json" \
-H "Authorization: Bearer meowmeowmeow" \
'https://adsapi.snapchat.com/v1/adaccounts/82225ba6-7559-4000-9663-bace8adff5f2/offer_disclaimers?limit=2'

The above command returns JSON structured like this:

{
"request_status": "SUCCESS",
"request_id": "c3d4e5f6-a7b8-9012-3456-dcba98765432",
"offer_disclaimers": [
{
"id": "3d7f2c99-1a2b-3c4d-5e6f-7890abcdef12",
"created_at": "2025-06-09T18:00:00.000Z",
"updated_at": "2025-06-09T18:00:00.000Z",
"name": "Summer Sale T&Cs",
"ad_account_id": "82225ba6-7559-4000-9663-bace8adff5f2",
"disclaimer_text": "Offer valid for a limited time. Restrictions apply.",
"disclaimer_render_type": "STATIC"
},
{
"id": "4e8g3d11-2b3c-4d5e-6f7a-8901bcdef123",
"created_at": "2025-06-09T18:05:00.000Z",
"updated_at": "2025-06-09T18:05:00.000Z",
"name": "Winter Giveaway Rules",
"ad_account_id": "82225ba6-7559-4000-9663-bace8adff5f2",
"disclaimer_text": "See official rules for details.",
"disclaimer_render_type": "STATIC"
}
],
"paging": {
"next_link": "https://adsapi.snapchat.com/v1/adaccounts/82225ba6-7559-4000-9663-bace8adff5f2/offer_disclaimers?limit=2&cursor=meowmeowmeow"
}
}

Delete an Offer Disclaimer (DELETE)

Permanently deletes a specific Offer Disclaimer.

DELETE /v1/adaccounts/{ad_account_id}/offer_disclaimers/{offer_disclaimer_id}

Example Request

The following example deletes an Offer Disclaimer with a specific ID.

curl -X DELETE \
-H "Content-Type: application/json" \
-H "Authorization: Bearer meowmeowmeow" \
'https://adsapi.snapchat.com/v1/adaccounts/82225ba6-7559-4000-9663-bace8adff5f2/offer_disclaimers/3d7f2c99-1a2b-3c4d-5e6f-7890abcdef12'

The above command returns JSON structured like this:

{
"request_status": "SUCCESS",
"request_id": "d4e5f6a7-b8c9-0123-4567-cba987654321"
}
Was this page helpful?
Yes
No