| Method | Path | Summary | Auth |
|---|---|---|---|
| GET | /v1/admin/announcements | List tenant announcements | Session |
| POST | /v1/admin/announcements | Create an announcement draft | Session |
| GET | /v1/admin/announcements/global | List platform global announcements | Session |
| POST | /v1/admin/announcements/global | Create a platform global announcement draft | Session |
| GET | /v1/admin/announcements/global/{id} | Get a platform global announcement | Session |
| PATCH | /v1/admin/announcements/global/{id} | Update a platform global announcement draft | Session |
| POST | /v1/admin/announcements/global/{id}/archive | Archive a global announcement in management; published messages remain available | Session |
| POST | /v1/admin/announcements/global/{id}/publish | Publish a platform global announcement and freeze recipients | Session |
| POST | /v1/admin/announcements/global/{id}/restore | Restore a global announcement to management | Session |
| POST | /v1/admin/announcements/global/{id}/withdraw | Withdraw a platform global announcement | Session |
| GET | /v1/admin/announcements/{id} | Get the current announcement version | Session |
| PATCH | /v1/admin/announcements/{id} | Update an announcement draft | Session |
| POST | /v1/admin/announcements/{id}/archive | Archive a tenant announcement for reversible deletion | Session |
| POST | /v1/admin/announcements/{id}/publish | Publish an announcement | Session |
| POST | /v1/admin/announcements/{id}/restore | Restore an archived tenant announcement | Session |
| POST | /v1/admin/announcements/{id}/revise | Create a revised announcement draft | Session |
| POST | /v1/admin/announcements/{id}/schedule | Schedule an announcement | Session |
| POST | /v1/admin/announcements/{id}/withdraw | Withdraw an announcement | Session |
Contract file:api/control-announcements.openapi.yaml