# Add the SentinelShare bot

The SentinelShare bot lets your staff check, file, lift and verify bans from your own Discord and scan everyone in it for network bans. It warns your staff when a banned player joins or a member gets banned elsewhere, and can post every new network ban to a channel you pick. Nothing to host or code: invite it and give your staff access.

## How access works

Every command runs **as the person who typed it**, using their own SentinelShare account and role. Bans they file show their name; lifts and verifications are recorded under them. Someone without a SentinelShare account gets "Your Discord account isn't linked to a SentinelShare account".

A SentinelShare account is tied to a Discord account, so your staff don't need passwords: the bot and the website both recognise them by Discord.

## 1. Invite the bot

Someone with **Manage Server** in your Discord opens this link and picks your server:

[Invite the SentinelShare bot](https://discord.com/oauth2/authorize?client_id=1477829010817028260&permissions=18432&scope=bot%20applications.commands)

It asks for **Send Messages** and **Embed Links** only. The commands appear in your server straight away.

## 2. Give your staff access

Your community's **Server Owner** account (set up by a SentinelShare network admin) adds staff from Discord:

```text
/staff add member:@Alex role:Moderator
```

| Role | Can |
|---|---|
| Moderator | Check bans, file bans, lift your community's bans, verify other communities' bans |
| Read-Only | Check bans |

Server owners can give Moderator or Read-Only. Ask a SentinelShare network admin for another Server Owner.

- `/staff remove member:@Alex` takes access away. Bans they filed stay on record.
- `/staff list` shows who in your community has access, with links to their SentinelShare profiles.
- `/whoami` shows anyone their own account, role and what they can do.

## 3. Staff alerts and new-ban posts

The bot can post to two channels in your Discord:

| Channel | What gets posted |
|---|---|
| **Staff alerts** | Someone with an active SentinelShare ban joins your Discord. Another community bans someone who is already a member. Each alert names the member and shows their bans, so make it a staff-only channel. |
| **New bans** (optional) | Every new ban on the network, within about a minute. |

Your **Server Owner** sets them up in either of two ways:

- **On the website:** open [sentinelshare.com](https://sentinelshare.com), go to **Communities**, pick your community and open the **Discord** tab. Paste your Discord server ID and the channel IDs. To copy an ID, turn on Developer Mode in Discord (Settings, Advanced), then right-click the server or channel.
- **In Discord:** run these in the channels you want:

```text
/setup alerts channel:#staff-alerts
/setup notifications channel:#sentinelshare-bans
```

Both save to the same place, and the bot picks up changes within a minute. Make sure it can send messages and embed links in those channels.

- Alerts count any active ban, verified or not; the alert shows each ban's verification status so staff can judge.
- Your own community's bans don't alert you; your staff filed them.
- Join alerts and member alerts need Discord's **Server Members Intent** on the bot, the same as `/bans scan`.

## 4. Scan your Discord for banned members

Anyone on your staff with **Ban Members** or **Manage Server** in your Discord runs:

```text
/bans scan
```

The bot checks every member of that Discord (bots are skipped) against SentinelShare by Discord ID:

1. Straight away it replies with a link to the report, which fills in on the website as the scan runs.
2. Members are checked 1,000 at a time with a short pause between batches, so a large server takes a minute or two. The reply shows how far it has got.
3. When it's done, the reply says how many members have SentinelShare bans and how many of those are still active, lists the first ten, and links the full report.

The full report is under **Reports** on [sentinelshare.com](https://sentinelshare.com). For every member with a ban it shows their name in your Discord, their Discord ID, the SentinelShare player profile they match, how many bans are active, the ban types and which communities filed them. You can filter it to active bans only, copy the Discord IDs, or download it as a CSV.

- Reports are visible to staff of the community that ran the scan, and to SentinelShare network admins. Other communities can't see your member list.
- Only members who match a SentinelShare player are saved. Everyone else is checked and not stored.
- A Discord can have one scan running at a time. If a scan stops early (for example SentinelShare was briefly unavailable), the report keeps what was checked and says why; run `/bans scan` again to check everyone.
- Scanning needs Discord's **Server Members Intent** on the bot. If the bot replies "Scanning is turned off", ask a SentinelShare network admin.

## Commands

All replies are private to the person who ran the command.

| Command | What it does |
|---|---|
| `/bans check` | Look a player up by Arma UID, Discord member or ID, in-game name or IP. Shows active and past bans, which communities filed them, and other profiles that may be the same person. |
| `/bans add` | File a ban as yourself: Arma UID, name, type, reason, and optionally evidence links, Discord member or ID, and IP. Warns you if they already have a ban like it. |
| `/bans remove` | Lift a ban your community filed. Start typing the player's name or Arma UID and pick the ban; you're asked to confirm. |
| `/bans verify` | Peer verify (vouch for), send for staff review, staff verify, or deny a ban. |
| `/bans scan` | Check every member of this Discord for SentinelShare bans. Replies with how many have bans and a link to the full report on the website. Needs Ban Members or Manage Server. |
| `/staff add`, `/staff remove`, `/staff list` | Manage your community's access (server owners). |
| `/whoami` | Your SentinelShare account and what you can do. |
| `/recent` | The latest bans on the network. |
| `/stats` | Network totals. |
| `/setup alerts` | Pick the staff channel for join and member alerts (server owners). |
| `/setup notifications` | Pick the channel for new-ban posts (server owners). |
| `/invite`, `/ping` | Invite link; check the bot is online. |

## Troubleshooting

| Problem | Fix |
|---|---|
| Commands don't show up | Re-invite with the link above; it must include the `applications.commands` scope. |
| "Your Discord account isn't linked" | Your server owner runs `/staff add` for you. |
| "Your SentinelShare role doesn't allow that" | Moderators can't add staff; Read-Only can't file bans. Ask your server owner. |
| "You can only lift bans your community filed" | Ask the filing community, or a SentinelShare network admin. |
| No new-ban posts or alerts | Check the Discord tab on your community's page: the server ID must be your Discord's, and the bot must be able to post in those channels. |
| "Only your community's server owner or a network admin can change its Discord settings" | Ask your server owner to run `/setup`, or to set the channels on the website. |
| "You need Ban Members or Manage Server in this Discord to scan it" | Ask a Discord admin to run `/bans scan`, or to give you one of those permissions. |
| "Scanning is turned off" | The bot needs Discord's Server Members Intent. Ask a SentinelShare network admin. |
| "A scan of this Discord is already running" | Wait for it to finish; its report is under **Reports** on the website. |

Want the bot to do something specific to your community? See [Build your own Discord bot](/developers/build-a-discord-bot).
