diff --git a/lib/Kalamar/API.pm b/lib/Kalamar/API.pm
index d48a660..c58b2c7 100644
--- a/lib/Kalamar/API.pm
+++ b/lib/Kalamar/API.pm
@@ -111,7 +111,6 @@
     $c->user->auth_request(
       get => $url => sub {
         my $tx = pop;
-
         $self->_process_response('matches', $index, $tx);
         weaken $index;
         return $cb->($index);
@@ -351,7 +350,7 @@
   if (my $e = $tx->error) {
 
     # Send error
-    $self->_notify_on_error($c, 0, $tx->res->json);
+    $self->_notify_on_error($c, 1, $tx->res);
 
     # $c->notify(
     # error =>
diff --git a/lib/Kalamar/Apps/test_backend.pl b/lib/Kalamar/Apps/test_backend.pl
index 9d851f1..c00ab6b 100644
--- a/lib/Kalamar/Apps/test_backend.pl
+++ b/lib/Kalamar/Apps/test_backend.pl
@@ -128,6 +128,14 @@
     });
   };
 
+  if ($v->param('q') && $v->param('q') eq 'server_fail') {
+    return $c->render(
+      status => 500,
+      inline => 'Oooops'
+    );
+
+  };
+
   if (my $auth = $c->req->headers->header('Authorization')) {
     if (my $jwt = $c->jwt_decode($auth)) {
       $response->{meta}->{authorized} = $jwt->{username} if $jwt->{username};
diff --git a/t/remote.t b/t/remote.t
index ccb4f67..4828b85 100644
--- a/t/remote.t
+++ b/t/remote.t
@@ -48,7 +48,11 @@
   ;
 
 
-
+# Check for server error
+$t->get_ok('/?q=server_fail&ql=poliqarp')
+  ->element_exists('.notify-error')
+  ->text_is('.notify-error', '500: Internal Server Error (remote)')
+  ;
 
 done_testing;
 __END__
