Help us improve the Bimplus API doc by providing your valuable comments. You can find the comment section at the bottom of the page.

 

Developers please use (stage version of Bimplus API) and (stage version of Shop/Portal) for testing purposes. Please use these login details(Login: bimplus, password: Bimplus) if you receive a login dialog before our portal loads. The production version of the portal is located under   and the base url of the API is different for the production version.

Project relevant services

Administration relevant services

Other services

Project Service


Model Service


Object Service


ElementType Service


Attachment Service


Issue Service


Pin Service


Comment Service


Import Service


Slideshow Service


Hyperlink Service


Structure Service


Clash Service


 

Authorization Service


User Management Service


Team Management Service


Membership Management Service


Rights & Roles Service


 

Messaging Service


Log Service


Bimplus Windows Explorer related Services


 

Hyperlink Service


A particular hyperlink belonging to an object/slide/issue can be modified using the hyperlink service.

Get details of the hyperlink
Resource: hyperlink/<hyperlink_id> 

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

Example:https://api-stage.bimplus.net/v2/bimplus/hyperlinks/db540336-47a3-426e-b3bf-1e532bfac8ea 

 GET
 Get details of a specified hyperlink.
Authorization: BimPlus 9c1874a62c974dcfa75e0132c423a088
Content-Type: application/json
Status: 200 OK
{
    "orderNumber": 1,
    "name": "My website",
    "url": "https://www.bimplus.net/",
    "id": "c46d1080-0450-4f03-aa4d-a32300e018e9"
}

Update the hyperlink
Resource: hyperlink/<hyperlink_id> 

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

Example:https://api-stage.bimplus.net/v2/bimplus/hyperlinks/db540336-47a3-426e-b3bf-1e532bfac8ea

JSON Structure:

Name

Mandatory / Optional

Type

Description

orderNumber

optional

integer

The ordering number of the hyperlink

name

optional

string

Name of the hyperlink

url

optional

string

The actual url

id

will be ignored

string (guid)

Id of the hyperlink

 PUT
Update the specified hyperlink.
Authorization: BimPlus 9c1874a62c974dcfa75e0132c423a088
Content-Type: application/json
{    
    "name": "My new website",
    "url": "https://www-stage.bimplus.net/"
}
Status: 200 OK

Delete the hyperlink

Resource: hyperlink/<hyperlink_id> 

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

Example:https://api-stage.bimplus.net/v2/bimplus/hyperlinks/db540336-47a3-426e-b3bf-1e532bfac8ea

 DELETE
 Deletes a specified hyperlink.
Authorization: BimPlus 9c1874a62c974dcfa75e0132c423a088
Content-Type: application/json
Status: 200 OK

 

Structure Service


A hierarchical tree structure(eg: cost structure) could be added and later retrieved from a project/object using the Structure service

 

Create a new structure in a project
Resource: projects/<project_id>/structures 

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

Example:https://api-stage.bimplus.net/v2/bimplus/projects/622272da-f1ff-45ab-a3f0-c8f1255c80e8/structures

JSON Structure

Name

Mandatory / Optional

Type

Description

parentId

mandatory

string(guid)

Parent node id of the structure (for the first structure, projectId is the parentId)

name

mandatory

string

Name of the structure

description

optional

string

Description of the structure

typeoptionalstringType of the structure (eg: costStructure, specificationStructure)
nrwill be ignoredintegerThe index of the structure
coloroptionalintegerColor of the structure
idwill be ignoredstring(guid)Unique guid of the structure


 POST
 Create a new structure(eg: cost structure, specification structure) under a project
Authorization: BimPlus 9c1874a62c974dcfa75e0132c423a088
Content-Type: application/json
{
    "name": "TestStructure",
    "description": "FullLifeCycleTest",
    "type": "CostStructure"
}
Status: 201 Created
{
    "parentId": "622272da-f1ff-45ab-a3f0-c8f1255c80e8",
    "name": "TestStructure",
    "description": "FullLifeCycleTest",
    "type": "CostStructure",
    "nr": 1,
    "color": 0,
    "id": "179439d6-df16-41cc-bd2c-74d05b7995d5"
}

Get the structure details
Resource: structures/<structure_id> 

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

Example:https://api-stage.bimplus.net/v2/bimplus/structures/179439d6-df16-41cc-bd2c-74d05b7995d5

 GET
 Get details of a specified structure.
Authorization: BimPlus 9c1874a62c974dcfa75e0132c423a088
Content-Type: application/json
Status: 200 OK
{
    "name": "TestStructure",
    "description": "FullLifeCycleTest",
    "type": "CostStructure",
    "nr": 1,
    "color": 0,
    "id": "179439d6-df16-41cc-bd2c-74d05b7995d5"
}

Create a sub-node under the structure
Resource: structures/<structure_id> 

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

Example:https://api-stage.bimplus.net/v2/bimplus/structures/179439d6-df16-41cc-bd2c-74d05b7995d5

JSON Structure

Name

Mandatory / Optional

Type

Description

parentId

mandatory

string(guid)

Parent node id of the structure (the id specified in the resource url)

name

mandatory

string

Name of the structure

description

optional

string

Description of the structure

typeoptionalstringType of the structure (eg: costStructure, specificationStructure)
nrwill be ignoredintegerThe index of the structure
coloroptionalintegerColor of the structure
idwill be ignoredstring(guid)Unique guid of the structure


 POST
 Create a sub-node under a particular structure
Authorization: BimPlus 9c1874a62c974dcfa75e0132c423a088
Content-Type: application/json
{
  "name": "Node 1"
}
Status: 201 Created
{
    "parentId": "179439d6-df16-41cc-bd2c-74d05b7995d5",
    "name": "Node 1",
    "type": "TopologyStructure",
    "nr": 1,
    "color": 0,
    "id": "adf506ae-3628-4501-9af1-22bcf27e4ab4"
}

Get the structure topology
Resource: structures/<structure_id>/topology 

URLhttps://api-stage.bimplus.net/v2/<team_slug>/structures/<structure_id>/topology

Example:https://api-stage.bimplus.net/v2/bimplus/structures/179439d6-df16-41cc-bd2c-74d05b7995d5/topology

 GET
 Get details of a specified structure.
Authorization: BimPlus 9c1874a62c974dcfa75e0132c423a088
Content-Type: application/json
Status: 200 OK
{
    "parent": null,
    "name": "TestStructure",
    "type": "Structure",
    "children": [
        {
            "parent": "179439d6-df16-41cc-bd2c-74d05b7995d5",
            "name": "Node 1",
            "type": "Structure",
            "children": [],
            "id": "adf506ae-3628-4501-9af1-22bcf27e4ab4"
        }
    ],
    "id": "179439d6-df16-41cc-bd2c-74d05b7995d5"
}

Assign an object to the latest/last structure node
Resource: structures/<structure_id>/assign/<object_id> 

URLhttps://api-stage.bimplus.net/v2/<team_slug>/structures/<structure_id>/assign/<object_id> 

Example:https://api-stage.bimplus.net/v2/bimplus/structures/179439d6-df16-41cc-bd2c-74d05b7995d5/assign/df4a81d6-42fb-4187-bbce-82a2fc093b2f

JSON Structure

Name

Mandatory / Optional

Type

Description

structureId

will be ignored

string(guid)

The id of the last node to which an object will be assigned

objectId

will be ignored

string(guid)

The id of the object to whom a structure will be assigned

name

mandatory

string

The name of the structure-object connection

nrwill be ignoredintegerThe index of the structure-object connection
idwill be ignoredstring(guid)Unique guid of the structure-object connection


 POST
 Assign an object to the latest/last structure node
Authorization: BimPlus 9c1874a62c974dcfa75e0132c423a088
Content-Type: application/json
{
  "name": "WallConnection"
}
Status: 201 Created
{
    "structureId": "adf506ae-3628-4501-9af1-22bcf27e4ab4",
    "objectId": "df4a81d6-42fb-4187-bbce-82a2fc093b2f",
    "name": "WallConnection",
    "nr": 1,
    "id": "35b986c2-e9cd-482e-9281-6000671a49f0"
}

Update the structure
Resource: structures/<structure_id>

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

Example:https://api-stage.bimplus.net/v2/bimplus/structures/179439d6-df16-41cc-bd2c-74d05b7995d5

JSON Structure

Name

Mandatory / Optional

Type

Description

parentId

optional

string(guid)

Parent node id of the structure (for the first structure, projectId is the parentId)

name

optional

string

Name of the structure

description

optional

string

Description of the structure

typeoptionalstringType of the structure (eg: costStructure, specificationStructure)
nroptionalintegerThe index of the structure
coloroptionalintegerColor of the structure
idwill be ignoredstring(guid)Unique guid of the structure
 PUT
 Update the specified structure
Authorization: BimPlus 9c1874a62c974dcfa75e0132c423a088
Content-Type: application/json
{
  "name": "Updated Structure"
}
Status: 200 OK
{
    "parentId": "622272da-f1ff-45ab-a3f0-c8f1255c80e8",
    "name": "Updated Structure",
    "description": "FullLifeCycleTest",
    "type": "CostStructure",
    "nr": 1,
    "color": 0,
    "id": "179439d6-df16-41cc-bd2c-74d05b7995d5"
}

Delete the structure

Resource: structures/<structure_id> 

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

Example:https://api-stage.bimplus.net/v2/bimplus/structures/db540336-47a3-426e-b3bf-1e532bfac8ea

 DELETE
 Deletes a specified structure.
Authorization: BimPlus 9c1874a62c974dcfa75e0132c423a088
Content-Type: application/json
Status: 200 OK

 

Clash Service


Clashes could be detected in a project by calling this service. The person who uploaded the model which contains the clash will get a notification along with the clash count after the clash process is completed. This process will be called during model import in the future.

 

Detect the clashes in a project
Resource: services/postprocess 

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

Example:https://api-stage.bimplus.net/v2/bimplus/services/postprocess

JSON Structure

Name

Mandatory / Optional

Type

Description

runAsync

mandatory

bool

True sets the clash process to run asynchronously

postProcess

mandatory

object

It runs as a windows service in the server

projectId

mandatory

string

Id of the project


 POST
 Detects the clashes in a project. This process will be called during model import automatically in the future. The person who uploaded the model which contains the clash will get a notification along with the clash count after the clash process is completed.
Authorization: BimPlus 9c1874a62c974dcfa75e0132c423a088
Content-Type: application/json
{
    "runAsync": "True",
    "postProcess": {
        "projectId": "0c9b514a-5b30-4f77-b0ff-2184d079fd30"
    }
}
Status: 200 Ok
{
    "postProcess": {
        "projectId": "0c9b514a-5b30-4f77-b0ff-2184d079fd30"
    },
    "runAsync": false
}

 

Authorization Service


Authorizes a user and returns a token for further API calls
 Resource: authorize 

URLhttps://api-stage.bimplus.net/v2/authorize

JSON Structure

Name

Mandatory / Optional

Type

Description

user_id

mandatory

string

The email address of the user

password

mandatory

string

The user's password

client_id

optional

string

The identifier of the used client

application_id

optional

string

The id of the application

 POST
 Authorizes a user and returns a token for further API calls.

Please, use the client_id from the request and regenerate the token (using the same API call with client_id as the additional parameter) for having the possibility to login multiple times at the same time. For more information, see here

