AlphaAlpha Docs

Types / Restriction

Restriction API

Get a restriction tree

GET
/types/restriction/{typeId}
AuthorizationBearer <token>

In: header

Path Parameters

typeId*string

Query Parameters

restrictionTreeId*string

Response Body

application/json

application/json

application/json

application/json

curl -X GET "http://localhost:18080/api/v1/types/restriction/string?restrictionTreeId=string"
{
  "active": true,
  "category": "string",
  "id": "string",
  "restrictions": {
    "branches": [
      {
        "choices": [
          {
            "code": "string",
            "option": "string"
          }
        ],
        "id": "string",
        "result": {
          "id": "string",
          "options": [
            {
              "allowedCodes": [
                "string"
              ],
              "optionName": "string",
              "reason": "string"
            }
          ]
        }
      }
    ],
    "decisionTree": {
      "id": "string",
      "result": null
    }
  }
}
{
  "detail": "string",
  "time": "2019-08-24T14:15:22Z",
  "title": "string"
}
{
  "detail": "string",
  "time": "2019-08-24T14:15:22Z",
  "title": "string"
}
{
  "detail": "string",
  "time": "2019-08-24T14:15:22Z",
  "title": "string"
}

Create a restriction tree

POST
/types/restriction/{typeId}
AuthorizationBearer <token>

In: header

Path Parameters

typeId*string

Request Body

application/json

TypeScript Definitions

Use the request body type in TypeScript.

Response Body

application/json

application/json

application/json

application/json

curl -X POST "http://localhost:18080/api/v1/types/restriction/string" \  -H "Content-Type: application/json" \  -d '{    "category": "string",    "id": "string"  }'
{
  "baseVariables": [
    {
      "configuration": {
        "defaultValue": 0.1,
        "isFixed": true,
        "max": 0.1,
        "min": 0.1,
        "stepSize": 0.1
      },
      "id": "string"
    }
  ],
  "color": "string",
  "compensateNulpunt": true,
  "concept": "string",
  "created": "2019-08-24T14:15:22Z",
  "createdBy": "string",
  "elementNamePrefix": "string",
  "enforcedCategories": [
    "string"
  ],
  "hideBaseOptionInName": true,
  "id": "string",
  "massModel": [
    {
      "id": "string",
      "models": {
        "branches": [
          {
            "choices": [
              {
                "code": "string",
                "option": "string"
              }
            ],
            "id": "string",
            "result": {
              "dimensions": {
                "x": {
                  "formula": "string",
                  "isConstant": true
                },
                "y": {
                  "formula": "string",
                  "isConstant": true
                },
                "z": {
                  "formula": "string",
                  "isConstant": true
                }
              },
              "id": "string",
              "level": 0,
              "position": {
                "x": {
                  "formula": "string",
                  "isConstant": true
                },
                "y": {
                  "formula": "string",
                  "isConstant": true
                },
                "z": {
                  "formula": "string",
                  "isConstant": true
                }
              },
              "rotation": {
                "x": {
                  "formula": "string",
                  "isConstant": true
                },
                "y": {
                  "formula": "string",
                  "isConstant": true
                },
                "z": {
                  "formula": "string",
                  "isConstant": true
                }
              },
              "type": "Box"
            }
          }
        ],
        "decisionTree": {
          "id": "string",
          "result": null
        }
      }
    }
  ],
  "models": [
    {
      "id": "string",
      "models": {
        "branches": [
          {
            "choices": [
              {
                "code": "string",
                "option": "string"
              }
            ],
            "id": "string",
            "result": {
              "dimensions": {
                "x": {
                  "formula": "string",
                  "isConstant": true
                },
                "y": {
                  "formula": "string",
                  "isConstant": true
                },
                "z": {
                  "formula": "string",
                  "isConstant": true
                }
              },
              "id": "string",
              "level": 0,
              "material": "string",
              "position": {
                "x": {
                  "formula": "string",
                  "isConstant": true
                },
                "y": {
                  "formula": "string",
                  "isConstant": true
                },
                "z": {
                  "formula": "string",
                  "isConstant": true
                }
              },
              "rotation": {
                "x": {
                  "formula": "string",
                  "isConstant": true
                },
                "y": {
                  "formula": "string",
                  "isConstant": true
                },
                "z": {
                  "formula": "string",
                  "isConstant": true
                }
              },
              "type": "WALL"
            }
          }
        ],
        "decisionTree": {
          "id": "string",
          "result": null
        }
      }
    }
  ],
  "name": "string",
  "options": [
    {
      "activeViews": [
        "string"
      ],
      "category": "string",
      "codes": [
        {
          "code": "string",
          "description": "string",
          "option": "string",
          "price": 0.1,
          "visible": true
        }
      ],
      "id": "string",
      "isNeighborOption": true,
      "name": "string",
      "neighborOption": true,
      "phase": "PLAN",
      "visible": true
    }
  ],
  "previewBlob": {
    "blobId": "string",
    "created": "2019-08-24T14:15:22Z",
    "extension": "string",
    "fileSize": 0,
    "name": "string",
    "type": "IMAGE"
  },
  "restrictions": [
    {
      "active": true,
      "category": "string",
      "id": "string",
      "restrictions": {
        "branches": [
          {
            "choices": [
              {
                "code": "string",
                "option": "string"
              }
            ],
            "id": "string",
            "result": {
              "id": "string",
              "options": [
                {
                  "allowedCodes": [
                    "string"
                  ],
                  "optionName": "string",
                  "reason": "string"
                }
              ]
            }
          }
        ],
        "decisionTree": {
          "id": "string",
          "result": null
        }
      }
    }
  ],
  "staticModels": [
    {
      "id": "string",
      "modelNamePrefix": "string",
      "models": {
        "branches": [
          {
            "choices": [
              {
                "code": "string",
                "option": "string"
              }
            ],
            "id": "string",
            "result": {
              "exhaustiveOptions": [
                "string"
              ],
              "id": "string",
              "isEmpty": true,
              "isExhaustive": true,
              "name": "string",
              "parameters": [
                {
                  "name": "string",
                  "type": "string",
                  "value": null
                }
              ],
              "position": {
                "x": {
                  "formula": "string",
                  "isConstant": true
                },
                "y": {
                  "formula": "string",
                  "isConstant": true
                },
                "z": {
                  "formula": "string",
                  "isConstant": true
                }
              },
              "rotation": {
                "x": {
                  "formula": "string",
                  "isConstant": true
                },
                "y": {
                  "formula": "string",
                  "isConstant": true
                },
                "z": {
                  "formula": "string",
                  "isConstant": true
                }
              }
            }
          }
        ],
        "decisionTree": {
          "id": "string",
          "result": null
        }
      },
      "nameOverrides": {
        "property1": "string",
        "property2": "string"
      },
      "stats": {
        "glbInDb": 0,
        "lastSynced": "2019-08-24T14:15:22Z",
        "modelsComplete": 0,
        "modelsInDb": 0,
        "rvtInDb": 0,
        "totalFileSize": 0,
        "totalModels": 0
      },
      "type": "CONCEPT"
    }
  ],
  "tenantId": "string",
  "totalStaticModels": 0,
  "totalStaticModelsComplete": 0,
  "totalStaticModelsFileSize": 0,
  "totalStaticModelsGlbInDb": 0,
  "totalStaticModelsInDb": 0,
  "totalStaticModelsRvtInDb": 0,
  "updated": "2019-08-24T14:15:22Z",
  "updatedBy": "string",
  "variables": [
    {
      "id": "string",
      "phase": "PLAN",
      "tree": {
        "branches": [
          {
            "choices": [
              {
                "code": "string",
                "option": "string"
              }
            ],
            "id": "string",
            "result": {
              "defaultValue": 0.1,
              "isFixed": true,
              "max": 0.1,
              "min": 0.1,
              "stepSize": 0.1
            }
          }
        ],
        "decisionTree": {
          "id": "string",
          "result": null
        }
      }
    }
  ],
  "variantSuffixFormat": "string",
  "views": [
    {
      "active": true,
      "activeCategories": [
        "string"
      ],
      "description": "string",
      "id": "string",
      "maxHeight": 0.1,
      "position": {
        "x": {
          "formula": "string",
          "isConstant": true
        },
        "y": {
          "formula": "string",
          "isConstant": true
        },
        "z": {
          "formula": "string",
          "isConstant": true
        }
      },
      "target": {
        "x": {
          "formula": "string",
          "isConstant": true
        },
        "y": {
          "formula": "string",
          "isConstant": true
        },
        "z": {
          "formula": "string",
          "isConstant": true
        }
      }
    }
  ]
}
{
  "detail": "string",
  "time": "2019-08-24T14:15:22Z",
  "title": "string"
}
{
  "detail": "string",
  "time": "2019-08-24T14:15:22Z",
  "title": "string"
}
{
  "detail": "string",
  "time": "2019-08-24T14:15:22Z",
  "title": "string"
}

