# Sendbird

Sendbird is a platform that provides chat, voice, and video APIs to help businesses build in-app communication features.

- **Category:** communication
- **Auth:** API_KEY
- **Composio Managed App Available?** N/A
- **Tools:** 37
- **Triggers:** 0
- **Slug:** `SENDBIRD`
- **Version:** 20260211_00

## Tools

### Add Members To Group Channel

**Slug:** `SENDBIRD_ADD_MEMBERS_GROUP_CHANNEL`

Tool to add members to a group channel. Use when you need to invite one or more users into an existing group channel.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `seconds` | integer | No | Duration in seconds to hide previous messages. Required if hide_existing_messages is true. |
| `user_ids` | array | Yes | List of User IDs to add to the channel. |
| `channel_url` | string | Yes | URL-encoded identifier of the target group channel. |
| `hide_existing_messages` | boolean | No | Whether to hide previous messages for new members. |

#### 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 |

### Ban User from Group Channel

**Slug:** `SENDBIRD_BAN_USER_FROM_GROUP_CHANNEL`

Tool to ban a user from a group channel. Use when moderating group channels to restrict member access. Execute after confirming channel_url and user_id.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `seconds` | integer | No | Duration of the ban in seconds. If omitted, ban is permanent. |
| `user_id` | string | Yes | ID of the user to ban from the channel. |
| `agent_id` | string | No | ID of the admin or moderator performing the ban. |
| `channel_url` | string | Yes | URL-encoded identifier of the group channel to ban the user from. |
| `description` | string | No | Reason for the ban in moderation records. |

#### 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 Group Channel

**Slug:** `SENDBIRD_CREATE_CHANNEL`

Tool to create a new group channel. Use when you need to start a conversation with specific users. Execute after specifying users and optional settings.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | No | Custom data for the channel |
| `name` | string | No | Name of the channel |
| `strict` | boolean | No | True for strict creation; fails if channel exists |
| `is_super` | boolean | No | True to create a supergroup channel |
| `user_ids` | array | No | List of user IDs to invite to the channel (max 100) |
| `cover_url` | string | No | URL of the channel cover image |
| `is_public` | boolean | No | True to create a public channel |
| `cover_file` | string | No | Binary content of the cover image for multipart upload |
| `access_code` | string | No | Access code for private channels |
| `channel_url` | string | No | Custom URL of the channel; autogenerated if omitted |
| `custom_type` | string | No | Custom type identifier for the channel |
| `is_distinct` | boolean | No | True to create a distinct channel |
| `is_ephemeral` | boolean | No | True to create an ephemeral channel |
| `operator_ids` | array | No | List of user IDs to assign as operators |
| `custom_fields` | object | No | Custom fields object |
| `is_discoverable` | boolean | No | True to list the channel in search results |
| `is_chat_notification` | boolean | No | True to send system notifications for channel events |
| `message_survival_seconds` | integer | No | Message retention period in seconds |

#### 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 Sendbird User

**Slug:** `SENDBIRD_CREATE_USER`

Creates a new user in Sendbird. Use this to register user accounts before they can join channels or send messages. The user_id must be unique across the application.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `user_id` | string | Yes | Unique identifier for the new user. Must be unique across the application. Can contain alphanumeric characters, underscores, and hyphens. |
| `metadata` | object | No | Custom key-value pairs to store additional user data. Keys and values must be strings. |
| `nickname` | string | No | Display name shown to other users in channels. If not provided, may default to user_id. |
| `is_active` | boolean | No | If true, the user is active and can send/receive messages. Inactive users cannot participate in channels. |
| `profile_url` | string | No | URL of the user's profile image. Must be a valid HTTP/HTTPS URL. |
| `phone_number` | string | No | User's phone number in E.164 format (e.g., +15551234567). Used for user discovery if enabled. |
| `profile_file` | string | No | Binary content of the user's profile image for multipart upload. Use this instead of profile_url when uploading an image file directly. |
| `discovery_keys` | array | No | List of unique keys used to find this user through the discovery feature (e.g., email addresses, phone numbers). |
| `has_ever_logged_in` | boolean | No | Internal flag indicating if the user has ever logged in. Typically managed by the system. |
| `issue_access_token` | boolean | No | If true, generates and returns an access token for the user that can be used for client-side authentication. |
| `preferred_languages` | array | No | List of ISO 639-1 language codes indicating user's preferred languages for push notifications. |

