Skip to main content

Creatives

A Creative is the combination of one or more pieces of media. Creative is owned by an Ad Account and can be used by multiple Ads simultaneously.

See dedicated sections for examples on how to set up and launch Lens Creatives.

Attributes

AttributeDescriptionRequiredPossible Values
ad_account_idAd Account IDR
brand_nameBrand NameRmax length: 32 characters
call_to_actionCall to ActionOPlease refer to the Creative type to CTA mapping table
favorite_display_modeAllows users to favorite the Creative within the Snapchat AppOSHOW, HIDE
offer_disclaimer_idThe Offer Disclaimer ID to be associated with the creativeO
cta_color_display_modeDefines the colour of the Call-to-action button, a prerequisite is that the Creative uses profile_properties with a profile_id , see the CTA Color Display Mode behaviour table for full description of the different modesODEFAULT_COLOR , AUTO_COLOR_DETECTION
headlineHeadline (displayed under brand name)Rmax length: 34 characters
shareableAllow Users to Share with FriendsOtrue (default), false
nameCreative nameRmax length: 375 characters
top_snap_media_idTop Snap Media IDR
top_snap_crop_positionTop Snap Crop PositionOOPTIMIZED (default), MIDDLE, TOP, BOTTOM
typeCreative TypeRSNAP_AD, APP_INSTALL, WEB_VIEW, DEEP_LINK, AD_TO_LENS, AD_TO_CALL, AD_TO_MESSAGE, PREVIEW, COMPOSITE, LENS, LENS_WEB_VIEW, LENS_APP_INSTALL, LENS_DEEP_LINK, COLLECTION, LEAD_GENERATION
forced_view_eligibilityIndicates whether Creative can be used as a CommercialOFULL_DURATION, SIX_SECONDS, NONE
preview_creative_idID of the preview creativeR (For Story Ads)
ad_productType of Ad ProductRequired only for R&F creativesSNAP_AD (default), LENS, FILTER
profile_propertiesContains the profile ID to be associated with the creativeR{ profile_id: 72cf5c50-8343-48d3-a0a7-3ed45b75faaa }
chat_propertiesOptional for Creative type WEB_VIEWOSee Chat Properties
web_view_propertiesRequired for Creative type WEB_VIEWRSee web_view_properties
app_install_propertiesRequired for Creative type APP_INSTALLRSee app_install_properties
deep_link_propertiesRequired for Creative type DEEP_LINKRSee deep_link_properties
ad_to_lens_propertiesRequired for Creative type AD_TO_LENSRSee ad_to_lens_properties
ad_to_call_propertiesRequired for Creative type AD_TO_CALLRSee ad_to_call_properties
ad_to_message_propertiesRequired for Creative type AD_TO_MESSAGERSee ad_to_message_properties
lead_generation_form_idRequired for Creative type LEAD_GENERATIONRSee Lead Generation Ads Guide
reminder_propertiesRequired for Creative type REMINDERRSee reminder_properties
creator_partnership_typeRequired for Partnership ad creativeRAD_PARTNERSHIP, BRAND_PARTNERSHIP
See Create a partnership ad creative

Creative Types and attachments

Creative Types

NameCreative typeDescription
Snap AdSNAP_ADA Snap Ad comprised of a Top Snap only, latest Video/Image specs
Snap Ad with attachmentAPP_INSTALL, WEB_VIEW, DEEP_LINK, AD_TO_LENS, AD_TO_CALL, AD_TO_MESSAGESee below for list of all attachments
Snap Ad for 'Sponsored Snaps'WEB_VIEW, APP_INSTALLEnables behaviour in Chat tab, see chat_properties
Story AdCOMPOSITEStory Ad Creatives require a PREVIEW creative
Collection AdCOLLECTION
LensLENS, LENS_WEB_VIEW, LENS_APP_INSTALL, LENS_DEEP_LINKSee section on Lens creatives for specs and references

A basic Snap Ad is comprised of a top snap only. Snap Ads can be enhanced by using one of the following attachments:

Creative Type to Call To Actions Mapping

Creative typeCall To Actions
APP_INSTALLBOOK_NOW, DONATE, DOWNLOAD, GET_NOW, INSTALL_NOW, ORDER_NOW, PLAY, SHOP_NOW, SIGN_UP, TRY, USE_APP, WATCH, VOTE, DIRECTIONS, PLAY_GAME
LENS_APP_INSTALLBOOK_NOW, DONATE, DOWNLOAD, GET_NOW, INSTALL_NOW, ORDER_NOW, PLAY, SHOP_NOW, SIGN_UP, TRY, USE_APP, WATCH, PLAY_GAME
DEEP_LINKDONATE, PLAY, SHOP_NOW, SIGN_UP, USE_APP, MORE, OPEN_APP, TRY, WATCH, VIEW_PROFILE, VOTE, DIRECTIONS, PRE_REGISTER, PLAY_GAME, DOWNLOAD
LEAD_GENERATIONAPPLY_NOW, MORE, BOOK_NOW, GET_NOW, SIGN_UP, TEST_DRIVE, REQUEST_APPOINTMENT, REQUEST_QUOTE, FREE_TRIAL, CLAIM_SAMPLE, GET_COUPON
LENS_DEEP_LINKDONATE, PLAY, SHOP_NOW, SIGN_UP, USE_APP, MORE, OPEN_APP, TRY, WATCH, VIEW_PROFILE, VOTE, DIRECTIONS, VIEW_MENU, PRE_REGISTER, PLAY_GAME
WEB_VIEWAPPLY_NOW, MORE, ORDER_NOW, PLAY, READ, SHOP_NOW, SHOW, SIGN_UP, VIEW, SHOW, WATCH, DONATE, DOWNLOAD, APPLY_NOW, ORDER_NOW, RESPOND, BUY_TICKETS, SHOWTIMES, BOOK_NOW, GET_NOW, LISTEN, TRY, VOTE, VIEW_MENU, PRE_REGISTER, PLAY_GAME
LENS_WEB_VIEWAPPLY_NOW, MORE, ORDER_NOW, PLAY, READ, SHOP_NOW, SHOW, SIGN_UP, VIEW, SHOW, WATCH, DONATE, DOWNLOAD, APPLY_NOW, ORDER_NOW, RESPOND, BUY_TICKETS, SHOWTIMES, BOOK_NOW, GET_NOW, LISTEN, TRY, VOTE, DIRECTIONS, VIEW_MENU, PRE_REGISTER, PLAY_GAME
AD_TO_LENSPLAY, TRY, SHOP_NOW, VOTE
AD_TO_MESSAGEMESSAGE_NOW, OPEN_APP
AD_TO_CALLCALL_NOW, OPEN_APP
AD_TO_PLACESEE_PLACE, DIRECTIONS, VIEW_MENU
REMINDERREMIND_ME

CTA Color Display Mode behaviour

This table explains how the behaviour of the cta_color_display_mode attribute.

ScenarioValueBehaviour
cta_color_display_mode set to default color”cta_color_display_mode”:”DEFAULT_COLOR”CTA button uses white background and black text string
cta_color_display_mode set to extract color”cta_color_display_mode”:”AUTO_COLOR_DETECTION”CTA button uses color extracted from Profile logo
cta_color_display_mode is left out on creation-CTA button uses color extracted from Profile logo

Attachments

NameCreative typeDescription
Web View attachmentWEB_VIEWCreative requires web_view_properties
App Install attachmentAPP_INSTALLCreative requires app_install_properties
Deep Link attachmentDEEP_LINKCreative requires deep_link_properties
Lens attachmentAD_TO_LENSCreative requires ad_to_lens_properties
Call attachmentAD_TO_CALLCreative requires ad_to_call_properties
Text attachmentAD_TO_MESSAGECreative requires ad_to_message_properties
Lead Generation formLEAD_GENERATIONCreative requires lead_generation_form_id
Reminder attachmentREMINDERCreative requires reminder_properties

Chat Properties

A Creative that contains the chat_properties attribute can have it's behaviour tailored for the chat tab where a user may open the Creative and interact with the Creative by sending it a message.

The required conditions to use the chat_properties are the following:

  • Creative type is WEB_VIEW
  • A Public Profile ID needs to be attached to the Creative via profile_properties

Visuals of Branded Chat Background (wallpaper_media_id), chat message (additional_messages) and auto responses(default_responses) can be viewed in the Help Centre article for Ads in Chat.

Attributes

chat_properties

AttributeDescriptionRequiredPossible Values
wallpaper_media_idID of Media entity to be used as the chat wallpaperOID of Media of type IMAGE with dimensions 1080 x 1920 pixels
default_responsesArray containing one message that gets sent to the user if the user sends a message to the brand in the chat screen.Osee default_responses
additional_messagesArray containing one message that gets sent in the chat screen if the user opens the chat pane after viewing the main image/video snap. Can currently only use Text.Osee additional_messages
response_interaction_settingHow the client should allow the user to interact with the ad in the Chat screen, NO_USER_INPUT means no response is defined, SEND_DEFAULT_UNLIMITED means that the response defined in default_responses gets sent each time the user sends a message to the adONO_USER_INPUT, SEND_DEFAULT_UNLIMITED

additional_messages

AttributeDescriptionRequiredPossible Values
chat_message_typeDefines the message that gets sent in the chat screen if the user opens the chat pane after viewing the main image/video snapOTEXT
textMax 500 characters

default_responses

AttributeDescriptionRequiredPossible Values
chat_message_typeDefines the default response type sent to user if the user sends a message to the brand in the chat screenOTEXT, EXTERNAL_MEDIA_MESSAGE
textRequired if chat_message_type is TEXTMax length: 500 characters
media_idA Media of the type VIDEO that conforms to Top Snap Media spec.Required if chat_message_type is EXTERNAL_MEDIA_MESSAGE

Example 1 - WEB_VIEW Creative with additional message only

This example sets up a Creative with additional message only.

The initial message is held in additional_messages , this is an array with exactly one entry that holds the initial message displayed when the user clicks the message, this chat_message_type can only be TEXT (500 chars max).

Since there is no response to user messaging the response_interaction_setting is set to NO_USER_INPUT

Example request

curl -X POST  \
-d '{"creatives": [{"name": "Sponsored Snap - Additional message only","ad_account_id": "82225ba6-7559-4000-9663-bace8adff5f2","type": "WEB_VIEW","shareable": true,"forced_view_eligibility": "FULL_DURATION","headline": "AR glasses powered by Snap OS","call_to_action": "GET_NOW","cta_color_display_mode": "AUTO_COLOR_DETECTION","render_type": "STATIC","top_snap_media_id": "7a317143-b919-4cb0-a2c4-37e80cae0c1b","top_snap_crop_position": "MIDDLE","web_view_properties": {"url": "https://spectacles.com","allow_snap_javascript_sdk": false,"use_immersive_mode": false, "deep_link_urls": [],"block_preload": true,"web_browser_type": "SNAP"},"ad_product": "SNAP_AD","profile_properties": {"profile_id": "c0ea278b-0449-4369-88d6-636e5d925f70"},"chat_properties": {"additional_messages": [{"chat_message_type": "TEXT","text": "Designed to get more people, closer over the things they love, together."}],"response_interaction_setting": "NO_USER_INPUT"}}]}' \
-H "Content-Type: application/json" \
-H "Authorization: Bearer meowmeowmeow" \
https://adsapi.snapchat.com/v1/adaccounts/82225ba6-7559-4000-9663-bace8adff5f2/creatives