Content-Type: application/json
{
 "user_id" : "test@bimplus.net",
 "password" : "test"
}
Status: 200 OK
{
"access_token": "9c1874a62c974dcfa75e0132c423a088",
"expires_in": 2591999,
"client_id": "9fd0bb9d-570b-4719-bfae-93e2f879c19a",
"token_type": "BimPlus"
}

Get token information
 Resource: authorize

URLhttps://api-stage.bimplus.net/v2/authorize 

 GET
 Get information about a specified token(if the specified token exists and not expired).
Content-Type: application/json

Authorization: BimPlus 9c1874a62c974dcfa75e0132c423a088
Status: 200 OK
{
    "user_id": "b37b60d4-0f1b-4158-99c4-847254786517",
    "audience": "00000000-0000-0000-0000-000000000000",
    "expires_in": 2271650

} 

where,

Name

Type

Description

user_id

string

The unique user id to be used for any further API calls.

expires_in

string

The remaining lifetime on the access token in seconds

audience

string

In our case the id of the client (Mobile app, Browser …)

Request a cross token
 Resource: cross-token

URLhttps://api-stage.bimplus.net/v2/cross-token

 POST
 This service is basically used for requesting a disposable temporary token which will be used for authenticating against different clients. Based on the given authentication token the user is identified and a one time token is generated and returned.
Authorization: BimPlus 9c1874a62c974dcfa75e0132c423a088
Content-Type: application/json
Status: 200 OK
{
cross_token: "b392cee4d0044ef681fa911772668cf9"
expires_in: 299
token_type: "BimPlus"
}

where,

Name

Type

Description

cross_token

string

The temporary token which will be used for cross-authenticate

expires_in

string

The remaining lifetime on the access token in seconds

token_type

string

Type of the token which will be used as part of the header

Cross Authenticate by using cross token
 Resource: cross-authorize

URLhttps://api-stage.bimplus.net/v2/cross-authorize

JSON Structure:

Name

Mandatory / Optional

Type

Description

cross_token

mandatory

string

The temporary token which will be used for cross-authenticate

client_id

optional

string

The identifier of the used client

team_id

optional

string

The id of the team

project_id

optional

string

The id of the project

application_id

optional

string

The id of the application

 POST
 Based on the one time cross token, the user will be identified and logged in to the given device/client. The one time cross token will be removed but the new token which will be generated as a result of this call be used in the header for the subsequent API calls.

The team_id and project_id information can be provided as part of the call, if the user wants to work on or display(viewer) a particular team or an project.

Content-Type: application/json
{
"cross_token": "b392cee4d0044ef681fa911772668cf9"
}

Status: 200 OK
{
"access_token": "43796fab76d54d2c9cb9120fd7d79c9e",
"expires_in": 2591999,
"client_id": "9fd0bb9d-570b-4719-bfae-93e2f879c19a",
"token_type": "BimPlus"
}

Revoke / Expire the token
Resource: authorize

URLhttps://api-stage.bimplus.net/v2/authorize 

 DELETE
 The specified token will expire immediately.
Content-Type: application/json

Authorization: BimPlus 9c1874a62c974dcfa75e0132c423a088
Status: 200 OK

 

User Management Service


Please remember that creating/updating/deleting an user is possible only for the clients who has the permission to do it.

Create a new user
 Resource: users 

URLhttps://api-stage.bimplus.net/v2/users

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

JSON Structure:

Name

Mandatory / Optional

Type

Description

email

mandatory

string

Email of the user

status

optional

will be ignored

The status of the account (Active / Inactive)

password

mandatory

string

Password of the user

firstnameoptionalstringFirst name of the user
lastnameoptionalstringLast name of the user
companyoptionalstringCompany of the user
displaynameoptionalstringDisplay name of the user
infooptionalstringInformation of the user
genderoptionalstringGender of the user
phoneWorkoptionalstringOffice phone number of the user
phoneHomeoptionalstringHome phone number of the user
faxoptionalstringFax number of the user
mobileoptionalstringMobile number of the user
birthDateoptionalstringBirth date of the user
addressoptionalobjectAddress of the user
streetoptionalstringStreet name of the user
streetNroptionalstringStreet number of the user
zipoptionalstringZip code
cityoptionalstringCity name of the user
countryoptionalstringCountry name of the user
preferredLanguageoptionalstringPreferred language of the user (will be set in the portal)
teamswill be ignoredarrayTeam list of the user
teamwill be ignoredobjectInformation about an user's team (See the team service)
projectswill be ignoredarrayProject list of the user
projectwill be ignoredobjectInformation about an user's project (See the project service)
 POST
 Creates a new user account. Please remember that this service can be used only by the shop/portal (secured using the application_id of portal)
Authorization: BimPlus 9c1874a62c974dcfa75e0132c423a088
Content-Type: application/json
{
 "email" : "test@bimplus.net",
 "password" : "test"
}
Status: 201 Created
{
    "projects": [],
    "teams": [],
    "id": "b8615afc-99cc-4bcd-b0ca-ff0593ce15c6",
    "email": "test@bimplus.net",
    "status": "Active",
    "firstname": "",
    "lastname": "",
    "company": "",
    "displayname": "",
    "info": "",
    "gender": "",
    "phoneWork": "",
    "phoneHome": "",
    "fax": "",
    "mobile": "",
    "birthDate": "",
    "address": {
        "street": "",
        "streetNr": "",
        "zip": "",
        "city": "",
        "country": ""
    },
    "preferedLanguage": ""
}

Get information about the user
Resource: users/<user_id> 

URLhttps://api-stage.bimplus.net/v2/users/<user_id>

Examplehttps://api-stage.bimplus.net/v2/users/b8615afc-99cc-4bcd-b0ca-ff0593ce15c6

 GET
 Get information about a specified user.
Authorization: BimPlus 9c1874a62c974dcfa75e0132c423a088
Content-Type: application/json
Status: 200 OK
{
    "projects": [],
    "teams": [],
    "id": "b8615afc-99cc-4bcd-b0ca-ff0593ce15c6",
    "email": "test@bimplus.net",
    "status": "Active",
    "firstname": "",
    "lastname": "",
    "company": "",
    "displayname": "",
    "info": "",
    "gender": "",
    "phoneWork": "",
    "phoneHome": "",
    "fax": "",
    "mobile": "",
    "birthDate": "",
    "address": {
        "street": "",
        "streetNr": "",
        "zip": "",
        "city": "",
        "country": ""
    },
    "preferedLanguage": ""
}

Update information about the user
 Resource: users/<user_id> 

URLhttps://api-stage.bimplus.net/v2/users/<user_id>

Examplehttps://api-stage.bimplus.net/v2/users/b8615afc-99cc-4bcd-b0ca-ff0593ce15c6

JSON Structure:

Name

Mandatory / Optional

Type

Description

email

mandatory

string

Email of the user

status

mandatory

string

The status of the account (Active / Inactive)

password

mandatory

string

Password of the user

firstnameoptionalstringFirst name of the user
lastnameoptionalstringLast name of the user
companyoptionalstringCompany of the user
displaynameoptionalstringDisplay name of the user
infooptionalstringInformation of the user
genderoptionalstringGender of the user
phoneWorkoptionalstringOffice phone number of the user
phoneHomeoptionalstringHome phone number of the user
faxoptionalstringFax number of the user
mobileoptionalstringMobile number of the user
birthDateoptionalstringBirth date of the user
addressoptionalobjectAddress of the user
streetoptionalstringStreet name of the user
streetNroptionalstringStreet number of the user
zipoptionalstringZip code
cityoptionalstringCity name of the user
countryoptionalstringCountry name of the user
preferredLanguageoptionalstringPreferred language of the user (will be set in the portal)
teamswill be ignoredarrayTeam list of the user
teamwill be ignoredobjectInformation about an user's team (See the team service)
projectswill be ignoredarrayProject list of the user
projectwill be ignoredobjectInformation about an user's project (See the project service)
 PUT
 Update information about a specified user. Please remember that this service can be used only by the shop/portal (secured using the application_id of portal)
Authorization: BimPlus 9c1874a62c974dcfa75e0132c423a088
Content-Type: application/json
{
    "email": "updated_test@bimplus.net",
    "status": "Active",
    "password": "test"
}
Status: 200 OK
Delete the user
Resource: users

URLhttps://api-stage.bimplus.net/v2/users/<user_id>

Examplehttps://api-stage.bimplus.net/v2/users/08b8195a-a2ad-11e2-9993-002215ea7d6b

 DELETE
 Delete a specified user. Please remember that this service can be used only by the shop/portal (secured using the application_id of portal)
Authorization: BimPlus 9c1874a62c974dcfa75e0132c423a088
Content-Type: application/json
Status: 200 OK

Get information about the currently logged in user
Resource: user 

URLhttps://api-stage.bimplus.net/v2/user

 GET
 Get information about the currently logged in user.
Authorization: BimPlus 9c1874a62c974dcfa75e0132c423a088
Content-Type: application/json
Status: 200 OK
{
    "projects": [],
    "teams": [],
    "id": "b8615afc-99cc-4bcd-b0ca-ff0593ce15c6",
    "email": "test@bimplus.net",
    "status": "Active",
    "firstname": "",
    "lastname": "",
    "company": "",
    "displayname": "",
    "info": "",
    "gender": "",
    "phoneWork": "",
    "phoneHome": "",
    "fax": "",
    "mobile": "",
    "birthDate": "",
    "address": {
        "street": "",
        "streetNr": "",
        "zip": "",
        "city": "",
        "country": ""
    },
    "preferedLanguage": ""
}


Team Management Service


Please remember that creating/updating/deleting a team is possible only for the clients who has the permission to do it.

Create a new team and its related database
Resource: teams 

URLhttps://api-stage.bimplus.net/v2/teams

JSON Structure

Name

Mandatory / Optional

Type

Description

slug

mandatory

string

The unique name which will be used in the url

name

mandatory

string

Name of the team

displaynamemandatorystringThe name of the team which will be displayed in the client

owner

mandatory

string (guid)

The unique identifier of the user who will be the initial owner

totalStorage

mandatory

integer

The total storage allocated to the the team (the initial storage size as ordered in the shop)

storageStats

will be ignored

integer

The storage statistics of the team (usedSpace, numberOfProjects, numberOfMembers, totalSpace, totalNumberOfProjects, totalNumberOfMembers)

status

will be ignored

string

Active / Inactive

teamWorksConnection

optional

string

Base64 encoded database connection string for legacy applications

dataStorageStatus

optional

string

Online / Offline

haswriteaccesswill be ignoredbooleanWrite access to the team
publicoptionalobjectPublic read/write rights
readoptionalbooleanRead right (viewer right to all the projects under this team to all the registered users)
writeoptionalbooleanWrite right (write right to all the projects under this team to all the registered users)
rightsobjectobjectProject rights
projectCreatewill be ignoredboolean

The client can use this information to check whether a user can create a project for this team

(See the Rights & Roles to learn more about it)

 POST
 Create a new team and its related database. Please remember that this service can be used only by the shop/portal (secured using the application_id of portal)
