9 // BaseEndpoint will return a URL without the /vX.Y
10 // portion of the URL.
11 func BaseEndpoint(endpoint string) (string, error) {
12 u, err := url.Parse(endpoint)
17 u.RawQuery, u.Fragment = "", ""
20 versionRe := regexp.MustCompile("v[0-9.]+/?")
22 if version := versionRe.FindString(path); version != "" {
23 versionIndex := strings.Index(path, version)
24 u.Path = path[:versionIndex]
27 return u.String(), nil