Twitch.SharedChatCommunitySubGift
WebSocket event schema, payload, and examples
cumulative_total
integer
id
string
isFromSharedChatGuest
boolean required
isInSharedChat
boolean required
isSharedChatHost
boolean required
isTest
boolean required
messageId
string
recipients
TwitchBaseUser[]
id
string
login
string
name
string
type
string
source
object required
id
string
login
string
name
string
type
string
sourceBadges
TwitchBadge[]
imageUrl
string
info
string
name
string
version
string
sourceMessageId
string
sub_tier
string
systemMessage
string
total
integer required
user
object required
badges
TwitchBadge[]
imageUrl
string
info
string
name
string
version
string
color
string
id
string
login
string
monthsSubscribed
integer required
name
string
role
integer required
| Value | Name |
|---|---|
| 0 | Unknown |
| 1 | Viewer |
| 2 | Vip |
| 3 | Moderator |
| 4 | Broadcaster |
subscribed
boolean required
subscriptionTier
string
type
string
Schema
The JSON Schema for the event payload, if available.
schema.json
{
"$schema": "http://json-schema.org/draft-04/schema#",
"title": "TwitchChatNotification_SharedCommunitySubGiftEvent",
"type": "object",
"additionalProperties": false,
"properties": {
"user": {
"oneOf": [
{
"type": "null"
},
{
"$ref": "#/$defs/TwitchUser"
}
]
},
"source": {
"oneOf": [
{
"type": "null"
},
{
"$ref": "#/$defs/TwitchBaseUser"
}
]
},
"sourceMessageId": {
"type": [
"null",
"string"
]
},
"sourceBadges": {
"type": [
"array",
"null"
],
"items": {
"$ref": "#/$defs/TwitchBadge"
}
},
"messageId": {
"type": [
"null",
"string"
]
},
"systemMessage": {
"type": [
"null",
"string"
]
},
"isTest": {
"type": "boolean"
},
"isInSharedChat": {
"type": "boolean"
},
"isSharedChatHost": {
"type": "boolean"
},
"isFromSharedChatGuest": {
"type": "boolean"
},
"id": {
"type": [
"null",
"string"
]
},
"total": {
"type": "integer"
},
"cumulative_total": {
"type": [
"integer",
"null"
]
},
"sub_tier": {
"type": [
"null",
"string"
]
},
"recipients": {
"type": [
"array",
"null"
],
"items": {
"$ref": "#/$defs/TwitchBaseUser"
}
}
},
"$defs": {
"TwitchUser": {
"type": "object",
"additionalProperties": false,
"properties": {
"id": {
"type": [
"null",
"string"
]
},
"login": {
"type": [
"null",
"string"
]
},
"name": {
"type": [
"null",
"string"
]
},
"type": {
"type": [
"null",
"string"
]
},
"role": {
"$ref": "#/$defs/ViewerRole"
},
"badges": {
"type": [
"array",
"null"
],
"items": {
"$ref": "#/$defs/TwitchBadge"
}
},
"color": {
"type": [
"null",
"string"
]
},
"subscribed": {
"type": "boolean"
},
"subscriptionTier": {
"type": [
"null",
"string"
]
},
"monthsSubscribed": {
"type": "integer"
}
}
},
"ViewerRole": {
"type": "integer",
"description": "",
"x-enum-names": [
"Unknown",
"Viewer",
"Vip",
"Moderator",
"Broadcaster"
],
"x-enum-descriptions": [
null,
null,
null,
null,
null
],
"enum": [
0,
1,
2,
3,
4
]
},
"TwitchBadge": {
"type": "object",
"additionalProperties": false,
"properties": {
"name": {
"type": [
"null",
"string"
]
},
"version": {
"type": [
"null",
"string"
]
},
"imageUrl": {
"type": [
"null",
"string"
]
},
"info": {
"type": [
"null",
"string"
]
}
}
},
"TwitchBaseUser": {
"type": "object",
"additionalProperties": false,
"properties": {
"id": {
"type": [
"null",
"string"
]
},
"login": {
"type": [
"null",
"string"
]
},
"name": {
"type": [
"null",
"string"
]
},
"type": {
"type": [
"null",
"string"
]
}
}
}
}
}
JSON Payload
An example JSON payload for the event, automatically generated using JSONSchemaFaker
example.json
{
"user": null,
"source": {},
"sourceMessageId": "Dp2UtmFQL",
"sourceBadges": [
{
"name": null,
"version": null,
"imageUrl": null,
"info": "bk0EY"
},
{
"name": null,
"version": null,
"imageUrl": "Om",
"info": "FmrseOQQ5"
},
{
"name": "6iga",
"version": null,
"imageUrl": "",
"info": "RlG"
},
{
"name": null,
"version": "AJuKuTsB0R",
"imageUrl": "HsgR",
"info": "fDYi8lRRn"
},
{
"name": null,
"version": null,
"imageUrl": "uXyi1waTN",
"info": "LE"
}
],
"messageId": null,
"systemMessage": "rub",
"isTest": true,
"isInSharedChat": false,
"isSharedChatHost": false,
"isFromSharedChatGuest": false,
"id": null,
"total": 122,
"cumulative_total": -131,
"sub_tier": "u3uE",
"recipients": null
}
Client Example
Example code showing how to subscribe to this event using the Streamer.bot WebSocket Client
index.js
// Initialize the Streamer.bot WebSocket Client
const client = new StreamerbotClient();
// Subscribe to "Twitch.SharedChatCommunitySubGift" events and register a callback
client.on('Twitch.SharedChatCommunitySubGift', ({ event, data }) => {
// Code here will run every time the event is received!
console.log('Received event:', event.source, event.type);
console.log('Event data:', data);
});
 Â