{
 "id": "e6b6458207ab",
 "url": "https://doc-extract-api.thestarboy9696-4ef.workers.dev/extract/custom",
 "host": "doc-extract-api.thestarboy9696-4ef.workers.dev",
 "method": "POST",
 "type": "http",
 "x402Version": 2,
 "scheme": "exact",
 "network": "eip155:8453",
 "net": "base",
 "testnet": false,
 "asset": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
 "price_atomic": "20000",
 "price_usd": 0.02,
 "band": "1c-10c",
 "payTo": "0x65c767C483dd862d08Bc3d6500Cd4CD770Ae28ED",
 "networks": [
  "eip155:8453"
 ],
 "description": "SchemaLock — extract structured JSON data from any PDF/image or raw text/HTML, converting it into a JSON Schema you supply, not limited to invoice/receipt/contract/resume. Unlike the fixed invoice/receipt/contract/resume endpoints, this accepts any JSON Schema — you define the fields. Takes a PDF/image file OR raw text/HTML you already have (e.g. a scraped page). Schema-conformance, not fact-checking. A rejected schema is a 400 and costs nothing.",
 "serviceName": "SchemaLock",
 "tags": [
  "custom-schema",
  "pdf",
  "json",
  "document-extraction",
  "structured-data"
 ],
 "mimeType": null,
 "iconUrl": null,
 "bazaar": {
  "info": {
   "input": {
    "body": {
     "content": "<string: raw text or HTML, e.g. an already-scraped web page, max 100000 chars — send this OR 'file', not both>",
     "file": "<binary: PDF, PNG, or JPEG/WEBP, max 15MB — send this OR 'content', not both>",
     "instructions": "<optional string: extra guidance for the model, max 1000 chars>",
     "schema": "<string: JSON Schema, type \"object\", e.g. {\"type\":\"object\",\"properties\":{\"order_id\":{\"type\":\"string\"},\"ship_date\":{\"type\":\"string\"},\"total_weight_kg\":{\"type\":\"number\"}}}>"
    },
    "bodyType": "form-data",
    "method": "POST",
    "type": "http"
   },
   "output": {
    "type": "json",
    "example": {
     "data": {
      "order_id": "PO-88213",
      "ship_date": "2026-07-14",
      "total_weight_kg": 42.5
     },
     "retried": false,
     "validation_warnings": []
    }
   }
  },
  "has_schema": true
 },
 "quality": {
  "calls30": 2,
  "payers30": 1,
  "lastCalledAt": "2026-09-08T19:25:18.474Z"
 },
 "catalogs": [
  {
   "name": "cdp",
   "lastUpdated": "2026-09-08T19:25:19.108Z",
   "seen_at": "2026-09-30T23:10:40.669Z"
  }
 ],
 "catalog_names": [
  "cdp"
 ],
 "first_seen_catalog": "2026-09-08T19:25:19.108Z",
 "last_updated_catalog": "2026-09-08T19:25:19.108Z",
 "first_seen": "2026-09-30",
 "templated": false,
 "category": "crypto-data",
 "probe": null,
 "onchain": {
  "resolved": true,
  "source": "blockscout-sample",
  "payers": 2,
  "payments": 17,
  "usd": 0.74,
  "median_usd": null,
  "first": "2026-08-26T23:54:17.000000Z",
  "last": "2026-09-08T19:25:19.000000Z",
  "sampler_share": null,
  "non_sampler_payers": null,
  "sample": {
   "page_items": 17,
   "usdc_items": 17,
   "x402_shaped": 17,
   "has_more": false,
   "note": "newest page of inbound ERC-20 transfers only (<=50); counts are a floor, not a total"
  },
  "name": null
 },
 "status": "unprobed",
 "valid_402": false,
 "dead": false,
 "verdict": "unprobed",
 "live_reprobe": null,
 "featured": null,
 "page": "https://bazaar.agentexchange.work/r/e6b6458207ab",
 "seller": "https://bazaar.agentexchange.work/seller/doc-extract-api.thestarboy9696-4ef.workers.dev",
 "seller_json": "https://bazaar.agentexchange.work/seller/doc-extract-api.thestarboy9696-4ef.workers.dev.json",
 "paid": {
  "probe_now": {
   "url": "https://bazaar.agentexchange.work/r/e6b6458207ab/probe.json",
   "price_usd": 0.01,
   "protocol": "x402"
  },
  "feature": {
   "url": "https://bazaar.agentexchange.work/featured",
   "method": "POST",
   "body": {
    "id": "e6b6458207ab"
   },
   "price_usd": 1,
   "protocol": "x402"
  }
 },
 "license": "CC BY 4.0"
}