JIRAのAPIで特定のカスタムフィールドの値を変更したくて書いたコードです。
コード.gsfunction get_jira_token() {
var id = "LOGIN_EMAIL";
var pw = "LOGIN_PASSWORD";
var token = Utilities.base64Encode(id + ":" + pw);
return token;
}
function get_base_url() {
var base_url = "https://SITENAME.atlassian.net/rest/api/2/issue/";
return base_url;
}
function update() {
var token = get_jira_token();
var payload = get_payload();
var options = get_options(token, payload);
var url = get_url();
UrlFetchApp.fetch(url, options);
}
function get_url(){
var key = "KEY-1";
var url = get_base_url() + key;
return url;
}
function get_payload(values) {
var email = Session.getActiveUser().getEmail();
var data = {
customfield_10025: "対象のカスタムフィールドに入れる値"
};
var fields = {fields: data};
var payload = JSON.stringify(fields);
return payload;
}
function get_options(token, payload) {
var options = {
method: "PUT",
payload: payload,
contentType: "application/json",
headers: {"Authorization": " Basic " + token}
}
return options;
}
|
上記コード内の以下の値を設定してから
- LOGIN_EMAIL
- LOGIN_PASSWORD
- SITENAME
update() を実行すると以下のようにカスタムフィールドの値が更新できる
参考
JIRA REST API examples
https://developer.atlassian.com/server/jira/platform/jira-rest-api-examples/