Authorization: BimPlus 9c1874a62c974dcfa75e0132c423a088
Content-Type: application/json
{
    "slug": "best-company",
    "name": "Best Company",
    "owner": "b8615afc-99cc-4bcd-b0ca-ff0593ce15c6",
    "totalStorage": 500000000,
    "teamWorksConnection": "RGF0YSBTb3VyY2U9YmltcGx1cy5tYW50cm8ubmV0O0luaXRpYWwgQ2F0YWxvZz1CaW1QbHVzLlRlbmFudC5BTUFaT05BLU1OVU8wMTcudGhlLWJlc3Q7VXNlciBJRD10aGUtYmVzdDtQYXNzd29yZD00YmZhZWVlZTM5NDBmZjI0ZjhhNjg2MmIxMzk3NzUyYWU1MjlkZDIzO0Nvbm5lY3QgVGltZW91dD0xMA==",
    "dataStorageStatus": "Online",
    "haswriteaccess": false
}
Status: 201 Created
{
    "id": "db038754-2598-4616-9ea2-2c0947f2e93a",
    "slug": "best-company",
    "name": "Best Company",
    "owner": "b8615afc-99cc-4bcd-b0ca-ff0593ce15c6",
    "totalStorage": 500000000,
    "storageStats": {
        "usedSpace": 0,
        "numberOfProjects": 0,
        "numberOfMembers": 0,
        "totalSpace": 500000000,
        "totalNumberOfProjects": 0,
        "totalNumberOfMembers": 0
    },
    "status": "Active",
    "teamWorksConnection":     "RGF0YSBTb3VyY2U9YmltcGx1cy5tYW50cm8ubmV0O0luaXRpYWwgQ2F0YWxvZz1CaW1QbHVzLlRlbmFudC5BTUFaT05BLU1OVU8wMTcudGhlLWJlc3Q7VXNlciBJRD10aGUtYmVzdDtQYXNzd29yZD00YmZhZWVlZTM5NDBmZjI0ZjhhNjg2MmIxMzk3NzUyYWU1MjlkZDIzO0Nvbm5lY3QgVGltZW91dD0xMA==",
    "dataStorageStatus": "Online",
    "haswriteaccess": false,
    "public": {
        "read": false,
        "write": false
    },
    "rights": {
        "projectCreate": true
    }  
}

Get information about the team
Resource: teams/<team_slug> 

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

Examplehttps://api-stage.bimplus.net/v2/teams/best-company

 GET
 Get information about a specified team.
Authorization: BimPlus 9c1874a62c974dcfa75e0132c423a088
Content-Type: application/json
Status: 200 OK
{
    "id": "db038754-2598-4616-9ea2-2c0947f2e93a",
    "slug": "best-company",
    "name": "Best Company",
    "displayname": "Best Company (best-company)",
    "owner": "b8615afc-99cc-4bcd-b0ca-ff0593ce15c6",
    "totalStorage": 500000000,
    "storageStats": {
        "usedSpace": 0,
        "numberOfProjects": 0,
        "numberOfMembers": 0,
        "totalSpace": 500000000,
        "totalNumberOfProjects": 0,
        "totalNumberOfMembers": 0
    },
    "status": "Active",
    "teamWorksConnection":   "RGF0YSBTb3VyY2U9YmltcGx1cy5tYW50cm8ubmV0O0luaXRpYWwgQ2F0YWxvZz1CaW1QbHVzLlRlbmFudC5BTUFaT05BLU1OVU8wMTcudGhlLWJlc3Q7VXNlciBJRD10aGUtYmVzdDtQYXNzd29yZD00YmZhZWVlZTM5NDBmZjI0ZjhhNjg2MmIxMzk3NzUyYWU1MjlkZDIzO0Nvbm5lY3QgVGltZW91dD0xMA==",
    "dataStorageStatus": "Online",
    "public": {
        "read": false,
        "write": false
    },
    "rights": {
        "projectCreate": true
    }  
}

Update information about the team
Resource: teams/<team_slug> 

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

Examplehttps://api-stage.bimplus.net/v2/teams/best-company

JSON Structure

Name

Mandatory / Optional

Type

Description

slug

will be ignored

string

The unique name which will be used in the url

name

mandatory

string

Name of the team

owner

will be ignored

string (guid)

The unique identifier of the user who will be the initial owner

totalStorage

mandatory

integer

The total storage allocated to the the team (the initial storage size as ordered in the shop)

storageStats

will be ignored

integer

The storage statistics of the team (usedSpace, numberOfProjects, numberOfMembers, totalSpace, totalNumberOfProjects, totalNumberOfMembers)

status

mandatory

string

Active / Inactive

teamWorksConnection

will be ignored

string

Base64 encoded database connection string for legacy applications

dataStorageStatus

will be ignored

string

Online / Offline

haswriteaccesswill be ignoredbooleanWrite access to the team
publicoptionalobjectPublic read/write rights
readoptionalbooleanRead right (viewer right to all the projects under this team to all the registered users)
writeoptionalbooleanWrite right (write right to all the projects under this team to all the registered users)
rightsobjectobjectProject rights
projectCreatewill be ignoredboolean

The client can use this information to check whether a user can create a project for this team

(See the Rights & Roles to learn more about it)

 PUT
Update information about a specified team. Please remember that this service can be used only by the shop/portal (secured using the application_id of portal)
Authorization: BimPlus 9c1874a62c974dcfa75e0132c423a088
Content-Type: application/json
{
        "name": "Best Company",
        "totalStorage": 500000000,
        "status": "Active"
}
Status: 200 OK

Delete the team
Resource: teams/<team_slug> 

URLhttps://api-stage.bimplus.net/v2/teams/<team_id>

Examplehttps://api-stage.bimplus.net/v2/teams/08b8195a-a2ad-11e2-9993-002215ea7d6b

 DELETE
 Delete a specified team. Please remember that this service can be used only by the shop/portal (secured using the application_id of portal)
Authorization: BimPlus 9c1874a62c974dcfa75e0132c423a088
Content-Type: application/json
Status: 200 OK

Get the team list in which the current logged in user is a member of
Resource: teams 

URLhttps://api-stage.bimplus.net/v2/teams

 GET
 Get a team list in which the current logged in user is a member of
Authorization: BimPlus 9c1874a62c974dcfa75e0132c423a088
Content-Type: application/json
Status: 200 OK
[
    {
        "id": "db038754-2598-4616-9ea2-2c0947f2e93a",
        "slug": "best-company",
        "name": "Best Company",
        "displayname": "Best Company (best-company)",
        "owner": "b8615afc-99cc-4bcd-b0ca-ff0593ce15c6",
        "totalStorage": 500000000,
        "storageStats": null,
        "status": "Active",
        "teamWorksConnection": "RGF0YSBTb3VyY2U9YmltcGx1cy5tYW50cm8ubmV0O0luaXRpYWwgQ2F0YWxvZz1CaW1QbHVzLlRlbmFudC5BTUFaT05BLU1OVU8wMTcudGhlLWJlc3Q7VXNlciBJRD10aGUtYmVzdDtQYXNzd29yZD00YmZhZWVlZTM5NDBmZjI0ZjhhNjg2MmIxMzk3NzUyYWU1MjlkZDIzO0Nvbm5lY3QgVGltZW91dD0xMA==",
        "dataStorageStatus": "Online",
        "ismyteam": true,
        "rights": {
            "projectCreate": true
        }
    },
    {
        "id": "82884f54-96bf-4e9c-a2fb-44db8379378d",
        "slug": "nemetschek",
        "name": "Nemetschek",
        "displayname": "Nemetschek (nemetschek)",
        "owner": "132a78a5-b523-4bf2-8382-7098fac3f803",
        "totalStorage": 0,
        "storageStats": null,
        "status": "Active",
        "teamWorksConnection": "RGF0YSBTb3VyY2U9YmltcGx1cy5tYW50cm8ubmV0OyBJbml0aWFsIENhdGFsb2c9QmltUGx1cy5UZW5hbnQuRGV2OyBVc2VyIElkPWRiYmltbWFudHJvdGVzdDsgUGFzc3dvcmQ9MWprdGNudG9DcU9qeGtIMU9QOXg7IENvbm5lY3QgdGltZW91dD0xMA==",
        "dataStorageStatus": "Online",
        "ismyteam": false,
        "rights": {
            "projectCreate": false
        }
    },
    {
        "id": "7eab1453-a4e7-4d05-983e-031544540e6f",
        "slug": "bimplus-demo",
        "name": "BimPlusDemo",
        "displayname": "BimPlusDemo (bimplus-demo)",
        "owner": "5592c628-588e-f5c0-b08b-088d43de9209",
        "totalStorage": 53687091200,
        "storageStats": null,
        "status": "Active",
        "teamWorksConnection": "RGF0YSBTb3VyY2U9YmltcGx1cy5tYW50cm8ubmV0O0luaXRpYWwgQ2F0YWxvZz1CaW1QbHVzLlRlbmFudC5iaW1wbHVzLWRlbW87VXNlciBJRD1iaW1wbHVzLWRlbW87UGFzc3dvcmQ9YWI3ZDRmNDc5ZGM4YjI1Yjg2MDc0Y2ZmZTNiNDBjZmY2OWQwNzQ1YjtDb25uZWN0IFRpbWVvdXQ9MTA=",
        "dataStorageStatus": "Online",
        "ismyteam": false,
        "rights": {
            "projectCreate": false
        }
    }
]


Membership Management Service


Please remember that the team owner cannot remove the membership from his own team.

Add the user to the team
Resource: <team_slug>/members 

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

Examplehttps://api-stage.bimplus.net/v2/best-company/members

JSON Structure

Name

Mandatory / Optional

Type

Description

user

mandatory

object

Information of the user

user.id

mandatory

string

Id of the user

user.email

will be ignored

string

Email of the user

user.status

will be ignored

string

Status of the user(Active / Inactive)

roles

will be ignored

object

Roles of the user

member_status

optional

string

Status of the membership(Active / Passive)

 POST
 Add a specified user to a specified team.
Authorization: BimPlus 9c1874a62c974dcfa75e0132c423a088
Content-Type: application/json
{
    "user": {
        "id": "b8615afc-99cc-4bcd-b0ca-ff0593ce15c6"
    },
    "roles": [
        "Member"
    ],
    "member_status": "Active"

}
Status: 200 Ok

Get the member list of the team
Resource: <team_slug>/members 

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

Examplehttps://api-stage.bimplus.net/v2/best-company/members

 GET
 Gets the member list of a specified team.
Authorization: BimPlus 9c1874a62c974dcfa75e0132c423a088
Content-Type: application/json
Status: 200 OK
[
    {
        "user": {
            "id": "b8615afc-99cc-4bcd-b0ca-ff0593ce15c6",
            "email": "test@bimplus.net",
            "status": "Active"
        },
        "roles": [
            "Member"
        ],
        "status": "Active"
    },
    {
        "user": {
            "id": "b8615afc-99cc-4bcd-b0ca-ff0593ce15c7",
            "email": "customer@bimplus.net",
            "status": "Active"
        },
        "roles": [
            "Member"
        ],
        "status": "Passive"
    }
]

Update information about the user in the team
Resource: <team_slug>/members/<user_id> 

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

Examplehttps://api-stage.bimplus.net/v2/best-company>/members/b8615afc-99cc-4bcd-b0ca-ff0593ce15c6

JSON Structure

Name

Mandatory / Optional

Type

Description

user

mandatory

object

Information of the user

user.id

mandatory

string

Id of the user

status

mandatory

string

Status of the membership(Active / Passive)

 PUT
 Update information about a specified user in a team.
Authorization: BimPlus 9c1874a62c974dcfa75e0132c423a088
Content-Type: application/json
{
        "user": {
            "id": "b8615afc-99cc-4bcd-b0ca-ff0593ce15c7"
        },
        "status": "Active"
    }
