$app->GET('/businesses', function (Application $app, Request $request) { $handler = new BusinessHandler(); $result = $handler->getAll(); return new Response($result, 200); }); // Get businesses by category $app->GET('/businesses/category/{category_id}', function (Application $app, Request $request, $category_id) { $handler = new BusinessHandler(); $result = $handler->getByCategory($category_id); return new Response($result, 200); }); // Get businesses by category and subcategory $app->GET('/businesses/category/{category_id}/subcategory/{subcategory_id}', function (Application $app, Request $request, $category_id, $subcategory_id) { $object = array('category_id' => $category_id, 'subcategory_id' => $subcategory_id); $handler = new BusinessHandler(); $result = $handler->getByCategoryAndSubcategory($object); return new Response($result, 200); }); // Create business $app->PUT('/businesses', function (Application $app, Request $request) { if (!authenticate('3', null)) { return new Response('Unauthorized', 401); } $object = array('street_number' => $request->get('street_number'), 'street_name' => $request->get('street_name'), 'city' => $request->get('city'), 'state' => $request->get('state'), 'zip' => $request->get('zip'), 'hours_entry' => $request->get('hours_entry'), 'category_id' => $request->get('category_id'), 'business_name' => $request->get('business_name'), 'phone' => $request->get('phone'), 'description' => $request->get('description'), 'website' => $request->get('website'), 'geolocation' => null); $handler = new BusinessHandler(); $result = $handler->add($object); return new Response($result['message'], $result['status_code']); }); // Get business by id $app->GET('/businesses/{business_id}', function (Application $app, Request $request, $business_id) { $handler = new BusinessHandler();