Delete a restriction tree

DELETE
/types/restriction/{typeId}
AuthorizationBearer <token>

In: header

Path Parameters

typeId*string

Query Parameters

restrictionTreeId*string

Response Body

application/json

application/json

application/json

application/json

curl -X DELETE "http://localhost:18080/api/v1/types/restriction/string?restrictionTreeId=string"
{
  "baseVariables": [
    {
      "configuration": {
        "defaultValue": 0.1,
        "isFixed": true,
        "max": 0.1,
        "min": 0.1,
        "stepSize": 0.1
      },
      "id": "string"
    }
  ],
  "color": "string",
  "compensateNulpunt": true,
  "concept": "string",
  "created": "2019-08-24T14:15:22Z",
  "createdBy": "string",
  "elementNamePrefix": "string",
  "enforcedCategories": [
    "string"
  ],
  "hideBaseOptionInName": true,
  "id": "string",
  "massModel": [
    {
      "id": "string",
      "models": {
        "branches": [
          {
            "choices": [
              {
                "code": "string",
                "option": "string"
              }
            ],
            "id": "string",
            "result": {
              "dimensions": {
                "x": {
                  "formula": "string",
                  "isConstant": true
                },
                "y": {
                  "formula": "string",
                  "isConstant": true
                },
                "z": {
                  "formula": "string",
                  "isConstant": true
                }
              },
              "id": "string",
              "level": 0,
              "position": {
                "x": {
                  "formula": "string",
                  "isConstant": true
                },
                "y": {
                  "formula": "string",
                  "isConstant": true
                },
                "z": {
                  "formula": "string",
                  "isConstant": true
                }
              },
              "rotation": {
                "x": {
                  "formula": "string",
                  "isConstant": true
                },
                "y": {
                  "formula": "string",
                  "isConstant": true
                },
                "z": {
                  "formula": "string",
                  "isConstant": true
                }
              },
              "type": "Box"
            }
          }
        ],
        "decisionTree": {
          "id": "string",
          "result": null
        }
      }
    }
  ],
  "models": [
    {
      "id": "string",
      "models": {
        "branches": [
          {
            "choices": [
              {
                "code": "string",
                "option": "string"
              }
            ],
            "id": "string",
            "result": {
              "dimensions": {
                "x": {
                  "formula": "string",
                  "isConstant": true
                },
                "y": {
                  "formula": "string",
                  "isConstant": true
                },
                "z": {
                  "formula": "string",
                  "isConstant": true
                }
              },
              "id": "string",
              "level": 0,
              "material": "string",
              "position": {
                "x": {
                  "formula": "string",
                  "isConstant": true
                },
                "y": {
                  "formula": "string",
                  "isConstant": true
                },
                "z": {
                  "formula": "string",
                  "isConstant": true
                }
              },
              "rotation": {
                "x": {
                  "formula": "string",
                  "isConstant": true
                },
                "y": {
                  "formula": "string",
                  "isConstant": true
                },
                "z": {
                  "formula": "string",
                  "isConstant": true
                }
              },
              "type": "WALL"
            }
          }
        ],
        "decisionTree": {
          "id": "string",
          "result": null
        }
      }
    }
  ],
  "name": "string",
  "options": [
    {
      "activeViews": [
        "string"
      ],
      "category": "string",
      "codes": [
        {
          "code": "string",
          "description": "string",
          "option": "string",
          "price": 0.1,
          "visible": true
        }
      ],
      "id": "string",
      "isNeighborOption": true,
      "name": "string",
      "neighborOption": true,
      "phase": "PLAN",
      "visible": true
    }
  ],
  "previewBlob": {
    "blobId": "string",
    "created": "2019-08-24T14:15:22Z",
    "extension": "string",
    "fileSize": 0,
    "name": "string",
    "type": "IMAGE"
  },
  "restrictions": [
    {
      "active": true,
      "category": "string",
      "id": "string",
      "restrictions": {
        "branches": [
          {
            "choices": [
              {
                "code": "string",
                "option": "string"
              }
            ],
            "id": "string",
            "result": {
              "id": "string",
              "options": [
                {
                  "allowedCodes": [
                    "string"
                  ],
                  "optionName": "string",
                  "reason": "string"
                }
              ]
            }
          }
        ],
        "decisionTree": {
          "id": "string",
          "result": null
        }
      }
    }
  ],
  "staticModels": [
    {
      "id": "string",
      "modelNamePrefix": "string",
      "models": {
        "branches": [
          {
            "choices": [
              {
                "code": "string",
                "option": "string"
              }
            ],
            "id": "string",
            "result": {
              "exhaustiveOptions": [
                "string"
              ],
              "id": "string",
              "isEmpty": true,
              "isExhaustive": true,
              "name": "string",
              "parameters": [
                {
                  "name": "string",
                  "type": "string",
                  "value": null
                }
              ],
              "position": {
                "x": {
                  "formula": "string",
                  "isConstant": true
                },
                "y": {
                  "formula": "string",
                  "isConstant": true
                },
                "z": {
                  "formula": "string",
                  "isConstant": true
                }
              },
              "rotation": {
                "x": {
                  "formula": "string",
                  "isConstant": true
                },
                "y": {
                  "formula": "string",
                  "isConstant": true
                },
                "z": {
                  "formula": "string",
                  "isConstant": true
                }
              }
            }
          }
        ],
        "decisionTree": {
          "id": "string",
          "result": null
        }
      },
      "nameOverrides": {
        "property1": "string",
        "property2": "string"
      },
      "stats": {
        "glbInDb": 0,
        "lastSynced": "2019-08-24T14:15:22Z",
        "modelsComplete": 0,
        "modelsInDb": 0,
        "rvtInDb": 0,
        "totalFileSize": 0,
        "totalModels": 0
      },
      "type": "CONCEPT"
    }
  ],
  "tenantId": "string",
  "totalStaticModels": 0,
  "totalStaticModelsComplete": 0,
  "totalStaticModelsFileSize": 0,
  "totalStaticModelsGlbInDb": 0,
  "totalStaticModelsInDb": 0,
  "totalStaticModelsRvtInDb": 0,
  "updated": "2019-08-24T14:15:22Z",
  "updatedBy": "string",
  "variables": [
    {
      "id": "string",
      "phase": "PLAN",
      "tree": {
        "branches": [
          {
            "choices": [
              {
                "code": "string",
                "option": "string"
              }
            ],
            "id": "string",
            "result": {
              "defaultValue": 0.1,
              "isFixed": true,
              "max": 0.1,
              "min": 0.1,
              "stepSize": 0.1
            }
          }
        ],
        "decisionTree": {
          "id": "string",
          "result": null
        }
      }
    }
  ],
  "variantSuffixFormat": "string",
  "views": [
    {
      "active": true,
      "activeCategories": [
        "string"
      ],
      "description": "string",
      "id": "string",
      "maxHeight": 0.1,
      "position": {
        "x": {
          "formula": "string",
          "isConstant": true
        },
        "y": {
          "formula": "string",
          "isConstant": true
        },
        "z": {
          "formula": "string",
          "isConstant": true
        }
      },
      "target": {
        "x": {
          "formula": "string",
          "isConstant": true
        },
        "y": {
          "formula": "string",
          "isConstant": true
        },
        "z": {
          "formula": "string",
          "isConstant": true
        }
      }
    }
  ]
}
{
  "detail": "string",
  "time": "2019-08-24T14:15:22Z",
  "title": "string"
}
{
  "detail": "string",
  "time": "2019-08-24T14:15:22Z",
  "title": "string"
}
{
  "detail": "string",
  "time": "2019-08-24T14:15:22Z",
  "title": "string"
}

