/**
  * Store a newly created resource in storage.
  *
  * @param  \Illuminate\Http\Request  $request
  * @return \Illuminate\Http\Response
  */
 public function store(Request $request)
 {
     $this->validate($request, ['content' => 'required_if:type,text|string|min:1|max:2000', 'url' => 'required_if:type,video,link|url', 'type' => 'required|in:text,image,video,link']);
     $content = $request->input('content');
     $response_type = ResponseType::where('name', $request->input('type'))->first();
     $response = new Response();
     $response->content = $response_type->requiresContent() ? null : $content;
     $response->url = ResponseHelper::getUrl($response_type, $request);
     $response->response_type_id = $response_type->id;
     $response->save();
     return response(['response' => $response], 201)->header('Location', '/api/responses/' . $response->id);
 }