SDKs
Official SDKs wrap the webclaw REST API with typed clients, error handling, and crawl polling out of the box. Pick your language and get started in under a minute.
Python
pip install webclawSync + async clients, httpx, Python 3.9+VIEW DOCS →TypeScriptnpm install webclawZero deps, native fetch, ESM + CJSVIEW DOCS →Gogo get github.com/0xMassi/webclaw-goZero deps, context.Context, functional optionsVIEW DOCS →Tip
All SDKs authenticate with an API key. Create one in your dashboard and pass it when initializing the client.
At a glance
| Python | TypeScript | Go | |
|---|---|---|---|
| Package | webclaw | webclaw | webclaw-go |
| Runtime | Python 3.9+ | Node.js 18+ | Go 1.21+ |
| HTTP client | httpx | native fetch | net/http |
| Async | Yes (AsyncWebclaw) | Yes (all methods) | Yes (context.Context) |
| Crawl polling | job.wait() | job.waitForCompletion() | client.WaitForCrawl() |
Supported endpoints
Every SDK covers the full API surface:
| Endpoint | Python | TypeScript | Go |
|---|---|---|---|
/v1/scrape | client.scrape() | client.scrape() | client.Scrape() |
/v1/crawl | client.crawl() | client.crawl() | client.Crawl() |
/v1/map | client.map() | client.map() | client.Map() |
/v1/batch | client.batch() | client.batch() | client.Batch() |
/v1/extract | client.extract() | client.extract() | client.Extract() |
/v1/summarize | client.summarize() | client.summarize() | client.Summarize() |
/v1/brand | client.brand() | client.brand() | client.Brand() |
REST API directly
Don't see your language? The API is plain JSON over HTTP -- any HTTP client works.