You can use branded content media, such as a post tagged as branded content by a creator, to create partnership ads.
This document shows you how to:
Review the requirements for creating partnership ads.
To fetch the creator’s Instagram ID, we recommend using Business Discovery.
This sample query shows how to get the creator Instagram ID of the Blue Bottle Coffee Instagram account. Notice that business discovery queries are performed on the Instagram business or creator account's ID (in this case, 17841405309211844), not the username of the Instagram business or creator account that you are attempting to get data about (bluebottle in this example).
curl -i -X GET \
"https://graph.facebook.com/v25.0/17841405309211844?fields=business_discovery.username(bluebottle)&access_token=<ACCESS_TOKEN>"
{
"business_discovery": {"id": "17841401441775531" // Blue Bottle's Instagram Account ID }
}
Send a POST request to the /act_{ad-account-id}/adcreatives endpoint with the page_id field set to your brand's Facebook Page ID for the primary identity. You also pass either the sponsor_id (Instagram) or the sponsor_page_id (Facebook) fields, or both, to be the secondary identity of the partnership ad.
Note: If you only provide either the sponsor_id or the sponsor_page_id, the associated Instagram user ID or Facebook Page ID will be automatically linked. If there is no hard link between the Instagram and Facebook accounts, the ad will not be delivered to that specific platform.
{
"degrees_of_freedom_spec": { // required field to be passed
"creative_features_spec": {
"standard_enhancements": { // required field to be passed
"action_metadata": {
"type": "DEFAULT"
},
"enroll_status": "OPT_IN"
}
},
"degrees_of_freedom_type": "USER_ENROLLED_AUTOFLOW"
},
"facebook_branded_content": {
"sponsor_page_id": "255033446395141" // Creator Page ID (test rithiky brand)
},
"instagram_branded_content": {
"sponsor_id": "90010551992170" // Creator IG ID (test_rithiky_brand)
},
"object_story_spec": {
"page_id": "110001241469329", // Advertiser Page ID (test vitaan brand new)
"link_data": {
"attachment_style": "link",
"call_to_action": {
"type": "LEARN_MORE"
},
"link": "www.instagram.com", // sample url
"image_hash": "1b7a65956006e9941608b3914d3964f5" //sample image hash
}
}
}
{
"id": <CREATIVE_ID>
}
Here is how the above sample request would output the ad.
Send a POST request to the /act_{ad-account-id}/adcreatives endpoint with the page_id field set to the creator's Facebook Page ID.
If the creator does not have an existing Facebook Page, you can pass your Page ID as the page_id field, but the ad will not be delivered to Facebook.
Note: The Instagram user ID will automatically be derived from the Facebook Page ID passed in the object_story_spec field.
{
"degrees_of_freedom_spec": { // required field to be passed
"creative_features_spec": {
"standard_enhancements": { // required field to be passed
"action_metadata": {
"type": "DEFAULT"
},
"enroll_status": "OPT_IN"
}
},
"degrees_of_freedom_type": "USER_ENROLLED_AUTOFLOW"
},
"facebook_branded_content": {
"sponsor_page_id": "255033446395141" // Advertiser Page ID (test vitaan brand)
},
"instagram_branded_content": {
"sponsor_id": "35302227070484" // Advertiser IG ID (test_vitaan_brand)
},
"object_story_spec": {
"page_id": "255033446395141", // Creator Page ID (test rithiky brand)
"link_data": {
"attachment_style": "link",
"call_to_action": {
"type": "LEARN_MORE"
},
"link": "www.instagram.com", // sample url
"image_hash": "1b7a65956006e9941608b3914d3964f5" //sample image hash
}
}
}
{
"id": <CREATIVE_ID>
}
Here is how the above sample request would output the ad.
To create an ad with the ad creative you provided using one of the sections above, send a POST request to the /act_{ad-account-id}/ads endpoint with the name field set to the name for your ad, the adset_id field set to your ad set ID, the creative field with the creative_id parameter set to the ad creative ID you received, and the status initially set PAUSED.
curl -X POST \
-F 'name": "My Ad's Name"' \
-F 'adset_id: <ADSET_ID>' \
-F 'creative: {"creative_id": <CREATIVE_ID>}' \
-F 'status: "PAUSED"' \
-F 'access_token=<ACCESS_TOKEN>'\
'https://graph.facebook.com/v25.0/act_<AD_ACCOUNT_ID>/ads'
Upon success, your app will receive the ad ID.
{
"id": <AD_ID>
}
You can use the returned ad ID to publish your ad.