Apps Scriptリファレンス: Apps Script Reference |障害・課題追跡: IssueTracker |Google Workspace: Status Dashboard - Summary

2019年4月15日月曜日

Zendesk APIでカスタムフィールドの値に一致するチケットを抽出したい(fieldValue:値)


「このカスタムフィールド」で「この値」が入っているチケットを検索できないかと思っ手調べてみると、現状の仕様ではできないらしい

ということが書かれていました
https://support.zendesk.com/hc/en-us/community/posts/209222988-How-to-search-tickets-by-using-custom-field-



代わりといってはなんですが(と僕が言うものなんですが)

fIeldValue: 値

という形で
すべてのカスタムフィールドを対象に
指定した値を持つチケットを取得することはできるらしい

例えば一意の値をあるカスタムフィールドに入れておいて、その値でAPIをたたけば一発でその値を持つチケットを見つけられそう

今欲しいのはそれなので試してみた

そして実現したコード


コード.gs
var base_url = "https://NAME.zendesk.com";

function getTicket() {
  var options = getOptions();
  var url = base_url + '/api/v2/search.json?query=fieldValue:hello'
  var response = UrlFetchApp.fetch(url, options);
  Logger.log(response);
}

function getOptions() {
  var options = {
    "method": "get",
    "contentType": "application/json",
    "headers": getHeaders(),
  }
  return options;
}

function getHeaders() {
  var headers = {
    "Authorization": "Basic " + get_zendesk_token()
  }
  return headers;
}

function get_zendesk_token() {
  return Utilities.base64Encode(getProp('email') + "/token:" + getProp('api_token'));
}

function getProp(key) {
  return PropertiesService.getScriptProperties().getProperty(key);
}


関連記事

Zendesk APIで指定したチケットの情報を取得したい


参考

Searching custom ticket fields
https://support.zendesk.com/hc/en-us/articles/203663206#topic_wly_fev_uc

Latest post

Google Formsで記述式の質問に字数制限を設定したい

記述式の質問には「回答の検証」を設定することができます フォームの編集画面 右下の︙メニューで「回答の検証」を選択します 検証方法には「数値」「テキスト」「長さ」「正規表現」という種類があります 今回は字数制限したいので「長さ」を選びます 長さには「最大文字数」か「最小文字数」を...