3.3 Working With Permissions Via API

URI: https://myIsoraURL/api/perms

Verb

Address

Notes

Additional Details

GET

/perms

/perms?page=X

&page_size=Y

Retrieves a paginated list of all permissions, up to Y at a time. Default page size is 25.

The beginning of each response includes a count and a link to the next page. Each entry in the list has a link to itself, which can be used to retrieve that individual permission. There are also links to endpoints for the associated user and OU.

GET

/perms?user=<id>

/perms?user=<id>&page=X

&page_size=Y

Retrieves paginated list of permissions of an individual user, up to Y at a time (25 by default). If an invalid user id is given, an empty response is returned.

The beginning of output includes a count and links to next and previous in case the user has more than 25 permissions.

GET

/perms?org_unit=<id>

/perms?org_unit=<id>&page=X

&page_size=Y

Retrieves a paginated list of permissions of an OU, up to Y at a time (by default 25). If an invalid OU id is given, an empty response is returned.

The beginning of output includes a count and links to next and previous in case the OU has more than 25 permissions.

POST

/perms

Creates a new permission.

body {

  “user”: string (username),

  “org_unit”: string (OU id),

  “org_unit_code”: string (OU id),

  “role”: Numeric (10=OU Head, 20=Assessment Manager, 30=IT Staff, 4=User)

}

DELETE

/perms/<id>

Removes the permission. No content is returned.



GET

/perms?search=string

&page_size=Y

Returns permissions objects matching the search string.

You probably want to use a fairly specific string, like a username, to avoid getting too many matches.

 

The PUT operation is not supported for perms endpoints. If you want to change a permission, you must remove the existing permission and create a new one entirely.