Status: 200 OK

Delete the user from the team
Resource: <team_slug>/members/<user_id> 

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

Examplehttps://api-stage.bimplus.net/v2/best-company/members/b8615afc-99cc-4bcd-b0ca-ff0593ce15c6

 DELETE
Deletes a specified user from a team. 
Authorization: BimPlus 9c1874a62c974dcfa75e0132c423a088
Content-Type: application/json
Status: 200 OK

 

Rights & Roles Service


Get all the available roles
Resource: <team_slug>/roles 

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

Examplehttps://api-stage.bimplus.net/v2/best-company/roles

 GET

 

 

 Get all the available. Right now, we support only project based roles.

Here is the definition of Bimplus Rights & Roles.

 Account
Owner
Project
Admin
Project
Editor
Project
Viewer
Model
Admin
Model
Editor
Model
Viewer
Create Projectxx     
Admin Project (eg. invite)xx     
Edit Projectxxx    
Delete Projectxx     
View Projectxxxxxxx
        
View all Modelsxxxx   
Create Modelxxx    
Admin Model (eg. invite)xx     
Assign User to Modelxxx x  
Edit Modelxxx xx 
Import Dataxxx xx 
Delete Modelxxx x  
View Modelxxxxxxx
Authorization: BimPlus 9c1874a62c974dcfa75e0132c423a088
Content-Type: application/json
Status: 200 Ok
[
    {
        "id": "f11d32e2-30b7-4f81-8a74-2165ecc00cf6",
        "name": "Project_Editor",
        "customRole": false,
        "resources": [
            {
                "resource": "UserRightProject",
                "rights": [
                    "Project_Edit",
                    "Project_View",
                    "Model_ViewAll"
                ]
            }
        ]
    },
    {
        "id": "2baca0e4-2eee-4f7c-bc56-22ed54a1859c",
        "name": "Account_Owner",
        "customRole": false,
        "resources": [
            {
                "resource": "UserRightGlobal",
                "rights": [
                    "AllProjects",
                    "AllModels",
                    "Project_Create"
                ]
            }
        ]
    },
    {
        "id": "a298b28d-9711-4a76-9a7d-910cbf144ee5",
        "name": "Project_Admin",
        "customRole": false,
        "resources": [
            {
                "resource": "UserRightProject",
                "rights": [
                    "Project_Admin",
                    "Project_Edit",
                    "Project_Delete",
                    "Project_View",
                    "Model_ViewAll",
                    "Model_Create"
                ]
            }
        ]
    },
    {
        "id": "a618d075-7e4a-4bde-9d58-d2979696fa96",
        "name": "Project_Viewer",
        "customRole": false,
        "resources": [
            {
                "resource": "UserRightProject",
                "rights": [
                    "Project_View",
                    "Model_ViewAll"
                ]
            }
        ]
    }
]

Make a team member part of a project by assigning a role to him
Resource: projects/<project_id>/members 

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

Examplehttps://api-stage.bimplus.net/v2/bimplus/projects/b8615afc-99cc-4bcd-b0ca-ff0593ce15c6/members

JSON Structure

Name

Mandatory / Optional

Type

Description

member

mandatory

object

The member who will be assigned a role to the project

id

mandatory

string (guid)

Id of the user

role

mandatory

object

The project role which will be assigned to the team member

id

mandatory

string (guid)

Id of the role

 POST
 Assign a project role to an existing member of a team. Only the user with "Account Owner" or "Project Owner" role can use this API call.
