Skip to content

auth_code_expired

HTTP status: 410 Gone

  1. Re-run jc auth login. The CLI generates a fresh device code and re-opens the authorize page in your browser.
  2. Complete the browser approval promptly. Device codes expire 10 minutes after issue per RFC 8628 §3.2.
  3. For headless / SSH environments, use jc auth login --no-browser and complete the verification on a phone — the device code is the same shape.
  4. For CI/CD, don't use the device flow at all. Generate a long-lived API key in Settings → API Keys and set JUSTCRAWL_API_KEY in the runner environment.

You started a CLI login flow but didn't approve it in the browser within the 10-minute window, and the CLI tried to poll an already-expired code. We return 410 Gone (not 401) because RFC 8628 §5.5 specifies that expired codes should be terminal — the CLI stops polling immediately rather than retrying.

Contact support with your request_id (looks like req_01HF3JKB...). We'll confirm when the code was issued and when it expired.