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.You can use the API to determine if a Video is already eligible for crossposting or a crossposted video, how to enable crossposting to all Pages managed by your Business Manager, and to get a list of Pages you can crosspost to.
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:
- The ID of the Video you want to crosspost
- IDs of Pages where you want to publish the Video
- A Page access token of the Page where the Video was originally published
- The
publish_videoPermission - The
pages_manage_postsPermission - The
pages_read_engagementPermission
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:
- The ID of the Video you want to crosspost
- The ID of the Page where you want to publish the Video
- A Page access token of the Page where you want the Video published
- The
publish_videoPermission - The
pages_manage_postsPermission - The
pages_read_engagementPermission
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:
- The ID of the Video you want to crosspost
- A Page access token of the Page where the Video was originally published
- The
pages_manage_postsPermission - The
pages_read_engagementPermission
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:
- The ID of the Video you want to check
- A Page access token of the Page where the video was originally published
- The
publish_videoPermission - The
pages_manage_postsPermission - The
pages_read_engagementPermission
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:
- The ID of the Page where the Video was originally published
- A Page access token of the Page where the Video was originally published
- The
pages_manage_postsPermission - The
pages_read_engagementPermission
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:
- The ID of the Video you want to crosspost
- A Page access token of the Page where the Video was originally published
- The
pages_manage_postsPermission - The
pages_read_engagementPermission
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.