Note

This page is still a work in progress!

Permission APIs

Adding a permission string

Overview

Description Adds a new permission string.
API Context /permissions
HTTP Method POST
Request/Response format application/json
Authentication Basic
Username admin
Password admin
Runtime server/tooling

curl command syntax

curl -X POST https://<HOST_NAME>:<PORT>/permissions/ -H 'content-type: application/json' -d ' { "appName":"<SIDDHI_APPLICATION_NAME>", "permissionString":"<PERMISSION_STRING>"}' -k

Sample curl command

curl -X POST https://localhost:9443/permissions/ -H 'content-type: application/json' -d ' { "appName":"MON", "permissionString":"MON.manager"}' -k

Sample output

Response

HTTP Status Code

Possible codes are 200 and 404.

For descriptions of the HTTP status codes, see HTTP Status Codes .

Getting a permission ID for a permission string

Overview

Description Returns the permission ID for a given permission string.
API Context /permissions/app/{appName}
HTTP Method GET
Request/Response format application/json
Authentication Basic
Username admin
Password admin
Runtime server/tooling
Parameter Description
{appName}

curl command syntax

curl -X GET https://<HOST_NAME>:<PORT>/permissions/app/{appName}

Sample curl command

curl -X GET https://localhost:9443/permissions/app/MON

Sample output

Response

HTTP Status Code

Possible codes are 200 and 404.

For descriptions of the HTTP status codes, see HTTP Status Codes .

Checking whether a specific user role is granted a specific permission

Overview

Description Checks whether the specified user role is granted a specific permission.
API Context /permissions/auth/{permissionID}/{roleName}
HTTP Method GET
Request/Response format
Authentication
Username
Password
Runtime server/tooling
Parameter Description
{permissionID} The ID of a specific permission. The API checks whether this permission is granted to the specified user role.
{roleName} The ID of a specific user role. The API checks whether this user role is granted the specified permission ID.

curl command syntax

Sample curl command

curl -X GET https://localhost:9443/permissions/auth/8dc31fec-8364-3082-9f88-c7ca7d979873/admin

Sample output

Response

HTTP Status Code

Possible codes are 200 and 404.

For descriptions of the HTTP status codes, see HTTP Status Codes .

Deleting a permission string

Overview

Description Deletes the specified permission string.
API Context /permissions/{permissionID}
HTTP Method DELETE
Request/Response format
Authentication
Username
Password
Runtime server/tooling
Parameter Description
{permissionID} The ID of the permission string to be deleted.

curl command syntax

curl -X DELETE https://<HOST_NAME>:<PORT>/permissions/{permissionID}

Sample curl command

curl -X DELETE https://localhost:9443/permissions/e9687c6f-b5b2-3216-b3bd-82e7a8e14367

Sample output

Response

HTTP Status Code

Possible codes are 200 and 404.

For descriptions of the HTTP status codes, see HTTP Status Codes .

Listing roles with a specific permission

Overview

Description Lists the user roles that are currently granted the specified user role.
API Context /permissions/{permissionsID}/roles
HTTP Method GET
Request/Response format
Authentication
Username
Password
Runtime server/tooling
Parameter Description
{permissionID} The ID of the permission for which the user roles need to be listed.

curl command syntax

curl -X GET https://<HOST_NAME>:<PORT>/permissions/{permissionID}/roles

Sample curl command

curl -X GET https://localhost:9443/permissions/8dc31fec-8364-3082-9f88-c7ca7d979873/roles

Sample output

Response

HTTP Status Code

Possible codes are 200 and 404.

For descriptions of the HTTP status codes, see HTTP Status Codes .

Revoking a specific permission for all roles

Overview

Description Revokes the specified permission for all the user roles.
API Context /permissions/revoke/{permissionID}
HTTP Method POST
Request/Response format
Authentication
Username
Password
Runtime server/tooling
Parameter Description
{permissionID} The ID of the permission that needs to be revoked for all user roles.

curl command syntax

curl -X POST https://<HOST_NAME>:<PORT>/permissions/revoke/{permissionID}

Sample curl command

curl -X POST https://localhost:9443/permissions/revoke/8dc31fec-8364-3082-9f88-c7ca7d979873

Sample output

Response

HTTP Status Code

Possible codes are 200 and 404.

For descriptions of the HTTP status codes, see HTTP Status Codes .

Revoking a specific permission for a specific role

Overview

Description Grants or revokes a permission for the specified user role. The permission is passed as an array in the body of the request.
API Context /permissions/roles/{roleID}?action=revoke/grant
HTTP Method POST
Request/Response format application/json
Authentication
Username
Password
Runtime server/tooling
Parameter Description
{roleID} The ID of the user role for which the permission given in the request body needs to be granted or revoked.

curl command syntax

Sample curl command

curl -X POST 'https://localhost:9443/permissions/roles/admin?action=revoke' -H 'content-type: application/json' -d ' { "appName":"MON", "permissionString":"MON.manager"}'

Sample output

Response

HTTP Status Code

Possible codes are 200 and 404.

For descriptions of the HTTP status codes, see HTTP Status Codes .

Top