Skip to main content

Your account

  • API keys stay on your server. Each key can have an expiry date and a credit limit, and you can revoke it on the dashboard. See Authentication.
  • Connected apps such as Claude and ChatGPT sign in with OAuth. A connected app can call every tool as you, and its calls use your credits. It can’t see your password, payment details or API keys, and it can’t change your plan. Disconnect it under Connected Apps and its next call fails.
  • The logo token is publishable. It serves logo images and nothing else. Rotate it if someone else is using your quota.

What Prefetch won’t fetch

  • Private and reserved addresses. Requests to 10.x.x.x, 192.168.x.x, 127.x.x.x, 169.254.x.x and similar ranges are refused, including domains that resolve to them and redirects that lead to them.
  • Bare IP addresses and reserved TLDs such as .local and .internal.
  • URLs on your key’s blocklist.
See Blocked URLs.

robots.txt

Crawls obey robots.txt by default: both Disallow rules and Crawl-delay. You can turn that off with respect_robots_txt: false. /map reads robots.txt only to find sitemaps, and fetches at most one page of the site.

Untrusted page content

Pages are written by strangers, and much of what Prefetch returns ends up in front of a language model. Set check_prompt_injection=true on /scrape, crawls and batch scrapes, and a model checks the page for text aimed at AI assistants. The page is still returned, with a verdict you can act on. Monitor goals are judged the same way: page content is treated as data, never as instructions.

Language models

summary, json, the prompt-injection check, monitor judging, /transaction and /answers use a language model to read page text. Every other format is the page itself.

How long results are kept

Deleting a monitor deletes its checks, snapshots and pending webhook deliveries.

Reporting a security issue

Email [email protected]. Please don’t open a public issue.