---
title: "Schedule, pause, resume or cancel one Hive broadcast. Scheduling and resuming start real messages going out to everyone in the audience, so your AI asks you first and, with Hive approvals on, Hive asks again inside Hive. For all broadcasts, discover set_broadcast_emergency_stop with list_workspace_operations."
method: POST
path: "/api/v1/tools/set_broadcast_status"
---

# Schedule, pause, resume or cancel one Hive broadcast. Scheduling and resuming start real messages going out to everyone in the audience, so your AI asks you first and, with Hive approvals on, Hive asks again inside Hive. For all broadcasts, discover set_broadcast_emergency_stop with list_workspace_operations.

`POST /api/v1/tools/set_broadcast_status`

## Request

- Base URL: `https://hivepublish.com`
- URL: `https://hivepublish.com/api/v1/tools/set_broadcast_status`
- Auth: HTTP bearer

This reaches real people, so the person is asked before it runs. Their own AI client asks them. When the connection was made with Hive approvals switched on, the first call returns a single-use Hive approval link instead of acting, and the exact request is repeated with approvalToken and an Idempotency-Key once they approve it inside Hive.

## Headers

- `Idempotency-Key` string

## Request body

- object
  - `broadcastId` string, required: The Hive broadcast to change.
  - `action` 'schedule' | 'pause' | 'resume' | 'cancel', required: What to do with it.
  - `scheduledAt` string: When to send it, for the schedule action.
  - `expectedReviewKey` string: Required for scheduling: the reviewKey from preflight_broadcast for the exact content, settings and audience definitions reviewed. Any change requires a new preflight and approval.
  - `approvalToken` string: Single-use token returned by Hive after the owner approves this exact action.

## Response `200`

Tool result or approval challenge

- union
  - ToolResult
    - `data` unknown, required
    - `meta` object, required
      - `tool` string
      - `workspaceId` string, uuid
  - ApprovalChallengeResponse
    - `data` ApprovalChallenge, required
      - `confirmationRequired` unknown, required
      - `challengeId` string, uuid, required
      - `approvalToken` string, required: Secret, single-use token. Retry only after the human approves approvalUrl.
      - `approvalUrl` string, uri, required
      - `expiresAt` string, date-time, required
      - `warning` string
    - `meta` object, required

## Other responses

- `400`: Invalid input
- `401`: Missing or invalid credential
- `403`: Missing workspace scope, role permission, or plan entitlement
- `409`: Idempotency conflict, replay, or request still in progress
- `429`: Rate limit exceeded

---

[API](https://skmtc.dev/hivepublish/apis/hive-developer-api.md) · [All operations](https://skmtc.dev/hivepublish/apis/hive-developer-api/llms.txt) · [OpenAPI document](https://skmtc.dev/hivepublish/apis/hive-developer-api/revisions/b440c763583e?raw)
