Channel Points Automatic Reward Redemption Add
The channel.channel_points_automatic_reward_redemption.add subscription type sends a notification when a viewer has redeemed an automatic channel points reward on the specified channel.
Subscription
- Type
channel.channel_points_automatic_reward_redemption.add- Version
1
Authorization
Requires one of the following:
- A user access token that includes the channel:read:redemptions or channel:manage:redemptions scope.
- An app access token.The application, through prior authorization, must have been granted:
- The channel:read:redemptions or channel:manage:redemptions scope for the user represented by the broadcaster_user_id event condition.
Subscription Request Body
typeStringRequiredThe subscription type name:channel.channel_points_automatic_reward_redemption.add.versionStringRequiredThe subscription type version:1.conditionObjectRequiredSubscription-specific parameters.Hide child attributesShow child attributes
condition.broadcaster_user_idStringRequiredThe broadcaster user ID for the channel you want to receive channel points reward add notifications for.
transportObjectRequiredTransport-specific parameters.Hide child attributesShow child attributes
transport.methodStringRequiredThe transport method for EventSub.Possible values
webhookwebsocketconduit
transport.callbackStringThe callback URL where notifications are sent. The URL must use the HTTPS protocol and port 443. See Processing an Event.
Specify this field only if method is set to webhook.
NOTE: Redirects are not followed.
transport.secretStringThe secret used to verify the signature. The secret must be an ASCII string that's a minimum of 10 characters long and a maximum of 100 characters long. For information about how the secret is used, see Verifying the event message.
Specify this field only if the method is set to webhook.
transport.session_idStringAn ID that identifies the WebSocket to send notifications to. When you connect to EventSub using WebSockets, the server returns the ID in the Welcome message.
Specify this field only if the method is set to websocket.
transport.conduit_idStringAn ID that identifies the conduit to send this notification to. When you create a conduit, the server returns the ID in the API response.
Specify this field only if the method is set to conduit.
Event Payload
subscriptionObjectMetadata about the subscription.Hide child attributesShow child attributes
subscription.idStringThe Subscription ID of the subscription.subscription.typeStringThe notification's subscription type.subscription.versionStringThe version of the subscription.subscription.statusStringThe status of the subscription.subscription.costIntegerHow much the subscription counts against your limit. See Subscription Limits for more information.subscription.conditionObjectSubscription-specific parameters.Hide child attributesShow child attributes
subscription.condition.broadcaster_user_idStringThe broadcaster user ID for the channel you want to receive channel points reward add notifications for.
subscription.created_atStringThe time the notification was created.subscription.transportObjectTransport-specific parameters.Hide child attributesShow child attributes
subscription.transport.methodStringThe transport method for EventSub.Possible values
webhookwebsocketconduit
subscription.transport.callbackStringThe callback URL where notifications are sent. The URL must use the HTTPS protocol and port 443. See Processing an Event.
Specify this field only if method is set to webhook.
NOTE: Redirects are not followed.
subscription.transport.secretStringThe secret used to verify the signature. The secret must be an ASCII string that's a minimum of 10 characters long and a maximum of 100 characters long. For information about how the secret is used, see Verifying the event message.
Specify this field only if the method is set to webhook.
subscription.transport.session_idStringAn ID that identifies the WebSocket to send notifications to. When you connect to EventSub using WebSockets, the server returns the ID in the Welcome message.
Specify this field only if the method is set to websocket.
subscription.transport.conduit_idStringAn ID that identifies the conduit to send this notification to. When you create a conduit, the server returns the ID in the API response.
Specify this field only if the method is set to conduit.
eventObjectThe event information.Hide child attributesShow child attributes
event.broadcaster_user_idStringThe ID of the channel where the reward was redeemed.event.broadcaster_user_loginStringThe login of the channel where the reward was redeemed.event.broadcaster_user_nameStringThe display name of the channel where the reward was redeemed.event.user_idStringThe ID of the redeeming user.event.user_loginStringThe login of the redeeming user.event.user_nameStringThe display name of the redeeming user.event.idStringThe ID of the Redemption.event.rewardObjectAn object that contains the reward information.Hide child attributesShow child attributes
event.reward.typeStringThe type of reward.Possible values
single_message_bypass_sub_modesend_highlighted_messagerandom_sub_emote_unlockchosen_sub_emote_unlockchosen_modified_sub_emote_unlockmessage_effectgigantify_an_emotecelebration
event.reward.costIntegerThe reward cost.event.reward.unlocked_emoteObjectNullableEmote that was unlocked.Hide child attributesShow child attributes
event.reward.unlocked_emote.idStringThe emote ID.event.reward.unlocked_emote.nameStringThe human readable emote token.
event.messageObjectAn object that contains the user message and emote information needed to recreate the message.Hide child attributesShow child attributes
event.message.textStringThe text of the chat message.event.message.emotesObject[]An array that includes the emote ID and start and end positions for where the emote appears in the text.Hide child attributesShow child attributes
event.message.emotes.beginIntegerThe index of where the Emote starts in the text.event.message.emotes.endIntegerThe index of where the Emote ends in the text.event.message.emotes.idStringThe emote ID.
event.user_inputStringNullableA string that the user entered if the reward requires input.event.redeemed_atStringThe UTC date and time (in RFC3339 format) of when the reward was redeemed.
{
"type": "channel.channel_points_automatic_reward_redemption.add",
"version": "1",
"condition": {
"broadcaster_user_id": "12826"
},
"transport": {
"method": "webhook",
"callback": "https://example.com/webhooks/callback",
"secret": "s3cRe7"
}
}{
"type": "channel.channel_points_automatic_reward_redemption.add",
"version": "1",
"condition": {
"broadcaster_user_id": "12826"
},
"transport": {
"method": "websocket",
"session_id": "AQoQexAWVYKSTIu4ec_2VAxyuhAB"
}
}{
"type": "channel.channel_points_automatic_reward_redemption.add",
"version": "1",
"condition": {
"broadcaster_user_id": "12826"
},
"transport": {
"method": "conduit",
"conduit_id": "bfcfc993-26b1-b876-44d9-afe75a379dac"
}
}{
"subscription": {
"id": "7297f7eb-3bf5-461f-8ae6-7cd7781ebce3",
"status": "enabled",
"type": "channel.channel_points_automatic_reward_redemption.add",
"version": "1",
"condition": {
"broadcaster_user_id": "12826"
},
"transport": {
"method": "webhook",
"callback": "https://example.com/webhooks/callback"
},
"created_at": "2024-02-23T21:12:33.771005262Z",
"cost": 0
},
"event": {
"broadcaster_user_id": "12826",
"broadcaster_user_name": "Twitch",
"broadcaster_user_login": "twitch",
"user_id": "141981764",
"user_name": "TwitchDev",
"user_login": "twitchdev",
"id": "f024099a-e0fe-4339-9a0a-a706fb59f353",
"reward": {
"type": "send_highlighted_message",
"cost": 100,
"unlocked_emote": null
},
"message": {
"text": "Hello world! VoHiYo",
"emotes": [
{
"id": "81274",
"begin": 13,
"end": 18
}
]
},
"user_input": "Hello world! VoHiYo ",
"redeemed_at": "2024-02-23T21:14:34.260398045Z"
}
}Channel Points Automatic Reward Redemption Add V2
The channel.channel_points_automatic_reward_redemption.add subscription type sends a notification when a viewer has redeemed an automatic channel points reward on the specified channel.
Subscription
- Type
channel.channel_points_automatic_reward_redemption.add- Version
2
Authorization
Requires one of the following:
- A user access token that includes the channel:read:redemptions or channel:manage:redemptions scope.
- An app access token.The application, through prior authorization, must have been granted:
- The channel:read:redemptions or channel:manage:redemptions scope for the user represented by the broadcaster_user_id event condition.
Subscription Request Body
typeStringRequiredThe subscription type name:channel.channel_points_automatic_reward_redemption.add.versionStringRequiredThe subscription type version:2.conditionObjectRequiredSubscription-specific parameters.Hide child attributesShow child attributes
condition.broadcaster_user_idStringRequiredThe broadcaster user ID for the channel you want to receive channel points reward add notifications for.
transportObjectRequiredTransport-specific parameters.Hide child attributesShow child attributes
transport.methodStringRequiredThe transport method for EventSub.Possible values
webhookwebsocketconduit
transport.callbackStringThe callback URL where notifications are sent. The URL must use the HTTPS protocol and port 443. See Processing an Event.
Specify this field only if method is set to webhook.
NOTE: Redirects are not followed.
transport.secretStringThe secret used to verify the signature. The secret must be an ASCII string that's a minimum of 10 characters long and a maximum of 100 characters long. For information about how the secret is used, see Verifying the event message.
Specify this field only if the method is set to webhook.
transport.session_idStringAn ID that identifies the WebSocket to send notifications to. When you connect to EventSub using WebSockets, the server returns the ID in the Welcome message.
Specify this field only if the method is set to websocket.
transport.conduit_idStringAn ID that identifies the conduit to send this notification to. When you create a conduit, the server returns the ID in the API response.
Specify this field only if the method is set to conduit.
Event Payload
subscriptionObjectMetadata about the subscription.Hide child attributesShow child attributes
subscription.idStringThe Subscription ID of the subscription.subscription.typeStringThe notification's subscription type.subscription.versionStringThe version of the subscription.subscription.statusStringThe status of the subscription.subscription.costIntegerHow much the subscription counts against your limit. See Subscription Limits for more information.subscription.conditionObjectSubscription-specific parameters.Hide child attributesShow child attributes
subscription.condition.broadcaster_user_idStringThe broadcaster user ID for the channel you want to receive channel points reward add notifications for.
subscription.created_atStringThe time the notification was created.subscription.transportObjectTransport-specific parameters.Hide child attributesShow child attributes
subscription.transport.methodStringThe transport method for EventSub.Possible values
webhookwebsocketconduit
subscription.transport.callbackStringThe callback URL where notifications are sent. The URL must use the HTTPS protocol and port 443. See Processing an Event.
Specify this field only if method is set to webhook.
NOTE: Redirects are not followed.
subscription.transport.secretStringThe secret used to verify the signature. The secret must be an ASCII string that's a minimum of 10 characters long and a maximum of 100 characters long. For information about how the secret is used, see Verifying the event message.
Specify this field only if the method is set to webhook.
subscription.transport.session_idStringAn ID that identifies the WebSocket to send notifications to. When you connect to EventSub using WebSockets, the server returns the ID in the Welcome message.
Specify this field only if the method is set to websocket.
subscription.transport.conduit_idStringAn ID that identifies the conduit to send this notification to. When you create a conduit, the server returns the ID in the API response.
Specify this field only if the method is set to conduit.
eventObjectThe event information.Hide child attributesShow child attributes
event.broadcaster_user_idStringThe ID of the channel where the reward was redeemed.event.broadcaster_user_loginStringThe login of the channel where the reward was redeemed.event.broadcaster_user_nameStringThe display name of the channel where the reward was redeemed.event.user_idStringThe ID of the redeeming user.event.user_loginStringThe login of the redeeming user.event.user_nameStringThe display name of the redeeming user.event.idStringThe ID of the Redemption.event.rewardObjectAn object that contains the reward information.Hide child attributesShow child attributes
event.reward.typeStringThe type of reward.Possible values
single_message_bypass_sub_modesend_highlighted_messagerandom_sub_emote_unlockchosen_sub_emote_unlockchosen_modified_sub_emote_unlock
event.reward.channel_pointsIntegerNumber of channel points used.event.reward.emoteObjectNullableEmote associated with the reward.Hide child attributesShow child attributes
event.reward.emote.idStringThe emote ID.event.reward.emote.nameStringThe human readable emote token.
event.messageObjectNullableAn object that contains the user message and emote information needed to recreate the message.Hide child attributesShow child attributes
event.message.textStringThe chat message in plain text.event.message.fragmentsObject[]The ordered list of chat message fragments.Hide child attributesShow child attributes
event.message.fragments.textStringThe message text in fragment.event.message.fragments.typeStringThe type of message fragment.Possible values
textemote
event.message.fragments.emoteObjectNullableThe metadata pertaining to the emote.Hide child attributesShow child attributes
event.message.fragments.emote.idStringThe ID that uniquely identifies this emote.
event.redeemed_atStringThe UTC date and time (in RFC3339 format) of when the reward was redeemed.
{
"type": "channel.channel_points_automatic_reward_redemption.add",
"version": "2",
"condition": {
"broadcaster_user_id": "12826"
},
"transport": {
"method": "webhook",
"callback": "https://example.com/webhooks/callback",
"secret": "s3cRe7"
}
}{
"type": "channel.channel_points_automatic_reward_redemption.add",
"version": "2",
"condition": {
"broadcaster_user_id": "12826"
},
"transport": {
"method": "websocket",
"session_id": "AQoQexAWVYKSTIu4ec_2VAxyuhAB"
}
}{
"type": "channel.channel_points_automatic_reward_redemption.add",
"version": "2",
"condition": {
"broadcaster_user_id": "12826"
},
"transport": {
"method": "conduit",
"conduit_id": "bfcfc993-26b1-b876-44d9-afe75a379dac"
}
}{
"subscription": {
"id": "7297f7eb-3bf5-461f-8ae6-7cd7781ebce3",
"status": "enabled",
"type": "channel.channel_points_automatic_reward_redemption.add",
"version": "2",
"condition": {
"broadcaster_user_id": "12826"
},
"transport": {
"method": "webhook",
"callback": "https://example.com/webhooks/callback"
},
"created_at": "2024-02-23T21:12:33.771005262Z",
"cost": 0
},
"event": {
"broadcaster_user_id": "12826",
"broadcaster_user_name": "Twitch",
"broadcaster_user_login": "twitch",
"user_id": "141981764",
"user_name": "TwitchDev",
"user_login": "twitchdev",
"id": "f024099a-e0fe-4339-9a0a-a706fb59f353",
"reward": {
"type": "send_highlighted_message",
"channel_points": 100,
"emote": null
},
"message": {
"text": "Hello world! VoHiYo",
"fragments": [
{
"type": "text",
"text": "Hello world! ",
"emote": null
},
{
"type": "emote",
"text": "VoHiYo",
"emote": {
"id": "81274"
}
}
]
},
"redeemed_at": "2024-08-12T21:14:34.260398045Z"
}
}Channel Points Custom Reward Redemption Add
The channel.channel_points_custom_reward_redemption.add subscription type sends a notification when a viewer has redeemed a custom channel points reward on the specified channel.
Subscription
- Type
channel.channel_points_custom_reward_redemption.add- Version
1
Authorization
Requires one of the following:
- A user access token that includes the channel:read:redemptions or channel:manage:redemptions scope.
- An app access token.The application, through prior authorization, must have been granted:
- The channel:read:redemptions or channel:manage:redemptions scope for the user represented by the broadcaster_user_id event condition.
Subscription Request Body
typeStringRequiredThe subscription type name:channel.channel_points_custom_reward_redemption.add.versionStringRequiredThe subscription type version:1.conditionObjectRequiredSubscription-specific parameters. Pass in the broadcaster user ID for the channel you want to receive channel points custom reward redemption notifications for. You can optionally pass in a reward id to only receive notifications for a specific reward.Hide child attributesShow child attributes
condition.broadcaster_user_idStringRequiredThe broadcaster user ID for the channel you want to receive channel points custom reward redemption add notifications for.condition.reward_idStringNullableSpecify a reward id to only receive notifications for a specific reward.
transportObjectRequiredTransport-specific parameters.Hide child attributesShow child attributes
transport.methodStringRequiredThe transport method for EventSub.Possible values
webhookwebsocketconduit
transport.callbackStringThe callback URL where notifications are sent. The URL must use the HTTPS protocol and port 443. See Processing an Event.
Specify this field only if method is set to webhook.
NOTE: Redirects are not followed.
transport.secretStringThe secret used to verify the signature. The secret must be an ASCII string that's a minimum of 10 characters long and a maximum of 100 characters long. For information about how the secret is used, see Verifying the event message.
Specify this field only if the method is set to webhook.
transport.session_idStringAn ID that identifies the WebSocket to send notifications to. When you connect to EventSub using WebSockets, the server returns the ID in the Welcome message.
Specify this field only if the method is set to websocket.
transport.conduit_idStringAn ID that identifies the conduit to send this notification to. When you create a conduit, the server returns the ID in the API response.
Specify this field only if the method is set to conduit.
Event Payload
subscriptionObjectMetadata about the subscription.Hide child attributesShow child attributes
subscription.idStringThe Subscription ID of the subscription.subscription.typeStringThe notification's subscription type.subscription.versionStringThe version of the subscription.subscription.statusStringThe status of the subscription.subscription.costIntegerHow much the subscription counts against your limit. See Subscription Limits for more information.subscription.conditionObjectSubscription-specific parameters.Hide child attributesShow child attributes
subscription.condition.broadcaster_user_idStringThe broadcaster user ID for the channel you want to receive channel points custom reward redemption add notifications for.subscription.condition.reward_idStringNullableSpecify a reward id to only receive notifications for a specific reward.
subscription.created_atStringThe time the notification was created.subscription.transportObjectTransport-specific parameters.Hide child attributesShow child attributes
subscription.transport.methodStringThe transport method for EventSub.Possible values
webhookwebsocketconduit
subscription.transport.callbackStringThe callback URL where notifications are sent. The URL must use the HTTPS protocol and port 443. See Processing an Event.
Specify this field only if method is set to webhook.
NOTE: Redirects are not followed.
subscription.transport.secretStringThe secret used to verify the signature. The secret must be an ASCII string that's a minimum of 10 characters long and a maximum of 100 characters long. For information about how the secret is used, see Verifying the event message.
Specify this field only if the method is set to webhook.
subscription.transport.session_idStringAn ID that identifies the WebSocket to send notifications to. When you connect to EventSub using WebSockets, the server returns the ID in the Welcome message.
Specify this field only if the method is set to websocket.
subscription.transport.conduit_idStringAn ID that identifies the conduit to send this notification to. When you create a conduit, the server returns the ID in the API response.
Specify this field only if the method is set to conduit.
eventObjectThe event information.Hide child attributesShow child attributes
event.idStringThe redemption identifier.event.broadcaster_user_idStringThe requested broadcaster ID.event.broadcaster_user_loginStringThe requested broadcaster login.event.broadcaster_user_nameStringThe requested broadcaster display name.event.user_idStringUser ID of the user that redeemed the reward.event.user_loginStringLogin of the user that redeemed the reward.event.user_nameStringDisplay name of the user that redeemed the reward.event.user_inputStringThe user input provided. Empty string if not provided.event.statusStringDefaults to unfulfilled. Possible values are unknown, unfulfilled, fulfilled, and canceled.event.redeemed_atStringRFC3339 timestamp of when the reward was redeemed.event.rewardObjectBasic information about the reward that was redeemed, at the time it was redeemed.Hide child attributesShow child attributes
event.reward.idStringThe reward identifier.event.reward.titleStringThe reward name.event.reward.costIntegerThe reward cost.event.reward.promptStringThe reward description.
{
"type": "channel.channel_points_custom_reward_redemption.add",
"version": "1",
"condition": {
"broadcaster_user_id": "1337",
"reward_id": "92af127c-7326-4483-a52b-b0da0be61c01"
},
"transport": {
"method": "webhook",
"callback": "https://example.com/webhooks/callback",
"secret": "s3cRe7"
}
}{
"type": "channel.channel_points_custom_reward_redemption.add",
"version": "1",
"condition": {
"broadcaster_user_id": "1337",
"reward_id": "92af127c-7326-4483-a52b-b0da0be61c01"
},
"transport": {
"method": "websocket",
"session_id": "AQoQexAWVYKSTIu4ec_2VAxyuhAB"
}
}{
"type": "channel.channel_points_custom_reward_redemption.add",
"version": "1",
"condition": {
"broadcaster_user_id": "1337",
"reward_id": "92af127c-7326-4483-a52b-b0da0be61c01"
},
"transport": {
"method": "conduit",
"conduit_id": "bfcfc993-26b1-b876-44d9-afe75a379dac"
}
}{
"subscription": {
"id": "f1c2a387-161a-49f9-a165-0f21d7a4e1c4",
"type": "channel.channel_points_custom_reward_redemption.add",
"version": "1",
"status": "enabled",
"cost": 0,
"condition": {
"broadcaster_user_id": "1337",
"reward_id": "92af127c-7326-4483-a52b-b0da0be61c01" // optional; gets notifications for a specific reward
},
"transport": {
"method": "webhook",
"callback": "https://example.com/webhooks/callback"
},
"created_at": "2019-11-16T10:11:12.634234626Z"
},
"event": {
"id": "17fa2df1-ad76-4804-bfa5-a40ef63efe63",
"broadcaster_user_id": "1337",
"broadcaster_user_login": "cool_user",
"broadcaster_user_name": "Cool_User",
"user_id": "9001",
"user_login": "cooler_user",
"user_name": "Cooler_User",
"user_input": "pogchamp",
"status": "unfulfilled",
"reward": {
"id": "92af127c-7326-4483-a52b-b0da0be61c01",
"title": "title",
"cost": 100,
"prompt": "reward prompt"
},
"redeemed_at": "2020-07-15T17:16:03.17106713Z"
}
}Channel Points Custom Reward Redemption Update
The channel.channel_points_custom_reward_redemption.update subscription type sends a notification when a redemption of a channel points custom reward has been updated for the specified channel.
Subscription
- Type
channel.channel_points_custom_reward_redemption.update- Version
1
Authorization
Requires one of the following:
- A user access token that includes the channel:read:redemptions or channel:manage:redemptions scope.
- An app access token.The application, through prior authorization, must have been granted:
- The channel:read:redemptions or channel:manage:redemptions scope for the user represented by the broadcaster_user_id event condition.
Subscription Request Body
typeStringRequiredThe subscription type name:channel.channel_points_custom_reward_redemption.update.versionStringRequiredThe subscription type version:1.conditionObjectRequiredSubscription-specific parameters. Pass in the broadcaster user ID for the channel you want to receive channel points custom reward redemption update notifications for. You can optionally pass in a reward id to only receive notifications for a specific reward.Hide child attributesShow child attributes
condition.broadcaster_user_idStringRequiredThe broadcaster user ID for the channel you want to receive channel points custom reward redemption update notifications for.condition.reward_idStringNullableSpecify a reward id to only receive notifications for a specific reward.
transportObjectRequiredTransport-specific parameters.Hide child attributesShow child attributes
transport.methodStringRequiredThe transport method for EventSub.Possible values
webhookwebsocketconduit
transport.callbackStringThe callback URL where notifications are sent. The URL must use the HTTPS protocol and port 443. See Processing an Event.
Specify this field only if method is set to webhook.
NOTE: Redirects are not followed.
transport.secretStringThe secret used to verify the signature. The secret must be an ASCII string that's a minimum of 10 characters long and a maximum of 100 characters long. For information about how the secret is used, see Verifying the event message.
Specify this field only if the method is set to webhook.
transport.session_idStringAn ID that identifies the WebSocket to send notifications to. When you connect to EventSub using WebSockets, the server returns the ID in the Welcome message.
Specify this field only if the method is set to websocket.
transport.conduit_idStringAn ID that identifies the conduit to send this notification to. When you create a conduit, the server returns the ID in the API response.
Specify this field only if the method is set to conduit.
Event Payload
subscriptionObjectMetadata about the subscription.Hide child attributesShow child attributes
subscription.idStringThe Subscription ID of the subscription.subscription.typeStringThe notification's subscription type.subscription.versionStringThe version of the subscription.subscription.statusStringThe status of the subscription.subscription.costIntegerHow much the subscription counts against your limit. See Subscription Limits for more information.subscription.conditionObjectSubscription-specific parameters.Hide child attributesShow child attributes
subscription.condition.broadcaster_user_idStringThe broadcaster user ID for the channel you want to receive channel points custom reward redemption update notifications for.subscription.condition.reward_idStringNullableSpecify a reward id to only receive notifications for a specific reward.
subscription.created_atStringThe time the notification was created.subscription.transportObjectTransport-specific parameters.Hide child attributesShow child attributes
subscription.transport.methodStringThe transport method for EventSub.Possible values
webhookwebsocketconduit
subscription.transport.callbackStringThe callback URL where notifications are sent. The URL must use the HTTPS protocol and port 443. See Processing an Event.
Specify this field only if method is set to webhook.
NOTE: Redirects are not followed.
subscription.transport.secretStringThe secret used to verify the signature. The secret must be an ASCII string that's a minimum of 10 characters long and a maximum of 100 characters long. For information about how the secret is used, see Verifying the event message.
Specify this field only if the method is set to webhook.
subscription.transport.session_idStringAn ID that identifies the WebSocket to send notifications to. When you connect to EventSub using WebSockets, the server returns the ID in the Welcome message.
Specify this field only if the method is set to websocket.
subscription.transport.conduit_idStringAn ID that identifies the conduit to send this notification to. When you create a conduit, the server returns the ID in the API response.
Specify this field only if the method is set to conduit.
eventObjectThe event information.Hide child attributesShow child attributes
event.idStringThe redemption identifier.event.broadcaster_user_idStringThe requested broadcaster ID.event.broadcaster_user_loginStringThe requested broadcaster login.event.broadcaster_user_nameStringThe requested broadcaster display name.event.user_idStringUser ID of the user that redeemed the reward.event.user_loginStringLogin of the user that redeemed the reward.event.user_nameStringDisplay name of the user that redeemed the reward.event.user_inputStringThe user input provided. Empty string if not provided.event.statusStringWill be fulfilled or canceled. Possible values are unknown, unfulfilled, fulfilled, and canceled.event.rewardObjectBasic information about the reward that was redeemed, at the time it was redeemed.Hide child attributesShow child attributes
event.reward.idStringThe reward identifier.event.reward.titleStringThe reward name.event.reward.costIntegerThe reward cost.event.reward.promptStringThe reward description.
event.redeemed_atStringRFC3339 timestamp of when the reward was redeemed.
{
"type": "channel.channel_points_custom_reward_redemption.update",
"version": "1",
"condition": {
"broadcaster_user_id": "1337",
"reward_id": "92af127c-7326-4483-a52b-b0da0be61c01"
},
"transport": {
"method": "webhook",
"callback": "https://example.com/webhooks/callback",
"secret": "s3cRe7"
}
}{
"type": "channel.channel_points_custom_reward_redemption.update",
"version": "1",
"condition": {
"broadcaster_user_id": "1337",
"reward_id": "92af127c-7326-4483-a52b-b0da0be61c01"
},
"transport": {
"method": "websocket",
"session_id": "AQoQexAWVYKSTIu4ec_2VAxyuhAB"
}
}{
"type": "channel.channel_points_custom_reward_redemption.update",
"version": "1",
"condition": {
"broadcaster_user_id": "1337",
"reward_id": "92af127c-7326-4483-a52b-b0da0be61c01"
},
"transport": {
"method": "conduit",
"conduit_id": "bfcfc993-26b1-b876-44d9-afe75a379dac"
}
}{
"subscription": {
"id": "f1c2a387-161a-49f9-a165-0f21d7a4e1c4",
"type": "channel.channel_points_custom_reward_redemption.update",
"version": "1",
"status": "enabled",
"cost": 0,
"condition": {
"broadcaster_user_id": "1337",
"reward_id": "92af127c-7326-4483-a52b-b0da0be61c01" // optional; gets notifications for a specific reward
},
"transport": {
"method": "webhook",
"callback": "https://example.com/webhooks/callback"
},
"created_at": "2019-11-16T10:11:12.634234626Z"
},
"event": {
"id": "17fa2df1-ad76-4804-bfa5-a40ef63efe63",
"broadcaster_user_id": "1337",
"broadcaster_user_login": "cool_user",
"broadcaster_user_name": "Cool_User",
"user_id": "9001",
"user_login": "cooler_user",
"user_name": "Cooler_User",
"user_input": "pogchamp",
"status": "fulfilled", // Either fulfilled or cancelled
"reward": {
"id": "92af127c-7326-4483-a52b-b0da0be61c01",
"title": "title",
"cost": 100,
"prompt": "reward prompt"
},
"redeemed_at": "2020-07-15T17:16:03.17106713Z"
}
}Channel Points Custom Reward Add
The channel.channel_points_custom_reward.add subscription type sends a notification when a custom channel points reward has been created for the specified channel.
Subscription
- Type
channel.channel_points_custom_reward.add- Version
1
Authorization
Requires one of the following:
- A user access token that includes the channel:read:redemptions or channel:manage:redemptions scope.
- An app access token.The application, through prior authorization, must have been granted:
- The channel:read:redemptions or channel:manage:redemptions scope for the user represented by the broadcaster_user_id event condition.
Subscription Request Body
typeStringRequiredThe subscription type name:channel.channel_points_custom_reward.add.versionStringRequiredThe subscription type version:1.conditionObjectRequiredSubscription-specific parameters. Pass in the broadcaster user ID for the channel you want to receive channel points customer reward add notifications for.Hide child attributesShow child attributes
condition.broadcaster_user_idStringRequiredThe broadcaster user ID for the channel you want to receive channel points custom reward add notifications for.
transportObjectRequiredTransport-specific parameters.Hide child attributesShow child attributes
transport.methodStringRequiredThe transport method for EventSub.Possible values
webhookwebsocketconduit
transport.callbackStringThe callback URL where notifications are sent. The URL must use the HTTPS protocol and port 443. See Processing an Event.
Specify this field only if method is set to webhook.
NOTE: Redirects are not followed.
transport.secretStringThe secret used to verify the signature. The secret must be an ASCII string that's a minimum of 10 characters long and a maximum of 100 characters long. For information about how the secret is used, see Verifying the event message.
Specify this field only if the method is set to webhook.
transport.session_idStringAn ID that identifies the WebSocket to send notifications to. When you connect to EventSub using WebSockets, the server returns the ID in the Welcome message.
Specify this field only if the method is set to websocket.
transport.conduit_idStringAn ID that identifies the conduit to send this notification to. When you create a conduit, the server returns the ID in the API response.
Specify this field only if the method is set to conduit.
Event Payload
subscriptionObjectMetadata about the subscription.Hide child attributesShow child attributes
subscription.idStringThe Subscription ID of the subscription.subscription.typeStringThe notification's subscription type.subscription.versionStringThe version of the subscription.subscription.statusStringThe status of the subscription.subscription.costIntegerHow much the subscription counts against your limit. See Subscription Limits for more information.subscription.conditionObjectSubscription-specific parameters.Hide child attributesShow child attributes
subscription.condition.broadcaster_user_idStringThe broadcaster user ID for the channel you want to receive channel points custom reward add notifications for.
subscription.created_atStringThe time the notification was created.subscription.transportObjectTransport-specific parameters.Hide child attributesShow child attributes
subscription.transport.methodStringThe transport method for EventSub.Possible values
webhookwebsocketconduit
subscription.transport.callbackStringThe callback URL where notifications are sent. The URL must use the HTTPS protocol and port 443. See Processing an Event.
Specify this field only if method is set to webhook.
NOTE: Redirects are not followed.
subscription.transport.secretStringThe secret used to verify the signature. The secret must be an ASCII string that's a minimum of 10 characters long and a maximum of 100 characters long. For information about how the secret is used, see Verifying the event message.
Specify this field only if the method is set to webhook.
subscription.transport.session_idStringAn ID that identifies the WebSocket to send notifications to. When you connect to EventSub using WebSockets, the server returns the ID in the Welcome message.
Specify this field only if the method is set to websocket.
subscription.transport.conduit_idStringAn ID that identifies the conduit to send this notification to. When you create a conduit, the server returns the ID in the API response.
Specify this field only if the method is set to conduit.
eventObjectThe event information.Hide child attributesShow child attributes
event.idStringThe reward identifier.event.broadcaster_user_idStringThe requested broadcaster ID.event.broadcaster_user_loginStringThe requested broadcaster login.event.broadcaster_user_nameStringThe requested broadcaster display name.event.is_enabledBooleanIs the reward currently enabled. If false, the reward won't show up to viewers.event.is_pausedBooleanIs the reward currently paused. If true, viewers can't redeem.event.is_in_stockBooleanIs the reward currently in stock. If false, viewers can't redeem.event.titleStringThe reward title.event.costIntegerThe reward cost.event.promptStringThe reward description.event.is_user_input_requiredBooleanDoes the viewer need to enter information when redeeming the reward.event.should_redemptions_skip_request_queueBooleanShould redemptions be set to fulfilled status immediately when redeemed and skip the request queue instead of the normal unfulfilled status.event.max_per_streamObjectWhether a maximum per stream is enabled and what the maximum is.Hide child attributesShow child attributes
event.max_per_stream.is_enabledBooleanIs the setting enabled.event.max_per_stream.valueIntegerThe max per stream limit.
event.max_per_user_per_streamObjectWhether a maximum per user per stream is enabled and what the maximum is.Hide child attributesShow child attributes
event.max_per_user_per_stream.is_enabledBooleanIs the setting enabled.event.max_per_user_per_stream.valueIntegerThe max per user per stream limit.
event.background_colorStringCustom background color for the reward. Format: Hex with # prefix. Example:#FA1ED2.event.imageObjectSet of custom images of 1x, 2x and 4x sizes for the reward. Can be null if no images have been uploaded.Hide child attributesShow child attributes
event.image.url_1xStringURL for the image at 1x size.event.image.url_2xStringURL for the image at 2x size.event.image.url_4xStringURL for the image at 4x size.
event.default_imageObjectSet of default images of 1x, 2x and 4x sizes for the reward.Hide child attributesShow child attributes
event.default_image.url_1xStringURL for the image at 1x size.event.default_image.url_2xStringURL for the image at 2x size.event.default_image.url_4xStringURL for the image at 4x size.
event.global_cooldownObjectWhether a cooldown is enabled and what the cooldown is in seconds.Hide child attributesShow child attributes
event.global_cooldown.is_enabledBooleanIs the setting enabled.event.global_cooldown.secondsIntegerThe cooldown in seconds.
event.cooldown_expires_atStringNullableTimestamp of the cooldown expiration. null if the reward isn't on cooldown.event.redemptions_redeemed_current_streamIntegerNullableThe number of redemptions redeemed during the current live stream. Counts against themax_per_streamlimit. null if the broadcasters stream isn't live ormax_per_streamisn't enabled.
{
"type": "channel.channel_points_custom_reward.add",
"version": "1",
"condition": {
"broadcaster_user_id": "1337"
},
"transport": {
"method": "webhook",
"callback": "https://example.com/webhooks/callback",
"secret": "s3cRe7"
}
}{
"type": "channel.channel_points_custom_reward.add",
"version": "1",
"condition": {
"broadcaster_user_id": "1337"
},
"transport": {
"method": "websocket",
"session_id": "AQoQexAWVYKSTIu4ec_2VAxyuhAB"
}
}{
"type": "channel.channel_points_custom_reward.add",
"version": "1",
"condition": {
"broadcaster_user_id": "1337"
},
"transport": {
"method": "conduit",
"conduit_id": "bfcfc993-26b1-b876-44d9-afe75a379dac"
}
}{
"subscription": {
"id": "f1c2a387-161a-49f9-a165-0f21d7a4e1c4",
"type": "channel.channel_points_custom_reward.add",
"version": "1",
"status": "enabled",
"cost": 0,
"condition": {
"broadcaster_user_id": "1337"
},
"transport": {
"method": "webhook",
"callback": "https://example.com/webhooks/callback"
},
"created_at": "2019-11-16T10:11:12.634234626Z"
},
"event": {
"id": "9001",
"broadcaster_user_id": "1337",
"broadcaster_user_login": "cool_user",
"broadcaster_user_name": "Cool_User",
"is_enabled": true,
"is_paused": false,
"is_in_stock": true,
"title": "Cool Reward",
"cost": 100,
"prompt": "reward prompt",
"is_user_input_required": true,
"should_redemptions_skip_request_queue": false,
"cooldown_expires_at": null,
"redemptions_redeemed_current_stream": null,
"max_per_stream": {
"is_enabled": true,
"value": 1000
},
"max_per_user_per_stream": {
"is_enabled": true,
"value": 1000
},
"global_cooldown": {
"is_enabled": true,
"seconds": 1000
},
"background_color": "#FA1ED2",
"image": {
"url_1x": "https://static-cdn.jtvnw.net/image-1.png",
"url_2x": "https://static-cdn.jtvnw.net/image-2.png",
"url_4x": "https://static-cdn.jtvnw.net/image-4.png"
},
"default_image": {
"url_1x": "https://static-cdn.jtvnw.net/default-1.png",
"url_2x": "https://static-cdn.jtvnw.net/default-2.png",
"url_4x": "https://static-cdn.jtvnw.net/default-4.png"
}
}
}Channel Points Custom Reward Remove
The channel.channel_points_custom_reward.remove subscription type sends a notification when a custom channel points reward has been removed from the specified channel.
Subscription
- Type
channel.channel_points_custom_reward.remove- Version
1
Authorization
Requires one of the following:
- A user access token that includes the channel:read:redemptions or channel:manage:redemptions scope.
- An app access token.The application, through prior authorization, must have been granted:
- The channel:read:redemptions or channel:manage:redemptions scope for the user represented by the broadcaster_user_id event condition.
Subscription Request Body
typeStringRequiredThe subscription type name:channel.channel_points_custom_reward.remove.versionStringRequiredThe subscription type version:1.conditionObjectRequiredSubscription-specific parameters. Pass in the broadcaster user ID for the channel you want to receive channel points custom reward remove notifications for. You can optionally pass in a reward ID to only receive notifications for a specific reward.Hide child attributesShow child attributes
condition.broadcaster_user_idStringRequiredThe broadcaster user ID for the channel you want to receive channel points custom reward remove notifications for.condition.reward_idStringNullableSpecify a reward id to only receive notifications for a specific reward.
transportObjectRequiredTransport-specific parameters.Hide child attributesShow child attributes
transport.methodStringRequiredThe transport method for EventSub.Possible values
webhookwebsocketconduit
transport.callbackStringThe callback URL where notifications are sent. The URL must use the HTTPS protocol and port 443. See Processing an Event.
Specify this field only if method is set to webhook.
NOTE: Redirects are not followed.
transport.secretStringThe secret used to verify the signature. The secret must be an ASCII string that's a minimum of 10 characters long and a maximum of 100 characters long. For information about how the secret is used, see Verifying the event message.
Specify this field only if the method is set to webhook.
transport.session_idStringAn ID that identifies the WebSocket to send notifications to. When you connect to EventSub using WebSockets, the server returns the ID in the Welcome message.
Specify this field only if the method is set to websocket.
transport.conduit_idStringAn ID that identifies the conduit to send this notification to. When you create a conduit, the server returns the ID in the API response.
Specify this field only if the method is set to conduit.
Event Payload
subscriptionObjectMetadata about the subscription.Hide child attributesShow child attributes
subscription.idStringThe Subscription ID of the subscription.subscription.typeStringThe notification's subscription type.subscription.versionStringThe version of the subscription.subscription.statusStringThe status of the subscription.subscription.costIntegerHow much the subscription counts against your limit. See Subscription Limits for more information.subscription.conditionObjectSubscription-specific parameters.Hide child attributesShow child attributes
subscription.condition.broadcaster_user_idStringThe broadcaster user ID for the channel you want to receive channel points custom reward remove notifications for.subscription.condition.reward_idStringNullableSpecify a reward id to only receive notifications for a specific reward.
subscription.created_atStringThe time the notification was created.subscription.transportObjectTransport-specific parameters.Hide child attributesShow child attributes
subscription.transport.methodStringThe transport method for EventSub.Possible values
webhookwebsocketconduit
subscription.transport.callbackStringThe callback URL where notifications are sent. The URL must use the HTTPS protocol and port 443. See Processing an Event.
Specify this field only if method is set to webhook.
NOTE: Redirects are not followed.
subscription.transport.secretStringThe secret used to verify the signature. The secret must be an ASCII string that's a minimum of 10 characters long and a maximum of 100 characters long. For information about how the secret is used, see Verifying the event message.
Specify this field only if the method is set to webhook.
subscription.transport.session_idStringAn ID that identifies the WebSocket to send notifications to. When you connect to EventSub using WebSockets, the server returns the ID in the Welcome message.
Specify this field only if the method is set to websocket.
subscription.transport.conduit_idStringAn ID that identifies the conduit to send this notification to. When you create a conduit, the server returns the ID in the API response.
Specify this field only if the method is set to conduit.
eventObjectThe event information.Hide child attributesShow child attributes
event.idStringThe reward identifier.event.broadcaster_user_idStringThe requested broadcaster ID.event.broadcaster_user_loginStringThe requested broadcaster login.event.broadcaster_user_nameStringThe requested broadcaster display name.event.is_enabledBooleanIs the reward currently enabled. If false, the reward won't show up to viewers.event.is_pausedBooleanIs the reward currently paused. If true, viewers can't redeem.event.is_in_stockBooleanIs the reward currently in stock. If false, viewers can't redeem.event.titleStringThe reward title.event.costIntegerThe reward cost.event.promptStringThe reward description.event.is_user_input_requiredBooleanDoes the viewer need to enter information when redeeming the reward.event.should_redemptions_skip_request_queueBooleanShould redemptions be set to fulfilled status immediately when redeemed and skip the request queue instead of the normal unfulfilled status.event.max_per_streamObjectWhether a maximum per stream is enabled and what the maximum is.Hide child attributesShow child attributes
event.max_per_stream.is_enabledBooleanIs the setting enabled.event.max_per_stream.valueIntegerThe max per stream limit.
event.max_per_user_per_streamObjectWhether a maximum per user per stream is enabled and what the maximum is.Hide child attributesShow child attributes
event.max_per_user_per_stream.is_enabledBooleanIs the setting enabled.event.max_per_user_per_stream.valueIntegerThe max per user per stream limit.
event.background_colorStringCustom background color for the reward. Format: Hex with # prefix. Example:#FA1ED2.event.imageObjectSet of custom images of 1x, 2x and 4x sizes for the reward. Can be null if no images have been uploaded.Hide child attributesShow child attributes
event.image.url_1xStringURL for the image at 1x size.event.image.url_2xStringURL for the image at 2x size.event.image.url_4xStringURL for the image at 4x size.
event.default_imageObjectSet of default images of 1x, 2x and 4x sizes for the reward.Hide child attributesShow child attributes
event.default_image.url_1xStringURL for the image at 1x size.event.default_image.url_2xStringURL for the image at 2x size.event.default_image.url_4xStringURL for the image at 4x size.
event.global_cooldownObjectWhether a cooldown is enabled and what the cooldown is in seconds.Hide child attributesShow child attributes
event.global_cooldown.is_enabledBooleanIs the setting enabled.event.global_cooldown.secondsIntegerThe cooldown in seconds.
event.cooldown_expires_atStringNullableTimestamp of the cooldown expiration. null if the reward isn't on cooldown.event.redemptions_redeemed_current_streamIntegerNullableThe number of redemptions redeemed during the current live stream. Counts against themax_per_streamlimit. null if the broadcasters stream isn't live ormax_per_streamisn't enabled.
{
"type": "channel.channel_points_custom_reward.remove",
"version": "1",
"condition": {
"broadcaster_user_id": "1337",
"reward_id": "9001"
},
"transport": {
"method": "webhook",
"callback": "https://example.com/webhooks/callback",
"secret": "s3cRe7"
}
}{
"type": "channel.channel_points_custom_reward.remove",
"version": "1",
"condition": {
"broadcaster_user_id": "1337",
"reward_id": "9001"
},
"transport": {
"method": "websocket",
"session_id": "AQoQexAWVYKSTIu4ec_2VAxyuhAB"
}
}{
"type": "channel.channel_points_custom_reward.remove",
"version": "1",
"condition": {
"broadcaster_user_id": "1337",
"reward_id": "9001"
},
"transport": {
"method": "conduit",
"conduit_id": "bfcfc993-26b1-b876-44d9-afe75a379dac"
}
}{
"subscription": {
"id": "f1c2a387-161a-49f9-a165-0f21d7a4e1c4",
"type": "channel.channel_points_custom_reward.remove",
"version": "1",
"status": "enabled",
"cost": 0,
"condition": {
"broadcaster_user_id": "1337",
"reward_id": "12345"
},
"transport": {
"method": "webhook",
"callback": "https://example.com/webhooks/callback"
},
"created_at": "2019-11-16T10:11:12.634234626Z"
},
"event": {
"id": "9001",
"broadcaster_user_id": "1337",
"broadcaster_user_login": "cool_user",
"broadcaster_user_name": "Cool_User",
"is_enabled": true,
"is_paused": false,
"is_in_stock": true,
"title": "Cool Reward",
"cost": 100,
"prompt": "reward prompt",
"is_user_input_required": true,
"should_redemptions_skip_request_queue": false,
"cooldown_expires_at": "2019-11-16T10:11:12.123Z",
"redemptions_redeemed_current_stream": 123,
"max_per_stream": {
"is_enabled": true,
"value": 1000
},
"max_per_user_per_stream": {
"is_enabled": true,
"value": 1000
},
"global_cooldown": {
"is_enabled": true,
"seconds": 1000
},
"background_color": "#FA1ED2",
"image": {
"url_1x": "https://static-cdn.jtvnw.net/image-1.png",
"url_2x": "https://static-cdn.jtvnw.net/image-2.png",
"url_4x": "https://static-cdn.jtvnw.net/image-4.png"
},
"default_image": {
"url_1x": "https://static-cdn.jtvnw.net/default-1.png",
"url_2x": "https://static-cdn.jtvnw.net/default-2.png",
"url_4x": "https://static-cdn.jtvnw.net/default-4.png"
}
}
}Channel Points Custom Reward Update
The channel.channel_points_custom_reward.update subscription type sends a notification when a custom channel points reward has been updated for the specified channel.
Subscription
- Type
channel.channel_points_custom_reward.update- Version
1
Authorization
Requires one of the following:
- A user access token that includes the channel:read:redemptions or channel:manage:redemptions scope.
- An app access token.The application, through prior authorization, must have been granted:
- The channel:read:redemptions or channel:manage:redemptions scope for the user represented by the broadcaster_user_id event condition.
Subscription Request Body
typeStringRequiredThe subscription type name:channel.channel_points_custom_reward.update.versionStringRequiredThe subscription type version:1.conditionObjectRequiredSubscription-specific parameters. Pass in the broadcaster user ID for the channel you want to receive channel points custom reward update notifications for. You can optionally pass in a reward id to only receive notifications for a specific reward.Hide child attributesShow child attributes
condition.broadcaster_user_idStringRequiredThe broadcaster user ID for the channel you want to receive channel points custom reward update notifications for.condition.reward_idStringNullableSpecify a reward id to only receive notifications for a specific reward.
transportObjectRequiredTransport-specific parameters.Hide child attributesShow child attributes
transport.methodStringRequiredThe transport method for EventSub.Possible values
webhookwebsocketconduit
transport.callbackStringThe callback URL where notifications are sent. The URL must use the HTTPS protocol and port 443. See Processing an Event.
Specify this field only if method is set to webhook.
NOTE: Redirects are not followed.
transport.secretStringThe secret used to verify the signature. The secret must be an ASCII string that's a minimum of 10 characters long and a maximum of 100 characters long. For information about how the secret is used, see Verifying the event message.
Specify this field only if the method is set to webhook.
transport.session_idStringAn ID that identifies the WebSocket to send notifications to. When you connect to EventSub using WebSockets, the server returns the ID in the Welcome message.
Specify this field only if the method is set to websocket.
transport.conduit_idStringAn ID that identifies the conduit to send this notification to. When you create a conduit, the server returns the ID in the API response.
Specify this field only if the method is set to conduit.
Event Payload
subscriptionObjectMetadata about the subscription.Hide child attributesShow child attributes
subscription.idStringThe Subscription ID of the subscription.subscription.typeStringThe notification's subscription type.subscription.versionStringThe version of the subscription.subscription.statusStringThe status of the subscription.subscription.costIntegerHow much the subscription counts against your limit. See Subscription Limits for more information.subscription.conditionObjectSubscription-specific parameters.Hide child attributesShow child attributes
subscription.condition.broadcaster_user_idStringThe broadcaster user ID for the channel you want to receive channel points custom reward update notifications for.subscription.condition.reward_idStringNullableSpecify a reward id to only receive notifications for a specific reward.
subscription.created_atStringThe time the notification was created.subscription.transportObjectTransport-specific parameters.Hide child attributesShow child attributes
subscription.transport.methodStringThe transport method for EventSub.Possible values
webhookwebsocketconduit
subscription.transport.callbackStringThe callback URL where notifications are sent. The URL must use the HTTPS protocol and port 443. See Processing an Event.
Specify this field only if method is set to webhook.
NOTE: Redirects are not followed.
subscription.transport.secretStringThe secret used to verify the signature. The secret must be an ASCII string that's a minimum of 10 characters long and a maximum of 100 characters long. For information about how the secret is used, see Verifying the event message.
Specify this field only if the method is set to webhook.
subscription.transport.session_idStringAn ID that identifies the WebSocket to send notifications to. When you connect to EventSub using WebSockets, the server returns the ID in the Welcome message.
Specify this field only if the method is set to websocket.
subscription.transport.conduit_idStringAn ID that identifies the conduit to send this notification to. When you create a conduit, the server returns the ID in the API response.
Specify this field only if the method is set to conduit.
eventObjectThe event information.Hide child attributesShow child attributes
event.idStringThe reward identifier.event.broadcaster_user_idStringThe requested broadcaster ID.event.broadcaster_user_loginStringThe requested broadcaster login.event.broadcaster_user_nameStringThe requested broadcaster display name.event.is_enabledBooleanIs the reward currently enabled. If false, the reward won't show up to viewers.event.is_pausedBooleanIs the reward currently paused. If true, viewers can't redeem.event.is_in_stockBooleanIs the reward currently in stock. If false, viewers can't redeem.event.titleStringThe reward title.event.costIntegerThe reward cost.event.promptStringThe reward description.event.is_user_input_requiredBooleanDoes the viewer need to enter information when redeeming the reward.event.should_redemptions_skip_request_queueBooleanShould redemptions be set to fulfilled status immediately when redeemed and skip the request queue instead of the normal unfulfilled status.event.max_per_streamObjectWhether a maximum per stream is enabled and what the maximum is.Hide child attributesShow child attributes
event.max_per_stream.is_enabledBooleanIs the setting enabled.event.max_per_stream.valueIntegerThe max per stream limit.
event.max_per_user_per_streamObjectWhether a maximum per user per stream is enabled and what the maximum is.Hide child attributesShow child attributes
event.max_per_user_per_stream.is_enabledBooleanIs the setting enabled.event.max_per_user_per_stream.valueIntegerThe max per user per stream limit.
event.background_colorStringCustom background color for the reward. Format: Hex with # prefix. Example:#FA1ED2.event.imageObjectSet of custom images of 1x, 2x and 4x sizes for the reward. Can be null if no images have been uploaded.Hide child attributesShow child attributes
event.image.url_1xStringURL for the image at 1x size.event.image.url_2xStringURL for the image at 2x size.event.image.url_4xStringURL for the image at 4x size.
event.default_imageObjectSet of default images of 1x, 2x and 4x sizes for the reward.Hide child attributesShow child attributes
event.default_image.url_1xStringURL for the image at 1x size.event.default_image.url_2xStringURL for the image at 2x size.event.default_image.url_4xStringURL for the image at 4x size.
event.global_cooldownObjectWhether a cooldown is enabled and what the cooldown is in seconds.Hide child attributesShow child attributes
event.global_cooldown.is_enabledBooleanIs the setting enabled.event.global_cooldown.secondsIntegerThe cooldown in seconds.
event.cooldown_expires_atStringNullableTimestamp of the cooldown expiration. null if the reward isn't on cooldown.event.redemptions_redeemed_current_streamIntegerNullableThe number of redemptions redeemed during the current live stream. Counts against themax_per_streamlimit. null if the broadcasters stream isn't live ormax_per_streamisn't enabled.
{
"type": "channel.channel_points_custom_reward.update",
"version": "1",
"condition": {
"broadcaster_user_id": "1337",
"reward_id": "9001"
},
"transport": {
"method": "webhook",
"callback": "https://example.com/webhooks/callback",
"secret": "s3cRe7"
}
}{
"type": "channel.channel_points_custom_reward.update",
"version": "1",
"condition": {
"broadcaster_user_id": "1337",
"reward_id": "9001"
},
"transport": {
"method": "websocket",
"session_id": "AQoQexAWVYKSTIu4ec_2VAxyuhAB"
}
}{
"type": "channel.channel_points_custom_reward.update",
"version": "1",
"condition": {
"broadcaster_user_id": "1337",
"reward_id": "9001"
},
"transport": {
"method": "conduit",
"conduit_id": "bfcfc993-26b1-b876-44d9-afe75a379dac"
}
}{
"subscription": {
"id": "f1c2a387-161a-49f9-a165-0f21d7a4e1c4",
"type": "channel.channel_points_custom_reward.update",
"version": "1",
"status": "enabled",
"cost": 0,
"condition": {
"broadcaster_user_id": "1337"
},
"transport": {
"method": "webhook",
"callback": "https://example.com/webhooks/callback"
},
"created_at": "2019-11-16T10:11:12.634234626Z"
},
"event": {
"id": "9001",
"broadcaster_user_id": "1337",
"broadcaster_user_login": "cool_user",
"broadcaster_user_name": "Cool_User",
"is_enabled": true,
"is_paused": false,
"is_in_stock": true,
"title": "Cool Reward",
"cost": 100,
"prompt": "reward prompt",
"is_user_input_required": true,
"should_redemptions_skip_request_queue": false,
"cooldown_expires_at": "2019-11-16T10:11:12.634234626Z",
"redemptions_redeemed_current_stream": 123,
"max_per_stream": {
"is_enabled": true,
"value": 1000
},
"max_per_user_per_stream": {
"is_enabled": true,
"value": 1000
},
"global_cooldown": {
"is_enabled": true,
"seconds": 1000
},
"background_color": "#FA1ED2",
"image": {
"url_1x": "https://static-cdn.jtvnw.net/image-1.png",
"url_2x": "https://static-cdn.jtvnw.net/image-2.png",
"url_4x": "https://static-cdn.jtvnw.net/image-4.png"
},
"default_image": {
"url_1x": "https://static-cdn.jtvnw.net/default-1.png",
"url_2x": "https://static-cdn.jtvnw.net/default-2.png",
"url_4x": "https://static-cdn.jtvnw.net/default-4.png"
}
}
}