The above command returns JSON structured like this:

{
"request_status": "SUCCESS",
"request_id": "5bac463a-52fa-4abb-b401-e68b7ac993fa",
"creatives": [
{
"sub_request_status": "SUCCESS",
"creative": {
"id": "7d4ce4d3-db51-4b9c-8841-0992fc589484",
"updated_at": "2025-02-11T18:13:41.197Z",
"created_at": "2025-02-11T18:13:41.197Z",
"name": "Sponsored Snap - No Response",
"ad_account_id": "82225ba6-7559-4000-9663-bace8adff5f2",
"type": "WEB_VIEW",
"packaging_status": "SUCCESS",
"review_status": "PENDING_REVIEW",
"shareable": true,
"forced_view_eligibility": "FULL_DURATION",
"headline": "AR glasses powered by Snap OS",
"call_to_action": "GET_NOW",
"cta_color_display_mode": "AUTO_COLOR_DETECTION",
"render_type": "STATIC",
"top_snap_media_id": "7a317143-b919-4cb0-a2c4-37e80cae0c1b",
"top_snap_crop_position": "MIDDLE",
"web_view_properties": {
"url": "https://spectacles.com",
"allow_snap_javascript_sdk": false,
"use_immersive_mode": false,
"deep_link_urls": [],
"block_preload": true,
"web_browser_type": "SNAP"
},
"ad_product": "SNAP_AD",
"profile_properties": {
"profile_id": "c0ea278b-0449-4369-88d6-636e5d925f70"
},
"semantic_id": "1686359025",
"chat_properties": {
"additional_messages": [
{
"chat_message_type": "TEXT",
"text": "Designed to get more people, closer over the things they love, together."
}
],
"response_interaction_setting": "NO_USER_INPUT"
}
}
}
]
}

Example 2 - WEB_VIEW Creative with additional message, Wallpaper and TEXT response

This example sets up a creative with initial message a wallpaper media id and a TEXT response if the user sends a message in response to the Snap.

additional_messages is an array with exactly one entry that holds the initial message. The chat_message_type can only be TEXT (500 chars max).

Since there is a response to user messaging the response_interaction_setting is set to SEND_DEFAULT_UNLIMITED, default_responses is an array with exactly one entry that holds the message if the user responds to the Snap, in this case the chat_message_type is TEXT.

Example request

curl -X POST  \
-d '{"creatives": [{"name": "Sponsored Snap - Additional message - Wallpaper - Text Response","ad_account_id": "82225ba6-7559-4000-9663-bace8adff5f2","type": "WEB_VIEW","shareable": true,"forced_view_eligibility": "FULL_DURATION","headline": "AR glasses powered by Snap OS","call_to_action": "GET_NOW","cta_color_display_mode": "AUTO_COLOR_DETECTION","render_type": "STATIC","top_snap_media_id": "7a317143-b919-4cb0-a2c4-37e80cae0c1b","top_snap_crop_position": "MIDDLE","web_view_properties": {"url": "https://spectacles.com","allow_snap_javascript_sdk": false,"use_immersive_mode": false,"deep_link_urls": [],"block_preload": true,"web_browser_type": "SNAP"},"ad_product": "SNAP_AD","profile_properties": {"profile_id": "c0ea278b-0449-4369-88d6-636e5d925f70"},"semantic_id": "-473404883","creator_partnership_type": "NONE","chat_properties": {"wallpaper_media_id": "aa430769-8586-4836-8c35-d237405a5d81","default_responses": [{"chat_message_type": "TEXT","text": "Spectacles are standalone, see-through AR glasses powered by Snap OS. Use My AI, launch immersive Lenses, and extend your Snapchat experience into three dimensions."}],"additional_messages": [{"chat_message_type": "TEXT","text": "Designed to get more people, closer over the things they love, together."}],"response_interaction_setting": "SEND_DEFAULT_UNLIMITED"}}]}' \
-H "Content-Type: application/json" \
-H "Authorization: Bearer meowmeowmeow" \
https://adsapi.snapchat.com/v1/adaccounts/82225ba6-7559-4000-9663-bace8adff5f2/creatives

The above command returns JSON structured like this:

{
"request_status": "SUCCESS",
"request_id": "e7fa54a1-4fb4-416a-9b4e-1e68e204315f",
"creatives": [
{
"sub_request_status": "SUCCESS",
"creative": {
"id": "00ef1041-0a4e-40fa-bf7d-44aec1451e59",
"updated_at": "2025-02-11T18:48:22.392Z",
"created_at": "2025-02-11T18:48:22.392Z",
"name": "Sponsored Snap - Additional message - Wallpaper - Text Response",
"ad_account_id": "22225ba6-7559-4000-9663-bace8adff5f2",
"type": "WEB_VIEW",
"packaging_status": "SUCCESS",
"review_status": "PENDING_REVIEW",
"shareable": true,
"forced_view_eligibility": "FULL_DURATION",
"headline": "AR glasses powered by Snap OS",
"call_to_action": "GET_NOW",
"cta_color_display_mode": "AUTO_COLOR_DETECTION",
"render_type": "STATIC",
"top_snap_media_id": "7a317143-b919-4cb0-a2c4-37e80cae0c1b",
"top_snap_crop_position": "MIDDLE",
"web_view_properties": {
"url": "https://spectacles.com",
"allow_snap_javascript_sdk": false,
"use_immersive_mode": false,
"deep_link_urls": [],
"block_preload": true,
"web_browser_type": "SNAP"
},
"ad_product": "SNAP_AD",
"profile_properties": {
"profile_id": "c0ea278b-0449-4369-88d6-636e5d925f70"
},
"semantic_id": "1990168181",
"creator_partnership_type": "NONE",
"chat_properties": {
"wallpaper_media_id": "aa430769-8586-4836-8c35-d237405a5d81",
"default_responses": [
{
"chat_message_type": "TEXT",
"text": "Spectacles are standalone, see-through AR glasses powered by Snap OS. Use My AI, launch immersive Lenses, and extend your Snapchat experience into three dimensions."
}
],
"additional_messages": [
{
"chat_message_type": "TEXT",
"text": "Designed to get more people, closer over the things they love, together."
}
],
"response_interaction_setting": "SEND_DEFAULT_UNLIMITED"
}
}
}
]
}

Example 3 - WEB_VIEW Creative with additional message, wallpaper and VIDEO response

This example sets up a Creative with an additional message, a wallpaper media id and an EXTERNAL_MEDIA_MESSAGE (Top Snap Video) response if the user sends a message to the Snap.

additional_messages is an array with exactly one entry that holds the initial message. The chat_message_type can only be TEXT (500 chars max).

Since there is a response to user messages the response_interaction_setting is set to SEND_DEFAULT_UNLIMITED, the response is held in default_responses, an array with exactly one entry that holds the message which is sent if the user responds to the Snap. In this case the chat_message_type is EXTERNAL_MEDIA_MESSAGE and the media_id is a media of the type VIDEO.

Example request

curl -X POST  \
-d '{"creatives": [{"name": "Sponsored Snap - Additional message - Wallpaper - VIDEO response","ad_account_id": "82225ba6-7559-4000-9663-bace8adff5f2","type": "WEB_VIEW","packaging_status": "SUCCESS","review_status": "APPROVED","review_status_details": "","shareable": true,"forced_view_eligibility": "NONE","headline": "AR glasses powered by Snap OS","call_to_action": "GET_NOW","cta_color_display_mode": "AUTO_COLOR_DETECTION","render_type": "STATIC","top_snap_media_id": "c9889dc4-7777-495a-b67a-737dd2fd22c4","top_snap_crop_position": "MIDDLE","web_view_properties": {"url": "https://spectacles.com","allow_snap_javascript_sdk": false,"use_immersive_mode": false,"deep_link_urls": [],"block_preload": true,"web_browser_type": "SNAP"},"ad_product": "SNAP_AD","profile_properties": {"profile_id": "c0ea278b-0449-4369-88d6-636e5d925f70"},"semantic_id": "173323969","creator_partnership_type": "NONE","chat_properties": {"wallpaper_media_id": "aa430769-8586-4836-8c35-d237405a5d81","default_responses": [{"chat_message_type": "EXTERNAL_MEDIA_MESSAGE","media_id": "7a317143-b919-4cb0-a2c4-37e80cae0c1b"}],"additional_messages": [{"chat_message_type": "TEXT","text": "Designed to get more people, closer over the things they love, together."}],"response_interaction_setting": "SEND_DEFAULT_UNLIMITED"}}]}' \
-H "Content-Type: application/json" \
-H "Authorization: Bearer meowmeowmeow" \
https://adsapi.snapchat.com/v1/adaccounts/82225ba6-7559-4000-9663-bace8adff5f2/creatives

The above command returns JSON structured like this:

{
"request_status": "SUCCESS",
"request_id": "52c0ecc3-4127-4361-a1c5-3eb0a796237b",
"creatives": [
{
"sub_request_status": "SUCCESS",
"creative": {
"id": "70cefb62-38a9-46d6-b4d0-1e5d305263fa",
"updated_at": "2025-02-11T18:55:53.947Z",
"created_at": "2025-02-11T18:55:53.947Z",
"name": "Sponsored Snap - Additional message - Wallpaper - VIDEO response",
"ad_account_id": "82225ba6-7559-4000-9663-bace8adff5f2",
"type": "WEB_VIEW",
"packaging_status": "SUCCESS",
"review_status": "PENDING_REVIEW",
"shareable": true,
"forced_view_eligibility": "NONE",
"headline": "AR glasses powered by Snap OS",
"call_to_action": "GET_NOW",
"cta_color_display_mode": "AUTO_COLOR_DETECTION",
"render_type": "STATIC",
"top_snap_media_id": "c9889dc4-7777-495a-b67a-737dd2fd22c4",
"top_snap_crop_position": "MIDDLE",
"web_view_properties": {
"url": "https://spectacles.com",
"allow_snap_javascript_sdk": false,
"use_immersive_mode": false,
"deep_link_urls": [],
"block_preload": true,
"web_browser_type": "SNAP"
},
"ad_product": "SNAP_AD",
"profile_properties": {
"profile_id": "c0ea278b-0449-4369-88d6-636e5d925f70"
},
"semantic_id": "1404216237",
"creator_partnership_type": "NONE",
"chat_properties": {
"wallpaper_media_id": "aa430769-8586-4836-8c35-d237405a5d81",
"default_responses": [
{
"chat_message_type": "EXTERNAL_MEDIA_MESSAGE",
"media_id": "7a317143-b919-4cb0-a2c4-37e80cae0c1b"
}
],
"additional_messages": [
{
"chat_message_type": "TEXT",
"text": "Designed to get more people, closer over the things they love, together."
}
],
"response_interaction_setting": "SEND_DEFAULT_UNLIMITED"
}
}
}
]
}