Update a restriction tree

PUT
/types/restriction/{typeId}
AuthorizationBearer <token>

In: header

Path Parameters

typeId*string

Query Parameters

oldRestrictionTreeId*string

Request Body

application/json

TypeScript Definitions

Use the request body type in TypeScript.

Response Body

application/json

application/json

application/json

application/json

curl -X PUT "http://localhost:18080/api/v1/types/restriction/string?oldRestrictionTreeId=string" \  -H "Content-Type: application/json" \  -d '{    "category": "string",    "id": "string"  }'
{
  "baseVariables": [
    {
      "configuration": {
        "defaultValue": 0.1,
        "isFixed": true,
        "max": 0.1,
        "min": 0.1,
        "stepSize": 0.1
      },
      "id": "string"
    }
  ],
  "color": "string",
  "compensateNulpunt": true,
  "concept": "string",
  "created": "2019-08-24T14:15:22Z",
  "createdBy": "string",
  "elementNamePrefix": "string",
  "enforcedCategories": [
    "string"
  ],
  "hideBaseOptionInName": true,
  "id": "string",
  "massModel": [
    {
      "id": "string",
      "models": {
        "branches": [
          {
            "choices": [
              {
                "code": "string",
                "option": "string"
              }
            ],
            "id": "string",
            "result": {
              "dimensions": {
                "x": {
                  "formula": "string",
                  "isConstant": true
                },
                "y": {
                  "formula": "string",
                  "isConstant": true
                },
                "z": {
                  "formula": "string",
                  "isConstant": true
                }
              },
              "id": "string",
              "level": 0,
              "position": {
                "x": {
                  "formula": "string",
                  "isConstant": true
                },
                "y": {
                  "formula": "string",
                  "isConstant": true
                },
                "z": {
                  "formula": "string",
                  "isConstant": true
                }
              },
              "rotation": {
                "x": {
                  "formula": "string",
                  "isConstant": true
                },
                "y": {
                  "formula": "string",
                  "isConstant": true
                },
                "z": {
                  "formula": "string",
                  "isConstant": true
                }
              },
              "type": "Box"
            }
          }
        ],
        "decisionTree": {
          "id": "string",
          "result": null
        }
      }
    }
  ],
  "models": [
    {
      "id": "string",
      "models": {
        "branches": [
          {
            "choices": [
              {
                "code": "string",
                "option": "string"
              }
            ],
            "id": "string",
            "result": {
              "dimensions": {
                "x": {
                  "formula": "string",
                  "isConstant": true
                },
                "y": {
                  "formula": "string",
                  "isConstant": true
                },
                "z": {
                  "formula": "string",
                  "isConstant": true
                }
              },
              "id": "string",
              "level": 0,
              "material": "string",
              "position": {
                "x": {
                  "formula": "string",
                  "isConstant": true
                },
                "y": {
                  "formula": "string",
                  "isConstant": true
                },
                "z": {
                  "formula": "string",
                  "isConstant": true
                }
              },
              "rotation": {
                "x": {
                  "formula": "string",
                  "isConstant": true
                },
                "y": {
                  "formula": "string",
                  "isConstant": true
                },
                "z": {
                  "formula": "string",
                  "isConstant": true
                }
              },
              "type": "WALL"
            }
          }
        ],
        "decisionTree": {
          "id": "string",
          "result": null
        }
      }
    }
  ],
  "name": "string",
  "options": [
    {
      "activeViews": [
        "string"
      ],
      "category": "string",
      "codes": [
        {
          "code": "string",
          "description": "string",
          "option": "string",
          "price": 0.1,
          "visible": true
        }
      ],
      "id": "string",
      "isNeighborOption": true,
      "name": "string",
      "neighborOption": true,
      "phase": "PLAN",
      "visible": true
    }
  ],
  "previewBlob": {
    "blobId": "string",
    "created": "2019-08-24T14:15:22Z",
    "extension": "string",
    "fileSize": 0,
    "name": "string",
    "type": "IMAGE"
  },
  "restrictions": [
    {
      "active": true,
      "category": "string",
      "id": "string",
      "restrictions": {
        "branches": [
          {
            "choices": [
              {
                "code": "string",
                "option": "string"
              }
            ],
            "id": "string",
            "result": {
              "id": "string",
              "options": [
                {
                  "allowedCodes": [
                    "string"
                  ],
                  "optionName": "string",
                  "reason": "string"
                }
              ]
            }
          }
        ],
        "decisionTree": {
          "id": "string",
          "result": null
        }
      }
    }
  ],
  "staticModels": [
    {
      "id": "string",
      "modelNamePrefix": "string",
      "models": {
        "branches": [
          {
            "choices": [
              {
                "code": "string",
                "option": "string"
              }
            ],
            "id": "string",
            "result": {
              "exhaustiveOptions": [
                "string"
              ],
              "id": "string",
              "isEmpty": true,
              "isExhaustive": true,
              "name": "string",
              "parameters": [
                {
                  "name": "string",
                  "type": "string",
                  "value": null
                }
              ],
              "position": {
                "x": {
                  "formula": "string",
                  "isConstant": true
                },
                "y": {
                  "formula": "string",
                  "isConstant": true
                },
                "z": {
                  "formula": "string",
                  "isConstant": true
                }
              },
              "rotation": {
                "x": {
                  "formula": "string",
                  "isConstant": true
                },
                "y": {
                  "formula": "string",
                  "isConstant": true
                },
                "z": {
                  "formula": "string",
                  "isConstant": true
                }
              }
            }
          }
        ],
        "decisionTree": {
          "id": "string",
          "result": null
        }
      },
      "nameOverrides": {
        "property1": "string",
        "property2": "string"
      },
      "stats": {
        "glbInDb": 0,
        "lastSynced": "2019-08-24T14:15:22Z",
        "modelsComplete": 0,
        "modelsInDb": 0,
        "rvtInDb": 0,
        "totalFileSize": 0,
        "totalModels": 0
      },
      "type": "CONCEPT"
    }
  ],
  "tenantId": "string",
  "totalStaticModels": 0,
  "totalStaticModelsComplete": 0,
  "totalStaticModelsFileSize": 0,
  "totalStaticModelsGlbInDb": 0,
  "totalStaticModelsInDb": 0,
  "totalStaticModelsRvtInDb": 0,
  "updated": "2019-08-24T14:15:22Z",
  "updatedBy": "string",
  "variables": [
    {
      "id": "string",
      "phase": "PLAN",
      "tree": {
        "branches": [
          {
            "choices": [
              {
                "code": "string",
                "option": "string"
              }
            ],
            "id": "string",
            "result": {
              "defaultValue": 0.1,
              "isFixed": true,
              "max": 0.1,
              "min": 0.1,
              "stepSize": 0.1
            }
          }
        ],
        "decisionTree": {
          "id": "string",
          "result": null
        }
      }
    }
  ],
  "variantSuffixFormat": "string",
  "views": [
    {
      "active": true,
      "activeCategories": [
        "string"
      ],
      "description": "string",
      "id": "string",
      "maxHeight": 0.1,
      "position": {
        "x": {
          "formula": "string",
          "isConstant": true
        },
        "y": {
          "formula": "string",
          "isConstant": true
        },
        "z": {
          "formula": "string",
          "isConstant": true
        }
      },
      "target": {
        "x": {
          "formula": "string",
          "isConstant": true
        },
        "y": {
          "formula": "string",
          "isConstant": true
        },
        "z": {
          "formula": "string",
          "isConstant": true
        }
      }
    }
  ]
}
{
  "detail": "string",
  "time": "2019-08-24T14:15:22Z",
  "title": "string"
}
{
  "detail": "string",
  "time": "2019-08-24T14:15:22Z",
  "title": "string"
}
{
  "detail": "string",
  "time": "2019-08-24T14:15:22Z",
  "title": "string"
}

