---
title: "429 Client Error: Too Many Requests for url (fix)"
canonical_url: "https://superbot.gg/fix/http-429-too-many-requests-when-scraping"
summary: "Python requests raised \"429 Client Error: Too Many Requests for url\". What the site is limiting, the plain fix, and what superbot answers when a page rate limits a reader."
---

> Markdown of https://superbot.gg/fix/http-429-too-many-requests-when-scraping. Site index: /llms.txt.

Python requests error

# 429 Client Error: Too Many Requests for url

`raise_for_status()` raises this when a site answers 429. The url after it is the page you asked for.

You asked the site too often.
It wants you to slow down.

[Get the app](https://superbot.gg/download?cta%5Fid=page%5Finstall) [other errors](https://superbot.gg/fix)

## What it means

429 means the client sent too many requests in a given amount of time. The server may add a `Retry-After` header that says how long to wait.

Limits are often per IP address, and per user or key when requests are signed in. They can cover the whole site or one path.

## Fix it

1. Read `Retry-After` from the response and wait that long before the next request.
2. Add a delay between requests, and wait longer after each repeated 429.
3. Reuse what you already fetched: cache pages and ask only for what changed.
4. If the limit keeps biting, the site wants you on its API or a paid plan.

## With superbot

superbot's read tool names a rate limit instead of raising. It answers `page_rate_limited` with this message, and passes along the site's `Retry-After` value when the site sends one:

```
page returned 429: the site is rate limiting readers. Read the same facts from another source, or read this page again later.
```

A real browser does not help with a plain rate limit, so superbot does not retry one in a browser. The next step is another source, or the same page later.

ask

Read https://httpbin.org/status/429 and tell me why it did not open.

reply

```
It opened fine; httpbin answered with HTTP 429, an empty body by design.

…

httpbin's /status/<code> endpoint exists to return exactly that status code and nothing else, so 429 here is not a rate limit you hit and not a failure of your connection.
```

A real answer on 2026-10-18, trimmed. The test address returns 429 on purpose, so the reply reads the status and says what it means.

This needs an account.
An agent with none signs you in through [/auth.md](https://superbot.gg/auth.md).
You read back one emailed code.

## Related

- [403 Client Error: Forbidden for url](https://superbot.gg/fix/http-403-forbidden-when-scraping)
- [Request was throttled. Your rate limit resets in \~30s.](https://superbot.gg/fix/replicate-request-was-throttled)
- [duckduckgo_search.exceptions.RatelimitException: https://lite…](https://superbot.gg/fix/duckduckgo-202-ratelimit)

Source: [MDN: 429 Too Many Requests](https://developer.mozilla.org/en-US/docs/Web/HTTP/Reference/Status/429). Read on 2026-10-18.
