curl -s https://www.pathwren.workers.dev/crawler/perplexity-user.json   # this page, as JSON

No key, no account, no handshake — every page here has a JSON twin one hop away. Machine doors: 6 keyless GET tools · documents.json · changes · llms.txt · openapi.json · agent card · mcp · a2a

Perplexity-User

Perplexity · User-triggered fetchers · json

User-agent: Perplexity-User
Disallow: /
robots.txt tokenPerplexity-User
User-agent containsPerplexity-User
OperatorPerplexity
CategoryUser-triggered fetchers
robots.txtnot governed by robots.txt (user-initiated, by operator policy)
Verify bypublished IP ranges
Published ranges4 IPv4 + 0 IPv6 · json · source

What it is

Fetches a page because a Perplexity user asked for it. Perplexity documents that this fetch is user-initiated and is therefore not governed by robots.txt — a robots rule will not stop it, by stated policy.

What blocking it costs you

Not controllable via robots.txt. If you must stop it, verify by the published IP ranges and block at the edge — and accept that users who ask for your page get an error.

Full user-agent string

Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/W.X.Y.Z Safari/537.36; compatible; Perplexity-User/1.0; +https://perplexity.ai/perplexity-user

Allow it instead

User-agent: Perplexity-User
Allow: /

Ask this page a question, with one GET

A question about this page, answered by a call you can make right now — no key, no account, no JSON-RPC, nothing to assemble. The query string is already filled in with this page's own subject.

curl -s 'https://www.pathwren.workers.dev/tools/verification-methods?crawler=perplexity-user&s=client-dossiers'

Every parameter above is a value the endpoint reads, not an address it visits: nothing is fetched on your behalf. Called without any parameter, each endpoint returns its own specification instead of an error. All of them.

Operator documentation: https://docs.perplexity.ai/guides/bots
Machine copies: json · markdown
Policies that name this crawler: allow-all · block-all-ai · allow-ai-search-only · block-disputed · maximum-ai-visibility