Video API

Crosspost a Video

Updated: Apr 17, 2026
This document explains how to use the Video API to publish a video on multiple Pages without uploading the video to each Page. For example, if you have a parent Page with several child Pages, you can upload and publish a video to the parent Page then publish the Video to all child Pages without having to upload the video to each Page.
To crosspost a Video, you must be able to perform to the CREATE task on the Pages and enable the Video to be published to specific Pages. You will need the ID of the Video and the ID’s of the Pages where you want to publish the Video as well as Page access tokens from the Page where the Video was originally published and the Pages where you want to publish.
Visit our Reels Publishing guide for informtion about crossposting a reel to a collaborator’s Facebook Page.

Limitations

If a video has been crossposted to your Page but you do not have a Role on the Page where the video was originally published, you cannot change any Permissions of the Video.

Step 1. Enable Crossposting

To publish a Video to multiple Pages you must enable crossposting of the Video to these Pages.
You will need:
Send a POST request to the Video endpoint:
POST /{api-version}/{video-id}
  ?allow_crossposting_for_pages=[{page_id:{page-a-id},allow:true},{page_id:{page-b-id},allow:true}]
  &access_token={page-access-token}
Include the following parameters:
Parameter Name Value
allow_crossposting_for_pages
A JSON array of Page IDs where you want to publish the video. Set allow to true to enable publishing or false to disable publishing.
access_token
The Page access token of the Page where the video was originally published.

Sample Request

curl -X POST \
  "https://graph.facebook.com/v7.0/2918040388250909" \
  -F "allow_crossposting_for_pages=[{page_id:104371193424796,allow:true},{page_id:115969103185286",allow:true}] \
  -F "access_token=EAABkW..."

Sample Response

{
  "success": true
}

Step 2. Crosspost the Video

You will need:
Send a POST request to the Page Videos endpoint:
POST /{api-version}/{page-id}/videos
    ?crossposted_video_id={video-id}
    &access_token={page-access-token}
Include the following parameters:
Parameter Name Value
crossposted_video_id
The video ID of the Video you are crossposting.
access_token
The Page access token of the Page where you are publishing the video.

Sample Request

curl -X POST \
  "https://graph.facebook.com/104371193424796/videos?crossposted_video_id=2918040388250909&access_token=EAABk..."

Sample JSON Response

{
  "id":"577600939847873"
}

Get Video Crossposting Eligibility

To determine if a Video is eligible to be crossposted, send a GET request to the Video endpoint with the is_crossposting_eligible field.
You will need:
GET /{api-version}/{video-id}
   ?fields=is_crossposting_eligible
   &access_token={page-access-token}

Sample Request

curl -X GET \
  "https://graph.facebook.com/v7.0/2918040388250909" \
  -F "is_crossposting_eligible" \
  -F "access_token=EAABkW..."

Sample Response

{
  "is_crossposting_eligible": true,
  "id": "2918040388250909"
}
Parameter Name Value
is_crossposting_eligible
Displays if the Video is enabled to be crossposted.
access_token
The Page access token of the Page where the Video was originally published.

Get Video Crossposting Status

To determine if the Video is a crossposted Video, send a GET request to the Video endpoint with the is_crosspost_video field.
You will need:
GET /{api-version}/{video-id}
  ?fields=is_crosspost_video
  &access_token={page-access-token}
Include the following parameters
Parameter Name Value
is_crosspost_video
Displays if the Video is the original or is a crossposted Video.
access_token
The Page access token of the Page where the Video was originally published.

Sample Request

curl -X GET \
 "https://graph.facebook.com/v7.0/577600939847873?fields=is_crosspost_video&access_token=EAABk..."

Sample Response

{
  "is_crosspost_video": true,
  "id": "577600939847873"
}

Get a List of Pages Eligible for Crossposting

You will need:
Send a GET request to the Page CrosspostWhitelistedPages endpoint.
GET {page-id}/crosspost_whitelisted_pages
  &access_token={page-access-token}

Sample Request

curl -X GET \ "https://graph.facebook.com/v7.0/2918040388250909/crosspost_whitelisted_pages&access_token=EAABk..."

Sample Response

{
  "crosspost_whitelisted_pages": {
    "data": [
      {
        "name": "Obsession, by Margaret",
        "id": "115969103185286"
      },
      {
        "name": "Cisco Dog",
        "id": "422575694827569"
      }
    ],
    "paging": {
      "cursors": {
        "before": "QVFIUn...",
        "after": "QVFIUk4..."
      }
    }
  },
  "id": "1353269864728879"
}

Enable Crossposting to All Your Business Manager Pages

To enable crossposting to all Pages managed by your Business Manager, send a POST request to the Video endpoint.
You will need:
POST /{api-version}/{video-id}
  ?allow_bm_crossposting=true
  &access_token={page-access-token}
Include the following parameters
Parameter Name Value
allow_bm_crossposting
Set allow to true to enable publishing or false to disable publishing.
access_token
The Page access token of the Page where the video was originally published.

Sample Request

curl -X POST \
  "https://graph.facebook.com/v7.0/2918040388250909?allow_bm_crossposting=true&access_token=EAABkW..."

Sample Response

{
  "success": true
}

Insights

Each crossposted Video has its own unique video_id. You can see video insights from each Video and Page.

See Also

For more information about crossposting, visit our Help Center.