clerk / clerk/javascript

When rate limited Retry-After is not exposed (re-open)

Open
#9,325 1 comment 1 reaction 0 assignees View on GitHub

Nobody has claimed this yet.

needs-triage
Dominant language
TypeScript
Stars
1.8k
Forks
472
Avg merge
2d 11h
Merged PRs (30d)
189

Description

Preliminary Checks
Reproduction

https://github.com/clerk/javascript

Publishable key
Description

from docs:

If you receive a 429 error code, you have been rate limited. All subsequent requests to that specific endpoint will be blocked for a given amount of time.

Requests that have been rate limited will receive the Retry-After response header, which contains the number of seconds after which the block expires.

yet js api does not expose the Retry-After

Environment
System:
    OS: macOS 26.6
    CPU: (15) arm64 Apple M5 Pro
    Memory: 497.44 MB / 48.00 GB
    Shell: 5.9 - /bin/zsh
  Binaries:
    Node: 24.18.0
    Yarn: 1.22.22
    npm: 12.0.1
    pnpm: 11.15.1
  Browsers:
    Chrome: 150.0.7871.187
    Safari: 26.6

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start in the Clerk JavaScript repository by reproducing a rate-limited request that returns a 429 response. Trace how the response is exposed through the JavaScript API and compare it with the Retry-After behavior described in the rate-limits documentation. Done means callers can access the Retry-After value when rate limiting occurs.

Written by the indexing model from the issue text.

Assessment

Tech stack
typescript
Domain
api, authentication
Issue type
Bug
Difficulty
3/5
Estimated time
1-2 days
Activity status
Active
Clarity
Needs clarification
Newbie friendliness
45/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.