diff options
Diffstat (limited to 'model/client4.go')
-rw-r--r-- | model/client4.go | 20 |
1 files changed, 20 insertions, 0 deletions
diff --git a/model/client4.go b/model/client4.go index 9ad9c9ae4..19d4a9a00 100644 --- a/model/client4.go +++ b/model/client4.go @@ -819,6 +819,16 @@ func (c *Client4) GetTeamMembers(teamId string, page int, perPage int, etag stri } } +// GetTeamMembersForUser returns the team members for a user. +func (c *Client4) GetTeamMembersForUser(userId string, etag string) ([]*TeamMember, *Response) { + if r, err := c.DoApiGet(c.GetUserRoute(userId)+"/teams/members", etag); err != nil { + return nil, &Response{StatusCode: r.StatusCode, Error: err} + } else { + defer closeBody(r) + return TeamMembersFromJson(r.Body), BuildResponse(r) + } +} + // GetTeamMembersByIds will return an array of team members based on the // team id and a list of user ids provided. Must be authenticated. func (c *Client4) GetTeamMembersByIds(teamId string, userIds []string) ([]*TeamMember, *Response) { @@ -852,6 +862,16 @@ func (c *Client4) AddTeamMember(teamId, userId, hash, dataToHash, inviteId strin } } +// RemoveTeamMember will remove a user from a team. +func (c *Client4) RemoveTeamMember(teamId, userId string) (bool, *Response) { + if r, err := c.DoApiDelete(c.GetTeamMemberRoute(teamId, userId)); err != nil { + return false, &Response{StatusCode: r.StatusCode, Error: err} + } else { + defer closeBody(r) + return CheckStatusOK(r), BuildResponse(r) + } +} + // GetTeamStats returns a team stats based on the team id string. // Must be authenticated. func (c *Client4) GetTeamStats(teamId, etag string) (*TeamStats, *Response) { |