// Retrieve an existing shared folder func GetSharedFolderClient(c *api.Client, sid string, etags []string) (*SharedFolderClient, error) { body, header, err := c.ListSharedFolderMetadata(sid, etags) if err != nil { return nil, err } sfClient := SharedFolderClient{APIClient: c} err = json.Unmarshal(body, &sfClient.Desc) if err != nil { return nil, errors.New("Unable to unmarshal retrieved Shared Folder") } sfClient.Etag = header.Get("ETag") return &sfClient, nil }