You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 6 Next »

Export Object Service


Export Object Service


Export Objects are the primary components to help better organize full or partial exports of the project objects.

Please see the detailed structure of the issue in the Object Model

Create a new export object
    Resource: projects/<project_id>/exportobjects 

    URLhttps://api-stage.bimplus.net/v2/<team_slug>/projects/<project_id>/exportobjects

    Examplehttps://api-stage.bimplus.net/v2/bimplus/projects/ceac9b1e-31d9-4c5f-bd78-f909767b7b01/exportobjects

    JSON Structure:

    Name

    Mandatory / Optional

    Type

    Description

    Id optional string (guid) Id of the export object

    projectId

    optional

    string (guid)

    The id of the project the export object is associated

    name

    mandatory

    string

    Name of the export object

    description

    optional

    string

    Description of the export object

    selection

    optional

    Object

    Selection object, see json structure below


    JSON Structure of the Selection object:

    Name

    Mandatory / Optional

    Type

    Description

    projectId

    mandatory

    string (guid)

    The id of the project the export object is associated

    type

    madatory

    string

    Type of Selection object which define selection of objects to be exported from associated model.
    The type can be one of following values :
    "Model", "Elements", "Topology", "Filter", "Structure"

    divisionId

    mandatory

    string (guid)

    Division Id (Model Id) of the exported objects.
    This is madatory for selection type "Model"

    e.g.: selection of export object

    "selection" : { "modelId":"GUID","type":"Model" }

    elements

    optional

    Object

    This object is mandatory for Selection type - "Elements"
    e.g.: selection of export object

    "selection" : {"modelId":"GUID","type":"Elements","elements":["GUID","GUID",...]}

    topology

    optional

    Object

    This object is mandatory for Selection type - "Topology"
    e.g.: details see in request section
    filter

    optional

    Object

    This object is mandatory for Selection type - "Filter"
    e.g. json of selection object:

    "selection" : {"modelId":"GUID","type":"Filter","filter":{"filterId":"GUID", "nodeInfoList":[ "node list text1", "node list text2", ...]}}

    structure

    optional

    Object

    This object is mandatory for Selection type - "Structure"
    e.g. json of selection object:

    "selection" : {"modelId":"GUID","type":"Structure","structure":{"variantTypeId":"GUID", "structuresList":["GUID","GUID", ...]}}

     POST
     Creates a new export object
    Headers
    Authorization: BimPlus 9c1874a62c974dcfa75e0132c423a088
    Content-Type: application/json
    
    JSON
    {
        "projectId": "ceac9b1e-31d9-4c5f-bd78-f909767b7b01",
        "name": "Project Selection 2",
        "description": "parcial selection of the project",
        "selection": {
            "projectId": "ceac9b1e-31d9-4c5f-bd78-f909767b7b01",
            "divisionId": "f012f6e0-fa56-4234-9760-a3ca711163da",
            "type": "Topology",
            "elements": null,
            "topology": {
                "camera": null,
                "topology": [
                    {
                        "id": "79de2e39-2dab-4698-81b3-d47d47baf5a7",
                        "visible": false,
                        "opaque": false,
                        "opacity": 0
                    },
                    {
                        "id": "81da639e-213d-4b1e-b390-0f4a6dd89dda",
                        "visible": false,
                        "opaque": false,
                        "opacity": 0
                    },
                    {
                        "id": "1bf9d9c6-d1e8-476c-ada2-c1826e94cdda",
                        "visible": false,
                        "opaque": false,
                        "opacity": 0
                    },
                    {
                        "id": "8b99a203-a2c6-4ac9-82ff-a04d1485239d",
                        "visible": false,
                        "opaque": false,
                        "opacity": 0
                    },
                    {
                        "id": "d93ffea5-1def-462a-9085-c626f7bedfc0",
                        "visible": false,
                        "opaque": false,
                        "opacity": 0
                    }
                ],
                "layers": [
                    {
                        "revision": 0,
                        "id": "0f106af0-a919-44c5-b211-15bd5ef620b6",
                        "name": null,
                        "divisionId": "f012f6e0-fa56-4234-9760-a3ca711163da",
                        "divisionName": null,
                        "visible": false,
                        "opaque": false,
                        "opacity": 0
                    }
                ]
            },
            "filter": null,
            "structure": null
        }
    }
    Status
    Status: 201 Created
    
    JSON
    {
        "id": "f00817c3-73b3-4406-aef7-78a11ae801bd",
        "projectId": "ceac9b1e-31d9-4c5f-bd78-f909767b7b01",
        "name": "Project Selection 2",
        "description": "parcial selection of the project",
        "selection": {
            "projectid": "ceac9b1e-31d9-4c5f-bd78-f909767b7b01",
            "modelid": "f012f6e0-fa56-4234-9760-a3ca711163da",
            "type": "Topology",
            "elements": null,
            "topology": {
                "camera": null,
                "topology": [
                    {
                        "id": "79de2e39-2dab-4698-81b3-d47d47baf5a7",
                        "visible": false,
                        "opaque": false,
                        "opacity": 0
                    },
                    {
                        "id": "81da639e-213d-4b1e-b390-0f4a6dd89dda",
                        "visible": false,
                        "opaque": false,
                        "opacity": 0
                    },
                    {
                        "id": "1bf9d9c6-d1e8-476c-ada2-c1826e94cdda",
                        "visible": false,
                        "opaque": false,
                        "opacity": 0
                    },
                    {
                        "id": "8b99a203-a2c6-4ac9-82ff-a04d1485239d",
                        "visible": false,
                        "opaque": false,
                        "opacity": 0
                    },
                    {
                        "id": "d93ffea5-1def-462a-9085-c626f7bedfc0",
                        "visible": false,
                        "opaque": false,
                        "opacity": 0
                    }
                ],
                "layers": [
                    {
                        "revision": 0,
                        "id": "0f106af0-a919-44c5-b211-15bd5ef620b6",
                        "name": null,
                        "divisionId": "f012f6e0-fa56-4234-9760-a3ca711163da",
                        "divisionName": null,
                        "visible": false,
                        "opaque": false,
                        "opacity": 0
                    }
                ]
            },
            "filter": null,
            "structure": null
        }
    }



    Get the export object details
      Resource: exportobjects/<object_id> 

      URLhttps://api-stage.bimplus.net/v2/<team_slug>/exportobjects/<object_id>

      Examplehttps://api-stage.bimplus.net/v2/bimplus/exportobjects/8dbb2a20-a75b-40b5-8079-540d9d2a2b0a


      Optional query parameters

      Name Type Default value Description
      revision int null ( current ) If revision is specified, then the call will get the object from the requested revision, otherwise return current object ( latest revision ).
      internal boolean false false = return attributes in viewer format ( as seen in the portal ); true = return in different, internal server representation format.
      children boolean false false = return only properties of the object itself; true = return properties of the object and all its children
      freeattributes boolean false false = for each attribute return only name and value; true = return full definition for each object's attribute
      disciplineId Guid null Specifies the discipline ( layer ).
      type string null

      filter for requested element type. f.ex. if you use 'type=Wall', you will get a list of Walls, who are childs of the requested object_Id
      this means, when you use

       {host}/v2/{slug}/objects/{objectId}?type=Column

      you will get all Columns, who exist in the project

      documentversion int 0 (current)

      If document version is specified and when document version is supported by object, e.g. actually only attachment can have document version,
      then the call will get the result from the requested document version, otherwise return current object ( latest revision ). 

      To get free attributes of attachment for exact document version can be used freeattributes and documentversion

       {host}/v2/{slug}/objects/{objectId}?freeattributes=true&documentversion=1

      In this case you will get free attributes of object for requested document version. 

      projectid Guid null

      Specifies the project id.
      Note:
      This query parameter is mandatory in case when resource identification (object_id) represent the user.
      If resource id represent user id and this query parameter is missing teh response will be not found.
      Together with query parameter 'freeattributes' is possible to get detail info about user.

       {host}/v2/{slug}/objects/{objectId}?freeattributes=true&projectid={projectid}

      The same query parameters must be used also in "PUT" version of this request.


       GET

      Gets the properties ( attributes ) of an object.

      By using and combining the optional query parameters, the caller can shape the response to requested format ( see response for more description ).

      If parameter is not used, its default value is used.


      Note:

      Following object-related api calls are now obsolete ( they are still supported, but will be removed eventually ), and should be replaced by using get object call with query parameters :

      Obsolete call Should be replaced by
      GET /<teamslug>/objects/<object_id>/tree GET /<teamslug>/objects/<object_id>?children=true
      GET /<teamslug>/objects/<object_id>/internal GET /<teamslug>/objects/<object_id>?internal=true
      GET /<teamslug>/objects/<object_id>/properties/3 GET /<teamslug>/objects/<object_id>?children=true
      GET /<teamslug>/objects/<object_id>/properties/8 GET /<teamslug>/objects/<object_id>?freeattributes=true
      Headers
      Authorization: BimPlus 9c1874a62c974dcfa75e0132c423a088
      Content-Type: application/json
      
      Status
      Status: 200 OK
      
      In general, the response json has following format :
      {
          "id": "8dbb2a20-a75b-40b5-8079-540d9d2a2b0a",
          "projectId": "ceac9b1e-31d9-4c5f-bd78-f909767b7b01",
          "name": "Project Selection 1",
          "description": "complete project",
          "selection": {
              "projectid": "ceac9b1e-31d9-4c5f-bd78-f909767b7b01",
              "modelid": "f012f6e0-fa56-4234-9760-a3ca711163da",
              "type": "Topology",
              "elements": null,
              "topology": {
                  "camera": null,
                  "topology": [
                      {
                          "id": "79de2e39-2dab-4698-81b3-d47d47baf5a7",
                          "visible": false,
                          "opaque": false,
                          "opacity": 0
                      },
                      {
                          "id": "81da639e-213d-4b1e-b390-0f4a6dd89dda",
                          "visible": false,
                          "opaque": false,
                          "opacity": 0
                      },
                      {
                          "id": "1bf9d9c6-d1e8-476c-ada2-c1826e94cdda",
                          "visible": false,
                          "opaque": false,
                          "opacity": 0
                      },
                      {
                          "id": "8b99a203-a2c6-4ac9-82ff-a04d1485239d",
                          "visible": false,
                          "opaque": false,
                          "opacity": 0
                      },
                      {
                          "id": "d93ffea5-1def-462a-9085-c626f7bedfc0",
                          "visible": false,
                          "opaque": false,
                          "opacity": 0
                      }
                  ],
                  "layers": [
                      {
                          "revision": 0,
                          "id": "0f106af0-a919-44c5-b211-15bd5ef620b6",
                          "name": null,
                          "divisionId": "f012f6e0-fa56-4234-9760-a3ca711163da",
                          "divisionName": null,
                          "visible": false,
                          "opaque": false,
                          "opacity": 0
                      },
                      {
                          "revision": 0,
                          "id": "11555f6f-10ec-4180-88b3-699738c079c3",
                          "name": null,
                          "divisionId": "f012f6e0-fa56-4234-9760-a3ca711163da",
                          "divisionName": null,
                          "visible": false,
                          "opaque": false,
                          "opacity": 0
                      },
                      {
                          "revision": 0,
                          "id": "33826b01-c267-4b25-9f8e-79ac2953c443",
                          "name": null,
                          "divisionId": "f012f6e0-fa56-4234-9760-a3ca711163da",
                          "divisionName": null,
                          "visible": false,
                          "opaque": false,
                          "opacity": 0
                      },
                      {
                          "revision": 0,
                          "id": "30114b52-bc05-47c1-80b5-c7d5485d5831",
                          "name": null,
                          "divisionId": "f012f6e0-fa56-4234-9760-a3ca711163da",
                          "divisionName": null,
                          "visible": false,
                          "opaque": false,
                          "opacity": 0
                      },
                      {
                          "revision": 0,
                          "id": "09e623d4-1e12-4a77-b358-ea1d0b28e4a7",
                          "name": null,
                          "divisionId": "f012f6e0-fa56-4234-9760-a3ca711163da",
                          "divisionName": null,
                          "visible": false,
                          "opaque": false,
                          "opacity": 0
                      }
                  ]
              },
              "filter": null,
              "structure": null
          }
      }

      if query parameter "children" is used, the property "children" will contain array of child objects in the same format as is the object itself.


      If query parameter "freeattributes" is used, the "property_value" contains full attribute definition in following format:
      {
        "id": "<attribute_id>",
        "name": "<attribute_name>",
        "group": "<attribute_group>",
        "type": "<attribute_value_type>",
        "isInternal": <true or false>,
        "value": "<attribute_value>"
      }


      Examples:

      GET /<teamslug>/objects/<objectid>
      {
        "elementtyp": "10074eef-9418-4d64-9c6d-23932835a7f1",
        "id": "94f0289c-41b3-450f-9c04-0527ef9a1138",
        "parent": "8015e60e-f9c6-4544-a3e8-feadbfd154ba",
        "type": "Wall",
        "layerid": "0f106af0-a919-44c5-b211-15bd5ef620b6",
        "attributes": {
          "element (default property set)": {
            "type": "Wall",
            "model": "Model A",
            "layer": "BuildingModel"
          },
          "general (default property set)": {
            "name": "Basic Wall:300_21_isolatie_208.5_spouwklein:4820766",
            "description": "Ifc Imported Element",
            "ifcglobaluniqueid": "2H$2pBsuL7TgKZ59zSDw0D",
            "ifcelementtype": "IfcWallStandardCase"
          },
          "content": {
            "tag": "4820766",
            "objecttype": "Basic Wall:300_21_isolatie_208.5_spouwklein:4296143",
            "skipparentlocations": "False",
            "extrudeprofiletype": "RectangleProfile",
            "polyeder area": "25,851 m²",
            "polyeder volume": "2,036 m³",
            "xdim": 5160.00000000001,
            "ydim": 208.5
          }
        },
        ...
      }
      GET /<teamslug>/objects/<object_id>?freeattributes=true
      {
        "elementtyp": "10074eef-9418-4d64-9c6d-23932835a7f1",
        "id": "94f0289c-41b3-450f-9c04-0527ef9a1138",
        "parent": "8015e60e-f9c6-4544-a3e8-feadbfd154ba",
        "type": "Wall",
        "layerid": "0f106af0-a919-44c5-b211-15bd5ef620b6",
        "attributes": {
          "element (default property set)": {
            "type": {
              "id": "a0e8ae2c-c869-4ec3-9019-25d3704be707",
              "name": "Type",
              "group": "Element (default Property set)",
              "subGroup": "Element",
              "type": "Guid",
              "value": "Wall"
            },
            "model": {
              "id": "cd320d7b-7299-4abc-8409-c86e46fa45f9",
              "name": "Model",
              "group": "Element (default Property set)",
              "subGroup": "Element",
              "type": "Guid",
              "value": "Model A"
            },
            "layer": {
              "id": "4812c68a-3f8d-40c1-b3f8-551a4102a406",
              "name": "Layer",
              "group": "Element (default Property set)",
              "subGroup": "Element",
              "type": "Guid",
              "value": "BuildingModel"
            }
          }
          ...
        }
      }
      GET <teamslug>/objects/<object_id>?internal=true
      {
        "elementtyp": "10074eef-9418-4d64-9c6d-23932835a7f1",
        "id": "94f0289c-41b3-450f-9c04-0527ef9a1138",
        "parent": "8015e60e-f9c6-4544-a3e8-feadbfd154ba",
        "type": "Wall",
        "layerid": "0f106af0-a919-44c5-b211-15bd5ef620b6",
        "attributes": {
          "element": {
            "isparent": true,
            "nr": 4,
            "elementtyp": "10074eef-9418-4d64-9c6d-23932835a7f1",
            "logparentid": "b1570b15-2786-4c22-baf0-94e07de69990",
            "divisionid": "1b6fa8ae-568a-4bc0-81b7-c6d282834a0c",
            "materialstring": "ISR_Isolatie",
            "matrix": {
              "values": [
                1,
                0,
                0,
                120,
                0,
                1,
                0,
                -228.5,
                0,
                0,
                1,
                -70,
                0,
                0,
                0,
                1
              ]
            },
            "articleid": "0583a9a7-3756-48b9-b836-63541bdf130e",
            "materialsurfaceid": "058578b6-6a32-48f5-ae4a-59dc452de287",
            "layerid": "0f106af0-a919-44c5-b211-15bd5ef620b6"
          },
          "general": {
            "name": "Basic Wall:300_21_isolatie_208.5_spouwklein:4820766",
            "description": "Ifc Imported Element",
            "isobjectvalid": true
          },
          "elementstate": {
            "state": "0aaf5a1c-2453-40cb-9232-315119dd288f"
          },
          "objectlog": {
            "createdby": "e4d7ac3c-94f3-4507-9b8b-a1505225845c",
            "created": "2016-01-28T10:51:04.843",
            "modifiedby": "e4d7ac3c-94f3-4507-9b8b-a1505225845c",
            "modified": "2016-01-28T10:51:04.843",
            "revision": 0
          },
          ...
        }
      }






      Get all the export objects of the project
        Resource: projects/<project_id>/exportobjects

        URLhttps://api-stage.bimplus.net/v2/<team_slug>/projects/<project_id>/exportobjects

        Examplehttps://api-stage.bimplus.net/v2/bimplus/projects/ceac9b1e-31d9-4c5f-bd78-f909767b7b01/exportobjects

         GET
         Get all the export objects of a specified project.
        Headers
        Authorization: BimPlus 9c1874a62c974dcfa75e0132c423a088
        Content-Type: application/json
        
        Status
        Status: 200 OK
        
        JSON
          [
            {
                "id": "8dbb2a20-a75b-40b5-8079-540d9d2a2b0a",
                "projectId": "ceac9b1e-31d9-4c5f-bd78-f909767b7b01",
                "name": "Project Selection 1",
                "description": "complete project",
                "selection": {
                    "projectid": "ceac9b1e-31d9-4c5f-bd78-f909767b7b01",
                    "modelid": "f012f6e0-fa56-4234-9760-a3ca711163da",
                    "type": "Topology",
                    "elements": null,
                    "topology": {
                        "camera": null,
                        "topology": [
                            {
                                "id": "79de2e39-2dab-4698-81b3-d47d47baf5a7",
                                "visible": false,
                                "opaque": false,
                                "opacity": 0
                            },
                            {
                                "id": "81da639e-213d-4b1e-b390-0f4a6dd89dda",
                                "visible": false,
                                "opaque": false,
                                "opacity": 0
                            },
                            {
                                "id": "1bf9d9c6-d1e8-476c-ada2-c1826e94cdda",
                                "visible": false,
                                "opaque": false,
                                "opacity": 0
                            },
                            {
                                "id": "8b99a203-a2c6-4ac9-82ff-a04d1485239d",
                                "visible": false,
                                "opaque": false,
                                "opacity": 0
                            },
                            {
                                "id": "d93ffea5-1def-462a-9085-c626f7bedfc0",
                                "visible": false,
                                "opaque": false,
                                "opacity": 0
                            }
                        ],
                        "layers": [
                            {
                                "revision": 0,
                                "id": "0f106af0-a919-44c5-b211-15bd5ef620b6",
                                "name": null,
                                "divisionId": "f012f6e0-fa56-4234-9760-a3ca711163da",
                                "divisionName": null,
                                "visible": false,
                                "opaque": false,
                                "opacity": 0
                            },
                            {
                                "revision": 0,
                                "id": "11555f6f-10ec-4180-88b3-699738c079c3",
                                "name": null,
                                "divisionId": "f012f6e0-fa56-4234-9760-a3ca711163da",
                                "divisionName": null,
                                "visible": false,
                                "opaque": false,
                                "opacity": 0
                            },
                            {
                                "revision": 0,
                                "id": "33826b01-c267-4b25-9f8e-79ac2953c443",
                                "name": null,
                                "divisionId": "f012f6e0-fa56-4234-9760-a3ca711163da",
                                "divisionName": null,
                                "visible": false,
                                "opaque": false,
                                "opacity": 0
                            },
                            {
                                "revision": 0,
                                "id": "30114b52-bc05-47c1-80b5-c7d5485d5831",
                                "name": null,
                                "divisionId": "f012f6e0-fa56-4234-9760-a3ca711163da",
                                "divisionName": null,
                                "visible": false,
                                "opaque": false,
                                "opacity": 0
                            },
                            {
                                "revision": 0,
                                "id": "09e623d4-1e12-4a77-b358-ea1d0b28e4a7",
                                "name": null,
                                "divisionId": "f012f6e0-fa56-4234-9760-a3ca711163da",
                                "divisionName": null,
                                "visible": false,
                                "opaque": false,
                                "opacity": 0
                            }
                        ]
                    },
                    "filter": null,
                    "structure": null
                }
            },
            {
                "id": "f00817c3-73b3-4406-aef7-78a11ae801bd",
                "projectId": "ceac9b1e-31d9-4c5f-bd78-f909767b7b01",
                "name": "Project Selection 2",
                "description": "parcial selection of the project",
                "selection": {
                    "projectid": "ceac9b1e-31d9-4c5f-bd78-f909767b7b01",
                    "modelid": "f012f6e0-fa56-4234-9760-a3ca711163da",
                    "type": "Topology",
                    "elements": null,
                    "topology": {
                        "camera": null,
                        "topology": [
                            {
                                "id": "79de2e39-2dab-4698-81b3-d47d47baf5a7",
                                "visible": false,
                                "opaque": false,
                                "opacity": 0
                            },
                            {
                                "id": "81da639e-213d-4b1e-b390-0f4a6dd89dda",
                                "visible": false,
                                "opaque": false,
                                "opacity": 0
                            },
                            {
                                "id": "1bf9d9c6-d1e8-476c-ada2-c1826e94cdda",
                                "visible": false,
                                "opaque": false,
                                "opacity": 0
                            },
                            {
                                "id": "8b99a203-a2c6-4ac9-82ff-a04d1485239d",
                                "visible": false,
                                "opaque": false,
                                "opacity": 0
                            },
                            {
                                "id": "d93ffea5-1def-462a-9085-c626f7bedfc0",
                                "visible": false,
                                "opaque": false,
                                "opacity": 0
                            }
                        ],
                        "layers": [
                            {
                                "revision": 0,
                                "id": "0f106af0-a919-44c5-b211-15bd5ef620b6",
                                "name": null,
                                "divisionId": "f012f6e0-fa56-4234-9760-a3ca711163da",
                                "divisionName": null,
                                "visible": false,
                                "opaque": false,
                                "opacity": 0
                            }
                        ]
                    },
                    "filter": null,
                    "structure": null
                }
            }
        ]
        


        Delete the object
          Resource: exportobjects/<object_id> 

          URLhttps://api-stage.bimplus.net/v2/<team_slug>/exportobjects/<object_id>

          Examplehttps://api-stage.bimplus.net/v2/bimplus/exportobjects/8dbb2a20-a75b-40b5-8079-540d9d2a2b0a

           DELETE
           Deletes a specified export object.
          Headers
          Authorization: BimPlus 9c1874a62c974dcfa75e0132c423a088
          Content-Type: application/json
          
          Status
          Status: 200 OK
          
          • No labels