Agent Utilities
← Web policies & fetch

web.readable-fetch · v1.0.0

Readable Fetch
for your agent.

Fetch readable text from an approved public HTTPS host.

$0.0020 / call2000 micro-dollar credits
131,072 bytes max input65,536 bytes max output
Approved hosts only8-second network timeout

Example input

{
  "url": "https://example.com/"
}

Example output

This tool fetches a permitted remote URL, so the response depends on that host. Check allowedFetchHosts in the catalog before use. The deployed allowlist currently covers example.com and www.example.com.

The output schema below defines the returned fields. Paid responses wrap the result with a receipt and recovery expiry.

Call it from your agent

Add credits in the workspace and keep your API key in private environment storage. Use the same request ID and exact body to recover a lost response within ten minutes.

// Node.js 22+. Read the key from your private environment.
const requestId = Date.now() + '_' + crypto.randomUUID();
const response = await fetch('https://agent-utilities.agent-utilities.workers.dev/v1/tools/web.readable-fetch', {
  method: 'POST',
  headers: {
    'Content-Type': 'application/json',
    'Authorization': 'Bearer ' + process.env.AGENT_UTILITIES_API_KEY,
    'Idempotency-Key': requestId
  },
  body: JSON.stringify({
  "url": "https://example.com/"
})
});
const data = await response.json();
if (!response.ok) throw new Error(data.error?.message ?? 'Request failed');
console.log(data);
// On response loss, retry this SAME requestId, tool and body.
// Do not rerun the line that generates requestId for a retry.
Input JSON Schema
{
  "type": "object",
  "properties": {
    "url": {
      "type": "string",
      "maxLength": 2048
    }
  },
  "required": [
    "url"
  ],
  "additionalProperties": false
}
Output JSON Schema
{
  "type": "object",
  "properties": {
    "url": {
      "type": "string"
    },
    "status": {
      "type": "number"
    },
    "title": {
      "type": "string"
    },
    "text": {
      "type": "string"
    },
    "method": {
      "type": "string"
    }
  },
  "required": [
    "url",
    "status",
    "title",
    "text",
    "method"
  ],
  "additionalProperties": false
}

Before you integrate

Prices are experimental. The service currently allows 1,000 new calls per day across all accounts. Failed operations return reserved credits. Successful results are encrypted for ten-minute retry recovery. Review data handling and service limits.

Related tools

web $0.0010 / call

Redirect Trace

Trace up to four redirects across approved public HTTPS hosts.

web.redirect-trace

web $0.0003 / call

Robots Evaluate

Evaluate supplied robots.txt for a URL and user agent; no network fetch.

web.robots-evaluate