Read Public Knowledge, Starting with One Request

The minimum workflow for helping AI agents reliably read official documentation and public technical resources.

1. Prepare an API Key

1

Sign in with Google through the Get a Free API Key button. New Gmail users receive a free Enterprise-tier API key with 810,000 credits.

Signing in again preserves the existing key and balance. Use the /v1/pricing response for current pricing information.

2

Include the Authorization: Bearer __YOUR_API_KEY__ header with every request.

2. Read Content for AI Agents

Recommended Default: /v1/agent/browse

Use markdown or text for pages where content quality matters, such as official documentation, references, and public research.

curl -sS -X POST "https://api.karonlabs.net/v1/agent/browse" \
  -H "Authorization: Bearer __YOUR_API_KEY__" \
  -H "Content-Type: application/json" \
  -d '{
    "url": "https://www.rfc-editor.org/rfc/rfc9110",
    "extract": "markdown",
    "readability": true
  }'
For portals, search results, and listing pages where link structure matters, test readability: false with auto_links: true.

3. Retrieve Raw HTML

When You Need the Source: /v1/fetch

Use /v1/fetch when the status code, headers, and raw HTML matter more than content cleanup.

curl -sS -X POST "https://api.karonlabs.net/v1/fetch" \
  -H "Authorization: Bearer __YOUR_API_KEY__" \
  -H "Content-Type: application/json" \
  -d '{"url": "https://example.com"}'

4. Extract Structured Data

extract: "json"

Use extract: "json" when an AI agent needs only selected fields after reading a document. Successful structured extraction adds 5 credits.

curl -sS -X POST "https://api.karonlabs.net/v1/agent/browse" \
  -H "Authorization: Bearer __YOUR_API_KEY__" \
  -H "Content-Type: application/json" \
  -d '{
    "url": "https://quotes.toscrape.com/",
    "extract": "json",
    "json_prompt": "Extract the first quote and its author.",
    "json_schema": {
      "type": "object",
      "properties": {
        "quote": { "type": "string" },
        "author": { "type": "string" }
      }
    }
  }'

5. Detect Changes

Watch API

Use snapshot and diff to monitor changes in public documentation or release notes. They use the browse flow internally, so their cost follows the browse policy.

curl -sS -X POST "https://api.karonlabs.net/v1/watch/snapshot" \
  -H "Authorization: Bearer __YOUR_API_KEY__" \
  -H "Content-Type: application/json" \
  -d '{"url": "https://example.com", "extract": "text", "ttl_days": 1}'
curl -sS -X POST "https://api.karonlabs.net/v1/watch/diff" \
  -H "Authorization: Bearer __YOUR_API_KEY__" \
  -H "Content-Type: application/json" \
  -d '{"url": "https://example.com", "extract": "text"}'

6. Understand Costs

SituationCostInterpretation
Cache or lightweight processingcache/curl 1Lightweight public pages and cached responses.
Browser fallbackbrowser 10Used when rendering is required or lightweight processing is insufficient.
Successful structured extractionstructured extraction +5A structured result is produced with extract: "json".

Troubleshooting

SymptomCheckAction
401API key headerCheck the key value and remove whitespace around the Bearer token.
403Account or edge restrictionCheck the documentation to confirm that the endpoint is currently available for public use.
422Request schemaCheck the URL format, extract value, and timeout range.
Empty contentDynamic renderingTest wait_selector or readability: false.

See the developer documentation for all fields and operational notes.

View Developer Documentation