# Set up Faustine Chat for your team

At the end of this tutorial a teammate signs in to Faustine Chat, asks a question about Nimbus CRM and gets an answer that came from its API. They then ask for a change, and the chat waits for their confirmation before it runs.

In this tutorial, you:

- [Choose the gateways](#choose-the-gateways)
- [Create the first chat user](#create-the-first-chat-user)
- [Describe your users and write instructions](#describe-your-users-and-write-instructions)
- [Enable Faustine Chat](#enable-faustine-chat)
- [Sign in and ask](#sign-in-and-ask)

## Before you begin

- A published gateway. If you do not have one, follow [Publish your API as an MCP server](https://docs.faustine.ai/agent-gateway/publish-your-api-as-an-mcp-server/) first. This tutorial uses a gateway that serves the Nimbus CRM API.
- A model provider connected to your workspace. The chat runs on it. See [Model providers](https://docs.faustine.ai/workspace/model-providers/).
- At least one operation of the gateway marked as requiring confirmation, such as the one that deletes a contact. See [Mark an operation as requiring confirmation](https://docs.faustine.ai/apis/require-confirmation/).

## Choose the gateways

1. In the portal, go to [**Faustine Chat**](https://auth.faustine.ai/go?to=%2Fapps%2Ffaustine-chat) and select **Setup**.
2. In the **Gateways** step, select your gateway. The list shows published gateways only.
3. If the gateway has more than one environment, choose the environment the chat serves.
4. Select **Continue**.

The **Knowledge** step opens. It takes documents the assistant searches before it answers. Select **Skip**. You can add documents later.

## Create the first chat user

1. In the **First user** step, select **Add user**.
2. Enter a **Display name**. The **Username** is filled in from it, and you can change it. It takes lowercase letters, digits, `.`, `_` and `-`.
3. Under **Password**, keep **Generate**. To choose the password yourself, select **Type one** and enter at least 12 characters.
4. Select **Create user**. A **Chat user created** dialog shows the username and the password, each with a **Copy** button.
5. Copy both, then select **Done**. This is the only time the password is shown. To replace a lost password, reset it later in the configuration.
6. Select **Continue**.

The step shows the username with a check mark.

## Describe your users and write instructions

Both steps are optional. What you enter becomes part of the assistant's prompt.

1. In **Describe your users**, enter who uses the chat and what they do, in a sentence or two. For example: `Account managers at Nimbus. They look up companies and contacts and keep deals up to date.`
2. Select **Continue**.
3. In **Custom instructions**, enter the rules the assistant follows for every user, such as the language it answers in.
4. Select **Continue**.

## Enable Faustine Chat

The last step lists what you chose: the gateways, the documents, the users and both texts.

1. Check the summary.
2. Select **Enable Faustine Chat**.

The **Configuration** page opens with an **Enabled** badge and the address of the app, `chat.faustine.ai/<workspace>`. Faustine also installed a skill for the gateway, which you can read in **Assistant** > **Skills**.

## Sign in and ask

1. Send your teammate the address of the app, the username and the password.
2. Your teammate opens the address, enters the username and the password, and selects **Sign in**. A new conversation opens with the name of the gateway under the greeting.
3. They ask for something the API can read:

   ```text
   Which deals are still open?
   ```

   The assistant calls the gateway and answers with the deals from Nimbus CRM.
4. They ask for the change that needs confirmation:

   ```text
   Delete the contact I added by mistake this morning.
   ```

   The assistant finds the contact and stops. A card lists the operation it wants to run and its arguments.
5. They check the arguments and select **Confirm selected**.

> **Checkpoint:** The assistant reports that the contact was deleted, and the contact is gone from Nimbus CRM. If your teammate selects **Reject all** instead, nothing runs.

![Faustine Chat after the question about open deals: the two calls it made to the Nimbus CRM gateway and a table with the four open deals.](https://docs.faustine.ai/images/apps/faustine-chat-answer.png)

## What you built

Faustine Chat is on for your workspace, with one gateway and one chat user, at `https://chat.faustine.ai/<workspace>`. The conversation your teammate had is in [**Configuration**](https://auth.faustine.ai/go?to=%2Fapps%2Ffaustine-chat%2Fconfiguration%3Ftab%3Dlogs) > **Monitoring** > **Logs**, and both calls are in the gateway's own logs under the chat user's name.

## Next steps

- [Add and manage chat users](https://docs.faustine.ai/apps/chat-users/): create a user for each person on the team.
- [Give chat access to specific gateways](https://docs.faustine.ai/apps/chat-gateway-access/): limit a user to some gateways or some operations.
- [Add knowledge and skills to Faustine Chat](https://docs.faustine.ai/apps/chat-knowledge-and-skills/): upload the documents you skipped.
- [Confirmation](https://docs.faustine.ai/agent-gateway/confirmation/): how the gateway decides that a call needs the user's answer.
