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

Compare with Current View Page History

« Previous Version 5 Next »

Rights & Roles Service


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

    Headers
    Authorization: BimPlus 9c1874a62c974dcfa75e0132c423a088
    Content-Type: application/json
    
    Status
    Status: 200 Ok
    
    JSON
    [
        {
            "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.
      Headers
      Authorization: BimPlus 9c1874a62c974dcfa75e0132c423a088
      Content-Type: application/json
      
      JSON
      {
        "member": {
          "id": "bf5b2382-1d14-b8df-8454-947f83b45c25"
        },
        role: {
          id: "f11d32e2-30b7-4f81-8a74-2165ecc00cf6"
      }
      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"
      }

      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"
            },
          {
            "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"
            }
          }
        ]

        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.
          Headers
          Authorization: BimPlus 9c1874a62c974dcfa75e0132c423a088
          Content-Type: application/json
          
          JSON
          {
            "member": {
              "id": "bf5b2382-1d14-b8df-8454-947f83b45c25"
            },
            "role": {
              "id": "f11d32e2-30b7-4f81-8a74-2165ecc00cf6"
          }
          Status
          Status: 200 OK
          
          JSON
          {
            "member": {
              "id": "bf5b2382-1d14-b8df-8454-947f83b45c25",
              "email": "customer@bimplus.net",
              "firstname" : "Some",
              "lastname" : "Customer",
              ...
            },
            "role": {
              "id": "f11d32e2-30b7-4f81-8a74-2165ecc00cf6",
              "name": "Project_Viewer"
          }

          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