---
canonical_url: "https://docs.composio.dev/toolkits/kick"
markdown_url: "https://docs.composio.dev/toolkits/kick.md"
product: "platform"
version: null
last_updated: null
---

# Kick

Kick is a livestreaming platform whose Public API supports channels, streams, chat, moderation, rewards, ads, and event subscriptions.

- **Category:** social media accounts
- **Auth:** OAUTH2
- **Composio-managed OAuth available?** No
- **Tools:** 25
- **Triggers:** 0
- **Slug:** `KICK`
- **Version:** 00000000_00

## Tools

### Ban or Time Out User

**Slug:** `KICK_BAN_OR_TIMEOUT_USER`

Ban a user from a broadcaster chat, or apply a temporary timeout when duration_minutes is supplied.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `reason` | string | No | Moderator-visible reason for the ban or timeout. |
| `user_id` | integer | Yes | User to ban or time out. |
| `duration_minutes` | integer | No | Timeout duration in minutes. Omit this field to permanently ban the user. |
| `broadcaster_user_id` | integer | Yes | Broadcaster whose chat will enforce the moderation action. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Create Channel Reward

**Slug:** `KICK_CREATE_CHANNEL_REWARD`

Create a channel point reward owned by the connected Kick app.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `cost` | integer | Yes | Channel point cost to redeem the reward. |
| `title` | string | Yes | Reward title shown to viewers. |
| `is_enabled` | boolean | No | Whether viewers can redeem the reward. |
| `description` | string | No | Optional reward description shown to viewers. |
| `background_color` | string | No | Reward background color as a six-digit hexadecimal value. |
| `is_user_input_required` | boolean | No | Whether redemption requires viewer text input. |
| `should_redemptions_skip_request_queue` | boolean | No | Whether redemptions are fulfilled without entering the request queue. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Create Event Subscriptions

**Slug:** `KICK_CREATE_EVENT_SUBSCRIPTIONS`

Create one or more webhook event subscriptions for the authorized broadcaster using the Kick app's configured callback.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `events` | array | Yes | Unique Kick event name and version pairs to subscribe to. |
| `method` | string | No | Delivery method. Kick currently supports webhook delivery only. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Delete Channel Reward

**Slug:** `KICK_DELETE_CHANNEL_REWARD`

Permanently delete a channel reward created by the connected Kick app.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `reward_id` | string | Yes | ULID of the app-owned channel reward to permanently delete. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Delete Chat Message

**Slug:** `KICK_DELETE_CHAT_MESSAGE`

Permanently delete a chat message by message ID using the connected moderator identity.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `message_id` | string | Yes | ID of the chat message to permanently delete. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Delete Event Subscriptions

**Slug:** `KICK_DELETE_EVENT_SUBSCRIPTIONS`

Permanently delete one or more webhook event subscriptions by ID.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `subscription_ids` | array | Yes | Subscription IDs to permanently delete. Each ID is sent as a repeated id query parameter. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Enroll In Ads

**Slug:** `KICK_ENROLL_IN_ADS`

Irreversibly enroll the authorized broadcaster channel in Kick's ads program, changing account-level ad settings. Kick documents no API to unenroll the channel.

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get Ad Break Status

**Slug:** `KICK_GET_AD_BREAK_STATUS`

Return ad enrollment, blocking conditions, limits, remaining capacity, and recent ad breaks for the authorized channel.

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get Channels

**Slug:** `KICK_GET_CHANNELS`

Return the authorized channel when no selector is supplied, or look up channels by broadcaster user IDs or slugs, without exposing stream credentials.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `slugs` | array | No | Channel slugs to look up. Sent as repeated slug query keys; each slug is at most 25 characters and the list is mutually exclusive with broadcaster_user_ids. |
| `broadcaster_user_ids` | array | No | Broadcaster user IDs to look up. Sent as repeated broadcaster_user_id query keys; mutually exclusive with slugs. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get KICKs Leaderboard

**Slug:** `KICK_GET_KICKS_LEADERBOARD`

Return lifetime, monthly, and weekly KICKs leaderboards for the authorized broadcaster.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `top` | integer | No | Maximum ranked users to return in each leaderboard period (1-100). |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get Livestream Stats

**Slug:** `KICK_GET_LIVESTREAM_STATS`

Return the current aggregate count of active livestreams on Kick.

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get User Livestreams

**Slug:** `KICK_GET_USER_LIVESTREAMS`

Return active Kick livestreams for 1 to 100 specific user IDs.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `user_ids` | array | Yes | User IDs whose active livestreams to return. Each ID is sent as a repeated user_id query key; provide between 1 and 100 IDs. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get Users

**Slug:** `KICK_GET_USERS`

Return the authorized Kick user when no IDs are supplied, or look up users by ID.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `user_ids` | array | No | User IDs to look up. Each ID is sent as a repeated id query key. Omit this field to return the authorized user. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get Webhook Public Key

**Slug:** `KICK_GET_WEBHOOK_PUBLIC_KEY`

Return Kick's PEM public key for verifying signatures on received webhook events.

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List Categories

**Slug:** `KICK_LIST_CATEGORIES`

