*/ Route::group(array('prefix' => 'v1', 'before' => 'api.auth|api.limit'), function () { // Get all lists Route::get('lists', function () { $lists = Auth::user()->tasklists; return Response::json($lists->toArray()); }); // Create new list Route::post('lists', function () { $list = new TaskList(Input::get()); $list->validate(); $list->user_id = Auth::user()->id; if (!$list->save()) { App::abort(500, 'List was not saved'); } return Response::json($list->toArray(), 201); }); // Get list by ID Route::get('lists/{id}', function ($id) { $list = TaskList::findByOwnerAndId(Auth::user(), $id); return Response::json($list->toArray()); })->where('id', '\\d+'); // Update list by ID Route::put('lists/{id}', function ($id) { $list = TaskList::findByOwnerAndId(Auth::user(), $id); $list->fill(Input::get()); $list->validate(); if (!$list->save()) { App::abort(500, 'List was not updated'); } return Response::json($list->toArray());