From ce672801afdcb2ddbbfef222381d12c16e2ca47f Mon Sep 17 00:00:00 2001 From: Hisanobu Okuda Date: Tue, 24 Mar 2026 07:48:17 +0900 Subject: [PATCH] Clarify credentials field availability in GET /admin/realms/{realm}/users documentation Closes #46972 Signed-off-by: Hisanobu Okuda --- .../org/keycloak/services/resources/admin/UsersResource.java | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/services/src/main/java/org/keycloak/services/resources/admin/UsersResource.java b/services/src/main/java/org/keycloak/services/resources/admin/UsersResource.java index d2e41f77261..49ea4335c3d 100755 --- a/services/src/main/java/org/keycloak/services/resources/admin/UsersResource.java +++ b/services/src/main/java/org/keycloak/services/resources/admin/UsersResource.java @@ -272,7 +272,8 @@ public class UsersResource { @APIResponse(responseCode = "403", description = "Forbidden") }) @Tag(name = KeycloakOpenAPI.Admin.Tags.USERS) - @Operation(summary = "Get users Returns a stream of users, filtered according to query parameters.") + @Operation(summary = "Get users Returns a stream of users, filtered according to query parameters.", + description = "Returns a stream of users. Note that the 'credentials' field in the returned UserRepresentation objects is typically not populated for performance reasons. If specific credential metadata is required, use the dedicated 'GET /admin/realms/{realm}/users/{user-id}/credentials' endpoint.") public Stream getUsers( @Parameter(description = "A String contained in username, first or last name, or email. Default search behavior is prefix-based (e.g., foo or foo*). Use *foo* for infix search and \"foo\" for exact search.") @QueryParam("search") String search, @Parameter(description = "A String contained in lastName, or the complete lastName, if param \"exact\" is true") @QueryParam("lastName") String last,