Skip to content

Spaces#

Spaces mirror your organisation's real structure. They form a tree, and rules set higher up apply to everything below. Those rules cover allowed models, spending, shared environment variables and how long API keys may live.

The hierarchy#

The tree can be up to eight levels deep, counting the root space as level 1. ilionx sets this limit for every organisation. A division can block a model or cap a budget once, and every team beneath it inherits that rule without any per-team set-up.

flowchart TD
  ORG["Organisation (root)"] --> D1[Division]
  ORG --> U0[Unit]
  D1 --> D2[Division]
  D1 --> U1[Unit]
  D2 --> U2[Unit]
  U1 --> T1[Team]
  U1 --> T2[Team]
  U2 --> T3[Team]
  U0 --> T4[Team]
Level Purpose
Organisation The root. It carries organisation-wide settings. It has no members or budget of its own.
Division, Unit Governance. Their managers delegate rules and budget downwards. They hold no API keys and do no spending themselves.
Team Where people work: members, API keys, spending limits and the split of the budget between members.

Nesting follows the labels. An organisation or division contains divisions and units, a unit contains teams, and a team is always a leaf.

Two kinds of inherited settings#

Kind Settings How a child relates to its parents
Tighten-only Blocked models, monthly budget A child can restrict further but never loosen. Blocked models add up. The tightest budget wins.
Overlay Environment variables, API key lifetime The closest value wins, and a child can override a single entry.

Authority flows downward#

Managing a space gives you authority over it and everything beneath it. Setting a space's own limits works differently. Someone above the space sets its model restrictions and budget, never its own manager. A division head hands a unit an allowance. The unit head spends and subdivides it but can't raise it.

Action Who can do it
Create a child space Admin, or a manager of the parent or any ancestor
Rename, manage people, edit environment variables A manager of the space, including managers of its ancestors
Set a space's budget or blocked models A manager of an ancestor, or an Admin
Move a space Admin
Set a team's spending limits and member split The team's own manager

You only see spaces you can reach. Admins see everything, managers see their space and what is below it, and members see the spaces they belong to. Parents of visible spaces appear greyed out. This keeps the tree connected without revealing details. A space outside your reach looks as if it doesn't exist.

Lifecycle#

  • Create. Choose a parent and, optionally, a label. The label defaults to the highest level the parent allows.
  • Move. Only Admins can move a space. The moved space may no longer fit under its new parent's budget. So budgets in the moved subtree reset to unlimited and member shares are removed. The confirmation says so before you proceed.
  • Delete. You see how many child spaces, members and keys are affected, and you type the space name to confirm. Deleting cascades to everything beneath it. Past usage still rolls up to the right unit in reports.

Membership#

People join team spaces as Manager or Member. Division and unit spaces accept managers only, because their job is delegation. A team always keeps at least one manager. Removing someone also detaches their API keys from that space and removes their share of the budget.

Model restrictions#

Each space can block models. The effective list combines every blocklist from the root down. With no entries, everything your organisation can use is available. A blocked model behaves as if it doesn't exist. It's hidden from listings, and requests for it are refused as unknown.

Keys that act under a project use the project's own model list instead of space restrictions.

Budget#

Three independent levels control spending:

  1. A monthly budget handed down from above, for divisions, units and teams.
  2. Daily and monthly spending limits on a team.
  3. A member split that shares the team budget as one pool, as a fixed amount per member, or as a percentage per member.

The gateway checks all of them before a request reaches the provider. Two rules keep the tree consistent. The budgets of a space's children can't add up to more than its own budget. Nobody can be unlimited beneath a limited parent. For more information, see Budget and cost.

Environment variables#

Each space can store encrypted variables. ATLAS reads values from the root downwards, and the closest value wins. A manager can override an inherited entry locally, and each row shows where its value comes from.

API keys#

A personal key belongs to one user and acts under one team space that the user belongs to. The organisation-wide key lifetime limit applies to all spaces below the root and affects only new keys. For more information, see API keys.