Standard Procedure

Note: Please use  for the testing purposes because our productive server  is not available to the market yet.

Generally, the Bim+ REST API calls consist of four steps for accessing the resources.

1. Authentication token request 

The authentication request for accessing the BimPlus resource should be sent in the JSON format using the Authorization service.

 Service available !

POST

Resource: authorize 

URLhttps://api.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 (date)

The identifier of the used client

Authenticates a user and returns a token which can be used for further API calls for accessing the desired resources.

Content-Type: application/json


{
 "user_id" : "test@bimplus.net",
 "password" : "test"
}
Status: 200 OK


{
access_token: "9c1874a62c974dcfa75e0132c423a088"
expires_in: 2591999
token_type: "BimPlus"
}

2. Receive the authentication token 

The token is received in the request.

 Service available !

POST

Resource: authorize 

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

Authenticates a user and returns a token which can be used for further API calls for accessing the desired resources.

Content-Type: application/json


{
 "user_id" : "test@bimplus.net",
 "password" : "test"
}
Status: 200 OK


{
access_token: "c939ebf5b96646528e0022a35f7a2e67"
expires_in: 2591999
token_type: "BimPlus"
}

where,

access_token

The token to be used in any further API calls within the HTTP headers

expires_in

The remaining lifetime on the access token in seconds

token_type

The type of token – currently we use ‚bimplus'

3. Get the team information

The team has to be specified and setup through the  portal as so-called  to present a . Slugs are lowercase unique identifiers based on English characters and numbers. The team slug will be used to know which tenant database to work on. If you are not sure of your team slug please use our .

 Service available !

GET

Resource: teams 

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

Get all the available teams.

Authorization: BimPlus c939ebf5b96646528e0022a35f7a2e67
Content-Type: application/json
Status: 200 OK


[2]
0:  {
id: "82884f54-96bf-4e9c-a2fb-44db8379378d"
slug: "nemetschek"
name: "Nemetschek"
owner: "132a78a5-b523-4bf2-8382-7098fac3f803"
totalStorage: 0
storageStats: null
status: "Active"
teamWorksConnection: "RGF0YSBTb3VyY2U9YmltcGx1cy5tYW50cm8ubmV0OyBJbml0aWFsIENhdGFsb2c9QmltUGx1cy5UZW5hbnQuRGV2OyBVc2VyIElkPWRiYmltbWFudHJvdGVzdDsgUGFzc3dvcmQ9MWprdGNudG9DcU9qeGtIMU9QOXg7IENvbm5lY3QgdGltZW91dD0xMA=="
dataStorageStatus: "Online"
}-
1:  {
id: "7eab1453-a4e7-4d05-983e-031544540e6f"
slug: "bimplus-demo"
name: "BimPlus Demo"
owner: "5592c628-588e-f5c0-b08b-088d43de9209"
totalStorage: 53687091200
storageStats: null
status: "Active"
teamWorksConnection: "RGF0YSBTb3VyY2U9YmltcGx1cy5tYW50cm8ubmV0O0luaXRpYWwgQ2F0YWxvZz1CaW1QbHVzLlRlbmFudC5iaW1wbHVzLWRlbW87VXNlciBJRD1iaW1wbHVzLWRlbW87UGFzc3dvcmQ9YWI3ZDRmNDc5ZGM4YjI1Yjg2MDc0Y2ZmZTNiNDBjZmY2OWQwNzQ1YjtDb25uZWN0IFRpbWVvdXQ9MTA="
dataStorageStatus: "Online"
}

4. Request the desired resource

Using the authentication token and the team slug, the necessary resource can be accessed and the desired action can be performed on that resource using the .

For example, we can use this token to get the project list.

 Service available !

GET

Resource: projects 

URLhttps://api.bimplus.net/v2/<team>/projects

Examplehttps://api.bimplus.net/v2/nemetschek/projects

Get available project list with main properties.

Authorization: BimPlus c939ebf5b96646528e0022a35f7a2e67
Content-Type: application/json
Status: 200 OK


[3]
0:  {
id: "c8c8e6f2-4495-484c-929d-0049f1f9d4ff"
name: "!!!!!_VORTEILSHAUS V40 SD45 Traufeingang"
}-
1:  {
id: "2d703abe-b4f9-407c-af53-a39c5b7ba872"
name: "__5 999 Parklife Salzburg Lehen"
}-
2:  {
id: "c480cc54-aec4-4bef-8d35-93bb090e1aba"
name: "0811-Wohnhaus Kraus - Carport1"
}

Tools 


Plugins for doing REST based calls (REST Client) 

Chrome --> Advanced REST clientPostman - REST clientSimple REST client

Firefox --> RESTClient

For validating or formatting JSON --> http://jsonlint.com/