diff options
author | Poornima <mpoornima@users.noreply.github.com> | 2017-03-12 04:10:56 +0530 |
---|---|---|
committer | enahum <nahumhbl@gmail.com> | 2017-03-11 19:40:56 -0300 |
commit | 482a0fb5fc248b1ec61db35299dc3e6d963ad5ab (patch) | |
tree | 1f957f78b3a053366ca20fbcff8b274ea5eac4a0 /model | |
parent | 11f1859de12be22726a93bb0fd201f3d692022a0 (diff) | |
download | chat-482a0fb5fc248b1ec61db35299dc3e6d963ad5ab.tar.gz chat-482a0fb5fc248b1ec61db35299dc3e6d963ad5ab.tar.bz2 chat-482a0fb5fc248b1ec61db35299dc3e6d963ad5ab.zip |
Adding functionality to get & delete incoming webhooks (#5648)
Diffstat (limited to 'model')
-rw-r--r-- | model/client4.go | 24 |
1 files changed, 24 insertions, 0 deletions
diff --git a/model/client4.go b/model/client4.go index 9b0cce294..71d37341d 100644 --- a/model/client4.go +++ b/model/client4.go @@ -142,6 +142,10 @@ func (c *Client4) GetIncomingWebhooksRoute() string { return fmt.Sprintf("/hooks/incoming") } +func (c *Client4) GetIncomingWebhookRoute(hookID string) string { + return fmt.Sprintf(c.GetIncomingWebhooksRoute()+"/%v", hookID) +} + func (c *Client4) GetPreferencesRoute(userId string) string { return fmt.Sprintf(c.GetUserRoute(userId) + "/preferences") } @@ -968,6 +972,26 @@ func (c *Client4) GetIncomingWebhooksForTeam(teamId string, page int, perPage in } } +// GetIncomingWebhook returns an Incoming webhook given the hook ID +func (c *Client4) GetIncomingWebhook(hookID string, etag string) (*IncomingWebhook, *Response) { + if r, err := c.DoApiGet(c.GetIncomingWebhookRoute(hookID), etag); err != nil { + return nil, &Response{StatusCode: r.StatusCode, Error: err} + } else { + defer closeBody(r) + return IncomingWebhookFromJson(r.Body), BuildResponse(r) + } +} + +// DeleteIncomingWebhook deletes and Incoming Webhook given the hook ID +func (c *Client4) DeleteIncomingWebhook(hookID string) (bool, *Response) { + if r, err := c.DoApiDelete(c.GetIncomingWebhookRoute(hookID)); err != nil { + return false, &Response{StatusCode: r.StatusCode, Error: err} + } else { + defer closeBody(r) + return CheckStatusOK(r), BuildResponse(r) + } +} + // Preferences Section // GetPreferences returns the user's preferences |