Sendbird

Learn how to use Sendbird with Composio

Overview

SLUG: SENDBIRD

Description

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

Authentication Details

subdomain
stringRequired
generic_api_key
stringRequired

Connecting to Sendbird

Create an auth config

Use the dashboard to create an auth config for the Sendbird toolkit. This allows you to connect multiple Sendbird accounts to Composio for agents to use.

1

Select App

Navigate to Sendbird.

2

Configure Auth Config Settings

Select among the supported auth schemes of and configure them here.

3

Create and Get auth config ID

Click “Create Sendbird Auth Config”. After creation, copy the displayed ID starting with ac_. This is your auth config ID. This is not a sensitive ID — you can save it in environment variables or a database. This ID will be used to create connections to the toolkit for a given user.

Connect Your Account

Using API Key

1from composio import Composio
2
3# Replace these with your actual values
4sendbird_auth_config_id = "ac_YOUR_SENDBIRD_CONFIG_ID" # Auth config ID created above
5user_id = "0000-0000-0000" # UUID from database/app
6
7composio = Composio()
8
9def authenticate_toolkit(user_id: str, auth_config_id: str):
10 # Replace this with a method to retrieve an API key from the user.
11 # Or supply your own.
12 user_api_key = input("[!] Enter API key")
13
14 connection_request = composio.connected_accounts.initiate(
15 user_id=user_id,
16 auth_config_id=auth_config_id,
17 config={"auth_scheme": "API_KEY", "val": {"generic_api_key": user_api_key}}
18 )
19
20 # API Key authentication is immediate - no redirect needed
21 print(f"Successfully connected Sendbird for user {user_id}")
22 print(f"Connection status: {connection_request.status}")
23
24 return connection_request.id
25
26
27connection_id = authenticate_toolkit(user_id, sendbird_auth_config_id)
28
29# You can verify the connection using:
30connected_account = composio.connected_accounts.get(connection_id)
31print(f"Connected account: {connected_account}")

Tools

Executing tools

To prototype you can execute some tools to see the responses and working on the Sendbird toolkit’s playground

For code examples, see the Tool calling guide and Provider examples.

Tool List

Tool Name: Add Members To Group Channel

Description

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

Action Parameters

channel_url
stringRequired
hide_existing_messages
seconds
user_ids
arrayRequired

Action Response

data
objectRequired
error
successful
booleanRequired

Tool Name: Ban User from Group Channel

Description

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.

Action Parameters

agent_id
channel_url
stringRequired
description
seconds
user_id
stringRequired

Action Response

data
objectRequired
error
successful
booleanRequired

Tool Name: Create Group Channel

Description

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.

Action Parameters

access_code
channel_url
cover_file
cover_url
custom_fields
custom_type
data
is_chat_notification
is_discoverable
is_distinct
is_ephemeral
is_public
is_super
message_survival_seconds
name
operator_ids
strict
user_ids

Action Response

data
objectRequired
error
successful
booleanRequired

Tool Name: Create Sendbird User

Description

Tool to create a new user. Use when you need to register a user account in Sendbird.

Action Parameters

discovery_keys
has_ever_logged_in
is_active
Defaults to True
issue_access_token
metadata
nickname
phone_number
preferred_languages
profile_file
profile_url
user_id
stringRequired

Action Response

data
objectRequired
error
successful
booleanRequired

Tool Name: Delete Group Channel

Description

Tool to delete a specific group channel. Use when you have the channel URL and want to permanently remove the channel. Execute after confirming the channel exists.

Action Parameters

channel_url
stringRequired

Action Response

data
objectRequired
error
successful
booleanRequired

Tool Name: Delete Message

Description

Tool to delete a specific message in a Sendbird group channel. Use when you need to permanently remove a sent message after confirming deletion permissions.

Action Parameters

channel_url
stringRequired
message_id
integerRequired

Action Response

data
objectRequired
error
successful
booleanRequired

Tool Name: Delete Sendbird User

Description

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

Action Parameters

hard_delete
boolean
user_id
stringRequired

Action Response

data
objectRequired
error
successful
booleanRequired

