canonical: https://jentic.com/apis/broadcast.threema.ch/threema-broadcast

# Broadcast Threema Ch Threema Broadcast API

Jentic publishes the only available OpenAPI specification for Threema Broadcast API, keeping it validated and agent-ready. Threema Broadcast is the business messaging service from Threema, the Swiss end-to-end encrypted messenger. The API lets organisations programmatically manage broadcast identities, distribution lists, recipients, feeds, and chatbots so they can send secure, automated alerts and notifications to staff or members. It is built around a model where each customer has a broadcast identity that owns multiple channels including bots, distribution lists, and feeds, with chat and delivery-status endpoints for each.

## For AI agents

Send end-to-end encrypted broadcast messages to distribution lists, manage Threema chatbots, and run feed channels. Useful for emergency alerts, internal notifications, and member communications under Swiss privacy law.

## Scope

Does not handle one-to-one consumer Threema chats, voice calls, or video calls - use for organisational broadcast messaging, distribution lists, and chatbots only.

## Capabilities

- Create and configure chatbots under a broadcast identity, including their command catalogue
- Manage distribution lists and add or remove recipients by Threema ID
- Send chat messages to a distribution list and retrieve delivery status per recipient
- Attach file payloads to broadcast messages and fetch them back via the file endpoint
- Run feed channels for one-to-many broadcasts where recipients subscribe to receive updates
- Toggle bot state to start and stop automated message handlers without redeploying configuration

## Use cases

### Encrypted Emergency Alerts

Hospitals, police forces, and critical-infrastructure operators use Threema Broadcast to send end-to-end encrypted alerts to on-call staff. The agent maintains a distribution list of Threema IDs per shift and posts a chat message to the list when an incident triggers; delivery status per recipient is then read back via the chat delivery endpoint. Because messages are end-to-end encrypted under Swiss data protection law, this satisfies sectoral privacy requirements that public SMS gateways cannot meet.

Example prompt: POST `/identities/{broadcastUid}/distribution_lists/{distributionListUid}/chat` with body 'Code Blue ICU bed 4' and then GET the delivery status to confirm all on-call staff received it

### Member Communications via Feed Channels

Associations, NGOs, and member-based organisations run a feed channel that members subscribe to in the Threema app to receive curated updates. The API lets staff post messages and files to the feed, manage which recipients can post, and retrieve the chat history. This replaces public social channels with a private, end-to-end encrypted alternative aligned with the organisation's privacy posture.

Example prompt: POST `/identities/{broadcastUid}/feeds/{feedUid}/chat` with the latest member newsletter text and attach the PDF file

### Automated Chatbot for Internal Help Desk

IT teams configure a Threema chatbot under their broadcast identity to handle FAQ-style questions from staff. The API exposes endpoints to register bot commands and toggle the bot state, so the bot can be deployed, paused for maintenance, and updated without losing the underlying identity. This gives the help desk a chat-native first line of triage that runs over an end-to-end encrypted transport.

Example prompt: POST `/identities/{broadcastUid}/bots/{botUid}/commands` with command name 'reset-password' and a description, then PUT the bot state to active

### AI Agent Secure Notification Workflow Through Jentic

An AI operations agent uses Jentic to dispatch encrypted notifications via Threema Broadcast without holding the raw API key. The agent searches for 'send a secure broadcast message', loads the chat-message schema, and executes the call against the right distribution list. This pattern is well suited to incident-response agents that need to escalate to humans while preserving end-to-end encryption.

Example prompt: Use Jentic to search 'send a Threema broadcast message', load the broadcast.threema.ch operation, and execute it against the on-call distribution list with an incident summary

## Key endpoints

| Method | Path | Description |
| --- | --- | --- |
| POST | `/identities/{broadcastUid}/distribution_lists/{distributionListUid}/chat` | Send a message to a distribution list |
| GET | `/identities/{broadcastUid}/distribution_lists/{distributionListUid}/chat/{messageUid}/delivery` | Retrieve per-recipient delivery status for a message |
| POST | `/identities/{broadcastUid}/distribution_lists` | Create a new distribution list |
| POST | `/identities/{broadcastUid}/distribution_lists/{distributionListUid}/recipients` | Add recipients to a distribution list |
| POST | `/identities/{broadcastUid}/bots` | Create a chatbot under a broadcast identity |
| POST | `/identities/{broadcastUid}/bots/{botUid}/commands` | Register a command on a bot |
| PUT | `/identities/{broadcastUid}/bots/{botUid}/{botState}` | Toggle the bot's state (active or inactive) |

## Key resources

- **Bots** — Create, configure, and toggle chatbots under a broadcast identity
- **Bot Commands** — Register the command catalogue exposed by a bot to its users
- **Distribution Lists** — Manage lists and recipients for one-to-many encrypted messaging
- **Distribution List Chat** — Send messages, fetch delivery status, and retrieve file attachments
- **Feeds** — Run subscription-based broadcast channels for member updates

