curl --request GET \
--url https://api.poelis.com/v1/public/organization/users \
--header 'Authorization: Bearer <token>'import requests
url = "https://api.poelis.com/v1/public/organization/users"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://api.poelis.com/v1/public/organization/users', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));{
"count": 1,
"items": [
{
"email": "jane.doe@example.com",
"id": "auth0|550e8400-e29b-41d4-a716-446655440000",
"name": "Jane Doe",
"org_role": "admin",
"productAccess": [
{
"product_id": "660e8400-e29b-41d4-a716-446655440000",
"product_name": "Jet Engine Specifications",
"role": "viewer",
"workspace_id": "550e8400-e29b-41d4-a716-446655440000"
}
],
"workspaceAccess": [
{
"role": "editor",
"workspace_id": "550e8400-e29b-41d4-a716-446655440000",
"workspace_name": "Aerospace Engineering"
}
]
}
]
}{
"error": "unauthorized",
"message": "Invalid or missing API key"
}{
"error": "forbidden",
"message": "Access denied"
}{
"error": "not_found",
"message": "Not found"
}{
"error": "validation_error",
"message": "Invalid data format",
"details": {
"errors": [
{
"loc": [
"body",
"field_name"
],
"msg": "field required",
"type": "value_error.missing"
}
]
}
}{
"error": "rate_limit_exceeded",
"message": "Too many requests"
}List organization users
Retrieve a paginated list of all organization members together with their access rights.
Overview
Returns every user in your organization along with their organization role, workspace-level roles, and any explicit product-level role overrides.
Search Functionality
Use the q parameter to filter users by name or email:
- Case-insensitive partial match
- Searches within both the user’s display name and email address
- Example:
q=janewill match “Jane Doe” or “jane@example.com”
Access granularity
| Level | Field | Values |
|---|---|---|
| Organization | org_role | admin, member, guest |
| Workspace | workspaceAccess[].role | editor, viewer |
| Product (override) | productAccess[].role | editor, viewer, no_access |
Product-level entries are only emitted when an explicit override exists for that user/product
pair. Without an override the user inherits their workspace role. A role of no_access means
the user is explicitly blocked from that product regardless of their workspace role.
Notes
- Users who don’t have a paid license have an organization role of
guest. - Depending on the type of login (SSO, username/password, etc.), the user’s name may be set to the email address.
curl --request GET \
--url https://api.poelis.com/v1/public/organization/users \
--header 'Authorization: Bearer <token>'import requests
url = "https://api.poelis.com/v1/public/organization/users"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://api.poelis.com/v1/public/organization/users', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));{
"count": 1,
"items": [
{
"email": "jane.doe@example.com",
"id": "auth0|550e8400-e29b-41d4-a716-446655440000",
"name": "Jane Doe",
"org_role": "admin",
"productAccess": [
{
"product_id": "660e8400-e29b-41d4-a716-446655440000",
"product_name": "Jet Engine Specifications",
"role": "viewer",
"workspace_id": "550e8400-e29b-41d4-a716-446655440000"
}
],
"workspaceAccess": [
{
"role": "editor",
"workspace_id": "550e8400-e29b-41d4-a716-446655440000",
"workspace_name": "Aerospace Engineering"
}
]
}
]
}{
"error": "unauthorized",
"message": "Invalid or missing API key"
}{
"error": "forbidden",
"message": "Access denied"
}{
"error": "not_found",
"message": "Not found"
}{
"error": "validation_error",
"message": "Invalid data format",
"details": {
"errors": [
{
"loc": [
"body",
"field_name"
],
"msg": "field required",
"type": "value_error.missing"
}
]
}
}{
"error": "rate_limit_exceeded",
"message": "Too many requests"
}Authorizations
Enter your API key. Example: Bearer poelis_api_...
Query Parameters
Optional search query to filter results.
Maximum number of items to return per page. Must be between 1 and 200.
1 <= x <= 200Number of items to skip from the beginning of the result set. Used for pagination.
x >= 0