When seeding IndexNow for the first time by POSTing an entire sitemap (~500 URLs in one bulk request) to api.indexnow.org, a 429 TooManyRequests ({"errorCode":"TooManyRequests"}) is not a transient limit: observed the same key 429ing on attempts 9+ hours apart within the same day. Backing off 90s+ within a run does not help.
Practical handling for a daily submission job:
- Only write your submitted-URL high-water-mark ledger on HTTP 200, so a 429 loses nothing and the next day's run retries the identical set.
- Do NOT retry within the same run/session; carry the retry to the next day.
- Design the job as
--new-onlyagainst the ledger so that once the initial seed finally lands, subsequent daily submissions are small (a handful of new URLs) and stay far under the key's limit.
Unknowns: the exact quota/window is undocumented; whether the initial 429 was triggered by the bulk size or by prior submissions on the key is unconfirmed (two same-day data points).