This article clarifies how to improve performance when retrieving a list of users associated with an application or group. Standard API endpoints return detailed profile and credential information that may cause slower load times if that data is not required for the task.
- API
- Application User Management
- Group User Management
To optimize performance and reduce data payload size, use the skinny_users endpoints. These endpoints operate similarly to standard user endpoints but omit specific objects, such as detailed profiles or credentials.
Application Skinny Users
When retrieving users for an application, the standard endpoint returns full profile objects:
/api/v1/apps/<id>/users
Example of a standard response:
[
{
"id": "{{userId}}",
"externalId": null,
"created": "2025-09-25T04:06:04.000Z",
"lastUpdated": "2025-09-25T04:06:04.000Z",
"scope": "GROUP",
"status": "ACTIVE",
"statusChanged": "2025-09-25T04:06:04.000Z",
"passwordChanged": null,
"syncState": "DISABLED",
"credentials": {
"userName": "john.doe@atko.mail"
},
"profile": {
"street_address": null,
"country": null,
"website": null,
"zoneinfo": "America/Los_Angeles",
"birthdate": null,
"gender": null,
"formatted": null,
"profile": null,
"locality": null,
"given_name": "John",
"middle_name": null,
"locale": "en_US",
"picture": null,
"name": "John Doe",
"nickname": null,
"phone_number": null,
"region": null,
"postal_code": null,
"family_name": "Doe",
"email": "john.doe@atko.mail"
},
"_links": {
"app": {
"href": "https://{{oktaTenantURL}}/api/v1/apps/{{appId}}"
},
"user": {
"href": "https://{{oktaTenantURL}}/api/v1/users/{{userId}}"
},
"group": {
"name": "Everyone",
"href": "https://{{oktaTenantURL}}/api/v1/groups/{{groupId}}"
}
}
}
]
Use the following endpoint for a more efficient retrieval that returns an empty profile object:
/api/v1/apps/<id>/skinny_users
Example of the optimized response:
[
{
"id": "{{userId}}",
"externalId": null,
"created": "2025-09-25T04:06:04.000Z",
"lastUpdated": "2025-09-25T04:06:04.000Z",
"scope": "",
"status": "ACTIVE",
"statusChanged": "2025-09-25T04:06:04.000Z",
"passwordChanged": null,
"credentials": {
"userName": "john.doe@atko.mail"
},
"profile": {}
}
]
Group Skinny Users
For group-based requests, the following endpoint omits credentials and credentials.provider details:
/api/v1/groups/<id>/skinny_users
NOTE: These endpoints utilize their own rate limit buckets, which ensure they do not interfere with standard application or group endpoint limits.
