Dimensions belong to the Organization
A Dimension and its Values belong to the Organization, not to one Entity. Every Entity of the Organization can tag its lines with every Value, so one Dimension splits the results of all its Entities the same way.- A Dimension name is unique in the Organization. A Value code is unique in its Dimension.
- A rename, a recode, or a move in the hierarchy applies to every Entity of the Organization, whichever Entity you make it from.
- Each Entity keeps its own lines and tags. When you book or retag a line,
dimensionValueIdsmust name Values of the Entity’s Organization. - You can’t delete a Value while a line of any Entity of the Organization carries it.
- The Income Statement by Dimension stays per Entity: it lists the Organization’s Values and adds up that Entity’s lines.
- An Entity whose lines carry a Value can’t move to another Organization.
organizationId from the Entity. The routes need the books permission in the Organization: books read for GET, books write for the other methods. An API key confined to one Entity can call them for that Entity’s Organization. Any other Organization, or one where you hold no Membership, answers 404 with ORGANIZATION_NOT_FOUND_ERROR.
GET /api/organizations/:organizationId/dimensions
List all Dimensions of the Organization.- Path param:
organizationId(UUID) - Success response: array of Dimension objects
- Status: 200
POST /api/organizations/:organizationId/dimensions
Create a new Dimension.- Path param:
organizationId(UUID) - Body:
- Success response: the created Dimension (same shape as the list response)
- Status: 201
PATCH /api/organizations/:organizationId/dimensions/:dimensionId
Rename a Dimension. The new name applies to every Entity of the Organization.- Path params:
organizationId(UUID),dimensionId(UUID) - Body:
- Success response: the updated Dimension (same shape as the list response)
- Status: 200
DELETE /api/organizations/:organizationId/dimensions/:dimensionId
Delete a Dimension. A Dimension that has values cannot be deleted.- Path params:
organizationId(UUID),dimensionId(UUID) - Success response: the deleted Dimension (same shape as the list response)
- Status: 200
GET /api/organizations/:organizationId/dimensions/:dimensionId/values
List all Dimension Values for a Dimension.- Path params:
organizationId(UUID),dimensionId(UUID) - Success response: array of Dimension Value objects
- Status: 200
POST /api/organizations/:organizationId/dimensions/:dimensionId/values
Create a new Dimension Value.- Path params:
organizationId(UUID),dimensionId(UUID) - Body:
- Success response: the created Dimension Value (same shape as the values list response)
- Status: 201
PATCH /api/organizations/:organizationId/dimensions/:dimensionId/values/:dimensionValueId
Update a Dimension Value. You can rename, recode, or reparent it. The change applies to every Entity of the Organization.- Path params:
organizationId(UUID),dimensionId(UUID),dimensionValueId(UUID) - Body:
At least one field must be provided.
- Success response: the updated Dimension Value (same shape as the values list response)
- Status: 200
DELETE /api/organizations/:organizationId/dimensions/:dimensionId/values/:dimensionValueId
Delete a Dimension Value. A value that a Ledger Entry Line of any Entity of the Organization carries, or that has children, cannot be deleted.- Path params:
organizationId(UUID),dimensionId(UUID),dimensionValueId(UUID) - Success response: the deleted Dimension Value (same shape as the values list response)
- Status: 200

