diff --git a/Changes b/Changes
index 3f7d254..76170f3 100644
--- a/Changes
+++ b/Changes
@@ -18,6 +18,7 @@
   - Added statisticsRewriteHandler and queryContextRewrite, 
   - changed file locations to the data folder, 
   - removed unused beans (cacheManager, sqliteDataSource)
+- Fix landingPage in the free resource web-service.  
 
 # version 0.76
 
diff --git a/src/main/java/de/ids_mannheim/korap/annotation/FreeResourceParser.java b/src/main/java/de/ids_mannheim/korap/annotation/FreeResourceParser.java
index be84ed9..777f511 100644
--- a/src/main/java/de/ids_mannheim/korap/annotation/FreeResourceParser.java
+++ b/src/main/java/de/ids_mannheim/korap/annotation/FreeResourceParser.java
@@ -67,6 +67,15 @@
                             resource.at("/institution").asText(),
                             resource.at("/corpus_query").asText());
                 }
+                else {
+                	resourceDao.updateResource(resource.at("/id").asText(),
+                            resource.at("/de_title").asText(),
+                            resource.at("/en_title").asText(),
+                            resource.at("/en_description").asText(), 
+                            layers,
+                            resource.at("/institution").asText(),
+                            resource.at("/corpus_query").asText());
+                }
             }
             catch (Exception e) {
                 log.warn("Failed creating resource: " + e.getMessage());
diff --git a/src/main/java/de/ids_mannheim/korap/dao/ResourceDao.java b/src/main/java/de/ids_mannheim/korap/dao/ResourceDao.java
index 79cfad7..5655980 100644
--- a/src/main/java/de/ids_mannheim/korap/dao/ResourceDao.java
+++ b/src/main/java/de/ids_mannheim/korap/dao/ResourceDao.java
@@ -80,4 +80,19 @@
         entityManager.persist(r);
 
     }
+    
+    @Transactional
+    public void updateResource (String id, String germanTitle,
+            String englishTitle, String englishDescription,
+            Set<AnnotationLayer> layers, String institution, 
+            String corpusQuery) throws KustvaktException {
+        ParameterChecker.checkStringValue(id, "id");
+        ParameterChecker.checkStringValue(englishTitle, "en_title");
+        ParameterChecker.checkStringValue(germanTitle, "de_title");
+
+        Resource r = new Resource(id, germanTitle, englishTitle,
+                englishDescription, layers, institution, corpusQuery);
+        entityManager.merge(r);
+
+    }
 }
diff --git a/src/main/java/de/ids_mannheim/korap/dto/converter/ResourceConverter.java b/src/main/java/de/ids_mannheim/korap/dto/converter/ResourceConverter.java
index 5f13d52..c1a207f 100644
--- a/src/main/java/de/ids_mannheim/korap/dto/converter/ResourceConverter.java
+++ b/src/main/java/de/ids_mannheim/korap/dto/converter/ResourceConverter.java
@@ -48,7 +48,8 @@
                 layers.put(annotationPair.getId(), code);
             }
             dto.setLayers(layers);
-            dto.setLandingPage("https://korap.ids-mannheim.de?" +r.getCorpusQuery());
+            dto.setLandingPage("https://korap.ids-mannheim.de?cq=" +
+            		r.getCorpusQuery());
             dto.setInstitution(r.getInstitution());
 
             resourceDtoList.add(dto);
diff --git a/src/test/java/de/ids_mannheim/korap/web/controller/FreeResourceControllerTest.java b/src/test/java/de/ids_mannheim/korap/web/controller/FreeResourceControllerTest.java
index 2343dd7..99296a1 100644
--- a/src/test/java/de/ids_mannheim/korap/web/controller/FreeResourceControllerTest.java
+++ b/src/test/java/de/ids_mannheim/korap/web/controller/FreeResourceControllerTest.java
@@ -31,7 +31,7 @@
         assertEquals(1, n.at("/languages").size());
         assertEquals(6, n.at("/layers").size());
         assertEquals("Wikimedia Foundation", n.at("/institution").asText());
-        assertEquals("https://korap.ids-mannheim.de?corpusSigle=WPD17", 
+        assertEquals("https://korap.ids-mannheim.de?cq=corpusSigle=WPD17", 
                 n.at("/landingPage").asText());
     }
 }