#### 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 Group Channel

**Slug:** `SENDBIRD_DELETE_CHANNEL`

Permanently deletes a Sendbird group channel. Use this tool when you need to remove a group channel and all its associated data (messages, members, etc.). WARNING: This action is irreversible. Requires the channel_url identifier of the channel to delete.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `channel_url` | string | Yes | The unique URL identifier of the group channel to delete. This is the channel's unique ID, typically in format like 'sendbird_group_channel_123456' or a custom URL set during channel creation. |

#### 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 Message

**Slug:** `SENDBIRD_DELETE_MESSAGE`

Permanently deletes a specific message from a Sendbird group channel. This action cannot be undone. Use this when you need to remove a message that was sent by mistake or contains inappropriate content. Requires both channel_url and message_id, which can be obtained from channel/message listing endpoints.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `message_id` | integer | Yes | Unique numeric ID of the message to delete. Must be a positive integer obtained from message listing or message sending responses. |
| `channel_url` | string | Yes | URL-encoded identifier of the group channel containing the message to delete. Can be obtained from channel creation responses or channel listing endpoints. |

#### 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 Sendbird User

**Slug:** `SENDBIRD_DELETE_USER`

Tool to delete a Sendbird user. Use when you need to remove a user from your Sendbird application, optionally permanently.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `user_id` | string | Yes | Unique ID of the user to delete. |
| `hard_delete` | boolean | No | Whether to permanently delete the user and all associated data. |

#### 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 Count Preference Of Channel

**Slug:** `SENDBIRD_GET_COUNT_PREFERENCE_OF_CHANNEL`

Tool to retrieve a user's count preference for a specific group channel. Use after confirming the user and channel exist to determine whether to display all, unread-only, or mention-only counts.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `user_id` | string | Yes | The unique ID of the user. |
| `channel_url` | string | Yes | URL (identifier) of the group 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 User Group Channel Count by Join Status

**Slug:** `SENDBIRD_GET_NUMBER_OF_CHANNELS_BY_JOIN_STATUS`

Retrieves the number of group channels for a user, categorized by join status (joined, invited, etc.). Use this tool to get channel count statistics for a specific user, optionally filtered by channel properties like visibility (public/private), distinctness, or super mode. Returns counts of joined channels, invited channels (with friend/non-friend breakdown), and total count.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `user_id` | string | Yes | The unique ID of the target user whose group channel count will be retrieved. |
| `super_mode` | string ("all" | "super" | "nonsuper") | No | Filter by channel type. 'super' channels support up to tens of thousands of members; 'nonsuper' regular channels support up to 100 members. Defaults to 'all'. |
| `public_mode` | string ("all" | "public" | "private") | No | Filter by channel visibility. 'public' channels allow users to join without invitation; 'private' channels require an invitation. Defaults to 'all'. |
| `custom_types` | array | No | Filter by custom channel types. Only channels matching one of the specified custom types will be counted. Pass an empty list or omit to include all custom types. |
| `distinct_mode` | string ("all" | "distinct" | "nondistinct") | No | Filter by channel distinctness. 'distinct' channels resume conversations with the same members; 'nondistinct' allows multiple channels with identical member sets. Defaults to 'all'. |

#### 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 |

### Sendbird Get Unread Item Count

**Slug:** `SENDBIRD_GET_NUMBER_OF_UNREAD_ITEMS`

Tool to retrieve a user's unread item counts including unread messages, mentions, and pending invitations across group channels. Use this to display unread counts in the UI for a specific user.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `user_id` | string | Yes | Unique ID of the user whose unread item counts are to be retrieved. |
| `item_keys` | string | No | Comma-separated list of item keys to retrieve. Options: non_super_group_channel_unread_message_count, super_group_channel_unread_message_count, group_channel_unread_message_count, non_super_group_channel_unread_mention_count, super_group_channel_unread_mention_count, group_channel_unread_mention_count, non_super_group_channel_invitation_count, super_group_channel_invitation_count, group_channel_invitation_count. If not specified, returns all available counts. |
| `custom_types` | string | No | Comma-separated list of custom channel types to filter the count by. |