Create a Snap Ad

AttributeDescriptionRequiredPossible Values
ad_account_idAd Account IDR
brand_nameBrand NameR32 characters max
headlineHeadline (displayed under brand name)R34 characters max
shareableAllow Users to Share with FriendsOtrue (default), false
nameCreative nameR
top_snap_media_idTop Snap Media IDR
top_snap_crop_positionTop Snap Crop PositionOOPTIMIZED (default), MIDDLE, TOP, BOTTOM
typeCreative TypeRSNAP_AD
forced_view_eligibilityIndicates whether Creative can be used as a Commercial, see Commercials section for instructions on how to determine and set this valueOFULL_DURATION, SIX_SECONDS, NONE
curl -X POST  \
-d '{"creatives": [{"ad_account_id": "8adc3db7-8148-4fbf-999c-8d2266369d74", "top_snap_media_id": "a7bee653-1865-41cf-8cee-8ab85a205837", "name": "Creative Creative", "type": "SNAP_AD", "brand_name": "Maxiumum Brand", "headline": "Healthy Living", "shareable": true}]}' \
-H "Content-Type: application/json" \
-H "Authorization: Bearer meowmeowmeow" \
https://adsapi.snapchat.com/v1/adaccounts/8adc3db7-8148-4fbf-999c-8d2266369d74/creatives

The above command returns JSON structured like this:

{
"request_status": "success",
"request_id": "57b0136f00ff085e3d63d358a20001737e616473617069736300016275696c642d35396264653638322d312d31312d3700010108",
"creatives": [
{
"sub_request_status": "success",
"creative": {
"id": "c1e6e929-acec-466f-b023-852b8cacc18f",
"updated_at": "2016-08-14T06:45:04.300Z",
"created_at": "2016-08-14T06:45:04.300Z",
"name": "Creative Creative",
"ad_account_id": "8adc3db7-8148-4fbf-999c-8d2266369d74",
"type": "SNAP_AD",
"packaging_status": "PENDING",
"review_status": "PENDING_REVIEW",
"shareable": true,
"top_snap_media_id": "a7bee653-1865-41cf-8cee-8ab85a205837",
"top_snap_crop_position": "MIDDLE"
}
}
]
}

HTTP Request

POST https://adsapi.snapchat.com/v1/adaccounts/{ad_account_id}/creatives

Parameters

ParameterDefaultDescription
ad_account_idAd Account ID

Create a Snap Ad with App Install attachment

App Install attachments allow users to swipe up and download the advertised app.

Attributes

AttributeDescriptionRequiredPossible Values
ad_account_idAd Account IDR
brand_nameBrand NameR32 characters max
call_to_actionCall to ActionOPlease refer to the Creative type to CTA mapping table
headlineHeadline (displayed under brand name)R34 characters max
shareableAllow Users to Share with FriendsOtrue (default), false
nameCreative nameR
top_snap_media_idTop Snap Media IDR
top_snap_crop_positionTop Snap Crop PositionOOPTIMIZED (default), MIDDLE, TOP, BOTTOM
typeCreative TypeRAPP_INSTALL
forced_view_eligibilityIndicates whether Creative can be used as a Commercial, see Commercials section for instructions on how to determine and set this valueOFULL_DURATION, SIX_SECONDS, NONE

Additional Attributes

The following attributes should be added to the basic creative under the property app_install_properties.

AttributeDescriptionRequiredPossible Values
app_nameApp nameR30 characters max
ios_app_idiOS App IDR
android_app_urlGoogle Play Store IDR(eg "com.x.y")
icon_media_idIcon Media IDR
enable_skoverlayThe SKOverlay is iOS specific and should be added to creatives meant for use with SKAdnetwork enabled Ad Squads, this requires that favorite_display_mode is set to SHOW-true
product_page_idCustom product page ID from iOS App Store. Only set when using a Custom Product PageO45812c9b-c296-43d3-c6a0-c5a02f74bf6e

Icon Media specifications

  • Minimum 200 x 200 px, Maximum 2000 x 2000 px
  • Must be PNG format
  • The image should be square
  • The image should not have any borders or padding

Mobile Measurement Partners - Setup Details

curl -X POST \
-d '{"creatives": [{"ad_account_id": "8adc3db7-8148-4fbf-999c-8d2266369d74", "top_snap_media_id": "a7bee653-1865-41cf-8cee-8ab85a205837", "name": "Creative App Install", "type": "APP_INSTALL", "shareable": true, "call_to_action": "INSTALL_NOW", "app_install_properties": {"app_name": "Cool App Yo", "ios_app_id": "447188370", "android_app_url": "com.snapchat.android", "icon_media_id": "ab32d7e5-1f80-4e1a-a76b-3c543d2b28e4"}}]}' \
-H "Content-Type: application/json" \
-H "Authorization: Bearer meowmeowmeow" \
https://adsapi.snapchat.com/v1/adaccounts/8adc3db7-8148-4fbf-999c-8d2266369d74/creatives

The above command returns JSON structured like this:

{
"request_status": "success",
"request_id": "57b0163000ff05bee93989450c0001737e616473617069736300016275696c642d35396264653638322d312d31312d3700010107",
"creatives": [
{
"sub_request_status": "success",
"creative": {
"id": "1c7065c2-ad9f-41cc-b2c5-d48d9810439b",
"updated_at": "2016-08-14T06:56:48.631Z",
"created_at": "2016-08-14T06:56:48.631Z",
"name": "Creative App Install",
"ad_account_id": "8adc3db7-8148-4fbf-999c-8d2266369d74",
"type": "APP_INSTALL",
"packaging_status": "PENDING",
"review_status": "PENDING_REVIEW",
"shareable": true,
"call_to_action": "INSTALL_NOW",
"top_snap_media_id": "a7bee653-1865-41cf-8cee-8ab85a205837",
"top_snap_crop_position": "MIDDLE",
"app_install_properties": {
"app_name": "Cool App Yo",
"ios_app_id": "447188370",
"android_app_url": "com.snapchat.android",
"icon_media_id": "ab32d7e5-1f80-4e1a-a76b-3c543d2b28e4"
}
}
}
]
}

HTTP Request

POST https://adsapi.snapchat.com/v1/adaccounts/{ad_account_id}/creatives

Parameters

ParameterDefaultDescription
ad_account_idAd Account ID

Create a Snap Ad with Web View attachment

Web View attachments allow users to swipe up to view a web page, you have the option of preloading the website as directed by the block_preload attribute. You can see more details on preloading and recommendations for optimizations here.

Attributes

AttributeDescriptionRequiredPossible Values
ad_account_idAd Account IDR
brand_nameBrand NameR32 characters max
call_to_actionCall to ActionOPlease refer to the Creative type to CTA mapping table
headlineHeadline (displayed under brand name)R34 characters max
shareableAllow Users to Share with FriendsOtrue (default), false
nameCreative nameR
top_snap_media_idTop Snap Media IDR
top_snap_crop_positionTop Snap Crop PositionOOPTIMIZED (default), MIDDLE, TOP, BOTTOM
typeCreative TypeRWEB_VIEW
forced_view_eligibilityIndicates whether Creative can be used as a Commercial, see Commercials section for instructions on how to determine and set this valueOFULL_DURATION, SIX_SECONDS, NONE

Additional Attributes

The following attributes should be added to the basic creative under the property web_view_properties.

AttributeDescriptionRequiredPossible Values
urlWeb view URLRThe following macros are supported:
{{campaign.name}}
{{campaign.id}}
{{adSet.name}}
{{adSet.id}}
{{ad.id}}
{{creative.name}}
{{creative.headline}}
{{site_source_name}}
max length: 2048 characters
block_preloadBlock Snapchat from preloading the web pageOtrue/false (default)

HTTP Request

POST https://adsapi.snapchat.com/v1/adaccounts/{ad_account_id}/creatives

Parameters

ParameterDefaultDescription
ad_account_idAd Account ID

Example request

curl -X POST \
-d '{"creatives": [{"ad_account_id": "8adc3db7-8148-4fbf-999c-8d2266369d74", "top_snap_media_id": "a7bee653-1865-41cf-8cee-8ab85a205837", "name": "Creative WV", "type": "WEB_VIEW", "shareable": true, "call_to_action": "VIEW", "web_view_properties": {"url": "http://snapchat.com/ads"}}]}' \
-H "Content-Type: application/json" \
-H "Authorization: Bearer meowmeowmeow" \
https://adsapi.snapchat.com/v1/adaccounts/8adc3db7-8148-4fbf-999c-8d2266369d74/creatives

The above command returns JSON structured like this:

{
"request_status": "success",
"request_id": "57b0168400ff06efecfdcdc8da0001737e616473617069736300016275696c642d35396264653638322d312d31312d370001010c",
"creatives": [
{
"sub_request_status": "success",
"creative": {
"id": "67e4296c-486b-4bf3-877b-f34e8eeb173c",
"updated_at": "2016-08-14T06:58:12.768Z",
"created_at": "2016-08-14T06:58:12.768Z",
"name": "Creative WV",
"ad_account_id": "8adc3db7-8148-4fbf-999c-8d2266369d74",
"type": "WEB_VIEW",
"packaging_status": "PENDING",
"review_status": "PENDING_REVIEW",
"shareable": true,
"call_to_action": "VIEW",
"top_snap_media_id": "a7bee653-1865-41cf-8cee-8ab85a205837",
"top_snap_crop_position": "MIDDLE",
"web_view_properties": {
"url": "http://snapchat.com/ads"
}
}
}
]
}

The Deep Link attachment allows users who have the app installed to be directed to the location defined in the deep_link_properties, users who do not have the app installed will be directed to the App store to install the app.

If you have a web view with deep links there is no need to specify the deep links in a separate field on the Creative. The deep links inside the web view will be auto detected.

Attributes

AttributeDescriptionRequiredPossible Values
ad_account_idAd Account IDR
brand_nameBrand NameR32 characters max
call_to_actionCall to ActionOPlease refer to the Creative type to CTA mapping table
headlineHeadline (displayed under brand name)R34 characters max
shareableAllow Users to Share with FriendsOtrue (default), false
nameCreative nameR
top_snap_media_idTop Snap Media IDR
top_snap_crop_positionTop Snap Crop PositionOOPTIMIZED (default), MIDDLE, TOP, BOTTOM
typeCreative TypeRDEEP_LINK

Additional Attributes

The following attributes should be added to the basic creative under the property deep_link_properties.

