From 8258fceb33ef10840021cf4f472e8dac035ebe62 Mon Sep 17 00:00:00 2001 From: Zorian Motso Date: Mon, 16 Feb 2026 18:28:15 +0200 Subject: [PATCH] Fix duplicate client-uuid path parameter in OpenAPI spec Rename {client-uuid} to {targetClientUuid} in RoleContainerResource to avoid duplicate parameter names when the resource is mounted under ClientResource. {clientUuid} is not sufficient because code generators normalise {client-uuid} from the parent path to clientUuid as well. Closes #46015 Signed-off-by: Zorian Motso --- .../services/resources/admin/RoleContainerResource.java | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/services/src/main/java/org/keycloak/services/resources/admin/RoleContainerResource.java b/services/src/main/java/org/keycloak/services/resources/admin/RoleContainerResource.java index cbe0e07225c..9cf6337a708 100755 --- a/services/src/main/java/org/keycloak/services/resources/admin/RoleContainerResource.java +++ b/services/src/main/java/org/keycloak/services/resources/admin/RoleContainerResource.java @@ -424,7 +424,7 @@ public class RoleContainerResource extends RoleResource { * @param clientUuid * @return */ - @Path("{role-name}/composites/clients/{client-uuid}") + @Path("{role-name}/composites/clients/{targetClientUuid}") @GET @NoCache @Produces(MediaType.APPLICATION_JSON) @@ -436,7 +436,7 @@ public class RoleContainerResource extends RoleResource { @APIResponse(responseCode = "404", description = "Not Found") }) public Stream getClientRoleComposites(final @Parameter(description = "role's name (not id!)") @PathParam("role-name") String roleName, - final @PathParam("client-uuid") String clientUuid) { + final @PathParam("targetClientUuid") String clientUuid) { auth.roles().requireView(roleContainer); RoleModel role = roleContainer.getRole(roleName); if (role == null) {