Aller au contenu
twitch.apiv2.0

Référence / Groupes de l'API

twitch.channelPoints

Points de chaîne : récompenses personnalisées et leurs utilisations.

Toutes les méthodes de twitch.channelPoints, avec leurs paramètres, ce qu’elles renvoient et le jeton nécessaire.

twitch.channelPoints.createReward(params, options?): Promise<CustomReward>

Ajoute une récompense personnalisée à une chaîne. Une chaîne compte 50 récompenses au plus, récompenses désactivées comprises.

Jeton : utilisateur, scope channel:manage:redemptions.

NomTypeDescription
broadcaster_idstringDiffuseur qui reçoit la récompense. Par défaut, l’utilisateur qui fait l’appel.
title requisstringTitre, 45 caractères au plus. Doit être unique parmi les récompenses de la chaîne.
cost requisnumberPrix en points de chaîne, 1 ou plus.
promptstringTexte présenté au spectateur au moment de l’utilisation, 200 caractères au plus. Va de pair avec is_user_input_required.
is_enabledbooleanIndique si les spectateurs peuvent voir la récompense. Twitch prend true par défaut.
background_colorstringCouleur de fond sous forme de code hexadécimal, par exemple "#9147FF".
is_user_input_requiredbooleanIndique si le spectateur doit saisir un texte en utilisant la récompense. Twitch prend false par défaut.
is_max_per_stream_enabledbooleanActive le plafond défini par max_per_stream. Twitch prend false par défaut.
max_per_streamnumberNombre d’utilisations autorisées par stream, 1 ou plus.
is_max_per_user_per_stream_enabledbooleanActive le plafond défini par max_per_user_per_stream. Twitch prend false par défaut.
max_per_user_per_streamnumberNombre d’utilisations autorisées par spectateur et par stream, 1 ou plus.
is_global_cooldown_enabledbooleanActive le temps d’attente défini par global_cooldown_seconds. Twitch prend false par défaut.
global_cooldown_secondsnumberNombre de secondes entre deux utilisations, 1 ou plus. Les spectateurs ne le voient qu’à partir de 60.
should_redemptions_skip_request_queuebooleanMarque aussitôt les utilisations comme FULFILLED au lieu de les mettre en file d’attente. Twitch prend false par défaut.

options : Options de requête pour cet appel : as, token, signal, timeout, retries.

Promise<CustomReward>

Champs de CustomReward
NomTypeDescription
broadcaster_idstringIdentifiant du diffuseur à qui appartient la récompense.
broadcaster_loginstringNom de connexion du diffuseur.
broadcaster_namestringNom d’affichage du diffuseur.
idstringIdentifiant de la récompense.
titlestringTitre de la récompense.
promptstringTexte présenté au spectateur quand la récompense demande une saisie.
costnumberPrix en points de chaîne.
imageCustomRewardImage | nullIcône mise en ligne par le diffuseur, ou null quand l’icône par défaut est utilisée.
default_imageCustomRewardImageIcône que Twitch utilise à défaut.
background_colorstringCouleur de fond sous forme de code hexadécimal, par exemple "#00E5CB".
is_enabledbooleanIndique si les spectateurs peuvent voir la récompense.
is_user_input_requiredbooleanIndique si le spectateur doit saisir un texte en utilisant la récompense.
max_per_stream_setting{ is_enabled: boolean; max_per_stream: number; }Plafond d’utilisations au cours d’un même stream.
max_per_user_per_stream_setting{ is_enabled: boolean; max_per_user_per_stream: number; }Plafond d’utilisations par spectateur au cours d’un même stream.
global_cooldown_setting{ is_enabled: boolean; global_cooldown_seconds: number; }Temps d’attente imposé entre deux utilisations.
is_pausedbooleanIndique si la récompense est en pause. Une récompense en pause ne peut pas être utilisée.
is_in_stockbooleanIndique si la récompense peut encore être utilisée, compte tenu de ses plafonds.
should_redemptions_skip_request_queuebooleanIndique si les utilisations sont aussitôt marquées comme FULFILLED au lieu d’attendre dans la file.
redemptions_redeemed_current_streamnumber | nullNombre d’utilisations pendant le stream en cours. null quand la chaîne est hors ligne ou que le plafond par stream est désactivé.
cooldown_expires_atstring | nullMoment où le temps d’attente en cours prend fin, sous forme d’horodatage RFC 3339. null quand il n’y en a aucun.
const reward = await twitch.channelPoints.createReward({ title: "Hydrate", cost: 500 });

