Web content fetching designed for AI agents. Give us a URL, get clean structured content.
curl -X POST https://fetch.bedrocklabs.dev/api/v1/billing/register \
-H "Content-Type: application/json" \
-d '{"name": "my-agent"}'
→ { "api_key": "af_abc123...", "credits": 100 }
curl -X POST https://fetch.bedrocklabs.dev/api/v1/fetch \
-H "Authorization: Bearer af_your_key" \
-H "Content-Type: application/json" \
-d '{"url": "https://example.com", "mode": "markdown"}'
→ { "title": "...", "content": "...", "metadata": {...} }
Fetch a URL and return clean content.
| Field | Type | Default | Description |
|---|---|---|---|
| url | string | — | Required. The URL to fetch. |
| mode | string | markdown | One of: markdown, text, structured, raw |
| maxChars | number | 50000 | Max characters in response. |
| fullPage | boolean | false | Wait for full page load (JS-heavy sites). |
mode: "structured" when you need headings, links, and tables. Use
mode: "markdown" for article content. Use mode: "raw" to get the full HTML.
| Field | Description |
|---|---|
| success | Always true on success |
| url | The final URL (after redirects) |
| title | Page title |
| content | Extracted content (depends on mode) |
| excerpt | Short description / first paragraph |
| metadata | OG tags, description, author, publish date |
| structured | JSON-LD structured data (if found) |
| charCount | Character count of content |
| truncated | Whether content was truncated to maxChars |
| tookMs | Response time in milliseconds |
| credits_remaining | Your remaining API credits |
Take a screenshot of a URL. Returns PNG image.
curl -X POST https://fetch.bedrocklabs.dev/api/v1/screenshot \
-H "Authorization: Bearer af_your_key" \
-H "Content-Type: application/json" \
-d '{"url": "https://example.com"}' \
-o screenshot.png
Check your API key usage and remaining credits.
curl -H "Authorization: Bearer af_your_key" \
https://fetch.bedrocklabs.dev/api/v1/usage
Register a new API key (no auth needed).
Service health check. No auth needed.
| Tier | Credits | Price | Best for |
|---|---|---|---|
| Free | 100/mo | $0 | Testing & hobby projects |
| Pro | 1,000 | $5 | Personal agents & prototyping |
| Scale | 10,000 | $20 | Production agents |
| Enterprise | Custom | Custom | High-volume / dedicated |
1 credit = 1 API request. Credits never expire.
Stripe checkout coming soon — in the meantime, email us.
Agent Fetch is designed to be called as a tool by AI agents. Here's how to add it:
Tool: fetch_url
Description: Fetch web content from a URL
Parameters:
- url (string, required): The URL to fetch
- mode (string, optional): "markdown" | "text" | "structured" | "raw"
- maxChars (number, optional): Max characters (default 50000)
Implementation:
POST https://fetch.bedrocklabs.dev/api/v1/fetch
Headers: Authorization: Bearer YOUR_API_KEY
Body: { "url": "...", "mode": "markdown" }