get('/user', function (Request $request) { return $request->user(); }); Route::get('/city/{id}', function ($id) { return new CityResource(City::findOrFail($id)); }); Route::get('/city', function (Request $request) { $filter = new CityFilter(); $filterItems = $filter->transform($request); // [['column', 'operator', 'value']] return new CityCollection(City::where($filterItems)->get()); }); Route::group(['middleware' => 'auth:sanctum'], function() { Route::post('/city', function (StoreCityRequest $request) { $id = DatabaseController::storeApiRequest($request); return new CityResource(City::findOrFail($id)); }); Route::put('/city/{id}', function ($id, UpdateCityRequest $request) { $DatabaseController = new DatabaseController(); $DatabaseController->updateApiRequest($id, $request); }); Route::delete('/city/{id}', function ($id) { City::findOrFail($id)->delete(); }); });