Authorization: BimPlus 9c1874a62c974dcfa75e0132c423a088
Content-Type: application/json
{
  "member": {
    "id": "bf5b2382-1d14-b8df-8454-947f83b45c25"
  },
  role: {
    id: "f11d32e2-30b7-4f81-8a74-2165ecc00cf6"
}
Status: 201 Created
{
  "member": {
    "id": "bf5b2382-1d14-b8df-8454-947f83b45c25",
    "email": "customer@bimplus.net"
  },
  "role": {
    "id": "f11d32e2-30b7-4f81-8a74-2165ecc00cf6",
    "name": "Project_Editor"
}

Get the project members along with their respective roles

Resource: projects/<project_id>/members 

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

Examplehttps://api-stage.bimplus.net/v2/bimplus/projects/b8615afc-99cc-4bcd-b0ca-ff0593ce15c6/members

 GET
 Get the member list of a project along with their respective project roles.
Authorization: BimPlus 9c1874a62c974dcfa75e0132c423a088
Content-Type: application/json
Status: 200 OK
[
    {
        "member": {
            "id": "7aa846f2-6014-f68d-8dd4-4c7941d7cbcc",
            "email": "customer1@bimplus.net"
        },
        "role": {
            "id": "f11d32e2-30b7-4f81-8a74-2165ecc00cf6",
            "name": "Project_Editor"
        }
    },
    {
        "member": {
            "id": "bf5b2382-1d14-b8df-8454-947f83b45c25",
            "email": "customer2@bimplus.net"
        },
        "role": {
            "id": "e11d32e2-30b7-4f81-8a74-2165ecc00cf6",
            "name": "Project_Viewer"
        }
    }
]

Update the project role of a team member
Resource: projects/<project_id>/members 

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

Examplehttps://api-stage.bimplus.net/v2/bimplus/projects/b8615afc-99cc-4bcd-b0ca-ff0593ce15c6/members

JSON Structure

Name

Mandatory / Optional

Type

Description

member

mandatory

object

The member who will be assigned a role to the project

id

mandatory

string (guid)

Id of the user

role

mandatory

object

The project role which will be assigned to the team member

id

mandatory

string (guid)

Id of the role

 PUT
 Update the project role of a team member. Only the user with "Account Owner" or "Project Owner" role can use this API call.
Authorization: BimPlus 9c1874a62c974dcfa75e0132c423a088
Content-Type: application/json
{
  "member": {
    "id": "bf5b2382-1d14-b8df-8454-947f83b45c25",
    "email": "customer@bimplus.net"
  },
  "role": {
    "id": "f11d32e2-30b7-4f81-8a74-2165ecc00cf6",
    "name": "Project_Viewer"
}
Status: 200 OK

Remove the user from the project   
Resource: projects/<project_id>/members 

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

Examplehttps://api-stage.bimplus.net/v2/bimplus/projects/b8615afc-99cc-4bcd-b0ca-ff0593ce15c6/members

 DELETE
 Remove the user from a project
Authorization: BimPlus 9c1874a62c974dcfa75e0132c423a088
Content-Type: application/json
Status: 200 OK

 

 

Messaging Service


Create a new message for an user
Resource: messages 

URLhttps://api-stage.bimplus.net/v2/messages

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

JSON Structure

Name

Mandatory / Optional

Type

Description

id

will be ignored

string

Id of the message

receiver

mandatory

object

receiver user object (contains id & email)

senderoptionalobjectsender user object (contains id & email)
idmandatorystring(guid)id of the user
emailmandatorystringemail id of the user

source

mandatory

string

Source of the message (eg: Import Service)

topic

mandatory

string

Topic of the message

severity

mandatory

object

Severity can be Info, Warning, Error

returnCode

mandatory

string

Readable return code

timestampwill be ignoredstringCreation date of the message
unreadmandatorybooleanWhether the message was unread
additionalDataoptionalstringExtra info
correlationIdoptionalguidId of the other related message
 POST
 Create a new message for an user.
Authorization: BimPlus 9c1874a62c974dcfa75e0132c423a088
Content-Type: application/json
{
    "id": "4633d522-53aa-4d81-90b4-704681e0573d",
    "sender": {
            "id": "1110ac3b-fa49-e540-ac2f-8caff3dd72ed",
            "email": "customer1@bimplus.net"
    },
    "receiver": {
            "id": "1e2223b-fa49-e540-ac2f-8caff3dd72ed",
            "email": "customer2@bimplus.net"
    },
    "source": "ServiceName",
    "topic": "SKETCHUP_JOB",
    "severity": "Warn",
    "returncode": "FILE_TOO_BIG",
    "unread": false,
    "timestamp": "2013-11-15T10:55:53"
}
Status: 201 Created

Get the message list of the current user
Resource: user/<user_id>/messages 

URLhttps://api-stage.bimplus.net/v2/user/<user_id>/messages

Examplehttps://api-stage.bimplus.net/v2/user/123456789/messages

 GET
 Gets the message list of the current user
Authorization: BimPlus 9c1874a62c974dcfa75e0132c423a088
Content-Type: application/json
Status: 200 OK
[
    {
        "id": "481713d6-7dab-410c-8c8a-d65ff1d4a766",
        "sender": {
            "id": "1110ac3b-fa49-e540-ac2f-8caff3dd72ed",
            "email": "customer1@bimplus.net"
        },
        "receiver": {
            "id": "1e2223b-fa49-e540-ac2f-8caff3dd72ed",
            "email": "customer2@bimplus.net"
        },
        "source": "ServiceName2",
        "topic": "SKETCHUP_JOB",
        "severity": "Info",
        "returncode": "FILE_TOO_BIG",
        "timestamp": "2013-11-18T14:55:22",
        "unread": false,
        "additionaldata": null,
        "correlationid": null
    },
    {
        "id": "93c29c5d-1391-4ae8-8876-ef9815e60f7d",
        "sender": {
            "id": "1110ac3b-fa49-e540-ac2f-8caff3dd72ed",
            "email": "customer1@bimplus.net"
        },
        "receiver": {
            "id": "1e2223b-fa49-e540-ac2f-8caff3dd72ed",
            "email": "customer2@bimplus.net"
        },
        "source": "ServiceName",
        "topic": "IFC_JOB",
        "severity": "Info",
        "returncode": "OK",
        "timestamp": "2013-11-18T14:30:53",
        "unread": true,
        "additionaldata": null,
        "correlationid": null
    }
]

Get the message list of all the users
Resource: messages 

URLhttps://api-stage.bimplus.net/v2/user/messages

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

 GET
 Gets the message list of the current user
Authorization: BimPlus 9c1874a62c974dcfa75e0132c423a088
Content-Type: application/json
Status: 200 OK
[
    {
        "id": "481713d6-7dab-410c-8c8a-d65ff1d4a766",
        "sender": {
            "id": "1110ac3b-fa49-e540-ac2f-8caff3dd72ed",
            "email": "customer1@bimplus.net"
        },
        "receiver": {
            "id": "1e2223b-fa49-e540-ac2f-8caff3dd72ed",
            "email": "customer2@bimplus.net"
        },
        "source": "ServiceName2",
        "topic": "SKETCHUP_JOB",
        "severity": "Info",
        "returncode": "FILE_TOO_BIG",
        "timestamp": "2013-11-18T14:55:22",
        "unread": false,
        "additionaldata": null,
        "correlationid": null
    },
    {
        "id": "93c29c5d-1391-4ae8-8876-ef9815e60f7d",
        "sender": {
            "id": "1110ac3b-fa49-e540-ac2f-8caff3dd72ed",
            "email": "customer1@bimplus.net"
        },
        "receiver": {
            "id": "1e2223b-fa49-e540-ac2f-8caff3dd72ed",
            "email": "customer3@bimplus.net"
        },
        "source": "ServiceName",
        "topic": "IFC_JOB",
        "severity": "Info",
        "returncode": "OK",
        "timestamp": "2013-11-18T14:30:53",
        "unread": true,
        "additionaldata": null,
        "correlationid": null
    }
]

Get information about a specified message
Resource: messages 

URLhttps://api-stage.bimplus.net/v2/messages/<message_id>

Examplehttps://api-stage.bimplus.net/v2/messages/<message_id>


 GET
 Get information about a specified message
Authorization: BimPlus 9c1874a62c974dcfa75e0132c423a088
Content-Type: application/json
Status: 200 OK
{
    "id": "93c29c5d-1391-4ae8-8876-ef9815e60f7d",
    "sender": {
            "id": "1110ac3b-fa49-e540-ac2f-8caff3dd72ed",
            "email": "customer1@bimplus.net"
    },
    "receiver": {
            "id": "1e2223b-fa49-e540-ac2f-8caff3dd72ed",
            "email": "customer2@bimplus.net"
    },
    "source": "ServiceName",
    "topic": "IFC_JOB",
    "severity": "Info",
    "returncode": "OK",
    "timestamp": "2013-11-18T14:30:53",
    "unread": true,
    "additionaldata": null,
    "correlationid": null
}

Delete the specified message
Resource: messages/<message_id> 

URLhttps://api-stage.bimplus.net/v2/messages/<message_id>

Examplehttps://api-stage.bimplus.net/v2/messages/<message_id>

 DELETE
 Delete the specified message.
Authorization: BimPlus 9c1874a62c974dcfa75e0132c423a088
Content-Type: application/json
Status: 200 OK

Mark a message as "read"
Resource: messages/<message_id>/markasread 

URLhttps://api-stage.bimplus.net/v2/messages/<message_id>/markasread 

Examplehttps://api-stage.bimplus.net/v2/messages/<message_id>/markasread

 POST
 Mark a message as read.
Authorization: BimPlus 9c1874a62c974dcfa75e0132c423a088
Content-Type: application/json
Status: 200 OK

Filter the messages (eg: Get all the unread messages from a particular user)
Resource: messages?filter=<property><operator><value>%26<property><operator><value>%26....

URLhttps://api-stage.bimplus.net/v2/messages?filter=unread=true%26receiver.email=customer@bimplus.net%26source=IssueService

Examplehttps://api-stage.bimplus.net/v2/messages?filter=unread=true%26receiver.email=customer@bimplus.net%26source=IssueService

where "%26" is the escape character for "&"

 GET
 Get information about a specified message
Authorization: BimPlus 9c1874a62c974dcfa75e0132c423a088
Content-Type: application/json
Status: 200 OK
[
    {
        "id": "44ad058b-1f76-4343-bafa-031eb462215c",
        "receiver": {
            "id": "71e0ac3b-fa49-e540-ac2f-8caff3dd72ed",
            "email": "customer@bimplus.net"
        },
        "sender": {
            "id": "71e0ac3b-fa49-e540-ac2f-8caff3dd72ed",
            "email": "testuser1@bimplus.net"
        },
        "source": "IssueService",
        "topic": "ISSUE_DELETED",
        "severity": "Info",
        "returnCode": "ISSUE_DELETED",
        "timestamp": "2014-05-09T09:54:17",
        "unread": true,
        "correlationId": null
    },
    {
        "id": "0a4c8eab-26af-49ce-9191-049a141ba762",
        "receiver": {
            "id": "71e0ac3b-fa49-e540-ac2f-8caff3dd72ed",
            "email": "customer@bimplus.net"
        },
        "sender": {
            "id": "71e0ac3b-fa49-e540-ac2f-8caff3dd72ed",
            "email": "testuser1@bimplus.net"
        },
        "source": "IssueService",
        "topic": "ISSUE_UPDATED",
        "severity": "Info",
        "returnCode": "ISSUE_UPDATED",
        "timestamp": "2014-04-08T08:54:41",
        "unread": true,
        "correlationId": "de96f4ae-79fd-4d83-99e9-07cec7a80906"
    },
    {
        "id": "ffd50096-fb82-4029-8d49-06a04e31f02a",
        "receiver": {
            "id": "71e0ac3b-fa49-e540-ac2f-8caff3dd72ed",
            "email": "customer@bimplus.net"
        },
        "sender": {
            "id": "71e0ac3b-fa49-e540-ac2f-8caff3dd72ed",
            "email": "testuser2@bimplus.net"
        },
        "source": "IssueService",
        "topic": "ISSUE_DELETED",
        "severity": "Info",
        "returnCode": "ISSUE_DELETED",
        "timestamp": "2014-05-09T09:54:27",
        "unread": true,       
        "correlationId": null
    }
]

Log Service


Get all the log data
Resource: logs 

URLhttps://api-stage.bimplus.net/v2/logs

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

 GET

 Retrieves the whole log information from the beginning of the time.

It is always better to use the other log API call which retrieves the log info between the time interval as this API will cause serious bandwidth usage

Authorization: BimPlus 9c1874a62c974dcfa75e0132c423a088
Content-Type: application/json
Status: 200 OK
[
     {
        "id": 853539,
        "server": "K2177",
        "date": "2013-12-16T10:00:23",
        "requestid": "653750b3-a97e-451f-bd01-1a4671344087",
        "thread": "51",
        "level": "INFO",
        "logger": "PerformanceLog.ServiceLog",
        "message": "BEGIN Request (GET /v2/best-company/projects/679532b9-f7f7-41ce-817f-6e58225b32b1/disciplines)",
        "exception": "", 
        "userid": "123456789",
        "clientid":"987654321",
        "executiontime": "1234"
    },
    {
        "id": 853540,
        "server": "K2177",
        "date": "2013-12-16T10:00:23",
        "requestid": "653750b3-a97e-451f-bd01-1a4671344087",
        "thread": "51",
        "level": "INFO",
        "logger": "PerformanceLog.UserLog",
        "message": "User found byId: bestcustomer@bimplus.net",
        "exception": "",
        "userid": "123456789",
        "clientid":"987654321",
        "executiontime": "1234"
    },
    {
        "id": 853541,
        "server": "K2177",
        "date": "2013-12-16T10:00:23",
        "requestid": "653750b3-a97e-451f-bd01-1a4671344087",
        "thread": "51",
        "level": "INFO",
        "logger": "PerformanceLog.ServiceLog",
        "message": "END Request (GET /v2/best-company/projects/679532b9-f7f7-41ce-817f-6e58225b32b1/disciplines) with StatusCode 200; took 216 ms",
        "exception": "",
        "userid": "123456789",
        "clientid":"987654321",
        "executiontime": "1234"
    },.....]

Get the log data between the time interval  
Resource: logs 

URLhttps://api-stage.bimplus.net/v2/logs/<startDate>/<endDate>

Examplehttps://api-stage.bimplus.net/v2/logs/20130101/20130102

OR

https://api-stage.bimplus.net/v2/logs/201301011200/201301011400

 GET

 Retrieves the log information between the mentioned time interval. The time interval could be either date based(eg: between 01.01.2013,02.01.2013) or time based (between 01.01.2013 12:00, 01.01.2013 14:00)

Authorization: BimPlus 9c1874a62c974dcfa75e0132c423a088
Content-Type: application/json
Status: 200 OK
[
     {
        "id": 853539,
        "server": "K2177",
        "date": "2013-12-16T10:00:23",
        "requestid": "653750b3-a97e-451f-bd01-1a4671344087",
        "thread": "51",
        "level": "INFO",
        "logger": "PerformanceLog.ServiceLog",
        "message": "BEGIN Request (GET /v2/best-company/projects/679532b9-f7f7-41ce-817f-6e58225b32b1/disciplines)",
        "exception": "",
        "userid": "123456789",
        "clientid":"987654321",
        "executiontime": "1234"
    },
    {
        "id": 853540,
        "server": "K2177",
        "date": "2013-12-16T10:00:23",
        "requestid": "653750b3-a97e-451f-bd01-1a4671344087",
        "thread": "51",
        "level": "INFO",
        "logger": "PerformanceLog.UserLog",
        "message": "User found byId: bestcustomer@bimplus.net",
        "exception": "",
        "userid": "123456789",
        "clientid":"987654321",
        "executiontime": "1234"
    },
    {
        "id": 853541,
        "server": "K2177",
        "date": "2013-12-16T10:00:23",
        "requestid": "653750b3-a97e-451f-bd01-1a4671344087",
        "thread": "51",
        "level": "INFO",
        "logger": "PerformanceLog.ServiceLog",
        "message": "END Request (GET /v2/best-company/projects/679532b9-f7f7-41ce-817f-6e58225b32b1/disciplines) with StatusCode 200; took 216 ms",
        "exception": "",
        "userid": "123456789",
        "clientid":"987654321",
        "executiontime": "1234"
    },.....]

 

Bimplus Windows Explorer related Services


Bimplus Windows Explorer is the Windows desktop application AEC professionals and BIM managers use to upload, manage and analyze building information on the Bimplus platform for use by all contributors to your construction project. For more information please see here

Create a new objectview
Resource: objectlist

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

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

JSON Structure

Name

Mandatory / Optional

Type

Description

elementsId

mandatory

object

List of elements id

columnsListmandatoryobjectList of columns
tableNamemandatorystringName of the resource
columnNameoptionalstringName of the property
freeAttribIdoptionalstring(guid)Id of the used free attribute


 POST
 Create a new objectview
Authorization: BimPlus 9c1874a62c974dcfa75e0132c423a088
Content-Type: application/json
{
    "elementsId": [
        "8506156B-F965-4D51-9DD1-01D0C300601E",
        "CF9E6219-2962-4F21-B1DD-01DC4AB902E9",
        "1A8BF9BF-C912-4E2C-A633-F9BDEF46EB91"
    ],
    "columnsList": [
        {
            "tableName": "general",
            "columnName": "Name",
            "freeAttribId": null
        },
        {
            "tableName": "general",
            "columnName": "Description",
            "freeAttribId": null
        },
        {
            "tableName": "quantity",
            "columnName": "Length",
            "freeAttribId": null
        },
        {
            "tableName": "quantity",
            "columnName": "Height",
            "freeAttribId": null
        },
        {
            "tableName": "element",
            "columnName": "ElementTyp",
            "freeAttribId": null
        },
        {
            "tableName": "element",
            "columnName": "DivisionID",
            "freeAttribId": null
        },
        {
            "tableName": "stringattrib",
            "columnName": "",
            "freeAttribId": "C3071F78-2ACA-46D9-9883-13F5184EC499"
        },
        {
            "tableName": "doubleattrib",
            "columnName": "",
            "freeAttribId": "8D3D9DD5-C998-465B-B13E-87901C90F3BC"
        }
    ]
}
Status: 201 CREATED
{
    "elementsId": [
        "8506156B-F965-4D51-9DD1-01D0C300601E",
        "CF9E6219-2962-4F21-B1DD-01DC4AB902E9",
        "1A8BF9BF-C912-4E2C-A633-F9BDEF46EB91"
    ],
    "columnsList": [
        {
            "tableName": "general",
            "columnName": "Name",
            "freeAttribId": null
        },
        {
            "tableName": "general",
            "columnName": "Description",
            "freeAttribId": null
        },
        {
            "tableName": "quantity",
            "columnName": "Length",
            "freeAttribId": null
        },
        {
            "tableName": "quantity",
            "columnName": "Height",
            "freeAttribId": null
        },
        {
            "tableName": "element",
            "columnName": "ElementTyp",
            "freeAttribId": null
        },
        {
            "tableName": "element",
            "columnName": "DivisionID",
            "freeAttribId": null
        },
        {
            "tableName": "stringattrib",
            "columnName": "",
            "freeAttribId": "C3071F78-2ACA-46D9-9883-13F5184EC499"
        },
        {
            "tableName": "doubleattrib",
            "columnName": "",
            "freeAttribId": "8D3D9DD5-C998-465B-B13E-87901C90F3BC"
        }
    ]
}

Get the list of target objects(objectviews) which will be populated in the "Object Navigator List"
Resource: objectview 

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

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

 GET

 Get the list of target objectviews which will be populated in the "Object Navigator List"

Authorization: BimPlus 9c1874a62c974dcfa75e0132c423a088
Content-Type: application/json
Status: 200 OK
[
    {
        "viewname": "onProjectElements_Building",
        "resourcenameid": "Category.ElementBuilding",
        "iconid": "IconArchitectureWall",
        "sortcolumns": null,
        "projectfilter": null,
        "objectname": "Element",
        "ordernr": 21
    },
    {
        "viewname": "onProjectElements_Room",
        "resourcenameid": "Category.ElementRoom",
        "iconid": "IconArchitectureRoom",
        "sortcolumns": null,
        "projectfilter": null,
        "objectname": "Element",
        "ordernr": 22
    },
    {
        "viewname": "onProjectElements_Finish",
        "resourcenameid": "Category.ElementFinish",
        "iconid": "IconRoofLayer",
        "sortcolumns": null,
        "projectfilter": null,
        "objectname": "Element",
        "ordernr": 23
    },
    {
        "viewname": "onProjectElements_Reinforcement",
        "resourcenameid": "Category.Reinforcement",
        "iconid": "IconReinforcement",
        "sortcolumns": null,
        "projectfilter": null,
        "objectname": "Element",
        "ordernr": 24
    },
    {
        "viewname": "onProjectElements_Mesh",
        "resourcenameid": "Category.Mesh",
        "iconid": "IconMesh",
        "sortcolumns": null,
        "projectfilter": null,
        "objectname": "Element",
        "ordernr": 25
    },
    {
        "viewname": "onProjectElements_Precast",
        "resourcenameid": "Category.PrecastElement",
        "iconid": "IconPrecastUnit",
        "sortcolumns": null,
        "projectfilter": null,
        "objectname": "Element",
        "ordernr": 27
    },
    {
        "viewname": "onProjectElements_PrecastTimber",
        "resourcenameid": "Category.ElementPrecastTimber",
        "iconid": "IconFolder",
        "sortcolumns": null,
        "projectfilter": null,
        "objectname": "Element",
        "ordernr": 28
    },
    {
        "viewname": "onProjectElements_MEP",
        "resourcenameid": "Category.ElementMEP",
        "iconid": "IconFolder",
        "sortcolumns": null,
        "projectfilter": null,
        "objectname": "Element",
        "ordernr": 29
    },
    {
        "viewname": "onProjectElements_Plumbing",
        "resourcenameid": "Category.ElementPlumbing",
        "iconid": "IconFolder",
        "sortcolumns": null,
        "projectfilter": null,
        "objectname": "Element",
        "ordernr": 30
    },
    {
        "viewname": "onProjectElements_Electricity",
        "resourcenameid": "Category.ElementElectricity",
        "iconid": "IconFolder",
        "sortcolumns": null,
        "projectfilter": null,
        "objectname": "Element",
        "ordernr": 32
    },
    {
        "viewname": "onProjectElements_Mechanical",
        "resourcenameid": "Category.ElementMechanical",
        "iconid": "IconFolder",
        "sortcolumns": null,
        "projectfilter": null,
        "objectname": "Element",
        "ordernr": 34
    },
    {
        "viewname": "onProjectElements_Construction",
        "resourcenameid": "Category.ElementConstruction",
        "iconid": "IconFolder",
        "sortcolumns": null,
        "projectfilter": null,
        "objectname": "Element",
        "ordernr": 35
    },
    {
        "viewname": "onProjectElements_Terrain",
        "resourcenameid": "Category.ElementTerrain",
        "iconid": "IconFolder",
        "sortcolumns": null,
        "projectfilter": null,
        "objectname": "Element",
        "ordernr": 36
    },
    {
        "viewname": "onProjectElements_Inventary",
        "resourcenameid": "Category.ElementInventary",
        "iconid": "IconFolder",
        "sortcolumns": null,
        "projectfilter": null,
        "objectname": "Element",
        "ordernr": 37
    },
    {
        "viewname": "onProjectElements_Structural",
        "resourcenameid": "Category.ElementStructural",
        "iconid": "IconFolder",
        "sortcolumns": null,
        "projectfilter": null,
        "objectname": "Element",
        "ordernr": 38
    },
    {
        "viewname": "onProjectElements_Clash",
        "resourcenameid": "Category.Collision",
        "iconid": "IconCollision",
        "sortcolumns": null,
        "projectfilter": null,
        "objectname": "Collision",
        "ordernr": 39
    },
    {
        "viewname": "onProjectIssues",
        "resourcenameid": "Category.Issue",
        "iconid": "IconIssue",
        "sortcolumns": null,
        "projectfilter": null,
        "objectname": "Issue",
        "ordernr": 41
    }
]

Get information about an "Object Navigator" item (objectview)
Resource: objectviews/<objectview_name> 

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

Examplehttps://api-stage.bimplus.net/v2/bimplus/objectviews/onProjectElements_Building

 GET

 Get information about a particular objectview

Authorization: BimPlus 9c1874a62c974dcfa75e0132c423a088
Content-Type: application/json
Status: 200 OK
[
    {
        "viewname": "onProjectElements_Building",
        "resourcenameid": "Category.ElementBuilding",
        "iconid": "IconArchitectureWall",
        "sortcolumns": null,
        "projectfilter": null,
        "objectname": "Element",
        "ordernr": "21"
    }
]

Get the properties of the object (objectview)
Resource: objectviews/<objectview_name>/properties 

URLhttps://api-stage.bimplus.net/v2/<team_slug>/objectviews/<objectview_name>/properties

Examplehttps://api-stage.bimplus.net/v2/bimplus/objectviews/onProjectElements_Building/properties

 GET

 Get the properties of a particular objectview

Authorization: BimPlus 9c1874a62c974dcfa75e0132c423a088
Content-Type: application/json
Status: 200 OK
[
    {
        "name": "ObjectID",
        "ordernr": 1,
        "datatype": "uniqueidentifier",
        "isdefault": null,
        "categorynameid": null,
        "resourcenameid": null,
        "proporder": null,
        "converter": null,
        "browsable": "false",
        "iconid": null,
        "filterable": null
    },
    {
        "name": "Nr",
        "ordernr": 2,
        "datatype": "int",
        "isdefault": null,
        "categorynameid": "Category.General",
        "resourcenameid": null,
        "proporder": null,
        "converter": null,
        "browsable": null,
        "iconid": null,
        "filterable": null
    },
    {
        "name": "Name",
        "ordernr": 3,
        "datatype": "nvarchar",
        "isdefault": "true",
        "categorynameid": "Category.General",
        "resourcenameid": "Name",
        "proporder": null,
        "converter": "Converter_PPName",
        "browsable": null,
        "iconid": null,
        "filterable": null
    },
    {
        "name": "Description",
        "ordernr": 4,
        "datatype": "nvarchar",
        "isdefault": "true",
        "categorynameid": "Category.General",
        "resourcenameid": "Description",
        "proporder": null,
        "converter": null,
        "browsable": null,
        "iconid": null,
        "filterable": null
    },
    {
        "name": "DivisionID",
        "ordernr": 5,
        "datatype": "uniqueidentifier",
        "isdefault": null,
        "categorynameid": null,
        "resourcenameid": null,
        "proporder": null,
        "converter": null,
        "browsable": "false",
        "iconid": null,
        "filterable": null
    },
    {
        "name": "Division",
        "ordernr": 6,
        "datatype": "nvarchar",
        "isdefault": "true",
        "categorynameid": "Category.General",
        "resourcenameid": "Property.Model",
        "proporder": null,
        "converter": null,
        "browsable": null,
        "iconid": null,
        "filterable": null
    },
    {
        "name": "ModelType",
        "ordernr": 7,
        "datatype": "uniqueidentifier",
        "isdefault": "true",
        "categorynameid": "Category.General",
        "resourcenameid": "Property.Discipline",
        "proporder": null,
        "converter": "Converter_ElementType",
        "browsable": null,
        "iconid": null,
        "filterable": null
    },
    {
        "name": "ElementTyp",
        "ordernr": 8,
        "datatype": "uniqueidentifier",
        "isdefault": "true",
        "categorynameid": "Category.General",
        "resourcenameid": "Type",
        "proporder": null,
        "converter": "Converter_ElementType",
        "browsable": null,
        "iconid": null,
        "filterable": null
    },
    {
        "name": "Weight",
        "ordernr": 9,
        "datatype": "float",
        "isdefault": null,
        "categorynameid": "Category.Geometry",
        "resourcenameid": "Mass",
        "proporder": null,
        "converter": "Converter_Mass",
        "browsable": null,
        "iconid": null,
        "filterable": null
    },
    {
        "name": "Volume",
        "ordernr": 10,
        "datatype": "float",
        "isdefault": null,
        "categorynameid": "Category.Geometry",
        "resourcenameid": "Volume",
        "proporder": null,
        "converter": "Converter_Volume",
        "browsable": null,
        "iconid": null,
        "filterable": null
    },
    {
        "name": "Area",
        "ordernr": 11,
        "datatype": "float",
        "isdefault": null,
        "categorynameid": "Category.Geometry",
        "resourcenameid": "Area",
        "proporder": null,
        "converter": "Converter_Area",
        "browsable": null,
        "iconid": null,
        "filterable": null
    },
    {
        "name": "Length",
        "ordernr": 12,
        "datatype": "float",
        "isdefault": "true",
        "categorynameid": "Category.Geometry",
        "resourcenameid": "Element.Geometry.Length",
        "proporder": null,
        "converter": "Converter_Length",
        "browsable": null,
        "iconid": null,
        "filterable": null
    },
    {
        "name": "Width",
        "ordernr": 13,
        "datatype": "float",
        "isdefault": "true",
        "categorynameid": "Category.Geometry",
        "resourcenameid": "Element.Geometry.Width",
        "proporder": null,
        "converter": "Converter_Length",
        "browsable": null,
        "iconid": null,
        "filterable": null
    }
]

Get the required object's(objectview's) details from input objectview list reference
Resource: objectviews/content 

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

Examplehttps://api-stage.bimplus.net/v2/bimplus/objectviews/content

JSON Structure

Name

Mandatory / Optional

Type

Description

name

mandatory

string

Name of the resource/objectview

elementsguid

optional

object

List of object id's whose details has to be found

filteroptionalobjectThe properties that could be used as filters


 POST
 Get the required objectview's details from input object list reference
Authorization: BimPlus 9c1874a62c974dcfa75e0132c423a088
Content-Type: application/json
{
    "name": "onProjectElements_Building",
    "elementsguid": [
        "1F3E2F56-A94F-4486-97F5-21ACDF7A76AE",
        "54978C4C-B18B-4420-819D-405234FC11B4",
        "EB0472BE-1353-4E47-BE76-875924E0586F"
    ],
    "filter": [
        "ObjectId",
        "DivisionId",
        "Name",
        "Width",
        "ElementTyp"
    ]
}
Status: 200 OK
[
    {
        "objectid": "1f3e2f56-a94f-4486-97f5-21acdf7a76ae",
        "divisionid": "06a78b8f-c692-46d1-a16e-f878b6a86f17",
        "name": "Wall",
        "elementtyp": "10074eef-9418-4d64-9c6d-23932835a7f1",
        "width": 300
    },
    {
        "objectid": "54978c4c-b18b-4420-819d-405234fc11b4",
        "divisionid": "06a78b8f-c692-46d1-a16e-f878b6a86f17",
        "name": "Wall",
        "elementtyp": "10074eef-9418-4d64-9c6d-23932835a7f1",
        "width": 300
    },
    {
        "objectid": "eb0472be-1353-4e47-be76-875924e0586f",
        "divisionid": "06a78b8f-c692-46d1-a16e-f878b6a86f17",
        "name": "Wall",
        "elementtyp": "10074eef-9418-4d64-9c6d-23932835a7f1",
        "width": 300
    }
]
 

Delete the object view
Resource: objectviews/<objectview_id>

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

Examplehttps://api-stage.bimplus.net/v2/bimplus/objectviews/0d2ce2cc-3588-45d6-a59a-f6b89ebed34e

 DELETE
 Deletes a specified user defined view(object view).
Authorization: BimPlus 9c1874a62c974dcfa75e0132c423a088
Content-Type: application/json
Status: 200 OK

Create a new hierarchy
Resource: usersettings/hierarchies/<hierarchy_id>

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

Examplehttps://api-stage.bimplus.net/v2/bimplus/hierarchies/aaaaa213-1a6e-4aa2-b032-d5aeb8f31c97

JSON Structure

Name

Mandatory / Optional

Type

Description

 moduleId mandatorystring(guid) Guid of the module

objectId

mandatory

string(guid)

Guid of the object type

userIdmandatorystring(guid)Guid of the user
categoryoptionalstringName of the category(default is "ObjectNavigator")
oneExtendedDatamandatoryobjectAdditional information
valueKeymandatorystringkey name
valueNamemandatorystringValue of the key
valuemandatorystringContent of stored value
isDefaultoptionalbooleanWhether it is the default value
dataSmallIntoptionalintegerAdditional info about the value


 POST
 Create a new hierarchy
Authorization: BimPlus 9c1874a62c974dcfa75e0132c423a088
Content-Type: application/json
{
    "objectId": "1F15C447-E511-4FC1-940B-13639F973C52",
    "moduleId": "3e3b1ae3-8955-4c4e-803e-2d56a4a8e50d",
    "userId": "A612E213-1A6E-4AA2-B032-D5AEB8F31C97",
    "category": "ObjectNavigator",
    "oneExtendedData": {
        "valueKey": "[onProjectElements_Building]onProjectElements_Building",
        "valueName": "test xxx",
        "value": "[I]Name[I]Length[F][0]<1700[2]>=415[4]=0[10]AND[11]AND[12]AND[13]AND[14]AND",
        "isDefault": "0",
        "dataSmallInt": "1"
    }
}
Status: 200 OK
{
    "objectId": "1F15C447-E511-4FC1-940B-13639F973C52",
    "moduleId": "3e3b1ae3-8955-4c4e-803e-2d56a4a8e50d",
    "userId": "A612E213-1A6E-4AA2-B032-D5AEB8F31C97",
    "category": "ObjectNavigator",
    "oneExtendedData": {
        "valueKey": "[onProjectElements_Building]onProjectElements_Building",
        "valueName": "test xxx",
        "value": "[I]Name[I]Length[F][0]<1700[2]>=415[4]=0[10]AND[11]AND[12]AND[13]AND[14]AND",
        "isDefault": "0",
        "dataSmallInt": "1"
    }
}

Create a list of hierarchies
Resource: usersettings/hierarchies?$operation=createlist

URLhttps://api-stage.bimplus.net/v2/<team_slug>/usersettings/hierarchies?$operation=createlist

Examplehttps://api-stage.bimplus.net/v2/bimplus/usersettings/hierarchies?$operation=createlist

JSON Structure

Name

Mandatory / Optional

Type

Description

 moduleId mandatorystring(guid) Guid of the module

objectId

mandatory

string(guid)

Guid of the object type

userIdmandatorystring(guid)Guid of the user
categoryoptionalstringName of the category(default is "ObjectNavigator")
oneExtendedDatamandatoryobjectAdditional information
valueKeymandatorystringkey name
valueNamemandatorystringValue of the key
valuemandatorystringContent of stored value
isDefaultoptionalbooleanWhether it is the default value
dataSmallIntoptionalintegerAdditional info about the value


 POST
 Create a new hierarchy
Authorization: BimPlus 9c1874a62c974dcfa75e0132c423a088
Content-Type: application/json
{
    "objectId": "1F15C447-E511-4FC1-940B-13639F973C52",
    "moduleId": "3e3b1ae3-8955-4c4e-803e-2d56a4a8e50d",
    "userId": "A612E213-1A6E-4AA2-B032-D5AEB8F31C97",
    "category": "ObjectNavigator",
    "extendedDataList": [
        {
            "userSettingId": "1FABF447-E511-4FC1-940B-D5AEB8F31C97",
            "valueKey": "[onProjectElements_Building]onProjectElements_Building",
            "valueName": "pokus 001",
            "value": "[I]Name[I]Length[F][0]<7777[2]>=415[4]=0[10]AND[11]AND[12]AND[13]AND[14]AND",
            "isDefault": "false",
            "dataSmallInt": "1"
        },
        {
            "userSettingId": "53AB1047-E611-4FC1-940B-D5AEB8F31012",
            "valueKey": "[onProjectElements_Building]onProjectElements_Building",
            "valueName": "pokus 002",
            "value": "[I]Name[I]Length[F][0]<2222[2]>=415[4]=0[10]AND[11]AND[12]AND[13]AND[14]AND",
            "isDefault": "false",
            "dataSmallInt": "1"
        }
    ]
}
Status: 200 OK
{
    "objectId": "1F15C447-E511-4FC1-940B-13639F973C52",
    "moduleId": "3e3b1ae3-8955-4c4e-803e-2d56a4a8e50d",
    "userId": "A612E213-1A6E-4AA2-B032-D5AEB8F31C97",
    "category": "ObjectNavigator",
    "extendedDataList": [
        {
            "userSettingId": "1FABF447-E511-4FC1-940B-D5AEB8F31C97",
            "valueKey": "[onProjectElements_Building]onProjectElements_Building",
            "valueName": "pokus 001",
            "value": "[I]Name[I]Length[F][0]<7777[2]>=415[4]=0[10]AND[11]AND[12]AND[13]AND[14]AND",
            "isDefault": "false",
            "dataSmallInt": "1"
        },
        {
            "userSettingId": "53AB1047-E611-4FC1-940B-D5AEB8F31012",
            "valueKey": "[onProjectElements_Building]onProjectElements_Building",
            "valueName": "pokus 002",
            "value": "[I]Name[I]Length[F][0]<2222[2]>=415[4]=0[10]AND[11]AND[12]AND[13]AND[14]AND",
            "isDefault": "false",
            "dataSmallInt": "1"
        }
    ]
}

Create a complete new hierarchy structure
Resource: services/applyhierarchy

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

Examplehttps://api-stage.bimplus.net/v2/bimplus/services/applyhierarchy

JSON Structure

Name

Mandatory / Optional

Type

Description

 projectId mandatorystring(guid) Id of the project for which the structure will be created

userSettingId

mandatory

string(guid)

Id of the user settings required for the hierarchy definition

hierarchyDefinitionmandatorystringDefinition of the hierarchy
namemandatorystringName of the hierarchy
descriptionoptionalstringDescription of the hierarchy
structureTypeoptionalstringStructure type
elementsIdoptionalArray of strings(guid)List of elements guid connected to the hierarchy structure


 POST
 Create a complete new hierarchy structure
Authorization: BimPlus 9c1874a62c974dcfa75e0132c423a088
Content-Type: application/json
{
    "runAsync": "false",
    "applyHierarchy": {
        "projectId": "01C52808-6561-47F6-833E-B62D05DA8A8E",
        "hierarchyDefinition": "[I]tabAttribGeneral.Name[I]tabAttribGeometry.Length[I] tabAttribGeometry.Width[I][8807e401-6e3c-4536-88e1-e834d4de745d].Value",
        "name": "Navigator 1",
        "description": "Test for HierarchyNavigator",
        "structureType": "CostStructure",
        "elementsId": [
            "803312C0-26B6-49BE-A607-4319F1B32383",
            "51FEF0FA-437B-4410-B9BE-39B9E15D440F",
            "71D472FD-96A5-4174-8A5A-460DEB8E88E1"
        ]
    }
}
Status: 201 CREATED
{
    "applyHierarchy": {
        "projectId": "01c52808-6561-47f6-833e-b62d05da8a8e",
        "hierarchyDefinition": "[I]tabAttribGeneral.Name[I]tabAttribGeometry.Length[I]tabAttribGeometry.Width[I] [8807e401-6e3c-4536-88e1-e834d4de745d].Value",
        "name": "Navigator 1",
        "description": "Test for HierarchyNavigator",
        "structureType": "CostStructure",
        "elementsId": [
            "803312c0-26b6-49be-a607-4319f1b32383",
            "51fef0fa-437b-4410-b9be-39b9e15d440f",
            "71d472fd-96a5-4174-8a5a-460deb8e88e1"
        ],
        "result": {
            "projectId": "01c52808-6561-47f6-833e-b62d05da8a8e",
            "parentId": "01c52808-6561-47f6-833e-b62d05da8a8e",
            "name": "Navigator 1",
            "description": "Test for HierarchyNavigator",
            "type": "CostStructure",
            "nr": 45,
            "color": 0,
            "id": "dd71620e-af8f-4496-88a5-cc2be1f1747d"
        }
    },
    "runAsync": false
}

Get all the user hierarchies using the user & module information
Resource: usersettings/heirarchies?moduleId=xxx;userId=yyy;category=zzz

URLhttps://api-stage.bimplus.net/v2/<team_slug>/usersettings/heirarchies?moduleId=xxx;userId=yyy;category=zzz

Examplehttps://api-stage.bimplus.net/v2/bimplus/usersettings/heirarchies?moduleId=3e3b1ae3-8955-4c4e-803e-2d56a4a8e50d;userId=a612e213-1a6e-4aa2-b032-d5aeb8f31c97;category=ObjectNavigator

JSON Structure

Name

Mandatory / Optional

Type

Description

moduleid

mandatory

guid

Id of the module

userid

mandatory

guid

Id of the user

categoryoptionalstringcategory name (default category is "ObjectNavigator")


 GET
 Get all the user hierarchies using the user & module information
Authorization: BimPlus 9c1874a62c974dcfa75e0132c423a088
Content-Type: application/json
Status: 200 OK
[
    {
        "attribusersettingid": "511d2c35-d7a6-4e76-82f0-172a64c322b6",
        "objectid": "1f15c447-e511-4fc1-940b-13639f973c52",
        "module": "3e3b1ae3-8955-4c4e-803e-2d56a4a8e50d",
        "userid": "a612e213-1a6e-4aa2-b032-d5aeb8f31c97",
        "category": "ObjectNavigator",
        "isdefault": false,
        "valuekey": "[onProjectElements_Building]",
        "valuename": "onProjectElements_Building",
        "value": "Name[I]Description[I]Division[I]ModelType[I]ElementTyp[I]Length[I]Width",
        "datasmallint": null,
        "revision": null
    },
    {
        "attribusersettingid": "909c9802-a339-4a60-8fff-64ea495f6136",
        "objectid": "1f15c447-e511-4fc1-940b-13639f973c52",
        "module": "3e3b1ae3-8955-4c4e-803e-2d56a4a8e50d",
        "userid": "a612e213-1a6e-4aa2-b032-d5aeb8f31c97",
        "category": "ObjectNavigator",
        "isdefault": false,
        "valuekey": "[onProjectElements_Electricity]",
        "valuename": "onProjectElements_Electricity",
        "value": "Name[I]Description[I]Division[I]ModelType[I]ElementTyp[I]Length[I]Width",
        "datasmallint": null,
        "revision": null
    },
    {
        "attribusersettingid": "e4ca5278-98da-4809-9582-6815bbab2200",
        "objectid": "1f15c447-e511-4fc1-940b-13639f973c52",
        "module": "3e3b1ae3-8955-4c4e-803e-2d56a4a8e50d",
        "userid": "a612e213-1a6e-4aa2-b032-d5aeb8f31c97",
        "category": "ObjectNavigator",
        "isdefault": false,
        "valuekey": "[onProjectElements_MEP]",
        "valuename": "onProjectElements_MEP",
        "value": "Name[I]Description[I]Division[I]ModelType[I]ElementTyp[I]Weight[I]Length[I]Width",
        "datasmallint": 0,
        "revision": null
    }
]

Get the details of a hierarchy
Resource: usersettings/heirarchies/hierarchy_id> 

URLhttps://api-stage.bimplus.net/v2/<team_slug>/usersettings/heirarchies/hierarchy_id>

Examplehttps://api-stage.bimplus.net/v2/bimplus/usersettings/heirarchies/B39AD364-F049-42E3-A936-3FD2871EB4D4

 GET

 Get information about a particular hierarchy

Authorization: BimPlus 9c1874a62c974dcfa75e0132c423a088
Content-Type: application/json
Status: 200 OK
{
    "attribusersettingid": "b39ad364-f049-42e3-a936-3fd2871eb4d4",
    "objectid": "1f15c447-e511-4fc1-940b-13639f973c52",
    "module": "3e3b1ae3-8955-4c4e-803e-2d56a4a8e50d",
    "userid": "a612e213-1a6e-4aa2-b032-d5aeb8f31c97",
    "category": "ObjectNavigator",
    "isdefault": false,
    "valuekey": "[onProjectElements_Building]onProjectElements_Building",
    "valuename": "Hierarchie Nr.1",
    "value": "[I]Name[I]Length[F][0]<3000[2]>=215[4]=0[10]AND[11]AND[12]AND[13]AND[14]AND[I]Width[F][0]<1000[2]>400[10]AND[11]AND[12]AND[13]AND[14]AND",
    "datasmallint": 1,
    "revision": null
}

Get details about a list of hierarchies
Resource: usersettings/heirarchies?$operation=getlist

URLhttps://api-stage.bimplus.net/v2/<team_slug>/usersettings/heirarchies?$operation=getlist

Examplehttps://api-stage.bimplus.net/v2/bimplus/usersettings/heirarchies?$operation=getlist

JSON Structure

Name

Mandatory / Optional

Type

Description

userSettingsListId

mandatory

object

List of hierarchy ids


 GET

 Get details about a list of hierarchies

Authorization: BimPlus 9c1874a62c974dcfa75e0132c423a088
Content-Type: application/json
{
 "userSettingsListId": [
 "AAAAA213-1111-4AA2-B032-D5AEB8F31C97",
 "AAAAA213-2222-4AA2-B032-D5AEB8F31C97"
 ]
}
Status: 200 OK
[
    {
        "attribusersettingid": "511d2c35-d7a6-4e76-82f0-172a64c322b6",
        "objectid": "1f15c447-e511-4fc1-940b-13639f973c52",
        "module": "3e3b1ae3-8955-4c4e-803e-2d56a4a8e50d",
        "userid": "a612e213-1a6e-4aa2-b032-d5aeb8f31c97",
        "category": "ObjectNavigator",
        "isdefault": false,
        "valuekey": "[onProjectElements_Building]",
        "valuename": "onProjectElements_Building",
        "value": "Name[I]Description[I]Division[I]ModelType[I]ElementTyp[I]Length[I]Width",
        "datasmallint": null,
        "revision": null
    },
    {
        "attribusersettingid": "909c9802-a339-4a60-8fff-64ea495f6136",
        "objectid": "1f15c447-e511-4fc1-940b-13639f973c52",
        "module": "3e3b1ae3-8955-4c4e-803e-2d56a4a8e50d",
        "userid": "a612e213-1a6e-4aa2-b032-d5aeb8f31c97",
        "category": "ObjectNavigator",
        "isdefault": false,
        "valuekey": "[onProjectElements_Electricity]",
        "valuename": "onProjectElements_Electricity",
        "value": "Name[I]Description[I]Division[I]ModelType[I]ElementTyp[I]Length[I]Width",
        "datasmallint": null,
        "revision": null
    }
]

Delete the hierarchy
Resource: usersettings/hierarchies/<hierarchy_id>

URLhttps://api-stage.bimplus.net/v2/<team_slug>/usersettings/hierarchies/<hierarchy_id>

Examplehttps://api-stage.bimplus.net/v2/bimplus/usersettings/hierarchies/0d2ce2cc-3588-45d6-a59a-f6b89ebed34e

 DELETE
 Deletes a specific hierarchy.
Authorization: BimPlus 9c1874a62c974dcfa75e0132c423a088
Content-Type: application/json
Status: 200 OK

Delete the list of hierarchies
Resource: usersettings/hierarchies?$operation=deletelist

URLhttps://api-stage.bimplus.net/v2/<team_slug>/usersettings/hierarchies?$operation=deletelist

Examplehttps://api-stage.bimplus.net/v2/bimplus/usersettings/hierarchies?$operation=deletelist

JSON Structure

Name

Mandatory / Optional

Type

Description

userSettingsListId

mandatory

object

List of hierarchy ids that has to be deleted


 DELETE
 Deletes the list of hierarchies as specified in the request
Authorization: BimPlus 9c1874a62c974dcfa75e0132c423a088
Content-Type: application/json
{
 "userSettingsListId": [
 "AAAAA213-1111-4AA2-B032-D5AEB8F31C97",
 "AAAAA213-2222-4AA2-B032-D5AEB8F31C97"
 ]
}
Status: 200 OK

Delete all the hierarchies filtered by additional info
Resource: usersettings/hierarchies?moduleId=xxx;userId=<yyy>;category=<name>;objectId=<zzz>

URLhttps://api-stage.bimplus.net/v2/<team_slug>/usersettings/hierarchies?moduleId=<xxx>;userId=<yyy>;category=<name>;objectId=<zzz>

Examplehttps://api-stage.bimplus.net/v2/bimplus/usersettings/hierarchies?moduleId=3e3b1ae3-8955-4c4e-803e-2d56a4a8e50d;userId=a612e213-1a6e-4aa2-b032-d5aeb8f31c97;category=ObjectNavigator;objectId=1F15C447-E511-4FC1-940B-13639F973C52

JSON Structure

Name

Mandatory / Optional

Type

Description

moduleId

mandatory

string(guid)

Id of the module

userIdmandatorystring(guid)Id of the user
objectIdoptionalstring(guid)Id of the object (default is "1F15C447-E511-4FC1-940B-13639F973C52")
CategoryoptionalstringName of the category (default is "ObjectNavigator")


 DELETE
 Deletes all the hierarchies filtered by additional info specified as query strings.
Authorization: BimPlus 9c1874a62c974dcfa75e0132c423a088
Content-Type: application/json
{
 "userSettingsListId": [
 "AAAAA213-1111-4AA2-B032-D5AEB8F31C97",
 "AAAAA213-2222-4AA2-B032-D5AEB8F31C97"
 ]
}
Status: 200 OK

Create a property setting
Resource: propertysettings/<propertysetting_id>

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

Examplehttps://api-stage.bimplus.net/v2/bimplus/propertysettings/aaaaa213-1a6e-4aa2-b032-d5aeb8f31c97

JSON Structure

Name

Mandatory / Optional

Type

Description

 attributes mandatoryobject List of attributes


 POST
 Create a new property setting
Authorization: BimPlus 9c1874a62c974dcfa75e0132c423a088
Content-Type: application/json
{
    "attributes": {
        "general": [
            "Name",
            "Description"
        ],
        "quantity": [
            "Length",
            "Width",
            "Height",
            "Volume"
        ],
        "freeattribute": [
            "59AB0000-4100-4020-B0D0-01D3EEDF5389",
            "CFF9B525-DE61-4E66-A040-BF7437495BEB"
        ],
        "elementstates": [
            "State"
        ]
    }
}
Status: 201 CREATED
{
    "attributes": {
        "general": [
            "Name",
            "Description"
        ],
        "quantity": [
            "Length",
            "Width",
            "Height",
            "Volume"
        ],
        "freeattribute": [
            "59AB0000-4100-4020-B0D0-01D3EEDF5389",
            "CFF9B525-DE61-4E66-A040-BF7437495BEB"
        ],
        "elementstates": [
            "State"
        ]
    }
}

Get the property setting details
Resource: propertysettings/<propertysetting_id>

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

Examplehttps://api-stage.bimplus.net/v2/bimplus/propertysettings/B39AD364-F049-42E3-A936-3FD2871EB4D4

 GET

 Get information about a particular property setting

Authorization: BimPlus 9c1874a62c974dcfa75e0132c423a088
Content-Type: application/json
Status: 200 OK
{
    "attributes": {
        "general": [
            "Name",
            "Description"
        ],
        "quantity": [
            "Length",
            "Width",
            "Height",
            "Volume"
        ],
        "freeattribute": [
            "59AB0000-4100-4020-B0D0-01D3EEDF5389",
            "CFF9B525-DE61-4E66-A040-BF7437495BEB"
        ],
        "elementstates": [
            "State"
        ]
    }
}

Update the property setting
Resourcepropertysettings/<propertysetting_id>

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

Examplehttps://api-stage.bimplus.net/v2/bimpluspropertysettings/0d2ce2cc-3588-45d6-a59a-f6b89ebed34e

JSON Structure

Name

Mandatory / Optional

Type

Description

attributes

mandatory

object

List of attributes

 PUT
 Update the property setting
Authorization: BimPlus 9c1874a62c974dcfa75e0132c423a088
Content-Type: application/json
{
    "attributes": {
        "general": [
            "Name",
            "Description"
        ],
        "quantity": [
            "Length",
            "Width",
            "Height",
            "Volume"
        ],
        "freeattribute": [
            "59AB0000-4100-4020-B0D0-01D3EEDF5389",
            "CFF9B525-DE61-4E66-A040-BF7437495BEB"
        ],
        "elementstates": [
            "State"
        ]
    }
}
Status: 200 OK

Delete the property setting
Resource: propertysettings/<propertysetting_id> 

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

Examplehttps://api-stage.bimplus.net/v2/bimplus/propertysettings/0d2ce2cc-3588-45d6-a59a-f6b89ebed34e

 DELETE
 Delete all the issues belonging to a specified project.
Authorization: BimPlus 9c1874a62c974dcfa75e0132c423a088
Content-Type: application/json
Status: 200 OK