code: func NewDNSProviderConfig(config *Config) (*DNSProvider, error) {
  	if config == nil {
  		return nil, errors.New("sakuracloud: the configuration of the DNS provider is nil")
  	}
  
  	if config.Token == "" {
  		return nil, errors.New("sakuracloud: AccessToken is missing")
  	}
  
  	if config.Secret == "" {
  		return nil, errors.New("sakuracloud: AccessSecret is missing")
  	}
  
  	apiClient := api.NewClient(config.Token, config.Secret, "is1a")
  	if config.HTTPClient == nil {
  		apiClient.HTTPClient = http.DefaultClient
  	} else {
  		apiClient.HTTPClient = config.HTTPClient
  	}
  
  	return &DNSProvider{
  		client: apiClient.GetDNSAPI(),
  		config: config,
  	}, nil
  }
docs: // NewDNSProviderConfig return a DNSProvider instance configured for SakuraCloud.