> For the complete documentation index, see [llms.txt](https://publer.com/docs/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://publer.com/docs/posting/create-posts/publishing-methods/manual-scheduling.md).

# Manual Scheduling

Schedule posts for future publication across one or more social networks using the Publer API.

### Endpoint

```html
POST /api/v1/posts/schedule
```

### Request Headers

<table><thead><tr><th width="201.383544921875">Header</th><th width="132.5247802734375">Required</th><th>Description</th></tr></thead><tbody><tr><td>Authorization</td><td>Yes</td><td><code>Bearer-API YOUR_API_KEY</code></td></tr><tr><td>Publer-Workspace-Id</td><td>Yes</td><td>Workspace ID for scheduling posts</td></tr><tr><td>Content-Type</td><td>Yes</td><td><code>application/json</code></td></tr><tr><td>Accept</td><td>No</td><td><code>application/json</code> (default)</td></tr></tbody></table>

### Request Body

Include a valid ISO 8601 `scheduled_at` timestamp under each account:

```json
{
  "bulk": {
    "state": "scheduled",
    "posts": [
      {
        "networks": {
          // network provider as key, e.g., facebook, twitter, etc
          "facebook": {
            "type": "status",
            "text": "This post was scheduled through the Publer API! #ScheduledContent"
          }
        },
        "accounts": [
          {
            "id": "66db83154e299efa19a2d8eb",
            "scheduled_at": "2025-06-01T09:00:00Z"
          }
        ]
      }
    ]
  }
}

```

### Sample Request

```bash
curl -X POST https://app.publer.com/api/v1/posts/schedule \
  -H "Authorization: Bearer-API YOUR_API_KEY" \
  -H "Publer-Workspace-Id: YOUR_WORKSPACE_ID" \
  -H "Content-Type: application/json" \
  -d '{
    "bulk": {
      "state": "scheduled",
      "posts": [{
        "networks": {
          "facebook": {
            "type": "status",
            "text": "This post was scheduled through the Publer API! #ScheduledContent"
          }
        },
        "accounts": [{
          "id": "66db83154e299efa19a2d8eb",
          "scheduled_at": "2025-06-01T09:00:00Z"
        }]
      }]
    }
  }'
```

### Sample Response

**Status**: 200 OK

```json
{
  "job_id": "6810dec617eae6d55d7a5e5b"
}
```

### Key Fields

* **state**\
  Must be set to `"scheduled"` for future publishing.
* **accounts\[].scheduled\_at**\
  ISO 8601 timestamp (with `Z` or offset) specifying when to publish.
* **networks**\
  Per-platform content configuration (e.g., `facebook`, `twitter`, `linkedin`).

### Important Considerations

#### Time Formats

* Use full ISO 8601 format, including timezone (e.g., `2025-06-01T09:00:00+02:00`).
* Timestamps must be at least 1 minute in the future.

### Best Practices

* **Buffer Time**: Space posts 1–2 minutes apart to avoid collisions.
* **Timezone Awareness**: Schedule using your audience’s local time.
* **Batch Scheduling**: Combine related posts in a single request for efficiency.
* **Verify**: Poll `/api/v1/job_status/{job_id}` to confirm scheduling success.

### Related Topics

* [Content Types](/docs/posting/create-posts/content-types.md) - Details on different content formats
* [Auto-Scheduling](/docs/posting/create-posts/publishing-methods/auto-scheduling.md) - Advanced AI-based scheduling options
* [Recurring Posts](/docs/posting/create-posts/publishing-methods/recurring-posts.md) - Setting up repeating content
* [Network Reference](/docs/posting/create-posts/networks.md) - Platform-specific scheduling limitations


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## 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, and the optional `goal` query parameter:

```
GET https://publer.com/docs/posting/create-posts/publishing-methods/manual-scheduling.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

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.
