# 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

```markdown
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:

```json
{
  "bulk": {
    "state": "[publishing_method]",
    "posts": [
      {
        "networks": {
          "[network_provider]": {
            "type": "[content_type]",
            "text": "Post content",
            // other network-specific fields
          }
        },
        "accounts": [
          { 
            "id": "ACCOUNT_ID"
            // Additional parameters based on publishing method
            }
        ],
        // optional: recycling, recurring, labels, etc.
      }
    ]
  }
}
```

* **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

<table data-header-hidden><thead><tr><th width="297.33209228515625"></th><th width="251.6776123046875"></th><th></th></tr></thead><tbody><tr><td>Endpoint</td><td>Purpose</td><td>Result</td></tr><tr><td><code>/api/v1/posts/schedule</code></td><td>Schedule posts for future publication including drafts</td><td>Scheduled post or draft</td></tr><tr><td><code>/api/v1/posts/schedule/publish</code></td><td>Publish content immediately</td><td>Published post</td></tr><tr><td><code>/api/v1/job_status/{job_id}</code></td><td>Check status of submitted job</td><td>Job status</td></tr></tbody></table>

### Publishing Methods

The `state` parameter determines how your content will be handled:

<table data-header-hidden><thead><tr><th></th><th width="254.7000732421875"></th><th></th></tr></thead><tbody><tr><td>State</td><td>Description</td><td>Additional Parameters</td></tr><tr><td><code>scheduled</code></td><td>Schedule for specific date/time</td><td><code>scheduled_at</code> (ISO timestamp)</td></tr><tr><td><code>draft</code>, <code>draft_private</code>, <code>draft_public</code></td><td>Save as draft</td><td>None required</td></tr><tr><td><code>scheduled</code> + <code>auto: true</code></td><td>Use AI-powered auto-scheduling</td><td><code>range.start_date</code>, <code>range.end_date</code></td></tr><tr><td><code>scheduled</code> + <code>recycling</code></td><td>Reuse content multiple times</td><td><code>recycling.gap</code>, <code>recycling.expire_count</code></td></tr><tr><td><code>recurring</code></td><td>Create repeating posts</td><td><code>recurring.repeat</code>, <code>recurring.days_of_week</code></td></tr></tbody></table>

### 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:

```sh
GET /api/v1/job_status/{job_id}
```

**Response**:

```json
{
  "status": "working|completed|failed",
  "payload": { /* results or errors */ }
}
```

### Common Patterns

#### Network-Specific Content

To customize content for specific platforms:

```json
{
"networks": {
  "facebook": {
    "type": "status",
    "text": "Facebook simple status update"
  },
  "twitter": {
    "type": "status", 
    "text": "Twitter/X specific content with #hashtags"
  },
  "linkedin": {
    "type": "status",
    "text": "Longer, more professional content for LinkedIn audience"
  }
},
"accounts": [
  {
    "id": "66db83154e299efa19a2d8eb",
    "scheduled_at": "2025-05-15T14:30:00Z"
  },
  {
    "id": "66e973ac4e299e531f5dc034",
    "scheduled_at": "2025-05-15T15:00:00Z"
  },
  {
    "id": "66e973ac4e299e531f4hc034",
    "scheduled_at": "2025-05-15T15:00:00Z"
  }
]
}
```

#### Media References

Media files must be pre-uploaded and referenced by ID, see [Media Handling](https://publer.com/docs/posting/create-posts/media-handling):

```json
"media": [
  {
    "id": "66fba4234e299e531f5dc100",
    "type": "image",
    "alt_text": "Optional accessibility description"
  }
]
```

## Schedule posts

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

```json
{"openapi":"3.1.1","info":{"title":"Publer API","version":"1.0.0"},"tags":[{"name":"Posts","description":"Endpoints for managing social media posts"}],"servers":[{"url":"https://app.publer.com/api/v1"}],"security":[{"BearerApiAuth":[]}],"components":{"securitySchemes":{"BearerApiAuth":{"type":"apiKey","name":"Authorization","in":"header","description":"API key authentication. Format: \"Bearer-API YOUR_API_KEY\""}},"schemas":{"JobResponse":{"type":"object","properties":{"success":{"type":"boolean","description":"Whether the job was created successfully"},"data":{"type":"object","properties":{"job_id":{"type":"string","description":"ID of the created job"}}}}},"ErrorResponse":{"type":"object","properties":{"errors":{"type":"array","description":"List of error messages","items":{"type":"string"}}}},"401ErrorResponseWithWorkspace":{"type":"object","properties":{"errors":{"type":"array","description":"List of error messages","items":{"type":"string"}}}},"403ErrorResponse":{"type":"object","properties":{"errors":{"type":"array","description":"List of error messages","items":{"type":"string"}}}},"BulkPostsRequest":{"type":"object","required":["bulk"],"properties":{"bulk":{"type":"object","required":["state","posts"],"properties":{"state":{"type":"string","description":"State of the posts","enum":["scheduled","draft","draft_private","draft_public","recurring"]},"posts":{"type":"array","description":"List of posts to create","items":{"type":"object","required":["networks"],"properties":{"networks":{"type":"object","description":"Network-specific content for the post","properties":{"facebook":{"$ref":"#/components/schemas/FacebookNetworkContent"},"instagram":{"$ref":"#/components/schemas/InstagramNetworkContent"},"twitter":{"$ref":"#/components/schemas/TwitterNetworkContent"},"linkedin":{"$ref":"#/components/schemas/LinkedInNetworkContent"},"pinterest":{"$ref":"#/components/schemas/PinterestNetworkContent"},"google":{"$ref":"#/components/schemas/GoogleBusinessNetworkContent"},"youtube":{"$ref":"#/components/schemas/YouTubeNetworkContent"},"tiktok":{"$ref":"#/components/schemas/TikTokNetworkContent"},"wordpress_oauth":{"$ref":"#/components/schemas/WordPressNetworkContent"},"wordpress_basic":{"$ref":"#/components/schemas/WordPressNetworkContent"},"telegram":{"$ref":"#/components/schemas/TelegramNetworkContent"},"mastodon":{"$ref":"#/components/schemas/MastodonNetworkContent"},"threads":{"$ref":"#/components/schemas/ThreadsNetworkContent"},"bluesky":{"$ref":"#/components/schemas/BlueskyNetworkContent"}}},"accounts":{"type":"array","description":"List of accounts to post to","items":{"type":"object","required":["id"],"properties":{"id":{"type":"string","description":"Account identifier"},"scheduled_at":{"type":"string","description":"Time to schedule the post","format":"date-time"},"labels":{"type":"array","description":"List of labels for the post","items":{"type":"string"}},"previewed_media":{"type":"boolean","description":"Whether media has been previewed"},"share":{"type":"object","description":"Auto-share settings for this post","properties":{"text":{"type":"string","description":"Custom text for the shared post. If not provided, the original post text will be used."},"account_ids":{"type":"array","description":"Array of account IDs to share the post with","items":{"type":"string"}},"after":{"type":"object","description":"When to share the post after the original is published","properties":{"duration":{"type":"number","description":"The duration value"},"unit":{"type":"string","description":"The time unit (Minute, Hour, Day, Week)","enum":["Minute","Hour","Day","Week"]}}},"delay":{"type":"object","description":"Delay between sharing to multiple accounts","properties":{"duration":{"type":"number","description":"The duration value"},"unit":{"type":"string","description":"The time unit (Minute, Hour, Day, Week)","enum":["Minute","Hour","Day","Week"]}}}}},"comments":{"type":"array","description":"Follow-up comments to be posted after the original post","items":{"type":"object","properties":{"text":{"type":"string","description":"The text content of the comment"},"language":{"type":"string","description":"The language of the comment"},"delay":{"type":"object","description":"When to post the comment after the original post is published","properties":{"duration":{"type":"number","description":"The duration value"},"unit":{"type":"string","description":"The time unit (Minute, Hour, Day, Week)","enum":["Minute","Hour","Day","Week"]}}},"media":{"type":"object","description":"Media to include with the comment","properties":{"type":{"type":"string","description":"Type of media (photo, video, gif)","enum":["photo","video","gif"]},"path":{"type":"string","description":"Path to the media file"},"caption":{"type":"string","description":"Caption for the media"},"thumbnail":{"type":"string","description":"Thumbnail for video media"},"thumbnails":{"type":"object","description":"Different sizes of thumbnails for video media","properties":{"real":{"type":"string","description":"Full-size thumbnail"},"small":{"type":"string","description":"Small thumbnail"}}}}}}}},"delete":{"type":"object","description":"Auto-delete settings for this post","properties":{"hide":{"type":"boolean","description":"If true, the post will be hidden instead of deleted (platform-dependent)"},"delay":{"type":"object","description":"When to delete/hide the post after it's published","properties":{"duration":{"type":"number","description":"The duration value"},"unit":{"type":"string","description":"The time unit (Minute, Hour, Day, Week)","enum":["Minute","Hour","Day","Week"]}}}}}}}},"recycling":{"type":"object","description":"Recycling configuration for the post","properties":{"solo":{"type":"boolean","description":"Whether to recycle as a solo post"},"gap":{"type":"integer","description":"Gap between recycles"},"gap_freq":{"type":"string","description":"Frequency of the gap","enum":["Day","Week","Month"]},"start_date":{"type":"string","description":"Start date for recycling","format":"date"},"expire_count":{"type":"string","description":"Number of times to recycle"},"expire_date":{"type":"string","description":"Date when recycling expires","format":"date"}}},"recurring":{"type":"object","description":"Recurring configuration for the post","required":["start_date","end_date","repeat","repeat_rate"],"properties":{"start_date":{"type":"string","description":"Start date for recurring posts","format":"date-time"},"end_date":{"type":"string","description":"End date for recurring posts","format":"date-time"},"repeat":{"type":"string","description":"Recurrence pattern","enum":["daily","weekly","monthly","yearly"]},"days_of_week":{"type":"array","description":"Days of the week (0=Monday, 6=Sunday)","items":{"type":"integer","minimum":0,"maximum":6}},"repeat_rate":{"type":"integer","description":"Rate of repetition"}}},"share_next":{"type":"boolean","description":"Whether to share the post next in queue"},"range":{"type":"object","description":"Time range for auto-scheduled posts","properties":{"start_date":{"type":"string","description":"Start date of the range","format":"date-time"},"end_date":{"type":["string","null"],"description":"End date of the range","format":"date-time"}}},"auto":{"type":"boolean","description":"Whether to use auto scheduling"}}}}}}}},"FacebookNetworkContent":{"type":"object","required":["type"],"properties":{"type":{"type":"string","description":"Content type for Facebook","enum":["status","photo","video","link","carousel","story","reel","gif"]},"text":{"type":"string","description":"Post text content"},"title":{"type":"string","description":"Video title (for videos, truncated to 255 chars)"},"excerpt":{"type":"string","description":"Post excerpt"},"url":{"type":"string","description":"Link URL for link posts"},"post_id":{"type":"string","description":"Facebook post ID after publishing"},"post_link":{"type":"string","description":"Facebook post URL after publishing"},"question":{"type":"string","description":"Poll question"},"duration":{"type":"integer","description":"Poll duration in hours"},"details":{"type":"object","description":"Details for the post","properties":{"type":{"type":"string","description":"Network-specific content type","enum":["reel","story"]},"text_format_preset_id":{"type":"string","description":"Background color for the post","enum":["106018623298955","365653833956649","618093735238824","191761991491375","2193627793985415","200521337465306","1821844087883360","177465482945164","160419724814650","248623902401250","240401816771706","1868855943417360","255989551804163","1792915444087912","1654916007940525","1679248482160767","518948401838663","423339708139719","204187940028597","621731364695726","518596398537417","134273813910336","217321755510854","323371698179784","901751159967576","552118025129095","263789377694911","606643333067842","458988134561491","548109108916650","175493843120364","338976169966519","206513879997925","168373304017982","1271157196337260","174496469882866","862667370603267","127541261450947","218067308976029","688479024672716","238863426886624","301029513638534","154977255088164","1941912679424590","396343990807392","143093446467972","161409924510923","145893972683590","217761075370932","931584293685988","148862695775447","100114277230063","558836317844129","172497526576609","433967226963128","197865920864520","643122496026756","762009070855346","228164237768720","146487026137131","221828835275596","1903718606535395","1881421442117417","249307305544279","1777259169190672","303063890126415","122708641613922","319468561816672","121945541697934","288211338285858","446330032368780","219266485227663","1289741387813798","1365883126823705"]},"feed":{"type":"boolean","description":"Whether to share the reel to feed"},"reminder":{"type":"boolean","description":"Use reminder publishing instead of API"},"audio":{"type":"string","description":"Audio name for the reel"},"start":{"type":"string","description":"Start time for events"},"end":{"type":"string","description":"End time for events"},"coupon":{"type":"string","description":"Coupon code"},"terms":{"type":"string","description":"Terms and conditions"},"privacy":{"type":"string","description":"Privacy setting"},"comment":{"type":"boolean","description":"Allow comments"},"duet":{"type":"boolean","description":"Allow duets"},"stitch":{"type":"boolean","description":"Allow stitch"},"promotional":{"type":"boolean","description":"Mark as promotional content"},"paid":{"type":"boolean","description":"Mark as paid partnership"},"language":{"type":"string","description":"Content language"},"auto_add_music":{"type":"boolean","description":"Auto add music"},"sponsor":{"type":"object","description":"Sponsor information for branded content","properties":{"id":{"type":"string","description":"Sponsor Facebook ID"},"name":{"type":"string","description":"Sponsor name"},"verified":{"type":"boolean","description":"Whether sponsor is verified"},"boost":{"type":"boolean","description":"Whether post can be boosted"}}},"community":{"type":"object","description":"Community information","properties":{"id":{"type":"string","description":"Community ID"},"name":{"type":"string","description":"Community name"}}}}},"media":{"type":"array","description":"Media items to include","items":{"$ref":"#/components/schemas/MediaItem"}},"link":{"$ref":"#/components/schemas/LinkDetails"},"sublinks":{"type":"array","description":"Facebook carousel sublinks","items":{"$ref":"#/components/schemas/FacebookSublink"}},"tags":{"type":"array","description":"Post tags","items":{"type":"string"}},"categories":{"type":"array","description":"Post categories","items":{"type":"string"}},"featured_media":{"type":"object","description":"Featured media information","properties":{"path":{"type":"string","description":"Path to featured media"}}},"options":{"type":"array","description":"Poll options","items":{"type":"string"}}}},"MediaItem":{"type":"object","properties":{"id":{"type":"string","description":"Media ID (from upload)"},"type":{"type":"string","enum":["image","video","document","gif"]},"alt_text":{"type":"string","description":"Accessibility description for images"}}},"LinkDetails":{"type":"object","description":"Link details for link posts","properties":{"url":{"type":"string","description":"URL to link to"},"title":{"type":"string","description":"Title of the link"},"description":{"type":"string","description":"Description of the link"},"image_id":{"type":"string","description":"ID of the image to use for link preview"}}},"FacebookSublink":{"type":"object","description":"Configuration for a Facebook link post sublink preview","properties":{"url":{"type":"string","description":"URL of the link"},"provider_display":{"type":"string","description":"Display name of the link provider (typically domain name)"},"original_description":{"type":"string","description":"Original meta description of the linked webpage"},"original_title":{"type":"string","description":"Original meta title of the linked webpage"},"original_images":{"type":"array","description":"Array of original images found on the linked webpage","items":{"type":"string","format":"uri"}},"original_url":{"type":"string","description":"Original URL without protocol"},"description":{"type":"string","description":"Description to use in the link preview (can be customized)"},"title":{"type":"string","description":"Title to use in the link preview (can be customized)"},"images":{"type":"array","description":"Images to use in the link preview (can be customized)","items":{"type":"string","format":"uri"}},"default_image":{"type":"integer","description":"Index of the default image to display in the preview (0-based)","minimum":0},"caption":{"type":"string","description":"Additional caption for the link"},"call_to_action":{"type":"string","description":"Call-to-action button type for the link preview","enum":["NO_BUTTON","SHOP_NOW","BOOK_TRAVEL","LEARN_MORE","SIGN_UP","DOWNLOAD","GET_OFFER","GET_DIRECTIONS","BUY_NOW","CALL_NOW","APPLY_NOW","MESSAGE_PAGE","SEND_MESSAGE","CONTACT_US","SUBSCRIBE","USE_APP","PLAY_GAME","WATCH_VIDEO","WATCH_MORE","OPEN_LINK"]},"phone_number":{"type":"string","description":"Phone number to use with CALL_NOW call-to-action button"},"customized":{"type":"boolean","description":"Whether this sublink has been customized from the original link preview"}},"required":["url","title","description","images"]},"InstagramNetworkContent":{"type":"object","required":["type"],"properties":{"type":{"type":"string","description":"Content type for Instagram","enum":["photo","video","carousel","story","reel"]},"text":{"type":"string","description":"Caption text"},"media":{"type":"array","description":"Media items to include","items":{"$ref":"#/components/schemas/MediaItem"}},"carouselOptions":{"$ref":"#/components/schemas/CarouselOptions"},"firstComment":{"type":"string","description":"Text for first comment (often used for hashtags)"},"details":{"type":"object","description":"Details for the post","properties":{"type":{"type":"string","description":"Network-specific content type","enum":["reel","story"]},"// Reel-specific properties":{},"audio":{"type":"string","description":"Audio name for the reel"},"feed":{"type":"boolean","description":"Whether to share the reel to feed"}}}}},"CarouselOptions":{"type":"object","description":"Carousel-specific options","properties":{"slides":{"type":"array","description":"Individual slide configurations","items":{"type":"object","properties":{"media_id":{"type":"string","description":"Media ID for this slide"},"alt_text":{"type":"string","description":"Accessibility description for this slide"},"caption":{"type":"string","description":"Caption for this specific slide"}}}}}},"TwitterNetworkContent":{"type":"object","required":["type"],"properties":{"type":{"type":"string","description":"Content type for Twitter/X","enum":["status","photo","video","link","gif","poll"]},"text":{"type":"string","description":"Tweet text"},"media":{"type":"array","description":"Media items to include","items":{"$ref":"#/components/schemas/MediaItem"}},"link":{"$ref":"#/components/schemas/LinkDetails"},"// Poll-specific properties":{},"options":{"type":"array","description":"Options for poll posts (required when type='poll')","items":{"type":"string"}},"duration":{"type":"integer","description":"Duration of the poll in days (required when type='poll')"},"// End of Poll-specific properties":{},"replySettings":{"type":"string","description":"Who can reply to this tweet","enum":["everyone","mentionedUsers","following"]},"details":{"type":"object","description":"Twitter-specific publishing details","properties":{"type":{"type":"string","description":"Specific tweet type for long posts","enum":["long_post"]},"community":{"type":"object","description":"Community to post in","properties":{"id":{"type":"string","description":"Community ID"},"name":{"type":"string","description":"Community name"}}}}},"location":{"type":"object","description":"Geographic location to tag","properties":{"id":{"type":"string","description":"Place ID for geo tagging"},"name":{"type":"string","description":"Location name"}}}}},"LinkedInNetworkContent":{"type":"object","required":["type"],"properties":{"type":{"type":"string","description":"Content type for LinkedIn","enum":["status","photo","video","link","document","poll","gif"]},"text":{"type":"string","description":"Post text content"},"media":{"type":"array","description":"Media items to include","items":{"$ref":"#/components/schemas/MediaItem"}},"link":{"$ref":"#/components/schemas/LinkDetails"},"document":{"type":"object","description":"Document details","properties":{"id":{"type":"string","description":"Document ID (from upload)"},"title":{"type":"string","description":"Document title"}}},"// Poll-specific properties":{},"options":{"type":"array","description":"Options for poll posts (required when type='poll')","items":{"type":"string"}},"duration":{"type":"integer","description":"Duration of the poll in days (required when type='poll')"},"question":{"type":"string","description":"Poll question (required for LinkedIn when type='poll')"},"details":{"type":"object","description":"Details for the post","properties":{"type":{"type":"string","description":"PDF document type","enum":["document"]}}}}},"PinterestNetworkContent":{"type":"object","required":["type"],"properties":{"type":{"type":"string","description":"Content type for Pinterest","enum":["photo","video","carousel"]},"text":{"type":"string","description":"Pin description"},"media":{"type":"array","description":"Media items to include","items":{"$ref":"#/components/schemas/MediaItem"}},"link":{"$ref":"#/components/schemas/LinkDetails"},"boardId":{"type":"string","description":"Pinterest board ID to pin to"},"title":{"type":"string","description":"Title of the pin"}}},"GoogleBusinessNetworkContent":{"type":"object","required":["type"],"properties":{"type":{"type":"string","description":"Content type for Google Business","enum":["status","photo","event","offer"]},"text":{"type":"string","description":"Post text content"},"title":{"type":"string","description":"Post title"},"url":{"type":"string","description":"URL to link to"},"media":{"type":"array","description":"Media items to include","items":{"$ref":"#/components/schemas/MediaItem"}},"details":{"type":"object","description":"Details for the post","properties":{"type":{"type":"string","description":"Content type","enum":["photo","event"]},"title":{"type":"string","description":"Event title"},"start":{"type":"string","description":"Event start time","format":"date-time"},"end":{"type":"string","description":"Event end time","format":"date-time"},"// Offer-specific properties":{},"coupon":{"type":"string","description":"Coupon code for the offer"},"terms":{"type":"string","description":"Terms and conditions Url for the offer"},"// End of Offer-specific properties":{}}}}},"YouTubeNetworkContent":{"type":"object","required":["type"],"properties":{"type":{"type":"string","description":"Content type for YouTube","enum":["video","short"]},"media":{"type":"array","description":"Video to upload","items":{"$ref":"#/components/schemas/MediaItem"}},"title":{"type":"string","description":"Video title"},"description":{"type":"string","description":"Video description"},"tags":{"type":"array","description":"Video tags","items":{"type":"string"}},"category":{"type":"string","description":"Video category ID"},"privacy":{"type":"string","description":"Privacy setting","enum":["public","unlisted","private"]},"isShort":{"type":"boolean","description":"Whether this is a YouTube Short"},"details":{"type":"object","description":"Details for the post","properties":{"type":{"type":"string","description":"Network-specific content type","enum":["short"]},"// Youtube Short-specific properties":{},"privacy":{"type":"string","description":"Privacy setting for the short","enum":["public","unlisted","private"]}}}}},"TikTokNetworkContent":{"type":"object","required":["type"],"properties":{"type":{"type":"string","description":"Content type for TikTok","enum":["video","photo","carousel"]},"text":{"type":"string","description":"Caption text"},"title":{"type":"string","description":"Video title (for video type)"},"media":{"type":"array","description":"Media items to include","items":{"$ref":"#/components/schemas/MediaItem"}},"carouselOptions":{"$ref":"#/components/schemas/CarouselOptions"},"soundId":{"type":"string","description":"TikTok sound ID to use"},"duetWith":{"type":"string","description":"Video ID to duet with"},"details":{"type":"object","description":"TikTok-specific publishing details","properties":{"privacy":{"type":"string","description":"Privacy level for the post","enum":["PUBLIC_TO_EVERYONE","MUTUAL_FOLLOW_FRIENDS","FOLLOWER_OF_CREATOR","SELF_ONLY"]},"comment":{"type":"boolean","description":"Enable comments (true = enable, false = disable)"},"duet":{"type":"boolean","description":"Enable duets"},"stitch":{"type":"boolean","description":"Enable stitch"},"promotional":{"type":"boolean","description":"Mark as branded/promotional content"},"paid":{"type":"boolean","description":"Mark as paid partnership"},"auto_add_music":{"type":"boolean","description":"Auto add music to photo posts"},"reminder":{"type":"boolean","description":"Use reminder publishing instead of direct API"}}}}},"WordPressNetworkContent":{"type":"object","required":["type","content"],"properties":{"type":{"type":"string","description":"Content type for WordPress","enum":["article"]},"text":{"type":"string","description":"Post text content"},"excerpt":{"type":"string","description":"Short excerpt of the article"},"title":{"type":"string","description":"Article title"},"url":{"type":"string","description":"Article URL slug"},"post_link":{"type":["string","null"],"description":"Link to published post"},"source":{"type":"string","description":"Source of the post","enum":["schedule","publish","draft"]},"state":{"type":"string","description":"Post state","enum":["draft","scheduled","published"]},"content":{"type":"array","description":"Structured content blocks","items":{"type":"object","properties":{"id":{"type":"string","description":"Block unique identifier"},"type":{"type":"string","description":"Block type","enum":["paragraph","header","list","media","table","delimiter","code","html","quote"]},"data":{"type":"object","description":"Block-specific data","properties":{"text":{"type":"string","description":"Text content for paragraph, header, quote blocks"},"level":{"type":"integer","description":"Header level (1-6)"},"style":{"type":"string","description":"List style","enum":["ordered","unordered"]},"items":{"type":"array","description":"List items","items":{"type":"string"}},"url":{"type":"string","description":"Media URL"},"type":{"type":"string","description":"Media type","enum":["photo","video"]},"stretched":{"type":"boolean","description":"Whether media is stretched"},"withHeadings":{"type":"boolean","description":"Whether table has headings"},"content":{"type":"array","description":"Table content","items":{"type":"string"}},"code":{"type":"string","description":"Code content"},"html":{"type":"string","description":"HTML content"},"caption":{"type":"string","description":"Quote caption/author"}}}},"required":["id","type","data"]}},"categories":{"type":"array","items":{"type":"string"},"description":"Article category IDs"},"tags":{"type":"array","items":{"type":"string"},"description":"Article tag IDs"},"featured_media":{"type":"object","description":"Featured media information","properties":{"path":{"type":"string","description":"Path to featured media"}}}}},"TelegramNetworkContent":{"type":"object","required":["type"],"properties":{"type":{"type":"string","description":"Content type for Telegram","enum":["status","photo","video","link","gif"]},"text":{"type":"string","description":"Message text"},"media":{"type":"array","description":"Media items to include","items":{"$ref":"#/components/schemas/MediaItem"}},"link":{"$ref":"#/components/schemas/LinkDetails"},"parseMode":{"type":"string","description":"Message parse mode","enum":["Markdown","HTML"]},"disableNotification":{"type":"boolean","description":"Whether to send the message silently"},"disableWebPagePreview":{"type":"boolean","description":"Whether to disable link previews"}}},"MastodonNetworkContent":{"type":"object","required":["type"],"properties":{"type":{"type":"string","description":"Content type for Mastodon","enum":["status","photo","video","link","gif","poll"]},"text":{"type":"string","description":"Post text content"},"media":{"type":"array","description":"Media items to include","items":{"$ref":"#/components/schemas/MediaItem"}},"link":{"$ref":"#/components/schemas/LinkDetails"},"// Poll-specific properties":{},"options":{"type":"array","description":"Options for poll posts (required when type='poll')","items":{"type":"string"}},"duration":{"type":"integer","description":"Duration of the poll in days (required when type='poll')"},"// End of Poll-specific properties":{},"visibility":{"type":"string","description":"Post visibility","enum":["public","unlisted","private","direct"]},"sensitive":{"type":"boolean","description":"Mark media as sensitive"},"spoilerText":{"type":"string","description":"Content warning text"}}},"ThreadsNetworkContent":{"type":"object","required":["type"],"properties":{"type":{"type":"string","description":"Content type for Threads","enum":["status","photo","video","link"]},"text":{"type":"string","description":"Post text content"},"media":{"type":"array","description":"Media items to include","items":{"$ref":"#/components/schemas/MediaItem"}},"link":{"$ref":"#/components/schemas/LinkDetails"},"replyTo":{"type":"string","description":"ID of the thread to reply to"}}},"BlueskyNetworkContent":{"type":"object","required":["type"],"properties":{"type":{"type":"string","description":"Content type for Bluesky","enum":["status","photo","video","link"]},"text":{"type":"string","description":"Post text content"},"media":{"type":"array","description":"Media items to include","items":{"$ref":"#/components/schemas/MediaItem"}},"link":{"$ref":"#/components/schemas/LinkDetails"},"replyTo":{"type":"string","description":"ID of the post to reply to"},"labels":{"type":"array","description":"Self-labeled content warnings or categories","items":{"type":"string"}}}}}},"paths":{"/posts/schedule":{"post":{"summary":"Schedule posts","description":"Schedule one or more posts for publishing. Supports immediate publishing, scheduled publishing, auto-scheduling, recurring posts, and more.","operationId":"schedulePosts","tags":["Posts"],"parameters":[{"schema":{"type":"string"},"name":"Publer-Workspace-Id","in":"header","description":"ID of the workspace to schedule posts in","required":true}],"responses":{"200":{"description":"Posts scheduled successfully","content":{"application/json":{"schema":{"$ref":"#/components/schemas/JobResponse"}}}},"400":{"description":"Invalid scheduling parameters","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/401ErrorResponseWithWorkspace"}}}},"403":{"description":"Permission denied or missing required scope","content":{"application/json":{"schema":{"$ref":"#/components/schemas/403ErrorResponse"}}}}},"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/BulkPostsRequest"}}},"description":"Post scheduling parameters","required":true}}}}}
```

## Create post

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

```json
{"openapi":"3.1.1","info":{"title":"Publer API","version":"1.0.0"},"tags":[{"name":"Posts","description":"Endpoints for managing social media posts"}],"servers":[{"url":"https://app.publer.com/api/v1"}],"security":[{"BearerApiAuth":[]}],"components":{"securitySchemes":{"BearerApiAuth":{"type":"apiKey","name":"Authorization","in":"header","description":"API key authentication. Format: \"Bearer-API YOUR_API_KEY\""}},"schemas":{"JobResponse":{"type":"object","properties":{"success":{"type":"boolean","description":"Whether the job was created successfully"},"data":{"type":"object","properties":{"job_id":{"type":"string","description":"ID of the created job"}}}}},"ErrorResponse":{"type":"object","properties":{"errors":{"type":"array","description":"List of error messages","items":{"type":"string"}}}},"401ErrorResponseWithWorkspace":{"type":"object","properties":{"errors":{"type":"array","description":"List of error messages","items":{"type":"string"}}}},"403ErrorResponse":{"type":"object","properties":{"errors":{"type":"array","description":"List of error messages","items":{"type":"string"}}}},"BulkPostsRequest":{"type":"object","required":["bulk"],"properties":{"bulk":{"type":"object","required":["state","posts"],"properties":{"state":{"type":"string","description":"State of the posts","enum":["scheduled","draft","draft_private","draft_public","recurring"]},"posts":{"type":"array","description":"List of posts to create","items":{"type":"object","required":["networks"],"properties":{"networks":{"type":"object","description":"Network-specific content for the post","properties":{"facebook":{"$ref":"#/components/schemas/FacebookNetworkContent"},"instagram":{"$ref":"#/components/schemas/InstagramNetworkContent"},"twitter":{"$ref":"#/components/schemas/TwitterNetworkContent"},"linkedin":{"$ref":"#/components/schemas/LinkedInNetworkContent"},"pinterest":{"$ref":"#/components/schemas/PinterestNetworkContent"},"google":{"$ref":"#/components/schemas/GoogleBusinessNetworkContent"},"youtube":{"$ref":"#/components/schemas/YouTubeNetworkContent"},"tiktok":{"$ref":"#/components/schemas/TikTokNetworkContent"},"wordpress_oauth":{"$ref":"#/components/schemas/WordPressNetworkContent"},"wordpress_basic":{"$ref":"#/components/schemas/WordPressNetworkContent"},"telegram":{"$ref":"#/components/schemas/TelegramNetworkContent"},"mastodon":{"$ref":"#/components/schemas/MastodonNetworkContent"},"threads":{"$ref":"#/components/schemas/ThreadsNetworkContent"},"bluesky":{"$ref":"#/components/schemas/BlueskyNetworkContent"}}},"accounts":{"type":"array","description":"List of accounts to post to","items":{"type":"object","required":["id"],"properties":{"id":{"type":"string","description":"Account identifier"},"scheduled_at":{"type":"string","description":"Time to schedule the post","format":"date-time"},"labels":{"type":"array","description":"List of labels for the post","items":{"type":"string"}},"previewed_media":{"type":"boolean","description":"Whether media has been previewed"},"share":{"type":"object","description":"Auto-share settings for this post","properties":{"text":{"type":"string","description":"Custom text for the shared post. If not provided, the original post text will be used."},"account_ids":{"type":"array","description":"Array of account IDs to share the post with","items":{"type":"string"}},"after":{"type":"object","description":"When to share the post after the original is published","properties":{"duration":{"type":"number","description":"The duration value"},"unit":{"type":"string","description":"The time unit (Minute, Hour, Day, Week)","enum":["Minute","Hour","Day","Week"]}}},"delay":{"type":"object","description":"Delay between sharing to multiple accounts","properties":{"duration":{"type":"number","description":"The duration value"},"unit":{"type":"string","description":"The time unit (Minute, Hour, Day, Week)","enum":["Minute","Hour","Day","Week"]}}}}},"comments":{"type":"array","description":"Follow-up comments to be posted after the original post","items":{"type":"object","properties":{"text":{"type":"string","description":"The text content of the comment"},"language":{"type":"string","description":"The language of the comment"},"delay":{"type":"object","description":"When to post the comment after the original post is published","properties":{"duration":{"type":"number","description":"The duration value"},"unit":{"type":"string","description":"The time unit (Minute, Hour, Day, Week)","enum":["Minute","Hour","Day","Week"]}}},"media":{"type":"object","description":"Media to include with the comment","properties":{"type":{"type":"string","description":"Type of media (photo, video, gif)","enum":["photo","video","gif"]},"path":{"type":"string","description":"Path to the media file"},"caption":{"type":"string","description":"Caption for the media"},"thumbnail":{"type":"string","description":"Thumbnail for video media"},"thumbnails":{"type":"object","description":"Different sizes of thumbnails for video media","properties":{"real":{"type":"string","description":"Full-size thumbnail"},"small":{"type":"string","description":"Small thumbnail"}}}}}}}},"delete":{"type":"object","description":"Auto-delete settings for this post","properties":{"hide":{"type":"boolean","description":"If true, the post will be hidden instead of deleted (platform-dependent)"},"delay":{"type":"object","description":"When to delete/hide the post after it's published","properties":{"duration":{"type":"number","description":"The duration value"},"unit":{"type":"string","description":"The time unit (Minute, Hour, Day, Week)","enum":["Minute","Hour","Day","Week"]}}}}}}}},"recycling":{"type":"object","description":"Recycling configuration for the post","properties":{"solo":{"type":"boolean","description":"Whether to recycle as a solo post"},"gap":{"type":"integer","description":"Gap between recycles"},"gap_freq":{"type":"string","description":"Frequency of the gap","enum":["Day","Week","Month"]},"start_date":{"type":"string","description":"Start date for recycling","format":"date"},"expire_count":{"type":"string","description":"Number of times to recycle"},"expire_date":{"type":"string","description":"Date when recycling expires","format":"date"}}},"recurring":{"type":"object","description":"Recurring configuration for the post","required":["start_date","end_date","repeat","repeat_rate"],"properties":{"start_date":{"type":"string","description":"Start date for recurring posts","format":"date-time"},"end_date":{"type":"string","description":"End date for recurring posts","format":"date-time"},"repeat":{"type":"string","description":"Recurrence pattern","enum":["daily","weekly","monthly","yearly"]},"days_of_week":{"type":"array","description":"Days of the week (0=Monday, 6=Sunday)","items":{"type":"integer","minimum":0,"maximum":6}},"repeat_rate":{"type":"integer","description":"Rate of repetition"}}},"share_next":{"type":"boolean","description":"Whether to share the post next in queue"},"range":{"type":"object","description":"Time range for auto-scheduled posts","properties":{"start_date":{"type":"string","description":"Start date of the range","format":"date-time"},"end_date":{"type":["string","null"],"description":"End date of the range","format":"date-time"}}},"auto":{"type":"boolean","description":"Whether to use auto scheduling"}}}}}}}},"FacebookNetworkContent":{"type":"object","required":["type"],"properties":{"type":{"type":"string","description":"Content type for Facebook","enum":["status","photo","video","link","carousel","story","reel","gif"]},"text":{"type":"string","description":"Post text content"},"title":{"type":"string","description":"Video title (for videos, truncated to 255 chars)"},"excerpt":{"type":"string","description":"Post excerpt"},"url":{"type":"string","description":"Link URL for link posts"},"post_id":{"type":"string","description":"Facebook post ID after publishing"},"post_link":{"type":"string","description":"Facebook post URL after publishing"},"question":{"type":"string","description":"Poll question"},"duration":{"type":"integer","description":"Poll duration in hours"},"details":{"type":"object","description":"Details for the post","properties":{"type":{"type":"string","description":"Network-specific content type","enum":["reel","story"]},"text_format_preset_id":{"type":"string","description":"Background color for the post","enum":["106018623298955","365653833956649","618093735238824","191761991491375","2193627793985415","200521337465306","1821844087883360","177465482945164","160419724814650","248623902401250","240401816771706","1868855943417360","255989551804163","1792915444087912","1654916007940525","1679248482160767","518948401838663","423339708139719","204187940028597","621731364695726","518596398537417","134273813910336","217321755510854","323371698179784","901751159967576","552118025129095","263789377694911","606643333067842","458988134561491","548109108916650","175493843120364","338976169966519","206513879997925","168373304017982","1271157196337260","174496469882866","862667370603267","127541261450947","218067308976029","688479024672716","238863426886624","301029513638534","154977255088164","1941912679424590","396343990807392","143093446467972","161409924510923","145893972683590","217761075370932","931584293685988","148862695775447","100114277230063","558836317844129","172497526576609","433967226963128","197865920864520","643122496026756","762009070855346","228164237768720","146487026137131","221828835275596","1903718606535395","1881421442117417","249307305544279","1777259169190672","303063890126415","122708641613922","319468561816672","121945541697934","288211338285858","446330032368780","219266485227663","1289741387813798","1365883126823705"]},"feed":{"type":"boolean","description":"Whether to share the reel to feed"},"reminder":{"type":"boolean","description":"Use reminder publishing instead of API"},"audio":{"type":"string","description":"Audio name for the reel"},"start":{"type":"string","description":"Start time for events"},"end":{"type":"string","description":"End time for events"},"coupon":{"type":"string","description":"Coupon code"},"terms":{"type":"string","description":"Terms and conditions"},"privacy":{"type":"string","description":"Privacy setting"},"comment":{"type":"boolean","description":"Allow comments"},"duet":{"type":"boolean","description":"Allow duets"},"stitch":{"type":"boolean","description":"Allow stitch"},"promotional":{"type":"boolean","description":"Mark as promotional content"},"paid":{"type":"boolean","description":"Mark as paid partnership"},"language":{"type":"string","description":"Content language"},"auto_add_music":{"type":"boolean","description":"Auto add music"},"sponsor":{"type":"object","description":"Sponsor information for branded content","properties":{"id":{"type":"string","description":"Sponsor Facebook ID"},"name":{"type":"string","description":"Sponsor name"},"verified":{"type":"boolean","description":"Whether sponsor is verified"},"boost":{"type":"boolean","description":"Whether post can be boosted"}}},"community":{"type":"object","description":"Community information","properties":{"id":{"type":"string","description":"Community ID"},"name":{"type":"string","description":"Community name"}}}}},"media":{"type":"array","description":"Media items to include","items":{"$ref":"#/components/schemas/MediaItem"}},"link":{"$ref":"#/components/schemas/LinkDetails"},"sublinks":{"type":"array","description":"Facebook carousel sublinks","items":{"$ref":"#/components/schemas/FacebookSublink"}},"tags":{"type":"array","description":"Post tags","items":{"type":"string"}},"categories":{"type":"array","description":"Post categories","items":{"type":"string"}},"featured_media":{"type":"object","description":"Featured media information","properties":{"path":{"type":"string","description":"Path to featured media"}}},"options":{"type":"array","description":"Poll options","items":{"type":"string"}}}},"MediaItem":{"type":"object","properties":{"id":{"type":"string","description":"Media ID (from upload)"},"type":{"type":"string","enum":["image","video","document","gif"]},"alt_text":{"type":"string","description":"Accessibility description for images"}}},"LinkDetails":{"type":"object","description":"Link details for link posts","properties":{"url":{"type":"string","description":"URL to link to"},"title":{"type":"string","description":"Title of the link"},"description":{"type":"string","description":"Description of the link"},"image_id":{"type":"string","description":"ID of the image to use for link preview"}}},"FacebookSublink":{"type":"object","description":"Configuration for a Facebook link post sublink preview","properties":{"url":{"type":"string","description":"URL of the link"},"provider_display":{"type":"string","description":"Display name of the link provider (typically domain name)"},"original_description":{"type":"string","description":"Original meta description of the linked webpage"},"original_title":{"type":"string","description":"Original meta title of the linked webpage"},"original_images":{"type":"array","description":"Array of original images found on the linked webpage","items":{"type":"string","format":"uri"}},"original_url":{"type":"string","description":"Original URL without protocol"},"description":{"type":"string","description":"Description to use in the link preview (can be customized)"},"title":{"type":"string","description":"Title to use in the link preview (can be customized)"},"images":{"type":"array","description":"Images to use in the link preview (can be customized)","items":{"type":"string","format":"uri"}},"default_image":{"type":"integer","description":"Index of the default image to display in the preview (0-based)","minimum":0},"caption":{"type":"string","description":"Additional caption for the link"},"call_to_action":{"type":"string","description":"Call-to-action button type for the link preview","enum":["NO_BUTTON","SHOP_NOW","BOOK_TRAVEL","LEARN_MORE","SIGN_UP","DOWNLOAD","GET_OFFER","GET_DIRECTIONS","BUY_NOW","CALL_NOW","APPLY_NOW","MESSAGE_PAGE","SEND_MESSAGE","CONTACT_US","SUBSCRIBE","USE_APP","PLAY_GAME","WATCH_VIDEO","WATCH_MORE","OPEN_LINK"]},"phone_number":{"type":"string","description":"Phone number to use with CALL_NOW call-to-action button"},"customized":{"type":"boolean","description":"Whether this sublink has been customized from the original link preview"}},"required":["url","title","description","images"]},"InstagramNetworkContent":{"type":"object","required":["type"],"properties":{"type":{"type":"string","description":"Content type for Instagram","enum":["photo","video","carousel","story","reel"]},"text":{"type":"string","description":"Caption text"},"media":{"type":"array","description":"Media items to include","items":{"$ref":"#/components/schemas/MediaItem"}},"carouselOptions":{"$ref":"#/components/schemas/CarouselOptions"},"firstComment":{"type":"string","description":"Text for first comment (often used for hashtags)"},"details":{"type":"object","description":"Details for the post","properties":{"type":{"type":"string","description":"Network-specific content type","enum":["reel","story"]},"// Reel-specific properties":{},"audio":{"type":"string","description":"Audio name for the reel"},"feed":{"type":"boolean","description":"Whether to share the reel to feed"}}}}},"CarouselOptions":{"type":"object","description":"Carousel-specific options","properties":{"slides":{"type":"array","description":"Individual slide configurations","items":{"type":"object","properties":{"media_id":{"type":"string","description":"Media ID for this slide"},"alt_text":{"type":"string","description":"Accessibility description for this slide"},"caption":{"type":"string","description":"Caption for this specific slide"}}}}}},"TwitterNetworkContent":{"type":"object","required":["type"],"properties":{"type":{"type":"string","description":"Content type for Twitter/X","enum":["status","photo","video","link","gif","poll"]},"text":{"type":"string","description":"Tweet text"},"media":{"type":"array","description":"Media items to include","items":{"$ref":"#/components/schemas/MediaItem"}},"link":{"$ref":"#/components/schemas/LinkDetails"},"// Poll-specific properties":{},"options":{"type":"array","description":"Options for poll posts (required when type='poll')","items":{"type":"string"}},"duration":{"type":"integer","description":"Duration of the poll in days (required when type='poll')"},"// End of Poll-specific properties":{},"replySettings":{"type":"string","description":"Who can reply to this tweet","enum":["everyone","mentionedUsers","following"]},"details":{"type":"object","description":"Twitter-specific publishing details","properties":{"type":{"type":"string","description":"Specific tweet type for long posts","enum":["long_post"]},"community":{"type":"object","description":"Community to post in","properties":{"id":{"type":"string","description":"Community ID"},"name":{"type":"string","description":"Community name"}}}}},"location":{"type":"object","description":"Geographic location to tag","properties":{"id":{"type":"string","description":"Place ID for geo tagging"},"name":{"type":"string","description":"Location name"}}}}},"LinkedInNetworkContent":{"type":"object","required":["type"],"properties":{"type":{"type":"string","description":"Content type for LinkedIn","enum":["status","photo","video","link","document","poll","gif"]},"text":{"type":"string","description":"Post text content"},"media":{"type":"array","description":"Media items to include","items":{"$ref":"#/components/schemas/MediaItem"}},"link":{"$ref":"#/components/schemas/LinkDetails"},"document":{"type":"object","description":"Document details","properties":{"id":{"type":"string","description":"Document ID (from upload)"},"title":{"type":"string","description":"Document title"}}},"// Poll-specific properties":{},"options":{"type":"array","description":"Options for poll posts (required when type='poll')","items":{"type":"string"}},"duration":{"type":"integer","description":"Duration of the poll in days (required when type='poll')"},"question":{"type":"string","description":"Poll question (required for LinkedIn when type='poll')"},"details":{"type":"object","description":"Details for the post","properties":{"type":{"type":"string","description":"PDF document type","enum":["document"]}}}}},"PinterestNetworkContent":{"type":"object","required":["type"],"properties":{"type":{"type":"string","description":"Content type for Pinterest","enum":["photo","video","carousel"]},"text":{"type":"string","description":"Pin description"},"media":{"type":"array","description":"Media items to include","items":{"$ref":"#/components/schemas/MediaItem"}},"link":{"$ref":"#/components/schemas/LinkDetails"},"boardId":{"type":"string","description":"Pinterest board ID to pin to"},"title":{"type":"string","description":"Title of the pin"}}},"GoogleBusinessNetworkContent":{"type":"object","required":["type"],"properties":{"type":{"type":"string","description":"Content type for Google Business","enum":["status","photo","event","offer"]},"text":{"type":"string","description":"Post text content"},"title":{"type":"string","description":"Post title"},"url":{"type":"string","description":"URL to link to"},"media":{"type":"array","description":"Media items to include","items":{"$ref":"#/components/schemas/MediaItem"}},"details":{"type":"object","description":"Details for the post","properties":{"type":{"type":"string","description":"Content type","enum":["photo","event"]},"title":{"type":"string","description":"Event title"},"start":{"type":"string","description":"Event start time","format":"date-time"},"end":{"type":"string","description":"Event end time","format":"date-time"},"// Offer-specific properties":{},"coupon":{"type":"string","description":"Coupon code for the offer"},"terms":{"type":"string","description":"Terms and conditions Url for the offer"},"// End of Offer-specific properties":{}}}}},"YouTubeNetworkContent":{"type":"object","required":["type"],"properties":{"type":{"type":"string","description":"Content type for YouTube","enum":["video","short"]},"media":{"type":"array","description":"Video to upload","items":{"$ref":"#/components/schemas/MediaItem"}},"title":{"type":"string","description":"Video title"},"description":{"type":"string","description":"Video description"},"tags":{"type":"array","description":"Video tags","items":{"type":"string"}},"category":{"type":"string","description":"Video category ID"},"privacy":{"type":"string","description":"Privacy setting","enum":["public","unlisted","private"]},"isShort":{"type":"boolean","description":"Whether this is a YouTube Short"},"details":{"type":"object","description":"Details for the post","properties":{"type":{"type":"string","description":"Network-specific content type","enum":["short"]},"// Youtube Short-specific properties":{},"privacy":{"type":"string","description":"Privacy setting for the short","enum":["public","unlisted","private"]}}}}},"TikTokNetworkContent":{"type":"object","required":["type"],"properties":{"type":{"type":"string","description":"Content type for TikTok","enum":["video","photo","carousel"]},"text":{"type":"string","description":"Caption text"},"title":{"type":"string","description":"Video title (for video type)"},"media":{"type":"array","description":"Media items to include","items":{"$ref":"#/components/schemas/MediaItem"}},"carouselOptions":{"$ref":"#/components/schemas/CarouselOptions"},"soundId":{"type":"string","description":"TikTok sound ID to use"},"duetWith":{"type":"string","description":"Video ID to duet with"},"details":{"type":"object","description":"TikTok-specific publishing details","properties":{"privacy":{"type":"string","description":"Privacy level for the post","enum":["PUBLIC_TO_EVERYONE","MUTUAL_FOLLOW_FRIENDS","FOLLOWER_OF_CREATOR","SELF_ONLY"]},"comment":{"type":"boolean","description":"Enable comments (true = enable, false = disable)"},"duet":{"type":"boolean","description":"Enable duets"},"stitch":{"type":"boolean","description":"Enable stitch"},"promotional":{"type":"boolean","description":"Mark as branded/promotional content"},"paid":{"type":"boolean","description":"Mark as paid partnership"},"auto_add_music":{"type":"boolean","description":"Auto add music to photo posts"},"reminder":{"type":"boolean","description":"Use reminder publishing instead of direct API"}}}}},"WordPressNetworkContent":{"type":"object","required":["type","content"],"properties":{"type":{"type":"string","description":"Content type for WordPress","enum":["article"]},"text":{"type":"string","description":"Post text content"},"excerpt":{"type":"string","description":"Short excerpt of the article"},"title":{"type":"string","description":"Article title"},"url":{"type":"string","description":"Article URL slug"},"post_link":{"type":["string","null"],"description":"Link to published post"},"source":{"type":"string","description":"Source of the post","enum":["schedule","publish","draft"]},"state":{"type":"string","description":"Post state","enum":["draft","scheduled","published"]},"content":{"type":"array","description":"Structured content blocks","items":{"type":"object","properties":{"id":{"type":"string","description":"Block unique identifier"},"type":{"type":"string","description":"Block type","enum":["paragraph","header","list","media","table","delimiter","code","html","quote"]},"data":{"type":"object","description":"Block-specific data","properties":{"text":{"type":"string","description":"Text content for paragraph, header, quote blocks"},"level":{"type":"integer","description":"Header level (1-6)"},"style":{"type":"string","description":"List style","enum":["ordered","unordered"]},"items":{"type":"array","description":"List items","items":{"type":"string"}},"url":{"type":"string","description":"Media URL"},"type":{"type":"string","description":"Media type","enum":["photo","video"]},"stretched":{"type":"boolean","description":"Whether media is stretched"},"withHeadings":{"type":"boolean","description":"Whether table has headings"},"content":{"type":"array","description":"Table content","items":{"type":"string"}},"code":{"type":"string","description":"Code content"},"html":{"type":"string","description":"HTML content"},"caption":{"type":"string","description":"Quote caption/author"}}}},"required":["id","type","data"]}},"categories":{"type":"array","items":{"type":"string"},"description":"Article category IDs"},"tags":{"type":"array","items":{"type":"string"},"description":"Article tag IDs"},"featured_media":{"type":"object","description":"Featured media information","properties":{"path":{"type":"string","description":"Path to featured media"}}}}},"TelegramNetworkContent":{"type":"object","required":["type"],"properties":{"type":{"type":"string","description":"Content type for Telegram","enum":["status","photo","video","link","gif"]},"text":{"type":"string","description":"Message text"},"media":{"type":"array","description":"Media items to include","items":{"$ref":"#/components/schemas/MediaItem"}},"link":{"$ref":"#/components/schemas/LinkDetails"},"parseMode":{"type":"string","description":"Message parse mode","enum":["Markdown","HTML"]},"disableNotification":{"type":"boolean","description":"Whether to send the message silently"},"disableWebPagePreview":{"type":"boolean","description":"Whether to disable link previews"}}},"MastodonNetworkContent":{"type":"object","required":["type"],"properties":{"type":{"type":"string","description":"Content type for Mastodon","enum":["status","photo","video","link","gif","poll"]},"text":{"type":"string","description":"Post text content"},"media":{"type":"array","description":"Media items to include","items":{"$ref":"#/components/schemas/MediaItem"}},"link":{"$ref":"#/components/schemas/LinkDetails"},"// Poll-specific properties":{},"options":{"type":"array","description":"Options for poll posts (required when type='poll')","items":{"type":"string"}},"duration":{"type":"integer","description":"Duration of the poll in days (required when type='poll')"},"// End of Poll-specific properties":{},"visibility":{"type":"string","description":"Post visibility","enum":["public","unlisted","private","direct"]},"sensitive":{"type":"boolean","description":"Mark media as sensitive"},"spoilerText":{"type":"string","description":"Content warning text"}}},"ThreadsNetworkContent":{"type":"object","required":["type"],"properties":{"type":{"type":"string","description":"Content type for Threads","enum":["status","photo","video","link"]},"text":{"type":"string","description":"Post text content"},"media":{"type":"array","description":"Media items to include","items":{"$ref":"#/components/schemas/MediaItem"}},"link":{"$ref":"#/components/schemas/LinkDetails"},"replyTo":{"type":"string","description":"ID of the thread to reply to"}}},"BlueskyNetworkContent":{"type":"object","required":["type"],"properties":{"type":{"type":"string","description":"Content type for Bluesky","enum":["status","photo","video","link"]},"text":{"type":"string","description":"Post text content"},"media":{"type":"array","description":"Media items to include","items":{"$ref":"#/components/schemas/MediaItem"}},"link":{"$ref":"#/components/schemas/LinkDetails"},"replyTo":{"type":"string","description":"ID of the post to reply to"},"labels":{"type":"array","description":"Self-labeled content warnings or categories","items":{"type":"string"}}}}}},"paths":{"/posts/schedule/publish":{"post":{"summary":"Create post","description":"Creates a new social media post. Can be scheduled for immediate publishing, future publishing, or saved as a draft.","operationId":"createPost","tags":["Posts"],"parameters":[{"schema":{"type":"string"},"name":"Publer-Workspace-Id","in":"header","description":"ID of the workspace to create post in","required":true}],"responses":{"200":{"description":"Post creation job initiated","content":{"application/json":{"schema":{"$ref":"#/components/schemas/JobResponse"}}}},"400":{"description":"Invalid post data","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/401ErrorResponseWithWorkspace"}}}},"403":{"description":"Permission denied or missing required scope","content":{"application/json":{"schema":{"$ref":"#/components/schemas/403ErrorResponse"}}}}},"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/BulkPostsRequest"}}},"description":"Post creation parameters","required":true}}}}}
```

## Get job status

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

```json
{"openapi":"3.1.1","info":{"title":"Publer API","version":"1.0.0"},"tags":[{"name":"Jobs","description":"Endpoints for managing asynchronous jobs"}],"servers":[{"url":"https://app.publer.com/api/v1"}],"security":[{"BearerApiAuth":[]}],"components":{"securitySchemes":{"BearerApiAuth":{"type":"apiKey","name":"Authorization","in":"header","description":"API key authentication. Format: \"Bearer-API YOUR_API_KEY\""}},"schemas":{"JobStatusResponse":{"type":"object","properties":{"success":{"type":"boolean","description":"Whether the request was successful"},"data":{"type":"object","properties":{"status":{"type":"string","enum":["working","complete","failed"],"description":"Current status of the job \n\n - `working`: The job is still processing.\n - `complete`: The job has completed successfully.\n - `failed`: The job has failed."},"result":{"type":"object","description":"Result data, contents depend on job type","properties":{"status":{"type":"string","enum":["working","complete","failed"],"description":"Current status of the job \n\n - `working`: The job is still processing.\n - `complete`: The job has completed successfully.\n - `failed`: The job has failed."},"payload":{"type":"object","description":"Result payload containing any operation results","properties":{"failures":{"type":"object","description":"Any failures that occurred during processing"}}},"plan":{"type":"object","description":"Current user's plan information","properties":{"rate":{"type":"string","description":"The rate plan of the workspace"},"locked":{"type":"boolean","description":"Whether the workspace is locked"}}}}}}}}},"401ErrorResponse":{"type":"object","properties":{"errors":{"type":"array","description":"List of error messages","items":{"type":"string"}}}},"403ErrorResponse":{"type":"object","properties":{"errors":{"type":"array","description":"List of error messages","items":{"type":"string"}}}}}},"paths":{"/job_status/{job_id}":{"get":{"summary":"Get job status","description":"Check the status of an asynchronous job, including URL media uploads","tags":["Jobs"],"parameters":[{"schema":{"type":"string"},"name":"Publer-Workspace-Id","in":"header","description":"ID of the workspace to retrieve posts from","required":true},{"schema":{"type":"string"},"name":"job_id","in":"path","description":"ID of the job to check","required":true}],"responses":{"200":{"description":"Job status retrieved successfully","content":{"application/json":{"schema":{"$ref":"#/components/schemas/JobStatusResponse"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/401ErrorResponse"}}}},"403":{"description":"Permission denied or missing required scope","content":{"application/json":{"schema":{"$ref":"#/components/schemas/403ErrorResponse"}}}}}}}}}
```

### Next Steps

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

* [Publishing Methods](https://publer.com/docs/posting/create-posts/publishing-methods): Complete documentation of all publishing options
* [Content Types](https://publer.com/docs/posting/create-posts/content-types): Detailed guide to content formats and requirements
* [Media Handling](https://publer.com/docs/posting/create-posts/media-handling): Information about uploading and managing media
* [Network Reference](https://publer.com/docs/posting/create-posts/networks): Platform-specific capabilities and limitations


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://publer.com/docs/posting/create-posts.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
