← The evidence ledger
Evidence row 61224
Observed , by baseline/1.
- Kind
- listing
- About
- source_record x402_bazaar:https://agent-data.centorprat.workers.dev/tools/broken-link-checker
- Recorded
- Previous row
- None: the first of its kind about this subject
- Body SHA-256
- 125688b802f9ebf4174eec6f2856d097ad0e69aa8a0eb8e1c0d22115ff418044
- Leaf
- 0x811ceb6b549197c4d13203ac0bab5d4f5f3d7afb17be9005d7ba769c3328ca3d
What was observed
{
"endpoints": [
[
"x402",
"https://agent-data.centorprat.workers.dev/tools/broken-link-checker"
]
],
"name": "Broken Link Checker",
"owner_address": "0x8d38d6026cf3a9805de9c5f0611cee95b532b120",
"raw": {
"accepts": [
{
"amount": "30000",
"asset": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
"extra": {
"name": "USD Coin",
"version": "2"
},
"maxTimeoutSeconds": 300,
"network": "eip155:8453",
"payTo": "0x8d38D6026cf3A9805DE9c5F0611ceE95B532B120",
"scheme": "exact"
},
{
"amount": "30000",
"asset": "0x3c499c542cEF5E3811e1192ce70d8cC03d5c3359",
"extra": {
"name": "USD Coin",
"version": "2"
},
"maxTimeoutSeconds": 300,
"network": "eip155:137",
"payTo": "0x8d38D6026cf3A9805DE9c5F0611ceE95B532B120",
"scheme": "exact"
},
{
"amount": "30000",
"asset": "EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v",
"extra": {
"feePayer": "D6ZhtNQ5nT9ZnTHUbqXZsTx5MH2rPFiBBggX4hY1WePM"
},
"maxTimeoutSeconds": 300,
"network": "solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp",
"payTo": "3644DrcePengCVjznEa59Dm7Mu7Acr522NvYyapHRHQh",
"scheme": "exact"
}
],
"description": "Give it URLs. For each page it extracts every link and tests it (HTTP status), reporting broken links (4xx/5xx/unreachable) with their anchor text, plus redirects, and internal vs external counts. Keyless, threaded, read-only. Schedule + webhook to catch new broken links. Up to 3 items per call; failed lookups are not charged.",
"extensions": {
"bazaar": {
"info": {
"input": {
"body": {
"urls": [
"https://www.python.org/"
]
},
"bodyType": "json",
"method": "POST",
"type": "http"
},
"output": {
"example": {
"items": [
{
"brokenCount": 0,
"brokenLinks": [],
"checkedAt": "2026-10-25T16:50:57+00:00",
"externalLinks": 43,
"fetched": true,
"finalUrl": "https://www.python.org/",
"internalLinks": 57,
"linksChecked": 100,
"note": "Read-only HEAD/GET of each link. Some servers rate-limit or block bots, which can look like a broken link - spot-check before acting.",
"redirectCount": 13,
"redirects": [
{
"status": 200,
"to": "https://www.python.org/psf-landing/",
"url": "https://www.python.org/psf/"
},
{
"status": 200,
"to": "https://docs.python.org/3/",
"url": "https://docs.python.org"
},
{
"status": 200,
"to": "https://www.python.org/psf/donations/",
"url": "https://donate.python.org/"
},
{
"status": 200,
"to": "https://www.linkedin.com/company/thepsf",
"url": "https://www.linkedin.com/company/python-software-foundation/"
},
{
"status": 200,
"to": "https://www.python.org/download/alternatives/",
"url": "https://www.python.org/download/alternatives"
},
{
"status": 200,
"to": "https://www.python.org/doc/av/",
"url": "https://www.python.org/doc/av"
},
{
"status": 200,
"to": "https://policies.python.org/python.org/code-of-conduct/",
"url": "https://www.python.org/psf/conduct/"
},
{
"status": 200,
"to": "https://www.python.org/community/awards/",
"url": "https://www.python.org/community/awards"
},
{
"status": 200,
"to": "https://www.python.org/jobs/",
"url": "https://jobs.python.org"
},
{
"status": 200,
"to": "https://www.python.org/about/apps/",
"url": "https://www.python.org/about/apps"
},
{
"status": 200,
"to": "https://bottlepy.org/docs/dev/",
"url": "https://bottlepy.org"
},
{
"status": 200,
"to": "https://www.tornadoweb.org/en/stable/",
"url": "https://www.tornadoweb.org/"
},
{
"status": 200,
"to": "https://flask.palletsprojects.com/en/stable/",
"url": "https://flask.palletsprojects.com/"
}
],
"signal": "all-links-ok",
"url": "https://www.python.org/"
}
]
},
"type": "json"
}
},
"schema": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"properties": {
"input": {
"additionalProperties": false,
"properties": {
"body": {
"properties": {
"checkExternal": {
"description": "Test links to other domains too (off = internal links only).",
"type": "boolean"
},
"maxLinks": {
"description": "Cap how many links to test.",
"type": "integer"
},
"onlyProblems": {
"description": "On: return only pages that have broken links.",
"type": "boolean"
},
"urls": {
"description": "Pages whose links to test, e.g. [\"https://your-site.com\"]. One report per URL.",
"items": {
"type": "string"
},
"maxItems": 3,
"type": "array"
}
},
"required": []
},
"bodyType": {
"enum": [
"json",
"form-data",
"text"
],
"type": "string"
},
"method": {
"enum": [
"POST",
"PUT",
"PATCH"
],
"type": "string"
},
"type": {
"const": "http",
"type": "string"
}
},
"required": [
"type",
"method",
"bodyType",
"body"
],
"type": "object"
},
"output": {
"properties": {
"example": {
"type": "object"
},
"type": {
"type": "string"
}
},
"required": [
"type"
],
"type": "object"
}
},
"required": [
"input"
],
"type": "object"
}
}
},
"lastUpdated": "2026-10-25T17:21:42.333Z",
"quality": {
"l30DaysTotalCalls": 4,
"l30DaysUniquePayers": 2,
"lastCalledAt": "2026-10-25T17:21:42.006Z"
},
"resource": "https://agent-data.centorprat.workers.dev/tools/broken-link-checker",
"serviceName": "Broken Link Checker",
"tags": [
"seo-tools",
"developer-tools",
"data"
],
"type": "http",
"x402Version": 2
},
"source": "x402_bazaar",
"summary": "Give it URLs. For each page it extracts every link and tests it (HTTP status), reporting broken links (4xx/5xx/unreachable) with their anchor text, plus redirects, and internal vs external counts. Keyless, threaded, read-only. Schedule + webhook to catch new broken links. Up to 3 items per call; failed lookups are not charged."
}What the leaf hashes
{"body":"125688b802f9ebf4174eec6f2856d097ad0e69aa8a0eb8e1c0d22115ff418044","id":61224,"kind":"listing","method":"baseline/1","observed_us":1793025450326136,"prev":null,"subject":"x402_bazaar:https://agent-data.centorprat.workers.dev/tools/broken-link-checker","subject_kind":"source_record"}Proof
Its day has not closed yet. A day closes ten minutes after midnight UTC; the proof appears here then.