API reference
Every endpoint your app can call. Base URL https://api.thexive.com; every call sends Authorization: Bearer xive_sa_… (Authentication). {channelId} is the creator's profile id from GET /api/apps/@me/channels.
A scope means the creator must have granted it on that channel; otherwise the call answers 403 with missing_scope. No scope means any valid secret works. Errors share one shape; see Rate limits & errors.
OAuth
| Method | Endpoint | Scope | What it does |
|---|---|---|---|
POST |
/api/oauth2/token |
— | Swap a code, refresh a token, or get an app token. |
GET |
/api/oauth2/validate |
— | Check a token: who, which scopes, how long. |
POST |
/api/oauth2/revoke |
— | Revoke an access or refresh token. |
Applications
| Method | Endpoint | Scope | What it does |
|---|---|---|---|
GET |
/api/apps/@me |
— | Your app: id, client id, name. |
GET |
/api/apps/@me/channels |
— | Channels that added your app, with their scopes. |
EventSub
| Method | Endpoint | Scope | What it does |
|---|---|---|---|
POST |
/api/apps/@me/gateway |
— | A WebSocket connection token (1 hour). |
GET |
/api/apps/eventsub/subscriptions |
— | What EventSub delivers to you, per channel and type. |
GET |
/api/apps/eventsub/events |
events:read |
Catch up on a channel's activity since a cursor. |
Chat
| Method | Endpoint | Scope | What it does |
|---|---|---|---|
POST |
/api/apps/channels/{channelId}/chat |
chat:write |
Send a message or a reply, as your bot. |
GET |
/api/apps/channels/{channelId}/chat |
chat:read |
The last 50 messages. |
Moderation
| Method | Endpoint | Scope | What it does |
|---|---|---|---|
DELETE |
/api/apps/channels/{channelId}/chat/{messageId} |
chat:moderate |
Delete a message. |
POST |
/api/apps/channels/{channelId}/timeouts |
chat:moderate |
Time out a viewer. |
POST |
/api/apps/channels/{channelId}/bans |
chat:moderate |
Ban a viewer. |
DELETE |
/api/apps/channels/{channelId}/bans/{userId} |
chat:moderate |
Unban a viewer. |
GET |
/api/apps/channels/{channelId}/chat/settings |
chat:moderate |
Read chat settings (slow mode, followers-only …). |
PATCH |
/api/apps/channels/{channelId}/chat/settings |
chat:moderate |
Change chat settings. |
POST |
/api/apps/channels/{channelId}/chat/pins |
chat:moderate |
Pin a message. |
DELETE |
/api/apps/channels/{channelId}/chat/pins |
chat:moderate |
Unpin. |
VIPs
| Method | Endpoint | Scope | What it does |
|---|---|---|---|
GET |
/api/apps/channels/{channelId}/vips |
channel:manage |
List VIPs. |
POST |
/api/apps/channels/{channelId}/vips |
channel:manage |
Add a VIP. |
DELETE |
/api/apps/channels/{channelId}/vips/{userId} |
channel:manage |
Remove a VIP. |
Chat commands
| Method | Endpoint | Scope | What it does |
|---|---|---|---|
GET |
/api/apps/channels/{channelId}/commands |
commands:manage |
List commands and the channel's limit. |
POST |
/api/apps/channels/{channelId}/commands |
commands:manage |
Create a command. |
PATCH |
/api/apps/channels/{channelId}/commands/{commandId} |
commands:manage |
Edit a command. |
DELETE |
/api/apps/channels/{channelId}/commands/{commandId} |
commands:manage |
Retire a command. |
Stream
| Method | Endpoint | Scope | What it does |
|---|---|---|---|
PATCH |
/api/apps/channels/{channelId}/stream |
channel:manage |
Set the title and/or category. |
POST |
/api/apps/channels/{channelId}/raids |
channel:manage |
Raid another live channel. |
POST |
/api/apps/channels/{channelId}/clips |
channel:manage |
Clip the last 30 seconds of the live stream. |
Channel points
| Method | Endpoint | Scope | What it does |
|---|---|---|---|
GET |
/api/apps/channels/{channelId}/rewards |
redemptions:manage |
The channel's active rewards. |
GET |
/api/apps/channels/{channelId}/redemptions |
redemptions:manage |
The redemption queue, or recent history. |
POST |
/api/apps/channels/{channelId}/redemptions/{redemptionId} |
redemptions:manage |
Accept, complete or reject a redemption. |
POST |
/api/apps/channels/{channelId}/chests |
redemptions:manage |
Drop a community chest. |
Polls & predictions
| Method | Endpoint | Scope | What it does |
|---|---|---|---|
GET |
/api/apps/channels/{channelId}/polls |
polls:manage |
The running poll, or the latest one. |
POST |
/api/apps/channels/{channelId}/polls |
polls:manage |
Start a poll. |
PATCH |
/api/apps/channels/{channelId}/polls |
polls:manage |
End a poll early, or archive it. |
GET |
/api/apps/channels/{channelId}/predictions |
polls:manage |
The open prediction, or the latest one. |
POST |
/api/apps/channels/{channelId}/predictions |
polls:manage |
Start a prediction (channel points only). |
PATCH |
/api/apps/channels/{channelId}/predictions |
polls:manage |
Lock, resolve or cancel a prediction. |
Panels
| Method | Endpoint | Scope | What it does |
|---|---|---|---|
GET |
/api/apps/channels/{channelId}/panel |
panels:manage |
Your app's panel on the channel page. |
PUT |
/api/apps/channels/{channelId}/panel |
panels:manage |
Create or replace your panel (1 per 10 s). |
DELETE |
/api/apps/channels/{channelId}/panel |
panels:manage |
Take your panel down. |
Drops
| Method | Endpoint | Scope | What it does |
|---|---|---|---|
GET |
/api/apps/drops/entitlements |
— | Your organization's Drops entitlements (cursor pages). |
PATCH |
/api/apps/drops/entitlements |
— | Mark up to 100 entitlements FULFILLED (or CLAIMED). |
Users & search
| Method | Endpoint | Scope | What it does |
|---|---|---|---|
GET |
/api/apps/users |
— | Look up users by username or id. |
GET |
/api/apps/streams/live |
— | Channels live right now. |
GET |
/api/apps/categories |
— | Search the category catalogue. |
Channels
| Method | Endpoint | Scope | What it does |
|---|---|---|---|
GET |
/api/apps/channels/{channelId}/goals |
— | A channel's active goals. |
GET |
/api/apps/channels/{channelId}/replays |
— | A channel's published replays. |
GET |
/api/apps/channels/{channelId}/schedule |
— | A channel's weekly schedule and next stream. |
GET |
/api/apps/channels/{channelId}/supporter-tiers |
— | The supporter tier ladder. |
GET |
/api/apps/channels/{channelId}/subscriptions |
events:read |
The channel's active subscriber total. |