diff options
author | Joram Wilander <jwawilander@gmail.com> | 2017-03-25 02:38:24 -0400 |
---|---|---|
committer | enahum <nahumhbl@gmail.com> | 2017-03-25 03:38:24 -0300 |
commit | ea74613444c65e965a76a6ad7640f6c011c2c69b (patch) | |
tree | 6d4941d695a5637bb2ff112706edeabc7ba79ef9 /model/client4.go | |
parent | 54d3d47daf9190275bbdaf8703b84969a4593451 (diff) | |
download | chat-ea74613444c65e965a76a6ad7640f6c011c2c69b.tar.gz chat-ea74613444c65e965a76a6ad7640f6c011c2c69b.tar.bz2 chat-ea74613444c65e965a76a6ad7640f6c011c2c69b.zip |
Implement some team endpoints for APIv4 (#5870)
* Implement GET /users/{user_id}/teams/members endpoint for APIv4
* Implement DELETE /teams/{team_id}/members/{user_id} endpoint for APIv4
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) { |