#### 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 |

### Issue Session Token

**Slug:** `SENDBIRD_ISSUE_SESSION_TOKEN`

Issues a session token for authenticating a Sendbird user. Use this tool when you need to: - Generate a new session token for SDK authentication - Refresh an expiring or expired session token - Provide secure access for a user to connect to Sendbird chat The session token has a default expiration of 7 days if expires_at is not specified.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `user_id` | string | Yes | The unique ID of the user to issue a session token for. |
| `expires_at` | integer | No | Optional token expiration timestamp in Unix milliseconds. If omitted, the default token lifetime is used. |

#### 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 |

### Leave Group Channels

**Slug:** `SENDBIRD_LEAVE_GROUP_CHANNELS`

Tool to leave group channels for a user. Use when you need to make a user exit one or more joined group channels.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `user_id` | string | Yes | Unique ID of the user who will leave group channels. |
| `custom_type` | string | No | Custom type to filter which group channels to leave. Only channels with this custom type will be left. |
| `channel_urls` | array | No | List of group channel URLs to leave. Required unless `should_leave_all` is true or `custom_type` is specified. |
| `should_leave_all` | boolean | No | Whether to leave all joined group channels. If true, `channel_urls` is ignored. |

#### 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 Banned Members

**Slug:** `SENDBIRD_LIST_BANNED_MEMBERS`

Tool to list banned members in a group channel. Use when you need to see which users are banned from a specific group channel.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `limit` | integer | No | Number of banned members to return per page (1-100). Default is 10. |
| `token` | string | No | Pagination token from previous response; omit for first request. |
| `channel_url` | string | Yes | Unique URL of the group channel to list banned members from. |

#### 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 |

### Sendbird List Group Channel Messages

**Slug:** `SENDBIRD_LIST_GROUP_CHANNEL_MESSAGES`

Tool to list (paginate) messages in a group channel when you only know the channel_url. Requires either message_ts (Unix ms timestamp) or message_id as an anchor. Use with SENDBIRD_VIEW_GROUP_CHANNEL (show_read_receipt=true) to fetch unread messages: get last-read timestamp, then call this with message_ts=<last_read>, prev_limit=0, next_limit=<batch_size>, include=false.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `include` | boolean | No | Whether to include the anchor message in the results. Default is false. |
| `reverse` | boolean | No | Whether to reverse the order of results. Default is false. |
| `sender_id` | string | No | Filter messages by a single sender's user ID. |
| `message_id` | integer | No | Message ID anchor. Use to fetch messages around this message. Required if message_ts is not provided. |
| `message_ts` | integer | No | Timestamp anchor in Unix milliseconds. Use to fetch messages around this time. Required if message_id is not provided. |
| `next_limit` | integer | No | Number of messages to retrieve after the anchor (0-200). Default is 10. |
| `prev_limit` | integer | No | Number of messages to retrieve before the anchor (0-200). Default is 0. |
| `sender_ids` | string | No | Filter messages by multiple sender user IDs (comma-separated). |
| `channel_url` | string | Yes | URL-encoded identifier of the group channel. |
| `custom_types` | string | No | Filter by custom message types (comma-separated). |
| `message_type` | string | No | Filter by message type. Options: MESG (text), FILE (file), ADMM (admin). Can combine with commas. |
| `operator_filter` | string | No | Filter by operator status. Options: all, operator, nonoperator. |
| `include_reactions` | boolean | No | Whether to include reaction information. Default is false. |
| `including_removed` | boolean | No | Whether to include removed messages. Default is false. |
| `include_reply_type` | string | No | Filter by reply type. Options: all, only_reply_to_channel, none. |
| `include_thread_info` | boolean | No | Whether to include thread information. Default is false. |
| `include_poll_details` | boolean | No | Whether to include poll details for messages with polls. Default is false. |
| `with_sorted_meta_array` | boolean | No | Whether to include sorted metadata arrays. Default is false. |
| `include_parent_message_info` | boolean | No | Whether to include parent message information for threaded messages. Default is false. |

