diff --git a/src/main/java/it/inaf/ia2/transfer/auth/GmsClient.java b/src/main/java/it/inaf/ia2/transfer/auth/GmsClient.java
index 86d0df707749468fb068ce07194727bd002cf8ea..41260a41ea8e348548685fffc7f2ee7e21d521fc 100644
--- a/src/main/java/it/inaf/ia2/transfer/auth/GmsClient.java
+++ b/src/main/java/it/inaf/ia2/transfer/auth/GmsClient.java
@@ -1,6 +1,10 @@
 package it.inaf.ia2.transfer.auth;
 
+import java.net.URLEncoder;
+import java.nio.charset.StandardCharsets;
 import java.util.Collections;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.beans.factory.annotation.Value;
 import org.springframework.cache.annotation.Cacheable;
@@ -14,9 +18,11 @@ import org.springframework.web.client.RestTemplate;
 @Component
 public class GmsClient {
 
+    private static final Logger LOG = LoggerFactory.getLogger(GmsClient.class);
+
     @Value("${gms_base_url}")
     private String gmsBaseUrl;
-    
+
     private final RestTemplate restTemplate;
 
     @Autowired
@@ -27,7 +33,9 @@ public class GmsClient {
     @Cacheable("gms_cache")
     public boolean isMemberOf(String token, String group) {
 
-        String url = gmsBaseUrl + "/vo/search/" + group;
+        LOG.trace("called isMemberOf for group " + group);
+        
+        String url = gmsBaseUrl + "/vo/search/" + URLEncoder.encode(group, StandardCharsets.UTF_8);
 
         String gmsResponse = restTemplate.exchange(url, HttpMethod.GET, getEntity(token), String.class).getBody();
         if (gmsResponse == null) {