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

Compare with Current View Page History

« Previous Version 41 Next »




Rights and Roles Service


Rights and Roles Templates


Rights and Roles

Rights and Roles Service


Rights and Roles Templates

Create new project right and roles template
    Resource: projectrightsrolestemplates

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

    Example: https://api-stage.bimplus.net/v2/bimplus/projectrightsrolestemplates

    JSON Structure

    Name

    Mandatory / Optional

    Type

    Description

    name

    mandatory

    string

    Unique name of the project rights and roles template 

    description

    optional

    string

    Short description of the project rights and roles template

     POST

    Creates a new project right and roles template.

    Headers
    Authorization: BimPlus 9c1874a62c974dcfa75e0132c423a088
    Content-Type: application/json
    
    JSON
    {
      "name":"My project rights and roles template",
      "description":"Project rights and roles template description"
    }
    Status
    Status: 201 Created
    
    JSON
    {
      "id":"49d13da3-2acf-4f0b-b667-40fc0197585f",
      "name":"My project rights and roles template",
      "description":"Project rights and roles template description"
    }


    Get the list of existing project rights and roles templates
      Resource: projectsrightsrolestemplates

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

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

       GET
      Get all the project rights and roles templates that belongs to a team. Each team has at least one default project rights and roles template.
      Headers
      Authorization: BimPlus 9c1874a62c974dcfa75e0132c423a088
      Content-Type: application/json
      
      Status
      Status: 200 OK
      
      JSON
      [
        {
          "id":"49d13da3-2acf-4f0b-b667-40fc0197585f",
          "name":"My project rights and roles template",
          "description":"Project rights and roles template description"
        },
        {
          "id":"1996f9a0-fe24-4dc7-8140-0cfb98d31442",
          "name":"CustomProjectRightsRolesTemplate",
          "description":"Custom template for rights and roles"
        },
        {
          "id":"482176be-84ab-4d8f-93e4-2c58863d4eae",
          "name":"DefaultProjectRightsRolesTemplate",
          "description":"Default template for rights and roles"
        }
      ]

      Get the info about a particular project rights and roles template
        Resource: projectrightsrolestemplates

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

        Examplehttps://api-stage.bimplus.net/v2/bimplus/projectsrightsrolestemplates/49d13da3-2acf-4f0b-b667-40fc0197585f

         GET
        Get the info about a particular project rights and roles template that belongs to a particular team.
        Headers
        Authorization: BimPlus 9c1874a62c974dcfa75e0132c423a088
        Content-Type: application/json
        
        Status
        Status: 200 OK
        
        JSON
        {
          "id":"49d13da3-2acf-4f0b-b667-40fc0197585f",
          "name":"My project rights and roles template",
          "description":"Project rights and roles template description"
        }

        Update a particular project rights and roles template
          Resource: projectrightsrolestemplates

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

          Example: https://api-stage.bimplus.net/v2/bimplus/projectrightsrolestemplates/49d13da3-2acf-4f0b-b667-40fc0197585f

          JSON Structure: See Create project rights and roles template

           PUT
           Update a particular project rights and roles template that belongs to a particular team.
          Headers
          Authorization: BimPlus 9c1874a62c974dcfa75e0132c423a088
          Content-Type: application/json
          
          JSON
          {
            "name":"My project rights and roles template 2",
            "description":"Project rights and roles template description 2"
          }
          Status
          Status: 200 OK
          
          JSON
          {
            "id":"49d13da3-2acf-4f0b-b667-40fc0197585f",
            "name":"My project rights and roles template 2",
            "description":"Project rights and roles template description 2"
          }

          Delete the project rights and roles template
            Resource: projectrightsrolestemplates

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

            Examplehttps://api-stage.bimplus.net/v2/bimplus/projectrightsrolestemplates/49d13da3-2acf-4f0b-b667-40fc0197585f

             DELETE
             Deletes the specific project rights and roles template.
            Headers
            Authorization: BimPlus 9c1874a62c974dcfa75e0132c423a088
            Content-Type: application/json
            
            Status
            Status: 200 OK
            

            Copy content project rights and roles template from source to target project rights and roles template

              Resource: projectrightsrolestemplates/<targetprojectrightsrolestemplates_id>/copyfrom

              URLhttps://api-stage.bimplus.net/v2/<team_slug>/projectrightsrolestemplates/<targetprojectrightsrolestemplates_id>/copyfrom

              Example:https://api-stage.bimplus.net/v2/bimplus/projectsrightsrolestemplates/49d13da3-2acf-4f0b-b667-40fc0197585f/copyfrom

              JSON Structure 

              Name

              Mandatory / Optional

              Type

              Description

              name

              will be ignored

              string

              Name of the project rights and roles template

              description

              will be ignored

              string

              Description of the project rights and roles template

              id mandatory string(guid) Unique guid of the source project rights and roles template

               

              PUT

              Updates the specified target project rights and roles template with all roles from source project rights and roles template.
              When project rights and roles template id is missing will be used internally default project right and roles template (Guid as "482176be-84ab-4d8f-93e4-2c58863d4eae") as a source project right and roles template.

              Note:
              In case when some roles are already assigned to target project rights and roles template and the same role is present also in source project rights and roles template,
              in such case roles will be added to target project rights and roles template.

              Headers
              Authorization: BimPlus 9c1874a62c974dcfa75e0132c423a088
              Content-Type: application/json
              
              JSON
              {
                  "id": "482176be-84ab-4d8f-93e4-2c58863d4eae"
              }
              Status
              
               
              JSON
              {
                "id":"49d13da3-2acf-4f0b-b667-40fc0197585f",
                "name":"My project rights and roles template",
                "description":"Project rights and roles template description"
              }



              Rights and Roles

              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

                Optional query parameters

                Name Type Default value Description
                rights boolean true

                When query parameter "rights=false" is defined, the API call will returns all roles. i.e. not only roles which contains
                resources and right definitions.
                When query parameter is missing, the API call returns only roles which includes resources and rights definitions.

                customrole boolean

                When query parameter customrole is defined e.g. "customrole=true", the API call will returns only roles which have value of property "customRole" equal to query parameter.
                When query parameter is missing, the API call returns all roles (i.e. their customRole property can be true or false)

                rightsandrolestemplate string (guid)

                When query parameter rightsandrolestemplate is defined e.g. "rightsandrolestemplate=482176be-84ab-4d8f-93e4-2c58863d4eae",
                only roles which belongs to exact rightsandrolestemplate id are returned.


                 GET

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

                Here is the definition of Bimplus Rights and Roles.


                Account Owner Project Admin Project Editor Project Viewer
                Create project x


                Admin project x x

                Delete project x x

                Edit project x x x
                View project x x x x
                Create model x x

                View all models x x x x

                Model rights and roles are not supported yet, the project rights are used instead - meaning e.g. update model requires ProjectEdit rights


                The custom roles contains also definition for which resource and rights are valid.


                Headers
                Authorization: BimPlus 9c1874a62c974dcfa75e0132c423a088
                Content-Type: application/json
                
                Status
                Status: 200 Ok
                
                JSON
                [
                    {
                        "id": "94a60a79-7c81-454b-8158-ffdb9a2bf4d6",
                        "name": "TEST1",
                        "customRole": true,
                        "resources": [
                            {
                                "id": "4e587ea1-5098-45cd-9655-15f90c16dc58",
                                "resource": "Layer",
                                "rights": [
                                    "RoomModel"
                                ],
                                "rightsAccess": [
                                    {
                                        "id": "52bbc329-dab3-a81c-b548-09c715786a81",
                                        "name": "RoomModel",
                                        "access": "Edit"
                                    }
                                ]
                            }
                        ],
                        "projectRightsRolesTemplate": {
                            "id": "482176be-84ab-4d8f-93e4-2c58863d4eae",
                            "name": "DefaultProjectRightsRolesTemplate",
                            "description": "Default template for rights and roles"
                        }
                    },
                    {
                        "id": "391fb0fc-43ec-464c-bd18-b5223b32bd14",
                        "name": "TEST2",
                        "customRole": true,
                        "resources": [
                            {
                                "id": "9dae8bb5-77c1-47a6-a916-d4948583b0b9",
                                "resource": "Global",
                                "rights": [
                                    "AllModels",
                                    "ProjectCreate",
                                    "AllAttributes"
                                ],
                                "rightsAccess": [
                                    {
                                        "id": "cc3416d3-c570-4dc6-aa84-72216d3f58da",
                                        "name": "AllModels",
                                        "access": "Edit"
                                    },
                                    {
                                        "id": "6bbc401b-7cd5-4684-a11d-e2448befb3c1",
                                        "name": "ProjectCreate",
                                        "access": "Edit"
                                    },
                                    {
                                        "id": "99bad6fc-0539-4848-84af-62b6df31eaa3",
                                        "name": "AllAttributes",
                                        "access": "Edit"
                                    }
                                ]
                            }
                        ],
                        "projectRightsRolesTemplate": {
                            "id": "482176be-84ab-4d8f-93e4-2c58863d4eae",
                            "name": "DefaultProjectRightsRolesTemplate",
                            "description": "Default template for rights and roles"
                        }
                    }
                ...
                ]

                Get all the available rights

                  Resource: <team_slug>/rights 

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

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

                  JSON Structure

                  Name

                  Mandatory / Optional

                  Type

                  Description

                  id

                  mandatory

                  string (guid)

                  Id of the right resource type

                  resource

                  mandatory

                  string

                  The name of the right resource type

                  rights

                  mandatory

                  object

                  Dictionary of the pairs of right id together with its name

                  access

                  mandatory

                  JSON Array

                  Array of the strings represented access right. Can be combination of predefined rights "View", "Edit", "Admin"


                  Optional query parameters:
                  Following query parameters allows reduce set of returned right resource types. By default will be returned all defined right resource types.

                  Name

                  Type

                  Default value

                  Description

                  project

                  boolean

                  true

                  When query parameter "project=false" is defined, the API call will returns all right resource types except project right resource type.

                  global

                  boolean

                  true

                  When query parameter "global=false" is defined, the API call will returns all right resource types except global right resource type.

                  document

                  boolean

                  true

                  When query parameter "document=false" is defined, the API call will returns all right resource types except document right resource type.

                  globalfreeattributes

                  boolean

                  true

                  When query parameter "globalfreeattributes=false" is defined, the API call will returns all right resource types except globalfreeattributes right resource type.

                  layer

                  boolean

                  true

                  When query parameter "layer=false" is defined, the API call will returns all right resource types except layer right resource type.


                   GET

                   Get all the available rights returns array of right resource types with defined rights.

                  Headers
                  Authorization: BimPlus 9c1874a62c974dcfa75e0132c423a088
                  Content-Type: application/json
                  
                  Status
                  Status: 200 Ok
                  
                  JSON
                  [{
                      "id":"4e587ea1-5098-45cd-9655-15f90c16dc58",
                      "resource":"Layer",
                      "rights":{
                        "231222ba-7495-f438-cf38-629cf0482364":"building",
                        "dd9b9e2c-f4af-576f-4dda-9e122ab13d31":"general objects",
                        "92f8a361-5990-0cb0-b257-e13c85f0f7b1":"mep",
                        "0047e2ed-3348-a97b-93d2-a6817cc9cb8e":"steel design",
                        "8095dfcf-fbdf-3317-b873-a7cbccccb206":"timber design",
                        "f7819a2d-1498-2468-b120-fdefedfccf0b":"terrain",
                        "903fe394-5e84-5c8d-2760-eeadad3baa35":"reinforcement",
                        "44c2ff85-9691-6def-9583-56d8b776c846":"finish",
                        "6719f657-ea4a-3016-1bda-0c56c7f113d4":"inventory",
                        "52bbc329-dab3-a81c-b548-09c715786a81":"room",
                        "4a4da391-b804-b20f-f49a-470bdc68be8f":"structural analysis",
                        "7f27fd11-7992-8fb5-3541-9daa4f8196b2":"opening",
                        "8ba5ec82-5b93-6192-55b0-b7790f4d0007":"door/window",
                        "5c695e85-ea7c-7df4-9fb7-eca7aa1f69fd":"precast",
                        "85d0b1a9-11bb-6de1-9cfd-54f85ee11da3":"bridge",
                        "d726e8d2-12c6-641d-b19d-37511349dce1":"structural loads",
                        "3517d0e2-9814-fc08-b3e7-59d453940efa":"connection"
                      },
                      "access":["View",
                        "Edit"
                      ]
                    },
                    {
                      "id":"173e7a88-16d9-4d88-92bf-270fff458435",
                      "resource":"Document",
                      "rights":{
                        "73ca755b-eb41-4abf-8d72-6360f638a34c":"documentshare",
                        "f53dac0d-8ef8-48bd-9fa5-b49831bcf671":"documentdelete",
                        "6513c54f-0531-47e2-853d-56a25a226765":"documentdownloaddenied",
                        "820eb26b-7469-48bd-b10f-0c69e631c910":"documentviewdenied",
                        "d7727bed-38b8-4a77-b61d-397fb01f1ad8":"documentupdate"
                      },
                      "access":["Edit"
                      ]
                    },
                    {
                      "id":"cc49128e-9416-4bfc-a695-b17365dc7a5e",
                      "resource":"Project",
                      "rights":{
                        "815ce797-da07-4372-8a59-609f7106ab09":"project"
                      },
                      "access":["View",
                        "Edit",
                        "Admin"
                      ]
                    },
                    {
                      "id":"9dae8bb5-77c1-47a6-a916-d4948583b0b9",
                      "resource":"Global",
                      "rights":{
                        "c64151c5-ecde-4e2c-ba53-d0390f480461":"projectdelete",
                        "6bbc401b-7cd5-4684-a11d-e2448befb3c1":"projectcreate",
                        "99bad6fc-0539-4848-84af-62b6df31eaa3":"allattributes",
                        "3b3f10c1-93a6-4d15-a727-e38e2fb9b0b2":"alldocuments",
                        "cc3416d3-c570-4dc6-aa84-72216d3f58da":"allmodels",
                        "9351251b-9631-499e-8e23-68ffe70ef3b7":"allprojects"
                      },
                      "access":["Edit"
                      ]
                    },
                    {
                      "id":"500766a6-2525-45db-b9cd-b2a3d8092ba9",
                      "resource":"GlobalFreeAttributes",
                      "rights":{
                        "061a3842-9b4d-4d19-8651-2f9373c42842":"freeattribute",
                        "63b9bfad-db9f-4bbe-a902-7716c440a200":"attributetemplate",
                        "04f5c272-3dec-4bce-85ae-6abb2e936ef8":"projectattributetemplate",
                        "2a0e7bed-9fbf-46bc-987a-7a6c5c638f98":"freeattributegroup",
                        "b886cab2-fcce-4a77-ab2d-09f704e363b7":"teammembership"
                      },
                      "access":["View",
                        "Edit"
                      ]
                    }
                  ]

                  Create a new role
                    Resource: <team_slug>/roles 

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

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

                    JSON Structure

                    Name

                    Mandatory / Optional

                    Type

                    Description

                    id

                    optional

                    string (guid)

                    Id of the role

                    name

                    mandatory

                    string

                    The name of the role

                    parent

                    optional

                    string (guid)

                    The Id of the parent role

                    customRole

                    optional

                    boolean

                    When this flag is true the role is custom role otherwise will role is 'built in' role

                    resources

                    optional

                    JSON Array

                    Array of the right resource type definition objects for which the role is valid

                    projectRightsRolesTemplate mandatory JSON object The object contains id of rights and roles template guid.

                    JSON Structure of the right resource type definition object

                    Name

                    Mandatory / Optional

                    Type

                    Description

                    id optional string(Guid) Id of the right resource type

                    resource

                    mandatory

                    string

                    Describe kind of right resource type e.g. Global" or "Layer", etc.

                    rights

                    mandatory

                    JSON Array

                    Array of the strings with right names e.g.: "FreeAttributeView", "RoomModel"

                    rightsAccess mandatory JSON Array

                    Array of the objects with properties id, name, access :

                    • id is string (Guid) represent id of right
                    • name is string representing name of right e.g. "RoomModel",
                    • access is string representing access right of the right e.g. "View"
                     POST
                     Creates a new role with defined properties and resources to be valid for.
                    Headers
                    Authorization: BimPlus 9c1874a62c974dcfa75e0132c423a088
                    Content-Type: application/json
                    
                    JSON
                    {
                      "name":"Test",
                      "customRole":true,
                      "resources":[{
                          "id":"4e587ea1-5098-45cd-9655-15f90c16dc58",
                          "resource":"Layer",
                          "rights":["Room"
                          ],
                          "rightsAccess":[{
                              "id":"52bbc329-dab3-a81c-b548-09c715786a81",
                              "name":"RoomModel",
                              "access":"Edit"
                            }
                          ]
                        }
                      ],
                      "projectRightsRolesTemplate":{
                        "id":"894072db-e1cb-48f1-a672-999356d66311"
                      }
                    }
                    Status
                    Status: 201 Created
                    
                    JSON
                    {
                      "id": "94a60a79-7c81-454b-8158-ffdb9a2bf4d6",
                      "name":"Test",
                      "customRole":true,
                      "resources":[{
                          "id":"4e587ea1-5098-45cd-9655-15f90c16dc58",
                          "resource":"Layer",
                          "rights":["Room"
                          ],
                          "rightsAccess":[{
                              "id":"52bbc329-dab3-a81c-b548-09c715786a81",
                              "name":"RoomModel",
                              "access":"Edit"
                            }
                          ]
                        }
                      ],
                      "projectRightsRolesTemplate":{
                        "id":"894072db-e1cb-48f1-a672-999356d66311",
                        "name":"CustomProjectRightsRolesTemplate",
                        "description":"Custom template for rights and roles"
                      }
                    }

                    Get details of the role

                      Resource: <team_slug>/roles/<role_id>

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

                      Examplehttps://api-stage.bimplus.net/v2/bimplus/roles/94a60a79-7c81-454b-8158-ffdb9a2bf4d6

                       GET
                       Get details of a specified role.
                      Headers
                      Authorization: BimPlus 9c1874a62c974dcfa75e0132c423a088
                      Content-Type: application/json
                      
                      Status
                      Status: 200 OK
                      
                      JSON
                      {
                        "id" : "94a60a79-7c81-454b-8158-ffdb9a2bf4d6",
                        "name":"Test",
                        "customRole":true,
                        "resources":[{
                            "id":"4e587ea1-5098-45cd-9655-15f90c16dc58",
                            "resource":"Layer",
                            "rights":["Room"
                            ],
                            "rightsAccess":[{
                                "id":"52bbc329-dab3-a81c-b548-09c715786a81",
                                "name":"RoomModel",
                                "access":"Edit"
                              }
                            ]
                          }
                        ],
                        "projectRightsRolesTemplate":{
                          "id":"894072db-e1cb-48f1-a672-999356d66311",
                          "name":"CustomProjectRightsRolesTemplate",
                          "description":"Custom template for rights and roles"
                        }
                      }
                      

                      Update the role

                        Resource: <team_slug>/roles/<role_id>

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

                        Examplehttps://api-stage.bimplus.net/v2/bimplus/roles/94a60a79-7c81-454b-8158-ffdb9a2bf4d6

                        Json structure : See above in Create a new role section.


                         PUT
                        Update the role.
                        Headers
                        Authorization: BimPlus 9c1874a62c974dcfa75e0132c423a088
                        Content-Type: application/json
                        
                        JSON
                        {
                          "name":"Test",
                          "customRole":true,
                          "resources":[{
                              "id":"4e587ea1-5098-45cd-9655-15f90c16dc58",
                              "resource":"Layer",
                              "rights":["Room"
                              ],
                              "rightsAccess":[{
                                  "id":"52bbc329-dab3-a81c-b548-09c715786a81",
                                  "name":"RoomModel",
                                  "access":"Edit"
                                }
                              ]
                            }
                          ],
                          "projectRightsRolesTemplate":{
                            "id":"894072db-e1cb-48f1-a672-999356d66311"
                          }
                        }
                        Status
                        Status: 200 OK
                        
                        JSON
                        {
                          "id" : "94a60a79-7c81-454b-8158-ffdb9a2bf4d6",
                          "name":"Test",
                          "customRole":true,
                          "resources":[{
                              "id":"4e587ea1-5098-45cd-9655-15f90c16dc58",
                              "resource":"Layer",
                              "rights":["Room"
                              ],
                              "rightsAccess":[{
                                  "id":"52bbc329-dab3-a81c-b548-09c715786a81",
                                  "name":"RoomModel",
                                  "access":"Edit"
                                }
                              ]
                            }
                          ],
                          "projectRightsRolesTemplate":{
                            "id":"894072db-e1cb-48f1-a672-999356d66311",
                            "name":"CustomProjectRightsRolesTemplate",
                            "description":"Custom template for rights and roles"
                          }
                        }

                        Delete the role

                          Resource: <team_slug>/roles/<role_id>

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

                          Examplehttps://api-stage.bimplus.net/v2/bimplus/roles/213becc0-ad48-4cd0-aef2-b922b21bbfd7

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

                          Get all project's roles assigned by right and roles template
                            Resource: projects/<project_id>/roles 

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

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

                            JSON Structure: The structure of object is the same as in get all available roles.
                            The rightsandrolestemplate query parameter should not be used, due to it is implicitly set to actual project rights and roles template id.

                             GET

                            Each project has by default assigned free attribute "RightsAndRoles template" which defines rights and roles template.

                            The API call will returns all project's roles assigned by rights and roles template.

                            Headers
                            Authorization: BimPlus 9c1874a62c974dcfa75e0132c423a088
                            Content-Type: application/json
                            
                            Status
                            Status: 201 Created
                            
                            JSON
                            [
                                {
                                    "id": "94a60a79-7c81-454b-8158-ffdb9a2bf4d6",
                                    "name": "TEST1",
                                    "customRole": true,
                                    "resources": [
                                        {
                                            "id": "4e587ea1-5098-45cd-9655-15f90c16dc58",
                                            "resource": "Layer",
                                            "rights": [
                                                "RoomModel"
                                            ],
                                            "rightsAccess": [
                                                {
                                                    "id": "52bbc329-dab3-a81c-b548-09c715786a81",
                                                    "name": "RoomModel",
                                                    "access": "Edit"
                                                }
                                            ]
                                        }
                                    ],
                                    "projectRightsRolesTemplate": {
                                        "id": "482176be-84ab-4d8f-93e4-2c58863d4eae",
                                        "name": "DefaultProjectRightsRolesTemplate",
                                        "description": "Default template for rights and roles"
                                    }
                                },
                                {
                                    "id": "391fb0fc-43ec-464c-bd18-b5223b32bd14",
                                    "name": "TEST2",
                                    "customRole": true,
                                    "resources": [
                                        {
                                            "id": "9dae8bb5-77c1-47a6-a916-d4948583b0b9",
                                            "resource": "Global",
                                            "rights": [
                                                "AllModels",
                                                "ProjectCreate",
                                                "AllAttributes"
                                            ],
                                            "rightsAccess": [
                                                {
                                                    "id": "cc3416d3-c570-4dc6-aa84-72216d3f58da",
                                                    "name": "AllModels",
                                                    "access": "Edit"
                                                },
                                                {
                                                    "id": "6bbc401b-7cd5-4684-a11d-e2448befb3c1",
                                                    "name": "ProjectCreate",
                                                    "access": "Edit"
                                                },
                                                {
                                                    "id": "99bad6fc-0539-4848-84af-62b6df31eaa3",
                                                    "name": "AllAttributes",
                                                    "access": "Edit"
                                                }
                                            ]
                                        }
                                    ],
                                    "projectRightsRolesTemplate": {
                                        "id": "482176be-84ab-4d8f-93e4-2c58863d4eae",
                                        "name": "DefaultProjectRightsRolesTemplate",
                                        "description": "Default template for rights and roles"
                                    }
                                }
                            ...
                            ]

                            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.
                              The object has a mandatory property name "id" which represents Id of the user, its type is string(guid)

                              role

                              mandatory

                              object

                              The project role which will be assigned to the team member.
                              The object has a mandatory property name "id" which represents Id of the role, its type is string(guid)

                              roles mandatory JSON Array Array of role objects, each object must have defined role id.
                               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.
                              Headers
                              Authorization: BimPlus 9c1874a62c974dcfa75e0132c423a088
                              Content-Type: application/json
                              
                              JSON
                              {
                                "member": {
                                  "id": "bf5b2382-1d14-b8df-8454-947f83b45c25",
                                },
                                "role": {
                                  "id": "f11d32e2-30b7-4f81-8a74-2165ecc00cf6",
                                }
                                "roles":[
                                  {
                                    "id": "f11d32e2-30b7-4f81-8a74-2165ecc00cf6",
                                  },
                                  {
                                    "id":"391fb0fc-43ec-464c-bd18-b5223b32bd14",
                                  },
                                  {
                                    "id":"33078aed-0473-4714-beb9-ab989959afdd",
                                  }
                                ]
                              }
                              Status
                              Status: 201 Created
                              
                              JSON
                              {
                                "member": {
                                  "id": "bf5b2382-1d14-b8df-8454-947f83b45c25",
                                  "email": "testuser@bimplus.net",
                                  "firstname" : "Test",
                                  "lastname" : "User",
                                  ...
                                },
                                "role": {
                                  "id": "f11d32e2-30b7-4f81-8a74-2165ecc00cf6",
                                  "name": "Project_Editor"
                                }
                                "roles":[
                                  {
                                    "id": "f11d32e2-30b7-4f81-8a74-2165ecc00cf6",
                                    "name": "Project_Editor"
                                  },
                                  {
                                    "id":"391fb0fc-43ec-464c-bd18-b5223b32bd14",
                                    "name":"Architekt"
                                  },
                                  {
                                    "id":"33078aed-0473-4714-beb9-ab989959afdd",
                                    "name":"BuildingEditor"
                                  }
                                ]
                              }

                              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.
                                Headers
                                Authorization: BimPlus 9c1874a62c974dcfa75e0132c423a088
                                Content-Type: application/json
                                
                                Status
                                Status: 200 OK
                                
                                JSON
                                [
                                  {
                                    "member": {
                                      "id": "bf5b2382-1d14-b8df-8454-947f83b45c25",
                                      "email": "testuser@bimplus.net",
                                      "firstname" : "Test",
                                      "lastname" : "User",
                                      ...
                                    },
                                    "role": {
                                      "id": "f11d32e2-30b7-4f81-8a74-2165ecc00cf6",
                                      "name": "Project_Editor"
                                    }
                                    "roles":[
                                      {
                                        "id": "f11d32e2-30b7-4f81-8a74-2165ecc00cf6",
                                        "name": "Project_Editor"
                                      },
                                      {
                                        "id":"391fb0fc-43ec-464c-bd18-b5223b32bd14",
                                        "name":"Architekt"
                                      },
                                      {
                                        "id":"33078aed-0473-4714-beb9-ab989959afdd",
                                        "name":"BuildingEditor"
                                      }
                                    ]
                                  },
                                 {
                                
                                    "member": {
                                      "id": "bf5b2382-1d14-b8df-8454-947f83b45c25",
                                      "email": "customer2@bimplus.net"
                                      "firstname" : "Some",
                                      "lastname" : "Customer",
                                      ...
                                    },
                                    "role": {
                                      "id": "e11d32e2-30b7-4f81-8a74-2165ecc00cf6",
                                      "name": "Project_Viewer"
                                    }
                                    "roles":[
                                      {
                                        "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.
                                  Object must have set "id" as string(guid) - Id of the user.

                                  role

                                  mandatory

                                  object

                                  The project role which will be assigned to the team member.
                                  Object must have set "id" as string(guid) - Id of the role

                                  roles mandatory JSON Array Array of role objects, each object must have defined role id.
                                   PUT
                                   Update the project role of a team member. Only the user with "Account Owner" or "Project Owner" role can use this API call.
                                  Headers
                                  Authorization: BimPlus 9c1874a62c974dcfa75e0132c423a088
                                  Content-Type: application/json
                                  
                                  JSON
                                  {
                                    "member":{
                                      "id":"efeb4da2-1c7c-4aa8-ab13-28638f9669a8"
                                    },
                                    "role":{
                                      "id":"a298b28d-9711-4a76-9a7d-910cbf144ee5"
                                    },
                                    "roles":[{
                                        "id":"5d4eaafa-aed0-4c53-803d-2fb7fa6a208b"
                                      },
                                      {
                                        "id":"72fd3336-7df5-410d-a883-98318e6337b6"
                                      }
                                    ]
                                  }
                                  Status
                                  Status: 200 OK
                                  
                                  JSON
                                  {
                                    "member": {
                                      "id": "bf5b2382-1d14-b8df-8454-947f83b45c25",
                                      "email": "testuser@bimplus.net",
                                      "firstname" : "Test",
                                      "lastname" : "User",
                                      ...
                                    },
                                    "role": {
                                      "id": "f11d32e2-30b7-4f81-8a74-2165ecc00cf6",
                                      "name": "Project_Editor"
                                    }
                                    "roles":[
                                      {
                                        "id": "f11d32e2-30b7-4f81-8a74-2165ecc00cf6",
                                        "name": "Project_Editor"
                                      },
                                      {
                                        "id":"391fb0fc-43ec-464c-bd18-b5223b32bd14",
                                        "name":"Architekt"
                                      },
                                      {
                                        "id":"33078aed-0473-4714-beb9-ab989959afdd",
                                        "name":"BuildingEditor"
                                      }
                                    ]
                                  }

                                  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
                                    Headers
                                    Authorization: BimPlus 9c1874a62c974dcfa75e0132c423a088
                                    Content-Type: application/json
                                    
                                    Status
                                    Status: 200 OK
                                    
                                    • No labels