Custom Properties
Define and manage custom property sets and property definitions. Custom properties extend the data model with project-specific attributes.
Get custom properties
Retrieves all custom property sets and their definitions for the project. Custom properties extend the data model with project-specific attributes organized in property sets.
Path parameters
-
- Name
-
projectId - Type
- string
- Required
- Required
- Description
- Identifier of the project.
Response fields
-
- Name
-
libraryId - Type
- integer
- Required
- Optional
- Description
- The identifier of the property library.
-
- Name
-
sets - Type
- array<object>
- Required
- Optional
- Description
- The property sets defined in this library.
-
-
- Name
-
id - Type
- integer
- Required
- Optional
- Description
- The unique identifier of the property set.
-
- Name
-
name - Type
- string
- Required
- Optional
- Description
- The display name of the property set.
-
- Name
-
propertyDefinitions - Type
- array<object>
- Required
- Optional
- Description
- The property definitions contained in this set.
-
-
- Name
-
id - Type
- integer
- Required
- Optional
- Description
- The unique identifier of the property definition.
-
- Name
-
guid - Type
- string
- Required
- Optional
- Description
- The globally unique identifier of the property definition.
-
- Name
-
name - Type
- string
- Required
- Optional
- Description
- The display name of the property.
-
- Name
-
dataType - Type
- string
- Required
- Optional
- Description
- The data type of the property value (e.g. "string", "double", "boolean").
-
- Name
-
measureType - Type
- string
- Required
- Optional
- Description
- The measure type for numeric properties (e.g. "length", "area").
-
- Name
-
unitName - Type
- string
- Required
- Optional
- Description
- The unit name for numeric properties (e.g. "m", "m2").
-
- Name
-
enumerationValues - Type
- array<string>
- Required
- Optional
- Description
- The allowed values when the property is an enumeration type.
-
-
- Name
-
entityTypes - Type
- array<object>
- Required
- Optional
- Description
- The entity types this property set applies to.
-
-
- Name
-
name - Type
- string
- Required
- Optional
- Description
- The name of the entity type (e.g. "IfcWall").
-
- Name
-
predefinedTypes - Type
- array<string>
- Required
- Optional
- Description
- The predefined type values available for this entity type.
-
-
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 property definition by guid
Resolves a property definition by its globally unique identifier. This is the PropertyId returned by the product query, letting consumers look up a property's name, data type, measure type, and unit.
Path parameters
-
- Name
-
projectId - Type
- string
- Required
- Required
- Description
- Identifier of the project.
-
- Name
-
propertyDefinitionGuid - Type
- string
- Required
- Required
- Description
- Identifier of the property definition (the PropertyId returned by the product query).
Response fields
-
- Name
-
id - Type
- integer
- Required
- Optional
- Description
- The unique identifier of the property definition.
-
- Name
-
guid - Type
- string
- Required
- Optional
- Description
- The globally unique identifier of the property definition.
-
- Name
-
name - Type
- string
- Required
- Optional
- Description
- The display name of the property.
-
- Name
-
dataType - Type
- string
- Required
- Optional
- Description
- The data type of the property value (e.g. "string", "double", "boolean").
-
- Name
-
measureType - Type
- string
- Required
- Optional
- Description
- The measure type for numeric properties (e.g. "length", "area").
-
- Name
-
unitName - Type
- string
- Required
- Optional
- Description
- The unit name for numeric properties (e.g. "m", "m2").
-
- Name
-
enumerationValues - Type
- array<string>
- Required
- Optional
- Description
- The allowed values when the property is an enumeration type.
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
Create a new property set
Creates a new custom property set in the project's property library. Property sets group related property definitions and can be scoped to specific entity types.
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 property set.
-
- Name
-
entityTypes - Type
- array<object>
- Required
- Optional
- Description
- Entity types this property set applies to.
-
-
- Name
-
displayName - Type
- string
- Required
- Optional
- Description
- Human-readable display name.
-
- Name
-
value - Type
- string
- Required
- Required
- Description
- Machine-readable value.
-
- Name
-
predefinedTypes - Type
- array<object>
- Required
- Optional
- Description
- Predefined subtypes for this entity type.
-
-
- Name
-
displayName - Type
- string
- Required
- Optional
- Description
- Human-readable display name.
-
- Name
-
value - Type
- string
- Required
- Required
- Description
- Machine-readable value.
-
-
-
- Name
-
propertyDefinitions - Type
- array<object>
- Required
- Optional
- Description
- Optional property definitions to create together with this set in a single transaction.
-
-
- Name
-
name - Type
- string
- Required
- Required
- Description
- Display name of the property.
-
- Name
-
dataType - Type
- string
- Required
- Required
- Description
- Data type of the property value. Valid values: `String`, `Integer`, `Real`, `Boolean`, `Enumeration`.
-
- Name
-
measureType - Type
- string
- Required
- Optional
- Description
- Measure type for numeric properties (e.g., Length, Area, Volume).
-
- Name
-
unit - Type
- string
- Required
- Optional
- Description
- Unit of measurement (e.g., m, m², m³, kg).
-
- Name
-
enumerationValues - Type
- array<string>
- Required
- Optional
- Description
- Allowed values when DataType is Enumeration.
-
Response fields
-
- Name
-
id - Type
- integer
- Required
- Optional
- Description
- The unique identifier of the property set.
-
- Name
-
name - Type
- string
- Required
- Optional
- Description
- The display name of the property set.
-
- Name
-
propertyDefinitions - Type
- array<object>
- Required
- Optional
- Description
- The property definitions contained in this set.
-
-
- Name
-
id - Type
- integer
- Required
- Optional
- Description
- The unique identifier of the property definition.
-
- Name
-
guid - Type
- string
- Required
- Optional
- Description
- The globally unique identifier of the property definition.
-
- Name
-
name - Type
- string
- Required
- Optional
- Description
- The display name of the property.
-
- Name
-
dataType - Type
- string
- Required
- Optional
- Description
- The data type of the property value (e.g. "string", "double", "boolean").
-
- Name
-
measureType - Type
- string
- Required
- Optional
- Description
- The measure type for numeric properties (e.g. "length", "area").
-
- Name
-
unitName - Type
- string
- Required
- Optional
- Description
- The unit name for numeric properties (e.g. "m", "m2").
-
- Name
-
enumerationValues - Type
- array<string>
- Required
- Optional
- Description
- The allowed values when the property is an enumeration type.
-
-
- Name
-
entityTypes - Type
- array<object>
- Required
- Optional
- Description
- The entity types this property set applies to.
-
-
- Name
-
name - Type
- string
- Required
- Optional
- Description
- The name of the entity type (e.g. "IfcWall").
-
- Name
-
predefinedTypes - Type
- array<string>
- Required
- Optional
- Description
- The predefined type values available for this entity type.
-
Error responses
-
- Name
-
400 - Type
- application/problem+json
- Description
- Invalid request parameters or body
Body:
ProblemDetails
-
- 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
Update a property set
Updates the name or entity type scope of an existing custom property set.
Path parameters
-
- Name
-
projectId - Type
- string
- Required
- Required
- Description
- Identifier of the project.
-
- Name
-
propertySetId - Type
- string
- Required
- Required
- Description
- Identifier of the property set.
Request body
-
- Name
-
name - Type
- string
- Required
- Required
- Description
- Display name of the property set.
-
- Name
-
entityTypes - Type
- array<object>
- Required
- Optional
- Description
- Entity types this property set applies to.
-
-
- Name
-
displayName - Type
- string
- Required
- Optional
- Description
- Human-readable display name.
-
- Name
-
value - Type
- string
- Required
- Required
- Description
- Machine-readable value.
-
- Name
-
predefinedTypes - Type
- array<object>
- Required
- Optional
- Description
- Predefined subtypes for this entity type.
-
-
- Name
-
displayName - Type
- string
- Required
- Optional
- Description
- Human-readable display name.
-
- Name
-
value - Type
- string
- Required
- Required
- Description
- Machine-readable value.
-
-
-
- Name
-
propertyDefinitions - Type
- array<object>
- Required
- Optional
- Description
- Optional property definitions to create together with this set in a single transaction.
-
-
- Name
-
name - Type
- string
- Required
- Required
- Description
- Display name of the property.
-
- Name
-
dataType - Type
- string
- Required
- Required
- Description
- Data type of the property value. Valid values: `String`, `Integer`, `Real`, `Boolean`, `Enumeration`.
-
- Name
-
measureType - Type
- string
- Required
- Optional
- Description
- Measure type for numeric properties (e.g., Length, Area, Volume).
-
- Name
-
unit - Type
- string
- Required
- Optional
- Description
- Unit of measurement (e.g., m, m², m³, kg).
-
- Name
-
enumerationValues - Type
- array<string>
- Required
- Optional
- Description
- Allowed values when DataType is Enumeration.
-
Error responses
-
- Name
-
400 - Type
- application/problem+json
- Description
- Invalid request parameters or body
Body:
ProblemDetails
-
- 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 a property set
Permanently removes a custom property set and all its property definitions from the project.
Path parameters
-
- Name
-
projectId - Type
- string
- Required
- Required
- Description
- Identifier of the project.
-
- Name
-
propertySetId - Type
- string
- Required
- Required
- Description
- Identifier of the property set.
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
Add property definition to a set
Creates a new property definition within an existing property set. Property definitions specify the name, data type, measure type, unit, and optional enumeration values.
Path parameters
-
- Name
-
projectId - Type
- string
- Required
- Required
- Description
- Identifier of the project.
-
- Name
-
propertySetId - Type
- string
- Required
- Required
- Description
- Identifier of the property set.
Request body
-
- Name
-
name - Type
- string
- Required
- Required
- Description
- Display name of the property.
-
- Name
-
dataType - Type
- string
- Required
- Required
- Description
- Data type of the property value. Valid values: `String`, `Integer`, `Real`, `Boolean`, `Enumeration`.
-
- Name
-
measureType - Type
- string
- Required
- Optional
- Description
- Measure type for numeric properties (e.g., Length, Area, Volume).
-
- Name
-
unit - Type
- string
- Required
- Optional
- Description
- Unit of measurement (e.g., m, m², m³, kg).
-
- Name
-
enumerationValues - Type
- array<string>
- Required
- Optional
- Description
- Allowed values when DataType is Enumeration.
Response fields
-
- Name
-
id - Type
- integer
- Required
- Optional
- Description
- The unique identifier of the property definition.
-
- Name
-
guid - Type
- string
- Required
- Optional
- Description
- The globally unique identifier of the property definition.
-
- Name
-
name - Type
- string
- Required
- Optional
- Description
- The display name of the property.
-
- Name
-
dataType - Type
- string
- Required
- Optional
- Description
- The data type of the property value (e.g. "string", "double", "boolean").
-
- Name
-
measureType - Type
- string
- Required
- Optional
- Description
- The measure type for numeric properties (e.g. "length", "area").
-
- Name
-
unitName - Type
- string
- Required
- Optional
- Description
- The unit name for numeric properties (e.g. "m", "m2").
-
- Name
-
enumerationValues - Type
- array<string>
- Required
- Optional
- Description
- The allowed values when the property is an enumeration type.
Error responses
-
- Name
-
400 - Type
- application/problem+json
- Description
- Invalid request parameters or body
Body:
ProblemDetails
-
- 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
Update property definition
Updates an existing property definition within a property set. Can modify the name, data type, measure type, unit, and enumeration values.
Path parameters
-
- Name
-
projectId - Type
- string
- Required
- Required
- Description
- Identifier of the project.
-
- Name
-
propertySetId - Type
- string
- Required
- Required
- Description
- Identifier of the property set.
-
- Name
-
propertyDefinitionId - Type
- string
- Required
- Required
- Description
- Identifier of the property definition.
Request body
-
- Name
-
name - Type
- string
- Required
- Required
- Description
- Display name of the property.
-
- Name
-
dataType - Type
- string
- Required
- Required
- Description
- Data type of the property value. Valid values: `String`, `Integer`, `Real`, `Boolean`, `Enumeration`.
-
- Name
-
measureType - Type
- string
- Required
- Optional
- Description
- Measure type for numeric properties (e.g., Length, Area, Volume).
-
- Name
-
unit - Type
- string
- Required
- Optional
- Description
- Unit of measurement (e.g., m, m², m³, kg).
-
- Name
-
enumerationValues - Type
- array<string>
- Required
- Optional
- Description
- Allowed values when DataType is Enumeration.
Response fields
-
- Name
-
id - Type
- integer
- Required
- Optional
- Description
- The unique identifier of the property definition.
-
- Name
-
guid - Type
- string
- Required
- Optional
- Description
- The globally unique identifier of the property definition.
-
- Name
-
name - Type
- string
- Required
- Optional
- Description
- The display name of the property.
-
- Name
-
dataType - Type
- string
- Required
- Optional
- Description
- The data type of the property value (e.g. "string", "double", "boolean").
-
- Name
-
measureType - Type
- string
- Required
- Optional
- Description
- The measure type for numeric properties (e.g. "length", "area").
-
- Name
-
unitName - Type
- string
- Required
- Optional
- Description
- The unit name for numeric properties (e.g. "m", "m2").
-
- Name
-
enumerationValues - Type
- array<string>
- Required
- Optional
- Description
- The allowed values when the property is an enumeration type.
Error responses
-
- Name
-
400 - Type
- application/problem+json
- Description
- Invalid request parameters or body
Body:
ProblemDetails
-
- 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 property definition
Permanently removes a property definition from a property set.
Path parameters
-
- Name
-
projectId - Type
- string
- Required
- Required
- Description
- Identifier of the project.
-
- Name
-
propertySetId - Type
- string
- Required
- Required
- Description
- Identifier of the property set.
-
- Name
-
propertyDefinitionId - Type
- string
- Required
- Required
- Description
- Identifier of the property definition.
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