Skip to main content

Channel Data

Channel data reads information from the Kick channel or Kicklet account. Use it when a response should mention the stream title, category, viewer count, follower count, channel username, uptime, or follow age.

Channel Username

Returns the Kick username of the channel owner/account.

Returns the Kick username of the channel owner/account.

API reference

channel.username

channel.username()
Input

This helper does not take input parameters.

Output
string

Channel username.

Use the injected user context.

Channel usernameAdvanced Script
async.messages.send(`Channel username: ${user.kickUsername}`);

Channel Slug

Returns the Kick slug of the channel owner/account.

Returns the Kick slug of the channel owner/account.

API reference

channel.slug

channel.slug()
Input

This helper does not take input parameters.

Output
string

Channel slug.

Channel slugAdvanced Script
async.messages.send(`Channel slug: ${user.kickSlug}`);

Followers

Returns the channel follower count.

Returns the channel follower count.

API reference

channel.followers

channel.followers()
Input

This helper does not take input parameters.

Output
number

Follower count.

Follower countAdvanced Script
const followers = channel.followers();
async.messages.send(`The channel has ${followers} followers.`);

Current Viewers

Returns the current viewer count from the live stream. If the channel is offline, the value is 0.

Returns the current viewer count from the live stream. If the channel is offline, the value is 0.

API reference

channel.viewers

channel.viewers()
Input

This helper does not take input parameters.

Output
number

Current live viewer count.

Live viewer countAdvanced Script
const viewers = channel.viewers();
async.messages.send(`Current viewers: ${viewers}`);

For Kicklet's active chatters instead of Kick's live viewer count, use stats.activeViewers() on the Viewer Activity page.

Stream Title

Returns the current Kick stream title. If the channel is offline or the title cannot be loaded, the result is empty.

Returns the current Kick stream title. If the channel is offline or the title cannot be loaded, the result is empty.

API reference

channel.title

channel.title()
Input

This helper does not take input parameters.

Output
string

Current stream title, or an empty string when unavailable.

Stream titleAdvanced Script
const title = channel.title();
async.messages.send(`Stream title: ${title}`);

Use streamTitle.setAutoTemplate(...) when v2 code should update Kicklet's automatic stream title source.

Set Stream Title Automation

Updates Kicklet's automatic stream title source. In v2, streamTitle.setAutoTemplate(...) keeps the current active state: editing an inactive title is allowed, while updating an already active title requires premium because it can update the live automation. In v1, SetAutoTitle updates the title template.

Returns the current stream category name. If the stream is offline or no category is available, the result is empty.

API reference

channel.category

channel.category()
Input

This helper does not take input parameters.

Output
string

Current stream category, or an empty string when unavailable.

Set auto title from scriptAdvanced Script
streamTitle.setAutoTemplate("Follower Goal: {{channel.followers()}}/15000");

streamTitle.setAutoTemplate(...) returns the saved auto title object:

{
"active": false,
"title": "Follower Goal: {{channel.followers()}}/15000",
"lastUpdate": "2026-05-08T11:48:44Z",
"templateVersion": "v2",
"templateType": "template"
}

Enable Stream Title Automation

Turns Kicklet's automatic stream title updates on or off. Enabling stream title automation requires premium.

Returns how long the current stream has been live. If the stream is offline or the start time cannot be read, the result is empty or zero.

API reference

channel.uptime

channel.uptime()
Input

This helper does not take input parameters.

Output
string

Formatted stream uptime, or an empty string when unavailable.

Enable title automationAdvanced Script
streamTitle.enableAuto();

Use streamTitle.disableAuto() to turn the automation off again. Use streamTitle.setAutoActive(active) when the active state should come from a variable or condition.

streamTitle.enableAuto(), streamTitle.disableAuto(), and streamTitle.setAutoActive(...) return true when the active state was updated.

Async wrappers:

Async wrapper for streamTitle.setAutoTemplate(template).

API reference

async.streamTitle.setAutoTemplate

async.streamTitle.setAutoTemplate(template)
Input
template
string

Stream title template.

Output
object

Saved auto title object.

Async wrapper for streamTitle.setAutoActive(active).

API reference

async.streamTitle.setAutoActive

async.streamTitle.setAutoActive(active)
Input
active
boolean

Whether stream title automation should be active.

Output
boolean

True when the active state was updated.

Async wrapper for streamTitle.enableAuto().

API reference

async.streamTitle.enableAuto

async.streamTitle.enableAuto()
Input

This helper does not take input parameters.

Output
boolean

True when the active state was updated.

Async wrapper for streamTitle.disableAuto().

API reference

async.streamTitle.disableAuto

async.streamTitle.disableAuto()
Input

This helper does not take input parameters.

Output
boolean

True when the active state was updated.

Category

Returns the current stream category name. If the stream is offline or no category is available, the result is empty.

Updates Kicklet's automatic stream title source.

API reference

streamTitle.setAutoTemplate

streamTitle.setAutoTemplate(template)
Input
template
string

Stream title template.

Output
object

Saved auto title object.

Stream categoryAdvanced Script
const category = channel.category();
async.messages.send(`Category: ${category}`);

Uptime

Returns how long the current stream has been live. If the stream is offline or the start time cannot be read, the result is empty or zero.

Turns Kicklet's automatic stream title updates on.

API reference

streamTitle.enableAuto

streamTitle.enableAuto()
Input

This helper does not take input parameters.

Output
boolean

True when the active state was updated.

Turns Kicklet's automatic stream title updates off.

API reference

streamTitle.disableAuto

streamTitle.disableAuto()
Input

This helper does not take input parameters.

