public static function factory($config = [])
    {

        $clientConfig = self::getClientConfig($config);

        $guzzleClient = new Client($clientConfig);

        if (isset($config['apiVersion']) && $config['apiVersion'] !== 'v8') {
            throw new \Exception('Only v8 is supported at this time');

        }

        $description = self::getAPIDescriptionByJsonFile('services_v8.json');
        $client = new GuzzleClient($guzzleClient, $description);

        return $client;
    }