/**
  * Creates a new lease and returns some basic details about it.
  * Request might also contain optional $_GET['duration'] parameter, otherwise a default value will be used.
  *
  * @param $string
  * @param Request $request
  * @return mixed
  */
 public function lease($string, Request $request)
 {
     $picker = $this->pickResource($string);
     if ($picker['error']) {
         return $this->respondWithError($picker['error']);
     }
     $resource = Resource::find($picker['resourceId']);
     $leaseParams = Lease::stub($resource->id, null, $request->duration);
     $lease = Lease::create($leaseParams);
     $response = ['leased_at' => Carbon::now(), 'links' => ['rel' => 'details', 'uri' => '/leases/' . $lease->uuid]];
     return $this->respond($response, 201);
 }