• Start
Sign In

surrealctl

/

Commands

org

Reference for surrealctl org — listing and creating organisations, renaming and archiving them, remembering a default, and reading roles, permissions, usage, spend and plans.

surrealctl org manages organisations. An organisation owns instances, members and billing, and almost every other command needs to know which one you mean — so this group is usually the second one you reach for after auth.

Usage
surrealctl org <COMMAND> [OPTIONS]surrealctl orgs <COMMAND> [OPTIONS]
VerbPurposeAlias
listList the organisations you belong tols
getShow one organisation
createCreate an organisation
updateRename an organisation
archiveArchive an organisation
useRemember an organisation as the default for this profile
rolesList the roles an organisation can assign
permissionsShow what you are permitted to do in an organisation
usageShow resource usage across an organisation's instances
spendShow an organisation's billed spend
plansList the plans available to an organisation

Personal access tokens are read-only here: the mutating verbs answer 403, exit 4. See Authentication.

List the organisations you belong to.

Usage
surrealctl org list [OPTIONS]

This command takes no positional arguments — it lists everything you can see.

Options

NameDescription
--all
Include archived organisations.

Also accepts the list presentation flags. Column ids are name, id, plan, state, role and members, with billing_provider, max_free, max_paid, privatelink, locked and archived_at shown only under --wide.

surrealctl org list
Output
NAME      ID                    PLAN    STATE   YOUR ROLE  MEMBERS
acme      67upif0m8sh1cn1p2c8t  scale   active  owner            7
contoso   6a2k9lqzt4v8bn3m1x5c  free    active  member           2
Just the names, for a loop
surrealctl org list --columns name --no-header

An empty list is a success: exit 0 and an empty array under --json.

Show one organisation.

Usage
surrealctl org get [OPTIONS] [ORG]

Arguments

NameDescription
[ORG]
The organisation, by id or name. Defaults to the resolved one.

This command has no options of its own.

surrealctl org get acme
Whichever organisation is in force
surrealctl org get

The detail view reports the id, plan, state, your role, the member count, free and paid instance allowances, the billing provider and details, the payment method and PrivateLink availability. Two further fields appear only when they apply: Resources Locked when true, and Archived when the organisation has been archived. Backup retention bounds are shown when the plan defines them.

Create an organisation.

Usage
surrealctl org create [OPTIONS] <NAME>

Arguments

NameDescription
<NAME>
required
A name for the organisation. Between 1 and 30 characters.

Options

NameDescription
--use
Remember this organisation as the default for this profile, as if org use had been run afterwards.
surrealctl org create acme --use

Refusals. A name outside 1 to 30 characters is a usage error, exit 2, raised before any request.

Rename an organisation.

Usage
surrealctl org update [OPTIONS] --name <NAME> [ORG]

Arguments

NameDescription
[ORG]
The organisation, by id or name. Defaults to the resolved one.

Options

NameDescription
--name<NAME>
required
The new name.
surrealctl org update acme --name "Acme Corporation"

Renaming does not change the organisation's id, so scripts that address it by id are unaffected.

Archive an organisation.

Usage
surrealctl org archive [OPTIONS] [ORG]

Arguments

NameDescription
[ORG]
The organisation, by id or name. Defaults to the resolved one.

Options

NameDescription
--force
Archive without confirming.
surrealctl org archive contoso

Refusals. The command confirms first unless --force or the global --yes is given. In a non-interactive session with neither, it exits 2 having sent nothing. Declining the prompt prints Nothing was archived. and exits 0.

An organisation that is already archived is a no-op that exits 0. It says so and stops before the archive request:

`contoso` is already archived.

The document is still emitted, so org archive <name> --json answers with the organisation in both cases rather than changing shape with remote state the caller has not seen.

Archived organisations are hidden from org list unless you pass --all.

Remember an organisation as the default for this profile.

Usage
surrealctl org use [OPTIONS] [ORG]

Arguments

NameDescription
[ORG]
The organisation, by id or name. Omit to choose interactively.

Options

NameDescription
--clear
Forget the remembered organisation instead. Conflicts with [ORG].
Remember one
surrealctl org use acme
Pick from a list
surrealctl org use
Forget it again
surrealctl org use --clear

The choice is written to the [profile.<name>.context] table of config.toml, which sits below a hand-written org key in the precedence chain — so setting org yourself is never overwritten by this command.

Refusals. Omitting [ORG] in a non-interactive session exits 2 and names the flags that would have settled it. The command warns when SURREALCTL_ORG is set, because the variable outranks what it just wrote.

org use remembers an organisation within a profile. context use switches the whole profile.

List the roles an organisation can assign.

Usage
surrealctl org roles [OPTIONS] [ORG]

Arguments

NameDescription
[ORG]
The organisation, by id or name. Defaults to the resolved one.

Also accepts the list presentation flags. Column ids are name and permissions.

surrealctl org roles

The role vocabulary is per organisation, which is why team invite and team update point here rather than validating a --role value locally.

Show what you are permitted to do in an organisation.

Usage
surrealctl org permissions [OPTIONS] [ORG]

Arguments

NameDescription
[ORG]
The organisation, by id or name. Defaults to the resolved one.

Also accepts the list presentation flags. Column ids are resource and action.

surrealctl org permissions --org acme

This is the authorisation model to consult when a command answers 403. auth scopes reports the credential's own scopes, which are a different thing.

Show resource usage across an organisation's instances.

Usage
surrealctl org usage [OPTIONS] [ORG]

Arguments

NameDescription
[ORG]
The organisation, by id or name. Defaults to the resolved one.

Also accepts the list presentation flags. Column ids are instance_id, metric_type, compute_hours, disk_used_bytes, period_start and period_end, with instance_type and source under --wide.

Compute hours per instance, largest first
surrealctl org usage --sort compute_hours --reverse

For one instance rather than all of them, use instance usage.

Show an organisation's billed spend.

Usage
surrealctl org spend [OPTIONS] [ORG]

Arguments

NameDescription
[ORG]
The organisation, by id or name. Defaults to the resolved one.

Options

NameDescription
--period<MM-YYYY>
The billing period, as MM-YYYY. Defaults to the current month.

Also accepts the list presentation flags. Column ids are description, resource, amount, units and effective_at, with instance_id, instance_type and cloud_usage_units under --wide.

Last month's ledger
surrealctl org spend --period 07-2026
The ten largest lines
surrealctl org spend --sort amount --reverse --limit 10

A total is printed on stderr in text modes, computed before --limit is applied, so the total is always the whole bill even when the table is truncated.

Refusals. The period is validated locally, exit 2, and an ISO-ordered value gets a correction rather than a bare rejection:

`2026-03` looks like YYYY-MM. This API wants the month first: use 03-2026.

Under --json, amounts stay in integer minor units. Formatting is a view concern.

List the plans available to an organisation.

Usage
surrealctl org plans [OPTIONS] [ORG]

Arguments

NameDescription
[ORG]
The organisation, by id or name. Defaults to the resolved one.

Also accepts the list presentation flags. Column ids are name, id, regions and instance_types, with description under --wide.

surrealctl org plans

This is the organisation-scoped answer, and the one to trust before an instance create. The catalog commands list what the platform offers globally, which is always the wider set.

Was this page helpful?