> ## Documentation Index
> Fetch the complete documentation index at: https://docs.bloombot.cloud/llms.txt
> Use this file to discover all available pages before exploring further.

# Invite and first setup

> Add Bloom to your server, place its role, run the first commands, open the dashboard, and confirm everything works.

This page takes a new server from an empty invite to a working Bloom: the bot added, its role placed correctly, a prefix and color set, logging on, and a safe test that confirms moderation will work.

<Info>
  Every server has its own command prefix. Throughout these docs, `!` stands for **your server's prefix**. Bloom's setup lets you choose it, and you can always find it later by mentioning Bloom or sending `b.help`.
</Info>

## Add Bloom to your server

<Steps>
  <Step title="Open the invite link">
    Use the [Add to Discord](https://discord.com/oauth2/authorize?client_id=1412097551070527518\&permissions=2253434048212215\&integration_type=0\&scope=applications.commands+bot) link. It is also the **Add to Discord** button at the top of these docs.
  </Step>

  <Step title="Pick your server">
    Choose the server from the list. You need the **Manage Server** permission on a server for it to appear.
  </Step>

  <Step title="Keep the requested permissions">
    The invite asks for the permissions Bloom needs to run its features. Authorize it as presented rather than removing permissions you are unsure about, then grant more only if a specific feature needs it. Bloom checks its own permissions before each action and tells you what is missing.
  </Step>
</Steps>

<Warning>
  Whether Bloom can moderate a member depends on **role position**, not only on permissions. Bloom can only act on members and roles that sit below its own highest role. Move Bloom's role up next.
</Warning>

## Place Bloom's role

When Bloom joins, Discord gives it a role (named after the bot). Open **Server Settings → Roles** and drag that role **above** every role you want Bloom to manage: the roles of members you will moderate, and any roles Bloom assigns such as level rewards, autoroles, or mute and jail roles.

* Bloom cannot ban, kick, timeout, or change the roles of a member whose highest role is above Bloom's.
* Bloom cannot add or remove a role that sits above its own.

You do not need to make Bloom the top role. It only needs to be above what it manages. For how Discord permissions and hierarchy combine, see [Permissions and hierarchy](/getting-started/permissions).

## Run the setup wizard

<ParamField path="setup" type="Administrator">
  Opens an interactive wizard that walks through the core settings. You need Administrator.

  * **Syntax:** `!setup`
  * **You need:** Administrator
  * **Steps:** choose a **theme** (Dark or Light), set your **prefix**, and optionally create the **jail** and **mute** roles and channels.
</ParamField>

The wizard reacts to buttons and to a message you type for the prefix. The moderation step (jail and mute) only appears when Bloom has **Manage Roles** and **Manage Channels**; without them, that step is skipped and you can set those systems up later. When it finishes, Bloom shows a summary and points you to `!help`.

<Tip>
  If you would rather set individual values by hand, or change one later, the commands below do the same thing without the wizard.
</Tip>

## Set the basics by hand

### Prefix

<ParamField path="setprefix <prefix>" type="Administrator">
  Sets the command prefix for this server. Alias: `prefix`.

  * **Syntax:** `!setprefix <prefix>`
  * **You need:** Administrator
  * **Rules:** 5 characters or fewer. Running `!setprefix` with no argument shows the current prefix instead of changing it.
</ParamField>

```text Example theme={null}
!setprefix >
```

Bloom replies `Prefix has been set to >`, and commands then use `>`, for example `>help`. For every way to trigger a command and to recover a forgotten prefix, see [Using prefix commands](/getting-started/commands).

### Embed color

<ParamField path="embedcolor <hex_color>" type="Administrator">
  Sets the color of the side bar on Bloom's embeds for this server. Alias: `embcolor`.

  * **Syntax:** `!embedcolor <hex_color>`
  * **You need:** Administrator
  * **Rules:** a hex color such as `#FF5733` or the short `#f00`. Running `!embedcolor` with no argument shows the current color.
</ParamField>

```text Example theme={null}
!embedcolor #55738F
```

<Info>
  Set an explicit color if the exact shade matters to you. When no server color is set, different Bloom features fall back to different defaults rather than one universal color.
</Info>

## Open the dashboard

<ParamField path="dash" type="prefix command">
  Replies with a link to this server's dashboard. Aliases: `dashboard`, `panel`.

  * Administrators and the server owner also get a **Manage Dashboard Access** button to let specific roles open the dashboard.
</ParamField>

The dashboard at [dash.bloombot.cloud](https://dash.bloombot.cloud/) handles settings that are easier with forms, such as automod, welcome messages, tickets, and forms. Sign in with Discord and pick your server. For who can open it and what each person sees, read [Dashboard access](/getting-started/dashboard).

## Turn on logging

Logging gives you a record of edits, deletions, moderation actions, and member changes. Set it up early so your first real actions are captured.

<ParamField path="logs" type="Manage Server">
  Chooses which categories of events Bloom logs and where. Run `!logs` to see the current setup and the categories you can route to a channel.
</ParamField>

Point at least moderation and message logs at a private staff channel that Bloom can view and send in. Logs are a record, not a backup, and message content in a log depends on what Discord makes available.

## Do a safe test

Confirm the pieces fit together without disrupting anyone.

<Steps>
  <Step title="Check that commands respond">
    Run `!help`. If the menu appears, Bloom can read and send in that channel. If nothing happens, confirm the prefix and that Bloom has View Channel, Send Messages, and Embed Links here.
  </Step>

  <Step title="Warn a willing test account">
    Run `!warn @tester testing setup` against a member who agrees, or a second account of your own. A warning records a case without removing or restricting anyone.
  </Step>

  <Step title="Confirm it was logged">
    Check your moderation log channel for the warning entry. If it is missing, revisit the [logging](#turn-on-logging) step and confirm Bloom can send in that channel.
  </Step>
</Steps>

<Tip>
  Prefer reversible actions when testing. A warning is safe to remove; a ban is not. Save real punishments for when you have confirmed hierarchy and logging are correct.
</Tip>

## Where to get help

* **Create a channel invite:** the `!invite` command builds a Discord invite for a channel (you need Manage Messages, Bloom needs Create Invite). This is different from the bot invite link above, which adds Bloom to a server.
* **Support:** run `!support`, or join the [support server](https://discord.gg/HYSgTQ6SHR) directly, for help, bug reports, and data requests.

## Related pages

<CardGroup cols={2}>
  <Card title="Permissions and hierarchy" icon="user-lock" href="/getting-started/permissions">
    Why role position decides whether moderation works, and how "You need" differs from "Bloom needs".
  </Card>

  <Card title="Dashboard access" icon="sliders" href="/getting-started/dashboard">
    Sign in, pick a server, and control who can open the dashboard.
  </Card>

  <Card title="Using prefix commands" icon="terminal" href="/getting-started/commands">
    Prefixes, mentions, arguments, and finding your server's prefix.
  </Card>

  <Card title="Leveling" icon="chart-line" href="/configuration/leveling">
    A full example of configuring a Bloom system after setup.
  </Card>
</CardGroup>