Référence Twitch

twitch.channelPoints.deleteReward(params, options?): Promise<void>

Supprime une récompense personnalisée. Seule l’application qui a créé la récompense peut le faire. Les utilisations qui attendent encore dans la file sont marquées comme honorées.

Jeton : utilisateur, scope channel:manage:redemptions.

NomTypeDescription
broadcaster_idstringDiffuseur à qui appartient la récompense. Par défaut, l’utilisateur qui fait l’appel.
id requisstringIdentifiant de la récompense à supprimer.

options : Options de requête pour cet appel : as, token, signal, timeout, retries.

Promise<void>

await twitch.channelPoints.deleteReward({ id: "b045196d-9ce7-4a27-a9b9-279ed341ab28" });

Référence Twitch

twitch.channelPoints.rewards(params?, options?): Promise<CustomReward[]>

Liste les récompenses personnalisées d’une chaîne, triées par identifiant. Si tous les identifiants demandés se révèlent inconnus, l’appel échoue avec une erreur 404.

Jeton : utilisateur, scope channel:read:redemptions ou channel:manage:redemptions.

NomTypeDescription
broadcaster_idstringDiffuseur dont on liste les récompenses. Par défaut, l’utilisateur qui fait l’appel.
idstring | readonly string[]Uniquement ces récompenses. Autant que vous voulez : les longues listes sont découpées pour vous.
only_manageable_rewardsbooleanUniquement les récompenses que votre application a créées et qu’elle peut donc gérer. Twitch prend false par défaut.

options : Options de requête pour cet appel : as, token, signal, timeout, retries.

Promise<CustomReward[]>

Champs de CustomReward
NomTypeDescription
broadcaster_idstringIdentifiant du diffuseur à qui appartient la récompense.
broadcaster_loginstringNom de connexion du diffuseur.
broadcaster_namestringNom d’affichage du diffuseur.
idstringIdentifiant de la récompense.
titlestringTitre de la récompense.
promptstringTexte présenté au spectateur quand la récompense demande une saisie.
costnumberPrix en points de chaîne.
imageCustomRewardImage | nullIcône mise en ligne par le diffuseur, ou null quand l’icône par défaut est utilisée.
default_imageCustomRewardImageIcône que Twitch utilise à défaut.
background_colorstringCouleur de fond sous forme de code hexadécimal, par exemple "#00E5CB".
is_enabledbooleanIndique si les spectateurs peuvent voir la récompense.
is_user_input_requiredbooleanIndique si le spectateur doit saisir un texte en utilisant la récompense.
max_per_stream_setting{ is_enabled: boolean; max_per_stream: number; }Plafond d’utilisations au cours d’un même stream.
max_per_user_per_stream_setting{ is_enabled: boolean; max_per_user_per_stream: number; }Plafond d’utilisations par spectateur au cours d’un même stream.
global_cooldown_setting{ is_enabled: boolean; global_cooldown_seconds: number; }Temps d’attente imposé entre deux utilisations.
is_pausedbooleanIndique si la récompense est en pause. Une récompense en pause ne peut pas être utilisée.
is_in_stockbooleanIndique si la récompense peut encore être utilisée, compte tenu de ses plafonds.
should_redemptions_skip_request_queuebooleanIndique si les utilisations sont aussitôt marquées comme FULFILLED au lieu d’attendre dans la file.
redemptions_redeemed_current_streamnumber | nullNombre d’utilisations pendant le stream en cours. null quand la chaîne est hors ligne ou que le plafond par stream est désactivé.
cooldown_expires_atstring | nullMoment où le temps d’attente en cours prend fin, sous forme d’horodatage RFC 3339. null quand il n’y en a aucun.
const rewards = await twitch.channelPoints.rewards();
const mine = await twitch.channelPoints.rewards({ only_manageable_rewards: true });

Référence Twitch

