/** * @api {post} /tasks Create A Task * @apiGroup Tasks * @apiDescription Returns information about a single task. * * @param Request $request * * @return \Illuminate\Http\Response */ public function store(Request $request) { $user = $this->requireAuthentication(); $this->validate($request, ['stickerId' => 'required|exists:stickers,id', 'name' => 'required|unique:tasks,name', 'submission' => 'required', 'submissionType' => 'required|in:' . Task::SUBMISSION_TEXT . ',' . Task::SUBMISSION_IMAGE]); $data = $request->only(['name', 'description', 'submission', 'submissionType', 'stickerId']); $task = new Task($data); $task->userId = $user->id; $task->save(); return $this->response(['task' => $task]); }