Create a restriction branch

POST
/types/restriction/{typeId}/branch
AuthorizationBearer <token>

In: header

Path Parameters

typeId*string

Query Parameters

restrictionTreeId*string

Request Body

application/json

TypeScript Definitions

Use the request body type in TypeScript.

Response Body

application/json

application/json

application/json

curl -X POST "http://localhost:18080/api/v1/types/restriction/string/branch?restrictionTreeId=string" \  -H "Content-Type: application/json" \  -d '{    "choices": [      {        "code": "string",        "option": "string"      }    ],    "restriction": {      "id": "string",      "options": [        {          "allowedCodes": [            "string"          ],          "optionName": "string"        }      ]    }  }'
Empty
{
  "detail": "string",
  "time": "2019-08-24T14:15:22Z",
  "title": "string"
}
{
  "detail": "string",
  "time": "2019-08-24T14:15:22Z",
  "title": "string"
}
{
  "detail": "string",
  "time": "2019-08-24T14:15:22Z",
  "title": "string"
}

Update all restriction branches

PUT
/types/restriction/{typeId}/branch
AuthorizationBearer <token>

In: header

Path Parameters

typeId*string

Query Parameters

restrictionTreeId*string

Request Body

application/json

TypeScript Definitions

Use the request body type in TypeScript.

