# User

object type

A user — an Account AT an Organization Group, holding Roles per organization within the group; the principal a login resolves. Fully realized since: createUser binds an EXISTING Account into the caller's group (at most ONE User per account × group — the userBinding reservation that IS the login index; a doomed holder's binding is taken over on re-add, SL-d), and the lifecycle transitions ride the OPERATIONAL template with the RULED session semantics — sessions never block and never cascade; a non-active User's sessions go INERT at the next resolve (the live-status extension).

## Fields

| Field | Type | Notes |
| --- | --- | --- |
| `id` | [ID](/types/#scalars) `ID!` | The record’s id — a UUID the platform assigned when the record was created; every reference to this record uses it. |
| `sysId` | [String](/types/#scalars) `String!` | The group-scoped human-facing system id (US-…). |
| `type` | [String](/types/#scalars) `String!` | The kind of record — always `User` here. |
| `caption` | [String](/types/#scalars) `String!` | The record’s display name — what people see it called. |
| `status` | [String](/types/#scalars) `String!` | The FSM state: active \| inactive \| doomed. |
| `parentId` | [ID](/types/#scalars) `ID!` | The parent org group; for a User parentId === rootId. |
| `rootId` | [ID](/types/#scalars) `ID!` | The org-group family root. |
| `createdAt` | [String](/types/#scalars) `String!` | When the record was created, as a UTC timestamp. |
| `updatedAt` | [String](/types/#scalars) `String!` | When the record last changed, as a UTC timestamp. |
| `revisionNum` | [Int](/types/#scalars) `Int!` | How many times this record has been edited; the first save is 0. |
| `revision` | [ID](/types/#scalars) `ID!` | The OCC revision token — supply it on every mutation of this record; rotates on every write. |
| `refCaptions` | [RefCaption](/types/RefCaption/) `[RefCaption!]!` | The server-composed captions of this record's declared references (the referenced-caption rule) — one row per referenced id; see RefCaption. |
| `accountId` | [ID](/types/#scalars) `ID!` | The Account this user binds — attribute, never key identity; NOT editable. |
| `orgRoles` | [UserOrgRoles](/types/UserOrgRoles/) `[UserOrgRoles!]!` | No further notes. |

## Used by

- [createUser](/reference/user/createUser/)
- [deactivateUser](/reference/user/deactivateUser/)
- [doomUser](/reference/user/doomUser/)
- [reactivateUser](/reference/user/reactivateUser/)
- [updateUser](/reference/user/updateUser/)
- [user](/reference/user/user/)
