はじめに

Zendesk のユーザー情報を確認する際、GUI 上では限られた情報しか取得できません。

また、ユーザー情報を確認するためだけにブラウザを立ち上げるのもちょっと面倒・・・(ってほどではないかもしれません)

そんなお悩みを Zendesk API を使えば解決できます!

今回の記事では、特定のユーザー情報を取得する方法をご紹介します!

事前準備

APIトークンが必要なので、あらかじめご用意ください。

APIトークンの作成方法は、【Zendesk】Zendesk API を使ってスケジュールに祝日を一括登録! に記載していますので本記事では割愛します。

コマンド

以下のコマンドを実行することで ${SEARCH_EMAIL} に指定したユーザーの情報を取得できます。

※変数部分は環境に合わせて書き換えてください。

特定のユーザー情報を取得

curl -sS -u "${EMAIL}/token:${TOKEN}" https://${SUBDOMAIN}.zendesk.com/api/v2/users/search.json?query=${SEARCH_EMAIL} | jq

まとめてユーザー情報を取得

curl -sS -u "${EMAIL}/token:${TOKEN}" https://${SUBDOMAIN}.zendesk.com/api/v2/users.json | jq

※1 ページあたり 100 件までしか取得できません。

※ユーザー数が 100 人を超える場合には、ページネーション処理(?page=2 など)が必要です。

実行結果

特定のユーザー情報を取得(ユーザー名だけ抽出)

$ curl -sS -u "${EMAIL}/token:${TOKEN}" https://${SUBDOMAIN}.zendesk.com/api/v2/users/search.json?query=${SEARCH_EMAIL} | jq -c '.users[] | {name: .name}'
{"name":"アイレット太郎"}
$

まとめてユーザー情報を取得(ユーザー名だけ抽出)

$ curl -sS -u "${EMAIL}/token:${TOKEN}" https://${SUBDOMAIN}.zendesk.com/api/v2/users.json | jq -c '.users[] | {name: .name}'
{"name":"アイレット太郎"}
{"name":"アイレット花子"}
{"name":"アイレット次郎"}

...

$

まとめ

今回は、Zendesk API を使ったユーザー情報の取得方法をご紹介しました。

取得した情報を使って、ユーザー情報を更新することができますので次回はそちらをご紹介できればと思います!

参考記事

Search | Zendesk Developer Docs

Pagination | Zendesk Developer Docs