Response Body

application/json

application/json

application/json

curl -X PUT "http://localhost:18080/api/v1/types/restriction/string/branch?restrictionTreeId=string" \  -H "Content-Type: application/json" \  -d '[    {      "choices": [        {          "code": "string",          "option": "string"        }      ],      "restriction": {        "id": "string",        "options": [          {            "allowedCodes": [              "string"            ],            "optionName": "string"          }        ]      }    }  ]'
Empty
{
  "detail": "string",
  "time": "2019-08-24T14:15:22Z",
  "title": "string"
}
{
  "detail": "string",
  "time": "2019-08-24T14:15:22Z",
  "title": "string"
}
{
  "detail": "string",
  "time": "2019-08-24T14:15:22Z",
  "title": "string"
}

Delete a restriction branch

DELETE
/types/restriction/{typeId}/branch/{branchId}
AuthorizationBearer <token>

In: header

Path Parameters

typeId*string
branchId*string

Query Parameters

restrictionTreeId*string

Response Body

application/json

application/json

application/json

curl -X DELETE "http://localhost:18080/api/v1/types/restriction/string/branch/string?restrictionTreeId=string"
Empty
{
  "detail": "string",
  "time": "2019-08-24T14:15:22Z",
  "title": "string"
}
{
  "detail": "string",
  "time": "2019-08-24T14:15:22Z",
  "title": "string"
}
{
  "detail": "string",
  "time": "2019-08-24T14:15:22Z",
  "title": "string"
}

