Creating Posts

The Posts Create endpoints let you asynchronously schedule, draft, or immediately publish content across one or more social networks. Submit a batch request, receive a job ID, then poll for completion.

Requirements

  • Authentication: Bearer API token

  • Scopes: posts, media

  • Headers:

    • Authorization: Bearer-API YOUR_API_KEY

    • Publer-Workspace-Id: YOUR_WORKSPACE_ID

Core Concepts

Asynchronous Workflow

Submit Request  →  Receive Job ID  →  Poll Job Status  →  Processing Complete
  1. Submit Request to /posts/schedule or /posts/schedule/publish

  2. Receive { "job_id": "…" }

  3. Poll /job_status/{job_id} until status: "completed"

  4. Handle results or errors

Common Request Structure

All create requests share this shape:

  • bulk: batch container

  • state: how to handle content (see Publishing Methods)

  • posts: array of post definitions

  • networks: per-network content config

  • accounts: target profiles with scheduling overrides

Endpoints

Endpoint

Purpose

Result

/api/v1/posts/schedule

Schedule posts for future publication including drafts

Scheduled post or draft

/api/v1/posts/schedule/publish

Publish content immediately

Published post

/api/v1/job_status/{job_id}

Check status of submitted job

Job status

Publishing Methods

The state parameter determines how your content will be handled:

State

Description

Additional Parameters

scheduled

Schedule for specific date/time

scheduled_at (ISO timestamp)

draft, draft_private, draft_public

Save as draft

None required

scheduled + auto: true

Use AI-powered auto-scheduling

range.start_date, range.end_date

scheduled + recycling

Reuse content multiple times

recycling.gap, recycling.expire_count

recurring

Create repeating posts

recurring.repeat, recurring.days_of_week

Content Types

The type parameter specifies the content format:

Type

Description

Required Properties

status

Text-only post

text

photo

Image post

text, media array

video

Video post

text, media array

link

Link post with preview

text, url

carousel

Multi-image post

text, media array

pdf

PDF document (LinkedIn)

text, media array

Network Providers

Supported platforms and their keys under networks: facebook, instagram, twitter, linkedin, pinterest, youtube, tiktok, google, wordpress_basic (self-hosted wordpress), wordpress_oauth (hosted on wordpress), telegram, mastodon, threads, bluesky.

Job Status

Poll your job with:

Response:

Common Patterns

Network-Specific Content

To customize content for specific platforms:

Media References

Media files must be pre-uploaded and referenced by ID, see Media Handling:

Schedule posts

post

Schedule one or more posts for publishing. Supports immediate publishing, scheduled publishing, auto-scheduling, recurring posts, and more.

Authorizations
AuthorizationstringRequired

API key authentication. Format: "Bearer-API YOUR_API_KEY"

Header parameters
Publer-Workspace-IdstringRequired

ID of the workspace to schedule posts in

Body
Responses
post
/posts/schedule

Create post

post

Creates a new social media post. Can be scheduled for immediate publishing, future publishing, or saved as a draft.

Authorizations
AuthorizationstringRequired

API key authentication. Format: "Bearer-API YOUR_API_KEY"

Header parameters
Publer-Workspace-IdstringRequired

ID of the workspace to create post in

Body
Responses
post
/posts/schedule/publish

Get job status

get

Check the status of an asynchronous job, including URL media uploads

Authorizations
AuthorizationstringRequired

API key authentication. Format: "Bearer-API YOUR_API_KEY"

Path parameters
job_idstringRequired

ID of the job to check

Header parameters
Publer-Workspace-IdstringRequired

ID of the workspace to retrieve posts from

Responses
get
/job_status/{job_id}

Next Steps

This overview covers the essential concepts for creating posts with the Publer API. For detailed information about specific features, refer to:

Last updated

Was this helpful?