Unpublished Posts
Once a post exists, you can move it, promote it, change its state, or delete it — without rebuilding the payload. These endpoints complement PUT /api/v1/posts/{id}, which only changes text and title.
Requirements
Authentication: Bearer API token
Scope:
postsHeaders:
Authorization: Bearer-API YOUR_API_KEYPubler-Workspace-Id: YOUR_WORKSPACE_ID
Reschedule Post
Move a scheduled post to a new time.
PUT /api/v1/posts/{id}/rescheduleReschedules a post to a new date and time. This may trigger approval workflows depending on workspace settings.
API key authentication. Format: "Bearer-API YOUR_API_KEY"
ID of the post to reschedule
ID of the workspace containing the post
New date and time for the post in ISO 8601 format
Post successfully rescheduled
Unique identifier for the post
Current state of the post
New scheduled date and time for the post
Additional details about the post
Unauthorized
Permission denied or missing required scope
Validation error
PUT /api/v1/posts/{id}/reschedule HTTP/1.1
Host: app.publer.com
Authorization: YOUR_API_KEY
Publer-Workspace-Id: text
Content-Type: application/json
Accept: */*
Content-Length: 43
{
"scheduled_at": "2026-01-01T00:00:00.000Z"
}{
"id": "text",
"state": "text",
"scheduled_at": "2026-01-01T00:00:00.000Z",
"details": {}
}Example:
Publish Post Now
Publish a draft, scheduled or failed post immediately.
Immediately publishes a scheduled/draft post to its associated social media account.
API key authentication. Format: "Bearer-API YOUR_API_KEY"
ID of the post to publish
ID of the workspace containing the post
Post publishing job started successfully
ID of the background job that will publish the post
Unauthorized
Permission denied or missing required scope
POST /api/v1/posts/{id}/publish_now HTTP/1.1
Host: app.publer.com
Authorization: YOUR_API_KEY
Publer-Workspace-Id: text
Accept: */*
{
"job_id": "text"
}Returns { "job_id": "..." }. Poll Job Status for the outcome. Retrying a failed post clears its upload checkpoints first, so the publish starts cleanly.
Change Post State
Promote a draft to scheduled, or move a post back to draft.
Changes the state of a post, for example promoting a draft to scheduled.
API key authentication. Format: "Bearer-API YOUR_API_KEY"
ID of the post
ID of the workspace containing the resource
Post updated
Unique identifier for the post
68176f0e8bee9dc9b0ce3427Post text content
Check out our new product launch!Current state of the post
scheduledType of post
photoID of the social account
63c675b54e299e9cf2b667eaScheduled publication time
2025-05-15T14:30:00.000+02:00Creation timestamp
2025-04-28T10:15:23.000+02:00Last update timestamp
2025-04-29T11:30:45.000+02:00Link to the published post on the social network
https://facebook.com/post/123456789Whether this post was auto-scheduled
Unauthorized
Unprocessable Entity - invalid state transition
PUT /api/v1/posts/{id}/state HTTP/1.1
Host: app.publer.com
Authorization: YOUR_API_KEY
Publer-Workspace-Id: text
Content-Type: application/json
Accept: */*
Content-Length: 25
{
"post": {
"state": "text"
}
}{
"id": "68176f0e8bee9dc9b0ce3427",
"text": "Check out our new product launch!",
"state": "scheduled",
"type": "photo",
"account_id": "63c675b54e299e9cf2b667ea",
"account": {
"id": "63c675b54e299e9cf2b667ea",
"type": "facebook_page",
"name": "My Business Page",
"picture": "https://graph.facebook.com/123456789/picture"
},
"user": {
"id": "5b1ec026db27977424e8599e",
"name": "ervintorra",
"picture": "https://publer-dev.s3.amazonaws.com/uploads/photos/thumb_mini_magick20250123-28707-otuw0w.png"
},
"scheduled_at": "2025-05-15T14:30:00.000+02:00",
"created_at": "2025-04-28T10:15:23.000+02:00",
"updated_at": "2025-04-29T11:30:45.000+02:00",
"post_link": "https://facebook.com/post/123456789",
"media": [
{
"id": "66fba4234e299e531f5dc100",
"type": "image",
"url": "https://publer-media.s3.amazonaws.com/uploads/images/product-launch.jpg",
"alt_text": "Product launch announcement image"
}
],
"link": {
"url": "https://example.com/product-launch",
"title": "New Product Launch",
"description": "Check out our latest product innovation",
"image_url": "https://example.com/images/product.jpg"
},
"labels": [
{
"id": "607c2f9a5e2c3d0789abcdef",
"name": "Product Launch",
"color": "#FF5733"
}
],
"auto": false,
"recycling": {
"solo": true,
"gap": 2,
"gap_freq": "Week",
"start_date": "2025-06-01",
"expire_count": 3
},
"recurring": {
"frequency": "Week",
"repeat_every": 1,
"weekdays": [
"Monday"
],
"start_date": "2025-06-02T09:00:00.000Z"
}
}Example:
Delete Post
Delete one post.
Notes
A post that does not exist returns 422, not 404. A post in another workspace returns 403.
Posts already in the publishing queue cannot be rescheduled, published, or edited — wait for the queue to drain.
Posts published under an approval workflow cannot be deleted by editors.
Related Resources
Get Post — Read a single post back
Updating Posts — Change text and title
Deleting Posts — Bulk deletion
Last updated
Was this helpful?

