Skip to content

Youtube.Message

A chat message.

  • Platform: youtube
  • Shape: chat
  • Source event: Youtube.Message
Widget.on("Youtube.Message", (event) => {
// event.user, event.platform…
});
  • user (string): Display name; «Anonymous» for anonymous gifts.
  • userId (string): User id on its platform.
  • userLogin (string): Login, lowercase.
  • color (string): Name color (#RRGGBB) or empty.
  • role (1 | 2 | 3 | 4): 1 viewer, 2 VIP, 3 moderator, 4 broadcaster.
  • badges (ChatBadge[]): Badges, with their image.
  • message (string): The message, as plain text.
  • parts (MessagePart[]): The message in parts (text, emotes and cheers), for Widget.dom.renderMessage.
  • messageId (string): Message id; the one messageDeleted carries.
  • firstMessage (boolean): First message in the channel.
  • highlighted (boolean): Highlighted with channel points.
  • reply (ChatReply | null): Who it replies to, or null.

It also carries platform (the source platform) and raw (the original payload).

The example payload that reaches the Studio simulator:

{
"message": "string",
"meta": [
{
"FirstMessage": true
}
],
"emotes": [
{
"imageUrl": "string",
"name": "string",
"type": "string"
}
],
"parts": [
{
"type": "text",
"text": "¡Hola desde el simulador!"
}
],
"user": {
"id": "string",
"isOwner": false,
"isSponsor": true,
"isVerified": true,
"name": "CanalDePrueba",
"profileImageUrl": "https://yt3.ggpht.com/s0C1fULyWjrKHdHHQ_H8VcloFQWL955jB-G917g-ExxqqfFqdziHk9vPbbI1B1gllU2RNQNA=s88-c-k-c0x00ffffff-no-rj"
},
"eventId": "00000000-0000-4000-8000-000000000001",
"publishedAt": "2026-09-26T05:32:11.8891229Z",
"broadcast": [],
"isTest": false
}