Use before spending tokens, money or crawler capacity fetching an unfamiliar web resource
Use before spending tokens, money or crawler capacity fetching an unfamiliar web resource. Resolves redirects (manually, bounded, re-validated per hop) and returns deterministic HTTP/resource facts — final URL, status, content type and length, response time, a bounded HTML title/canonical peek, and a lightweight generic-bot robots.txt indication — so an agent can decide whether a normal web fetch is worthwhile. It does not scrape, render JavaScript, or judge safety.
3000 (raw units)
price
2
calls / 30d
2
unique payers
2026-09-14
updated
Provider
agent-api-production.tim1712.workers.dev · discovered, not yet claimed by its owner
Payment (x402 accepts[])
[
{
"scheme": "exact",
"network": "eip155:8453",
"payTo": "0x5229384BD502D85aa7EcA0A31B515E5E48d3910F",
"asset": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
"amount": "3000",
"maxTimeoutSeconds": 300
}
]Output schema
{
"bazaar": {
"info": {
"input": {
"body": {
"url": "https://example.com/article"
},
"bodyType": "json",
"method": "POST",
"type": "http"
},
"output": {
"example": {
"canonicalUrl": "https://www.example.com/article",
"checkedAt": "2026-08-30T10:00:02.000Z",
"contentLength": 123456,
"contentType": "text/html; charset=utf-8",
"finalUrl": "https://www.example.com/article",
"likelyHtml": true,
"ok": true,
"redirects": [
{
"from": "https://example.com/article",
"status": 301,
"to": "https://www.example.com/article"
}
],
"requestedUrl": "https://example.com/article",
"responseTimeMs": 184,
"robots": {
"allowedForGenericBot": true,
"found": true,
"url": "https://www.example.com/robots.txt"
},
"status": 200,
"title": "Example article title",
"warnings": []
},
"type": "json"
}
},
"schema": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"properties": {
"input": {
"additionalProperties": false,
"properties": {
"body": {
"additionalProperties": false,
"properties": {
"url": {
"maxLength": 2048,
"minLength": 1,
"type": "string"
}
},
"required": [
"url"
],
"type": "object"
},
"bodyType": {
"enum": [
"json",
"form-data",
"text"
],
"type": "string"
},
"method": {
"enum": [
"POST"
],
"type": "string"
},
"type": {
"const": "http",
"type": "string"
}
},
"required": [
"type",
"method",
"bodyType",
"body"
],
"type": "object"
},
"output": {
"properties": {
"example": {
"additionalProperties": false,
"properties": {
"canonicalUrl": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"checkedAt": {
"type": "string"
},
"contentLength": {
"anyOf": [
{
"minimum": 0,
"type": "integer"
},
{
"type": "null"
}
]
},
"contentType": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"finalUrl": {
"type": "string"
},
"likelyHtml": {
"type": "boolean"
},
"ok": {
"type": "boolean"
},
"redirects": {
"items": {
"additionalProperties": false,
"properties": {
"from": {
"type": "string"
},
"status": {
"type": "integer"
},
"to": {
"type": "string"
}
},
"required": [
"status",
"from",
"to"
],
"type": "object"
},
"type": "array"
},
"requestedUrl": {
"type": "string"
},
"responseTimeMs": {
"minimum": 0,
"type": "integer"
},
"robots": {
"additionalProperties": false,
"properties": {
"allowedForGenericBot": {
"anyOf": [
{
"type": "boolean"
},
{
"type": "null"
}
]
},
"found": {
"type": "boolean"
},
"url": {
"type": "string"
}
},
"required": [
"url",
"found",
"allowedForGenericBot"
],
"type": "object"
},
"status": {
"type": "integer"
},
"title": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"warnings": {
"items": {
"type": "string"
},
"type": "array"
}
},
"required": [
"requestedUrl",
"finalUrl",
"redirects",
"status",
"ok",
"contentType",
"contentLength",
"responseTimeMs",
"likelyHtml",
"title",
"canonicalUrl",
"robots",
"warnings",
"checkedAt"
],
"type": "object"
},
"type": {
"type": "string"
}
},
"required": [
"type"
],
"type": "object"
}
},
"required": [
"input"
],
"type": "object"
}
}
}Use it
curl
curl "https://agent-api-production.tim1712.workers.dev/v1/web/resource-preflight" # -> 402 Payment Required, accepts[] lists how to pay # retry with a PAYMENT-SIGNATURE (or PAYMENT header) once paid
JavaScript
const res = await fetch("https://agent-api-production.tim1712.workers.dev/v1/web/resource-preflight");
if (res.status === 402) {
const { accepts } = await res.json();
// pay one of accepts[] via an x402 client, then retry with the payment header
}Python
import httpx
res = httpx.get("https://agent-api-production.tim1712.workers.dev/v1/web/resource-preflight")
if res.status_code == 402:
accepts = res.json()["accepts"]
# pay one of accepts[] via an x402 client, then retry with the payment headerMachine-readable
Everything on this page is also available as clean JSON at /resources/8029.json, and this resource appears in /discovery/resources and /discovery/search.