diff --git a/t/fixtures.t b/t/fixtures.t
index 76cefa6..c3fbfdc 100644
--- a/t/fixtures.t
+++ b/t/fixtures.t
@@ -45,6 +45,16 @@
   ;
 is(defined $err ? $err->text : '', '');
 
+$err = $t->get_ok('/v1.0/search?q=baum&ql=poliqarp&offset=0&count=25&fields=textSigle')
+  ->status_is(200)
+  ->json_is('/meta/count', 25)
+  ->json_is('/meta/serialQuery', "tokens:s:Baum")
+  ->json_hasnt('/matches/0/docSigle')
+  ->json_is('/matches/0/textSigle', "GOE/AGI/00000")
+  ->tx->res->dom->at('#error')
+  ;
+is(defined $err ? $err->text : '', '');
+
 
 $t->get_ok('/v1.0/corpus/WPD15/232/39681/p2133-2134?spans=false&foundry=*')
   ->status_is(200)
diff --git a/t/fixtures/response_query_baum_o0_c25_ftextsigle.json b/t/fixtures/response_query_baum_o0_c25_ftextsigle.json
new file mode 100644
index 0000000..802a637
--- /dev/null
+++ b/t/fixtures/response_query_baum_o0_c25_ftextsigle.json
@@ -0,0 +1,58 @@
+{
+  "status" : 200,
+  "json" : {
+    "@context" : "http://korap.ids-mannheim.de/ns/KoralQuery/v0.3/context.jsonld",
+    "meta" :  {
+      "count" : 25,
+      "startIndex" : 0,
+      "authorized" : null,
+      "timeout" : 120000,
+      "context" : {
+        "left" : ["token",40],
+        "right" : ["token",40]
+      },
+      "fields" : ["textSigle"],
+      "version" : "0.55.7",
+      "benchmark" : "0.120577834 s",
+      "totalResults" : 51,
+      "serialQuery" : "tokens:s:Baum",
+      "itemsPerPage" : 25
+    },
+    "query" : {
+      "@type" : "koral:token",
+      "wrap" : {
+        "@type" : "koral:term",
+        "layer" : "orth",
+        "key" : "Baum",
+        "match" : "match:eq",
+        "foundry" : "opennlp",
+        "rewrites" : [
+          {
+            "@type" : "koral:rewrite",
+            "src" : "Kustvakt",
+            "operation" : "operation:injection",
+            "scope" : "foundry"
+          }
+        ]
+      }
+    },
+    "matches" : [
+      {
+        "field" : "tokens",
+        "textSigle" : "GOE/AGI/00000",
+        "startMore" : true,
+        "endMore" : true,
+        "snippet" : "<span class=\"context-left\"><span class=\"more\"></span>sie etwas bedeuten zu wollen und machte mit der Oberlippe eine fatale Miene. ich sprach sehr viel mit ihr durch, sie war überall zu Hause und merkte gut auf die Gegenstände. so fragte sie mich einmal, was das für ein </span><span class=\"match\"><mark>Baum</mark></span><span class=\"context-right\"> sei. es war ein schöner großer Ahorn, der erste, der mir auf der ganzen Reise zu Gesichte kam. den hatte sie doch gleich bemerkt und freute sich, da mehrere nach und nach erschienen, daß sie auch diesen Baum unterscheiden könne<span class=\"more\"></span></span>",
+        "matchID" : "match-GOE/AGI/00000-p2030-2031"
+      },
+      {
+        "field" : "tokens",
+        "textSigle" : "GOE/AGI/00001",
+        "startMore" : true,
+        "endMore" : true,
+        "snippet" : "<span class=\"context-left\"><span class=\"more\"></span>für ein Baum sei. es war ein schöner großer Ahorn, der erste, der mir auf der ganzen Reise zu Gesichte kam. den hatte sie doch gleich bemerkt und freute sich, da mehrere nach und nach erschienen, daß sie auch diesen </span><span class=\"match\"><mark>Baum</mark></span><span class=\"context-right\"> unterscheiden könne. sie gehe, sagte sie, nach Bozen auf die Messe, wo ich doch wahrscheinlich auch hinzöge. wenn sie mich dort anträfe, müsse ich ihr einen Jahrmarkt kaufen, welches ich ihr denn auch versprach. dort wollte sie auch ihre neue<span class=\"more\"></span></span>",
+        "matchID" : "match-GOE/AGI/00000-p2068-2069"
+      }
+    ]
+  }
+}
diff --git a/t/server/mock.pl b/t/server/mock.pl
index 88ec023..e9e91d4 100644
--- a/t/server/mock.pl
+++ b/t/server/mock.pl
@@ -7,6 +7,9 @@
 use warnings;
 use Mojo::File qw/path/;
 use Mojo::Util qw/slugify/;
+use Kalamar::Controller::Search;
+
+our @default_search_fields = @Kalamar::Controller::Search::search_fields;
 
 # This is an API fake server with fixtures
 
@@ -139,6 +142,7 @@
   $v->optional('context');
   $v->optional('offset');
   $v->optional('pipes');
+  $v->optional('fields');
   $v->optional('cutoff')->in(qw/true false/);
 
   $c->app->log->debug('Receive request');
@@ -171,6 +175,10 @@
   push @slug_base, 'cq' if defined $v->param('cq');
   push @slug_base, 'p' . $v->param('pipes') if defined $v->param('pipes');
 
+  if (defined $v->param('fields') && ($v->param('fields') ne join(',', @default_search_fields))) {
+    push @slug_base, 'f' .join('-', split(',', $v->param('fields')));
+  };
+
   # Get response based on query parameter
   my $response = $c->load_response('query_' . slugify(join('_', @slug_base)));
 
