protected function send($function, array $options = [])
    {
        $guzzle = $this->getGuzzleClient();

        $url = $this->getUrl();

        // merge options
        $options = $this->getOptions($options);

        // need to reset after every request
        $this->initialize();

        return $guzzle->$function($url, $options);
    }