Skip to main content
Dimensions are reporting axes you define for an Entity. Each Dimension holds Dimension Values that tag Ledger Entry Lines. Only lines on Result Accounts (income and expense types) can carry Dimension Values. This page covers full CRUD for both Dimensions and their Values.
Sources: apps/erp-backend/src/ledger-core/dimension/dimension.controller.ts and apps/erp-backend/src/ledger-core/dimension/dimension-value.controller.ts.

GET /api/entities/:entityId/dimensions

List all Dimensions for an Entity.
  • Path param: entityId (UUID)
  • Success response: Array of dimensionSchema
  • Status: 200

POST /api/entities/:entityId/dimensions

Create a new Dimension.
  • Path param: entityId (UUID)
  • Body: CreateDimensionDto (from createDimensionSchema)
  • Success response: dimensionSchema
  • Status: 201

PATCH /api/entities/:entityId/dimensions/:dimensionId

Rename a Dimension.
  • Path params: entityId (UUID), dimensionId (UUID)
  • Body: UpdateDimensionDto (from updateDimensionSchema)
  • Success response: dimensionSchema
  • Status: 200

DELETE /api/entities/:entityId/dimensions/:dimensionId

Delete a Dimension. A Dimension that has values cannot be deleted.
  • Path params: entityId (UUID), dimensionId (UUID)
  • Success response: dimensionSchema
  • Status: 200

GET /api/entities/:entityId/dimensions/:dimensionId/values

List all Dimension Values for a Dimension.
  • Path params: entityId (UUID), dimensionId (UUID)
  • Success response: Array of dimensionValueSchema
  • Status: 200

POST /api/entities/:entityId/dimensions/:dimensionId/values

Create a new Dimension Value.
  • Path params: entityId (UUID), dimensionId (UUID)
  • Body: CreateDimensionValueDto (from createDimensionValueSchema)
  • Success response: dimensionValueSchema
  • Status: 201

PATCH /api/entities/:entityId/dimensions/:dimensionId/values/:dimensionValueId

Update a Dimension Value. You can rename, recode, or reparent it.
  • Path params: entityId (UUID), dimensionId (UUID), dimensionValueId (UUID)
  • Body: UpdateDimensionValueDto (from updateDimensionValueSchema)
At least one field must be provided.
  • Success response: dimensionValueSchema
  • Status: 200

DELETE /api/entities/:entityId/dimensions/:dimensionId/values/:dimensionValueId

Delete a Dimension Value. A value that is tagged on any Ledger Entry Line or that has children cannot be deleted.
  • Path params: entityId (UUID), dimensionId (UUID), dimensionValueId (UUID)
  • Success response: dimensionValueSchema
  • Status: 200

Domain error codes

Status codes