Update a restriction branch

PUT
/types/restriction/{typeId}/branch/{branchId}
AuthorizationBearer <token>

In: header

Path Parameters

typeId*string
branchId*string

Query Parameters

restrictionTreeId*string

Request Body

application/json

TypeScript Definitions

Use the request body type in TypeScript.

Response Body

application/json

application/json

application/json

curl -X PUT "http://localhost:18080/api/v1/types/restriction/string/branch/string?restrictionTreeId=string" \  -H "Content-Type: application/json" \  -d '{    "choices": [      {        "code": "string",        "option": "string"      }    ],    "restriction": {      "id": "string",      "options": [        {          "allowedCodes": [            "string"          ],          "optionName": "string"        }      ]    }  }'
Empty
{
  "detail": "string",
  "time": "2019-08-24T14:15:22Z",
  "title": "string"
}
{
  "detail": "string",
  "time": "2019-08-24T14:15:22Z",
  "title": "string"
}
{
  "detail": "string",
  "time": "2019-08-24T14:15:22Z",
  "title": "string"
}

Analyze restriction branch impact

GET
/types/restriction/{typeId}/branch/{branchId}/impact
AuthorizationBearer <token>

In: header

Path Parameters

typeId*string
branchId*string

Query Parameters

restrictionTreeId*string

Response Body

application/json

application/json

application/json

application/json

curl -X GET "http://localhost:18080/api/v1/types/restriction/string/branch/string/impact?restrictionTreeId=string"
{
  "affectedMassModels": [
    {
      "affectedBranches": [
        {
          "blockedOptions": [
            {
              "allowedCodes": [
                "string"
              ],
              "currentCode": "string",
              "optionName": "string"
            }
          ],
          "branchChoices": [
            {
              "code": "string",
              "option": "string"
            }
          ],
          "branchId": "string",
          "modelName": "string"
        }
      ],
      "modelTreeId": "string"
    }
  ],
  "affectedStaticModels": [
    {
      "affectedBranches": [
        {
          "blockedOptions": [
            {
              "allowedCodes": [
                "string"
              ],
              "currentCode": "string",
              "optionName": "string"
            }
          ],
          "branchChoices": [
            {
              "code": "string",
              "option": "string"
            }
          ],
          "branchId": "string",
          "modelName": "string"
        }
      ],
      "modelTreeId": "string"
    }
  ],
  "restrictionBranchId": "string",
  "totalAffectedBranches": 0,
  "triggerChoices": [
    {
      "code": "string",
      "option": "string"
    }
  ]
}
{
  "detail": "string",
  "time": "2019-08-24T14:15:22Z",
  "title": "string"
}
{
  "detail": "string",
  "time": "2019-08-24T14:15:22Z",
  "title": "string"
}
{
  "detail": "string",
  "time": "2019-08-24T14:15:22Z",
  "title": "string"
}

Create multiple restriction branches

POST
/types/restriction/{typeId}/branches
AuthorizationBearer <token>

In: header

Path Parameters

typeId*string

Query Parameters

restrictionTreeId*string

Request Body

application/json

TypeScript Definitions

Use the request body type in TypeScript.

Response Body

application/json

application/json

application/json

curl -X POST "http://localhost:18080/api/v1/types/restriction/string/branches?restrictionTreeId=string" \  -H "Content-Type: application/json" \  -d '[    {      "choices": [        {          "code": "string",          "option": "string"        }      ],      "restriction": {        "id": "string",        "options": [          {            "allowedCodes": [              "string"            ],            "optionName": "string"          }        ]      }    }  ]'
Empty
{
  "detail": "string",
  "time": "2019-08-24T14:15:22Z",
  "title": "string"
}
{
  "detail": "string",
  "time": "2019-08-24T14:15:22Z",
  "title": "string"
}
{
  "detail": "string",
  "time": "2019-08-24T14:15:22Z",
  "title": "string"
}

Determine restrictions

POST
/types/restriction/{typeId}/determine-restrictions
AuthorizationBearer <token>

In: header

Path Parameters

typeId*string

Request Body

application/json

TypeScript Definitions

Use the request body type in TypeScript.

Response Body

application/json

application/json

application/json

application/json

curl -X POST "http://localhost:18080/api/v1/types/restriction/string/determine-restrictions" \  -H "Content-Type: application/json" \  -d '[    {      "code": "string",      "option": "string"    }  ]'
[
  {
    "id": "string",
    "options": [
      {
        "allowedCodes": [
          "string"
        ],
        "optionName": "string",
        "reason": "string"
      }
    ]
  }
]
{
  "detail": "string",
  "time": "2019-08-24T14:15:22Z",
  "title": "string"
}
{
  "detail": "string",
  "time": "2019-08-24T14:15:22Z",
  "title": "string"
}
{
  "detail": "string",
  "time": "2019-08-24T14:15:22Z",
  "title": "string"
}

Analyze restriction tree impact

GET
/types/restriction/{typeId}/impact
AuthorizationBearer <token>

In: header

Path Parameters

typeId*string

Query Parameters

restrictionTreeId*string

Response Body

application/json

application/json

application/json

application/json

