code: func Api(baseUrl string, options ...interface{}) *Resource {
  	u, err := url.Parse(baseUrl)
  	if err != nil {
  		// TODO: don't panic..
  		panic("Api() - url.Parse(baseUrl) Error:" + err.Error())
  	}
  
  	apiInstance := &ApiStruct{BaseUrl: u, BasicAuth: nil}
  
  	for _, o := range options {
  		switch v := o.(type) {
  		case *BasicAuth:
  			apiInstance.BasicAuth = v
  		case *http.Client:
  			apiInstance.Client = v
  		case string:
  			apiInstance.PathSuffix = v
  		}
  	}
  
  	if apiInstance.Client == nil {
  		apiInstance.Cookies, _ = cookiejar.New(nil)
  
  		// Skip verify by default?
  		tr := &http.Transport{
  			TLSClientConfig: &tls.Config{InsecureSkipVerify: true},
  		}
  
  		client := &http.Client{
  			Transport: tr,
  			Jar:       apiInstance.Cookies,
  		}
  		apiInstance.Client = client
  	}
  	return &Resource{Url: "", Api: apiInstance}
  }
docs: // Create a new API Instance and returns a Resource
  // Accepts URL as parameter, and either a Basic Auth or a OAuth2 Client.