error_code and a retryable flag, and every response carries meta.requestId. Quote the requestId if you contact support.
Authentication
Too many requests
See Rate limits.
A page comes back empty or incomplete
- The content loads late. Add
wait_for(milliseconds) orwait_for_selectorso the page finishes rendering first. - The main content was hard to find. A
warningsentry says the full page body was returned instead. Name the content withinclude_selectors, or drop clutter withexclude_selectors. - The site blocks bots (
TARGET_BLOCKED). Retrying won’t help. Some sites refuse every automated request. - It’s a file, not a page (
TARGET_NOT_A_PAGE). PDFs are read as documents. Other downloads aren’t. summaryorjsonisnull. The language model step failed on its own. The reason is inwarnings, and the rest of the scrape is still there.- A
jsonfield isnull. The value isn’t on the page. Prefetch never fills fields in from a model’s own knowledge.
A crawl returns fewer pages than expected
CallGET /crawl/{id}/errors. It counts every skipped URL by reason:
/map fails with NO_LINKS_FOUND
The page links to none of the site’s own pages, and no sitemap lists any. This is common on apps that build their links with JavaScript after user input. Try sitemap=only, or map a different page on the site.
Webhooks don’t arrive
- The URL must be public and use
https://.localhostnever works. Use a tunnel while you develop. - Answer with a
2xxwithin 10 seconds, and do slow work after you respond. - Webhooks aren’t available through RapidAPI keys.
- Missed one? The status endpoint always has every result. See Webhooks.
A monitor is noisy or quiet
Logos show a letter mark
The logo CDN shows a letter mark while it looks a new domain’s logo up in the background. The next request usually has the real logo. Usefallback=404 or fallback=transparent to handle it yourself.
Still stuck?
Email [email protected] with therequestId, the request you sent, and what you expected.