# Schedule, reschedule, or cancel a post

> Schedule an approved draft at an explicit time and IANA timezone, then use the scheduled action ID for later changes.

Canonical: https://entirefeed.com/docs/publishing/schedules

Scheduling is a separate mutation from draft creation. Confirm the post, account, media, caption, exact time, and IANA timezone before calling the schedule tool. MCP intentionally does not expose a publish-now action.

The schedule response returns a `scheduled_post_id`. Keep that ID: reschedule and cancel operations require it and cannot infer a scheduled action from a post ID.

## Schedule at an explicit local time

Schedule only after the user confirms the draft and exact time. Supply an ISO 8601 `scheduled_for` value and an IANA timezone. The response returns the scheduled action ID used for later changes:

### schedule_console_publishing_post

```json
{
  "tool": "schedule_console_publishing_post",
  "arguments": {
    "post_id": "22222222-2222-4222-8222-222222222222",
    "scheduled_for": "2030-07-15T10:00:00+09:00",
    "timezone": "Asia/Tokyo"
  }
}
```

```json
{
  "scheduled_post": {
    "id": "44444444-4444-4444-8444-444444444444",
    "post_id": "22222222-2222-4222-8222-222222222222",
    "scheduled_for": "2030-07-15T01:00:00Z",
    "display_scheduled_for": "2030-07-15T10:00:00+09:00",
    "timezone": "Asia/Tokyo",
    "status": "PENDING"
  }
}
```

## Reschedule by scheduled action ID

Reschedule only a `PENDING`, `QUEUED`, `CLAIMED`, `FAILED` action. Use its `scheduled_post_id`, not its post ID, and confirm the replacement time and timezone:

### reschedule_console_publishing_scheduled_post

```json
{
  "tool": "reschedule_console_publishing_scheduled_post",
  "arguments": {
    "scheduled_post_id": "44444444-4444-4444-8444-444444444444",
    "scheduled_for": "2030-07-15T13:00:00+09:00",
    "timezone": "Asia/Tokyo"
  }
}
```

## Cancel without deleting the draft

Cancellation uses the scheduled action ID and leaves the draft post intact. Confirm the cancellation, then re-read before repeating it after an uncertain response:

### cancel_console_publishing_scheduled_post

```json
{
  "tool": "cancel_console_publishing_scheduled_post",
  "arguments": {
    "scheduled_post_id": "44444444-4444-4444-8444-444444444444"
  }
}
```

## Inspect status and analytics

Scheduled statuses: `PENDING`, `QUEUED`, `CLAIMED`, `RUNNING`, `COMPLETED`, `FAILED`, `CANCELLED`, `SKIPPED`. Use compact schedule and analytics reads to inspect current state; do not infer success from the requested time:

### list_console_publishing_scheduled_posts

```json
{
  "tool": "list_console_publishing_scheduled_posts",
  "arguments": {
    "statuses": [
      "PENDING",
      "QUEUED",
      "CLAIMED",
      "FAILED"
    ],
    "limit": 50
  }
}
```

### get_console_publishing_schedule_board

```json
{
  "tool": "get_console_publishing_schedule_board",
  "arguments": {
    "activity_since": "2026-07-01T00:00:00Z",
    "limit": 50
  }
}
```

### get_console_publishing_analytics_summary

```json
{
  "tool": "get_console_publishing_analytics_summary",
  "arguments": {
    "from_time": "2026-07-01T00:00:00Z",
    "to_time": "2026-07-31T23:59:59Z"
  }
}
```

### get_console_publishing_analytics_timeseries

```json
{
  "tool": "get_console_publishing_analytics_timeseries",
  "arguments": {
    "from_time": "2026-07-01T00:00:00Z",
    "to_time": "2026-07-31T23:59:59Z",
    "interval": "day"
  }
}
```

### get_console_publishing_analytics_breakdown

```json
{
  "tool": "get_console_publishing_analytics_breakdown",
  "arguments": {
    "group_by": "status",
    "from_time": "2026-07-01T00:00:00Z"
  }
}
```

MCP has no publish-now tool. Draft creation and scheduling remain separate, reviewable actions.