#### 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 Group Channels

**Slug:** `SENDBIRD_LIST_GROUP_CHANNELS`

Tool to list group channels. Use when you need to fetch paginated group channels with optional filters.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `name` | string | No | Filter channels by channel name |
| `limit` | integer | No | Number of results per page (1-100) |
| `token` | string | No | Pagination token to retrieve the next page |
| `show_empty` | boolean | No | Whether to include empty channels in the results |
| `super_mode` | string ("all" | "super" | "nonsuper") | No | Filter by super channel type: all, super, or nonsuper |
| `public_mode` | string ("all" | "public" | "private") | No | Filter by public channel type: all, public, or private |
| `show_frozen` | boolean | No | Whether to include frozen channels in the results |
| `channel_urls` | array | No | Filter channels by exact URLs |
| `custom_types` | array | No | Filter channels by custom types |
| `url_contains` | string | No | Filter channels whose URL contains this substring |
| `created_after` | integer | No | List channels created after this timestamp (in milliseconds) |
| `distinct_mode` | string ("all" | "distinct" | "nondistinct") | No | Filter by distinct channel type: all, distinct, or nondistinct |
| `show_metadata` | boolean | No | Whether to include channel metadata |
| `created_before` | integer | No | List channels created before this timestamp (in milliseconds) |
| `my_member_state` | string ("all" | "joined_only" | "invited_only" | "invited_by_friend" | "invited_by_non_friend") | No | Filter by member state: all, joined_only, invited_only, invited_by_friend, or invited_by_non_friend |
| `members_nickname` | string | No | Filter channels by member nickname |
| `show_read_receipt` | boolean | No | Whether to include read receipt data |
| `members_exactly_in` | array | No | List of user IDs who must all be members of the channel |
| `members_include_in` | array | No | List of user IDs one of whom must be a member of the channel |
| `show_delivery_receipt` | boolean | No | Whether to include delivery receipt data |
| `custom_type_startswith` | string | No | Filter channels whose custom type starts with this prefix |

#### 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 Group Channel Members

**Slug:** `SENDBIRD_LIST_MEMBERS_GROUP_CHANNEL`

Tool to list members of a group channel. Use when you need to paginate through members of a specified group channel.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `limit` | integer | No | Maximum number of results to return (1-100) |
| `order` | string ("nickname_alphabetical" | "operator_alphabetical") | No | Sorting order of members list |
| `token` | string | No | Pagination token for fetching the next page |
| `offset` | integer | No | Number of results to skip before returning the set (deprecated; use token instead) |
| `channel_url` | string | Yes | Unique URL of the group channel |
| `operator_filter` | string ("all" | "operator" | "nonoperator") | No | Filter by operator status |
| `member_state_filter` | string ("all" | "joined_only" | "invited_only") | No | Filter by membership state |
| `muted_member_filter` | string ("all" | "muted" | "unmuted") | No | Filter by muted status of members |
| `nickname_startswith` | string | No | Search members whose nicknames start with this string |

#### 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 Operators by Custom Channel Type

**Slug:** `SENDBIRD_LIST_OPERATORS_CUSTOM_CHANNEL_TYPE`

Tool to list operators of a channel by custom channel type. Use when you need to fetch operators for a specific custom channel type with pagination.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `limit` | integer | No | Maximum number of operators to return per page (1-100). |
| `token` | string | No | Pagination cursor from a previous call; omit for the first request. |
| `custom_type` | string | Yes | Custom channel type to list operators for. |

#### 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 Group Channel Operators

**Slug:** `SENDBIRD_LIST_OPERATORS_GROUP_CHANNEL`

Tool to list operators of a group channel. Use after specifying the channel_url when needing to paginate through operators.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `limit` | integer | No | Number of operators to return per page (1-100). Default is 10. |
| `token` | string | No | Pagination token from previous response; omit for first page |
| `channel_url` | string | Yes | URL of the group channel to retrieve operators from |

#### 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 Open Channel Operators

**Slug:** `SENDBIRD_LIST_OPERATORS_OPEN_CHANNEL`

