From d493e21dbe73baeddeac7055abb12786dc1af25f Mon Sep 17 00:00:00 2001 From: Hasol Im Date: Thu, 7 Dec 2023 11:05:46 -0500 Subject: [PATCH] Add notify_users option to 2 methods update_issue_field method can utilize "notifyUsers" query parameter to enable/disable email notification. https://developer.atlassian.com/cloud/jira/platform/rest/v3/api-group-issues/#api-rest-api-3-issue-issueidorkey-put So does issue_edit_coment method as well. https://developer.atlassian.com/cloud/jira/platform/rest/v3/api-group-issue-comments/#api-rest-api-3-issue-issueidorkey-comment-id-put --- atlassian/jira.py | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/atlassian/jira.py b/atlassian/jira.py index f85eac3b6..e00a3b73b 100644 --- a/atlassian/jira.py +++ b/atlassian/jira.py @@ -1160,11 +1160,13 @@ def issue_fields(self, key): issue = self.get("{base_url}/{key}".format(base_url=base_url, key=key)) return issue["fields"] - def update_issue_field(self, key, fields="*all"): + def update_issue_field(self, key, fields="*all", notify_users=True): base_url = self.resource_url("issue") + params = {"notifyUsers": "true" if notify_users else "false"} return self.put( "{base_url}/{key}".format(base_url=base_url, key=key), data={"fields": fields}, + params=params, ) def bulk_update_issue_field(self, key_list, fields="*all"): @@ -1465,13 +1467,14 @@ def issue_add_comment(self, issue_key, comment, visibility=None): data["visibility"] = visibility return self.post(url, data=data) - def issue_edit_comment(self, issue_key, comment_id, comment, visibility=None): + def issue_edit_comment(self, issue_key, comment_id, comment, visibility=None, notify_users=True): """ Updates an existing comment :param issue_key: str :param comment_id: int :param comment: str :param visibility: OPTIONAL + :param notify_users: bool OPTIONAL :return: """ base_url = self.resource_url("issue") @@ -1481,7 +1484,8 @@ def issue_edit_comment(self, issue_key, comment_id, comment, visibility=None): data = {"body": comment} if visibility: data["visibility"] = visibility - return self.put(url, data=data) + params = {"notifyUsers": "true" if notify_users else "false"} + return self.put(url, data=data, params=params) def get_issue_remotelinks(self, issue_key, global_id=None, internal_id=None): """