Appearance
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.