Linked servers
Attach your PD, EMS or other side Discords to your licensed main server, then map roles either way: a side role can grant a main role, or a main role can grant a side role.
Where: Dashboard โ Members โ Linked servers ยท In Discord: /setup โ Linked Servers, or /linked-server
#How it works
Your licensed Discord is the main server. Every Discord you attach to it is a side Discord. Linking does three things: the side Discord runs on the main server's plan, roles can be mapped either from the side Discord onto roles here or from here onto roles in the side Discord, and its roles and members take part in the main server's documentation permissions.
Each licensed server gets a fixed number of side Discord slots. We set that cap for your licence: the Side Discords panel tells you how many you have ("This licensed server can link 2 side Discords"), and /linked-server list shows how many are used. If you need more, ask FiveUnity support to raise it.
A side Discord can belong to only one main server, and a server cannot be linked to itself.
#Before you link
- The bot must already be in the side Discord. Invite FiveUnity there first: see Invite the bot and sign in.
- You need Administrator or Manage Server on the main Discord.
- You must also be the owner or an Administrator of the side Discord, and a member of it. The same account has to satisfy both ends, which is what stops anybody attaching a Discord they do not run.
- The main server needs an active plan. Linking and mapping are both blocked while the subscription is inactive.
#Link a side Discord
- Copy the side Discord's server ID (right click the server in Discord and choose Copy Server ID).
- Paste it into Side Discord ID and press Link Discord.
- It appears in the list below with its name and ID.
In Discord the same thing is /linked-server add guild-id:<id>, or /setup โ Linked Servers โ Link Discord. /linked-server list shows your slots and everything currently attached.
To detach one, press Unlink on its row and confirm, or run /linked-server remove guild-id:<id>.
Unlinking deletes every role map from that Discord, and removes its roles from the main server's documentation permissions. Roles members already hold are left in place, but new changes stop syncing and the maps and page grants have to be rebuilt if you link it again.
If a row shows a bot not in cache badge, FiveUnity cannot currently see that Discord, usually because the bot was removed from it. Role maps from that Discord cannot sync until the bot is back.
#Cross-server bans
A ban placed on the main server can be repeated across every side Discord in
one go: /ban user:@Troublemaker reason:โฆ cross:Yes, or /ban userid:<id> โฆ
for an account that has never joined any of them.
It runs from the main server only. A side Discord that tries it is refused and pointed back here. Sync is one direction for bans: the main server decides who is out, and a single department's moderators do not decide that for the rest of the network. (Role maps are separate and can run either way.)
The reply lists every linked Discord and what happened there, so a server it could not act on is visible rather than silently missed:
| Result | What it means |
|---|---|
| banned | The ban was placed, and a numbered case was opened there crediting you. |
| already banned | They were banned there already. Nothing was changed and no second case was filed. |
| skipped | FiveUnity would not act: the bot is not in that Discord, it is missing Ban Members there, the account owns that Discord, or the account sits at or above the bot's highest role there. |
| failed | Discord refused the ban. The reason it gave is shown. |
One skipped or failed server never stops the rest. The side Discord's own Discord audit log names you and the main server, so an admin over there can see where the ban came from.
Running it on somebody who is already banned here does not re-ban them here, but it does push the ban out to the network, which is how you bring a Discord you linked recently in line with bans placed before it existed.
A whole list travels the same way: /massban user_ids:<id> <id> <id> cross:Yes,
or the Mass ban panel under Dashboard โ Safety โ Moderation, which is
Administrator-only and carries the same switch.
To lift a network ban, use /massunban user_ids:<id> cross:Yes on the main
server. It clears the ID everywhere, including from a side Discord where the
ban was the only one left.
#Automatic role linking
A map pairs a role on one Discord with a role on the other. You can sync either way:
- Side โ Main: holding a side Discord role grants a role here
- Main โ Side: holding a main Discord role grants a role in the linked side Discord
Under Automatic role linking, pick the Direction, the Side Discord, the watched role(s), and the role to grant, then press Add map. Side Discord roles are loaded live, so you pick from a real list rather than typing IDs.
| Setting | What it does |
|---|---|
| Direction | Side โ Main watches the side Discord; Main โ Side watches this Discord. |
| Side Discord | Which linked Discord is involved in the map. |
| Watched roles | The role(s) that trigger the map when somebody gains or loses them, including by leaving that Discord. |
| Granted role | The role FiveUnity adds or removes on the other Discord to match. |
| Log channel | Where sync results are posted. One channel covers every map. |
What syncs. When a member is given a watched role, FiveUnity adds the granted role on the other Discord. When that watched role is taken away, FiveUnity removes the granted role, unless another map still grants it. Changes the bot makes itself are ignored, so maps cannot loop on each other.
Big Discords. FiveUnity keeps a working list of about 500 members per Discord, so in a larger one most role changes reach it without an earlier copy of the member. FiveUnity remembers the roles it last saw on each of those members, which is what lets a watched role taken away still remove the granted role, exactly as it does for members it knows better. The memory lasts minutes, not forever: if a change happened before the bot saw the member twice, the nightly reconcile (below) is what catches it.
Several watched roles, one granted role. Map as many roles as you like onto the same grant (every PD rank onto Police, or several community roles onto one side rank). The granted role stays for as long as the member holds any watched role that maps to it.
Leaving. Somebody who leaves the Discord that was being watched loses every role there at once, so FiveUnity takes back every role the other Discord had granted for a role they held on the way out, unless another map still gives it to them.
When the member is not on the receiving Discord. If somebody gets the watched role but is not in the Discord that should receive the grant, nothing is applied and a Role link skipped entry is logged. When they join that Discord, FiveUnity gives them the role for every mapped role they hold at that moment (except during an anti-raid lockdown on a join to the main Discord, when joiners get no roles at all).
The log. Every result is posted to your log channel as Role link synced, Role link failed or Role link skipped, naming the member, the source Discord and role, the granted role, and what was done. A refresh (below) posts one Role link refresh summary instead of an entry per member. Without a log channel the result only reaches the bot's own log, so setting one is worth the minute it takes.
A map fails when the target role has been deleted, when FiveUnity is missing Manage Roles on the Discord that receives the role, or when the target role sits at or above FiveUnity's highest role there. The reason is written into the log entry. A map whose watched or granted role is deleted outright is removed automatically, with one line in the bot's log.
#The nightly reconcile
Once a day (04:20 in the host's time zone), FiveUnity re-checks every map end to end: it grants every mapped role somebody holds but is missing, and takes back every granted role that no map any longer justifies, including roles stuck from before the map was changed, a leave the bot never saw, or downtime. It never takes a role away while another map still grants it, and roles held for reasons the bot cannot check (for example a side Discord it cannot currently read member lists for) are left alone for that run.
Up to 250 grants and 250 removals per Discord per run; anything past that waits for the next night and is counted in the summary. The result posts to your role-link log channel as Role link reconcile when anything changed, so a quiet night is silent by design.
#Refresh linked roles
A map acts when a role changes, so anybody who already held a watched role before the map existed, or whose change was missed while FiveUnity was offline or your plan had lapsed, does not have the granted role yet. Refresh linked roles, next to Add map, catches them up in both directions.
FiveUnity reads the members who hold watched roles and gives the granted role to each of them who is in the receiving Discord but does not have it yet. Bot accounts are skipped.
- Nothing is taken away. FiveUnity cannot tell a role a map gave from one somebody gave by hand, so a refresh only ever adds roles.
- It runs in the background. Discord limits how fast roles can be given, so a large Discord can take a few minutes. Progress shows in the Automatic role linking panel, and you can leave the page: the result is still there when you come back (for an hour, or until FiveUnity restarts).
- Up to 250 roles per refresh. Anything past that is counted as left for the next refresh, so press it again once it finishes. A server can refresh once a minute.
- The result says how many members hold a mapped role and how many were already linked, and lists who was given which role, who is not in the Discord that receives the role, and anything that could not be given with the reason. A role FiveUnity cannot hand out at all (deleted, at or above FiveUnity's highest role, or carrying Administrator) is reported once for everyone it affects, and nothing is sent to Discord for it.
#In Discord
/rolelink does the same work. The slash role picker can only see this server, so the side role is always typed as an ID:
/rolelink add direction: side-guild-id: main-role: side-role-id:: pick Side โ Main or Main โ Side. For sideโmain the side role is watched and the main role is granted; for mainโside it is the other way around. The Discord has to be linked first, the side role ID has to be a role in it (not its @everyone), and the role being granted has to be one you could give by hand on that Discord/rolelink list: every map, each with the id you need to remove it/rolelink remove link-id:
#Plans
Side Discords inherit the main server's plan. There is no second subscription to buy and no separate billing: while the main server's plan is active, FiveUnity works in the side Discord at the same tier. That includes the AI Assistant on Pro.
The reverse is also true: if the main server's plan lapses, the side Discords stop working with it. See Plans and billing.
#What a side Discord can and cannot do
- It keeps its own settings. Tickets, moderation, logging and everything else are configured on that Discord's own dashboard page. Linking shares the plan and the role maps, not the configuration.
- Its roles can guard documentation. The main server's Documentation lists a side Discord's roles in every role picker, grouped under the Discord's name, so a page can be limited to (or maintained by) a role that only exists over there, and members of the side Discord count as members of a Members only site. The main server switches this off under Documentation โ Settings โ Linked Discords. In a side Discord with no documentation of its own,
/docsopens the main server's. - Role maps can push either way. Sideโmain and mainโside maps are both configured from the main server. Mainโside maps write roles into the department Discord, so only map roles you intend the community Discord to control.
- It cannot map roles of its own. Maps belong to the main server, and are created from the main server's dashboard or with
/rolelinkthere. - It cannot be shared. One side Discord, one main server.
The usual setup is one map per department rank you want visible in the community Discord: give somebody Officer in the PD Discord and they get Police here, without a second person having to remember. Mainโside is the reverse: give Police here and they get a starter rank in the PD Discord.
#Related
- Documentation: page permissions that use a side Discord's roles
- Roles: self role panels and roles that expire on their own
- Departments: clock-ins and duty roles inside one Discord
- Plans and billing: what Premium and Pro include
- Staff commands:
/linked-serverand/rolelink