# WebberSites Custom Data Extractor

> WebberSites Custom Data Extractor is a paid API for AI agents from api.webbersites.com, paid per call via x402, $0.01/call, status unknown (last checked 2026-09-14).

Extracts structured custom fields from unstructured documents or web content using an LLM, returning typed JSON with field values, model attribution, and a list of missing fields

## Facts

- Endpoint: POST https://api.webbersites.com/api/extract/custom
- Price: $0.01/call
- Payment: x402
- Status: unknown
- Last checked: 2026-09-14
- Activations on Zero: 0
- Tags: x402
- Canonical page: https://www.zero.xyz/c/webbersites-custom-data-extractor-08f874dc
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_CtPSR7BucUivEs6Hp9HtR

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 webbersites-custom-data-extractor-08f874dc -d '<json body>'
```

Example prompt: Pull these fields from the following invoice text — company name, total amount, due date, and invoice number — and return them as structured JSON: 'Acme Corp owes $1,284.50 due August 15, 2026, Invoice INV-2041.'

## When to prefer this

Choose this endpoint when you need to extract a custom set of named fields from arbitrary unstructured text or documents and receive typed, structured JSON back. It is especially useful for invoice parsing, contract analysis, or any scenario where the fields to extract vary per use case. Prefer it over regex or rule-based approaches when content is natural language, and prefer it over general-purpose LLM calls when you want deterministic JSON output with a 'missing' field audit and per-call micropayment pricing.

## Known failure modes

- Fields not present in source content — returned in the 'missing' array rather than as an error
- Ambiguous or low-quality input text may cause inaccurate extractions
- Unsupported or malformed request body returns HTTP 400
- Payment not included or insufficient — returns HTTP 402 requiring x402 payment
- Rate limiting or model unavailability returns HTTP 503

## How this service works

WebberSites – Branding, Web Design, Photography, Marketing Strategy - Youngstown Ohio

## Output

A JSON object containing a 'data' map of the requested fields and their extracted values (e.g. total, company, due_date, invoice_number), the 'model' name used for extraction (e.g. gemini-2.5-flash-lite), and a 'missing' array listing any fields that could not be found in the source content.

## Request schema (JSON Schema)

```json
{
 "type": "object",
 "$schema": "https://json-schema.org/draft/2020-12/schema",
 "required": [
  "input"
 ],
 "properties": {
  "input": {
   "type": "object",
   "required": [
    "type",
    "method",
    "bodyType",
    "body"
   ],
   "properties": {
    "body": {
     "required": [
      "content",
      "schema"
     ],
     "properties": {
      "schema": {
       "type": "object",
       "description": "Fields to extract: {name: type-or-description}. Types: string, number, boolean, date, string[], number[] — or a plain-language description ('the total in USD')"
      },
      "content": {
       "type": "string",
       "description": "The unstructured text to extract from, up to 16,000 characters"
      },
      "instructions": {
       "type": "string",
       "description": "Optional extra guidance, e.g. 'dates are DD/MM/YYYY in this document'"
      }
     }
    },
    "type": {
     "type": "string",
     "const": "http"
    },
    "method": {
     "enum": [
      "POST"
     ],
     "type": "string"
    },
    "bodyType": {
     "enum": [
      "json",
      "form-data",
      "text"
     ],
     "type": "string"
    }
   },
   "additionalProperties": false
  },
  "output": {
   "type": "object",
   "required": [
    "type"
   ],
   "properties": {
    "type": {
     "type": "string"
    },
    "example": {
     "type": "object",
     "properties": {
      "data": {
       "type": "object",
       "description": "one key per schema field; null where the content had no answer"
      },
      "model": {
       "type": "string"
      },
      "usage": {
       "type": "object"
      },
      "missing": {
       "type": "array",
       "description": "names of fields that came back null"
      }
     }
    }
   }
  }
 }
}
```

## Response schema (JSON Schema)

```json
{
 "type": "json",
 "example": {
  "data": {
   "total": 1284.5,
   "company": "Acme Corp",
   "due_date": "2026-08-15",
   "invoice_number": "INV-2041"
  },
  "model": "gemini-2.5-flash-lite",
  "missing": []
 }
}
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/webbersites-custom-data-extractor-08f874dc/health.json
- [Zero catalog index](https://www.zero.xyz/llms.txt)
- [Other services from api.webbersites.com](https://www.zero.xyz/host/api.webbersites.com/llms.txt)
