Rights & Roles Service
- Get all the available roles
- Make a team member part of a project by assigning a role to him
- Get the project members along with their respective roles
- Update the project role of a team member
- Remove the user from the project
Rights & Roles Service
Get all the available roles
URL: https://api-stage.bimplus.net/v2/<team_slug>/roles
Example: https://api-stage.bimplus.net/v2/best-company/roles
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
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
URL: https://api-stage.bimplus.net/v2/<team_slug>/projects/<project_id>/members
Example: https://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 |
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
URL: https://api-stage.bimplus.net/v2/<team_slug>/projects/<project_id>/members
Example: https://api-stage.bimplus.net/v2/bimplus/projects/b8615afc-99cc-4bcd-b0ca-ff0593ce15c6/members
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
URL: https://api-stage.bimplus.net/v2/<team_slug>/projects/<project_id>/members
Example: https://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 |
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
URL: https://api-stage.bimplus.net/v2/<team_slug>/projects/<project_id>/members
Example: https://api-stage.bimplus.net/v2/bimplus/projects/b8615afc-99cc-4bcd-b0ca-ff0593ce15c6/members
Authorization: BimPlus 9c1874a62c974dcfa75e0132c423a088 Content-Type: application/json
Status: 200 OK