Find Kick categories by names, tags, or IDs and return one cursor-paginated page.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `tags` | array | No | Category tags to match; values are sent as one comma-separated tag query parameter. |
| `limit` | integer | No | Maximum categories to return in this page (1-1000). |
| `names` | array | No | Category names to match; values are sent as one comma-separated name query parameter. |
| `cursor` | string | No | Opaque next cursor from a previous response; omit for the first page. |
| `category_ids` | array | No | Category IDs to retrieve; values are sent as one comma-separated id query parameter. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List Channel Rewards

**Slug:** `KICK_LIST_CHANNEL_REWARDS`

Return all channel point rewards on the authorized broadcaster's channel.

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List Event Subscriptions

**Slug:** `KICK_LIST_EVENT_SUBSCRIPTIONS`

List webhook event subscriptions owned by the connected Kick app, optionally for one broadcaster.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `broadcaster_user_id` | integer | No | Only return subscriptions for this broadcaster's numeric Kick user ID. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List Livestreams

**Slug:** `KICK_LIST_LIVESTREAMS`

Discover active Kick livestreams by category or language and return one cursor-paginated page.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `limit` | integer | No | Maximum livestreams to return in this page (1-1000). |
| `cursor` | string | No | Opaque next cursor from a previous response; omit for the first page. |
| `category_ids` | array | No | Category IDs to include; each value is sent as a repeated category_id query key (maximum 25). |
| `language_codes` | array | No | BCP 47 language codes to include; each value is sent as a repeated language_code query key (maximum 25). |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List Reward Redemptions

**Slug:** `KICK_LIST_REWARD_REDEMPTIONS`

Return one page of channel reward redemptions filtered by reward, status, or redemption IDs.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `cursor` | string | No | Opaque next cursor from a previous response; omit for the first page. |
| `status` | string ("pending" | "accepted" | "rejected") | No | Redemption status to return; defaults to pending and cannot be used with redemption_ids. |
| `reward_id` | string | No | Reward ULID whose redemptions to return; cannot be used with redemption_ids. |
| `redemption_ids` | array | No | Specific redemption ULIDs. Each value is sent as a repeated id query key; cannot be combined with reward_id or status. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Remove Moderation Ban

**Slug:** `KICK_REMOVE_MODERATION_BAN`

Remove a user's ban or active timeout from a broadcaster chat.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `user_id` | integer | Yes | User whose ban or timeout should be removed. |
| `broadcaster_user_id` | integer | Yes | Broadcaster whose chat contains the ban or timeout. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Resolve Reward Redemptions

**Slug:** `KICK_RESOLVE_REWARD_REDEMPTIONS`

Accept or reject up to 25 pending channel reward redemptions in one explicit decision.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `decision` | string ("accept" | "reject") | Yes | Final status to apply to all supplied pending redemptions. |
| `redemption_ids` | array | Yes | One to 25 unique pending redemption ULIDs to accept or reject. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Send Chat Message

**Slug:** `KICK_SEND_CHAT_MESSAGE`

Immediately send a Kick chat message as the authorized user or connected bot, optionally as a reply.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `content` | string | Yes | Chat message text to send immediately, limited to 500 grapheme clusters and 2048 UTF-8 bytes. |
| `sender_type` | string ("user" | "bot") | Yes | Send as the authorized user or the connected bot. |
| `broadcaster_user_id` | integer | No | Destination broadcaster ID. Required when sender_type is user and forbidden when sender_type is bot. |
| `reply_to_message_id` | string | No | Message UUID to reply to, if this message is a reply. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Start Ad Break

**Slug:** `KICK_START_AD_BREAK`

Immediately start an ad break on the authorized live Kick broadcaster channel when its ad capabilities permit it.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `request_id` | string | Yes | Caller-generated UUID used by Kick as the idempotency and request ID. Reuse the same UUID only when retrying the same intended ad break; use a new UUID for a new ad break. |
| `duration_seconds` | integer | Yes | Length of the ad break in seconds, from 7 through 90. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Update Channel

**Slug:** `KICK_UPDATE_CHANNEL`

Update one or more metadata fields on the authorized broadcaster's livestream channel.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `category_id` | integer | No | Category ID to assign to the authorized broadcaster's channel. |
| `custom_tags` | array | No | Complete custom-tag list to set on the channel. Pass an empty list to clear all custom tags. |
| `stream_title` | string | No | New livestream title for the authorized broadcaster's channel. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Update Channel Reward

**Slug:** `KICK_UPDATE_CHANNEL_REWARD`

Update one or more fields on a channel reward created by the connected Kick app.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `cost` | integer | No | Replacement channel point cost to redeem the reward. |
| `title` | string | No | Replacement reward title shown to viewers. |
| `is_paused` | boolean | No | Whether reward redemptions are temporarily paused. |
| `reward_id` | string | Yes | ULID of the app-owned channel reward to update. |
| `is_enabled` | boolean | No | Whether viewers can redeem the reward. |
| `description` | string | No | Replacement reward description shown to viewers. |
| `background_color` | string | No | Replacement reward background color as a six-digit hex value. |
| `is_user_input_required` | boolean | No | Whether redemption requires viewer text input. |
| `should_redemptions_skip_request_queue` | boolean | No | Whether redemptions bypass the request queue. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |
