Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Deck of Cards
idbimCreateObject
Card
defaulttrue
labelURL / Resource / JSON Structure
Resource: objects 

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

Examplehttps://api-stage.bimplus.net/v2/bimplus/objects

JSON Structure:

Name

Mandatory / Optional

Type

Description

parent

optional

string (guid)

The id of the parent to which the object can be associated

type

mandatory

string

Element type of the object

attributes

optional

string

Attributes of the object

children

optional

Object

Children of the object

Card
labelHTTP Method
 POST
Card
labelDescription
 Creates a new object
Card
labelRequest
Code Block
borderColorGreen
langxml
titleHeaders
Authorization: BimPlus 9c1874a62c974dcfa75e0132c423a088
Content-Type: application/json
Code Block
titleJSON
{
  "parent": "925f9e2d-8877-406b-9806-afb4246ed2e2",
  "type": "Wall",
  "attributes": {
    "element": {
      "isparent": false,
      "nr": 0,
      "matrix": "AAAAAAAA8D8AAAAAAAAAgAAAAAAAAACAINejcP1YsEAAAAAAAAAAgAAAAAAAAPA/AAAAAAAAAIAK16Nw/fy2QAAAAAAAAACAAAAAAAAAAIAAAAAAAADwPwAArkfheoS/AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA8D8=",
      "elementtyp": "10074eef-9418-4d64-9c6d-23932835a7f1",
      "divisionid": "e7859a8f-4b7a-4263-8420-405d565377aa"
    },
    "general": {
      "name": "Brickwall",
      "isobjectvalid": true
    },
    "quantity": {
      "width": 115
    },
    "geometry": {
      "mesh": "{\"Color\":4278255360,\"Vertices\":[4450.01,115.01,0.01,3200.01,115.01,0.01,3200.01,0.01,0.01,4450.01,0.01,0.01,2315.01,0.01,0.01,2315.01,115.01,0.01,0.01,115.01,0.01,0.01,0.01,0.01,4450.01,115.01,2750.01,4450.01,0.01,2750.01,0.01,0.01,2750.01,0.01,115.01,2750.01,2315.01,115.01,2190.01,3200.01,115.01,2190.01,3200.01,0.01,2190.01,2315.01,0.01,2190.01],\"Faces\":[4,0,1,2,3,4,4,5,6,7,4,8,9,10,11,4,0,3,9,8,8,6,5,12,13,1,0,8,11,4,7,6,11,10,8,3,2,14,15,4,7,10,9,4,12,15,14,13,4,15,12,5,4,4,13,14,2,1]}"
    }
  }
}
Card
labelResponse
Code Block
borderColorGreen
langxml
titleStatus
Status: 201 Created
Code Block
titleJSON
{
  "elementtyp": "10074eef-9418-4d64-9c6d-23932835a7f1",
  "id": "33c741c1-f03e-4c47-b072-de8637f8f340",
  "parent": "925f9e2d-8877-406b-9806-afb4246ed2e2",
  "type": "Wall",
  "layerid": "0f106af0-a919-44c5-b211-15bd5ef620b6",
  "attributes": {
    "element": {
      "isparent": false,
      "nr": 0,
      "matrix": "AAAAAAAA8D8AAAAAAAAAgAAAAAAAAACAINejcP1YsEAAAAAAAAAAgAAAAAAAAPA/AAAAAAAAAIAK16Nw/fy2QAAAAAAAAACAAAAAAAAAAIAAAAAAAADwPwAArkfheoS/AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA8D8=",
      "elementtyp": "10074eef-9418-4d64-9c6d-23932835a7f1",
      "divisionid": "e7859a8f-4b7a-4263-8420-405d565377aa",
      "logparentid": "de87fc4d-cb5d-44ba-b2ea-1d96ac564a8a"
    },
    "general": {
      "name": "Brickwall",
      "isobjectvalid": true
    },
    "quantity": {
      "width": 115
    },
    "geometry": {
      "mesh": "{\"Color\":4278255360,\"Vertices\":[4450.01,115.01,0.01,3200.01,115.01,0.01,3200.01,0.01,0.01,4450.01,0.01,0.01,2315.01,0.01,0.01,2315.01,115.01,0.01,0.01,115.01,0.01,0.01,0.01,0.01,4450.01,115.01,2750.01,4450.01,0.01,2750.01,0.01,0.01,2750.01,0.01,115.01,2750.01,2315.01,115.01,2190.01,3200.01,115.01,2190.01,3200.01,0.01,2190.01,2315.01,0.01,2190.01],\"Faces\":[4,0,1,2,3,4,4,5,6,7,4,8,9,10,11,4,0,3,9,8,8,6,5,12,13,1,0,8,11,4,7,6,11,10,8,3,2,14,15,4,7,10,9,4,12,15,14,13,4,15,12,5,4,4,13,14,2,1]}"
    },
    "elementstate": {
      "state": "0aaf5a1c-2453-40cb-9232-315119dd288f"
    }
  }
}

 

 



Anchor
getFullObjectPropMesh
getFullObjectPropMesh

...

Deck of Cards
idbimGetFullObjectPropMesh
Card
defaulttrue
labelURL / Resource / JSON Structure
Resource: objects/<object_id> 

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

Examplehttps://api-stage.bimplus.net/v2/bimplus/objects/7cf910cb-e357-43f6-aa3a-b45c26380f75


Optional query parameters

NameTypeDefault valueDescription
revisionintnull ( current )If revision is specified, then the call will get the object from the requested revision, otherwise return current object ( latest revision ).
internalbooleanfalsefalse = return attributes in viewer format ( as seen in the portal ); true = return in different, internal server representation format.
childrenbooleanfalsefalse = return only properties of the object itself; true = return properties of the object and all its children
freeattributesbooleanfalsefalse = for each attribute return only name and value; true = return full definition for each object's attribute
disciplineIdGuidnullSpecifies the discipline ( layer ).
typestringnull

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

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

you will get all Columns, who exist in the project

documentversionint0 (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

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

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

projectidGuidnull

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.

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

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


Card
labelHTTP Method
 GET
Card
labelDescription

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 callShould be replaced by
GET /<teamslug>/objects/<object_id>/treeGET /<teamslug>/objects/<object_id>?children=true
GET /<teamslug>/objects/<object_id>/internalGET /<teamslug>/objects/<object_id>?internal=true
GET /<teamslug>/objects/<object_id>/properties/3GET /<teamslug>/objects/<object_id>?children=true
GET /<teamslug>/objects/<object_id>/properties/8GET /<teamslug>/objects/<object_id>?freeattributes=true
Card
labelRequest
Code Block
borderColorGreen
langxml
titleHeaders
Authorization: BimPlus 9c1874a62c974dcfa75e0132c423a088
Content-Type: application/json
Card
labelResponse
langxml
Code Block
borderColorGreen
langxml
titleStatus
Status: 200 OK
Code Block
borderColorRed
langxml
titleIn general, the response json has following format :
{
  "elementtyp": "<type_id>",
  "id": "<object_id>",
  "parent" : "<parent_id>",
  "type": "<type_name>",
  "layerid": "<discipline_id>",
  "attributes": {
    "<attribute_group_1": {
      "<property_name_1>": "<property_value>",
      "<property_name_2>": "<property_value>",
      "<property_name_3>": "<property_value>"
      ...
    },
    "<attribute_group_2": {
      "<property_name_1>": "<property_value>",
      "<property_name_2>": "<property_value>"
      ...
    },
    ....
  },
  "children" : []
}

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

 


Code Block
titleIf 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:

Code Block
titleGET /<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
    }
  },
  ...
}
Code Block
titleGET /<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"
      }
    }
    ...
  }
}
Code Block
titleGET <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
    },
    ...
  }
}

 

 



Anchor
generateScene
generateScene

...

Deck of Cards
idbimObjCreateAttachment
Card
defaulttrue
labelURL / Resource / JSON Structure
Resource: objects/<object_id>attachments id>/attachments 

URLhttps://api-stage.bimplus.net/v2/<team_slug>/objects/<object_id>attachmentsid>/attachments

Examplehttps://api-stage.bimplus.net/v2/bimplus/objects/7cf910cb-e357-43f6-aa3a-b45c26380f75/attachments

Card
labelHTTP Method
 POST
Card
labelDescription
Create a new attachment in a object.
Card
labelRequest

Bimplus supports creating and updating of attachments only using requests with multipart/form-data content type. By standard, multipart/form-data content consists of several parts, each part containing a file data.

But Bimplus supports only one file sent per call, so only first part of multipart form data content is used, the rest are ignored. The parts are separated by boundaries, each part contains content headers and content data.

Examples : 


Code Block
borderColorGreen
langxml
titleHeaders
Authorization: BimPlus 9c1874a62c974dcfa75e0132c423a088
Content-Type: multipart/form-data; boundary=----MyFormBoundarytlTJWL8i2mvYwGPW
Code Block
titleContent
------MyFormBoundarytlTJWL8i2mvYwGPW
Content-Disposition: form-data; name="TestFile"; filename="TestFile.xml"; classification="Report"; tag="ABCDE"
Content-Type: application/xml
 
**** Here are file data  ******
 
------MyFormBoundarytlTJWL8i2mvYwGPW

Where :

  • name and filename are mandatory saved as attachment's "name" and "filename" properties
  • classification and tag are optional, and are saved as attachment's properties "tag" and "classification"
  • Content-Type is mandatory and is saved as attachment's property "type"
 


Card
labelResponse
Code Block
borderColorGreen
langxml
titleStatus
Status: 201 Created
Code Block
borderColorRed
langxml
titleJSON
{
     "objectIds": [
         "0d2ce2cc-3588-45d6-a59a-f6b89ebed34e"
     ],
     "fileName": "TestFile.xml",
     "type": "application/xml",
     "size": 211258,
     "createdAt": "2013-12-11T10:47:39",
     "creator": {
         "id": "e18941f4-a809-2d01-d27d-cd251f2b6cb6",
         "email": "test@bimplus.net",
         "firstname": "First Name",
         "lastname": "Second Name",
         "company": "Best-Company",
         "fullname": "First Name Second Name",
         "displayname": "Best-Company",
     },
     "changed" : "2013-12-11T10:47:39",
     "changedBy" : {
         "id": "e18941f4-a809-2d01-d27d-cd251f2b6cb6",
         "email": "test@bimplus.net",
     },
     "hash": "68a59c1f-1914-43b8-92fc-1cee4ad1c90c",
     "attachmentType" : "Document",
     "classification" : "Report",
     "tag" : "ABCDE",
     "sizeMB" : "0,21",
     "version" : "1",
     "relatedId" : "0d2ce2cc-3588-45d6-a59a-f6b89ebed34e",
     "rights" : {
         "update" : true,
         "share" : true,
         "delete" : true,
         "download" : true
     }
     "id": "6cea110a-88f4-43ac-9a00-ebaf677be333"
}

...

Deck of Cards
idbimGetObjAttachment
Card
defaulttrue
labelURL / Resource / JSON Structure
Resource: objects/<object_id>attachments id>/attachments 

URLhttps://api-stage.bimplus.net/v2/<team_slug>/objects/<object_id>attachmentsid>/attachments

Examplehttps://api-stage.bimplus.net/v2/bimplus/objects/7cf910cb-e357-43f6-aa3a-b45c26380f75/attachments


Card
labelHTTP Method
 GET
Card
labelDescription
 Get all the attachments belonging to a specified object.
Card
labelRequest
Code Block
borderColorGreen
langxml
titleHeaders
Authorization: BimPlus 9c1874a62c974dcfa75e0132c423a088
Content-Type: application/json
Card
labelResponse
Code Block
borderColorGreen
langxml
titleStatus
Status: 200 OK
Code Block
borderColorRed
langxml
titleJSON
[
   {
     "objectIds": [
         "0d2ce2cc-3588-45d6-a59a-f6b89ebed34e"
     ],
     "fileName": "TestFile.xml",
     "type": "application/xml",
     "size": 211258,
     "createdAt": "2013-12-11T10:47:39",
     "creator": {
         "id": "e18941f4-a809-2d01-d27d-cd251f2b6cb6",
         "email": "test@bimplus.net",
         "firstname": "First Name",
         "lastname": "Second Name",
         "company": "Best-Company",
         "fullname": "First Name Second Name",
         "displayname": "Best-Company",
     },
     "changed" : "2013-12-11T10:47:39",
     "changedBy" : {
         "id": "e18941f4-a809-2d01-d27d-cd251f2b6cb6",
         "email": "test@bimplus.net",
     },
     "hash": "68a59c1f-1914-43b8-92fc-1cee4ad1c90c",
     "attachmentType" : "Document",
     "classification" : "Report",
     "tag" : "ABCDE",
     "sizeMB" : "0,21",
     "version" : "1",
     "relatedId" : "0d2ce2cc-3588-45d6-a59a-f6b89ebed34e",
     "rights" : {
         "update" : true,
         "share" : true,
         "delete" : true,
         "download" : true
     }
     "id": "6cea110a-88f4-43ac-9a00-ebaf677be333"
  },
  ...
]

...

A view of an object can be created similar to the Slideshow & Topics by updating the object (i.e PUT objects/<object_id>) This is similar to creating slides & the template for creating slides is present here 


Anchor
chunk&templates
chunk&templates

...

...


Anchor
deleteObject
deleteObject

...

Deck of Cards
idbimObjDelete
Card
defaulttrue
labelURL / Resource / JSON Structure
Resource: objects/<object_id> 

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

Examplehttps://api-stage.bimplus.net/v2/bimplus/objects/7cf910cb-e357-43f6-aa3a-b45c26380f75

Card
labelHTTP Method
 DELETE
Card
labelDescription
 Deletes a specified object.
Card
labelRequest
Code Block
borderColorGreen
langxml
titleHeaders
Authorization: BimPlus 9c1874a62c974dcfa75e0132c423a088
Content-Type: application/json
Card
labelResponse
Code Block
borderColorGreen
langxml
titleStatus
Status: 200 OK

 


Anchor
createCustomTableForObject
createCustomTableForObject

...

Deck of Cards
idbimDeleteCustomTablesOfObject
Card
defaulttrue
labelURL / Resource / JSON Structure
Resource: objects/<object_id>/customtables

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

Examplehttps://api-stage.bimplus.net/v2/objects/cb96a9b1-48c9-4d97-8c9e-262476c1c6b2/customtables

Card
labelHTTP Method
 DELETE
Card
labelDescription
 Delete all the custom tables of a specified object.
Card
labelRequest
Code Block
borderColorGreen
langxml
titleHeaders
Authorization: BimPlus 9c1874a62c974dcfa75e0132c423a088
Content-Type: application/json
Card
labelResponse
Code Block
borderColorGreen
langxml
titleStatus
Status: 200 OK

 

...