Product Extensions for Advantage+ Creative
Updated: Jan 14, 2025
Copy for LLM
Ads in WhatsApp Status are available via the Marketing API. Learn more about ads in WhatsApp Status.
Product extensions (the “Add catalog items” feature in Meta Ads Manager) is an Advantage+ creative optimization that showcases products from your catalog below your static single media when it’s likely to improve performance. This document shows you how to use product extensions features for ads.
API Support for Product Extensions
Product extension creative creation is supported in all versions of the Marketing API, but beginning with v20.0, all ad creation requests that are eligible for product extensions must specify if the ad opts in to use it or not. The
enroll_status field must be provided with either an OPT_IN or OPT_OUT value.Eligibility Criteria
- Campaign with
SALESorTRAFFICobjective - Single image or video ad format
- A catalog
Before You Begin
Follow the steps below to set up your ad campaigns.
Standalone Creative Creation
Before
curl -X POST \
-F 'name=Product Extension Creative' \
-F 'object_story_spec={
"link_data": {
"link": "<URL>",
},
"page_id": "<PAGE_ID>",
"instagram_actor_id": "<INSTAGRAM_ACTOR_ID>",
}' \
-F 'access_token=<ACCESS_TOKEN>' \
https://graph.facebook.com/v26.0/act_<AD_ACCOUNT_ID>/adcreatives
After (new fields are highlighted in bold)
curl -X POST \
-F 'name=Product Extension Creative' \
-F 'object_story_spec={
"link_data": {
"link": "<URL>",
},
"page_id": "<PAGE_ID>",
"instagram_actor_id": "<INSTAGRAM_ACTOR_ID>",
}' \
-F 'creative_sourcing_spec={
"associated_product_set_id": "<PRODUCT_SET_ID>",
}' \
-F 'degrees_of_freedom_spec={
"creative_features_spec": {
"product_extensions": {
"enroll_status": "OPT_IN",
"action_metadata": {
"type": "MANUAL",
},
},
},
}' \ -F 'access_token=<ACCESS_TOKEN>' \
https://graph.facebook.com/v26.0/act_<AD_ACCOUNT_ID>/adcreatives
Ad Creation
Before
curl -X POST \
-F 'creative={
"object_story_spec": {
"page_id": "<PAGE_ID>",
"link_data": {
"link": "<WEBSITE_URL>",
}
},
}' \
-F "adset_id=<ADSET_ID>" \
-F "name=New Ad" \
-F "status=PAUSED" \
-F "access_token=<ACCESS_TOKEN>" \
https://graph.facebook.com/v26.0/act_<AD_ACCOUNT_ID>/ads
After (new fields are in bold)
curl -X POST \
-F 'creative={
"object_story_spec": {
"page_id": "<PAGE_ID>",
"link_data": {
"link": "<WEBSITE_URL>",
}
},
"creative_sourcing_spec": {
"associated_product_set_id": "<PRODUCT_SET_ID>",
},
"degrees_of_freedom_spec": {
"creative_features_spec": {
"product_extensions": {
"enroll_status": "OPT_IN",
"action_metadata": {
"type": "MANUAL"
},
}
}
}}' \
-F "adset_id=<ADSET_ID>" \
-F "name=New Ad" \
-F "status=PAUSED" \
-F "access_token=<ACCESS_TOKEN>" \
https://graph.facebook.com/v26.0/act_<AD_ACCOUNT_ID>/ads
Parameters
| Name | Description |
|---|---|
product_extensions | Product extensions is an Advantage+ creative optimization that showcases products from your catalog below your static single media when it’s likely to improve performance. Please set the enroll_status field with OPT_IN to enable it.It can be added in creative_features_spec. For more details, see the Ad Creative Features Details reference documentation. |
associated_product_set_id | Specifies the product set ID for product extensions in Advantage+ creative optimization. This product set will be shown below your single media. It can be added in the creative_sourcing_spec. See the Ad Creative Sourcing Spec reference documentation for more details. |