Skip to main content

Look up groups & permissions

Creating, updating, and deleting users all start by looking up the UIDs you'll reference. This page is the single reference for those lookups.

See Managing users for an overview of the core concepts (groups, profiles, application groups, and asset permissions).


User groups

Group UIDs returned here are passed as userGroupUids when creating or updating a user.

GET /v1/organizations/DEMO/groups?pageNumber=1&pageSize=20
import requests

BASE_URL = "https://api.stonal.io/users"
TOKEN = "<access_token>"

resp = requests.get(
f"{BASE_URL}/v1/organizations/DEMO/groups",
headers={"Authorization": f"Bearer {TOKEN}"},
params={"pageNumber": 1, "pageSize": 20},
)
print(resp.status_code, resp.json())

See Get groups


Permissions

Permission UIDs returned here are passed as permissions[].uid when creating or updating a user.

GET /v1/organizations/DEMO/users/permissions?pageNumber=1&pageSize=20&type=...
import requests

BASE_URL = "https://api.stonal.io/users"
TOKEN = "<access_token>"

resp = requests.get(
f"{BASE_URL}/v1/organizations/DEMO/users/permissions",
headers={"Authorization": f"Bearer {TOKEN}"},
params={"pageNumber": 1, "pageSize": 20, "type": "PROFILE"},
)
print(resp.status_code, resp.json())

Use the type (and optional subType) query parameters to filter what you need:

To find…Query filter
Profilestype=PROFILE
Application groupstype=SCOPE_GROUP&subType=APPLICATION
Companiestype=ASSET&subType=COMPANY
Portfoliostype=ASSET&subType=PORTFOLIO
Facilitiestype=ASSET&subType=FACILITY
Building groupstype=ASSET&subType=BUILDING_GROUP
Buildingstype=ASSET&subType=BUILDING
Report groupstype=REPORT_GROUP

Additional filter notes:

  • type accepts a comma-separated list (e.g. type=ASSET,PROFILE)
  • q does free-text search on permission names
  • parentUids combined with level lets you walk the permission hierarchy
  • withUsers=true includes user counts in the response

See Get permissions


Find an existing user

Each user's uid in the results is the identifier you pass to create, update, or delete calls.

GET /v2/organizations/DEMO/users?pageNumber=1&pageSize=20&q=john.doe@example.com
import requests

BASE_URL = "https://api.stonal.io/users"
TOKEN = "<access_token>"

resp = requests.get(
f"{BASE_URL}/v2/organizations/DEMO/users",
headers={"Authorization": f"Bearer {TOKEN}"},
params={"pageNumber": 1, "pageSize": 20, "q": "john.doe@example.com"},
)
print(resp.status_code, resp.json())

Additional filter parameters:

  • permissions — filter by permission label, e.g. permissions=PROFILE:Administrator,SCOPE_GROUP:All
  • userGroups — filter by group name, e.g. userGroups=Administrators,Readers

See Get paginated users