Tool Name: Get Count Preference Of Channel

Description

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.

Action Parameters

channel_url
stringRequired
user_id
stringRequired

Action Response

data
objectRequired
error
successful
booleanRequired

Tool Name: Sendbird Get Group Channel Count by Join Status

Description

Tool to retrieve number of group channels by join status for a user. Use when you need counts of invited, joined, and total channels for a specific user.

Action Parameters

custom_types
distinct_mode
public_mode
super_mode
user_id
stringRequired

Action Response

data
objectRequired
error
successful
booleanRequired

Tool Name: Sendbird Get Unread Item Count

Description

Tool to retrieve a user's unread item counts. Use after you need the total unread messages, mentions, and channel counts for a specific user.

Action Parameters

user_id
stringRequired

Action Response

data
objectRequired
error
successful
booleanRequired

Tool Name: Issue Session Token

Description

Tool to issue a session token for a user. Use when you need to generate or refresh a user's session token.

Action Parameters

expires_at
user_id
stringRequired

Action Response

data
objectRequired
error
successful
booleanRequired

Tool Name: Leave Group Channels

Description

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

Action Parameters

channel_urls
arrayRequired
should_leave_all
user_id
stringRequired

Action Response

data
objectRequired
error
successful
booleanRequired

Tool Name: List Banned Members

Description

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

Action Parameters

channel_url
stringRequired
limit
token

Action Response

data
objectRequired
error
successful
booleanRequired

Tool Name: List Group Channels

Description

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

Action Parameters

channel_urls
created_after
created_before
custom_type_startswith
custom_types
distinct_mode
limit
members_exactly_in
members_include_in
members_nickname
my_member_state
name
public_mode
show_delivery_receipt
show_empty
show_frozen
show_metadata
show_read_receipt
super_mode
token
url_contains

Action Response

data
objectRequired
error
successful
booleanRequired

Tool Name: List Group Channel Members

Description

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

Action Parameters

channel_url
stringRequired
limit
member_state_filter
muted_member_filter
nickname_startswith
offset
operator_filter
order
token

Action Response

data
objectRequired
error
successful
booleanRequired

Tool Name: List Operators by Custom Channel Type

Description

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.

Action Parameters

custom_type
stringRequired
limit
token

Action Response

data
objectRequired
error
successful
booleanRequired

Tool Name: List Group Channel Operators

Description

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

Action Parameters

channel_url
stringRequired
limit
token

Action Response

data
objectRequired
error
successful
booleanRequired

Tool Name: List Open Channel Operators

Description

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.

Action Parameters

channel_url
stringRequired
limit
token

Action Response

data
objectRequired
error
successful
booleanRequired

Tool Name: List Users

Description

Tool to retrieve a list of users. Use after setting up Sendbird API credentials to paginate or filter all users in your application.

Action Parameters

custom_type
has_ever_logged_in
is_active
limit
metatag_key
metatag_values
nickname
nickname_contains
order
token
user_ids

Action Response

data
objectRequired
error
successful
booleanRequired

Tool Name: Mark All User Messages As Read

Description

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.

Action Parameters

user_id
stringRequired

Action Response

data
objectRequired
error
successful
booleanRequired

Tool Name: Mute User

Description

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

Action Parameters

channel_url
stringRequired
description
seconds
user_id
stringRequired

Action Response

data
objectRequired
error
successful
booleanRequired

Tool Name: Register Operators by Custom Channel Type

Description

Tool to register users as operators to channels by custom channel type. Use when assigning operator roles for all channels of a specified custom type.

Action Parameters

custom_type
stringRequired
operator_ids
arrayRequired

Action Response

data
objectRequired
error
successful
booleanRequired

Tool Name: Register Group Channel Operators

Description

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

Action Parameters

channel_url
stringRequired
user_ids
arrayRequired

Action Response

data
objectRequired
error
successful
booleanRequired

Tool Name: Register Operators to Open Channel

Description

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

Action Parameters

channel_url
stringRequired
user_ids
arrayRequired

Action Response

data
objectRequired
error
successful
booleanRequired

Tool Name: Revoke All Session Tokens

Description

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

Action Parameters