AttributeDescriptionRequiredPossible Values
deep_link_uriDeep Link URLR
app_nameApp nameR30 characters max
ios_app_idiOS App IDOptional but one of ios_app_id or android_app_url is required
android_app_urlGoogle Play Store IDOptional but one of ios_app_id or android_app_url is required
icon_media_idIcon Media IDR
fallback_typeType of fallback to be used when user doesn't have the appOAPP_INSTALL (default), WEB_SITE
web_view_fallback_urlFallback web url to be usedO
product_page_idCustom product page ID from iOS App Store. Only set when using a Custom Product PageO

Icon Media specifications

  • Minimum 200 x 200 px, Maximum 2000 x 2000 px
  • Must be PNG format
  • The image should be square
  • The image should not have any borders or padding
curl -X POST \
-d '{"creatives": [{"name": "Deep Link test","ad_account_id": "{{ad_account_id}}","type": "DEEP_LINK","shareable": true,"headline": "some headline","brand_name": "some brand name","top_snap_media_id": "{{media_id}}","top_snap_crop_position": "MIDDLE","call_to_action": "{{cta}}","deep_link_properties": {"deep_link_uri":"spotify://somelink","ios_app_id": "1234","android_app_url": "com.snapchat.android","app_name": "not hotdog app","icon_media_id": "{{app_icon_media_id}}"}}]}' \
-H "Content-Type: application/json" \
-H "Authorization: Bearer meowmeowmeow" \
https://adsapi.snapchat.com/v1/adaccounts/8adc3db7-8148-4fbf-999c-8d2266369d74/creatives

The above command returns JSON structured like this:

{
"request_status": "success",
"request_id": "57b0168400ff06efecfdcdc8da0001737e616473617069736300016275696c642d35396264653638322d312d31312d370001010c",
"creatives": [
{
"sub_request_status": "success",
"creative": {
"id": "67e4296c-486b-4bf3-877b-f34e8eeb173c",
"updated_at": "2016-08-14T06:58:12.768Z",
"created_at": "2016-08-14T06:58:12.768Z",
"name": "Deep Link test",
"ad_account_id": "8adc3db7-8148-4fbf-999c-8d2266369d74",
"type": "DEEP_LINK",
"packaging_status": "PENDING",
"review_status": "PENDING_REVIEW",
"shareable": true,
"call_to_action": "VIEW",
"top_snap_media_id": "a7bee653-1865-41cf-8cee-8ab85a205837",
"top_snap_crop_position": "MIDDLE",
"deep_link_properties": {
"deep_link_uri": "spotify://somelink",
"ios_app_id": "1234",
"android_app_url": "com.snapchat.android",
"app_name": "not hotdog app",
"icon_media_id": "{{app_icon_media_id}}"
}
}
}
]
}

HTTP Request

POST https://adsapi.snapchat.com/v1/adaccounts/{ad_account_id}/creatives

Parameters

ParameterDefaultDescription
ad_account_idAd Account ID

Create a Snap Ad with Lens attachment

The lens attachment will open up an AR Lens upon swipe up

Attributes

AttributeDescriptionRequiredPossible Values
ad_account_idAd Account IDR
brand_nameBrand NameR32 characters max
call_to_actionCall to ActionOPlease refer to the Creative type to CTA mapping table
headlineHeadline (displayed under brand name)R34 characters max
shareableAllow Users to Share with FriendsOtrue (default), false
nameCreative nameR
top_snap_media_idTop Snap Media IDR
top_snap_crop_positionTop Snap Crop PositionOOPTIMIZED (default), MIDDLE, TOP, BOTTOM
typeCreative TypeRAD_TO_LENS
forced_view_eligibilityIndicates whether Creative can be used as a Commercial, see Commercials section for instructions on how to determine and set this valueOFULL_DURATION, SIX_SECONDS, NONE

Additional Attributes

The following attributes should be added to the basic creative under the property ad_to_lens_properties.

AttributeDescriptionRequired
lens_media_idThe Media ID of the lens to be opened upon swipe upR

Lens Media file for a Lens Creative is not uploaded via the API, it's instead created in Snapchat Lens Studio or Lens Web Builder and then transferred to the Ad Account in question via Lens Studio.

curl -X POST \
-d '{"creatives": [{"name":"Swipe to Lens","ad_account_id":"0b5176e0-9d5e-467c-8275-c1b619bd87d1","type":"AD_TO_LENS","shareable":true,"headline":"Headline Headline","brand_name":"Best Brand","call_to_action":"TRY","top_snap_media_id":"77f0c0a5-3374-4196-ac71-eb9fce49a5f3","top_snap_crop_position":"MIDDLE","ad_product":"SNAP_AD","ad_to_lens_properties":{"lens_media_id":"708ba95f-74e4-4e95-b443-21ccd2091a96"}}]}' \
-H "Content-Type: application/json" \
-H "Authorization: Bearer meowmeowmeow" \
https://adsapi.snapchat.com/v1/adaccounts/8adc3db7-8148-4fbf-999c-8d2266369d74/creatives

The above command returns JSON structured like this:

{
"request_status": "SUCCESS",
"request_id": "5b52250700ff0c3438c927b7db0001737e616473617069736300016275696c642d31393039356634322d312d3138352d310001011b",
"creatives": [
{
"sub_request_status": "SUCCESS",
"creative": {
"id": "0df4bc92-00c8-4a6d-af89-533def1e5750",
"updated_at": "2018-07-20T14:32:09.102Z",
"created_at": "2018-07-20T14:29:44.160Z",
"name": "Swipe to lens",
"ad_account_id": "0b5176e0-9d5e-467c-8275-c1b619bd87d1",
"type": "AD_TO_LENS",
"packaging_status": "SUCCESS",
"review_status": "PENDING_REVIEW",
"shareable": true,
"headline": "Headline Healine",
"brand_name": "Best Brand",
"call_to_action": "TRY",
"top_snap_media_id": "77f0c0a5-3374-4196-ac71-eb9fce49a5f3",
"top_snap_crop_position": "MIDDLE",
"ad_product": "SNAP_AD",
"ad_to_lens_properties": {
"lens_media_id": "708ba95f-74e4-4e95-b443-21ccd2091a96"
}
}
}
]
}

HTTP Request

POST https://adsapi.snapchat.com/v1/adaccounts/{ad_account_id}/creatives

Parameters

ParameterDefaultDescription
ad_account_idAd Account ID

Swipe to Call/Text - Phone number verification

All Phone Numbers used in Swipe to Call/Text Creatives need to be Verified via Snap Ads Manager as we use 2 factor authentication. You can do this by using Snap Ads Manager to set up a first Swipe to Call/Text Creative in your account, this set up will include adding a phone number and verifying it, see this guide for more details on how to verify your phone number.

After successful verification of the phone number you will be able to retrieve a phone number ID for the number in question.

This type of Ad is currently only available in the United States, France, Qatar, Saudi Arabia, Egypt, Kuwait and the United Arab Emirates.

curl "https://adsapi.snapchat.com/v1/adaccounts/22225ba6-7559-4000-9663-bace8adff5f2/phone_numbers" \
-H "Authorization: Bearer meowmeowmeow"

The above command returns JSON structured like this:

{
"request_status": "SUCCESS",
"request_id": "5e6fb44400ff098283dd16a12e0001737e616473617069736300016275696c642d31636430373832652d312d3333342d300001010a",
"paging": {},
"phone_numbers": [
{
"sub_request_status": "SUCCESS",
"phone_number": {
"id": "d85758e1-4aac-435d-9660-de29e9b97548",
"updated_at": "2020-02-06T22:10:46.573Z",
"created_at": "2020-02-06T22:10:37.609Z",
"name": "Phone number - Pizza",
"country_code": "us",
"numerical_country_code": "1",
"phone_number": "1111333444",
"verification_status": "VERIFIED"
}
},
{
"sub_request_status": "SUCCESS",
"phone_number": {
"id": "dab10be9-6147-4ef4-9ad5-328f39777625",
"updated_at": "2020-02-06T22:07:40.452Z",
"created_at": "2020-02-06T22:07:26.553Z",
"name": "Phone number - Chicken",
"country_code": "us",
"numerical_country_code": "1",
"phone_number": "1111222333",
"verification_status": "VERIFIED"
}
}
]
}

This endpoint retrieves all verified phone numbers for an Ad Account.

HTTP Request

GET https://adsapi.snapchat.com/v1/adaccounts/{ad_account_id}/phone_numbers

Parameters

ParameterDefaultDescription
ad_account_idAd Account ID

Create a Snap ad with Swipe to Call attachment

Call attachments allow users to swipe up to initiate a call.

Attributes

AttributeDescriptionRequiredPossible Values
ad_account_idAd Account IDR
brand_nameBrand NameR32 characters max
call_to_actionCall to ActionOPlease refer to the Creative type to CTA mapping table
headlineHeadline (displayed under brand name)R34 characters max
shareableAllow Users to Share with FriendsOtrue (default), false
nameCreative nameR
top_snap_media_idTop Snap Media IDR
top_snap_crop_positionTop Snap Crop PositionOOPTIMIZED (default), MIDDLE, TOP, BOTTOM
typeCreative TypeRAD_TO_CALL

Additional Attributes

The following attributes should be added to the basic creative under the property ad_to_call_properties.

AttributeDescriptionRequiredPossible Values
phone_number_idID of the phone number to be usedR
curl -X POST \
-d '{"creatives": [{"ad_account_id": "497979f0-ed17-4971-8288-054883f1cbca","name" : "A new AD_TO_CALL Creative","type": "AD_TO_CALL","top_snap_media_id": "2fbaa906-d2d2-423d-b8e3-9535f1281998","ad_product": "SNAP_AD","headline": "Order your meal now","brand_name": "Honey Foods","call_to_action": "OPEN_APP","ad_to_call_properties": {"phone_number_id": "715b6ee0-357c-41d2-9246-feb09c199fc9"}}]}' \
-H "Content-Type: application/json" \
-H "Authorization: Bearer meowmeowmeow" \
https://adsapi.snapchat.com/v1/adaccounts/22225ba6-7559-4000-9663-bace8adff5f2/creatives

The above command returns JSON structured like this:

{
"request_status": "SUCCESS",
"request_id": "5e6fb51900ff040ef4db1db40b0001737e616473617069736300016275696c642d31636430373832652d312d3333342d300001010a",
"creatives": [
{
"sub_request_status": "SUCCESS",
"creative": {
"id": "dbf052de-139c-4860-9f29-9dc4fa580620",
"updated_at": "2020-03-16T17:19:24.063Z",
"created_at": "2020-03-16T17:19:24.063Z",
"name": "A new AD_TO_CALL Creative",
"ad_account_id": "22225ba6-7559-4000-9663-bace8adff5f2",
"type": "AD_TO_CALL",
"packaging_status": "IN_PROGRESS",
"review_status": "PENDING_REVIEW",
"shareable": true,
"headline": "Order your meal now",
"brand_name": "Honey Foods",
"call_to_action": "OPEN_APP",
"render_type": "STATIC",
"top_snap_media_id": "2fbaa906-d2d2-423d-b8e3-9535f1281998",
"top_snap_crop_position": "MIDDLE",
"ad_product": "SNAP_AD",
"ad_to_call_properties": {
"phone_number_id": "715b6ee0-357c-41d2-9246-feb09c199fc9",
"message": null
}
}
}
]
}