## AI readiness

This API is usable in Jentic One now. Its AI-readiness score against Jentic's framework shows where it stands today and where improvements would make it even easier for agents to use.

- **Score:** 69 / 100
- **Maturity:** AI-Aware
- **Dimensions:**
  - Foundational Compliance: 85 / 100
  - Developer Experience & Jentic Compatibility: 63 / 100
  - AI-Readiness & Agent Experience: 58 / 100
  - Agent Usability: 94 / 100
  - Security: 50 / 100
  - AI Discoverability: 100 / 100
- **View full report:** https://jentic.com/apis/broadcast.threema.ch/threema-broadcast/scorecard
- **How the score is calculated:** https://docs.jentic.com/reference/api-readiness-framework/overview/
- **More about the dimensions:** https://docs.jentic.com/reference/api-readiness-framework/specification/#dimensional-model-overview

### Score it yourself

Every API in the directory is allowlisted, so you can re-score it with no key required.

- **Score your own API:** https://jentic.com/scorecard.md
- **Scoring CLI agent skill:** https://github.com/jentic/jentic-api-scorecard/blob/main/skills/jentic-api-scorecard/SKILL.md

```sh
npx @jentic/api-scorecard-cli score <openapi-url>
```

## Why Jentic

- **Setup:** Wiring the Threema Broadcast API by hand means setting the X-API-Key header on every request and threading broadcast identities, distribution lists, and bot ids through nested paths yourself. Through Jentic you install once, import the Threema Broadcast API from the API Directory, store the key once, and your agent calls it.
- **Permission scoping:** Threema Broadcast puts the broadcast identity and distribution list ids in the URL path (`/identities/{broadcastUid}/distribution_lists/{distributionListUid}/...`), so a rule can pin your agent to one distribution list: it can send chat messages and check delivery for that list and nothing else. You choose the operations it may call, so creating bots or changing bot state is not included unless you add it.
- **Credential handling:** Your Threema Broadcast API key is stored once, encrypted, by your own Jentic One instance and injected as the X-API-Key header at execution time. It never enters the agent's prompt, logs, or context.
- **Discovery method:** Agents search Jentic by intent such as 'send a broadcast message to a distribution list', and Jentic returns the matching Threema operation with its parameter schema so the agent calls the right endpoint without browsing the reference docs.

## Related APIs

- **Twilio** — Global SMS, voice, and chat messaging at scale
- **Slack** — Team chat with channels, threads, and bots
- **Pusher** — Real-time pub/sub channels for in-app notifications

## FAQ

### Why is there no official OpenAPI spec for Threema Broadcast API?

Threema does not publish an OpenAPI specification. Jentic generates and maintains this spec so that AI agents and developers can call Threema Broadcast API via structured tooling. It is validated against the live API and kept up to date. Get started with Jentic One, the self-hosted execution layer.

### What authentication does the Threema Broadcast API use?

Authentication is via an API key tied to your broadcast identity (the `apiKeyAuth` security scheme in the spec). Through Jentic, the key is stored encrypted in your Jentic One instance and the agent receives a scoped execution token instead of the raw value.

### Can I send files through Threema Broadcast?

Yes. Each message in a distribution-list or feed chat can carry a file attachment, and the GET `/identities/{broadcastUid}/distribution_lists/{distributionListUid}/chat/{messageUid}/file` endpoint lets you retrieve the file back. Files inherit the same end-to-end encryption as text messages.

### How do I check whether a broadcast was delivered through Jentic?

Search Jentic for 'check Threema broadcast delivery status', load the broadcast.threema.ch schema, and call GET `/identities/{broadcastUid}/distribution_lists/{distributionListUid}/chat/{messageUid}/delivery.` The response lists each recipient and their delivery state.

### What are the rate limits for the Threema Broadcast API?

The OpenAPI spec does not declare explicit rate limits. Threema applies fair-use throttling per broadcast identity; if you plan to fan out to thousands of recipients, contact Threema support to confirm the appropriate plan tier.

### Is Threema Broadcast suitable for emergency alerts?

Yes. Threema Broadcast is widely used in Swiss healthcare, public safety, and critical-infrastructure settings where end-to-end encryption and Swiss data residency are mandatory. Pair the chat endpoint with the delivery-status endpoint to confirm every recipient received the alert.

### Can I limit what my agent is allowed to do with the Threema Broadcast API?

Yes. Because you run Jentic One yourself, you decide which Threema Broadcast operations the agent may call and which credentials it may use. Since the broadcast identity and distribution list ids sit in the URL path, a rule can pin the agent to a single distribution list so it can only send chat messages and check per-recipient delivery status for that list. Operations like creating bots or toggling bot state stay off limits unless you explicitly add them.
