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

2019年4月27日土曜日

node-zendeskでカスタムフィールドの値を更新してみる(tickets.update)


この記事では
node-zendeks の  tickets.update でチケットのカスタムフィールドを更新します

node-zendesk を使ったことがない場合はまず Example を試しましょう
node-zendeskを使ってみる(Example)



STEP
  1. index.jsを書いて保存する
  2. index.jsを実行する


STEP1:index.jsを書いて保存します
  • username, token, remoteUri は各自の環境に応じたものを入れます
  • subject, body は任意の文字列を設定します
  • ticketIdは対象のものを設定します
  • 更新したい custom_fieldsの id と value を設定します

index.js 
var zendesk = require('node-zendesk');

var client = zendesk.createClient({
  username: 'Email',
  token: 'API TOKEN',
  remoteUri: 'https://NAME.zendesk.com/api/v2'
});

var ticket = {
  "ticket": {
    "subject": "テストタイトルです!",
    "comment": {
      "body": "本文です"
    },
    "custom_fields": [{
      "id": 360018014474,
      "value": "めろん"
    },
    {
      "id": 360018428654,
      "value": "りんご"
    }
  ]
  }
};

var ticketId = 16;
client.tickets.update(ticketId, ticket, function(err, req, result) {
  if (err) return handleError(err);
  console.log(JSON.stringify(result, null, 2, true));
});

function handleError(err) {
  console.log(err);
  process.exit(-1);
}


STEP2:実行してみる

ターミナル
index.jsが入っているディレクトリ $ node index.js

zendeskの対象チケットが更新されて、このように返ってきました
MacBook-Air-8:nodezendeskTest NAME$ node index.js
{
  "url": "https://NAME.zendesk.com/api/v2/tickets/16.json",
  "id": 16,
  "external_id": null,
  "via": {
    "channel": "api",
    "source": {
      "from": {},
      "to": {},
      "rel": null
    }
  },
  "created_at": "DATETIME",
  "updated_at": "DATETIME",
  "type": null,
  "subject": "テストタイトルです!",
  "raw_subject": "テストタイトルです!",
  "description": "本文です",
  "priority": null,
  "status": "open",
  "recipient": null,
  "requester_id": ID,
  "submitter_id": ID,
  "assignee_id": ID,
  "organization_id": ID,
  "group_id": ID,
  "collaborator_ids": [],
  "follower_ids": [],
  "email_cc_ids": [],
  "forum_topic_id": null,
  "problem_id": null,
  "has_incidents": false,
  "is_public": true,
  "due_at": null,
  "tags": [
    "test1",
    "test2",
    "test3",
    "りんご"
  ],
  "custom_fields": [
    {
      "id": 360018014474,
      "value": "めろん"
    },
    {
      "id": 360018442253,
      "value": ""
    },
    {
      "id": 360018495613,
      "value": ""
    },
    {
      "id": 360017830594,
      "value": ""
    },
    {
      "id": 360018428654,
      "value": "りんご"
    }
  ],
  "satisfaction_rating": null,
  "sharing_agreement_ids": [],
  "fields": [
    {
      "id": 360018014474,
      "value": "めろん"
    },
    {
      "id": 360018442253,
      "value": ""
    },
    {
      "id": 360018495613,
      "value": ""
    },
    {
      "id": 360017830594,
      "value": ""
    },
    {
      "id": 360018428654,
      "value": "りんご"
    }
  ],
  "followup_ids": [],
  "brand_id": ID,
  "allow_channelback": false,
  "allow_attachments": true
}


参考

node-zendesk / ReadMe.md / tickets / update
https://github.com/blakmatrix/node-zendesk#tickets

Latest post

Googleドキュメントに見出しを追加したい

今回の例では、ドキュメントの末尾に「見出しD」 を追加します。 見出しA, B, C, Dのスタイルは、見出し3 ( HEADING3 ) に設定しています。  下記Code.gsの  GOOGLE_DOCUMENT_URL を設定して  addHeadingToEnd()  を...