Creating Branded Content

Creators, celebrities, and media companies can share branded content on Facebook. Branded content posts are any content that features or is influenced by a advertiser or marketer for an exchange of value. To use this, you must comply with our Branded Content Policy and Ads Policy. In addition, you must tag your business partner in the posts using the branded content tool or Marketing API.

Most people creating branded content posts already have access to the branded content tool and have verified Pages or Profiles. If the branded content tool is not available your Page, submit an application for access.

You can use Marketing API to create branded content posts. Or you can also use the branded content tool in Ads Manager, and the Mentions App. See Ads Help Center, Branded Content.

Overview

Create branded content for different post formats listed in Ads Help Center, Branded Content.

You call different endpoints per post format, and include sponsor_tags in the post. A sponsor tag points to a Facebook Page.

You can allow your business partners to directly boost your posts, by adding direct_share_status in the post. Set direct_share_status = 1 to grant permission to a business partner to boost your post. Otherwise, set direct_share_status = 0.

Create a Status Update

To start, you should post to a Page's feed endpoint to create a status update. The POST must contain values for the sponsor_id, share_status, and the message fields.

curl -X POST "https://graph.facebook.com/PAGE_ID/feed" 
  -F "access_token=TOKEN" 
  -F "message=Check out some beautiful products in this grocery store" 
  -F "direct_share_status=1"
  
  {"id":"ID"}
  

Adding Photos

You can add photos to your post at a Page's photos endpoint. The POST must contain values for the sponsor_id, share_status, and the message fields.

Specify a url field to link to an existing photo. You can also upload the photo as an attachment to the post. See Photo Upload.

  curl -X POST "https://graph.facebook.com/PAGE_ID/feed" 
  -F "access_token=TOKEN" 
  -F "message=Check out some beautiful products in this grocery store" 
  -F "direct_share_status=1" 
  -F "url=https://xx.cdn.net/v/t31.0-8/13064650_505613696297499_6399089570275517473_o.jpg"
  
 {"id":"372501189608751_701886166670250"}
 

Posting a Video

Posting a video with branded content requires several steps:

  • Make a call to specify you want to upload video. The API returns a video object ID you can use to upload the video.
  • Upload the video.
  • Complete the video transfer by setting the share status. Also provide sponsor_id for the video, which adds branded content to the story.

See Uploading Videos.

In this example, we start a request, upload the video, and set sponsor_id and direct_share_status.

 curl -X POST "https://graph-video.facebook.com/VERSION/PAGE_ID/videos" 
  -F "access_token=$at" 
  -F "upload_phase=finish" 
  -F "upload_session_id=SESSION_ID" 
  -F "sponsor_id=ID" 
  **-F "direct_share_status=1"**


On success you see this:

{"success":true}

Live Video

To create branded live video, you should:

  • Create a live video object
  • Update the live video object and add sponsor_id
  • Start your video stream

To learn more about creating and managing live video streams, see our Live Video API. You can query the list of live videos for a page and use a video ID to update sponsor_id. Alternately you can use the ID returned when you first create your live.

Updating Branded Content

We do not support changes to post content with a brand ID on the web or on mobile devices. However you can use Marketing API to update a post to include or change a sponsor. You can change the sponsor by changing the value of the sponsor_id field on a post object.

To add a sponsor to a post, make POST on a Page post and specify a sponsor_id. To change the sponsor on a post, pass in the new sponsor_id field.

You can allow or prohibit a business partner directly boosting a post. Provide sponsor_id and your change to direct_share_status.

curl -X POST "https://graph.facebook.com/PAGE_POST_ID" 
  -F "access_token=TOKEN" 
  -F "direct_share_status=1"
  
 {"success":true}