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

Compare with Current View Page History

« Previous Version 155 Next »

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

Standard Procedure

Developers please use https://api-stage.bimplus.net/v2 (stage version of Bimplus API) and http://portal-stage.bimplus.net/ (stage version of Shop/Portal) for testing purposes. The production version of the portal is located under  https://portal.bimplus.net/   and the base url of the API is different for the production version.

Generally, the Bimplus REST API calls consist of five steps for accessing the resources.

1. Developer Registration

Generally our portal  https://www-stage.bimplus.net/ is the first place of contact of the user/developer for using the Bimplus platform. Please do the developer registration here.

2. Authentication token request

The authentication request for accessing the BimPlus resource should be sent in the JSON format using the Authorization service. The registered user name and password in the Bimplus portal should be provided here.

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

     POST
     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 (browser, Apps etc)

    application_id

    optional

    string

    The id of the application

    Authenticates a user and returns a token which can be used for further API calls for accessing the desired resources.
    Headers
    Content-Type: application/json
    
    JSON
    {
     "user_id" : "test@bimplus.net",
     "password" : "test"
    }
    Status
    Status: 200 OK
    
    JSON
    {
    "access_token": "9c1874a62c974dcfa75e0132c423a088",
    "expires_in": 2591999,
    "client_id" : "1FD44C0E-DCB4-11E2-A114-67286288709B"
    "token_type": "BimPlus"
    }

    3. Receive the authentication token 

    The token is received in the request.

       POST
       Resource: authorize 

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

       Authenticates a user and returns a token which can be used for further API calls for accessing the desired resources.
      Headers
      Content-Type: application/json
      
      JSON
      {
       "user_id" : "test@bimplus.net",
       "password" : "test"
      }
      Status
      Status: 200 OK
      
      JSON
      {
      "access_token": "9c1874a62c974dcfa75e0132c423a088",
      "expires_in": 2591999,
      "client_id" : "1FD44C0E-DCB4-11E2-A114-67286288709B"
      "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

      client_id

      The identifier of the used client (browser, Apps etc)

      token_type

      The type of token – currently we use ‚bimplus‘

      4. Get the team information

      The team has to be specified and setup through the  bimplus portal as so-called slugs  to present a clean URL . 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.

         GET
         Resource: teams 

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

         Get all the available teams.
        Headers
        Authorization: BimPlus c939ebf5b96646528e0022a35f7a2e67
        Content-Type: application/json
        
        Status
        Status: 200 OK
        
        JSON
        [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"
        }

        5. 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 Bimplus REST API .

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

           GET
           Resource: projects 

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

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

           Get available project list with main properties.
          Headers
          Authorization: BimPlus c939ebf5b96646528e0022a35f7a2e67
          Content-Type: application/json
          
          Status
          Status: 200 OK
          
          JSON
          [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/

          • No labels