Tool to list operators of an open channel. Use when you have the open channel URL and need to fetch its operators. Supports pagination via token and limit.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `limit` | integer | No | Maximum number of operators to return per page (1-100). |
| `token` | string | No | Pagination cursor from a previous response; omit for the first request. |
| `channel_url` | string | Yes | URL-encoded unique identifier of the open channel to list operators for. |

#### 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 Sendbird Users

**Slug:** `SENDBIRD_LIST_USERS`

Retrieves a paginated list of users from your Sendbird application. Use this tool to: - Browse all users in your application - Search for users by nickname or user IDs - Filter users by metadata, custom type, or activity status - Paginate through large user lists using the 'next' token Returns user details including profile info, connection status, and metadata. Results are paginated; use the 'next' token from the response to fetch additional pages.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `limit` | integer | No | Maximum number of users to return per page (1-100). Defaults to 10 if not specified. |
| `order` | string ("nickname_alphabetical" | "created_at" | "user_id_alphabetical") | No | Sort order for results. Options: 'nickname_alphabetical' (A-Z by nickname), 'created_at' (newest first), 'user_id_alphabetical' (A-Z by user ID). |
| `token` | string | No | Pagination token from the 'next' field of a previous response. Omit for the first page. |
| `nickname` | string | No | Filter users by exact nickname match (case-insensitive). |
| `user_ids` | array | No | Filter to only return specific users by their IDs. Provide as a list of user ID strings. |
| `is_active` | boolean | No | Filter by account status. Set to true for active users, false for deactivated users. |
| `custom_type` | string | No | Filter users by their custom type classification. |
| `metatag_key` | string | No | Filter users who have this metadata key set. Use with metatag_values for key-value filtering. |
| `metatag_values` | array | No | Filter users by metadata values for the specified metatag_key. Requires metatag_key to be set. |
| `nickname_contains` | string | No | Filter users whose nickname contains this substring (case-insensitive partial match). |
| `has_ever_logged_in` | boolean | No | Filter by login history. Set to true for users who have logged in, false for never logged in. |

#### 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 |

### Mark All User Messages As Read

**Slug:** `SENDBIRD_MARK_ALL_USER_MESSAGES_AS_READ`

Tool to mark all of a user's messages as read in group channels. Use when resetting unread message counts after a user has viewed all messages.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `user_id` | string | Yes | Unique ID of the user whose messages will be marked as read. |

#### 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 |

### Mute User

**Slug:** `SENDBIRD_MUTE_USER`

Tool to mute a user in a group channel. Use when you need to prevent a user from sending messages for a specified duration.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `seconds` | integer | No | Mute duration in seconds (0 = indefinite) |
| `user_id` | string | Yes | ID of the user to mute |
| `channel_url` | string | Yes | URL-encoded identifier of the target group channel |
| `description` | string | No | Custom description for the mute 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 |

### Register Operators by Custom Channel Type

**Slug:** `SENDBIRD_REGISTER_OPERATORS_CUSTOM_CHANNEL_TYPE`

Registers one or more users as operators for all channels with a specified custom channel type. Use this tool when you need to grant operator privileges to users across all channels that share the same custom_type. Operators have elevated permissions including: - Muting and banning users from channels - Deleting messages in channels - Freezing/unfreezing channels - Managing channel settings Prerequisites: - The user IDs must belong to existing Sendbird users - The custom_type should match channels you want to manage Note: This affects all channels with the specified custom_type, not just a single channel.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `custom_type` | string | Yes | The custom channel type identifier. This assigns operator privileges to specified users for all channels that have this custom type. The custom_type must match an existing channel's custom_type value. |
| `operator_ids` | array | Yes | List of existing Sendbird user IDs to register as operators. At least one user ID is required. Operators have elevated privileges like muting/banning users, deleting messages, and managing channel settings. |

#### 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 |

### Register Group Channel Operators

**Slug:** `SENDBIRD_REGISTER_OPERATORS_GROUP_CHANNEL`

Tool to register one or more users as operators in a Sendbird group channel. Use when elevating permissions of existing channel members.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `user_ids` | array | Yes | List of user IDs to register as operators |
| `channel_url` | string | Yes | URL-encoded identifier of the group 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 |

### Register Operators to Open Channel

