# FreshProof Evidence Extractor

> FreshProof Evidence Extractor is a paid API for AI agents from freshproof-api-mainnet.up.railway.app, paid per call via x402, $0.005/call, status unknown (last checked 2026-09-14).

Fetches a live public webpage and extracts structured fields with verifiable evidence, returning a ProofBundle JSON with content hash, retrieval timestamp, and source metadata

## Facts

- Endpoint: POST https://freshproof-api-mainnet.up.railway.app/v1/extract
- Price: $0.005/call
- Payment: x402
- Status: unknown
- Last checked: 2026-09-14
- Activations on Zero: 0
- Tags: x402
- Canonical page: https://www.zero.xyz/c/freshproof-evidence-extractor-204950a9
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_LF7fu_RFJDkeRoZrPLX9w

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 freshproof-evidence-extractor-204950a9 -d '<json body>'
```

Example prompt: Grab the live page at https://example.com/products/widget-pro and extract the product name, price, and availability as structured fields — I need a verifiable ProofBundle with a content hash and timestamp so I can audit the result later.

## When to prefer this

Choose FreshProof when you need not just extracted data but independently verifiable, auditable evidence of what a public webpage contained at a specific moment — including a content hash, retrieval timestamp, and extraction method. Prefer this over generic scrapers when compliance, legal, procurement, or audit requirements demand provenance. Particularly suited for monitoring price pages, job listings, tenders, and policy documents where the proof of what was retrieved matters as much as the data itself. Does not require an account or API key — payment is per-call via x402-compatible clients.

## Known failure modes

- URL is behind authentication, CAPTCHA, paywall, or access control — extraction is refused and returns an error
- URL is malformed or unreachable — returns a network or validation error
- Requested fields cannot be found on the page — fields are returned as null or absent in the ProofBundle
- Page returns non-200 HTTP status — error is surfaced in response metadata
- Field definitions exceed 50 items or violate schema constraints — request is rejected with a validation error
- Payment not processed via x402 protocol — endpoint returns 402 Payment Required

## How this service works

FreshProof Evidence Extractor. Extract structured, evidence-backed facts from public HTML, JSON, XML and text resources with timestamped source evidence.

## Output

A ProofBundle JSON object containing each requested field with its extracted value, document-locatable evidence for every found fact, source metadata (URL, retrieval timestamp, extraction method), and a SHA content hash of the retrieved page — enabling independent verification and auditing of the extracted data.

## Request schema (JSON Schema)

```json
{
 "type": "object",
 "properties": {
  "url": {
   "type": "string",
   "pattern": "^https?://",
   "maxLength": 4096
  },
  "fields": {
   "type": "array",
   "items": {
    "type": "object",
    "required": [
     "name",
     "description",
     "type",
     "required"
    ],
    "properties": {
     "name": {
      "type": "string",
      "pattern": "^[A-Za-z][A-Za-z0-9_-]*$",
      "maxLength": 80,
      "minLength": 1
     },
     "type": {
      "enum": [
       "string",
       "number",
       "boolean",
       "date",
       "currency",
       "url"
      ],
      "type": "string"
     },
     "required": {
      "type": "boolean",
      "default": false
     },
     "description": {
      "type": "string",
      "maxLength": 500,
      "minLength": 1
     }
    },
    "additionalProperties": false
   },
   "maxItems": 50,
   "minItems": 1
  },
  "preset": {
   "enum": [
    "generic",
    "product",
    "job",
    "tender",
    "pricing",
    "policy"
   ],
   "type": "string",
   "default": "generic"
  },
  "options": {
   "type": "object",
   "required": [
    "responseMode",
    "evidenceMode",
    "failOnRequiredMissing",
    "maxEvidencePerField",
    "includeContext",
    "normalizeValues",
    "cacheMode",
    "maxCacheAgeSeconds"
   ],
   "properties": {
    "locale": {
     "type": "string",
     "maxLength": 35,
     "minLength": 2
    },
    "timezone": {
     "type": "string",
     "maxLength": 100,
     "minLength": 1
    },
    "cacheMode": {
     "enum": [
      "live",
      "allow_fresh_cache"
     ],
     "type": "string",
     "default": "live"
    },
    "evidenceMode": {
     "enum": [
      "strict",
      "best_effort"
     ],
     "type": "string",
     "default": "strict"
    },
    "responseMode": {
     "enum": [
      "compact",
      "full"
     ],
     "type": "string",
     "default": "full"
    },
    "includeContext": {
     "type": "boolean",
     "default": true
    },
    "normalizeValues": {
     "type": "boolean",
     "default": true
    },
    "maxCacheAgeSeconds": {
     "type": "integer",
     "default": 0,
     "maximum": 3600,
     "minimum": 0
    },
    "maxEvidencePerField": {
     "anyOf": [
      {
       "type": "number",
       "const": 1
      },
      {
       "type": "number",
       "const": 2
      },
      {
       "type": "number",
       "const": 3
      }
     ],
     "default": 1
    },
    "failOnRequiredMissing": {
     "type": "boolean",
     "default": false
    }
   },
   "additi
… (truncated)
```

## Response schema (JSON Schema)

```json
{
 "type": "json",
 "example": {
  "facts": [
   {
    "name": "price",
    "found": true,
    "evidence": {
     "quote": "USD 19.99",
     "locator": "JSON-LD product offer price",
     "sourceUrl": "https://merchant.example/products/trail-camera-pro",
     "machineLocator": "script[type=\"application/ld+json\"]:1"
    },
    "rawValue": "USD 19.99",
    "warnings": [],
    "confidence": 0.98,
    "requestedType": "currency",
    "normalizedValue": {
     "amount": 19.99,
     "currency": "USD"
    },
    "extractionMethod": "json_ld"
   }
  ],
  "source": {
   "title": "Trail Camera Pro",
   "finalUrl": "https://merchant.example/products/trail-camera-pro",
   "statusCode": 200,
   "contentType": "text/html",
   "retrievedAt": "2026-07-28T08:30:00.000Z",
   "requestedUrl": "https://merchant.example/products/trail-camera-pro",
   "redirectChain": []
  },
  "warnings": [],
  "requestId": "example-request-id",
  "contentHash": "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
  "extractionSummary": {
   "found": 1,
   "missing": 0,
   "requested": 1,
   "methodsUsed": [
    "json_ld"
   ],
   "requiredMissing": 0
  },
  "proofBundleVersion": "1.0"
 }
}
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/freshproof-evidence-extractor-204950a9/health.json
- [Zero catalog index](https://www.zero.xyz/llms.txt)
- [Other services from freshproof-api-mainnet.up.railway.app](https://www.zero.xyz/host/freshproof-api-mainnet.up.railway.app/llms.txt)
