List active service users for an organizational level in Dynatrace with the IAM API, filtered by your permissions and account context.
| GET | SaaS | https://{your-environment-id}.apps.dynatrace.com/platform/iam/v1/organizational-levels/{level-type}/{level-id}/service-users |
You use level-type and level-id to choose the organizational level, then page-key, page, and pageSize to page through the results. The response returns active service users from that level that are usable by the execution user.
To execute this request, you need a platform token or OAuth access token with iam:service-users:use scope. To learn how to obtain and use it, see Tokens and authentication.
| Parameter | Type | Description | In | Required |
|---|---|---|---|---|
| level-type | string | Allowed values: account, environment | path | Required |
| level-id | string | Identifier of 'level-type'. Max allowed length is 36. For account use its UUID. For environment 'level-type' user has to be assigned to account to which the environment is assigned, user does not need any permissions in such environment | path | Required |
| page-key | string | Cursor-based Pagination - page-key. Cursor to the next page, includes page number and filtering values. Implicit filtering values will be overwritten by page-key property. Cursor-based Pagination can't be used together with Offset-based Pagination! Max length: 2000 | query | Optional |
| page | integer | Offset-based Pagination - page. Default value: 1. Page number to return. Offset-based Pagination can't be used with Cursor-based Pagination! | query | Optional |
| pageSize | integer | Pagination - page size. Default value: 1000. Minimum value: 1. Maximum value: 1000 | query | Optional |
| Code | Type | Description |
|---|---|---|
| 200 | Search | Active service users from the organizational level filtered by user permissions fetched successfully |
| 401 | Public | Authorization header is missing or is incorrect. |
| 403 | Public | Execution user is not allowed to perform the action. |
| 404 | Public | The 'level-id' param does not exist |
| 429 | Public | Too many requests have been sent - requests are throttled |
SearchResult object| Element | Type | Description |
|---|---|---|
| results | Service | Collection containing the paginated result |
| nextPageKey | string | Key for requesting the next page of the result |
| totalCount | integer | Total count of records |
ServiceUserDto objectCollection containing the paginated result
| Element | Type | Description |
|---|---|---|
| uid | string | - |
| string | - | |
| name | string | - |
| surname | string | - |
| description | string | - |
| createdAt | string | - |
PublicExceptionMessage object| Element | Type | Description |
|---|---|---|
| error | Error | - |
ErrorResponse object| Element | Type | Description |
|---|---|---|
| code | integer | - |
| message | string | - |
| details | Error | - |
ErrorResponseDetails object| Element | Type | Description |
|---|---|---|
| missingScopes | string[] | - |
| constraintViolations | Error | - |
ErrorResponseConstraintViolation object| Element | Type | Description |
|---|---|---|
| path | string | - |
| message | string | - |
| parameterLocation | string | - |
{"results": [{"uid": "string","email": "string","name": "string","surname": "string","description": "string","createdAt": "string"}],"nextPageKey": "string","totalCount": 1}
{"error": {"code": 1,"message": "string","details": {"missingScopes": ["string"],"constraintViolations": [{"path": "string","message": "string","parameterLocation": "string"}]}}}