// Return an existing SFMemberClient given its shared folder and user email func GetSFMemberClient(c *api.Client, sid, email string, etags []string) (*SFMemberClient, error) { body, header, err := c.GetSFMember(sid, email, etags) if err != nil { return nil, err } sfmClient := SFMemberClient{APIClient: c, Etag: header.Get("ETag"), Desc: SFMember{Sid: sid, Email: email}} err = json.Unmarshal(body, &sfmClient.Desc) if err != nil { return nil, errors.New("Unable to unmarshal retrieved SFMember") } return &sfmClient, nil }