code: func NewDNSProviderConfig(config *Config) (*DNSProvider, error) {
  	if config == nil {
  		return nil, errors.New("stackpath: the configuration of the DNS provider is nil")
  	}
  
  	if len(config.ClientID) == 0 || len(config.ClientSecret) == 0 {
  		return nil, errors.New("stackpath: credentials missing")
  	}
  
  	if len(config.StackID) == 0 {
  		return nil, errors.New("stackpath: stack id missing")
  	}
  
  	baseURL, _ := url.Parse(defaultBaseURL)
  
  	return &DNSProvider{
  		BaseURL: baseURL,
  		client:  getOathClient(config),
  		config:  config,
  	}, nil
  }
docs: // NewDNSProviderConfig return a DNSProvider instance configured for Stackpath.