# Blinka Machine Mouths – Structured Extraction

> Blinka Machine Mouths – Structured Extraction is a paid API for AI agents from blinka-machine-mouths.netlify.app, paid per call via x402, $0.01/call, status unknown (last checked 2026-10-11).

Extracts structured, schema-validated data from raw text using a local stateless model, with evidence citations and uncertainty flags.

## Facts

- Endpoint: POST https://blinka-machine-mouths.netlify.app/structure?utm_source=zero.xyz
- Price: $0.01/call
- Payment: x402
- Status: unknown
- Last checked: 2026-10-11
- Activations on Zero: 0
- Tags: x402
- Canonical page: https://www.zero.xyz/c/blinka-machine-mouths-structured-extraction-04f80b60
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_cuf3UVrzYaap-l9m6xfG-

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 blinka-machine-mouths-structured-extraction-04f80b60 -d '<json body>'
```

Example prompt: Pull out the applicant name and budget from this email text and return them as JSON matching my schema — the text is: 'Hi, I'm Jamie and my project budget is $250.' Use the schema {name: string, budget_usd: number} and focus on financial and identity fields.

## When to prefer this

Choose this endpoint when you have raw text already in hand and need to reliably extract typed, schema-validated fields with evidence citations and uncertainty flags — especially when hallucination or data invention is unacceptable. Prefer it over general LLM extraction when you need stateless, reproducible, evidence-backed structured output against a strict JSON Schema. Not suitable for fetching URLs, generating new content, or tasks requiring memory or tool execution.

## Known failure modes

- Source text exceeds 12,000 characters — request rejected
- Extracted data fails to validate against provided schema — may return partial data or error
- Field genuinely absent from source text — listed in uncertain array rather than invented
- Malformed JSON Schema input — extraction fails with schema error
- Ambiguous instruction leads to low-confidence fields flagged in uncertain

## How this service works

Bounded stateless machine services plus public procurement discovery. No private Mika memory or arbitrary tool execution.

## Output

Returns a JSON object with: ok (boolean), data (extracted fields validated against the provided schema), model identifier, evidence (per-field citation snippets from source text), retained (always false — stateless), and uncertain (list of fields the model could not confidently extract).

## Request schema (JSON Schema)

```json
{
 "type": "object",
 "properties": {
  "text": {
   "type": "string",
   "description": "Untrusted source text already in hand. Max 12,000 characters. No URLs are fetched."
  },
  "schema": {
   "type": "object",
   "description": "JSON Schema the returned data must validate against."
  },
  "instruction": {
   "type": "string",
   "description": "Optional extraction focus. It cannot authorize invention of facts."
  }
 }
}
```

## Response schema (JSON Schema)

```json
{
 "type": "json",
 "example": {
  "ok": true,
  "data": {
   "name": "Jamie",
   "budget_usd": 250
  },
  "model": "local-structured-extractor",
  "evidence": {
   "name": "Jamie emailed",
   "budget_usd": "Budget is $250"
  },
  "retained": false,
  "uncertain": []
 }
}
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/blinka-machine-mouths-structured-extraction-04f80b60/health.json
- [Zero catalog index](https://www.zero.xyz/llms.txt)
- [Other services from blinka-machine-mouths.netlify.app](https://www.zero.xyz/host/blinka-machine-mouths.netlify.app/llms.txt)
