Codifications
Manage codification (classification) libraries and codes within projects. Codifications allow you to classify building elements using standard classification systems.
Get all codification libraries for a project (metadata only).
Returns all codification libraries for the given project — metadata only (name, source, edition, guid, group). Classification codes are not included in this response. To retrieve codes for a specific library, use GET /v1/projects/{projectId}/codifications/{libraryGuid}.
Path parameters
-
- Name
-
projectId - Type
- string
- Required
- Required
- Description
- Identifier of the project.
Response fields
-
- Name
-
codificationLibraries - Type
- array<object>
- Required
- Optional
- Description
- The list of codification libraries (metadata only). Retrieve codes per library via GET /v1/projects/{projectId}/codifications/{libraryGuid}.
-
-
- Name
-
guid - Type
- string
- Required
- Optional
- Description
- The unique identifier of the library.
-
- Name
-
name - Type
- string
- Required
- Optional
- Description
- The display name of the library.
-
- Name
-
description - Type
- string
- Required
- Optional
- Description
- A description of the classification library.
-
- Name
-
source - Type
- string
- Required
- Optional
- Description
- The source or publisher of the classification system.
-
- Name
-
edition - Type
- string
- Required
- Optional
- Description
- The edition or version of the classification system.
-
- Name
-
editionDate - Type
- string
- Required
- Optional
- Description
- The publication date of this edition.
-
- Name
-
uri - Type
- string
- Required
- Optional
- Description
- The URI reference for the classification system.
-
- Name
-
moreInfo - Type
- string
- Required
- Optional
- Description
- Link to additional information about the classification system.
-
- Name
-
modelGuid - Type
- string
- Required
- Optional
- Description
- The GUID of the model this library belongs to. Empty if project-level.
-
- Name
-
group - Type
- "Project" | "Model"
- Required
- Optional
- Description
- Indicates whether this library is scoped to the project or a specific model.
-
Error responses
-
- Name
-
400 - Type
- application/json
- Description
- Bad Request
Body:
ErrorView
-
- Name
-
401 - Type
- application/problem+json
- Description
- Authentication required. Provide a valid Bearer token in the Authorization header.
Body:
ProblemDetails
-
- Name
-
403 - Type
- application/problem+json
- Description
- Insufficient permissions for this operation
Body:
ProblemDetails
-
- Name
-
404 - Type
- application/problem+json
- Description
- The requested resource was not found
Body:
ProblemDetails
Create new codification library
Creates a new codification library in the project. Use this to organize classification codes into logical groupings.
Path parameters
-
- Name
-
projectId - Type
- string
- Required
- Required
- Description
- Identifier of the project.
Request body
-
- Name
-
name - Type
- string
- Required
- Required
- Description
- Display name of the library.
-
- Name
-
type - Type
- string
- Required
- Optional
- Description
- Classification system type (e.g., UniClass, OmniClass, NL-SfB).
-
- Name
-
uri - Type
- string
- Required
- Optional
- Description
- URI reference to the classification system specification.
-
- Name
-
description - Type
- string
- Required
- Optional
- Description
- Human-readable description of the library.
-
- Name
-
source - Type
- string
- Required
- Optional
- Description
- Origin or publisher of the classification system.
-
- Name
-
edition - Type
- string
- Required
- Optional
- Description
- Version or edition of the classification system.
Response fields
-
- Name
-
codes - Type
- array<object>
- Required
- Optional
- Description
- The classification codes contained in this library.
-
-
- Name
-
identification - Type
- string
- Required
- Optional
- Description
- The classification code identifier (e.g. "Ss_20_05").
-
- Name
-
description - Type
- string
- Required
- Optional
- Description
- A human-readable description of the classification code.
-
- Name
-
name - Type
- string
- Required
- Optional
- Description
- The display name of the classification code.
-
- Name
-
uri - Type
- string
- Required
- Optional
- Description
- The URI reference for this classification code.
-
- Name
-
guid - Type
- string
- Required
- Optional
- Description
- The unique identifier of the classification code.
-
- Name
-
properties - Type
- array<object>
- Required
- Optional
- Description
- Custom properties attached to this classification code.
-
-
- Name
-
set - Type
- string
- Required
- Optional
- Description
- The name of the property set this property belongs to.
-
- Name
-
name - Type
- string
- Required
- Optional
- Description
- The property name.
-
- Name
-
value - Type
- string
- Required
- Optional
- Description
- The property value.
-
-
-
- Name
-
source - Type
- string
- Required
- Optional
- Description
- The source or publisher of the classification system.
-
- Name
-
edition - Type
- string
- Required
- Optional
- Description
- The edition or version of the classification system.
-
- Name
-
editionDate - Type
- string
- Required
- Optional
- Description
- The publication date of this edition.
-
- Name
-
name - Type
- string
- Required
- Optional
- Description
- The display name of the library.
-
- Name
-
description - Type
- string
- Required
- Optional
- Description
- A description of the classification library.
-
- Name
-
uri - Type
- string
- Required
- Optional
- Description
- The URI reference for the classification system.
-
- Name
-
moreInfo - Type
- string
- Required
- Optional
- Description
- Link to additional information about the classification system.
-
- Name
-
guid - Type
- string
- Required
- Optional
- Description
- The unique identifier of the library.
-
- Name
-
modelGuid - Type
- string
- Required
- Optional
- Description
- The GUID of the model this library belongs to. Empty if it is a project-level library.
-
- Name
-
group - Type
- "Project" | "Model"
- Required
- Optional
- Description
- Indicates whether this library is scoped to the project or a specific model.
Error responses
-
- Name
-
400 - Type
- application/json
- Description
- Bad Request
Body:
ErrorView
-
- Name
-
401 - Type
- application/problem+json
- Description
- Authentication required. Provide a valid Bearer token in the Authorization header.
Body:
ProblemDetails
-
- Name
-
403 - Type
- application/problem+json
- Description
- Insufficient permissions for this operation
Body:
ProblemDetails
-
- Name
-
404 - Type
- application/problem+json
- Description
- The requested resource was not found
Body:
ProblemDetails
Get specific library in a project
Returns the codification library with the specified identifier, including all its codification codes.
Path parameters
-
- Name
-
projectId - Type
- string
- Required
- Required
- Description
- Identifier of the project.
-
- Name
-
libraryGuid - Type
- string
- Required
- Required
- Description
- Identifier of the library.
Response fields
-
- Name
-
codes - Type
- array<object>
- Required
- Optional
- Description
- The classification codes contained in this library.
-
-
- Name
-
identification - Type
- string
- Required
- Optional
- Description
- The classification code identifier (e.g. "Ss_20_05").
-
- Name
-
description - Type
- string
- Required
- Optional
- Description
- A human-readable description of the classification code.
-
- Name
-
name - Type
- string
- Required
- Optional
- Description
- The display name of the classification code.
-
- Name
-
uri - Type
- string
- Required
- Optional
- Description
- The URI reference for this classification code.
-
- Name
-
guid - Type
- string
- Required
- Optional
- Description
- The unique identifier of the classification code.
-
- Name
-
properties - Type
- array<object>
- Required
- Optional
- Description
- Custom properties attached to this classification code.
-
-
- Name
-
set - Type
- string
- Required
- Optional
- Description
- The name of the property set this property belongs to.
-
- Name
-
name - Type
- string
- Required
- Optional
- Description
- The property name.
-
- Name
-
value - Type
- string
- Required
- Optional
- Description
- The property value.
-
-
-
- Name
-
source - Type
- string
- Required
- Optional
- Description
- The source or publisher of the classification system.
-
- Name
-
edition - Type
- string
- Required
- Optional
- Description
- The edition or version of the classification system.
-
- Name
-
editionDate - Type
- string
- Required
- Optional
- Description
- The publication date of this edition.
-
- Name
-
name - Type
- string
- Required
- Optional
- Description
- The display name of the library.
-
- Name
-
description - Type
- string
- Required
- Optional
- Description
- A description of the classification library.
-
- Name
-
uri - Type
- string
- Required
- Optional
- Description
- The URI reference for the classification system.
-
- Name
-
moreInfo - Type
- string
- Required
- Optional
- Description
- Link to additional information about the classification system.
-
- Name
-
guid - Type
- string
- Required
- Optional
- Description
- The unique identifier of the library.
-
- Name
-
modelGuid - Type
- string
- Required
- Optional
- Description
- The GUID of the model this library belongs to. Empty if it is a project-level library.
-
- Name
-
group - Type
- "Project" | "Model"
- Required
- Optional
- Description
- Indicates whether this library is scoped to the project or a specific model.
Error responses
-
- Name
-
400 - Type
- application/json
- Description
- Bad Request
Body:
ErrorView
-
- Name
-
401 - Type
- application/problem+json
- Description
- Authentication required. Provide a valid Bearer token in the Authorization header.
Body:
ProblemDetails
-
- Name
-
403 - Type
- application/problem+json
- Description
- Insufficient permissions for this operation
Body:
ProblemDetails
-
- Name
-
404 - Type
- application/problem+json
- Description
- The requested resource was not found
Body:
ProblemDetails
Delete codification library
Permanently removes a codification library and all its codes from the project. This action cannot be undone.
Path parameters
-
- Name
-
projectId - Type
- string
- Required
- Required
- Description
- Identifier of the project.
-
- Name
-
libraryGuid - Type
- string
- Required
- Required
- Description
- Identifier of the library.
Error responses
-
- Name
-
401 - Type
- application/problem+json
- Description
- Authentication required. Provide a valid Bearer token in the Authorization header.
Body:
ProblemDetails
-
- Name
-
403 - Type
- application/problem+json
- Description
- Insufficient permissions for this operation
Body:
ProblemDetails
-
- Name
-
404 - Type
- application/problem+json
- Description
- The requested resource was not found
Body:
ProblemDetails
Get a single codification code by id
Resolves a codification code guid (e.g. a key from the product query Code map) to its identification, name and description.
Path parameters
-
- Name
-
projectId - Type
- string
- Required
- Required
- Description
- Identifier of the project.
-
- Name
-
libraryGuid - Type
- string
- Required
- Required
- Description
- Identifier of the library that owns the code.
-
- Name
-
codificationGuid - Type
- string
- Required
- Required
- Description
- Identifier of the codification code.
Response fields
-
- Name
-
identification - Type
- string
- Required
- Optional
- Description
- The classification code identifier (e.g. "Ss_20_05").
-
- Name
-
description - Type
- string
- Required
- Optional
- Description
- A human-readable description of the classification code.
-
- Name
-
name - Type
- string
- Required
- Optional
- Description
- The display name of the classification code.
-
- Name
-
uri - Type
- string
- Required
- Optional
- Description
- The URI reference for this classification code.
-
- Name
-
guid - Type
- string
- Required
- Optional
- Description
- The unique identifier of the classification code.
-
- Name
-
properties - Type
- array<object>
- Required
- Optional
- Description
- Custom properties attached to this classification code.
-
-
- Name
-
set - Type
- string
- Required
- Optional
- Description
- The name of the property set this property belongs to.
-
- Name
-
name - Type
- string
- Required
- Optional
- Description
- The property name.
-
- Name
-
value - Type
- string
- Required
- Optional
- Description
- The property value.
-
Error responses
-
- Name
-
401 - Type
- application/problem+json
- Description
- Authentication required. Provide a valid Bearer token in the Authorization header.
Body:
ProblemDetails
-
- Name
-
403 - Type
- application/problem+json
- Description
- Insufficient permissions for this operation
Body:
ProblemDetails
-
- Name
-
404 - Type
- application/json
- Description
- Not Found
Body:
ProblemDetails
Update codification code
Updates the properties of an existing classification code. Use this to rename or modify a code's attributes.
Path parameters
-
- Name
-
projectId - Type
- string
- Required
- Required
- Description
- Identifier of the project.
-
- Name
-
libraryGuid - Type
- string
- Required
- Required
- Description
- Identifier of the library.
-
- Name
-
codificationGuid - Type
- string
- Required
- Required
- Description
- Identifier of the codification code.
Request body
-
- Name
-
name - Type
- string
- Required
- Optional
- Description
- New display name. Leave null to keep the current name.
-
- Name
-
identification - Type
- string
- Required
- Optional
- Description
- New identification code. Leave null to keep the current value.
-
- Name
-
parentId - Type
- string
- Required
- Optional
- Description
- New parent code id. Leave null to keep the current parent.
-
- Name
-
description - Type
- string
- Required
- Optional
- Description
- New description. Leave null to keep the current description.
-
- Name
-
measureDefinitions - Type
- array<object>
- Required
- Optional
- Description
- Replacement set of measure definitions. Leave null to keep existing measures.
-
-
- Name
-
id - Type
- string
- Required
- Optional
- Description
- Unique identifier of the measure definition.
-
- Name
-
hardcodedOptionName - Type
- string
- Required
- Optional
- Description
- Name of a hardcoded option to use for this measure.
-
- Name
-
descriptionValue - Type
- string
- Required
- Optional
- Description
- Human-readable description of the measure.
-
- Name
-
calculator - Type
- object
- Required
- Optional
- Description
- Calculator configuration for computing the measure value.
-
-
- Name
-
type - Type
- string
- Required
- Optional
- Description
- Type of calculator (e.g., formula, lookup).
-
- Name
-
description - Type
- string
- Required
- Optional
- Description
- Human-readable description of the calculator.
-
- Name
-
parameters - Type
- array<object>
- Required
- Optional
- Description
- Parameters used by the calculator.
-
-
- Name
-
name - Type
- string
- Required
- Optional
- Description
- Name of the parameter.
-
- Name
-
value - Type
- number
- Required
- Optional
- Description
- Numeric value of the parameter.
-
-
-
- Name
-
costCalculation - Type
- object
- Required
- Optional
- Description
- Cost calculation configuration for this measure.
-
-
- Name
-
name - Type
- string
- Required
- Optional
- Description
- Display name of the cost calculation.
-
- Name
-
label - Type
- string
- Required
- Optional
- Description
- Label for display purposes.
-
- Name
-
description - Type
- string
- Required
- Optional
- Description
- Human-readable description of the cost calculation.
-
- Name
-
type - Type
- string
- Required
- Optional
- Description
- Type of cost calculation.
-
-
- Name
-
unit - Type
- string
- Required
- Optional
- Description
- Unit of measurement (e.g., m, m², m³, kg).
-
-
- Name
-
sort - Type
- string
- Required
- Optional
- Description
- New sort key. Leave null to keep the current value.
Error responses
-
- Name
-
400 - Type
- application/json
- Description
- Bad Request
Body:
ErrorView
-
- Name
-
401 - Type
- application/problem+json
- Description
- Authentication required. Provide a valid Bearer token in the Authorization header.
Body:
ProblemDetails
-
- Name
-
403 - Type
- application/problem+json
- Description
- Insufficient permissions for this operation
Body:
ProblemDetails
-
- Name
-
404 - Type
- application/problem+json
- Description
- The requested resource was not found
Body:
ProblemDetails
Delete codification code
Permanently removes a classification code from the library. Any existing assignments of this code to elements will be lost.
Path parameters
-
- Name
-
projectId - Type
- string
- Required
- Required
- Description
- Identifier of the project.
-
- Name
-
libraryGuid - Type
- string
- Required
- Required
- Description
- Identifier of the library.
-
- Name
-
codificationGuid - Type
- string
- Required
- Required
- Description
- Identifier of the codification code.
Error responses
-
- Name
-
400 - Type
- application/json
- Description
- Bad Request
Body:
ErrorView
-
- Name
-
401 - Type
- application/problem+json
- Description
- Authentication required. Provide a valid Bearer token in the Authorization header.
Body:
ProblemDetails
-
- Name
-
403 - Type
- application/problem+json
- Description
- Insufficient permissions for this operation
Body:
ProblemDetails
-
- Name
-
404 - Type
- application/problem+json
- Description
- The requested resource was not found
Body:
ProblemDetails
Create new codification code in a library
Adds a new classification code to the specified codification library. The code can then be assigned to building elements for standardized classification.
Path parameters
-
- Name
-
projectId - Type
- string
- Required
- Required
- Description
- Identifier of the project.
-
- Name
-
libraryGuid - Type
- string
- Required
- Required
- Description
- Identifier of the library.
Request body
-
- Name
-
name - Type
- string
- Required
- Required
- Description
- Display name of the classification code.
-
- Name
-
identification - Type
- string
- Required
- Required
- Description
- Unique identification code (e.g., Ss_20 for UniClass).
-
- Name
-
parentId - Type
- string
- Required
- Optional
- Description
- ID of the parent classification code for hierarchical codes. Null for top-level codes.
-
- Name
-
description - Type
- string
- Required
- Optional
- Description
- Human-readable description of what this code classifies.
-
- Name
-
measureDefinitions - Type
- array<object>
- Required
- Optional
- Description
- Measure definitions for quantity takeoffs.
-
-
- Name
-
id - Type
- string
- Required
- Optional
- Description
- Unique identifier of the measure definition.
-
- Name
-
hardcodedOptionName - Type
- string
- Required
- Optional
- Description
- Name of a hardcoded option to use for this measure.
-
- Name
-
descriptionValue - Type
- string
- Required
- Optional
- Description
- Human-readable description of the measure.
-
- Name
-
calculator - Type
- object
- Required
- Optional
- Description
- Calculator configuration for computing the measure value.
-
-
- Name
-
type - Type
- string
- Required
- Optional
- Description
- Type of calculator (e.g., formula, lookup).
-
- Name
-
description - Type
- string
- Required
- Optional
- Description
- Human-readable description of the calculator.
-
- Name
-
parameters - Type
- array<object>
- Required
- Optional
- Description
- Parameters used by the calculator.
-
-
- Name
-
name - Type
- string
- Required
- Optional
- Description
- Name of the parameter.
-
- Name
-
value - Type
- number
- Required
- Optional
- Description
- Numeric value of the parameter.
-
-
-
- Name
-
costCalculation - Type
- object
- Required
- Optional
- Description
- Cost calculation configuration for this measure.
-
-
- Name
-
name - Type
- string
- Required
- Optional
- Description
- Display name of the cost calculation.
-
- Name
-
label - Type
- string
- Required
- Optional
- Description
- Label for display purposes.
-
- Name
-
description - Type
- string
- Required
- Optional
- Description
- Human-readable description of the cost calculation.
-
- Name
-
type - Type
- string
- Required
- Optional
- Description
- Type of cost calculation.
-
-
- Name
-
unit - Type
- string
- Required
- Optional
- Description
- Unit of measurement (e.g., m, m², m³, kg).
-
-
- Name
-
sort - Type
- string
- Required
- Optional
- Description
- Sort order key for display purposes.
Response fields
-
- Name
-
identification - Type
- string
- Required
- Optional
- Description
- The classification code identifier (e.g. "Ss_20_05").
-
- Name
-
description - Type
- string
- Required
- Optional
- Description
- A human-readable description of the classification code.
-
- Name
-
name - Type
- string
- Required
- Optional
- Description
- The display name of the classification code.
-
- Name
-
uri - Type
- string
- Required
- Optional
- Description
- The URI reference for this classification code.
-
- Name
-
guid - Type
- string
- Required
- Optional
- Description
- The unique identifier of the classification code.
-
- Name
-
properties - Type
- array<object>
- Required
- Optional
- Description
- Custom properties attached to this classification code.
-
-
- Name
-
set - Type
- string
- Required
- Optional
- Description
- The name of the property set this property belongs to.
-
- Name
-
name - Type
- string
- Required
- Optional
- Description
- The property name.
-
- Name
-
value - Type
- string
- Required
- Optional
- Description
- The property value.
-
Error responses
-
- Name
-
400 - Type
- application/json
- Description
- Bad Request
Body:
ErrorView
-
- Name
-
401 - Type
- application/problem+json
- Description
- Authentication required. Provide a valid Bearer token in the Authorization header.
Body:
ProblemDetails
-
- Name
-
403 - Type
- application/problem+json
- Description
- Insufficient permissions for this operation
Body:
ProblemDetails
-
- Name
-
404 - Type
- application/problem+json
- Description
- The requested resource was not found
Body:
ProblemDetails