user_id
stringRequired

Action Response

data
objectRequired
error
successful
booleanRequired

Tool Name: Send Message

Description

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.

Action Parameters

channel_url
stringRequired
custom_type
data
is_operator_message
is_silent
mention_type
mentioned_user_ids
message
message_type
stringRequired
metaarray
parent_message_id
poll_id
push_notification_delivery_option
translation_target_languages
user_id

Action Response

channel_url
stringRequired
created_at
integerRequired
custom_type
data
error
mention_type
mentioned_user_ids
message
message_id
integerRequired
operator_message
parent_message_id
silent
booleanRequired
successful
booleanRequired
thread_info
translations
type
stringRequired
updated_at
integerRequired
user
objectRequired

Tool Name: Unban User from Group Channel

Description

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

Action Parameters

banned_user_id
stringRequired
channel_url
stringRequired

Action Response

data
objectRequired
error
successful
booleanRequired

Tool Name: Unmute User

Description

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.

Action Parameters

channel_url
stringRequired
muted_user_id
stringRequired

Action Response

data
objectRequired
error
successful
booleanRequired

Tool Name: Unregister Operators Custom Channel Type

Description

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.

Action Parameters

custom_type
stringRequired
user_ids
arrayRequired

Action Response

data
objectRequired
error
successful
booleanRequired

Tool Name: Update Count Preference Of Channel

Description

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.

Action Parameters

channel_url
stringRequired
count_preference
stringRequired
user_id
stringRequired

Action Response

data
objectRequired
error
successful
booleanRequired

Tool Name: Update Group Channel

Description

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.

Action Parameters

access_code
channel_url
stringRequired
cover_url
custom_type
data
is_distinct
is_ephemeral
is_public
is_super
my_count_preference
name
operators

Action Response

access_code
channel_url
stringRequired
cover_url
custom_type
data
error
is_distinct
booleanRequired
is_ephemeral
booleanRequired
is_public
booleanRequired
is_super
booleanRequired
my_count_preference
name
operators
array
successful
booleanRequired

Tool Name: Sendbird Update Message

Description

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

Action Parameters

apns_bundle_id
channel_url
stringRequired
content
custom_type
data
dedup_id
is_silent
mention_type
mentioned_user_ids
message_id
integerRequired
message_type
push_notification_delivery_option
sorted_metaarray
user_id

Action Response

apple_critical_alert_options
channel_url
stringRequired
content
created_at
integerRequired
custom_type
data
error
file
is_reply_to_channel
is_silent
booleanRequired
mention_type
mentioned_users
array
message_id
integerRequired
og_tag
parent_message_id
parent_message_info
reactions
array
sorted_metaarray
array
successful
booleanRequired
thread_info
translations
type
stringRequired
updated_at
integerRequired
user
objectRequired

Tool Name: Update Sendbird User

Description

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

Action Parameters

is_active
issue_access_token
metadata
nickname
preferred_languages
profile_url
user_id
stringRequired

Action Response

data
objectRequired
error
successful
booleanRequired

Tool Name: Sendbird View Group Channel

Description

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

Action Parameters

channel_url
stringRequired
show_delivery_receipt
show_member
show_metadata
show_migration_info
show_read_receipt

Action Response

channel_url
stringRequired
cover_url
custom_type
data
delivery_receipt
error
is_broadcast
booleanRequired
is_distinct
booleanRequired
is_public
booleanRequired
is_super
booleanRequired
members
metadata
migration_info
name
read_receipt
successful
booleanRequired

Tool Name: Sendbird View Message

Description

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

Action Parameters

channel_url
stringRequired
message_id
integerRequired
with_sorted_metaarray

Action Response

channel_url
stringRequired
created_at
integerRequired
custom_type
data
error
mention_type
mentioned_users
message
message_id
integerRequired
og_tag
parent_message
reactions
sorted_metaarray
successful
booleanRequired
thread_info
translations
type
stringRequired
updated_at
integerRequired
user
objectRequired

Tool Name: View User

Description

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

Action Parameters

user_id
stringRequired

Action Response

data
objectRequired
error
successful
booleanRequired