Custom Properties

Define and manage custom property sets and property definitions. Custom properties extend the data model with project-specific attributes.

GET https://api.qonic.com/v1/projects/:projectId/customProperties

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 https://api.qonic.com/v1/projects/:projectId/customProperties/property-definitions/:propertyDefinitionGuid

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


POST https://api.qonic.com/v1/projects/:projectId/customProperties/property-sets

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


PUT https://api.qonic.com/v1/projects/:projectId/customProperties/property-sets/:propertySetId

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 https://api.qonic.com/v1/projects/:projectId/customProperties/property-sets/:propertySetId

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


POST https://api.qonic.com/v1/projects/:projectId/customProperties/property-sets/:propertySetId/property

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


PUT https://api.qonic.com/v1/projects/:projectId/customProperties/property-sets/:propertySetId/property/:propertyDefinitionId

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 https://api.qonic.com/v1/projects/:projectId/customProperties/property-sets/:propertySetId/property/:propertyDefinitionId

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