Permissions

Mods declare their required permissions in manifest.json. Each permission grants access to specific API namespaces.

Permission List

Permission API Access Description
filesystem Files Create, read, write, delete in-game files
network Network, Database Create and manage networks, Wi-Fi access points, ports, domains, and databases
events Events Listen to game events, emit custom events
mail Mail Send in-game emails
bank Bank Manage bank accounts and transfers
shell Shell Execute terminal commands programmatically
ui UI Show notifications, toasts and input dialogs

APIs Without Permissions

The following APIs are always available and do not require permissions:

API Description
Storage Persistent key-value storage
Variables Session-only variables
SharedStorage Shared persistent storage
SharedVariables Shared session variables
ModSettings Mod settings (player config)
Random Random generation utilities
Twotter In-game social media
Kisscord In-game messaging
WeeChat In-game IRC chat

Enforcement

When a mod declares a permissions array in its manifest, only the listed permissions are allowed. API calls requiring a non-declared permission will throw an error.

An empty array ("permissions": []) means exactly what it says: no gated API is available. It used to be treated the same as omitting the field, which quietly turned the most conservative manifest into the most permissive one.

If a mod omits the permissions field entirely, all APIs are accessible without restriction. This legacy default is deprecated, logs a warning on load, and is intended for local development only. Declare the permissions your mod needs before publishing.

Warning

Permissions shape which SDK namespaces a mod asks for. They are not a security sandbox: mod code runs inside the game with the game’s own access. Install mods only from authors you trust.

Usage

{
    "permissions": ["events", "network", "filesystem"]
}

Tip

Only request the permissions your mod actually needs. Players can see which permissions a mod requires in the Mods menu.