HTTP Request

POST https://adsapi.snapchat.com/v1/adaccounts/{ad_account_id}/creatives

Parameters

ParameterDefaultDescription
ad_account_idAd Account ID

Create a Snap Ad with Swipe to Text attachment

Text attachments allow users to swipe up to initiate a text message.

Attributes

AttributeDescriptionRequiredPossible Values
ad_account_idAd Account IDR
brand_nameBrand NameR32 characters max
call_to_actionCall to ActionOPlease refer to the Creative type to CTA mapping table
headlineHeadline (displayed under brand name)R34 characters max
shareableAllow Users to Share with FriendsOtrue (default), false
nameCreative nameR
top_snap_media_idTop Snap Media IDR
top_snap_crop_positionTop Snap Crop PositionOOPTIMIZED (default), MIDDLE, TOP, BOTTOM
typeCreative TypeRAD_TO_MESSAGE

Additional Attributes

The following attributes should be added to the basic creative under the property ad_to_message_properties.

AttributeDescriptionRequiredPossible Values
phone_number_idID of the phone number to be usedR
messageA pre-populated message for the user to send, max 160 charactersO
curl -X PUT \
-d '{"creatives":[{"ad_account_id": "22225ba6-7559-4000-9663-bace8adff5f2","name" : "A new AD_TO_MESSAGE Creative","type": "AD_TO_MESSAGE","top_snap_media_id": "2fbaa906-d2d2-423d-b8e3-9535f1281998","ad_product": "SNAP_AD","headline": "Honey Dating","brand_name": "Dating for honey bears","call_to_action": "OPEN_APP","ad_to_message_properties": {"phone_number_id": "715b6ee0-357c-41d2-9246-feb09c199fc9","message": "Please send me details of Single Polar Bears"}}]}' \
-H "Content-Type: application/json" \
-H "Authorization: Bearer meowmeowmeow" \
https://adsapi.snapchat.com/v1/adaccounts/22225ba6-7559-4000-9663-bace8adff5f2/creatives

The above command returns JSON structured like this:

{
"request_status": "SUCCESS",
"request_id": "5e6fb51900ff040ef4db1db40b0001737e616473617069736300016275696c642d31636430373832652d312d3333342d300001010a",
"creatives": [
{
"sub_request_status": "SUCCESS",
"creative": {
"id": "48c1a68d-782c-48af-8dba-ceef18d22a3c",
"updated_at": "2020-03-16T17:19:24.250Z",
"created_at": "2020-03-16T17:19:24.250Z",
"name": "A new AD_TO_MESSAGE Creative",
"ad_account_id": "22225ba6-7559-4000-9663-bace8adff5f2",
"type": "AD_TO_MESSAGE",
"packaging_status": "IN_PROGRESS",
"review_status": "PENDING_REVIEW",
"shareable": true,
"headline": "Honey Dating",
"brand_name": "Dating for honey bears",
"call_to_action": "OPEN_APP",
"render_type": "STATIC",
"top_snap_media_id": "2fbaa906-d2d2-423d-b8e3-9535f1281998",
"top_snap_crop_position": "MIDDLE",
"ad_product": "SNAP_AD",
"ad_to_message_properties": {
"phone_number_id": "715b6ee0-357c-41d2-9246-feb09c199fc9",
"message": "Send me details of Single Polar Bears"
}
}
}
]
}

HTTP Request

POST https://adsapi.snapchat.com/v1/adaccounts/{ad_account_id}/creatives

Parameters

ParameterDefaultDescription
ad_account_idAd Account ID

Create a Snap Ad with Reminder attachment

A Reminder type creative contains an event that will be saved to a user's device when they swipe on the ad.

The creative needs to have the reminder_properties attribute where the event details id is stored, it’s not possible to Update a Reminder type Creative.

Attributes

AttributeDescriptionRequiredPossible Values
ad_account_idAd Account IDR
brand_nameBrand Name (replaces Profile name if filled out) R32 characters max
call_to_actionCall to ActionOREMIND_ME
headlineHeadline (displayed under brand name)R34 characters max
shareableAllow Users to Share with FriendsOtrue (default), false
nameCreative nameR
top_snap_media_idTop Snap Media IDR
top_snap_crop_positionTop Snap Crop PositionOOPTIMIZED (default), MIDDLE, TOP, BOTTOM
typeCreative TypeRREMINDER
web_view_propertiesHolds the web properties that the user will be prompted to visit when the event startsR*
deep_link_propertiesHolds the deep link properties that the user will be prompted to visit when the event startsR*
profile_propertiesPublic Profile IDR

*Either web_view_properties or deep_link_properties is required for a Reminder type creative

Additional Attributes

The following attributes should be added to the creative under the attribute reminder_properties.

AttributeDescriptionRequiredPossible Values
event_details_idID of the Event Details entity to be promotedR

HTTP Request

POST https://adsapi.snapchat.com/v1/adaccounts/{ad_account_id}/creatives

Parameters

ParameterDefaultDescription
ad_account_idAd Account ID

Example - Reminder Creative

curl -X PUT \
-d '{"creatives":[{"name": "Honey Bear Reminder Creative","ad_account_id": "82225ba6-7559-4000-9663-bace8adff5f8","type": "REMINDER","shareable": true,"headline": "Honey Bear the Movie release","call_to_action": "REMIND_ME","cta_color_display_mode": "AUTO_COLOR_DETECTION","render_type": "STATIC","top_snap_media_id": "c9889dc4-7777-495a-b67a-737dd2fd22c4","top_snap_crop_position": "MIDDLE","web_view_properties": {"url": "https://example.com/honeybears","block_preload": true,},"ad_product": "SNAP_AD","profile_properties": {"profile_id": "c0ea278b-0449-4369-88d6-636e5d925f70"},"reminder_properties": {"event_detail_id":"5ec9b3d8-8ad7-4375-a835-16f21742823e"}}]}' \
-H "Content-Type: application/json" \
-H "Authorization: Bearer meowmeowmeow" \
https://adsapi.snapchat.com/v1/adaccounts/82225ba6-7559-4000-9663-bace8adff5f8/creatives

The above command returns JSON structured like this:

{
"request_status": "SUCCESS",
"request_id": "277e1380-9b0c-4441-94f2-8c18ca54bdcc",
"creatives": [
{
"sub_request_status": "SUCCESS",
"creative": {
"id": "8aa76847-bb82-4925-be27-9e86ee2e4d7e",
"updated_at": "2025-03-18T13:38:19.626Z",
"created_at": "2025-03-18T13:38:19.626Z",
"name": "Honey Bear Reminder Creative",
"ad_account_id": "82225ba6-7559-4000-9663-bace8adff5f8",
"type": "REMINDER",
"packaging_status": "SUCCESS",
"review_status": "PENDING_REVIEW",
"shareable": true,
"forced_view_eligibility": "NONE",
"headline": "Honey Bear the Movie release",
"call_to_action": "REMIND_ME",
"cta_color_display_mode": "AUTO_COLOR_DETECTION",
"render_type": "STATIC",
"top_snap_media_id": "c9889dc4-7777-495a-b67a-737dd2fd22c4",
"top_snap_crop_position": "MIDDLE",
"web_view_properties": {
"url": "https://example.com/honeybears",
"block_preload": true
},
"ad_product": "SNAP_AD",
"profile_properties": {
"profile_id": "c0ea278b-0449-4369-88d6-636e5d925f70"
},
"reminder_properties": {
"event_detail_id": "5ec9b3d8-8ad7-4375-a835-16f21742823e"
}
}
}
]
}

Create a Story Ad Creative

The Story Ad Creative comes in two different variants, the full variant includes a Preview Creative and a Composite Creative, this type of Story Ad can run in the Stories Tab and also in between User stories and Curated stories.

The second variant of the Story Ad Creative uses only a Composite Creative, this type of Story Ad Creative can only run between User stories and Curated stories.

The Preview Creative is used to display the thumbnail within the Stories tab of the app, the Composite Creative is used to define the individual Snap Ads that make up the story. When the Story Ad runs in between User stories and Curated stories the Preview Creative is not used.

Create the Preview Creative

Additional Attributes

The following attributes should be added to the basic creative under the property preview_properties.

AttributeDescriptionRequiredPossible Values
preview_media_idImage that is the preview for Story AdsR
logo_media_idLogo shown on the tile for Story AdsO
preview_headlinePreview Headline shown on the tile for Story AdsR55 Character limit, emoji unicode characters allowed

Preview Image Specifications

  • Resolution 3:5
  • Minimum dimensions: 360 x 600 px
  • Maximum file size: 2MB
  • File Type: png

Logo Specifications

  • Dimensions: 993 x 284 px
  • Maximum file size: 2MB
  • File Type: png
curl -X POST \
-d '{"creatives": [{"ad_account_id": "0cf0aace-39d4-4502-8656-8f42daa473c7", "name": "Story Ad Preview", "type": "PREVIEW", "preview_properties": {"preview_media_id": "00a76e9f-186c-4ed4-87d7-d58a7dd06749", "logo_media_id": "6d54643b-e6e1-4c50-ab9a-a1f05965bf33", "preview_headline": "test preview headline"}}]}' \
-H "Content-Type: application/json" \
-H "Authorization: Bearer meowmeowmeow" \
https://adsapi.snapchat.com/v1/adaccounts/0cf0aace-39d4-4502-8656-8f42daa473c7/creatives

The above command returns JSON structured like this:

{
"request_status": "SUCCESS",
"request_id": "5ae7ac0a00ff09a390a9b9b4d60001737e616473617069736300016275696c642d36393364326336352d312d3136322d3400010101",
"creatives": [
{
"sub_request_status": "SUCCESS",
"creative": {
"id": "62537bbc-1a3a-4a40-b46f-43d181eac8ee",
"updated_at": "2018-04-30T23:51:40.466Z",
"created_at": "2018-04-30T23:51:40.466Z",
"name": "Story Ad Preview",
"ad_account_id": "0cf0aace-39d4-4502-8656-8f42daa473c7",
"type": "PREVIEW",
"packaging_status": "SUCCESS",
"review_status": "PENDING_REVIEW",
"shareable": true,
"top_snap_crop_position": "MIDDLE",
"preview_properties": {
"preview_media_id": "00a76e9f-186c-4ed4-87d7-d58a7dd06749",
"logo_media_id": "6d54643b-e6e1-4c50-ab9a-a1f05965bf33",
"preview_headline": "test preview headline"
}
}
}
]
}

Create the Composite Creative

Additional Attributes

The following attributes should be added to the basic creative under the property composite_properties.

AttributeDescriptionRequiredPossible Values
creative_idsList of creative ids that make up composite creativeR (For Story Ads)Creative types SNAP_AD, APP_INSTALL, WEB_VIEW and DEEP_LINK are supported

