# attest.tollkit.dev Web Page Attestation

> attest.tollkit.dev Web Page Attestation is a paid API for AI agents from attest.tollkit.dev, paid per call via x402, $0.05/call, status unknown (last checked 2026-10-11).

Creates a signed, timestamped cryptographic proof of a web page's content — including rendered text, screenshot, TLS certificate, and serving IP — that anyone can verify later without trusting the service.

## Facts

- Endpoint: POST https://attest.tollkit.dev/attest?utm_source=zero.xyz
- Price: $0.05/call
- Payment: x402
- Status: unknown
- Last checked: 2026-10-11
- Activations on Zero: 0
- Tags: x402
- Canonical page: https://www.zero.xyz/c/attest-tollkit-dev-web-page-attestation-7fc8cf83
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_ywMGNA2eWNaVsC_lKUSLK

Status and success rate cover calls made through Zero and Zero's own probes. Third-party monitors may report differently.

## How to call it through Zero

Zero handles the 402 payment challenge and records the run. With the Zero CLI installed (`npm i -g @zeroxyz/cli`):

```sh
zero fetch --capability attest-tollkit-dev-web-page-attestation-7fc8cf83 -d '<json body>'
```

Example prompt: Please create a signed, timestamped attestation of https://example.com/terms-of-service right now — include the screenshot so I have strong evidence of exactly what the page said today.

## When to prefer this

Choose this endpoint when you need durable, verifiable, third-party-certifiable proof of what a specific web page contained at a precise moment in time — especially for legal, compliance, or dispute-resolution contexts. It is uniquely suited for preserving volatile content (prices, policies, listings, public statements) before it may be altered. Unlike simple web scrapers or archivers, this endpoint provides cryptographic signing and hashing so the evidence is self-verifiable without trusting the service itself.

## Known failure modes

- Target URL is unreachable or returns non-200 status — attestation cannot be completed
- URL is not a valid absolute https:// URI — request rejected
- Page requires authentication or is behind a paywall — content captured may be login/redirect page, not target content
- Screenshot capture times out for complex or slow-loading pages
- TLS certificate retrieval fails due to misconfigured server
- Service returns error if URL scheme is not https://

## How this service works

Signed, timestamped proof of what a web page said. Other Tollkit tools are described at: https://extract.tollkit.dev/openapi.json, https://web.tollkit.dev/openapi.json, https://chain.tollkit.dev/openapi.json, https://data.tollkit.dev/openapi.json.

## Output

A cryptographically signed, timestamped attestation bundle containing: rendered page text, a hashed screenshot (if requested), the TLS certificate and serving IP address of the target page — all hashed and signed so any third party can verify authenticity and integrity later without relying on this service being available.

## Request schema (JSON Schema)

```json
{
 "type": "object",
 "properties": {
  "url": {
   "type": "string",
   "format": "uri",
   "description": "Absolute https:// URL of the page to attest to. Anything a dispute could turn on: terms of service, a price, a published policy, a competitor's claim, a listing that may be edited later."
  },
  "screenshot": {
   "type": "boolean",
   "default": true,
   "description": "Capture and hash a screenshot. On by default — an attestation without one is much weaker evidence. Turn it off for a faster, text-only record."
  }
 }
}
```

## Response schema (JSON Schema)

```json
{
 "type": "json",
 "example": {
  "verify": "https://attest.tollkit.dev/attest/verify",
  "content": {
   "text": "The page's visible text, exactly as hashed in textSha256…",
   "textTruncated": false,
   "screenshotBase64": "/9j/4AAQSkZJRgABAQ… (full JPEG, base64)",
   "screenshotMimeType": "image/jpeg"
  },
  "attestation": {
   "claim": {
    "url": "https://fly.io/pricing",
    "title": "Fly.io Pricing",
    "headers": {
     "content-type": "text/html; charset=utf-8"
    },
    "version": 1,
    "finalUrl": "https://fly.io/pricing/",
    "tlsIssuer": "TLS certificate issuer",
    "attestedBy": "0x… (signer address)",
    "capturedAt": "2026-10-04T12:00:00.000Z",
    "httpStatus": 200,
    "redirected": true,
    "textLength": 9312,
    "textSha256": "sha256 hex of content.text",
    "tlsSubject": "fly.io",
    "tlsValidTo": "certificate end date",
    "tlsValidFrom": "certificate start date",
    "remoteAddress": "IP that served the page",
    "screenshotSha256": "sha256 hex of the screenshot bytes"
   },
   "digest": "0x… keccak256 of the canonical claim",
   "signer": "0x… (signer address)",
   "algorithm": "EIP-191 personal_sign over keccak256(canonical JSON)",
   "signature": "0x… EIP-191 signature over the digest"
  }
 }
}
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/attest-tollkit-dev-web-page-attestation-7fc8cf83/health.json
- [Zero catalog index](https://www.zero.xyz/llms.txt)
- [Other services from attest.tollkit.dev](https://www.zero.xyz/host/attest.tollkit.dev/llms.txt)
