SimTX API v24/Permissions
SimTX authorisation uses one set of permission identifiers (also called capabilities). An account gains them from its roles and from direct grants. A credential's scope can narrow them further, and an account restriction can remove them. Game servers receive the resulting set in the HandshakeResult.
Boolean permissions
A boolean permission authorises an action.
| Identifier | Grants | Relevant to |
|---|---|---|
game.transmit |
Opening transmitter sessions (roles 2 and 3). | SimTX API/Transmitter session |
catalog.publish |
Uploading to and deleting from the extension catalog. Also required to obtain a control game ticket. |
SimTX API/Extension catalog protocol |
session.queue_skip |
Never waiting in the transmitter queue. When the server is full, such a request is rejected instead of queued. | TxQueue |
tx.pa_override |
The amplifier's nominal power follows the requested power instead of the simulated equipment's rating. | TransmitterSessionRequest |
monitor.any |
Monitoring any transmitter, solo receivers, and client addresses in health reports. | SimTX API/Moderation session |
moderation.manage |
The moderation role: kicks, bans, banners, stations with addresses. | SimTX API/Moderation session |
proxy.forward_client_ip |
Sending ForwardedClientAddress on behalf of proxied receivers. | SimTX API/Receiver session |
accounts.admin, awards.manage |
Administration of the account service. Not used by game servers. |
Which of these an account holds depends on its roles. The HandshakeResult of an authenticated connection lists them.
Numeric capabilities
A numeric capability encodes a limit in its last segment. When several roles grant values from the same family, the largest value applies.
| Family | Example | Meaning | Range |
|---|---|---|---|
game.max_stations.N |
game.max_stations.8 |
At most N simultaneous transmitters for the account. | 1–10,000 |
game.max_receivers.N |
game.max_receivers.4 |
At most N simultaneous authenticated receivers. | 1–10,000 |
game.max_sessions.N |
game.max_sessions.12 |
At most N simultaneous authenticated receiver and transmitter sessions in total. | 1–10,000 |
tx.pa_limit.N |
tx.pa_limit.400 |
Transmitter power is capped at N watts, both in the request and in live updates. | 1–1,000,000 |
An account without any game.max_stations capability may run 3 transmitters. Account capabilities are applied in addition to each server's own limits and cannot raise them. See SimTX API/Limits and errors.
Client software should read these values from the HandshakeResult and show them, for example as the maximum of a power slider, rather than letting users discover them by trial.
Scopes
A credential's scope is a list of permission identifiers, chosen during device login or when creating a personal credential. A scope never adds permissions. When a game ticket is requested, the service uses the permissions that are both in the credential's scope and held by the account on that server.
- An empty scope at device login means every permission the account held when the user approved the login.
- Unknown identifiers are rejected with
400 scope_invalid. Numeric capabilities are accepted in scopes if they are well formed and within range. - Request the minimum. A transmitter needs
game.transmit; a catalog publishing tool needscatalog.publish; a receiver needs no credential at all.
Server-specific grants
Roles and grants can be limited to a single server. They take effect only in tickets for that server, and appear only in the HandshakeResult of connections to it.