Mutation
Use the scheduleFacebookPost
mutation to schedule posts to Facebook:
mutation ScheduleFacebookPost($input: ScheduleFacebookPostInput!) {
scheduleFacebookPost(input: $input) {
success
errors {
field
message
}
post {
id
socialAccount {
id
username
}
publishingStatus
text
firstComment
gallery {
id
galleryMediaSet {
id
media {
url
mimeType
}
}
}
submissions {
id
postAt
mediaType
publishingMethod
}
}
}
}
Input Parameters
ScheduleFacebookPostInput
READY_TO_PUBLISH
, DRAFT
(default: READY_TO_PUBLISH
)FacebookPostSubmissionInputType
Each submission in the array supports these parameters:
POST
, REEL
, STORY
AUTOMATIC
, MANUAL
(default: AUTOMATIC
)Examples
Simple Facebook Post
Schedule a basic Facebook post with text only.
{
"input": {
"username": "myfacebookpage",
"text": "Hello Facebook! This is our first scheduled post 🎉",
"submissions": [
{
"postAt": "2025-12-01T15:30:00Z",
"mediaType": "POST"
}
]
}
}
Facebook Post with Media URL
Schedule a Facebook post by uploading media from an external URL. The media will be automatically downloaded and added to your Content Library.
{
"input": {
"username": "myfacebookpage",
"text": "Check out this amazing sunset! 🌅",
"mediaUrl": "https://picsum.photos/seed/socialmedia/900/1600",
"submissions": [
{
"postAt": "2025-12-01T15:30:00Z",
"mediaType": "POST"
}
]
}
}
Facebook Post with Content Library Media
Schedule a Facebook post using media already in your Content Library. The search is case-insensitive and will use the first matching file based on its name.
{
"input": {
"username": "myfacebookpage",
"text": "Sharing our company logo! 🏢",
"mediaName": "company-logo.png",
"submissions": [
{
"postAt": "2025-12-01T15:30:00Z",
"mediaType": "POST"
}
]
}
}
Facebook Reel
Schedule a Facebook Reel with video content.
{
"input": {
"username": "myfacebookpage",
"text": "Behind the scenes at our office! 🎬",
"mediaUrl": "https://example.com/office-tour.mp4",
"submissions": [
{
"postAt": "2025-12-01T15:30:00Z",
"mediaType": "REEL"
}
]
}
}
Facebook Story
Schedule a Facebook Story that will appear in your page's story highlights.
{
"input": {
"username": "myfacebookpage",
"mediaUrl": "https://picsum.photos/seed/socialmedia/900/1600",
"submissions": [
{
"postAt": "2025-12-01T15:30:00Z",
"mediaType": "STORY"
}
]
}
}
Facebook Post with First Comment
Schedule a Facebook post with an automatic first comment that will be posted after the main post is published.
{
"input": {
"username": "myfacebookpage",
"text": "What do you think about our latest product update?",
"firstComment": "Let us know in the comments below! We'd love to hear your feedback 💬",
"submissions": [
{
"postAt": "2025-12-01T15:30:00Z",
"mediaType": "POST"
}
]
}
}
Facebook Carousel Post
Schedule a Facebook post with multiple images in a carousel format.
{
"input": {
"username": "myfacebookpage",
"text": "Take a look at our product gallery! 📸",
"gallery": {
"galleryMediaSet": [
{
"order": 0,
"media": {
"id": "MEDIA_ID_1"
}
},
{
"order": 1,
"media": {
"id": "MEDIA_ID_2"
}
},
{
"order": 2,
"media": {
"id": "MEDIA_ID_3"
}
}
]
},
"submissions": [
{
"postAt": "2025-12-01T15:30:00Z",
"mediaType": "POST"
}
]
}
}
Manual Publishing
Schedule a Facebook post for manual publishing, which will require you to manually approve the post in your dashboard before it goes live.
{
"input": {
"username": "myfacebookpage",
"text": "This post requires manual approval before publishing.",
"submissions": [
{
"postAt": "2025-12-01T15:30:00Z",
"mediaType": "POST",
"publishingMethod": "MANUAL"
}
]
}
}
Response Types
Success Response
{
"data": {
"scheduleFacebookPost": {
"success": true,
"errors": [],
"post": {
"id": "123",
"socialAccount": {
"id": "456",
"username": "myfacebookpage"
},
"publishingStatus": "READY_TO_PUBLISH",
"text": "Hello Facebook! This is our first scheduled post 🎉",
"firstComment": null,
"gallery": null,
"submissions": [
{
"id": "789",
"postAt": "2025-12-01T15:30:00Z",
"mediaType": "POST",
"publishingMethod": "AUTOMATIC"
}
]
}
}
}
}
Error Response
{
"data": {
"scheduleFacebookPost": {
"success": false,
"errors": [
{
"field": "text",
"message": "Facebook posts cannot exceed 63,206 characters."
}
],
"post": null
}
}
}
Validation Rules
- Text Length: Maximum 63,206 characters for post text
- Media: Maximum 10 images/videos per carousel post
- Video: Maximum 4GB file size for regular posts
- Reels: 3-90 seconds duration, minimum 960x540 resolution, 9:16 aspect ratio recommended
- Stories: 3-60 seconds duration for video, 9:16 aspect ratio recommended
- Scheduling: Posts must be scheduled for future dates only
- Account Limits: Respects your plan's monthly post limits
Media Type Guidelines
POST
- Standard Facebook feed posts
- Supports text, images, videos, and carousels
- Best for general content sharing and engagement
REEL
- Short-form vertical videos
- 3-90 seconds duration
- Minimum 960x540 resolution
- 9:16 aspect ratio recommended for best results
- Ideal for creative, engaging video content
STORY
- Temporary content that appears in story highlights
- 3-60 seconds for video content
- 9:16 aspect ratio recommended
- Perfect for behind-the-scenes content and quick updates
Common Errors
The specified username is not connected to your Postpone account. Connect the Facebook page in your settings first.
Facebook posts have a maximum length of 63,206 characters. Consider shortening your text or breaking it into multiple posts.
The postAt
timestamp must be in the future. Check your timezone settings.
Facebook carousels can have no more than 10 images or videos. Reduce the number of media files in your gallery.
Facebook Reels require vertical videos (9:16 aspect ratio) with a duration between 3-90 seconds and minimum resolution of 960x540.
You've reached your plan's Facebook post limit for the scheduled month. Upgrade your plan or schedule for a different month.
The media file exceeds Facebook's size limits. Videos must be under 4GB, and images should be optimized for web use.