Output
boolean

True when the active state was updated.

Turns Kicklet's automatic stream title updates on or off.

API reference

streamTitle.setAutoActive

streamTitle.setAutoActive(active)
Input
active
boolean

Whether stream title automation should be active.

Output
boolean

True when the active state was updated.

Formatted uptimeAdvanced Script
const uptime = channel.uptime();
async.messages.send(`The stream has been live for ${uptime}.`);

For numeric logic, use seconds:

Returns how long the current stream has been live in seconds. If the stream is offline or the start time cannot be read, the result is zero.

API reference

channel.uptimeSeconds

channel.uptimeSeconds()
Input

This helper does not take input parameters.

Output
number

Stream uptime in seconds, or 0 when unavailable.

Uptime secondsAdvanced Script
const seconds = channel.uptimeSeconds();
async.messages.send(`Uptime seconds: ${seconds}`);

Channel Object

Returns the raw Kick channel object for the channel owner/account.

Returns the raw Kick channel object for the channel owner/account.

API reference

channel.data

channel.data()
Input

This helper does not take input parameters.

Output
object

Channel data object with username, slug, follower count, live status, title, category, and uptime fields.

Returns whether the Kick channel is currently live.

API reference

channel.isLive

channel.isLive()
Input

This helper does not take input parameters.

Output
boolean

True when the channel is live.

Returns when the current stream started. If the stream is offline or the start time cannot be read, the result is empty.

API reference

channel.startedAt

channel.startedAt()
Input

This helper does not take input parameters.

Output
string

Stream start timestamp, or an empty string when unavailable.

Channel data fieldsAdvanced Script
const current = channel.data();
async.messages.send(`${current.title} - ${current.followers} followers`);

channel.data() returns a normalized Kicklet channel object:

{
"username": "exampleUser",
"slug": "exampleuser",
"followers": 12345,
"viewers": 87,
"title": "Building Kicklet commands",
"category": "Just Chatting",
"isLive": true,
"startedAt": "2026-05-08T09:14:32Z",
"uptimeSeconds": 9252,
"uptime": "2h 34m"
}

When the channel is offline, isLive is false, viewers is 0, and stream-specific fields such as title, category, startedAt, and uptime can be empty.

Channel User

Returns Kick channel-user information for a viewer in the current channel. In v1 template code, this is mainly used through kick.FollowAge.

Follow age:

Follow age lookupAdvanced Script
const followAge = channel.followAge(sender.username);
async.messages.send(`${sender.username} follows since ${followAge}.`);

Channel user object:

Channel user lookupAdvanced Script
const viewer = channel.user(sender.username);
async.messages.send(`${viewer.username} subscribed for ${viewer.subscribedFor} months.`);

The v2 renderer limits direct channel-user lookups to a small number per render to protect the Kick API.

Async channel wrappers

Async wrapper for channel.data().

API reference

async.channel.data

async.channel.data()
Input

This helper does not take input parameters.

Output
object

Channel data object with username, slug, follower count, live status, title, category, and uptime fields.

Async wrapper for channel.username().

API reference

async.channel.username

async.channel.username()
Input

This helper does not take input parameters.

Output
string

Channel username.

Async wrapper for channel.slug().

API reference

async.channel.slug

async.channel.slug()
Input

This helper does not take input parameters.

Output
string

Channel slug.

Async wrapper for channel.followers().

API reference

async.channel.followers

async.channel.followers()
Input

This helper does not take input parameters.

Output
number

Follower count.

Async wrapper for channel.viewers().

API reference

async.channel.viewers

async.channel.viewers()
Input

This helper does not take input parameters.

Output
number

Current live viewer count.

Async wrapper for channel.title().

API reference

async.channel.title

async.channel.title()
Input

This helper does not take input parameters.

Output
string

Current stream title, or an empty string when unavailable.

Async wrapper for channel.category().

API reference

async.channel.category

async.channel.category()
Input

This helper does not take input parameters.

Output
string

Current stream category, or an empty string when unavailable.

Async wrapper for channel.isLive().

API reference

async.channel.isLive

async.channel.isLive()
Input

This helper does not take input parameters.

Output
boolean

True when the channel is live.

Async wrapper for channel.startedAt().

API reference

async.channel.startedAt

async.channel.startedAt()
Input

This helper does not take input parameters.

Output
string

Stream start timestamp, or an empty string when unavailable.

Async wrapper for channel.uptimeSeconds().

API reference

async.channel.uptimeSeconds

async.channel.uptimeSeconds()
Input

This helper does not take input parameters.

Output
number

Stream uptime in seconds, or 0 when unavailable.

Async wrapper for channel.uptime().

API reference

async.channel.uptime

async.channel.uptime()
Input

This helper does not take input parameters.

Output
string

Formatted stream uptime, or an empty string when unavailable.

Async wrapper for channel.user(username).

API reference

async.channel.user

async.channel.user(username)
Input
username
string

Kick username.

Output
object

Channel viewer object.

Async wrapper for channel.followAge(username).

API reference

async.channel.followAge

async.channel.followAge(username)
Input
username
string

Kick username.

Output
string

Formatted follow age, or an empty string when unavailable.

Async wrapper for channel.followAgeSeconds(username).

API reference

async.channel.followAgeSeconds

async.channel.followAgeSeconds(username)
Input
username
string

Kick username.

Output
number

Follow age in seconds, or 0 when unavailable.

Async wrapper for channel.followingSince(username).

API reference

async.channel.followingSince

async.channel.followingSince(username)
Input
username
string

Kick username.

Output
string

Follow start timestamp, or an empty string when unavailable.