**Slug:** `SENDBIRD_REGISTER_OPERATORS_OPEN_CHANNEL`

Tool to register operators to an open channel. Use after creating or updating an open channel when you need to assign operator roles.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `user_ids` | array | Yes | List of user IDs to register as operators (at least one) |
| `channel_url` | string | Yes | URL-encoded identifier of the open 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 |

### Revoke All Session Tokens

**Slug:** `SENDBIRD_REVOKE_ALL_SESSION_TOKENS`

Tool to revoke all session tokens for a user. Use when you need to invalidate all active sessions for security.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `user_id` | string | Yes | Unique ID of the user whose session tokens will be revoked. |

#### 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 Message

**Slug:** `SENDBIRD_SEND_MESSAGE`

Tool to send a message to a group channel. Use when you need to post a text, file, or admin message to an existing group channel.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | No | Free-form custom data string (often JSON) |
| `message` | string | No | Text content of the message. Required when message_type is 'MESG' |
| `poll_id` | integer | No | Attach an existing poll by its ID |
| `user_id` | string | No | Sender's user ID. Required unless using API token as acting user |
| `is_silent` | boolean | No | Send as silent message (no push notifications) |
| `metaarray` | array | No | Array of metadata objects |
| `channel_url` | string | Yes | URL-encoded identifier of the target group channel |
| `custom_type` | string | No | Custom message type for classification |
| `mention_type` | string ("users" | "channel") | No | Mention scope: 'users' to mention specific users or 'channel' to mention all |
| `message_type` | string ("MESG" | "FILE" | "ADMM") | Yes | Type of message: 'MESG' for text, 'FILE' for file, 'ADMM' for admin message |
| `parent_message_id` | integer | No | Reply in a thread to the message with this ID |
| `mentioned_user_ids` | array | No | List of user IDs to mention when mention_type is 'users' |
| `is_operator_message` | boolean | No | Mark as operator (moderator) message |
| `translation_target_languages` | array | No | List of language codes for auto-translation, e.g., ['en', 'es'] |
| `push_notification_delivery_option` | string ("default" | "suppress" | "include_offline_user") | No | Push notification option: 'default', 'suppress', or 'include_offline_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 |

### Unban User from Group Channel

**Slug:** `SENDBIRD_UNBAN_USER`

Tool to unban a user from a group channel. Use when reinstating a previously banned user. Execute after confirming the user is currently banned.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `channel_url` | string | Yes | The URL of the group channel from which to unban the user. |
| `banned_user_id` | string | Yes | The unique ID of the banned user to unban. |

#### 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 |

### Unmute User

**Slug:** `SENDBIRD_UNMUTE_USER`

Tool to unmute a user in a group channel. Use when you want to restore a muted user's ability to send messages after confirming they are muted.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `channel_url` | string | Yes | URL-encoded identifier of the group channel to unmute the user in. |
| `muted_user_id` | string | Yes | User ID to unmute from 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 |

### Unregister Operators Custom Channel Type

**Slug:** `SENDBIRD_UNREGISTER_OPERATORS_CUSTOM_CHANNEL_TYPE`

Tool to unregister operators from channels by custom channel type. Use when you need to remove operator roles from users across channels of a specific custom type.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `user_ids` | array | Yes | List of user IDs to unregister as operators. |
| `custom_type` | string | Yes | Custom channel type to target. Example: 'my_custom_type' |

#### 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 Count Preference Of Channel

**Slug:** `SENDBIRD_UPDATE_COUNT_PREFERENCE_OF_CHANNEL`

Tool to update a user's unread count preference for a specific group channel. Use when you want to include or suppress a channel in the user's unread counts.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `user_id` | string | Yes | The unique ID of the user. |
| `channel_url` | string | Yes | URL identifier of the group channel. |
| `count_preference` | string ("all" | "unread_message_count_only" | "mention_count_only" | "none") | Yes | The user's count preference for the channel: one of 'all', 'unread_message_count_only', 'mention_count_only', or 'none'. |

#### 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 Group Channel

**Slug:** `SENDBIRD_UPDATE_GROUP_CHANNEL`

