diff --git a/integration/admin-client/src/main/java/org/keycloak/admin/client/resource/RealmResource.java b/integration/admin-client/src/main/java/org/keycloak/admin/client/resource/RealmResource.java
index 0ecb18b..fa7309a 100644
--- a/integration/admin-client/src/main/java/org/keycloak/admin/client/resource/RealmResource.java
+++ b/integration/admin-client/src/main/java/org/keycloak/admin/client/resource/RealmResource.java
@@ -2,8 +2,10 @@ package org.keycloak.admin.client.resource;
import org.keycloak.representations.idm.RealmRepresentation;
+import javax.ws.rs.Consumes;
import javax.ws.rs.DELETE;
import javax.ws.rs.GET;
+import javax.ws.rs.PUT;
import javax.ws.rs.Path;
import javax.ws.rs.Produces;
import javax.ws.rs.core.MediaType;
@@ -17,6 +19,10 @@ public interface RealmResource {
@Produces(MediaType.APPLICATION_JSON)
public RealmRepresentation toRepresentation();
+ @PUT
+ @Consumes(MediaType.APPLICATION_JSON)
+ public void update(RealmRepresentation realmRepresentation);
+
@Path("applications")
public ApplicationsResource applications();
diff --git a/testsuite/integration/src/test/java/org/keycloak/testsuite/admin/RealmTest.java b/testsuite/integration/src/test/java/org/keycloak/testsuite/admin/RealmTest.java
index b0a7c8f..d3bbca9 100644
--- a/testsuite/integration/src/test/java/org/keycloak/testsuite/admin/RealmTest.java
+++ b/testsuite/integration/src/test/java/org/keycloak/testsuite/admin/RealmTest.java
@@ -47,6 +47,20 @@ public class RealmTest extends AbstractClientTest {
}
@Test
+ public void updateRealm() {
+ RealmRepresentation rep = realm.toRepresentation();
+ rep.setSsoSessionIdleTimeout(123);
+ rep.setSsoSessionMaxLifespan(12);
+
+ realm.update(rep);
+
+ rep = realm.toRepresentation();
+
+ assertEquals(123, rep.getSsoSessionIdleTimeout().intValue());
+ assertEquals(12, rep.getSsoSessionMaxLifespan().intValue());
+ }
+
+ @Test
public void getRealmRepresentation() {
RealmRepresentation rep = realm.toRepresentation();
assertEquals(REALM_NAME, rep.getRealm());