@@ -94,6 +94,36 @@ def enhanced_jql_get_list_of_tickets(
9494 break
9595 return results
9696
97+ def get_project_workflow_scheme_associations (self , project_ids ):
98+ """Return workflow-scheme associations for one or more project IDs.
99+
100+ Team-managed and non-existent projects are omitted by Jira Cloud. The
101+ caller requires the Administer Jira global permission.
102+
103+ :param project_ids: Project ID or iterable of project IDs.
104+ :return: Jira's workflow-scheme association container.
105+ """
106+ if isinstance (project_ids , (str , int )):
107+ project_ids = [project_ids ]
108+ else :
109+ project_ids = list (project_ids )
110+ if not project_ids :
111+ raise ValueError ("project_ids must contain at least one project ID" )
112+ return self .get (self .endpoint ("workflowscheme/project" , api_version = 3 ), params = {"projectId" : project_ids })
113+
114+ def assign_project_workflow_scheme (self , project_id , workflow_scheme_id ):
115+ """Assign a workflow scheme to a classic Jira Cloud project.
116+
117+ Jira only permits this operation when the project has no issues. The
118+ caller requires the Administer Jira global permission.
119+
120+ :param project_id: Numeric Jira project ID.
121+ :param workflow_scheme_id: Workflow scheme ID.
122+ :return: Jira response (normally ``None`` for HTTP 204).
123+ """
124+ data = {"projectId" : str (project_id ), "workflowSchemeId" : str (workflow_scheme_id )}
125+ return self .put (self .endpoint ("workflowscheme/project" , api_version = 3 ), data = data )
126+
97127
98128class JiraSoftware (JiraSoftwareMethods , AtlassianRestAPI ):
99129 """Jira Software Cloud REST APIs.
0 commit comments