Skip to content

Interface: DynamicTriggerCreateData ​

Data for creating / updating a DynamicTrigger: type, label, trigger conditions (keyword, cost, cooldowns, limits) and callback.

Properties ​

authorization_level? ​

ts
optional authorization_level?: KappappsRoleType;

Minimum role required to fire the trigger (e.g. 'mod').


color? ​

ts
optional color?: string;

Color associated with the trigger (e.g. for a Twitch reward).


cooldown? ​

ts
optional cooldown?: number;

Global cooldown (in seconds) between two activations.


cost? ​

ts
optional cost?: number;

Cost in internal currency to fire the trigger.


description? ​

ts
optional description?: string;

Display description of the trigger.


interval_duration? ​

ts
optional interval_duration?: number;

Interval duration (in seconds) for a trigger of type INTERVAL.


keyword? ​

ts
optional keyword?: string;

Keyword / command that activates the trigger (depending on the type).


max_per_player_per_stream? ​

ts
optional max_per_player_per_stream?: number;

Maximum number of activations per player per stream.


max_per_stream? ​

ts
optional max_per_stream?: number;

Maximum number of activations per stream.


needs_input? ​

ts
optional needs_input?: boolean;

Whether a Twitch reward asks Twitch to collect user input. Ignored by dashboard triggers.


onTrigger? ​

ts
optional onTrigger?: DynamicTriggerCallFunction;

Callback executed on each activation (alternative to DynamicTrigger.onTrigger).


prompt? ​

ts
optional prompt?: string;

Prompt text shown to the user when input is required.


title ​

ts
title: string;

Display title of the trigger.

Remarks ​

Limited to 25 characters — 45 for a TWREW, which follows the Twitch reward limit. A longer title is silently truncated server-side, never rejected: the returned DynamicTrigger already carries the truncated value. Keep it short, it is displayed in narrow labels (app cards, viewer dashboard buttons, Twitch extension panel).


type ​

ts
type: DynamicTriggerType;

Trigger type (chat command, keyword, regex, Twitch reward, interval…).


user_cooldown? ​

ts
optional user_cooldown?: number;

Cooldown (in seconds) applied per user.