Lesstep
Forgejo・Codeberg・Gitea・アクセストークン・2026年10月24日に確認

Forgejo・Gitea の「token does not have at least one of required scope(s)」

「トークンに、求める権限(スコープ)のどれも付いていない」という意味です。アクセストークンは有効ですが、この API の呼び出しに要る権限を付けずに作られています。サーバーは HTTP 403 で断り、受け付ける権限を文の中に書いています。どれか1つあれば足ります。それを付けてトークンを作り直し、古いトークンを入れていた所を差し替えます。

答えの全体

Forgejo の答えです(code.forgejo.org での公開の報告より)。Gitea 1.22 以前も同じ形です。

HTTP 403
{"message": "token does not have at least one of required scope(s): [read:organization]",
 "url": "https://code.forgejo.org/api/swagger"}

Gitea 1.23 以降は、トークンがいま持っている権限も書きます(公開の報告より)。

{"message": "token does not have at least one of required scope(s), required=[read:user], token scope=write:package,write:issue,write:repository",
 "url": "https://<gitea-host>/api/swagger"}

角かっこの中が足す権限です。ソースでは、GET には read、POST・PUT・PATCH・DELETE には write を求めます。なので read:repository だけのトークンは、最初のマージやレビューでこの答えになります(Forgejo・Gitea)。道具によっては「403 Forbidden」しか出しません。文を見るには、失敗した住所を curl で呼びます。

curl -i -H "Authorization: token your-token" "https://codeberg.org/api/v1/the/address/that/failed"

答えが 401 で、「token is required」や、ユーザーやトークンが存在しないという文なら、トークンが届いていないか、サーバーがそのトークンを知りません。401 と知らないトークンへの答えへ。

プルリクの道具に要る権限

Forgejo の権限の説明は、権限を API の住所ごとにまとめています。

同じまとまりの中では write は read を含みますが、まとまりどうしは含み合いません。write:repository があっても会話は読めず、read:issue が要ります。

権限を付けてトークンを作る

  1. 自分のアイコン → Settings(設定)→ Applications(アプリケーション)。住所はサーバーの /user/settings/applications です(例:https://codeberg.org/user/settings/applications)。
  2. Access tokens の Generate new token で、名前と Repository and organization access(どのリポジトリと組織に使うか)を選び、Select permissions でまとまりごとに Read か Read and write を選ぶ。今までのものに、文の中の権限を全部足す。
  3. Generate token を押してコピーする。サーバーは、もう表示しないと書いています。
  4. 古いトークンを入れていた所に新しいトークンを入れ、同じ画面で古い方を Delete(削除)する。

IntelliJ IDEA で Forgejo・Gitea のプルリクを見るなら

Pull Request Inbox for Forgejo and Gitea は、Lesstep が作っている JetBrains IDE(2024.1 以降)のプラグインです。read:repository・read:issue・read:user で読み、write:repository と write:issue で承認・コメント・マージをします。サーバーがこの文で答えたときは、その文と、トークンに要る権限を画面に出し、設定を開けるようにします。設定には、お使いのサーバーのトークンのページへのリンクがあります。受信箱・差分・会話は無料、承認・コメント・マージは Pro(月 US$1.50・30日間の無料試用つき)です。画面は日本語です。

Forgejo・Gitea・Codeberg はそれぞれの持ち主の名前、IntelliJ IDEA は JetBrains s.r.o. の商標です。このページは Forgejo プロジェクト・Codeberg e.V.・Gitea プロジェクト・JetBrains のいずれとも提携しておらず、承認も受けていません。

ほかに:404「The target couldn't be found.」「not found」 · Forgejo・Gitea のマージの断り(405・409) · Forgejo・Gitea のレビューの断り(422) · Forgejo・Gitea のブランチの更新の断り(403・409・422) · Forgejo・Gitea のプルリクが作れない(409・422・403) · Forgejo・Gitea のコメントの断り(403・422・400) · Forgejo・Gitea の検索の断り(400・422) · Forgejo・Gitea のプルリクの変更ファイル(50件ずつ・changed_files) · JetBrains の IDE で Forgejo・Gitea のプルリクを扱う · English