twitch.channelPoints.redemptions(params, options?): Paginator<CustomRewardRedemption>

Liste les utilisations d’une récompense personnalisée. Seule l’application qui a créé la récompense peut les lire.

Jeton : utilisateur, scope channel:read:redemptions ou channel:manage:redemptions.

NomTypeDescription
broadcaster_idstringDiffuseur à qui appartient la récompense. Par défaut, l’utilisateur qui fait l’appel.
reward_id requisstringIdentifiant de la récompense dont on liste les utilisations.
statusCustomRewardRedemptionStatusUniquement les utilisations qui ont ce statut. Obligatoire sauf si vous passez id. Les utilisations annulées et honorées ne restent listées que quelques jours.
idstring | readonly string[]Uniquement ces utilisations. Jusqu’à 50 identifiants.
sort"OLDEST" | "NEWEST"Ordre de tri. Twitch prend "OLDEST" par défaut.
firstnumberÉléments par page, de 1 à 50. Twitch en renvoie 20 par défaut.
afterstringCurseur de la page suivante.

options : Options de requête pour cet appel : as, token, signal, timeout, retries.

Paginator<CustomRewardRedemption>

Champs de CustomRewardRedemption
NomTypeDescription
broadcaster_idstringIdentifiant du diffuseur à qui appartient la récompense.
broadcaster_loginstringNom de connexion du diffuseur.
broadcaster_namestringNom d’affichage du diffuseur.
idstringIdentifiant de l’utilisation.
user_idstringIdentifiant du spectateur qui a utilisé la récompense.
user_loginstringNom de connexion du spectateur.
user_namestringNom d’affichage du spectateur.
user_inputstringTexte saisi par le spectateur. Une chaîne vide quand la récompense ne demande aucune saisie.
statusCustomRewardRedemptionStatusStatut actuel de l’utilisation.
redeemed_atstringMoment où la récompense a été utilisée, sous forme d’horodatage RFC 3339.
reward{ id: string; title: string; prompt: string; cost: number; }La récompense utilisée.
const pending = twitch.channelPoints.redemptions({ reward_id: rewardId, status: "UNFULFILLED" });
for await (const redemption of pending) console.log(redemption.user_name, redemption.user_input);

Référence Twitch

twitch.channelPoints.updateReward(params, options?): Promise<CustomReward>

Modifie une récompense personnalisée. Seule l’application qui a créé la récompense peut le faire.

Jeton : utilisateur, scope channel:manage:redemptions.

NomTypeDescription
broadcaster_idstringDiffuseur à qui appartient la récompense. Par défaut, l’utilisateur qui fait l’appel.
id requisstringIdentifiant de la récompense à modifier.
titlestringNouveau titre, 45 caractères au plus. Doit être unique parmi les récompenses de la chaîne.
promptstringTexte présenté au spectateur au moment de l’utilisation, 200 caractères au plus. Va de pair avec is_user_input_required.
costnumberNouveau prix en points de chaîne, 1 ou plus.
background_colorstringCouleur de fond sous forme de code hexadécimal, par exemple "#00E5CB".
is_enabledbooleanIndique si les spectateurs peuvent voir la récompense.
is_user_input_requiredbooleanIndique si le spectateur doit saisir un texte en utilisant la récompense.
is_max_per_stream_enabledbooleanActive ou désactive le plafond défini par max_per_stream.
max_per_streamnumberNombre d’utilisations autorisées par stream, 1 ou plus.
is_max_per_user_per_stream_enabledbooleanActive ou désactive le plafond défini par max_per_user_per_stream.
max_per_user_per_streamnumberNombre d’utilisations autorisées par spectateur et par stream, 1 ou plus.
is_global_cooldown_enabledbooleanActive ou désactive le temps d’attente défini par global_cooldown_seconds.
global_cooldown_secondsnumberNombre de secondes entre deux utilisations, de 1 à 604800. Les spectateurs ne le voient qu’à partir de 60.
is_pausedbooleanMet la récompense en pause ou la réactive. Une récompense en pause ne peut pas être utilisée.
should_redemptions_skip_request_queuebooleanMarque aussitôt les utilisations comme FULFILLED au lieu de les mettre en file d’attente.

