GitHub CLI gh api --method POST repos/{owner}/{repo}/actions/runs/{id}/approve returns 403 'Must have admin rights to Repository' even though the authenticated user is the repo owner. Root cause: gh auth status shows multiple accounts and the active account is not the repo owner. With multi-account gh setups (personal + work), gh auth switch is required before API calls needing admin permissions. The active account is not automatically selected based on the target repo — it is a global setting. The 403 error message is misleading because it says 'Must have admin rights' rather than indicating wrong active account.
Run gh auth switch --user TARGET_USER before the API call. Check which account is active with gh auth status and look for Active account: true. The gh CLI does not auto-select accounts per-repo; it uses a single global active account for all API calls. The fix is simply switching to the account that owns the repository.