0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

Qiita100万記事感謝祭!記事投稿キャンペーン開催のお知らせ

Zendesk API でエンドユーザー作成時にエラー Client error: `POST https://{subdomain}.zendesk.com/api/v2/users.json?xxxxx...` resulted in a `422 Unprocessable Entity`...

Posted at

お問い合わせメールやチャットほかヘルプデスク管理を効率的に行うためのクラウドベースのソフトウェアソリューション、Zendesk。

Zendeskに関する詳しい説明は省きますが、API経由でzendeskのエンドユーザー作成(カスタマー用アカウント作成)をしようとしたら以下のエラーになりました。

APIのリクエストにはPHP/LaravelおよびGuzzleHttpを使用しています。

Laravel
GuzzleHttp \ Exception \ ClientException (422)
Client error: `POST https://{subdomein}.zendesk.com/api/v2/users.json?xxxxx...` resulted in a `422 Unprocessable Entity`

Unprocessable Entity というのが見慣れないエラーメッセージでしたが、

Unprocessable = 加工不可、処理不能
Entity = エンティティ、実体

とすると 「処理できないデータです」 くらいの意味合いでしょうか。
HTTPのレスポンスステータスコードが 422 ということもあり、こちらからリクエストを出しているデータ(パラメータ)に不備がありそうではあります。

Mozilla/MDN web docs - 422 Unprocessable Entity


Zendesk公式のヘルプ記事では以下の情報が見つかりました。

Error : 422 Unprocessable Entity

使用しているエンドポイントが異なるため完全に一致するケースではありませんが、Zendesk側からは以下のやり取りが行われています。

Could you confirm that this user actually exists in your Zendesk instance? Perhaps it did at one point and then was either deleted or merged with another user?

(日本語訳: Google翻訳)このユーザーが実際に Zendesk インスタンスに存在するかどうか確認できますか? おそらく、ある時点では存在していたものの、その後削除されたか、別のユーザーと統合されたのでしょうか?

結論から言えば、今回の自身のエラーに関しては
「同じメールアドレスで重複してユーザー登録をしようとしていたため発生したエラー」
でした。
だから 処理できないデータ ということだったんですかね。

もっとわかりやすいエラーの文面を返してほしいものだと思いますがユーザー周りはデリケートな部分ではあるので(例えばログイン情報登録時にそのメールアドレスで既に情報が存在しているかを悪意あるユーザーに知られるのはよくない等)、あえて表現を曖昧にしているという可能性もあるのかもしれません。

参考URL

zendesk developers - APIドキュメント
HTTP 422エラーの解決方法
HTTPステータスコード422とは

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?