curl -X GET "http://localhost:18080/api/v1/types/restriction/string/impact?restrictionTreeId=string"
[
  {
    "affectedMassModels": [
      {
        "affectedBranches": [
          {
            "blockedOptions": [
              {
                "allowedCodes": [
                  "string"
                ],
                "currentCode": "string",
                "optionName": "string"
              }
            ],
            "branchChoices": [
              {
                "code": "string",
                "option": "string"
              }
            ],
            "branchId": "string",
            "modelName": "string"
          }
        ],
        "modelTreeId": "string"
      }
    ],
    "affectedStaticModels": [
      {
        "affectedBranches": [
          {
            "blockedOptions": [
              {
                "allowedCodes": [
                  "string"
                ],
                "currentCode": "string",
                "optionName": "string"
              }
            ],
            "branchChoices": [
              {
                "code": "string",
                "option": "string"
              }
            ],
            "branchId": "string",
            "modelName": "string"
          }
        ],
        "modelTreeId": "string"
      }
    ],
    "restrictionBranchId": "string",
    "totalAffectedBranches": 0,
    "triggerChoices": [
      {
        "code": "string",
        "option": "string"
      }
    ]
  }
]
{
  "detail": "string",
  "time": "2019-08-24T14:15:22Z",
  "title": "string"
}
{
  "detail": "string",
  "time": "2019-08-24T14:15:22Z",
  "title": "string"
}
{
  "detail": "string",
  "time": "2019-08-24T14:15:22Z",
  "title": "string"
}

Search restriction trees

GET
/types/restriction/{typeId}/search
AuthorizationBearer <token>

In: header

Path Parameters

typeId*string

Query Parameters

search*string

Response Body

application/json

application/json

application/json

application/json

curl -X GET "http://localhost:18080/api/v1/types/restriction/string/search?search=string"
[
  {
    "active": true,
    "id": "string"
  }
]
{
  "detail": "string",
  "time": "2019-08-24T14:15:22Z",
  "title": "string"
}
{
  "detail": "string",
  "time": "2019-08-24T14:15:22Z",
  "title": "string"
}
{
  "detail": "string",
  "time": "2019-08-24T14:15:22Z",
  "title": "string"
}

Validate restriction branches

POST
/types/restriction/{typeId}/validate-branches
AuthorizationBearer <token>

In: header

Path Parameters

typeId*string

Query Parameters

restrictionTreeId*string

Request Body

application/json

TypeScript Definitions

Use the request body type in TypeScript.

Response Body

application/json

application/json

application/json

application/json

curl -X POST "http://localhost:18080/api/v1/types/restriction/string/validate-branches?restrictionTreeId=string" \  -H "Content-Type: application/json" \  -d '[    {      "choices": [        {          "code": "string",          "option": "string"        }      ],      "restriction": {        "id": "string",        "options": [          {            "allowedCodes": [              "string"            ],            "optionName": "string"          }        ]      }    }  ]'
{
  "errors": [
    {
      "branchIndex": 0,
      "field": "string",
      "message": "string"
    }
  ],
  "valid": true
}
{
  "detail": "string",
  "time": "2019-08-24T14:15:22Z",
  "title": "string"
}
{
  "detail": "string",
  "time": "2019-08-24T14:15:22Z",
  "title": "string"
}
{
  "detail": "string",
  "time": "2019-08-24T14:15:22Z",
  "title": "string"
}

Move a restriction tree

PATCH
/types/restriction/{typeId}/{newIndex}
AuthorizationBearer <token>

In: header

Path Parameters

typeId*string
newIndex*integer
Formatint32

Query Parameters

restrictionTreeId*string

Response Body

application/json

application/json

application/json

application/json