Composite creation guidelines

  • Story Ad Creatives use 1-20 individual Creatives within a Composite creative
  • The Creative types listed in creative_ids attribute can be mixed as long as they are of the supported type listed above
  • Creatives are shown to the user in the order listed at creation
  • The order of the Creatives is immutable once created
  • The shareable attribute on the composite overrides the shareable value of the individual creatives
curl -X POST \
-d '{"creatives": [{"ad_account_id": "0cf0aace-39d4-4502-8656-8f42daa473c7", "name": "First Composite Creative", "type": "COMPOSITE", "headline": "Test headline", "brand_name": "Test brand name",*", "shareable": true, "preview_creative_id": "62537bbc-1a3a-4a40-b46f-43d181eac8ee", "composite_properties": {"creative_ids": ["2cc52fce-855e-40aa-bb4b-016c2befd8ab", "f9a4b56c-ece0-4da4-bc9d-08c29ef941a2", "9c4b3882-addc-48d9-8503-22f7d03d6309"]}}]}' \
-H "Content-Type: application/json" \
-H "Authorization: Bearer meowmeowmeow" \
https://adsapi.snapchat.com/v1/adaccounts/8adc3db7-8148-4fbf-999c-8d2266369d74/creatives

The above command returns JSON structured like this:

{
"request_status": "SUCCESS",
"request_id": "5ae7b4cb00ff05f9646ae5a400ff0001737e616473617069736300016275696c642d36393364326336352d312d3136322d3400010155",
"creatives": [
{
"sub_request_status": "SUCCESS",
"creative": {
"id": "d3f4b7a5-e8dc-4e85-8d05-52094e3e3708",
"updated_at": "2018-05-01T00:28:59.816Z",
"created_at": "2018-05-01T00:28:59.816Z",
"name": "First Composite Creative",
"ad_account_id": "0cf0aace-39d4-4502-8656-8f42daa473c7",
"type": "COMPOSITE",
"packaging_status": "IN_PROGRESS",
"review_status": "PENDING_REVIEW",
"shareable": true,
"headline": "Test headline",
"brand_name": "Test brand name",
"top_snap_crop_position": "MIDDLE",
"composite_properties": {
"creative_ids": [
"2cc52fce-855e-40aa-bb4b-016c2befd8ab",
"f9a4b56c-ece0-4da4-bc9d-08c29ef941a2",
"9c4b3882-addc-48d9-8503-22f7d03d6309"
]
},
"preview_creative_id": "62537bbc-1a3a-4a40-b46f-43d181eac8ee"
}
}
]
}

Create a Lens Creative

Lens Creatives can run both in regular auction campaigns and in Reach and Frequency campaigns, for creation of Lens creatives see the Lens Section.

curl -X POST \
-d '{"creatives": [{"name":"Lens Creative","ad_account_id":"0b5176e0-9d5e-467c-8275-c1b619bd87d1","type":"LENS","shareable":true,"headline":"Headline Headline","brand_name":"Best Brand", "top_snap_media_id":"77f0c0a5-3374-4196-ac71-eb9fce49a5f3","ad_product":"LENS"}]}' \
-H "Content-Type: application/json" \
-H "Authorization: Bearer meowmeowmeow" \
https://adsapi.snapchat.com/v1/adaccounts/8adc3db7-8148-4fbf-999c-8d2266369d74/creatives

The above command returns JSON structured like this:

{
"request_status": "SUCCESS",
"request_id": "5b52250700ff0c3438c927b7db0001737e616473617069736300016275696c642d31393039356634322d312d3138352d310001011b",
"creatives": [
{
"sub_request_status": "SUCCESS",
"creative": {
"id": "0df4bc92-00c8-4a6d-af89-533def1e5750",
"updated_at": "2018-07-20T14:32:09.102Z",
"created_at": "2018-07-20T14:29:44.160Z",
"name": "Lens Creative",
"ad_account_id": "0b5176e0-9d5e-467c-8275-c1b619bd87d1",
"type": "LENS",
"packaging_status": "SUCCESS",
"review_status": "PENDING_REVIEW",
"shareable": true,
"headline": "Headline Healine",
"brand_name": "Best Brand",
"top_snap_media_id": "77f0c0a5-3374-4196-ac71-eb9fce49a5f3",
"top_snap_crop_position": "MIDDLE",
"ad_product": "LENS"
}
}
]
}

Create a Lens Creative with Attachment

You can create a Lens Creative with any of the following attachments and the corresponding field then becomes required. The attachment unit will behave in the same way as it would in a Snap Ad. For measurement, you can also use the Snap Pixel with the attachment if it is a webview, make sure to associate the pixel_id at the Adsquad level. For attributes and examples, see the Lens Section.

Attachment For LensCreative TypeRequired Field
WEB_VIEWLENS_WEB_VIEWweb_view_properties
APP_INSTALLLENS_APP_INSTALLapp_install_properties
DEEP_LINKLENS_DEEP_LINKdeep_link_properties

Lens Creatives are also eligible to run in Reach and Frequency Campaigns.

curl -X POST \
-d '{"creatives": [{"name":"Lens Creative","ad_account_id":"0b5176e0-9d5e-467c-8275-c1b619bd87d1","type":"LENS_WEB_VIEW","shareable":true,"headline":"Headline Headline","brand_name":"Best Brand", "top_snap_media_id":"77f0c0a5-3374-4196-ac71-eb9fce49a5f3","ad_product":"LENS", "web_view_properties": {"url": "http://snapchat.com/ads"}}]}' \
-H "Content-Type: application/json" \
-H "Authorization: Bearer meowmeowmeow" \
https://adsapi.snapchat.com/v1/adaccounts/8adc3db7-8148-4fbf-999c-8d2266369d74/creatives

The above command returns JSON structured like this:

{
"request_status": "SUCCESS",
"request_id": "5b52250700ff0c3438c927b7db0001737e616473617069736300016275696c642d31393039356634322d312d3138352d310001011b",
"creatives": [
{
"sub_request_status": "SUCCESS",
"creative": {
"id": "0df4bc92-00c8-4a6d-af89-533def1e5750",
"updated_at": "2018-07-20T14:32:09.102Z",
"created_at": "2018-07-20T14:29:44.160Z",
"name": "Lens Creative",
"ad_account_id": "0b5176e0-9d5e-467c-8275-c1b619bd87d1",
"type": "LENS_WEB_VIEW",
"packaging_status": "SUCCESS",
"review_status": "PENDING_REVIEW",
"shareable": true,
"headline": "Headline Healine",
"brand_name": "Best Brand",
"top_snap_media_id": "77f0c0a5-3374-4196-ac71-eb9fce49a5f3",
"top_snap_crop_position": "MIDDLE",
"ad_product": "LENS",
"web_view_properties": {
"url": "http://snapchat.com/ads"
}
}
}
]
}

Create a Collection Ad Creative

Additional Attributes

The following attributes should be added to the basic creative under the property collection_properties.

AttributeDescriptionRequiredPossible Values
interaction_zone_idID of the interaction zone to be usedR
default_fallback_interaction_typeThe interation type when user swipes up on the full unitRWEB_VIEW, DEEP_LINK (must match the interaction type of the creative elements in the collection)
web_view_propertiesWeb View propertiesRequired if default_fallback_interaction_type=WEB_VIEWSame as web_view_properties for Web View Creative
deep_link_propertiesDeep Link propertiesRequired if default_fallback_interaction_type=DEEP_LINKSame as deep_link_properties for Creative with deep links

For Collection Ad creatives, call_to_action must be set to null, and the headline property of the interaction zone is used instead.

curl -X POST \
-d '{"creatives": [{"ad_account_id": "8adc3db7-8148-4fbf-999c-8d2266369d74","name" : "Collection Ad creative","type": "COLLECTION","top_snap_media_id": "a871dcfd-3970-4917-a44a-b251220ce731","headline": "Collection Ad headline","brand_name": "My brand","collection_properties":{"interaction_zone_id":"a218dc8b-7a79-4da6-9a1c-e5a581c7bd44","default_fallback_interaction_type":"WEB_VIEW","web_view_properties":{"url":"https://snapchat.com"}}}]}' \
-H "Content-Type: application/json" \
-H "Authorization: Bearer meowmeowmeow" \
https://adsapi.snapchat.com/v1/adaccounts/8adc3db7-8148-4fbf-999c-8d2266369d74/creatives

The above command returns JSON structured like this:

{
"request_status": "SUCCESS",
"request_id": "5bef549b00ff07105bd7e8604d0001737e616473617069736300016275696c642d61353965373533332d312d3232302d3100010144",
"creatives": [
{
"sub_request_status": "SUCCESS",
"creative": {
"id": "e6ef3dea-0a5a-438e-928d-56726343d121",
"updated_at": "2018-11-16T23:37:01.555Z",
"created_at": "2018-11-16T23:37:01.555Z",
"name": "Collection Ad creative",
"ad_account_id": "8adc3db7-8148-4fbf-999c-8d2266369d74",
"type": "COLLECTION",
"packaging_status": "IN_PROGRESS",
"review_status": "PENDING_REVIEW",
"shareable": true,
"headline": "Collection Ad headline",
"brand_name": "My brand",
"top_snap_media_id": "a871dcfd-3970-4917-a44a-b251220ce731",
"top_snap_crop_position": "MIDDLE",
"ad_product": "SNAP_AD",
"collection_properties": {
"interaction_zone_id": "a218dc8b-7a79-4da6-9a1c-e5a581c7bd44",
"default_fallback_interaction_type": "WEB_VIEW",
"web_view_properties": {
"url": "https://snapchat.com",
"deep_link_urls": [],
"block_preload": false
}
}
}
}
]
}

Update a Creative

curl -X PUT \
-d '{
"creatives": [
{
"ad_account_id": "12325ba6-7559-4000-9663-bace8adff5f2",
"brand_name": "Example Inc",
"id": "7772efab-028d-40ec-aa9d-7eb8f065c10a",
"headline": "For all Citrus Fans",
"web_view_properties":
{
"url": "https://www.example.com/intro?utm_source=snapchat&utm_medium=paidsocial&utm_campaign=2019_citrus",
"block_preload": true
},
"type": "WEB_VIEW",
"ad_product": "SNAP_AD",
"top_snap_media_id": "647e6398-7e44-4ae5-a19d-c400b93bce32",
"top_snap_crop_position": "MIDDLE",
"name": "Citrus Creative",
"call_to_action": "LISTEN",
"shareable": true,
"profile_properties":
{
"profile_id": "62cf5c50-8343-48d3-a0a7-3ed45b75fa10"
}
}]
}' \
-H "Content-Type: application/json" \
-H "Authorization: Bearer meowmeowmeow" \
https://adsapi.snapchat.com/v1/adaccounts/12325ba6-7559-4000-9663-bace8adff5f2/creatives

The above command returns JSON structured like this:

