public function request($method, $uri, array $parameters = [])
{
try {
$response = $this->guzzle->request($method, $uri, $parameters);
} catch (ClientException $e) {
if (!$e->hasResponse()) {
throw $e;
}
throw $this->resolveExceptionClass($e);
} catch (Exception $e) {
throw $e;
}
return Response::createFromJson(json_decode($response->getBody()->getContents(), true));
}