> ## Documentation Index
> Fetch the complete documentation index at: https://help.skillsdb.com/llms.txt
> Use this file to discover all available pages before exploring further.

# The Org Structure objects

> Eleven flat org dimensions and the manager hierarchy — where someone sits, and who they report to

<Info>
  **Quick Summary:** Org structure is two unrelated things. Eleven **flat dimensions** — businessUnits, divisions, businessRegions, countries, states, cities, sites, buildings, departments, teams, shifts — say *where someone sits*; the **manager hierarchy** says *who they report to*. They share nothing, and the dimensions have no parent-child structure between them.
</Info>

## Dimension values

Every dimension behaves identically. A value is `{ id, name, isActive }`:

* `GET /api/v1/org/dimensions` — the eleven keys.
* `GET /api/v1/org/{dimension}` — every value, deactivated ones included.
* `POST /api/v1/org/{dimension}` — create (name only; no ordering exists).
* `PATCH /api/v1/org/{dimension}/{id}` — rename, or `isActive: false` to deactivate reversibly.
* `DELETE /api/v1/org/{dimension}/{id}` — remove the value outright. When people hold it, the delete refuses with a `409` carrying the dependency counts (`assignedPeople`, `personRecordReferences`); retry with `?confirm=true` to remove the memberships (and clear the legacy person-record column) and delete anyway. A value referenced by records outside this API — assessments, surveys, qual cards, saved views, or another org value — cannot be deleted even with `confirm`; deactivate it instead.
* `GET /api/v1/org/{dimension}/{id}/usage` — how many people hold the value, before deactivating or deleting it.
* `GET /api/v1/org/{dimension}/{id}/people` — everyone holding the value.

## A person's placement

Placement is many-to-many — someone can belong to two sites or three teams. It lives on the Person resource: `GET|POST|DELETE /api/v1/people/{id}/org-schema` (additive attach / explicit detach) and `PUT /api/v1/people/{id}/org-schema/{dimension}` to replace one dimension exactly.

<Note>
  **One representation is published.** Internally five org facts also exist in a second, legacy form on the person record (single-value department and business-region columns, free-text city/state/country strings). The API reads and writes the membership form only; the usage read reports legacy-column references for departments and businessRegions so any drift is visible.
</Note>

## Manager hierarchy

* `GET /api/v1/org/manager-tree` — the company's reporting hierarchy as flat parent-pointer rows ordered by depth (roots at level 0), company-scoped, paginated.
* `GET /api/v1/people/{id}/span-of-control` — one person's subtree, subject included at level 0.

Setting a person's manager is `PATCH /api/v1/people/{id}/manager` on the Person resource.
