diff options
Diffstat (limited to 'vendor/github.com/matterbridge/Rocket.Chat.Go.SDK/rest/permissions.go')
-rw-r--r-- | vendor/github.com/matterbridge/Rocket.Chat.Go.SDK/rest/permissions.go | 33 |
1 files changed, 33 insertions, 0 deletions
diff --git a/vendor/github.com/matterbridge/Rocket.Chat.Go.SDK/rest/permissions.go b/vendor/github.com/matterbridge/Rocket.Chat.Go.SDK/rest/permissions.go new file mode 100644 index 00000000..2ccbd2f1 --- /dev/null +++ b/vendor/github.com/matterbridge/Rocket.Chat.Go.SDK/rest/permissions.go @@ -0,0 +1,33 @@ +package rest + +import ( + "bytes" + "encoding/json" + + "github.com/matterbridge/Rocket.Chat.Go.SDK/models" +) + +type UpdatePermissionsRequest struct { + Permissions []models.Permission `json:"permissions"` +} + +type UpdatePermissionsResponse struct { + Status + Permissions []models.Permission `json:"permissions"` +} + +// UpdatePermissions updates permissions +// +// https://rocket.chat/docs/developer-guides/rest-api/permissions/update/ +func (c *Client) UpdatePermissions(req *UpdatePermissionsRequest) (*UpdatePermissionsResponse, error) { + body, err := json.Marshal(req) + if err != nil { + return nil, err + } + + response := new(UpdatePermissionsResponse) + if err := c.Post("permissions.update", bytes.NewBuffer(body), response); err != nil { + return nil, err + } + return response, nil +} |