Start
First call in two minutes.
You need a key. Request one. They are issued by hand, usually within a day. To try the API without one, use the playground.
1. Check the service
/v1/health needs no key, so it also confirms your network can reach the API before authentication is in the picture.
curl https://api.snakereach.com/v1/health2. Scrape something
export SNAKEREACH_API_KEY="your key"
curl https://api.snakereach.com/v1/scrape \
-H "X-API-Key: $SNAKEREACH_API_KEY" \
-H "content-type: application/json" \
-d '{"url": "https://example.com"}'import os, httpx
response = httpx.post(
"https://api.snakereach.com/v1/scrape",
headers={"X-API-Key": os.environ["SNAKEREACH_API_KEY"]},
json={"url": "https://example.com"},
timeout=60,
)
response.raise_for_status()
doc = response.json()
print(doc["title"])
print(doc["markdown"])const response = await fetch("https://api.snakereach.com/v1/scrape", {
method: "POST",
headers: {
"X-API-Key": process.env.SNAKEREACH_API_KEY,
"content-type": "application/json",
},
body: JSON.stringify({ url: "https://example.com" }),
});
if (!response.ok) throw new Error(await response.text());
const doc = await response.json();
console.log(doc.title, doc.markdown);3. Read the trace
Every response carries a trace of where the time went. It is the fastest way to understand why one page takes 40 ms and another takes four seconds.
for stage in doc["trace"]["stages"]:
print(f"{stage['name']:<10} {stage['elapsed_ms']:>7.1f} ms")Set a generous timeout
A scrape does real network work on your behalf, and a JavaScript page that needs rendering can take several seconds. Most client libraries default to something far shorter than that. Sixty seconds is a sane starting point.
Next
The Document schema for every field you get back · Crawl for whole sites · Python SDK to skip HTTP entirely.