To OP Bedrock server players, open the server console and type op "Gamertag" while that player is online. Bedrock Dedicated Server saves the change in permissions.json, where you can also add an operator by XUID and run permission reload. Players can then use commands such as /gamemode or /tp once allow-cheats=true.
Bedrock does not use Java’s ops.json or levels 1 to 4. It gives each player a role (visitor, member or operator), and the server console is the reliable place to hand it out. If you run Java, read how to OP someone on your Minecraft server instead.
Bedrock roles: visitor, member and operator
These are the player permissions described on the Minecraft Wiki’s permission level page:
| Role | What the player can do | Use it for |
|---|---|---|
visitor | Look around only. They can still trade with villagers and manage their inventory. | Showcase worlds, guests who should not build |
member (default) | Build, mine, use doors and switches, open containers, attack players and mobs | Regular players |
operator | Everything, including operator commands and teleport | You and trusted co-admins |
The Wiki also explains a detail that confuses many owners: on a dedicated server, operator status gives command permission level 1, while /op and /deop need level 2. That is why an operator may not be able to OP friends from chat, and why the steps below use the console.
How to OP Bedrock server players from the Console
- Get the player online. On Bedrock,
oponly accepts players who are connected. If your allowlist is on, add them first, as shown in how to whitelist a Bedrock server. - Open the Console in the TheGameHosting panel.
- Run the command without a slash:
op "Gamertag". Quotes are required for gamertags with spaces and harmless otherwise. - Check the list with
permission list, which prints the current operators. - Turn on cheats if they need commands. In Files, edit
server.properties, setallow-cheats=true, save and restart. The Wiki describes it as “If true then cheats like commands can be used”. - Ask them to test it with
/gamemode creativein chat.
op "Gamertag"
permission list
Give OP with permissions.json (player offline)
When the player is not online, write the role into permissions.json in the server folder. It uses the player’s XUID, their Xbox account number, not the gamertag. The format, from the how-to file that ships with Bedrock Dedicated Server, is a list of permission and xuid pairs:
[
{ "permission": "operator", "xuid": "2535400000000001" },
{ "permission": "member", "xuid": "2535400000000002" },
{ "permission": "visitor", "xuid": "2535400000000003" }
]
- Find the XUID. Each time a player joins, the server console logs their gamertag with their XUID. Search the Console output for the name.
- Open Files → permissions.json, add an entry with
"permission": "operator"and their XUID, and keep the JSON valid (commas between entries, none after the last one). - Save and type
permission reloadin the Console so the server reads the file.
Heads-up: the XUIDs above are placeholders. A wrong number gives OP to nobody, or to a stranger, so copy it from your own console.
default-player-permission-level: the role for new players
server.properties has default-player-permission-level, which sets the role a player gets the first time they join. It accepts visitor, member or operator, and the default is member.
- Keep
memberfor a normal survival server. - Use
visitorfor a world people should only look at, and promote builders one by one. - Never set
operatoron a server others can reach: every new player would get OP.
Remove OP on Bedrock
Type deop "Gamertag" in the Console while the player is online; the Wiki notes it fails for offline players. For someone who is not connected, change their entry in permissions.json to "member" and run permission reload. The Java side of this is in how to remove OP from a player.
If it does not work
- The console says no player matched. The player is offline or the gamertag is misspelled. Use quotes and the exact name, or use
permissions.json. - They are OP but commands fail.
allow-cheatsis stillfalse. Turn it on and restart. - You edited the file and nothing changed. Run
permission reload. - You run PocketMine-MP or Nukkit. Those server programs manage operators their own way; follow that software’s documentation.
Run your Bedrock server on TheGameHosting
On TheGameHosting the official Bedrock Dedicated Server is ready about 60 seconds after payment, with a public IP and port already assigned, so friends on phones, Xbox, PlayStation, Switch and Windows join without you opening ports. Console runs op and permission reload, Files edits permissions.json and server.properties in the browser, and Users lets a co-admin help without your password. If you are just starting, see how to make a Minecraft Bedrock server.
Plans start at $1.90 USD/month on our Minecraft Bedrock server hosting page, online 24/7 in Dallas or Amsterdam with DDoS protection. Compare sizes on plans and pricing and use FULL2026 for 15% off for life.
FAQ
How do you OP someone on a Bedrock server?
With the player online, type op "Gamertag" in the server console. For an offline player, add their XUID with "permission": "operator" to permissions.json and run permission reload.
Where do I find a player’s XUID?
The server console logs each player’s gamertag and XUID when they join. Copy it from there.
Why can my Bedrock operator not use commands?
Commands like /gamemode need allow-cheats=true in server.properties. Change it and restart the server.
Can I OP an offline player on Bedrock?
Not with the command: op only targets online players. Use permissions.json with their XUID instead.
Hosting for these games
Written by TheGameHosting Team, the people who run our servers in Dallas and Amsterdam and answer your tickets.
All posts
TheGameHosting Team
