---
title: "Post Bulletin"
method: POST
path: "/bulletin"
---

# Post Bulletin

`POST /bulletin`

## Request

- Base URL: `http://127.0.0.1:8052`
- URL: `http://127.0.0.1:8052/bulletin`
- Auth: none declared

Append a message to the bulletin board.

Returns 201 when the message is stored and any registered signal action
ran. When a signal action hook fails (for example a ``blocker`` whose
clearance gate did not materialize), the message is still on the
append-only board and queued in the board's retry outbox, but the action is
not complete: the response is 202 rather than 201 so the caller can tell
"stored and acted on" from "stored, action pending retry" (#2648).

## Request body

- BulletinPostRequest: Body for POST /bulletin.
  - `agent_id` string, required
  - `type` 'alert' | 'blocker' | 'finding' | 'status' | 'dependency'
  - `content` string, required
  - `cell_id` string, nullable

## Response `201`

Successful Response

- BulletinMessageResponse: Single bulletin message in responses.
  - `agent_id` string, required
  - `type` string, required
  - `content` string, required
  - `timestamp` number, required
  - `cell_id` string, nullable, required

## Other responses

- `422`: Validation Error

---

[API](https://skmtc.dev/bernstein/apis/bernstein-task-server.md) · [All operations](https://skmtc.dev/bernstein/apis/bernstein-task-server/llms.txt) · [OpenAPI document](https://skmtc.dev/bernstein/apis/bernstein-task-server/revisions/2a20a34ad2eb?raw)
