Twitch raids allow a broadcaster to send viewers to another channel at the conclusion of their stream. Raiding can be a great way to make connections and network with other broadcasters by sharing audiences and growing their communities together.
What’s new?
Historically, starting a raid was possible through a quick action on the creator dashboard or the /raid chat command. In order for third-party developers to initiate a raid, a chatbot account with moderator access was necessary to use the chat command. Today we are extending this functionality to the Twitch API in an open beta so that developers can take advantage of this Twitch feature within their application logic.
How do I get started?
The following Twitch API endpoints have been added to manage raids with a broadcaster’s user oauth token.
Start a Raid - Starts a raid from one channel to another; a 90-second countdown will begin on the Twitch channel as usual.
Cancel a Raid - Prevents a raid from occurring during the 90-second countdown and before the broadcaster clicks “Raid Now” on Twitch.
In addition to these endpoints, we have introduced a new scope required for both; channel:manage:raids.
Please feel free to provide comments and questions in the thread below.
Happy raiding!
After calling “start a raid,” it would be nice if we could call the endpoint again with an added request parameter that executes the raid immediately (without waiting for the full 90 seconds to expire or the broadcaster to press “Raid Now”), given the initial 10 second cooldown has expired
No, for all my use cases I have the broadcasters token (since I also have a token for subscribers and other scopes). So I don’t need a channel editors token for the operations I do. So you’d need to create a uservoice for that
Sorry if I missed something, but is there a reason the *_broadcaster_id parameters are integers?
All the other endpoints, and the eventsub data use/return them as strings
There needs to be a way to complete the raid before the timer ends like you can do natively in Twitch chat. That way third party programs could not only initiate the raid but actually complete the raid without waiting for the timer to end.
A clarification and follow up since there has been chatter regarding private/public UserVoice suggestions. During a closed beta, we host a private UserVoice forum for participants. When functionality moved from closed beta to open beta, we should move any open items to the public forums and archive any suggestions that were implemented.
I’ve completed this for the Raids API this morning, so the two open items that should now be viewable/voteable for all are:
One more UserVoice (& the first time I’ve advocated for a more restricted rate limit on a helix endpoint): Previously, raidGo was rate limited to 3/30 (& enforced after hate raiders were abusing lack of limiting in gql). While I’m fine with startRaid/cancelRaid having the elevated 10/10 limit, I think carrying this over to raidGo is ripe for abuse: Revert Raid Rate Limit to 3 per 30 mins – Twitch UserVoice