Chatters — API endpoints
Base domain
Section titled “Base domain”https://chatters.streamercatalyst.com
The StreamerCatalyst dashboard calls the session endpoints same-origin through https://streamercatalyst.com/m/chatters/* (for example /m/chatters/api/channels/:id/config reaches /api/channels/:id/config here). That proxy forwards the session cookie over a Cloudflare service binding and never forwards /internal/*.
Endpoints
Section titled “Endpoints”| Path | Method | Auth | Description |
|---|---|---|---|
/c/:login/commands |
GET | Public | Public command list page for a channel. |
/api/random |
GET | API key | Random chatter picker (?apikey=, ?filter=, ?n=). |
/api/fmk |
GET | API key | F/M/K picker (?apikey=, ?filter=). |
/api/chatters |
GET | API key | Chatter list (?apikey=, ?filter=, ?format=json). |
/api/channels/:id/config |
GET/PUT | Session cookie | Per-channel Chatters configuration. |
/api/channels/:id/apikey |
GET | Session cookie | The channel’s API key for the bot command endpoints above; POST …/apikey/regenerate replaces it. |
/api/channels/:id/commands |
GET/POST | Session cookie | List or create custom commands. |
/api/channels/:id/commands/:commandId |
PUT/DELETE | Session cookie | Update or delete a custom command. |
/api/channels/:id/commands/generate |
POST | Session cookie | Draft a command with AI. |
/api/channels/:id/commands/import |
POST | Session cookie | Bulk command import; …/import/preview then …/import/apply is the two-step form. |
/api/channels/:id/import/streamelements/* |
POST | Session cookie | StreamElements account import (preview, then apply). The StreamElements token is never stored. |
/api/channels/:id/utility-commands |
GET/PUT | Session cookie | Built-in command configuration and aliases. |
/api/channels/:id/auto-chats |
GET/POST | Session cookie | List or create scheduled auto-chat messages. |
/api/channels/:id/auto-chats/:autoChatId |
PUT/DELETE | Session cookie | Update or delete an auto-chat; POST …/resync re-syncs its schedule. |
/api/channels/:id/quotes |
GET/POST | Session cookie | Quote database. |
/api/channels/:id/quotes/:quoteId |
PUT/DELETE | Session cookie | Edit or delete a quote. The id is the quote’s row id, not the per-channel quote number viewers see. |
/api/channels/:id/regulars |
GET/POST | Session cookie | Regulars list; DELETE …/regulars/:userId removes one. |
/api/channels/:id/counters |
GET | Session cookie | Counter names; …/counter-entries (GET/PUT/DELETE) reads and edits their values. |
/api/channels/:id/bot-identity |
GET/PUT | Session cookie | Who sends the bot’s chat messages: your account, the shared bot, or a bot account you own (GET …/bot-identity/authorize links one). |
/api/channels/:id/shoutout-queue |
GET/DELETE | Session cookie | Pending shoutouts; DELETE …/shoutout-queue/:entryId drops one. |
/api/channels/:id/title-grants |
GET/POST | Session cookie | Viewers granted the right to set the stream title from chat; DELETE …/title-grants/:grantId revokes one. |
/api/channels/:id/usage-stats |
GET | Session cookie | Command usage; …/usage-stats/top-commands, …/activity, …/top-chatters and …/chatters cover the rest of the activity views. |
/internal/eventsub |
POST | Service binding (internal) | EventSub fan-out receiver (internal). |
/internal/billing/downgrade |
POST | Service binding (internal) | Tier-downgrade handler (internal). |
Auth model
Section titled “Auth model”- Session cookie endpoints require an active StreamerCatalyst session (set at login via the platform Worker). A channel-scoped route (
/api/channels/:id/…) answers only for the session’s own channel, and a read-only admin masquerade may read but not change anything. - API key endpoints accept a 64-hex-char API key via the
?apikey=query parameter. - Public endpoints require no authentication.
- Service binding endpoints are for other StreamerCatalyst Workers, called over Cloudflare service bindings with a shared internal token. They are not a public API.
Share Feedback
Need help or want to chat? Join our Discord to get support, report bugs, and talk with other streamers.0 / 1000
Privacy
▸ What we're sending
| Module | — |
| Page | — |
| Browser | — |
| Screen | — |
| Channel | anonymous |
| Submitted | — |