Twitch script functions¶
Functions for C# (Cb.Call) and Python (cb.call). See Script functions for how to use them.
twitch.addBlockedTerm¶
Adds a word or phrase to your Twitch blocked terms, so messages with it are hidden. Fails when the term is empty. Fails when Twitch is not connected.
| Value | What to put in |
|---|---|
term |
The word or phrase to block, like "buy followers". |
Gives back: An object with blockedTermId.
var answer = await Cb.Call("twitch.addBlockedTerm", new { term = "buy followers" });
answer = cb.call("twitch.addBlockedTerm", term="buy followers")
twitch.addModerator¶
Makes a viewer a moderator in your Twitch channel. Fails when Twitch is not connected.
| Value | What to put in |
|---|---|
user |
Optional. A Twitch login name (a leading @ is fine) or "id:12345". Leave it out for the user who triggered the action. |
Gives back: Nothing.
var answer = await Cb.Call("twitch.addModerator", new { user = "coolviewer42" });
answer = cb.call("twitch.addModerator", user="coolviewer42")
twitch.addSuspiciousStatus¶
Marks a viewer as suspicious. "Active Monitoring" flags their messages for your mods; "Restricted" keeps their messages out of chat. Fails when Twitch is not connected.
| Value | What to put in |
|---|---|
user |
Optional. A Twitch login name (a leading @ is fine) or "id:12345". Leave it out for the user who triggered the action. |
status |
Optional. "Active Monitoring" (the default) or "Restricted". |
Gives back: An object with suspiciousUser, suspiciousUserName, suspiciousUserId, suspiciousUserType, suspiciousStatusResult, suspiciousStatus (like "RESTRICTED") and suspiciousTypes.
var answer = await Cb.Call("twitch.addSuspiciousStatus", new { user = "coolviewer42", status = "Restricted" });
answer = cb.call("twitch.addSuspiciousStatus", user="coolviewer42", status="Restricted")
twitch.addTag¶
Adds one tag to your Twitch channel. Your other tags stay. Fails when Twitch is not connected.
| Value | What to put in |
|---|---|
tag |
The tag, like "Cozy". |
Gives back: Nothing.
var answer = await Cb.Call("twitch.addTag", new { tag = "Cozy" });
answer = cb.call("twitch.addTag", tag="Cozy")
twitch.addVip¶
Makes a viewer a VIP in your Twitch channel. Fails when Twitch is not connected.
| Value | What to put in |
|---|---|
user |
Optional. A Twitch login name (a leading @ is fine) or "id:12345". Leave it out for the user who triggered the action. |
Gives back: Nothing.
var answer = await Cb.Call("twitch.addVip", new { user = "coolviewer42" });
answer = cb.call("twitch.addVip", user="coolviewer42")
twitch.assignGuestStarSlot¶
Puts an invited guest into a Twitch Guest Star slot. Fails when Twitch is not connected.
| Value | What to put in |
|---|---|
user |
Optional. A Twitch login name (a leading @ is fine) or "id:12345". Leave it out for the user who triggered the action. |
slot |
Optional. The slot number, from 1 up to the number of slots, like "2". Leave it out for 1. |
sessionId |
Optional. The Guest Star session id. Leave it out for the session running now. |
Gives back: Nothing.
var answer = await Cb.Call("twitch.assignGuestStarSlot", new { user = "coolviewer42", slot = "2" });
answer = cb.call("twitch.assignGuestStarSlot", user="coolviewer42", slot="2")
twitch.ban¶
Bans a viewer from your Twitch chat for good. Fails when the user is not found. Fails when Twitch is not connected.
| Value | What to put in |
|---|---|
user |
Optional. A Twitch login name (a leading @ is fine) or "id:12345". Leave it out for the user who triggered the action. |
reason |
Optional. Why, like "Spam". |
Gives back: An object with bannedUser (display name), bannedUserName (login), bannedUserId, bannedUserType ("twitch") and banResult (true).
var answer = await Cb.Call("twitch.ban", new { user = "spambot123", reason = "Spam" });
answer = cb.call("twitch.ban", user="spambot123", reason="Spam")
twitch.cancelPrediction¶
Cancels the running Twitch prediction and gives everyone their points back. Fails when Twitch is not connected.
Gives back: An object with cancelled (true), active and the prediction's details: prediction.Id, prediction.Title, prediction.outcome0.title and so on.
var answer = await Cb.Call("twitch.cancelPrediction");
answer = cb.call("twitch.cancelPrediction")
twitch.cancelRaid¶
Stops the raid you started, before it goes. Fails when Twitch is not connected.
Gives back: Nothing.
var answer = await Cb.Call("twitch.cancelRaid");
answer = cb.call("twitch.cancelRaid")
twitch.clearChat¶
Clears every message from your Twitch chat. Fails when Twitch is not connected.
Gives back: An object with clearSuccess (true).
var answer = await Cb.Call("twitch.clearChat");
answer = cb.call("twitch.clearChat")
twitch.clearTags¶
Removes every tag from your Twitch channel. Fails when Twitch is not connected.
Gives back: Nothing.
var answer = await Cb.Call("twitch.clearTags");
answer = cb.call("twitch.clearTags")
twitch.configureRewards¶
Turns many channel point rewards on, off, paused or unpaused in one go. Fails when a name matches no reward or group. Fails when Twitch is not connected.
| Value | What to put in |
|---|---|
enable |
Optional. Reward titles, ids or reward group names, one per line or separated by |. |
disable |
Optional. Reward titles, ids or reward group names, one per line or separated by |. |
pause |
Optional. Reward titles, ids or reward group names, one per line or separated by |. |
unpause |
Optional. Reward titles, ids or reward group names, one per line or separated by |. |
disableNotConfigured |
Optional. true also turns off every reward that is in no reward group. Leave it out for false. |
Gives back: An object with rewardsChanged and rewardsSkipped (rewards Cuebot could not change).
var answer = await Cb.Call("twitch.configureRewards", new { enable = "Hydrate!|Stretch", disable = "Games" });
answer = cb.call("twitch.configureRewards", enable="Hydrate!|Stretch", disable="Games")
twitch.createClip¶
Makes a clip of your live Twitch stream. Fails when Twitch is not connected.
| Value | What to put in |
|---|---|
hasDelay |
Optional. true makes the clip account for your stream delay. Leave it out for false. |
Gives back: An object with clipId, clipEditUrl, clipUrl, createClipSuccess, createClipId, createClipCreatedAt and createClipUrl.
var answer = await Cb.Call("twitch.createClip");
answer = cb.call("twitch.createClip")
twitch.createGuestStarSession¶
Starts a Twitch Guest Star session. Fails when Twitch is not connected.
Gives back: An object with guestStarActive, guestStarSessionId, guestStarGuestCount, and guestStarGuest0, guestStarGuest0UserName, guestStarGuest0UserId, guestStarGuest0Slot, guestStarGuest0IsLive, guestStarGuest0Volume and so on.
var answer = await Cb.Call("twitch.createGuestStarSession");
answer = cb.call("twitch.createGuestStarSession")
twitch.createMarker¶
Adds a stream marker at this moment, so you can find it again later in your video. Fails when Twitch is not connected.
| Value | What to put in |
|---|---|
description |
Optional. A short note for the marker, like "Epic win". |
Gives back: An object with markerId, markerPosition (seconds into the stream), streamMarkerSuccess, streamMarkerId, streamMarkerCreatedAt, streamMarkerDescription and streamMarkerPosition.
var answer = await Cb.Call("twitch.createMarker", new { description = "Epic win" });
answer = cb.call("twitch.createMarker", description="Epic win")
twitch.createPoll¶
Starts a Twitch poll in your chat with 2 to 5 choices. Fails when Twitch is not connected.
| Value | What to put in |
|---|---|
title |
The question, like "Which game next?" |
choices |
The answers as text, one per line or separated by |, like "Minecraft|Fortnite|Tetris". |
duration |
Optional. How long the poll runs, in seconds (15 to 1800). Leave it out for 60. |
pointsPerVote |
Optional. Channel points for each extra vote. Leave it out (or 0) to turn extra votes off. |
Gives back: An object with pollId and success (true).
var answer = await Cb.Call("twitch.createPoll", new { title = "Which game next?", choices = "Minecraft|Fortnite|Tetris", duration = 120 });
answer = cb.call("twitch.createPoll", title="Which game next?", choices="Minecraft|Fortnite|Tetris", duration=120)
twitch.createPrediction¶
Starts a Twitch prediction: viewers bet channel points on 2 to 10 outcomes. Fails when Twitch is not connected.
| Value | What to put in |
|---|---|
title |
The question, like "Will I beat the boss?" |
outcomes |
The outcomes as text, one per line or separated by |, like "Yes|No". |
window |
Optional. How long viewers can bet, in seconds (30 to 1800). Leave it out for 120. |
Gives back: An object with predictionId, prediction.Id and success (true).
var answer = await Cb.Call("twitch.createPrediction", new { title = "Will I beat the boss?", outcomes = "Yes|No", window = 60 });
answer = cb.call("twitch.createPrediction", title="Will I beat the boss?", outcomes="Yes|No", window=60)
twitch.createReward¶
Makes a new channel point reward. Cuebot can change it later because it made it. Fails when Twitch is not connected.
| Value | What to put in |
|---|---|
title |
The reward name, like "Hydrate!" |
cost |
Optional. The price in channel points. Leave it out for 100. |
prompt |
Optional. The text viewers see under the title. |
inputRequired |
Optional. true makes viewers type a message when they redeem. Leave it out for false. |
enabled |
Optional. false makes it hidden at first. Leave it out for true. |
Gives back: An object with createdRewardId.
var answer = await Cb.Call("twitch.createReward", new { title = "Hydrate!", cost = 500, prompt = "Make me drink some water" });
answer = cb.call("twitch.createReward", title="Hydrate!", cost=500, prompt="Make me drink some water")
twitch.deleteGuestStarInvite¶
Takes back a viewer's Twitch Guest Star invite. Fails when Twitch is not connected.
| Value | What to put in |
|---|---|
user |
Optional. A Twitch login name (a leading @ is fine) or "id:12345". Leave it out for the user who triggered the action. |
sessionId |
Optional. The Guest Star session id. Leave it out for the session running now. |
Gives back: Nothing.
var answer = await Cb.Call("twitch.deleteGuestStarInvite", new { user = "coolviewer42" });
answer = cb.call("twitch.deleteGuestStarInvite", user="coolviewer42")
twitch.deleteGuestStarSlot¶
Removes a guest from their Twitch Guest Star slot. Fails when Twitch is not connected.
| Value | What to put in |
|---|---|
user |
Optional. A Twitch login name (a leading @ is fine) or "id:12345". Leave it out for the user who triggered the action. |
slot |
Optional. The slot number, from 1 up to the number of slots, like "2". Leave it out for 1. |
reinvite |
Optional. true sends them back to the invite list. Leave it out for false. |
sessionId |
Optional. The Guest Star session id. Leave it out for the session running now. |
Gives back: Nothing.
var answer = await Cb.Call("twitch.deleteGuestStarSlot", new { user = "coolviewer42", slot = "2" });
answer = cb.call("twitch.deleteGuestStarSlot", user="coolviewer42", slot="2")
twitch.deleteMessage¶
Deletes one message from your Twitch chat. Fails when Twitch is not connected.
| Value | What to put in |
|---|---|
messageId |
Optional. The id of the message. Leave it out for the chat message that triggered the action (%messageId%). |
Gives back: Nothing.
var answer = await Cb.Call("twitch.deleteMessage", new { messageId = "b1c2d3e4-1234-5678-9abc-def012345678" });
answer = cb.call("twitch.deleteMessage", messageId="b1c2d3e4-1234-5678-9abc-def012345678")
twitch.deleteReward¶
Deletes a channel point reward for good. Twitch only lets Cuebot change rewards that Cuebot made. Fails when Twitch is not connected.
| Value | What to put in |
|---|---|
reward |
Optional. The reward's title or id, like "Hydrate". Leave it out for the reward that was just redeemed. |
Gives back: Nothing.
var answer = await Cb.Call("twitch.deleteReward", new { reward = "Hydrate!" });
answer = cb.call("twitch.deleteReward", reward="Hydrate!")
twitch.emoteOnly¶
Turns emote-only chat on or off: viewers can only send emotes. Fails when Twitch is not connected.
| Value | What to put in |
|---|---|
enabled |
Optional. true turns it on, false turns it off. Leave it out for true. |
Gives back: Nothing.
var answer = await Cb.Call("twitch.emoteOnly", new { enabled = true });
answer = cb.call("twitch.emoteOnly", enabled=True)
twitch.endGuestStarSession¶
Ends a Twitch Guest Star session. Fails when Twitch is not connected.
| Value | What to put in |
|---|---|
sessionId |
Optional. The Guest Star session id. Leave it out for the session running now. |
Gives back: Nothing.
var answer = await Cb.Call("twitch.endGuestStarSession");
answer = cb.call("twitch.endGuestStarSession")
twitch.endPoll¶
Ends the running Twitch poll early. Fails when Twitch is not connected.
| Value | What to put in |
|---|---|
mode |
Optional. "Terminate" (the default) ends it and shows the results; "Archive" ends it and hides them. Capital letters do not matter. |
Gives back: Nothing.
var answer = await Cb.Call("twitch.endPoll");
answer = cb.call("twitch.endPoll")
twitch.followerMode¶
Turns follower-only chat on or off: only followers can chat, optionally after following for some minutes. Fails when Twitch is not connected.
| Value | What to put in |
|---|---|
enabled |
Optional. true turns it on, false turns it off. Leave it out for true. |
minutes |
Optional. How long someone must have followed, in minutes (0 to 129600, which is 3 months). Leave it out for 0. |
Gives back: Nothing.
var answer = await Cb.Call("twitch.followerMode", new { enabled = true, minutes = 10 });
answer = cb.call("twitch.followerMode", enabled=True, minutes=10)
twitch.getAdSchedule¶
Gets your Twitch ad schedule: when the next ad comes and how many snoozes you have. Fails when Twitch is not connected.
Gives back: An object with nextAdAt, lastAdAt, adDuration, prerollFreeTime, snoozeCount, snoozeRefreshAt, prerollFree and prerollFreeSeconds.
var answer = await Cb.Call("twitch.getAdSchedule");
answer = cb.call("twitch.getAdSchedule")
twitch.getBlockedTerms¶
Lists every blocked word or phrase of your Twitch channel. Fails when Twitch is not connected.
Gives back: A list, each with id and text.
var answer = await Cb.Call("twitch.getBlockedTerms");
answer = cb.call("twitch.getBlockedTerms")
twitch.getBot¶
Gives you your Twitch bot account, as set on the Twitch page. Works without asking Twitch.
Gives back: An object with userId, userName and connected. null when no bot account is signed in.
var answer = await Cb.Call("twitch.getBot");
answer = cb.call("twitch.getBot")
twitch.getBroadcaster¶
Gives you your signed-in Twitch account as Cuebot knows it. Works without asking Twitch.
Gives back: An object with userId, userName, connected (true when Twitch is connected) and scopes (the permissions you gave).
var answer = await Cb.Call("twitch.getBroadcaster");
answer = cb.call("twitch.getBroadcaster")
twitch.getBroadcasterInfo¶
Gets details about your own Twitch account, like partner or affiliate status. Fails when Twitch is not connected.
Gives back: An object with broadcasterUserId, broadcasterUserName, broadcasterUser, broadcasterType, broadcasterIsAffiliate, broadcasterIsPartner, broadcasterProfileImageUrl, broadcasterDescription, botUserId, botUserName and more.
var answer = await Cb.Call("twitch.getBroadcasterInfo");
answer = cb.call("twitch.getBroadcasterInfo")
twitch.getChannelInfo¶
Gets a Twitch channel's details: title, category, tags and more. Fails when the channel is not found. Fails when Twitch is not connected.
| Value | What to put in |
|---|---|
user |
Optional. A channel's login name or "id:12345". Leave it out for your own channel. |
Gives back: An object with channelId, channelUser, channelUserName, channelTitle, channelGame, channelGameId, channelTags, channelLanguage, channelContentLabels and channelIsBrandedContent.
var answer = await Cb.Call("twitch.getChannelInfo", new { user = "coolstreamer" });
answer = cb.call("twitch.getChannelInfo", user="coolstreamer")
twitch.getCharityCampaign¶
Gets your running Twitch charity campaign. Fails when Twitch is not connected.
Gives back: An object with charityActive, charityName, charityCurrent, charityTarget and charityCurrency. Values are empty when no campaign runs.
var answer = await Cb.Call("twitch.getCharityCampaign");
answer = cb.call("twitch.getCharityCampaign")
twitch.getCheermotes¶
Lists the Bits cheer emotes (cheermotes) that work in your channel, exactly as Twitch gives them. Fails when Twitch is not connected.
Gives back: A list of cheermotes in Twitch's own format (each with prefix, tiers and image links).
var answer = await Cb.Call("twitch.getCheermotes");
answer = cb.call("twitch.getCheermotes")
twitch.getClipDownloadUrls¶
Gets download links for clips of your channel. Twitch's links only work for a short time. Fails when Twitch is not connected.
| Value | What to put in |
|---|---|
clipId |
Optional. The clip id, or up to 10 ids separated by commas. Leave it out for %clipId% (for example from twitch.createClip). |
Gives back: An object with clipDownloadCount, clipDownloadUrl, clipLandscapeDownloadUrl and clipPortraitDownloadUrl (of the first clip), plus clipDownload0.clipId, clipDownload0.landscapeUrl and so on.
var answer = await Cb.Call("twitch.getClipDownloadUrls", new { clipId = "AwkwardHelplessSalamanderSwiftRage" });
answer = cb.call("twitch.getClipDownloadUrls", clipId="AwkwardHelplessSalamanderSwiftRage")
twitch.getClips¶
Lists clips of a Twitch channel or of a category, most viewed first. Handy for a clip player. Fails when Twitch is not connected.
| Value | What to put in |
|---|---|
user |
Optional. A channel's login name or "id:12345". Leave it (and gameId) out for your own channel. |
gameId |
Optional. A category id, to get that category's clips instead of a channel's. |
startedAt |
Optional. Only clips made after this date and time, like "2026-10-01T00:00:00Z". |
endedAt |
Optional. Only clips made before this date and time. |
count |
Optional. How many clips at most. Leave it out (or 0) for up to 1000. |
featured |
Optional. true gives only featured clips, false only the others. Leave it out for all. |
Gives back: A list of clips, each with id, url, embedUrl, broadcasterName, creatorName, title, viewCount, createdAt, thumbnailUrl, duration, isFeatured and more.
var answer = await Cb.Call("twitch.getClips", new { count = 10 });
answer = cb.call("twitch.getClips", count=10)
twitch.getFollowAge¶
Tells you if and how long a viewer has followed your Twitch channel. Fails when Twitch is not connected.
| Value | What to put in |
|---|---|
user |
Optional. A Twitch login name (a leading @ is fine) or "id:12345". Leave it out for the user who triggered the action. |
Gives back: An object with isFollowing, followedAt, followAgeDays, followAge (like "2 years, 3 months"), followDate, followAgeLong, followAgeShort, followAge.years and more.
var answer = await Cb.Call("twitch.getFollowAge", new { user = "coolviewer42" });
answer = cb.call("twitch.getFollowAge", user="coolviewer42")
twitch.getFollowerCount¶
Gets how many followers your Twitch channel has, and who followed last. Fails when Twitch is not connected.
Gives back: An object with followerCount, latestFollower, latestFollowerUserName and latestFollowerUserId.
var answer = await Cb.Call("twitch.getFollowerCount");
answer = cb.call("twitch.getFollowerCount")
twitch.getGuestStarInvites¶
Lists the people invited to your Twitch Guest Star session. Fails when Twitch is not connected.
| Value | What to put in |
|---|---|
sessionId |
Optional. The Guest Star session id. Leave it out for the session running now. |
Gives back: An object with guestStarInviteCount, guestStarInvites (user ids, separated by commas), and guestStarInvite0UserId, guestStarInvite0Status and so on.
var answer = await Cb.Call("twitch.getGuestStarInvites");
answer = cb.call("twitch.getGuestStarInvites")
twitch.getGuestStarSession¶
Gets your running Twitch Guest Star session and its guests. Fails when Twitch is not connected.
Gives back: An object with guestStarActive, guestStarSessionId, guestStarGuestCount, and guestStarGuest0, guestStarGuest0UserName, guestStarGuest0UserId, guestStarGuest0Slot, guestStarGuest0IsLive, guestStarGuest0Volume and so on.
var answer = await Cb.Call("twitch.getGuestStarSession");
answer = cb.call("twitch.getGuestStarSession")
twitch.getGuestStarSettings¶
Gets your Twitch Guest Star settings. Fails when Twitch is not connected.
Gives back: An object with guestStarSlotCount, guestStarLayout, guestStarModeratorSendLive, guestStarBrowserSourceAudio and guestStarBrowserSourceToken.
var answer = await Cb.Call("twitch.getGuestStarSettings");
answer = cb.call("twitch.getGuestStarSettings")
twitch.getLatestSubscriber¶
Tells you who subscribed last, as Cuebot saw it.
Gives back: An object with latestSubscriber.userName, latestSubscriber.userLogin, latestSubscriber.userId, latestSubscriber.tier (like "Tier1"), latestSubscriber.isGift and latestSubscriber.at.
var answer = await Cb.Call("twitch.getLatestSubscriber");
answer = cb.call("twitch.getLatestSubscriber")
twitch.getModerators¶
Lists every moderator of your Twitch channel. Fails when Twitch is not connected.
Gives back: A list, each with userId, userLogin and userName.
var answer = await Cb.Call("twitch.getModerators");
answer = cb.call("twitch.getModerators")
twitch.getPinnedMessage¶
Gets the message pinned in your Twitch chat right now. Fails when Twitch is not connected.
Gives back: An object with isPinned, pinnedMessage, pinnedMessageId, pinnedUser, pinnedUserName, pinnedUserId, pinnedBy, pinnedAt and pinnedUntil. Text values are empty when nothing is pinned.
var answer = await Cb.Call("twitch.getPinnedMessage");
answer = cb.call("twitch.getPinnedMessage")
twitch.getPoll¶
Gets your latest Twitch poll and its votes. Fails when Twitch is not connected.
Gives back: An object with pollId, pollTitle, pollStatus, pollIsActive, pollChoiceCount, pollChoice0, pollChoice0Votes and so on, active, plus poll.Title, poll.votes and more.
var answer = await Cb.Call("twitch.getPoll");
answer = cb.call("twitch.getPoll")
twitch.getPrediction¶
Gets your latest Twitch prediction and its bets. Fails when Twitch is not connected.
Gives back: An object with predictionId, predictionTitle, predictionStatus, predictionOutcomeCount, predictionOutcome0, predictionOutcome0Users, predictionOutcome0Points and so on, active, plus prediction.* details.
var answer = await Cb.Call("twitch.getPrediction");
answer = cb.call("twitch.getPrediction")
twitch.getPresentUser¶
Gets one person in your Twitch chat by their number in the list. Handy with a random number. Fails when Twitch is not connected.
| Value | What to put in |
|---|---|
index |
Optional. The number, starting at 0 for the first person. Leave it out for 0. |
Gives back: An object with presentUsersCount, presentUser (their name, or false when the number is too big), presentUserId, presentUserName and presentUserType.
var answer = await Cb.Call("twitch.getPresentUser", new { index = 3 });
answer = cb.call("twitch.getPresentUser", index=3)
twitch.getPresentViewers¶
Gets the people in your Twitch chat right now. Fails when Twitch is not connected.
Gives back: An object with presentViewerCount and presentViewers (their login names, separated by commas).
var answer = await Cb.Call("twitch.getPresentViewers");
answer = cb.call("twitch.getPresentViewers")
twitch.getRandomUsers¶
Picks random people from your Twitch chat. Handy for giveaways. Fails when Twitch is not connected.
| Value | What to put in |
|---|---|
count |
Optional. How many to pick. Leave it out for 1. |
excludeBroadcaster |
Optional. true (the default) leaves you and your bot out; false lets them be picked. |
Gives back: An object with randomUserCount, and randomUser0, randomUserName0, randomUserId0, randomUserType0 for the first pick, and so on.
var answer = await Cb.Call("twitch.getRandomUsers", new { count = 3 });
answer = cb.call("twitch.getRandomUsers", count=3)
twitch.getRewardCounter¶
Tells you how often a channel point reward was redeemed, in total and by one viewer. Cuebot counts these itself. Fails when Twitch is not connected.
| Value | What to put in |
|---|---|
reward |
Optional. The reward's title or id, like "Hydrate". Leave it out for the reward that was just redeemed. |
user |
Optional. The viewer to count: a login name or "id:12345". Leave it out for the user who triggered the action. |
Gives back: An object with counter (all redeems) and userCounter (that viewer's redeems).
var answer = await Cb.Call("twitch.getRewardCounter", new { reward = "Hydrate!" });
answer = cb.call("twitch.getRewardCounter", reward="Hydrate!")
twitch.getRewardInfo¶
Gets the settings of one channel point reward. Fails when no reward matches. Fails when Twitch is not connected.
| Value | What to put in |
|---|---|
reward |
Optional. The reward's title or id, like "Hydrate". Leave it out for the reward that was just redeemed. |
Gives back: An object with rewardId, rewardTitle, rewardPrompt, rewardCost, rewardEnabled, rewardPaused, rewardInStock, rewardBackgroundColor, rewardCooldown, rewardMaxPerStream, rewardMaxPerUser, rewardIsManageable and more.
var answer = await Cb.Call("twitch.getRewardInfo", new { reward = "Hydrate!" });
answer = cb.call("twitch.getRewardInfo", reward="Hydrate!")
twitch.getRewards¶
Lists every channel point reward of your Twitch channel. Fails when Twitch is not connected.
Gives back: A list of rewards, each with id, title, prompt, cost, backgroundColor, isEnabled, isPaused, isInStock, maxPerStream, globalCooldownSeconds, isManageable (true when Cuebot can change it) and more.
var answer = await Cb.Call("twitch.getRewards");
answer = cb.call("twitch.getRewards")
twitch.getRewardUserCounters¶
Tells you how often each viewer redeemed a channel point reward, as Cuebot counted it. Fails when no reward matches. Fails when Twitch is not connected.
| Value | What to put in |
|---|---|
reward |
The reward's title or id, like "Hydrate!". |
Gives back: An object with each viewer's user id and their count, like { "12345": 3 }.
var answer = await Cb.Call("twitch.getRewardUserCounters", new { reward = "Hydrate!" });
answer = cb.call("twitch.getRewardUserCounters", reward="Hydrate!")
twitch.getShieldMode¶
Checks whether Twitch Shield Mode is on. Fails when Twitch is not connected.
Gives back: An object with shieldModeActive and shieldModeModerator (who turned it on).
var answer = await Cb.Call("twitch.getShieldMode");
answer = cb.call("twitch.getShieldMode")
twitch.getStreamInfo¶
Checks whether a Twitch channel is live, with its viewers, title and uptime. Fails when Twitch is not connected.
| Value | What to put in |
|---|---|
user |
Optional. A channel's login name or "id:12345". Leave it out for your own channel. |
Gives back: An object with isLive, viewerCount, streamTitle, streamGame, streamStartedAt and uptimeSeconds. Values are empty or 0 when the channel is offline.
var answer = await Cb.Call("twitch.getStreamInfo");
answer = cb.call("twitch.getStreamInfo")
twitch.getSubCounter¶
Reads Cuebot's sub counter, for a sub goal or sub train.
Gives back: An object with subCounter.count, subCounter.rollover and subCounter.rolloverCount.
var answer = await Cb.Call("twitch.getSubCounter");
answer = cb.call("twitch.getSubCounter")
twitch.getSubscriberCount¶
Gets how many subscribers your Twitch channel has. Fails when Twitch is not connected.
Gives back: An object with subscriberCount and subPoints.
var answer = await Cb.Call("twitch.getSubscriberCount");
answer = cb.call("twitch.getSubscriberCount")
twitch.getSubStatus¶
Checks whether a viewer subscribes to your Twitch channel. Fails when Twitch is not connected.
| Value | What to put in |
|---|---|
user |
Optional. A Twitch login name (a leading @ is fine) or "id:12345". Leave it out for the user who triggered the action. |
Gives back: An object with isSubscribed, subTier, subIsGift and subGifter.
var answer = await Cb.Call("twitch.getSubStatus", new { user = "coolviewer42" });
answer = cb.call("twitch.getSubStatus", user="coolviewer42")
twitch.getTeamInfo¶
Gets the Twitch teams a channel belongs to. Fails when Twitch is not connected.
| Value | What to put in |
|---|---|
user |
Optional. A Twitch login name (a leading @ is fine) or "id:12345". Leave it out for the user who triggered the action. |
Gives back: An object with teamCount, teams (names, separated by commas) and teamName (the first team).
var answer = await Cb.Call("twitch.getTeamInfo", new { user = "coolstreamer" });
answer = cb.call("twitch.getTeamInfo", user="coolstreamer")
twitch.getUser¶
Looks up a Twitch user. Fails when Twitch is not connected.
| Value | What to put in |
|---|---|
user |
A Twitch login name (a leading @ is fine) or "id:12345", like "coolviewer42". |
Gives back: An object with id, login, displayName, type, broadcasterType, description, profileImageUrl, offlineImageUrl and createdAt. null when the user is not found.
var answer = await Cb.Call("twitch.getUser", new { user = "coolviewer42" });
answer = cb.call("twitch.getUser", user="coolviewer42")
twitch.getUserInfo¶
Gets lots of details about a Twitch user: profile, account age, mod/VIP/sub status and their channel. Fails when Twitch is not connected.
| Value | What to put in |
|---|---|
user |
Optional. A Twitch login name (a leading @ is fine) or "id:12345". Leave it out for the user who triggered the action. |
Gives back: An object with targetFound, targetUser, targetUserName, targetUserId, targetDescription, targetProfileImageUrl, targetCreatedAt, targetAccountAgeDays, targetIsModerator, targetIsVip, targetGame, targetTitle and more.
var answer = await Cb.Call("twitch.getUserInfo", new { user = "coolviewer42" });
answer = cb.call("twitch.getUserInfo", user="coolviewer42")
twitch.getVips¶
Lists every VIP of your Twitch channel. Fails when Twitch is not connected.
Gives back: A list, each with userId, userLogin and userName.
var answer = await Cb.Call("twitch.getVips");
answer = cb.call("twitch.getVips")
twitch.lockPrediction¶
Stops new bets on the running Twitch prediction. The result is decided later. Fails when Twitch is not connected.
Gives back: An object with locked (true), active and the prediction's details: prediction.Id, prediction.Title, prediction.outcome0.title and so on.
var answer = await Cb.Call("twitch.lockPrediction");
answer = cb.call("twitch.lockPrediction")
twitch.pinMessage¶
Pins a message at the top of your Twitch chat. Fails when Twitch is not connected.
| Value | What to put in |
|---|---|
messageId |
Optional. The id of the message. Leave it out for the chat message that triggered the action (%messageId%). |
duration |
Optional. How long to keep it pinned, in seconds (30 to 1800). Leave it out (or 0) to keep it until the stream ends. |
Gives back: Nothing.
var answer = await Cb.Call("twitch.pinMessage", new { duration = 120 });
answer = cb.call("twitch.pinMessage", duration=120)
twitch.removeBlockedTerm¶
Removes a word or phrase from your Twitch blocked terms. Fails when Twitch is not connected.
| Value | What to put in |
|---|---|
term |
The blocked text (upper or lower case does not matter) or its id. |
Gives back: true when it was removed, false when the channel has no such blocked term.
var answer = await Cb.Call("twitch.removeBlockedTerm", new { term = "buy followers" });
answer = cb.call("twitch.removeBlockedTerm", term="buy followers")
twitch.removeModerator¶
Takes moderator away from a viewer in your Twitch channel. Fails when Twitch is not connected.
| Value | What to put in |
|---|---|
user |
Optional. A Twitch login name (a leading @ is fine) or "id:12345". Leave it out for the user who triggered the action. |
Gives back: Nothing.
var answer = await Cb.Call("twitch.removeModerator", new { user = "coolviewer42" });
answer = cb.call("twitch.removeModerator", user="coolviewer42")
twitch.removeSuspiciousStatus¶
Removes the suspicious mark from a viewer, so their messages show normally again. Fails when Twitch is not connected.
| Value | What to put in |
|---|---|
user |
Optional. A Twitch login name (a leading @ is fine) or "id:12345". Leave it out for the user who triggered the action. |
Gives back: An object with suspiciousUser, suspiciousUserName, suspiciousUserId, suspiciousUserType, suspiciousStatusResult and suspiciousStatus ("NO_TREATMENT").
var answer = await Cb.Call("twitch.removeSuspiciousStatus", new { user = "coolviewer42" });
answer = cb.call("twitch.removeSuspiciousStatus", user="coolviewer42")
twitch.removeTag¶
Removes one tag from your Twitch channel. Upper or lower case and a leading # do not matter. Fails when Twitch is not connected.
| Value | What to put in |
|---|---|
tag |
The tag, like "Cozy". |
Gives back: Nothing.
var answer = await Cb.Call("twitch.removeTag", new { tag = "Cozy" });
answer = cb.call("twitch.removeTag", tag="Cozy")
twitch.removeVip¶
Takes VIP away from a viewer in your Twitch channel. Fails when Twitch is not connected.
| Value | What to put in |
|---|---|
user |
Optional. A Twitch login name (a leading @ is fine) or "id:12345". Leave it out for the user who triggered the action. |
Gives back: Nothing.
var answer = await Cb.Call("twitch.removeVip", new { user = "coolviewer42" });
answer = cb.call("twitch.removeVip", user="coolviewer42")
twitch.replyToMessage¶
Replies to a message in your Twitch chat, so it shows as an answer to it. Fails when Twitch is not connected.
| Value | What to put in |
|---|---|
message |
What to say, like "Good question!" |
messageId |
Optional. The id of the message to answer. Leave it out for the chat message that triggered the action (%messageId%). |
sendAs |
Optional. Who sends it: "Default" (your bot account when it is signed in, otherwise you), "Bot" or "Broadcaster". |
Gives back: Nothing.
var answer = await Cb.Call("twitch.replyToMessage", new { message = "Good question!" });
answer = cb.call("twitch.replyToMessage", message="Good question!")
twitch.resetRewardCounter¶
Sets the total redeem count of a channel point reward back to 0. Fails when Twitch is not connected.
| Value | What to put in |
|---|---|
reward |
Optional. The reward's title or id, like "Hydrate". Leave it out for the reward that was just redeemed. |
Gives back: Nothing.
var answer = await Cb.Call("twitch.resetRewardCounter", new { reward = "Hydrate!" });
answer = cb.call("twitch.resetRewardCounter", reward="Hydrate!")
twitch.resetRewardUserCounters¶
Sets every viewer's redeem count of a channel point reward back to 0. Fails when Twitch is not connected.
| Value | What to put in |
|---|---|
reward |
Optional. The reward's title or id, like "Hydrate". Leave it out for the reward that was just redeemed. |
Gives back: Nothing.
var answer = await Cb.Call("twitch.resetRewardUserCounters", new { reward = "Hydrate!" });
answer = cb.call("twitch.resetRewardUserCounters", reward="Hydrate!")
twitch.resetUserRewardCounter¶
Sets one viewer's redeem count of one channel point reward back to 0. Fails when the reward or the user is not found. Fails when Twitch is not connected.
| Value | What to put in |
|---|---|
reward |
The reward's title or id, like "Hydrate!". |
user |
A Twitch login name (a leading @ is fine) or "id:12345", like "coolviewer42". |
Gives back: true.
var answer = await Cb.Call("twitch.resetUserRewardCounter", new { reward = "Hydrate!", user = "coolviewer42" });
answer = cb.call("twitch.resetUserRewardCounter", reward="Hydrate!", user="coolviewer42")
twitch.resetUserRewardCounters¶
Sets one viewer's redeem counts of every channel point reward back to 0. Fails when the user is not found. Fails when Twitch is not connected.
| Value | What to put in |
|---|---|
user |
A Twitch login name (a leading @ is fine) or "id:12345", like "coolviewer42". |
Gives back: How many counters were reset.
var answer = await Cb.Call("twitch.resetUserRewardCounters", new { user = "coolviewer42" });
answer = cb.call("twitch.resetUserRewardCounters", user="coolviewer42")
twitch.resolveAutomod¶
Allows or denies a chat message that AutoMod held back. Fails when Twitch is not connected.
| Value | What to put in |
|---|---|
messageId |
Optional. The id of the held message. Leave it out for %messageId% of the AutoMod trigger. |
decision |
Optional. "Allow" (the default) shows the message; "Deny" throws it away. Capital letters do not matter. |
Gives back: Nothing.
var answer = await Cb.Call("twitch.resolveAutomod", new { decision = "Deny" });
answer = cb.call("twitch.resolveAutomod", decision="Deny")
twitch.resolvePrediction¶
Picks the winning outcome of your Twitch prediction and pays out the points. Fails when Twitch is not connected.
| Value | What to put in |
|---|---|
winner |
The winning outcome: its title, like "Yes", or its number (1, 2, ...). |
title |
Optional. Only resolve a prediction with this title. Leave it out for the latest prediction. |
Gives back: An object with success (true), the prediction's details (prediction.Id, prediction.Title, prediction.outcome0.title and so on) and prediction.winningOutcome.title, .users and .points.
var answer = await Cb.Call("twitch.resolvePrediction", new { winner = "Yes" });
answer = cb.call("twitch.resolvePrediction", winner="Yes")
twitch.runAd¶
Starts an ad break on your Twitch stream right now. Fails when Twitch is not connected.
| Value | What to put in |
|---|---|
length |
Optional. How long, in seconds: 30, 60, 90, 120, 150 or 180. Leave it out for 30. |
Gives back: An object with adLength and adRetryAfter (seconds until you can run another one).
var answer = await Cb.Call("twitch.runAd", new { length = 60 });
answer = cb.call("twitch.runAd", length=60)
twitch.sendAndPinMessage¶
Sends a message in your Twitch chat as yourself (not the bot) and pins it right away. Fails when the message is empty. Fails when Twitch is not connected.
| Value | What to put in |
|---|---|
message |
What to say and pin, like "Giveaway: type !join" |
duration |
Optional. How long to keep it pinned, in seconds. Leave it out (or 0) to keep it until the stream ends. |
Gives back: The id of the new message.
var answer = await Cb.Call("twitch.sendAndPinMessage", new { message = "Giveaway: type !join", duration = 300 });
answer = cb.call("twitch.sendAndPinMessage", message="Giveaway: type !join", duration=300)
twitch.sendAnnouncement¶
Posts an announcement in your Twitch chat: a highlighted message with a coloured bar. Fails when Twitch is not connected.
| Value | What to put in |
|---|---|
message |
What to announce, like "Giveaway starts in 5 minutes!" |
color |
Optional. "primary" (your channel colour, the default), "blue", "green", "orange" or "purple". |
Gives back: Nothing.
var answer = await Cb.Call("twitch.sendAnnouncement", new { message = "Giveaway starts in 5 minutes!", color = "purple" });
answer = cb.call("twitch.sendAnnouncement", message="Giveaway starts in 5 minutes!", color="purple")
twitch.sendGuestStarInvite¶
Invites a viewer to your Twitch Guest Star session. Fails when Twitch is not connected.
| Value | What to put in |
|---|---|
user |
Optional. A Twitch login name (a leading @ is fine) or "id:12345". Leave it out for the user who triggered the action. |
sessionId |
Optional. The Guest Star session id. Leave it out for the session running now. |
Gives back: Nothing.
var answer = await Cb.Call("twitch.sendGuestStarInvite", new { user = "coolviewer42" });
answer = cb.call("twitch.sendGuestStarInvite", user="coolviewer42")
twitch.sendMessage¶
Sends a message in your Twitch chat. Empty text is skipped. Fails when Twitch is not connected.
| Value | What to put in |
|---|---|
message |
What to say, like "Thanks for the follow!" |
sendAs |
Optional. Who sends it: "Default" (your bot account when it is signed in, otherwise you), "Bot" or "Broadcaster". |
Gives back: Nothing.
var answer = await Cb.Call("twitch.sendMessage", new { message = "Thanks for the follow!" });
answer = cb.call("twitch.sendMessage", message="Thanks for the follow!")
twitch.sendShoutout¶
Sends an official Twitch shoutout to another channel, so your viewers can follow them with one click. Fails when Twitch is not connected.
| Value | What to put in |
|---|---|
user |
Optional. A Twitch login name (a leading @ is fine) or "id:12345". Leave it out for the user who triggered the action. |
Gives back: An object with shoutoutSuccess (true).
var answer = await Cb.Call("twitch.sendShoutout", new { user = "coolstreamer" });
answer = cb.call("twitch.sendShoutout", user="coolstreamer")
twitch.sendWhisper¶
Sends a private whisper to a Twitch viewer. The sending account needs a verified phone number on Twitch. Fails when Twitch is not connected.
| Value | What to put in |
|---|---|
user |
Optional. A Twitch login name (a leading @ is fine) or "id:12345". Leave it out for the user who triggered the action. |
message |
What to whisper, like "Your code is 1234". |
sendAs |
Optional. Who sends it: "Default" (your bot account when it is signed in, otherwise you), "Bot" or "Broadcaster". |
Gives back: Nothing.
var answer = await Cb.Call("twitch.sendWhisper", new { user = "coolviewer42", message = "Thanks for the raid!" });
answer = cb.call("twitch.sendWhisper", user="coolviewer42", message="Thanks for the raid!")
twitch.setBrandedContent¶
Turns the branded content (sponsored stream) label on your Twitch channel on or off. Fails when Twitch is not connected.
| Value | What to put in |
|---|---|
enabled |
Optional. true turns it on, false turns it off. Leave it out for true. |
Gives back: An object with success (true).
var answer = await Cb.Call("twitch.setBrandedContent", new { enabled = true });
answer = cb.call("twitch.setBrandedContent", enabled=True)
twitch.setContentLabel¶
Turns one content warning label on your Twitch channel on or off, like "Strong language". Fails when Twitch is not connected.
| Value | What to put in |
|---|---|
label |
Optional. "DrugsIntoxication", "SexualThemes", "ViolentGraphic", "Gambling" or "ProfanityVulgarity" (strong language, the default). |
enabled |
Optional. true turns it on, false turns it off. Leave it out for true. |
Gives back: Nothing.
var answer = await Cb.Call("twitch.setContentLabel", new { label = "ProfanityVulgarity", enabled = true });
answer = cb.call("twitch.setContentLabel", label="ProfanityVulgarity", enabled=True)
twitch.setGame¶
Changes the category (game) of your Twitch stream. It picks the exact name, or else the best search match. Fails when nothing matches. Fails when Twitch is not connected.
| Value | What to put in |
|---|---|
game |
The category or game name, like "Just Chatting". |
Gives back: An object with gameId, gameName, gameBoxArt and gameSuccess (true).
var answer = await Cb.Call("twitch.setGame", new { game = "Just Chatting" });
answer = cb.call("twitch.setGame", game="Just Chatting")
twitch.setRewardColor¶
Changes the background colour of a channel point reward. Twitch only lets Cuebot change rewards that Cuebot made. Fails when Twitch is not connected.
| Value | What to put in |
|---|---|
reward |
Optional. The reward's title or id, like "Hydrate". Leave it out for the reward that was just redeemed. |
color |
Optional. The colour as #RRGGBB, like "#FF6600". Leave it out for Twitch purple (#9147FF). |
random |
Optional. true picks a random colour instead. Leave it out for false. |
Gives back: Nothing.
var answer = await Cb.Call("twitch.setRewardColor", new { reward = "Hydrate!", color = "#FF6600" });
answer = cb.call("twitch.setRewardColor", reward="Hydrate!", color="#FF6600")
twitch.setRewardCooldown¶
Sets how long everyone must wait between redeems of a channel point reward. Twitch only lets Cuebot change rewards that Cuebot made. Fails when Twitch is not connected.
| Value | What to put in |
|---|---|
reward |
Optional. The reward's title or id, like "Hydrate". Leave it out for the reward that was just redeemed. |
seconds |
Optional. The wait in seconds, like 60. 0 (the default) turns the cooldown off. |
Gives back: Nothing.
var answer = await Cb.Call("twitch.setRewardCooldown", new { reward = "Hydrate!", seconds = 300 });
answer = cb.call("twitch.setRewardCooldown", reward="Hydrate!", seconds=300)
twitch.setRewardCost¶
Changes the price of a channel point reward. Twitch only lets Cuebot change rewards that Cuebot made. Fails when Twitch is not connected.
| Value | What to put in |
|---|---|
reward |
Optional. The reward's title or id, like "Hydrate". Leave it out for the reward that was just redeemed. |
cost |
Optional. The new price in channel points. Leave it out for 100. |
Gives back: Nothing.
var answer = await Cb.Call("twitch.setRewardCost", new { reward = "Hydrate!", cost = 1000 });
answer = cb.call("twitch.setRewardCost", reward="Hydrate!", cost=1000)
twitch.setRewardEnabled¶
Turns a channel point reward on or off. A turned-off reward is hidden from viewers. Twitch only lets Cuebot change rewards that Cuebot made. Fails when Twitch is not connected.
| Value | What to put in |
|---|---|
reward |
Optional. The reward's title or id, like "Hydrate". Leave it out for the reward that was just redeemed. |
enabled |
Optional. true shows it, false hides it. Leave it out for true. |
Gives back: Nothing.
var answer = await Cb.Call("twitch.setRewardEnabled", new { reward = "Hydrate!", enabled = true });
answer = cb.call("twitch.setRewardEnabled", reward="Hydrate!", enabled=True)
twitch.setRewardGroupEnabled¶
Turns every reward in a reward group on or off at once. Rewards Cuebot did not make are skipped. Fails when the group has no rewards. Fails when Twitch is not connected.
| Value | What to put in |
|---|---|
group |
The reward group name, as set on the Twitch page (Rewards tab), like "Games". |
state |
Optional. "Enabled" (the default), "Disabled" or "Toggle" (on, unless one of them is already on). |
Gives back: An object with rewardsChanged and rewardsSkipped (rewards Cuebot could not change).
var answer = await Cb.Call("twitch.setRewardGroupEnabled", new { group = "Games", state = "Disabled" });
answer = cb.call("twitch.setRewardGroupEnabled", group="Games", state="Disabled")
twitch.setRewardGroupPaused¶
Pauses or unpauses every reward in a reward group at once. Rewards Cuebot did not make are skipped. Fails when the group has no rewards. Fails when Twitch is not connected.
| Value | What to put in |
|---|---|
group |
The reward group name, as set on the Twitch page (Rewards tab), like "Games". |
state |
Optional. "Paused" (the default), "Unpaused" or "Toggle" (paused, unless one of them is already paused). |
Gives back: An object with rewardsChanged and rewardsSkipped (rewards Cuebot could not change).
var answer = await Cb.Call("twitch.setRewardGroupPaused", new { group = "Games", state = "Paused" });
answer = cb.call("twitch.setRewardGroupPaused", group="Games", state="Paused")
twitch.setRewardMaxPerStream¶
Sets how many times a channel point reward can be redeemed per stream, by everyone together. Twitch only lets Cuebot change rewards that Cuebot made. Fails when Twitch is not connected.
| Value | What to put in |
|---|---|
reward |
Optional. The reward's title or id, like "Hydrate". Leave it out for the reward that was just redeemed. |
max |
Optional. The limit, like 10. 0 (the default) removes the limit. |
additive |
Optional. true adds max to the current limit (a negative number lowers it) instead of replacing it. Leave it out for false. |
Gives back: Nothing.
var answer = await Cb.Call("twitch.setRewardMaxPerStream", new { reward = "Hydrate!", max = 10 });
answer = cb.call("twitch.setRewardMaxPerStream", reward="Hydrate!", max=10)
twitch.setRewardMaxPerUser¶
Sets how many times each viewer can redeem a channel point reward per stream. Twitch only lets Cuebot change rewards that Cuebot made. Fails when Twitch is not connected.
| Value | What to put in |
|---|---|
reward |
Optional. The reward's title or id, like "Hydrate". Leave it out for the reward that was just redeemed. |
max |
Optional. The limit, like 1. 0 (the default) removes the limit. |
additive |
Optional. true adds max to the current limit (a negative number lowers it) instead of replacing it. Leave it out for false. |
Gives back: Nothing.
var answer = await Cb.Call("twitch.setRewardMaxPerUser", new { reward = "Hydrate!", max = 1 });
answer = cb.call("twitch.setRewardMaxPerUser", reward="Hydrate!", max=1)
twitch.setRewardPaused¶
Pauses or unpauses a channel point reward. Viewers see a paused reward but cannot redeem it. Twitch only lets Cuebot change rewards that Cuebot made. Fails when Twitch is not connected.
| Value | What to put in |
|---|---|
reward |
Optional. The reward's title or id, like "Hydrate". Leave it out for the reward that was just redeemed. |
paused |
Optional. true pauses it, false unpauses it. Leave it out for true. |
Gives back: Nothing.
var answer = await Cb.Call("twitch.setRewardPaused", new { reward = "Hydrate!", paused = true });
answer = cb.call("twitch.setRewardPaused", reward="Hydrate!", paused=True)
twitch.setRewardPrompt¶
Changes the text viewers see under a channel point reward. Twitch only lets Cuebot change rewards that Cuebot made. Fails when Twitch is not connected.
| Value | What to put in |
|---|---|
reward |
Optional. The reward's title or id, like "Hydrate". Leave it out for the reward that was just redeemed. |
prompt |
The new text, like "Make me drink some water". |
Gives back: Nothing.
var answer = await Cb.Call("twitch.setRewardPrompt", new { reward = "Hydrate!", prompt = "Make me drink some water" });
answer = cb.call("twitch.setRewardPrompt", reward="Hydrate!", prompt="Make me drink some water")
twitch.setRewardTitle¶
Changes the name of a channel point reward. Twitch only lets Cuebot change rewards that Cuebot made. Fails when Twitch is not connected.
| Value | What to put in |
|---|---|
reward |
Optional. The reward's title or id, like "Hydrate". Leave it out for the reward that was just redeemed. |
title |
The new name, like "Drink water!". |
Gives back: Nothing.
var answer = await Cb.Call("twitch.setRewardTitle", new { reward = "Hydrate!", title = "Drink water!" });
answer = cb.call("twitch.setRewardTitle", reward="Hydrate!", title="Drink water!")
twitch.setShieldMode¶
Turns Twitch Shield Mode on or off. It locks chat down quickly during a hate raid. Fails when Twitch is not connected.
| Value | What to put in |
|---|---|
enabled |
Optional. true turns Shield Mode on, false turns it off. Leave it out for true. |
Gives back: Nothing.
var answer = await Cb.Call("twitch.setShieldMode", new { enabled = true });
answer = cb.call("twitch.setShieldMode", enabled=True)
twitch.setSubCounter¶
Sets Cuebot's sub counter to a number, for example to start a new sub goal.
| Value | What to put in |
|---|---|
count |
Optional. The new count, a whole number of 0 or more. Leave it out for 0. |
rolloverCount |
Optional. The new rollover count. Leave it out to keep it. |
Gives back: An object with setResult (false when count is not a valid number) and, when it worked, subCounter.count, subCounter.rollover and subCounter.rolloverCount.
var answer = await Cb.Call("twitch.setSubCounter", new { count = 0 });
answer = cb.call("twitch.setSubCounter", count=0)
twitch.setTags¶
Replaces all tags of your Twitch channel. Twitch allows at most 10. Fails when Twitch is not connected.
| Value | What to put in |
|---|---|
tags |
The tags as text, separated by commas or spaces, like "English, Chill, Cozy". |
Gives back: Nothing.
var answer = await Cb.Call("twitch.setTags", new { tags = "English, Chill, Cozy" });
answer = cb.call("twitch.setTags", tags="English, Chill, Cozy")
twitch.setTitle¶
Changes the title of your Twitch stream. Fails when Twitch is not connected.
| Value | What to put in |
|---|---|
title |
The new title, like "Chill games with chat". |
Gives back: An object with titleSuccess (true).
var answer = await Cb.Call("twitch.setTitle", new { title = "Chill games with chat" });
answer = cb.call("twitch.setTitle", title="Chill games with chat")
twitch.slowMode¶
Turns slow mode on or off: viewers must wait between messages. Fails when Twitch is not connected.
| Value | What to put in |
|---|---|
enabled |
Optional. true turns it on, false turns it off. Leave it out for true. |
seconds |
Optional. The wait between messages, in seconds (3 to 120). Leave it out for 30. |
Gives back: Nothing.
var answer = await Cb.Call("twitch.slowMode", new { enabled = true, seconds = 10 });
answer = cb.call("twitch.slowMode", enabled=True, seconds=10)
twitch.snoozeAd¶
Pushes your next scheduled Twitch ad back, if you have snoozes left. Fails when Twitch is not connected.
Gives back: An object with snooze.success, nextAdAt, lastAdAt, adDuration, prerollFreeTime, snoozeCount, snoozeRefreshAt, prerollFree and prerollFreeSeconds.
var answer = await Cb.Call("twitch.snoozeAd");
answer = cb.call("twitch.snoozeAd")
twitch.startRaid¶
Starts a raid to another Twitch channel. Fails when the channel is not found. Fails when Twitch is not connected.
| Value | What to put in |
|---|---|
user |
Optional. A Twitch login name (a leading @ is fine) or "id:12345". Leave it out for the user who triggered the action. |
Gives back: An object with startRaidSuccess (true).
var answer = await Cb.Call("twitch.startRaid", new { user = "coolstreamer" });
answer = cb.call("twitch.startRaid", user="coolstreamer")
twitch.subscriberMode¶
Turns subscriber-only chat on or off. Fails when Twitch is not connected.
| Value | What to put in |
|---|---|
enabled |
Optional. true turns it on, false turns it off. Leave it out for true. |
Gives back: Nothing.
var answer = await Cb.Call("twitch.subscriberMode", new { enabled = true });
answer = cb.call("twitch.subscriberMode", enabled=True)
twitch.timeout¶
Times out a viewer in your Twitch chat, so they cannot chat for a while. Fails when Twitch is not connected.
| Value | What to put in |
|---|---|
user |
Optional. A Twitch login name (a leading @ is fine) or "id:12345". Leave it out for the user who triggered the action. |
duration |
Optional. How long, in seconds (1 second to 14 days). Leave it out for 600 (10 minutes). |
reason |
Optional. Why, like "Calm down". |
Gives back: An object with timedOutUser (display name), timedOutUserName (login), timedOutUserId, timedOutUserType ("twitch") and timeoutResult (true).
var answer = await Cb.Call("twitch.timeout", new { user = "coolviewer42", duration = 300, reason = "Calm down" });
answer = cb.call("twitch.timeout", user="coolviewer42", duration=300, reason="Calm down")
twitch.unban¶
Lets a banned viewer chat in your Twitch channel again. Fails when Twitch is not connected.
| Value | What to put in |
|---|---|
user |
Optional. A Twitch login name (a leading @ is fine) or "id:12345". Leave it out for the user who triggered the action. |
Gives back: An object with unbannedUser (display name), unbannedUserName (login), unbannedUserId, unbannedUserType ("twitch") and unbanResult (true).
var answer = await Cb.Call("twitch.unban", new { user = "coolviewer42" });
answer = cb.call("twitch.unban", user="coolviewer42")
twitch.uniqueChat¶
Turns unique chat on or off: viewers cannot post the same message twice in a row. Fails when Twitch is not connected.
| Value | What to put in |
|---|---|
enabled |
Optional. true turns it on, false turns it off. Leave it out for true. |
Gives back: Nothing.
var answer = await Cb.Call("twitch.uniqueChat", new { enabled = true });
answer = cb.call("twitch.uniqueChat", enabled=True)
twitch.unpinMessage¶
Unpins a message in your Twitch chat. Fails when nothing is pinned. Fails when Twitch is not connected.
| Value | What to put in |
|---|---|
messageId |
Optional. The id of the pinned message. Leave it out for the message pinned now. |
Gives back: Nothing.
var answer = await Cb.Call("twitch.unpinMessage");
answer = cb.call("twitch.unpinMessage")
twitch.untimeout¶
Ends a viewer's timeout early, so they can chat again. Fails when Twitch is not connected.
| Value | What to put in |
|---|---|
user |
Optional. A Twitch login name (a leading @ is fine) or "id:12345". Leave it out for the user who triggered the action. |
Gives back: An object with unTimedOutUser (display name), unTimedOutUserName (login), unTimedOutUserId, unTimedOutUserType ("twitch") and unTimedOutResult (true).
var answer = await Cb.Call("twitch.untimeout", new { user = "coolviewer42" });
answer = cb.call("twitch.untimeout", user="coolviewer42")
twitch.updateGuestStarSettings¶
Changes your Twitch Guest Star settings. Anything left at its default stays as it is. Fails when Twitch is not connected.
| Value | What to put in |
|---|---|
slotCount |
Optional. How many guest slots, 1 to 6. Leave it out (or 0) to keep it. |
layout |
Optional. "TILED_LAYOUT", "SCREENSHARE_LAYOUT", "HORIZONTAL_LAYOUT", "VERTICAL_LAYOUT" or "Keep" (the default). |
moderatorSendLive |
Optional. Whether moderators can send guests live: "On", "Off" or "Keep" (the default). |
browserSourceAudio |
Optional. Whether the browser sources play audio: "On", "Off" or "Keep" (the default). |
regenerateBrowserSources |
Optional. true makes new browser source links; the old ones stop working. Leave it out for false. |
Gives back: Nothing.
var answer = await Cb.Call("twitch.updateGuestStarSettings", new { slotCount = 4, layout = "TILED_LAYOUT" });
answer = cb.call("twitch.updateGuestStarSettings", slotCount=4, layout="TILED_LAYOUT")
twitch.updateGuestStarSlot¶
Moves a Twitch Guest Star guest from one slot to another. Fails when Twitch is not connected.
| Value | What to put in |
|---|---|
slot |
Optional. The slot the guest is in now, like "1". Leave it out for 1. |
toSlot |
Optional. The slot to move them to, like "3". Leave it out for 1. |
sessionId |
Optional. The Guest Star session id. Leave it out for the session running now. |
Gives back: Nothing.
var answer = await Cb.Call("twitch.updateGuestStarSlot", new { slot = "1", toSlot = "3" });
answer = cb.call("twitch.updateGuestStarSlot", slot="1", toSlot="3")
twitch.updateGuestStarSlotSettings¶
Changes audio, video, live state or volume of one Twitch Guest Star slot. Fails when Twitch is not connected.
| Value | What to put in |
|---|---|
slot |
Optional. The slot number, from 1 up to the number of slots, like "2". Leave it out for 1. |
audio |
Optional. The guest's audio: "On", "Off" or "Keep" (the default, leaves it as it is). |
video |
Optional. The guest's video: "On", "Off" or "Keep" (the default, leaves it as it is). |
live |
Optional. Whether the guest is live on stream: "On", "Off" or "Keep" (the default, leaves it as it is). |
volume |
Optional. Volume from 0 to 100. Leave it out (or -1) to keep it. |
sessionId |
Optional. The Guest Star session id. Leave it out for the session running now. |
Gives back: Nothing.
var answer = await Cb.Call("twitch.updateGuestStarSlotSettings", new { slot = "2", audio = "Off" });
answer = cb.call("twitch.updateGuestStarSlotSettings", slot="2", audio="Off")
twitch.updatePinnedDuration¶
Changes how long the pinned message stays pinned, counting from now. Fails when Twitch is not connected.
| Value | What to put in |
|---|---|
messageId |
Optional. The id of the pinned message. Leave it out for the message pinned now. |
duration |
Optional. Seconds from now (30 to 1800). 0 keeps it until the stream ends. Leave it out for 60. |
Gives back: Nothing.
var answer = await Cb.Call("twitch.updatePinnedDuration", new { duration = 300 });
answer = cb.call("twitch.updatePinnedDuration", duration=300)
twitch.updateRedemption¶
Marks a channel point redemption as done, or cancels it and gives the points back. Only works for rewards Cuebot made. Fails when Twitch is not connected.
| Value | What to put in |
|---|---|
rewardId |
Optional. The reward id. Leave it out for %rewardId% of the redemption trigger. |
redemptionId |
Optional. The redemption id. Leave it out for %redemptionId% of the redemption trigger. |
status |
Optional. "Fulfil" (the default) marks it done; "Cancel" refunds the points. Capital letters do not matter. |
Gives back: Nothing.
var answer = await Cb.Call("twitch.updateRedemption", new { status = "Cancel" });
answer = cb.call("twitch.updateRedemption", status="Cancel")
twitch.updateReward¶
Changes the name, text and price of a channel point reward in one go. Empty values stay as they are. Twitch only lets Cuebot change rewards that Cuebot made. Fails when Twitch is not connected.
| Value | What to put in |
|---|---|
reward |
Optional. The reward's title or id, like "Hydrate". Leave it out for the reward that was just redeemed. |
title |
Optional. The new name. Leave it empty to keep it. |
prompt |
Optional. The new text. Leave it empty to keep it. |
cost |
Optional. A number. With "Set" it becomes the new price; with the other operators it changes the current price (never below 1). |
operator |
Optional. "Set" (the default), "Add", "Subtract", "Multiply" or "Divide". |
Gives back: An object with rewardCost (the price now).
var answer = await Cb.Call("twitch.updateReward", new Dictionary<string, object?> { ["reward"] = "Hydrate!", ["cost"] = 100, ["operator"] = "Add" });
answer = cb.call("twitch.updateReward", reward="Hydrate!", cost=100, operator="Add")
twitch.updateStreamInfo¶
Changes the title, category and tags of your Twitch stream in one go. Anything you leave empty stays as it is. Fails when Twitch is not connected.
| Value | What to put in |
|---|---|
title |
Optional. The new title. Leave it empty to keep it. |
game |
Optional. The new category or game name, like "Minecraft". Leave it empty to keep it. |
tags |
Optional. New tags as text, separated by commas, like "English, Chill". Leave it empty to keep them. |
Gives back: Nothing.
var answer = await Cb.Call("twitch.updateStreamInfo", new { title = "Building a castle", game = "Minecraft" });
answer = cb.call("twitch.updateStreamInfo", title="Building a castle", game="Minecraft")
twitch.warn¶
Sends a viewer an official Twitch warning. Fails when Twitch is not connected.
| Value | What to put in |
|---|---|
user |
Optional. A Twitch login name (a leading @ is fine) or "id:12345". Leave it out for the user who triggered the action. |
reason |
The warning text they will see, like "Please keep it friendly". |
Gives back: An object with warnedUser (display name), warnedUserName (login), warnedUserId, warnedUserType ("twitch") and warnedResult (true).
var answer = await Cb.Call("twitch.warn", new { user = "coolviewer42", reason = "Please keep it friendly" });
answer = cb.call("twitch.warn", user="coolviewer42", reason="Please keep it friendly")