GitHub:プルリクの検索が 422「Validation Failed」になる
リポジトリをまたいだプルリクは GET /search/issues から、is:pr is:open repo:持ち主/リポジトリ名 review-requested:@me のような検索で取ります。GitHub が検索を実行しないときは、Validation Failed の文で 422 を返し、理由は errors[].message にあります。以下の文は、2026年10月24日に github.com で確かめた GitHub の答えと、その裏にある GitHub の文書の決まりです。
HTTP/1.1 422 Unprocessable Entity
{"message":"Validation Failed","errors":[{"message":"The listed users and repositories cannot be searched either because the resources do not exist or you do not have permission to view them.","resource":"Search","field":"q","code":"invalid"}],"status":"422"}
422:GitHub の文と理由
The listed users and repositories cannot be searched either because the resources do not exist or you do not have permission to view them.(和訳:挙げられたユーザーとリポジトリは、存在しないか、見る権限がないため検索できません):検索のrepo:・user:・org:のどれかが、無いか、あなたのアカウントに見えません。トークンが無ければ、非公開のリポジトリはすべて見えません。GitHub の文書も、検索に入れたリポジトリにアクセスできるアカウントで認証する必要があるとしています。The listed users cannot be searched either because the users do not exist or you do not have permission to view the users.(和訳:挙げられたユーザーは、存在しないか、見る権限がないため検索できません):検索に@me(review-requested:@meやauthor:@meなど)があるのに、トークンが無いので、GitHub には「自分」がだれかわかりません。author:に無いユーザー名を書いても、この答えです。The search is longer than 256 characters.(和訳:検索が256字より長い):検索の語が長すぎます。演算子と修飾子は数えません。すべてrepo:の修飾子でできた757字の検索には答えが返りました。More than five AND / OR / NOT operators were used.(和訳:AND・OR・NOT の演算子が5つより多い)- GitHub App のユーザーアクセストークンでは、イシューとプルリクを一緒に検索できません。GitHub の文書は、
is:issueかis:pull-requestの無い検索は 422 になるとしています。
ほかの答え
x-ratelimit-resource: searchの 403 か 429:検索には専用の上限があり、トークンありで1分に30回、なしで10回です(どの上限か・いつまた使えるかへ)。- 401
Bad credentials:トークンは送ったが、GitHub が受け付けない(その理由へ)。 - SAML シングルサインオンの組織での 403:トークンがその組織に許可されていない(許可のしかたへ)。
- 503:GitHub の文書は、サービスが使えない状態としています。あとでもう一度試します。
200 なのにプルリクが欠けるとき
repo:の修飾子がいくつかある:GitHub は、見えないリポジトリをエラーなしで外します。無いリポジトリ1つと公開のリポジトリ1つでは、公開のほうのプルリクだけが 200 で返りました。GitHub の文書も、答えに入るのはアクセスできるものだけで、返さなかったものは挙げないとしています。incomplete_results: true:検索が時間切れになり、GitHub はそれまでに見つかったものを返しました。ほかにもあるかもしれませんし、ないかもしれません。- 上限:1ページ100件まで、1回の検索で1,000件まで、1つの検索で探すリポジトリは4,000まで。
直し方
- GitHub に見えないリポジトリや持ち主:つづりを確かめ、トークンのアカウントでサインインしてブラウザで開く。そこで見えるなら、トークンにそのリポジトリへのアクセスが要ります(足す権限の見つけ方へ)。
@me:検索にトークンを付けて送る。- 長すぎる・演算子が多すぎる:語を減らすか、いくつかの検索に分ける。
- リポジトリがいくつかある:1つが空に見えたら、それだけで検索する。422 になれば、トークンにそれが見えていません。
IntelliJ IDEA で GitHub のプルリクを見るなら
Lesstep の Pull Request Inbox for GitHub は、JetBrains IDE(2024.1 以降)のプラグインです。「自分のレビュー待ち」「自分がレビュアー」「自分が作成」の一覧と、「その持ち主」「どこでも」の範囲に GitHub の検索を使い、開いているリポジトリごとの repo:、持ち主の user:、自分を表す @me を付けて送ります。トークンが無ければ開いているプルリクすべてを一覧にし、「どこでも」では検索せずにトークンを求めます。GitHub が検索を断ったときは、errors の理由も含めて GitHub の文を見せ、上限に達したときは、いつまた使えるかを言います。一覧はそれぞれ最近更新された順に最大200件です。受信箱・差分・会話は無料、承認・コメント・マージは Pro(月 US$1.50・30日間の無料試用つき)です。画面は日本語です。
GitHub は GitHub, Inc. の商標、IntelliJ IDEA は JetBrains s.r.o. の商標です。このページは GitHub, Inc.・JetBrains のいずれとも提携しておらず、承認も受けていません。
ほかに:「API rate limit exceeded」 · 「Resource not accessible by personal access token」 · 401「Bad credentials」 · 「Resource protected by organization SAML enforcement」 · GitHub のレビューの断り(422) · GitHub のマージの断り(405・409) · GitHub の差分の 406「too_large」・3,000件 · GitHub の行のコメントの 422「must be part of the diff」 · GitHub のブランチの更新の断り(422) · GitHub のプルリクが作れない(422・403) · GitHub の自動マージの断り · GitHub の下書き・レビュー準備完了・閉じるの断り · GitHub の会話の解決の断り · GitHub のチェックが出ない(check runs の 403) · GitHub のファイルの中身が読めない · GitHub の比較の断り(404・422) · GitHub のコメント・返信の断り(ロック・アーカイブの 403) · GitHub のマージの方法の断り(405) · GitHub のブランチが見つからない(404・301) · GitHub Enterprise Server につながらない · GitHub のレビューの依頼が出ない · GitHub のプルリクの一覧が足りない · GitHub の 404・名前を変えたリポジトリ(301・307) · GitHub の行のコメントが outdated・差分に無い · GitHub のプルリクの更新・通知が遅い · GitHub の変更の提案が適用できない · GitHub の必須チェックが Expected のまま · GitHub でコードオーナーのレビューが要る · GitHub で未解決の会話がマージを止める · GitHub で署名の無いコミットがマージを止める · GitHub のマージキューでマージするブランチ · GitHub でマージが最後の push の承認を待っている · GitHub でマージがコードスキャンの結果を待っている · GitHub でマージがコード品質の結果を待っている · GitHub でコードのカバレッジの水準がマージを止める · GitHub でライセンスの適合の結果がマージを止める · GitHub でブランチのロックや更新の制限がマージを止める · GitHub でマージの後にブランチが消えない · GitHub でチームの承認(Required reviewers)がマージを止める · GitHub でシークレットスキャンのアラートがマージを止める · GitHub でスタックしたプルリクがマージできない · GitHub で push の規則が push を止める · GitHub でコミットのメタデータの規則がマージを止める · GitHub で強制 push が止められる · GitHub でプルリクをマージしても issue が閉じない · GitHub のプルリクを手元にチェックアウトできない · GitHub のプルリクがマージ先と衝突している · GitHub で変更を依頼された・レビューを取り消す · GitHub で共同作者がコミットに数えられない · GitHub で依存関係のレビューのチェックが失敗する · GitHub で Dependabot がプルリクをリベースしない · GitHub でフォークが同期できない · GitHub でプルリクのベースのブランチを変えられない · GitHub でプルリクを取り消せない · GitHub でプルリクのテンプレートが出ない · GitHub でプルリクにラベルや担当者が付かない · GitHub でプルリクを閉じられない・開き直せない · GitHub でプッシュ保護にプッシュを止められた · GitHub でプルリクのコメントが隠された · GitHub でデプロイが成功するまでプルリクをマージできない · GitHub でチームに頼んだレビューがメンバーに置き換わった · GitHub でプルリクのファイルの Viewed が外れた · GitHub でマージしていないプルリクがマージ済みになった · GitHub で Copilot のレビューが承認に数えられない · GitHub でワークフローが作ったプルリクのチェックが動かない · GitHub でプルリクに Update branch のボタンが出ない · GitHub で Dependabot のプルリクのチェックが失敗する · GitHub でフォークからのプルリクのチェックが失敗する · GitHub でコミットメッセージの [skip ci] でチェックが動かない · GitHub で保存期間を過ぎてチェックが消えた · GitHub の公開リポジトリのコードレビューの制限 · GitHub でリポジトリのプルリクがオフ・制限されている · GitHub でスタックのプルリクごとにチェックが走る · GitHub でスカッシュでマージ済みのコミットが次のプルリクに出る · GitHub のプルリクでファイルの差分が出ない · GitHub でフォークのプルリクのブランチに push できない · GitHub のプルリクのチェックが取り消された · GitHub で Rebase and merge が使えない · GitHub のマージのコミットメッセージが思った形にならない · GitHub のプルリクでファイルの全行が変わったと出る · GitHub の API がタイムアウトした · GitHub のプルリクで画像や文書の差分が見た目で出ない · GitHub のレビューの依頼が断られる(422) · GitHub で Copilot が作ったプルリクのチェックが動かない・承認が数えられない · GitHub の push が GH006・GH013 で断られる · GitHub で承認が足りずマージできない・数に入らない承認 · JetBrains の IDE で GitHub のプルリクを扱う · English