> For the complete documentation index, see [llms.txt](https://tools.docs.sendbird.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://tools.docs.sendbird.com/readme/chat.md).

# Chat tutorials

Try Chat features in your Sendbird app from the terminal. You create two Chat users, Alice and Bob, and use them to:

* Send and receive messages
* Use Group channel features, such as typing indicators, read receipts, replies, files, and reactions
* Invite users to channels, join channels, and leave them

These tutorials are for running commands yourself in a terminal. If you use an AI coding agent, such as Claude Code or Codex, describe what you want in plain words instead, and the agent runs the commands. See [Example requests](/readme/ai-agents.md#example-requests).

To add Chat to your app's code, see [Add Chat](/plugins/client/add-chat.md).

## Terms used in these tutorials

<table><thead><tr><th width="180.265625">Term</th><th>Meaning</th></tr></thead><tbody><tr><td>Open channel</td><td>A channel users can enter without membership. In these tutorials, each command enters the channel while it runs and exits when it finishes.</td></tr><tr><td>Group channel</td><td>A channel with set members. A user must be joined to send messages, and an invited user may need to accept first.</td></tr><tr><td>Private Group channel</td><td>A Group channel that users join only by invitation. Created with <code>--is-public false</code>.</td></tr><tr><td>Public Group channel</td><td>A Group channel that any user can join without an invitation. Created with <code>--is-public true</code>.</td></tr><tr><td>Distinct channel</td><td>A Group channel that's reused when you create a channel with the same members again.</td></tr></tbody></table>

## Choose a tutorial

Start with [Create test users](/readme/chat/create-test-users.md). After that, follow the other tutorials in any order. The table lists them from simplest to most involved, and each page links to the next one.

<table><thead><tr><th width="270.44140625">Tutorial</th><th>What you'll do</th></tr></thead><tbody><tr><td><a href="/readme/chat/create-test-users.md">Create test users</a></td><td>Create Alice and Bob, and open two terminals, one for each user.</td></tr><tr><td><a href="/readme/chat/send-and-receive-messages.md">Send and receive messages</a></td><td>Send a message as Alice in an Open channel, and receive it as Bob.</td></tr><tr><td><a href="/readme/chat/use-group-channel-features.md">Use Group channel features</a></td><td>Create a 1-to-1 channel, show typing, mark messages as read, reply in a thread, send a file, and add a reaction.</td></tr><tr><td><a href="/readme/chat/invite-join-and-leave-channels.md">Invite, join, and leave channels</a></td><td>Invite Bob to a private Group channel, leave it, and join a public Group channel.</td></tr></tbody></table>

## Delete the test users

After you finish all the tutorials, delete Alice and Bob in terminal A:

```bash
sendbird --profile prod chat user delete --id tutorial_alice --yes
sendbird --profile prod chat user delete --id tutorial_bob --yes
```
