Permission Profiles
Get Permission Profile for Current User#
Endpoint#
GET /passportsvc/api/v1/permissionprofilesRequest#
Query parameters#
| Parameter | Type | Description | Required |
|---|---|---|---|
_name | String | Query permission profiles by thier user-created name. You can pass multiple values, for example: GET /passportsvc/api/v1/permissionprofiles/?_name=perm-profile-1&_name=perm-profile-2 | Optional |
_userType | String | Query by userType attribute, which is a shared or unique tag. You can pass multiple values, for example: GET /passportsvc/api/v1/permissionprofiles/?_userType=type1-perm-profile&_userType=type2-perm-profile | Optional |
nsfilter | String | Filter by namespace, for example, GET /passportsvc/api/v1/permissionprofiles/?nsfilter=project-1 | Optional |
_offset | Number | Responds with data after the offset row number you pass. For example, GET /passportsvc/api/v1/permissionprofiles/?_offset=10 | Optional |
_pageSize | Number | Set the response page size, for example, GET /passportsvc/api/v1/permissionprofiles/?_pageSize=20 | Optional |
Response#
Response codes#
| Code | Description |
|---|---|
200 | Success |
400 | Bad Request |
Body#
{ "_offset": 0, "_pageSize": 2, "_total": 2, "_list": [ { "_id": "21083741-098b-402c-92a0-7d6f1050b626", "_name": "perm-profile-2", "_userType": "test-perm-profile-2", "_namespaces": [ "lnt_Uk2fGs3l" ], "_permissions": [ { "_actions": [ "READ" ], "_namespace": "lnt_Uk2fGs3l", "_resourceDesc": { "_irn": "filesvc:file:e5bcbc1e-514d-41f0-ae7d-c0fd0e6cc504" } } ] }, { "_id": "da9b8940-2ce1-42dd-80c8-7337b4587559", "_name": "perm-profile-2", "_userType": "test-perm-profile-2", "_namespaces": [ "lnt_Uk2fGs3l" ], "_permissions": [ { "_actions": [ "READ" ], "_namespace": "lnt_Uk2fGs3l", "_resourceDesc": { "_irn": "passportsvc:workspace:*" } } ] } ]}Get Permission Profile By Id#
Endpoint#
GET /passportsvc/api/v1/permissionprofiles/:idRequest#
Path parameters#
| Parameter | Type | Description | Required |
|---|---|---|---|
id | String | Pass the permission profile's id, for example GET /passportsvc/api/v1/permissionprofiles/21083741-098b-402c-92a0-7d6f1050b626 | Required |
Query parameters#
| Parameter | Type | Description | Required |
|---|---|---|---|
nsfilter | String | Filter by namespace, for example, GET /passportsvc/api/v1/permissionprofiles/?nsfilter=project-1 | Optional |
Response#
Response codes#
| Code | Description |
|---|---|
200 | Success |
404 | Not Found |
Body#
{ "_id": "21083741-098b-402c-92a0-7d6f1050b626", "_name": "perm-profile-2", "_userType": "test-perm-profile-2", "_namespaces": [ "lnt_Uk2fGs3l" ], "_permissions": [ { "_actions": [ "READ" ], "_namespace": "lnt_Uk2fGs3l", "_resourceDesc": { "_irn": "filesvc:file:e5bcbc1e-514d-41f0-ae7d-c0fd0e6cc504" } } ]}Edit Permission Profile#
Endpoint#
PUT /passportsvc/api/v1/permissionprofiles/:idRequest#
Path parameters#
| Parameter | Type | Description | Required |
|---|---|---|---|
id | String | Pass the permission profile's id you want to edit, for example PUT /passportsvc/api/v1/permissionprofiles/21083741-098b-402c-92a0-7d6f1050b626 | Required |
Query parameters#
| Parameter | Type | Description | Required |
|---|---|---|---|
nsfilter | String | Filter by namespace, for example, PUT /passportsvc/api/v1/permissionprofiles/?nsfilter=project-1 | Optional |
Response#
Response header#
Contains a URL to poll the request status. For more information on the URL response, see Async Task.
Response codes#
| Code | Description |
|---|---|
202 | Accepted |
200 | Success |
400 | Bad Request |
404 | Not Found |
Response data example#
Permission Profile object:
{ "_id": "21083741-098b-402c-92a0-7d6f1050b626", "_name": "perm-profile-2", "_userType": "test-perm-profile-2", "_namespaces": [ "lnt_Uk2fGs3l" ], "_permissions": [ { "_actions": [ "READ","DELETE","SHARE" ], "_namespace": "lnt_Uk2fGs3l", "_resourceDesc": { "_irn": "filesvc:file:e5bcbc1e-514d-41f0-ae7d-c0fd0e6cc504" } } ]}Delete Permission Profile#
Endpoint#
DELETE /passportsvc/api/v1/permissionprofiles/:idRequest#
Path parameters#
| Parameter | Type | Description | Required |
|---|---|---|---|
id | String | Pass the permission profile's id you want to delete, for example DELETE /passportsvc/api/v1/permissionprofiles/21083741-098b-402c-92a0-7d6f1050b626 | Required |
Query parameters#
| Parameter | Type | Description | Required |
|---|---|---|---|
nsfilter | String | Filter by namespace, for example, DELETE /passportsvc/api/v1/permissionprofiles/?nsfilter=project-1 | Optional |
Response#
Response codes#
| Code | Description |
|---|---|
204 | No Content |
404 | Not Found |
Add Permission Profile#
Endpoint#
POST /passportsvc/api/v1/permissionprofilesNote: The user that sends a POST request to create a permission profile must have permissions to create a permission profile in that given namespace, as well as SHARE permissions for the permissions within the permission profile.
Request#
Query parameters#
| Parameter | Type | Description | Required |
|---|---|---|---|
nsfilter | String | Filter by namespace, for example, POST /passportsvc/api/v1/permissionprofiles/?nsfilter=project-1 | Optional |
Body parameters#
| Parameter | Type | Description | Required |
|---|---|---|---|
_name | String | Enter a unique name for the permission profile. | Required |
_userType | String | Enter a unique or shared string to identify the permission profile. | Required |
_namespaces | Array of String | Pass one or more namespaces for the permission profile's context. | Required |
_permissions | Array of Object | Pass one or more namespaces for the permission profile's context. | Required |
_permissions[n]._actions | Array of String | Pass an array of permission actions you want to define for the permissions profile. For more information, see Permissions profile REST API authorisation actions | Required |
_permissions[n]._namespace | String | Enter the namespace that the resource pertains to. | Required |
_permissions[n]._resourceDesc._irn | String | Enter the resource's path. For the resource path, concetenate the service name, resource type, and resource's id with colons, for example, filesvc:file:6336c490017d84b0a506e453 for a file, or filesvc:file:* for all files in the file service. | Required |
Body example#
[ { "_name": "perm-profile-2", "_userType": "test-perm-profile-2", "_namespaces": [ "lnt_Uk2fGs3l" ], "_permissions": [ { "_resourceDesc": { "_irn": "filesvc:file:e5bcbc1e-514d-41f0-ae7d-c0fd0e6cc504" }, "_actions": [ "READ" ], "_namespace": "lnt_Uk2fGs3l" } ] }]Response#
Response header#
Contains a URL to poll the request status. The final status is 201 - Created. For more information on the URL response, see Async Task.
Response codes#
| Code | Description |
|---|---|
202 | Accepted |
201 | Created |
400 | Bad Request |