{
"request_status": "SUCCESS",
"request_id": "5c3008ed00ff04a89c4d5c66150001737e616473617069736300016275696c642d31326365666331382d312d3232362d3000000003",
"creatives": [
{
"sub_request_status": "SUCCESS",
"creative": {
"id": "7772efab-028d-40ec-aa9d-7eb8f065c10a",
"updated_at": "2019-01-11T21:21:50.991Z",
"created_at": "2018-12-05T16:04:09.772Z",
"name": "Citrus Creative",
"ad_account_id": "12325ba6-7559-4000-9663-bace8adff5f2",
"type": "WEB_VIEW",
"packaging_status": "IN_PROGRESS",
"review_status": "PENDING_REVIEW",
"shareable": true,
"headline": "For all Citrus Fans",
"brand_name": "Example Inc",
"call_to_action": "LISTEN",
"top_snap_media_id": "647e6398-7e44-4ae5-a19d-c400b93bce32",
"top_snap_crop_position": "MIDDLE",
"web_view_properties": {
"url": "https://www.example.com/intro?utm_source=snapchat&utm_medium=paidsocial&utm_campaign=2019_citrus",
"deep_link_urls": [],
"block_preload": true
},
"ad_product": "SNAP_AD",
"profile_properties": {
"profile_id": "62cf5c50-8343-48d3-a0a7-3ed45b75fa10"
}
}
}
]
}

This endpoint will update the specified Creative. Making changes to a creative will impact all ads associated with the creative. These changes will trigger re-review of associated ads and the ads will be paused. Once the ads are re-approved, they will start delivering again.

Attributes that can be updated

Italicized attributes cannot be updated once a Creative is part of an Ad that has started serving.

AttributeRequired
brand_nameR
call_to_actionR
headlineR
shareableR
nameR
offer_disclaimer_idO
favorite_display_modeO
top_snap_media_idR
preview_creative_idO
forced_view_eligibilityO
web_view_propertiesRequired
urlR
block_preloadR
app_install_propertiesRequired
app_nameR
ios_app_idR
android_app_urlR
icon_media_idR
product_page_idO
deep_link_propertiesRequired
deep_link_uriR
app_nameR
ios_app_idR
android_app_urlR
icon_media_idR
web_view_fallback_urlR
fallback_typeR
product_page_idO
preview_propertiesRequired
preview_media_idR
logo_media_idR
preview_headlineR
composite_propertiesRequired
creative_idsR
ad_to_lens_propertiesRequired
lens_media_idR

Get All Creatives

This endpoint retrieves all creatives associated with an ad account.

HTTP Request

GET https://adsapi.snapchat.com/v1/adaccounts/{ad_account_id}/creatives

Parameters

ParameterDescriptionPossible values
ad_account_idThe Ad Account ID where the Creatives are held
limitURL Parameter for pagination, sets the number of Creatives per page returned50-1000
review_statusURL Parameter to select Creatives based on their review_statusPENDING_REVIEW, APPROVED,DISAPPROVED
typeURL Parameter to select Creatives based on their typeSNAP_AD, APP_INSTALL, WEB_VIEW, DEEP_LINK, AD_TO_LENS, AD_TO_CALL, AD_TO_MESSAGE, PREVIEW, COMPOSITE, LENS, LENS_WEB_VIEW, LENS_APP_INSTALL, LENS_DEEP_LINK, COLLECTION, LEAD_GENERATION

Example 1 - Fetch all Creatives

This example fetches all the Creatives within an Ad Account.

curl "https://adsapi.snapchat.com/v1/adaccounts/8adc3db7-8148-4fbf-999c-8d2266369d74/creatives" \
-H "Authorization: Bearer meowmeowmeow"

The above command returns JSON structured like this:

{
"request_status": "success",
"request_id": "57b0171900ff0c73f50d5bd2f10001737e616473617069736300016275696c642d35396264653638322d312d31312d3700010106",
"creatives": [
{
"sub_request_status": "success",
"creative": {
"id": "184fe3d0-ff80-4388-8d5f-05c340eff231",
"updated_at": "2016-08-14T06:54:38.229Z",
"created_at": "2016-08-14T06:54:38.229Z",
"name": "Creative LFV",
"ad_account_id": "8adc3db7-8148-4fbf-999c-8d2266369d74",
"type": "LONGFORM_VIDEO",
"packaging_status": "PENDING",
"review_status": "PENDING_REVIEW",
"shareable": true,
"call_to_action": "WATCH",
"top_snap_media_id": "a7bee653-1865-41cf-8cee-8ab85a205837",
"top_snap_crop_position": "MIDDLE",
"longform_video_properties": {
"video_media_id": "a7bee653-1865-41cf-8cee-8ab85a205837"
}
}
},
{
"sub_request_status": "success",
"creative": {
"id": "1c7065c2-ad9f-41cc-b2c5-d48d9810439b",
"updated_at": "2016-08-14T06:56:48.631Z",
"created_at": "2016-08-14T06:56:48.631Z",
"name": "Creative App Install",
"ad_account_id": "8adc3db7-8148-4fbf-999c-8d2266369d74",
"type": "APP_INSTALL",
"packaging_status": "PENDING",
"review_status": "PENDING_REVIEW",
"shareable": true,
"call_to_action": "INSTALL_NOW",
"top_snap_media_id": "a7bee653-1865-41cf-8cee-8ab85a205837",
"top_snap_crop_position": "MIDDLE",
"app_install_properties": {
"app_name": "Cool App Yo",
"ios_app_id": "447188370",
"android_app_url": "com.snapchat.android",
"icon_media_id": "ab32d7e5-1f80-4e1a-a76b-3c543d2b28e4"
}
}
},
{
"sub_request_status": "success",
"creative": {
"id": "313e8415-6294-47d6-b064-5a0d9f21d224",
"updated_at": "2016-08-14T06:54:52.107Z",
"created_at": "2016-08-14T06:54:52.107Z",
"name": "Creative LFV 2",
"ad_account_id": "8adc3db7-8148-4fbf-999c-8d2266369d74",
"type": "LONGFORM_VIDEO",
"packaging_status": "PENDING",
"review_status": "PENDING_REVIEW",
"shareable": true,
"call_to_action": "WATCH",
"top_snap_media_id": "a7bee653-1865-41cf-8cee-8ab85a205837",
"top_snap_crop_position": "MIDDLE",
"longform_video_properties": {
"video_media_id": "a7bee653-1865-41cf-8cee-8ab85a205837"
}
}
},
{
"sub_request_status": "success",
"creative": {
"id": "67e4296c-486b-4bf3-877b-f34e8eeb173c",
"updated_at": "2016-08-14T06:58:12.768Z",
"created_at": "2016-08-14T06:58:12.768Z",
"name": "Creative WV",
"ad_account_id": "8adc3db7-8148-4fbf-999c-8d2266369d74",
"type": "WEB_VIEW",
"packaging_status": "PENDING",
"review_status": "PENDING_REVIEW",
"shareable": true,
"call_to_action": "VIEW_MORE",
"top_snap_media_id": "a7bee653-1865-41cf-8cee-8ab85a205837",
"top_snap_crop_position": "MIDDLE",
"web_view_properties": {
"url": "http://snapchat.com/ads"
}
}
},
{
"sub_request_status": "success",
"creative": {
"id": "c1e6e929-acec-466f-b023-852b8cacc18f",
"updated_at": "2016-08-14T06:45:04.300Z",
"created_at": "2016-08-14T06:45:04.300Z",
"name": "Creative Creative",
"ad_account_id": "8adc3db7-8148-4fbf-999c-8d2266369d74",
"type": "SNAP_AD",
"packaging_status": "PENDING",
"review_status": "PENDING_REVIEW",
"shareable": true,
"top_snap_media_id": "a7bee653-1865-41cf-8cee-8ab85a205837",
"top_snap_crop_position": "MIDDLE"
}
}
]
}

Example 2 - Fetch all approved Collection Creatives

This example uses the type and review_status parameters to only fetch COLLECTION type Creatives with the APPROVED review status.

curl "/v1/adaccounts/57225ba6-7559-4000-9663-bace8adff5f2/creatives?limit=100&type=COLLECTION&review_status=APPROVED" \
-H "Authorization: Bearer meowmeowmeow"

The above command returns JSON structured like this:

{
"request_status": "SUCCESS",
"request_id": "29f6e26e-dd0b-48de-a8c7-46526bb2c501",
"paging": {},
"creatives": [
{
"sub_request_status": "SUCCESS",
"creative": {
"id": "049740c9-c320-4343-a3b3-5b07a1a85fb7",
"updated_at": "2023-08-11T11:37:36.606Z",
"created_at": "2023-08-11T11:32:55.443Z",
"name": "Badger Catalog DPA Collection Creative",
"ad_account_id": "57225ba6-7559-4000-9663-bace8adff5f2",
"type": "COLLECTION",
"packaging_status": "SUCCESS",
"review_status": "APPROVED",
"review_status_details": "",
"shareable": false,
"headline": "Lovely shopping",
"brand_name": "Kargo Test",
"render_type": "DYNAMIC",
"dynamic_render_properties": {
"dynamic_template_id": "da24c423-44f0-43ff-9c4a-1b5f5b7544b7",
"product_set_id": "e9161ea4-5ab5-4402-addb-52e37a5dfd1e"
},
"top_snap_crop_position": "MIDDLE",
"ad_product": "SNAP_AD",
"collection_properties": {
"interaction_zone_id": "59895cd1-924e-48e0-8ab1-0420651081a9",
"default_fallback_interaction_type": "SHOWCASE",
"showcase_properties": {
"product_set_id": "e9161ea4-5ab5-4402-addb-52e37a5dfd1e",
"interaction_type": "WEB_VIEW",
"callout_text": "Super lovely shopping",
"web_view_properties": {
"url": "https://www.example.com",
"allow_snap_javascript_sdk": false,
"use_immersive_mode": false,
"deep_link_urls": [],
"block_preload": false
}
}
},
"profile_properties": {
"profile_id": "c0ea278b-0449-4369-88d6-636e5d925f70"
},
"semantic_id": "1937767549"
}
},
{
"sub_request_status": "SUCCESS",
"creative": {
"id": "0ffb88c8-a70b-447a-b2ac-60b891f1ff9b",
"updated_at": "2024-11-14T20:09:18.924Z",
"created_at": "2023-06-14T18:19:59.390Z",
"name": "Honeybear Collection Ad (non-DPA)",
"ad_account_id": "57225ba6-7559-4000-9663-bace8adff5f2",
"type": "COLLECTION",
"packaging_status": "SUCCESS",
"review_status": "APPROVED",
"review_status_details": "",
"shareable": true,
"forced_view_eligibility": "NONE",
"headline": "Spectacles by Snap",
"brand_name": "Spectacles",
"render_type": "STATIC",
"top_snap_media_id": "714513fc-b614-43bb-bde1-cb9ddb991d38",
"top_snap_crop_position": "MIDDLE",
"ad_product": "SNAP_AD",
"collection_properties": {
"interaction_zone_id": "b140c36a-bbb7-4ebe-91ae-e85b6edd1dd3",
"default_fallback_interaction_type": "WEB_VIEW",
"web_view_properties": {
"url": "https://www.example.com/",
"allow_snap_javascript_sdk": false,
"use_immersive_mode": false,
"deep_link_urls": [],
"block_preload": false
}
},
"profile_properties": {
"profile_id": "c0ea278b-0449-4369-88d6-636e5d925f70"
},
"semantic_id": "2051240254"
}
},
...
{
"sub_request_status": "SUCCESS",
"creative": {
"id": "fe3a6b36-9516-4880-976a-f1f74c0926d0",
"updated_at": "2022-04-27T22:27:48.703Z",
"created_at": "2022-03-07T23:03:34.250Z",
"name": "Badger Digging Supplies - Dynamic Collection Ad",
"ad_account_id": "57225ba6-7559-4000-9663-bace8adff5f2",
"type": "COLLECTION",
"packaging_status": "SUCCESS",
"review_status": "APPROVED",
"review_status_details": "",
"shareable": true,
"headline": "Spectacles",
"brand_name": "Spectacles by Snap",
"render_type": "DYNAMIC",
"dynamic_render_properties": {
"dynamic_template_id": "853191d6-140c-4181-b9a8-12721f444674",
"product_set_id": "067e36fa-c61c-4be9-af66-04ca82aea33a"
},
"top_snap_crop_position": "MIDDLE",
"ad_product": "SNAP_AD",
"collection_properties": {
"interaction_zone_id": "5a8b31d5-6973-4362-8538-1d0cfdc0aae6",
"default_fallback_interaction_type": "WEB_VIEW"
}
}
}
]
}