curl -X PATCH "http://localhost:18080/api/v1/types/restriction/string/0?restrictionTreeId=string"
{
  "baseVariables": [
    {
      "configuration": {
        "defaultValue": 0.1,
        "isFixed": true,
        "max": 0.1,
        "min": 0.1,
        "stepSize": 0.1
      },
      "id": "string"
    }
  ],
  "color": "string",
  "compensateNulpunt": true,
  "concept": "string",
  "created": "2019-08-24T14:15:22Z",
  "createdBy": "string",
  "elementNamePrefix": "string",
  "enforcedCategories": [
    "string"
  ],
  "hideBaseOptionInName": true,
  "id": "string",
  "massModel": [
    {
      "id": "string",
      "models": {
        "branches": [
          {
            "choices": [
              {
                "code": "string",
                "option": "string"
              }
            ],
            "id": "string",
            "result": {
              "dimensions": {
                "x": {
                  "formula": "string",
                  "isConstant": true
                },
                "y": {
                  "formula": "string",
                  "isConstant": true
                },
                "z": {
                  "formula": "string",
                  "isConstant": true
                }
              },
              "id": "string",
              "level": 0,
              "position": {
                "x": {
                  "formula": "string",
                  "isConstant": true
                },
                "y": {
                  "formula": "string",
                  "isConstant": true
                },
                "z": {
                  "formula": "string",
                  "isConstant": true
                }
              },
              "rotation": {
                "x": {
                  "formula": "string",
                  "isConstant": true
                },
                "y": {
                  "formula": "string",
                  "isConstant": true
                },
                "z": {
                  "formula": "string",
                  "isConstant": true
                }
              },
              "type": "Box"
            }
          }
        ],
        "decisionTree": {
          "id": "string",
          "result": null
        }
      }
    }
  ],
  "models": [
    {
      "id": "string",
      "models": {
        "branches": [
          {
            "choices": [
              {
                "code": "string",
                "option": "string"
              }
            ],
            "id": "string",
            "result": {
              "dimensions": {
                "x": {
                  "formula": "string",
                  "isConstant": true
                },
                "y": {
                  "formula": "string",
                  "isConstant": true
                },
                "z": {
                  "formula": "string",
                  "isConstant": true
                }
              },
              "id": "string",
              "level": 0,
              "material": "string",
              "position": {
                "x": {
                  "formula": "string",
                  "isConstant": true
                },
                "y": {
                  "formula": "string",
                  "isConstant": true
                },
                "z": {
                  "formula": "string",
                  "isConstant": true
                }
              },
              "rotation": {
                "x": {
                  "formula": "string",
                  "isConstant": true
                },
                "y": {
                  "formula": "string",
                  "isConstant": true
                },
                "z": {
                  "formula": "string",
                  "isConstant": true
                }
              },
              "type": "WALL"
            }
          }
        ],
        "decisionTree": {
          "id": "string",
          "result": null
        }
      }
    }
  ],
  "name": "string",
  "options": [
    {
      "activeViews": [
        "string"
      ],
      "category": "string",
      "codes": [
        {
          "code": "string",
          "description": "string",
          "option": "string",
          "price": 0.1,
          "visible": true
        }
      ],
      "id": "string",
      "isNeighborOption": true,
      "name": "string",
      "neighborOption": true,
      "phase": "PLAN",
      "visible": true
    }
  ],
  "previewBlob": {
    "blobId": "string",
    "created": "2019-08-24T14:15:22Z",
    "extension": "string",
    "fileSize": 0,
    "name": "string",
    "type": "IMAGE"
  },
  "restrictions": [
    {
      "active": true,
      "category": "string",
      "id": "string",
      "restrictions": {
        "branches": [
          {
            "choices": [
              {
                "code": "string",
                "option": "string"
              }
            ],
            "id": "string",
            "result": {
              "id": "string",
              "options": [
                {
                  "allowedCodes": [
                    "string"
                  ],
                  "optionName": "string",
                  "reason": "string"
                }
              ]
            }
          }
        ],
        "decisionTree": {
          "id": "string",
          "result": null
        }
      }
    }
  ],
  "staticModels": [
    {
      "id": "string",
      "modelNamePrefix": "string",
      "models": {
        "branches": [
          {
            "choices": [
              {
                "code": "string",
                "option": "string"
              }
            ],
            "id": "string",
            "result": {
              "exhaustiveOptions": [
                "string"
              ],
              "id": "string",
              "isEmpty": true,
              "isExhaustive": true,
              "name": "string",
              "parameters": [
                {
                  "name": "string",
                  "type": "string",
                  "value": null
                }
              ],
              "position": {
                "x": {
                  "formula": "string",
                  "isConstant": true
                },
                "y": {
                  "formula": "string",
                  "isConstant": true
                },
                "z": {
                  "formula": "string",
                  "isConstant": true
                }
              },
              "rotation": {
                "x": {
                  "formula": "string",
                  "isConstant": true
                },
                "y": {
                  "formula": "string",
                  "isConstant": true
                },
                "z": {
                  "formula": "string",
                  "isConstant": true
                }
              }
            }
          }
        ],
        "decisionTree": {
          "id": "string",
          "result": null
        }
      },
      "nameOverrides": {
        "property1": "string",
        "property2": "string"
      },
      "stats": {
        "glbInDb": 0,
        "lastSynced": "2019-08-24T14:15:22Z",
        "modelsComplete": 0,
        "modelsInDb": 0,
        "rvtInDb": 0,
        "totalFileSize": 0,
        "totalModels": 0
      },
      "type": "CONCEPT"
    }
  ],
  "tenantId": "string",
  "totalStaticModels": 0,
  "totalStaticModelsComplete": 0,
  "totalStaticModelsFileSize": 0,
  "totalStaticModelsGlbInDb": 0,
  "totalStaticModelsInDb": 0,
  "totalStaticModelsRvtInDb": 0,
  "updated": "2019-08-24T14:15:22Z",
  "updatedBy": "string",
  "variables": [
    {
      "id": "string",
      "phase": "PLAN",
      "tree": {
        "branches": [
          {
            "choices": [
              {
                "code": "string",
                "option": "string"
              }
            ],
            "id": "string",
            "result": {
              "defaultValue": 0.1,
              "isFixed": true,
              "max": 0.1,
              "min": 0.1,
              "stepSize": 0.1
            }
          }
        ],
        "decisionTree": {
          "id": "string",
          "result": null
        }
      }
    }
  ],
  "variantSuffixFormat": "string",
  "views": [
    {
      "active": true,
      "activeCategories": [
        "string"
      ],
      "description": "string",
      "id": "string",
      "maxHeight": 0.1,
      "position": {
        "x": {
          "formula": "string",
          "isConstant": true
        },
        "y": {
          "formula": "string",
          "isConstant": true
        },
        "z": {
          "formula": "string",
          "isConstant": true
        }
      },
      "target": {
        "x": {
          "formula": "string",
          "isConstant": true
        },
        "y": {
          "formula": "string",
          "isConstant": true
        },
        "z": {
          "formula": "string",
          "isConstant": true
        }
      }
    }
  ]
}
{
  "detail": "string",
  "time": "2019-08-24T14:15:22Z",
  "title": "string"
}
{
  "detail": "string",
  "time": "2019-08-24T14:15:22Z",
  "title": "string"
}
{
  "detail": "string",
  "time": "2019-08-24T14:15:22Z",
  "title": "string"
}