Skip to main content
Version: v5.2

Permission Profiles

Get Permission Profile for Current User

Endpoint

GET /passportsvc/api/v1/permissionprofiles

Request

Query parameters

ParameterTypeDescriptionRequired
_nameStringQuery 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-2Optional
_userTypeStringQuery 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-profileOptional
nsfilterStringFilter by namespace, for example, GET /passportsvc/api/v1/permissionprofiles/?nsfilter=project-1Optional
_offsetNumberResponds with data after the offset row number you pass. For example, GET /passportsvc/api/v1/permissionprofiles/?_offset=10Optional
_pageSizeNumberSet the response page size, for example, GET /passportsvc/api/v1/permissionprofiles/?_pageSize=20Optional

Response

Response codes

CodeDescription
200Success
400Bad 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/:id

Request

Path parameters

ParameterTypeDescriptionRequired
idStringPass the permission profile's id, for example GET /passportsvc/api/v1/permissionprofiles/21083741-098b-402c-92a0-7d6f1050b626Required

Query parameters

ParameterTypeDescriptionRequired
nsfilterStringFilter by namespace, for example, GET /passportsvc/api/v1/permissionprofiles/?nsfilter=project-1Optional

Response

Response codes

CodeDescription
200Success
404Not 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/:id

Request

Path parameters

ParameterTypeDescriptionRequired
idStringPass the permission profile's id you want to edit, for example PUT /passportsvc/api/v1/permissionprofiles/21083741-098b-402c-92a0-7d6f1050b626Required

Query parameters

ParameterTypeDescriptionRequired
nsfilterStringFilter by namespace, for example, PUT /passportsvc/api/v1/permissionprofiles/?nsfilter=project-1Optional

Response

Response header

Contains a URL to poll the request status. For more information on the URL response, see Async Task.

Response codes

CodeDescription
202Accepted
200Success
400Bad Request
404Not 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/:id

Request

Path parameters

ParameterTypeDescriptionRequired
idStringPass the permission profile's id you want to delete, for example DELETE /passportsvc/api/v1/permissionprofiles/21083741-098b-402c-92a0-7d6f1050b626Required

Query parameters

ParameterTypeDescriptionRequired
nsfilterStringFilter by namespace, for example, DELETE /passportsvc/api/v1/permissionprofiles/?nsfilter=project-1Optional

Response

Response codes

CodeDescription
204No Content
404Not Found

Add Permission Profile

Endpoint

POST /passportsvc/api/v1/permissionprofiles

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

ParameterTypeDescriptionRequired
nsfilterStringFilter by namespace, for example, POST /passportsvc/api/v1/permissionprofiles/?nsfilter=project-1Optional

Body parameters

ParameterTypeDescriptionRequired
_nameStringEnter a unique name for the permission profile.Required
_userTypeStringEnter a unique or shared string to identify the permission profile.Required
_namespacesArray of StringPass one or more namespaces for the permission profile's context.Required
_permissionsArray of ObjectPass one or more namespaces for the permission profile's context.Required
_permissions[n]._actionsArray of StringPass an array of permission actions you want to define for the permissions profile. For more information, see Permissions Actions REST APIRequired
_permissions[n]._namespaceStringEnter the namespace that the resource pertains to.Required
_permissions[n]._resourceDesc._irnStringEnter 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

CodeDescription
202Accepted
201Created
400Bad Request