Get a Specific Creative

curl "https://adsapi.snapchat.com/v1/creatives/c1e6e929-acec-466f-b023-852b8cacc18f" \
-H "Authorization: Bearer meowmeowmeow"

The above command returns JSON structured like this:

{
"request_status": "success",
"request_id": "57b017a400ff057ca1dcf703da0001737e616473617069736300016275696c642d35396264653638322d312d31312d3700010101",
"creatives": [
{
"sub_request_status": "success",
"creative": {
"id": "c1e6e929-acec-466f-b023-852b8cacc18f",
"updated_at": "2016-08-14T06:45:04.300Z",
"created_at": "2016-08-14T06:45:04.300Z",
"name": "Creative Creative",
"ad_account_id": "8adc3db7-8148-4fbf-999c-8d2266369d74",
"type": "SNAP_AD",
"packaging_status": "PENDING",
"review_status": "PENDING_REVIEW",
"shareable": true,
"top_snap_media_id": "a7bee653-1865-41cf-8cee-8ab85a205837",
"top_snap_crop_position": "MIDDLE"
}
}
]
}

This endpoint retrieves a specific Creative.

HTTP Request

GET https://adsapi.snapchat.com/v1/creatives/{creative_id}

URL Parameters

ParameterDescription
creative_idThe ID of the creative to retrieve

Get Snapcode preview for a Creative

This endpoint generates a snapcode preview for a specific creative, the lifetime of the snapcode is 7 days. The attribute expires_at defines the time that the snapcode will stop functioning.

HTTP Request

GET https://adsapi.snapchat.com/v1/creatives/{creative_id}/snapcode

URL Parameters

ParameterDescription
creative_idID of the creative that the preview is created for
curl "https://adsapi.snapchat.com/v1/creatives/c1e6e929-acec-466f-b023-852b8cacc54f/snapcode" \
-H "Authorization: Bearer meowmeowmeow"

The above command returns JSON structured like this:

{
"request_status": "SUCCESS",
"request_id": "5aa15e8000ff03acde535d9a200001737e616473617069736300016275696c642d62633562363761342d312d3134372d3600013326",
"creative_id": "c1e6e929-acec-466f-b023-852b8cacc54f",
"expires_at": "2018-03-09T15:51:33.248Z",
"snapcode_link": "https://adsapi.snapchat.com/snapcodeimage/c1e6e929-acec-466f-b023-852b8cacc54f/352a899e-4a9d-3fdf-8efe-9bac9b8a0a21"
}

Associate Public Profiles with Creatives

To associate a Public Profile with a Creative you need to include the profile_properties attribute when you create, or Update, the Creative. You can use the Sharing Policies in the Public Profile API to list all Public Profiles that are available for an Ad Account/Organization.

curl -X PUT \
-H "Authorization: Bearer meowmeowmeow" \
-H "Content-Type: application/json" \
'https://adsapi.snapchat.com/v1/adaccounts/12325ba6-7559-4000-9663-bace8adff5f2/creatives' \
-D '{
"creatives": [{
"ad_account_id": "12325ba6-7559-4000-9663-bace8adff5f2",
"brand_name": "Example Inc",
"id": "7772efab-028d-40ec-aa9d-7eb8f065c10a",
"headline": "For all Citrus Fans",
"web_view_properties":
{
"url": "https://www.example.com/intro?utm_source=snapchat&utm_medium=paidsocial&utm_campaign=2019_citrus",
"block_preload": true
},
"type": "WEB_VIEW",
"ad_product": "SNAP_AD",
"top_snap_media_id": "647e6398-7e44-4ae5-a19d-c400b93bce32",
"top_snap_crop_position": "MIDDLE",
"name": "Citrus Creative",
"call_to_action": "LISTEN",
"shareable": true,
"profile_properties":
{
"profile_id": "62cf5c50-8343-48d3-a0a7-3ed45b75fa10"
}
}]
}'

The above command returns JSON structured like this:

{
"request_status": "SUCCESS",
"request_id": "5c3008ed00ff04a89c4d5c66150001737e616473617069736300016275696c642d31326365666331382d312d3232362d3000000003",
"creatives": [
{
"sub_request_status": "SUCCESS",
"creative": {
"id": "7772efab-028d-40ec-aa9d-7eb8f065c10a",
"updated_at": "2019-01-11T21:21:50.991Z",
"created_at": "2018-12-05T16:04:09.772Z",
"name": "Citrus Creative",
"ad_account_id": "12325ba6-7559-4000-9663-bace8adff5f2",
"type": "WEB_VIEW",
"packaging_status": "IN_PROGRESS",
"review_status": "PENDING_REVIEW",
"shareable": true,
"headline": "For all Citrus Fans",
"brand_name": "Example Inc",
"call_to_action": "LISTEN",
"top_snap_media_id": "647e6398-7e44-4ae5-a19d-c400b93bce32",
"top_snap_crop_position": "MIDDLE",
"web_view_properties": {
"url": "https://www.example.com/intro?utm_source=snapchat&utm_medium=paidsocial&utm_campaign=2019_citrus",
"deep_link_urls": [],
"block_preload": true
},
"ad_product": "SNAP_AD",
"profile_properties": {
"profile_id": "62cf5c50-8343-48d3-a0a7-3ed45b75fa10"
}
}
}
]
}

HTTP Request

You can associate a profile during create or update

POST/PUT https://adsapi.snapchat.com/v1/creatives/{creative_id}/snapcode

URL Parameters

ParameterDescription
creative_idThe ID of the creative to retrieve

HTTP Request

You can associate a profile during create or update

POST/PUT https://adsapi.snapchat.com/v1/creatives/{creative_id}/snapcode

URL Parameters

ParameterDescription
creative_idThe ID of the creative to retrieve

HTTP Request

You can associate a profile during create or update

POST/PUT https://adsapi.snapchat.com/v1/creatives/{creative_id}/snapcode

URL Parameters

ParameterDescription
creative_idThe ID of the creative to retrieve

Create a Partnership Ad Creative

Partnership Ad Creative allows brand to associate media to creator accounts. Creators will approve this “ad level” partnership via their Snapchat app before an ad can be posted under creator's profile.

creator_partnership_type can be of two types:

  1. BRAND_PARTNERSHIP : Gives the creator the ability to tag partner brand in organic content with the paid partnership tag without approval.
  2. AD_PARTNERSHIP: Gives the creator the ability to tag partner brand in organic content with the paid partnership tag without approval and allows the brand to post ads on behalf of the pre-approved creator.

HTTP Request

POST https://adsapi.snapchat.com/v1/adaccounts/{ad_account_id}/creatives

URL Parameters

ParameterDescription
ad_account_idAd Account ID

Additional Attributes

The following attributes should be added to the basic creative.

AttributeRequiredDescription
creator_partnership_typeYesBRAND_PARTNERSHIP, AD_PARTNERSHIP
profile_tagged_in_headlineNoTo get the brand tagged, add this parameter with brand’s profile id
creator_profile_propertiesNoThe profile id of the creator of the snap, if left null, creative will show brand’s profile
curl -X POST \
-H "Authorization: Bearer meowmeowmeow" \
-H "Content-Type: application/json" \
'https://adsapi.snapchat.com/v1/adaccounts/12325ba6-7559-4000-9663-bace8adff5f2/creatives' \
-D '{
"creatives": [{
"name":"Creative Creative",
"ad_account_id": "12325ba6-7559-4000-9663-bace8adff5f2",
"type": "WEB_VIEW",
"shareable": true,
"forced_view_eligibility": "SIX_SECONDS",
"headline": "No holding back",
"call_to_action": "SHOP_NOW",
"cta_color_display_mode": "AUTO_COLOR_DETECTION",
"render_type": "STATIC",
"top_snap_media_id": "a7bee653-1865-41cf-8cee-8ab85a205837",
"top_snap_crop_position": "MIDDLE",
"web_view_properties":
{
"url": "https://www.example.com/intro?cid=snap-pro",
"block_preload": true
},
"ad_product": "SNAP_AD",
"profile_properties":
{
"profile_id": "62cf5c50-8343-48d3-a0a7-3ed45b75fa10"
},
"creator_partnership_type": "AD_PARTNERSHIP"
}]
}'

The above command returns JSON structured like this:

{
"request_status": "SUCCESS",
"request_id": "5c3008ed00ff04a89c4d5c66150001737e616473617069736300016275696c642d31326365666331382d312d3232362d3000000003",
"creatives": [
{
"name": "Creative Creative",
"ad_account_id": "12325ba6-7559-4000-9663-bace8adff5f2",
"type": "WEB_VIEW",
"shareable": true,
"forced_view_eligibility": "SIX_SECONDS",
"headline": "No holding back",
"call_to_action": "SHOP_NOW",
"cta_color_display_mode": "AUTO_COLOR_DETECTION",
"render_type": "STATIC",
"top_snap_media_id": "a7bee653-1865-41cf-8cee-8ab85a205837",
"top_snap_crop_position": "MIDDLE",
"web_view_properties": {
"url": "https://www.example.com/intro?cid=snap-pro",
"block_preload": true
},
"ad_product": "SNAP_AD",
"profile_properties": {
"profile_id": "62cf5c50-8343-48d3-a0a7-3ed45b75fa10"
},
"creator_partnership_type": "AD_PARTNERSHIP"
}
]
}
Was this page helpful?
Yes
No