> ## Documentation Index
> Fetch the complete documentation index at: https://conductorone-docs-mcp-bridge-private-server.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

# Set up a Mattermost connector

> C1 provides identity governance for Mattermost. Integrate your Mattermost instance with C1 for unified visibility and governance over user access.

C1 provides identity governance for Mattermost. Integrate your Mattermost
instance with C1 for unified visibility and governance over user access.

## Capabilities

| Resource | Sync                                                          | Provision |
| -------- | ------------------------------------------------------------- | --------- |
| Users    | <Icon icon="square-check" iconType="solid" color="#c937ae" /> |           |
| Teams    | <Icon icon="square-check" iconType="solid" color="#c937ae" /> |           |

## Gather Mattermost credentials

<Warning>
  The connector token must belong to an account with the **System Admin**
  (`manage_system`) permission. Without it, Mattermost returns only open teams
  from the team list and reports a partial picture of teams, memberships, and
  roles. The connector's validation step fails and reports the missing permission
  when the token is not a System Admin.
</Warning>

<Steps>
  <Step>
    Sign in to Mattermost with a System Admin account, or use a bot account that
    has the System Admin role.
  </Step>

  <Step>
    Create a Personal Access Token (under **Profile** > **Security** > **Personal
    Access Tokens**) or a bot account token (under **System Console** >
    **Integrations** > **Bot Accounts**). Personal Access Tokens may need to be
    enabled in the System Console first.
  </Step>

  <Step>
    Copy the token value and note your Mattermost server URL (for example
    `https://mattermost.example.com`).
  </Step>
</Steps>

## Configuration fields

| Field       | Required | Description                                                                                         |
| ----------- | -------- | --------------------------------------------------------------------------------------------------- |
| `base-url`  | Yes      | Your Mattermost server URL. REST calls are made against `/api/v4` under this host.                  |
| `api-token` | Yes      | A Mattermost Personal Access Token or bot token with the System Admin (`manage_system`) permission. |

## Synced resource types

* **Users**: Mattermost user accounts from `/api/v4/users`. Deactivated accounts
  are synced as disabled.
* **Teams**: Mattermost teams from `/api/v4/teams`, modeled as groups.
* **Team memberships and roles**: membership and elevated team-role assignments
  (such as team admin) from `/api/v4/teams/{team_id}/members`.

## Special notes

* Provisioning is not supported in the current build; the connector performs
  read calls only.
* The connector authenticates with a static bearer token (Personal Access Token
  or bot token).
* Channels are not synced in the current build. The access boundary modeled here
  is team membership.
* Account-level system roles (such as system admin) are recorded on the user
  profile rather than as separate access grants.

## Configure the Mattermost connector

<Tabs>
  <Tab title="Cloud-hosted">
    Follow these instructions to use a built-in, no-code connector hosted by C1.

    <Steps>
      <Step>
        In C1, navigate to **Integrations** > **Connectors** and click **Add connector**.
      </Step>

      <Step>
        Search for **Mattermost** and click **Add**.
      </Step>

      <Step>
        Choose how to set up the new Mattermost connector.
      </Step>

      <Step>
        Set the owner for this connector.
      </Step>

      <Step>
        Click **Next**.
      </Step>

      <Step>
        Find the **Settings** area of the page and click **Edit**.
      </Step>

      <Step>
        Enter the Mattermost credentials:

        * **Server URL**: Your Mattermost server URL, such as `https://mattermost.example.com`.
        * **API Token**: A System Admin Personal Access Token or bot token.
      </Step>

      <Step>
        Click **Save**.
      </Step>

      <Step>
        The connector's label changes to **Syncing**, followed by **Connected**. You can view the logs to ensure that information is syncing.
      </Step>
    </Steps>

    **Done.** Your Mattermost connector is now pulling access data into C1.
  </Tab>

  <Tab title="Self-hosted">
    Follow these instructions to run the Mattermost connector in your own
    environment.

    <Steps>
      <Step>
        In C1, navigate to **Integrations** > **Connectors** and click **Add connector**.
      </Step>

      <Step>
        Search for **Baton** and click **Add**.
      </Step>

      <Step>
        Choose how to set up the new Mattermost connector, set the owner, and
        click **Next**.
      </Step>

      <Step>
        In the **Settings** area, click **Edit**, then click **Rotate** to
        generate a new Client ID and Client Secret. Store these values securely
        for your deployment.
      </Step>

      <Step>
        Configure C1 credentials and Mattermost credentials as environment
        variables:

        ```bash theme={"theme":{"light":"css-variables","dark":"css-variables"}}
        BATON_CLIENT_ID=<C1 client ID>
        BATON_CLIENT_SECRET=<C1 client secret>
        BATON_HOST_ID=baton-mattermost
        BATON_BASE_URL=<Your Mattermost server URL>
        BATON_API_TOKEN=<System Admin Personal Access Token or bot token>
        ```
      </Step>

      <Step>
        Deploy the connector using your standard self-hosted connector process.
      </Step>
    </Steps>

    **Done.** Your Mattermost connector is now pulling access data into C1.
  </Tab>
</Tabs>
