public function api($name)
    {
        switch ($name) {
            case 'domain':
            case 'domain_service':
            case 'domainService':
                return new Api\Domain($this);

            case 'colocation':
            case 'colocation_service':
            case 'colocationService':
                return new Api\Colocation($this);

            case 'forward':
            case 'forward_service':
            case 'forwardService':
                return new Api\Forward($this);

            case 'vps':
            case 'vps_service':
            case 'vpsService':
                return new Api\Vps($this);

            case 'hosting':
            case 'web_hosting':
            case 'webHosting':
            case 'web_hosting_service':
            case 'webHostingService':
                return new Api\WebHosting($this);

            case 'haip':
            case 'ha_ip':
            case 'ha_ip_service':
            case 'haip_service':
            case 'haipService':
                return new Api\Haip($this);

            default:
                throw new \InvalidArgumentException(sprintf('Undefined api instance called: [%s]', $name));
        }
    }