diff --git a/src/server/app/Controller/CatalogController.php b/src/server/app/Controller/CatalogController.php
index 2848c6d9c37cdb0808e26c36a1199e74b0223357..c0d44a6e92f11dbfb481b4326c30933b5af56fbb 100644
--- a/src/server/app/Controller/CatalogController.php
+++ b/src/server/app/Controller/CatalogController.php
@@ -296,7 +296,42 @@ class CatalogController
 
         $soapRequest = new SOAPRequest("report-user", "CreateReport", $headers, [], $body);
         $response = $soapRequest->post();
-        
+
+        echo json_encode($response);
+    }
+
+    public function catalogRequestCallback()
+    {
+        $json = file_get_contents('php://input');
+        $data = json_decode($json);
+
+        $response = new CustomResponse();
+        $response->status = 200;
+        $response->message = 'Success';
+        $response->data = $data;
+
+        echo json_encode($response);
+    }
+
+    public function getCatalogs()
+    {
+        $title = $_GET["title"] ?? "";
+        $page = $_GET["page"] ?? "1";
+        $amount = $_GET["amount"] ?? "10";
+
+
+        $catalogSearchRequest = new CatalogSearchRequest();
+        $catalogSearchRequest->title = $title;
+        $catalogSearchRequest->page = $page;
+        $catalogSearchRequest->pageSize = $amount;
+
+        $catalogs = $this->catalogService->search($catalogSearchRequest);
+
+        $response = new CustomResponse();
+        $response->status = 200;
+        $response->message = "Success";
+        $response->data = $catalogs->catalogs;
+
         echo json_encode($response);
     }
 }
\ No newline at end of file
diff --git a/src/server/app/Controller/UserController.php b/src/server/app/Controller/UserController.php
index b788aeca61da74aae320f31a1ccac27c0cf88615..aaf449f37375b050263e900ef57fc1f605eb5a61 100644
--- a/src/server/app/Controller/UserController.php
+++ b/src/server/app/Controller/UserController.php
@@ -82,7 +82,7 @@ class UserController
         try {
             $this->userService->signUp($request);
 
-            View::redirect($redirectTo ?? '/signin');
+            View::redirect($redirectTo && $redirectTo != '' ? $redirectTo : '/signin');
         } catch (ValidationException $exception) {
             View::render('user/signUp', [
                 'title' => 'Sign Up',
diff --git a/src/server/routes/view.php b/src/server/routes/view.php
index 782782c16a2545ac3acd8d3f1ca35625c8d50f84..261035db3965b0bd8476ea0417a70da88def1633 100644
--- a/src/server/routes/view.php
+++ b/src/server/routes/view.php
@@ -46,6 +46,8 @@ Router::add("DELETE", "/api/catalog/([A-Za-z0-9\-]*)/delete", CatalogController:
 Router::add("POST", '/api/catalog/([A-Za-z0-9\-]*)/update', CatalogController::class, 'update', [AdminAuthMiddleware::class]);
 
 Router::add("POST", "/api/v2/catalog-request", CatalogController::class, "createCatalogRequest", []);
+Router::add("POST", "/api/v2/catalog", CatalogController::class, "catalogRequestCallback", []);
+Router::add("GET", "/api/v2/catalogs", CatalogController::class, "getCatalogs", []);
 
 
 // Watchlist controllers