2017-04-14 2 views
0

REST API를 통해 Jira 문제 필드를 업데이트하려고하는데 요약, 설명, 우선 순위, 기자 필드는 있지만 상태는 업데이트 할 수 있습니다.Jira 문제 상태가 업데이트되지 않음

string jSonContent = (@" 
    { 
     ""fields"": { 
      ""summary"": ""data"", 
      ""description"": ""modified."", 
      ""priority"": {""name"": ""val""}, 
      ""reporter"": {""name"": ""[email protected]""}, 
      ""status"": {""name"": ""WORK IN PROGRESS""} 
     } 
    }").Replace("data", summ).Replace("modified.", desc).Replace("val", pri); 

request.AddParameter("application/json", jSonContent, ParameterType.RequestBody); 

var response = Execute(request); 

답변

1

당신은 문제의 상태를 그런 방식을 변경할 수 없습니다 : 여기

내가 실행하려고하고있는 코드입니다.

메타 데이터에 대한 GET을 간단한 PUT 요청과 함께 변경 될 수 있습니다 필드의 유형을 확인하려면 다음 차례로

https://{your-jira-url}/rest/api/2/issue/{issueIdOrKey}/editmeta 

이 쿼리는 당신에게 당신이 수정할 수있는 모든 필드를 제공 할 것입니다. 반환 된 JSON 객체에 상태 필드를 찾을 수 없습니다.

문제로 돌아 가기 : 문제의 상태가 어떻게 바뀔 수 있습니까? Jira에는 상태 사이에 가능한 전환을 유지하는 워크 플로우가 있습니다. 상태를 변경하려면 전환해야합니다. (. 당신이 UI에 그것을 할 것처럼 정확히 같은 방식으로)

그래서 먼저 GET 요청 그렇게 할 :

https://{your-jira-url}/rest/api/2/issue/{issueIdOrKey}/transitions?expand=transitions.fields 

이 요청은 문제의 현재 상태의 모든 가능한 전환을 반환합니다. 수행 할 전환을 확인하고 ID를 기록하십시오 (제 경우에는 원하는 ID가 11입니다). 주의 할

https://{your-jira-url}/rest/api/2/issue/{issueIdOrKey}/transitions 

{ 
    "transition": { 
     "id": "11" 
    } 
} 

하나 추가 일 :이 전환 ID 사용하면 JSON 페이로드와 POST 요청을 할 수있는 전환하면 더 많은 데이터를 제공해야 후 간단한 아닌 경우. 여기에 UI에서 버튼을 클릭하면 전환을위한 추가 화면을 얻지 못할 간단한 전환이 발생합니다. 예를 들어 댓글을 추가하면 문제를 해결할 수있는 것처럼 전환을 설정할 수 있습니다. 다행히도 이전에 반환 된 전환 목록에는 전환 ID와 함께 제공되어야하거나 전환 ID와 함께 제공되어야하는 모든 입력란이 포함되어 있습니다.

자세한 내용은 Jira documentation에서 확인할 수 있습니다.

관련 문제