Tool to update group channel information. Use when you need to modify channel attributes such as name, cover image, privacy settings, or operator list after channel creation.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | No | Custom channel data as a JSON-encoded string |
| `name` | string | No | New name for the channel |
| `is_super` | boolean | No | Whether this is a supergroup channel |
| `cover_url` | string | No | HTTPS URL for the channel's cover image |
| `is_public` | boolean | No | Whether this channel is publicly joinable |
| `operators` | array | No | List of user IDs to assign as channel operators |
| `access_code` | string | No | Access code required for joining this channel |
| `channel_url` | string | Yes | URL identifier of the group channel to update |
| `custom_type` | string | No | Custom type label for the channel |
| `is_distinct` | boolean | No | Whether this is a distinct channel |
| `is_ephemeral` | boolean | No | Whether this channel is ephemeral |
| `my_count_preference` | string ("unread_message_count_only" | "all_count") | No | Unread count preference ("unread_message_count_only" or "all_count") |

#### 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 |

### Sendbird Update Message

**Slug:** `SENDBIRD_UPDATE_MESSAGE`

Tool to update an existing group channel message in Sendbird. Use after you need to modify content or metadata of a sent message.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | No | Additional data for the message as a JSON-encoded string |
| `content` | string | No | New text content of the message |
| `user_id` | string | No | ID of the user performing the update |
| `dedup_id` | string | No | Deduplication ID for the message update |
| `is_silent` | boolean | No | Whether the message update should be silent (no push notification) |
| `message_id` | integer | Yes | Unique ID of the message to update |
| `channel_url` | string | Yes | URL identifier of the group channel containing the message |
| `custom_type` | string | No | Custom type label for the message |
| `mention_type` | string | No | Mention type for the message (e.g., 'users' or 'channel') |
| `message_type` | string | No | Type of the message (e.g., 'MESG' or 'FILE') |
| `apns_bundle_id` | string | No | APNs bundle ID for iOS push notifications |
| `sorted_metaarray` | array | No | Sorted metaarray objects for the message |
| `mentioned_user_ids` | array | No | List of user IDs to mention in the message |
| `push_notification_delivery_option` | string | No | Push notification delivery option ('default', 'suppress') |

#### 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 Sendbird User

**Slug:** `SENDBIRD_UPDATE_USER`

Tool to update a user's information. Use when modifying nickname, profile image URL, activation status, or metadata.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `user_id` | string | Yes | Unique ID of the user to update |
| `metadata` | object | No | Custom key-value store for user metadata |
| `nickname` | string | No | New display name for the user |
| `is_active` | boolean | No | Set to false to deactivate the user account |
| `profile_url` | string | No | URL of the new profile image |
| `issue_access_token` | boolean | No | Whether to issue a new access token for the user |
| `preferred_languages` | array | No | List of language tags for localization |

#### 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 |

### Sendbird View Group Channel

**Slug:** `SENDBIRD_VIEW_GROUP_CHANNEL`

Tool to view information about a specific group channel. Use when you need channel details after confirming the channel_url.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `channel_url` | string | Yes | URL-encoded identifier of the group channel to retrieve. |
| `show_member` | boolean | No | Whether to include the channel's member list in the response. |
| `show_metadata` | boolean | No | Whether to include channel metadata in the response. |
| `show_read_receipt` | boolean | No | Whether to include read receipt information in the response. |
| `show_migration_info` | boolean | No | Whether to include migration information in the response. |
| `show_delivery_receipt` | boolean | No | Whether to include delivery receipt information in the response. |

#### 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 |

### Sendbird View Message

**Slug:** `SENDBIRD_VIEW_MESSAGE`

Tool to view a specific message in a group channel. Use after confirming channel_url and message_id.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `message_id` | integer | Yes | Unique ID of the message. |
| `channel_url` | string | Yes | URL-encoded identifier of the group channel. |
| `with_sorted_metaarray` | boolean | No | Whether to include sorted_metaarray arrays in the response. |

#### 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 |

### View User

**Slug:** `SENDBIRD_VIEW_USER`

Tool to retrieve information about a specific Sendbird user. Use when you need to fetch detailed user data by their user ID.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `user_id` | string | Yes | The unique ID of the user to retrieve. |

#### 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 |
