Twitch · AsyncAPI Specification
Twitch EventSub
Version 1.0
EventSub is Twitch's event-driven subscription service for receiving real-time notifications about events on Twitch. Supports webhook, WebSocket, and conduit transport methods. Subscribe to events such as stream changes, channel updates, chat messages, subscriptions, follows, raids, bans, and more.
Channels
channel.update
Channel Update
A broadcaster updates their channel properties.
channel.follow
Channel Follow
A user follows the specified broadcaster.
channel.subscribe
Channel Subscribe
A user subscribes to the specified broadcaster.
channel.subscription.end
Channel Subscription End
A subscription to the specified broadcaster expires.
channel.subscription.gift
Channel Subscription Gift
A user gifts a subscription to one or more viewers.
channel.subscription.message
Channel Subscription Message
A user sends a resubscription chat message.
channel.cheer
Channel Cheer
A user cheers Bits in the specified channel.
channel.raid
Channel Raid
A broadcaster raids another broadcaster's channel.
channel.ban
Channel Ban
A viewer is banned or timed out from a channel.
channel.unban
Channel Unban
A viewer is unbanned from a channel.
channel.moderator.add
Channel Moderator Add
A moderator is added to a channel.
channel.moderator.remove
Channel Moderator Remove
A moderator is removed from a channel.
channel.channel_points_custom_reward.add
Channel Points Custom Reward Add
A custom channel points reward is added to a channel.
channel.channel_points_custom_reward_redemption.add
Channel Points Redemption Add
A viewer redeems a custom channel points reward.
channel.poll.begin
Channel Poll Begin
A poll begins on a channel.
channel.poll.end
Channel Poll End
A poll ends on a channel.
channel.prediction.begin
Channel Prediction Begin
A prediction begins on a channel.
channel.prediction.end
Channel Prediction End
A prediction ends on a channel.
channel.hype_train.begin
Hype Train Begin
A Hype Train begins on a channel.
channel.hype_train.progress
Hype Train Progress
A Hype Train makes progress on a channel.
channel.hype_train.end
Hype Train End
A Hype Train ends on a channel.
channel.charity_campaign.donate
Charity Campaign Donate
A user donates to a charity campaign on a channel.
channel.goal.begin
Goal Begin
A creator goal begins on a channel.
channel.goal.progress
Goal Progress
A creator goal makes progress.
channel.goal.end
Goal End
A creator goal ends on a channel.
channel.chat.message
Chat Message
A chat message is sent in a channel.
channel.chat.notification
Chat Notification
A chat notification is sent in a channel (sub, raid, etc.).
stream.online
Stream Online
The specified broadcaster starts a stream.
stream.offline
Stream Offline
The specified broadcaster stops a stream.
user.authorization.grant
User Authorization Grant
A user's authorization is granted for an application.
user.authorization.revoke
User Authorization Revoke
A user's authorization is revoked for an application.
user.update
User Update
A user updates their account.
drop.entitlement.grant
Drop Entitlement Grant
A Drops entitlement is granted to a user.
Messages
ChannelUpdateEvent
Channel Update Event
ChannelFollowEvent
Channel Follow Event
ChannelSubscribeEvent
Channel Subscribe Event
ChannelSubscriptionEndEvent
Channel Subscription End Event
ChannelSubscriptionGiftEvent
Channel Subscription Gift Event
ChannelSubscriptionMessageEvent
Channel Subscription Message Event
ChannelCheerEvent
Channel Cheer Event
ChannelRaidEvent
Channel Raid Event
ChannelBanEvent
Channel Ban Event
ChannelUnbanEvent
Channel Unban Event
ChannelModeratorAddEvent
Channel Moderator Add Event
ChannelModeratorRemoveEvent
Channel Moderator Remove Event
ChannelPointsCustomRewardEvent
Channel Points Custom Reward Event
ChannelPointsRedemptionEvent
Channel Points Redemption Event
ChannelPollEvent
Channel Poll Event
ChannelPredictionEvent
Channel Prediction Event
HypeTrainEvent
Hype Train Event
HypeTrainEndEvent
Hype Train End Event
CharityDonationEvent
Charity Donation Event
GoalEvent
Goal Event
ChatMessageEvent
Chat Message Event
ChatNotificationEvent
Chat Notification Event
StreamOnlineEvent
Stream Online Event
StreamOfflineEvent
Stream Offline Event
UserAuthorizationGrantEvent
User Authorization Grant Event
UserAuthorizationRevokeEvent
User Authorization Revoke Event
UserUpdateEvent
User Update Event
DropEntitlementGrantEvent
Drop Entitlement Grant Event
Servers
https
webhook
{callbackUrl}
Webhook transport - Twitch sends HTTP POST notifications to your registered callback URL
wss
websocket
wss://eventsub.wss.twitch.tv/ws
WebSocket transport - Connect to receive events over a persistent WebSocket connection