options : Options de requête pour cet appel : as, token, signal, timeout, retries.

Promise<CustomReward>

Champs de CustomReward
NomTypeDescription
broadcaster_idstringIdentifiant du diffuseur à qui appartient la récompense.
broadcaster_loginstringNom de connexion du diffuseur.
broadcaster_namestringNom d’affichage du diffuseur.
idstringIdentifiant de la récompense.
titlestringTitre de la récompense.
promptstringTexte présenté au spectateur quand la récompense demande une saisie.
costnumberPrix en points de chaîne.
imageCustomRewardImage | nullIcône mise en ligne par le diffuseur, ou null quand l’icône par défaut est utilisée.
default_imageCustomRewardImageIcône que Twitch utilise à défaut.
background_colorstringCouleur de fond sous forme de code hexadécimal, par exemple "#00E5CB".
is_enabledbooleanIndique si les spectateurs peuvent voir la récompense.
is_user_input_requiredbooleanIndique si le spectateur doit saisir un texte en utilisant la récompense.
max_per_stream_setting{ is_enabled: boolean; max_per_stream: number; }Plafond d’utilisations au cours d’un même stream.
max_per_user_per_stream_setting{ is_enabled: boolean; max_per_user_per_stream: number; }Plafond d’utilisations par spectateur au cours d’un même stream.
global_cooldown_setting{ is_enabled: boolean; global_cooldown_seconds: number; }Temps d’attente imposé entre deux utilisations.
is_pausedbooleanIndique si la récompense est en pause. Une récompense en pause ne peut pas être utilisée.
is_in_stockbooleanIndique si la récompense peut encore être utilisée, compte tenu de ses plafonds.
should_redemptions_skip_request_queuebooleanIndique si les utilisations sont aussitôt marquées comme FULFILLED au lieu d’attendre dans la file.
redemptions_redeemed_current_streamnumber | nullNombre d’utilisations pendant le stream en cours. null quand la chaîne est hors ligne ou que le plafond par stream est désactivé.
cooldown_expires_atstring | nullMoment où le temps d’attente en cours prend fin, sous forme d’horodatage RFC 3339. null quand il n’y en a aucun.
const reward = await twitch.channelPoints.updateReward({ id: rewardId, is_paused: true });

Référence Twitch

twitch.channelPoints.updateRedemptions(params, options?): Promise<CustomRewardRedemption[]>

Honore ou annule des utilisations qui attendent encore dans la file, et les renvoie. Seule l’application qui a créé la récompense peut le faire.

Jeton : utilisateur, scope channel:manage:redemptions.

NomTypeDescription
broadcaster_idstringDiffuseur à qui appartient la récompense. Par défaut, l’utilisateur qui fait l’appel.
reward_id requisstringIdentifiant de la récompense utilisée.
id requisstring | readonly string[]Utilisations à mettre à jour. Jusqu’à 50 identifiants.
status requis"CANCELED" | "FULFILLED"Nouveau statut. "CANCELED" rend ses points au spectateur.

options : Options de requête pour cet appel : as, token, signal, timeout, retries.

Promise<CustomRewardRedemption[]>

Champs de CustomRewardRedemption
NomTypeDescription
broadcaster_idstringIdentifiant du diffuseur à qui appartient la récompense.
broadcaster_loginstringNom de connexion du diffuseur.
broadcaster_namestringNom d’affichage du diffuseur.
idstringIdentifiant de l’utilisation.
user_idstringIdentifiant du spectateur qui a utilisé la récompense.
user_loginstringNom de connexion du spectateur.
user_namestringNom d’affichage du spectateur.
user_inputstringTexte saisi par le spectateur. Une chaîne vide quand la récompense ne demande aucune saisie.
statusCustomRewardRedemptionStatusStatut actuel de l’utilisation.
redeemed_atstringMoment où la récompense a été utilisée, sous forme d’horodatage RFC 3339.
reward{ id: string; title: string; prompt: string; cost: number; }La récompense utilisée.
await twitch.channelPoints.updateRedemptions({
reward_id: redemption.reward.id,
id: redemption.id,
status: "FULFILLED",
});

Référence Twitch