# NetIntel Schema-Guided Text Extraction

> NetIntel Schema-Guided Text Extraction is a paid API for AI agents from netintel-production-440c.up.railway.app, paid per call via x402, $0.1/call, status unknown (last checked 2026-09-14, last successful call 2026-08-04).

Accepts unstructured text and a user-defined JSON Schema, then uses an LLM to extract structured data matching that schema — returning the populated object plus token usage.

## Facts

- Endpoint: POST https://netintel-production-440c.up.railway.app/schema-parse/extract
- Price: $0.1/call
- Payment: x402
- Status: unknown
- Last checked: 2026-09-14
- Last successful call: 2026-08-04
- Success rate: 99% of calls made through Zero
- Rating: 4.7 / 5 from 1 review
- Activations on Zero: 191
- Tags: x402
- Canonical page: https://www.zero.xyz/c/netintel-production-440c-up-railway-app-ed1b4ee9
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_ioKF5U6NM5Reib08gAtxr

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 netintel-production-440c-up-railway-app-ed1b4ee9 -d '<json body>'
```

Example prompt: Extract structured data from this raw invoice text using this JSON Schema — fields include vendor_name, invoice_date, line_items (array of description and amount), and total_due: 'Invoice from Acme Corp, dated March 15 2024. Item: Web hosting $120.00. Item: Support plan $80.00. Total: $200.00.'

## When to prefer this

Choose this endpoint when you have unstructured text (emails, invoices, contracts, web-scraped content, medical notes) and need it mapped into a specific JSON shape defined by your own schema. Ideal when the target schema varies per use case or is user-defined at runtime, and you need a general-purpose extraction engine rather than a domain-specific parser. Best when fields may be missing or ambiguous and null-safe handling is acceptable.

## Known failure modes

- Schema is malformed or not valid JSON Schema — returns error about schema parsing
- Text is too long and exceeds LLM context window — returns token limit error
- Requested fields are not present in source text — fields returned as null or omitted
- Ambiguous or contradictory text leads to incorrect field mapping — low-confidence extractions
- Network timeout on LLM backend — returns 5xx error
- Invalid request body format — returns 400 with validation details

## How this service works

Extract structured data from any unstructured text into your own JSON Schema — structured-data / information extraction, text-to-JSON, LLM data enrichment. You supply the schema; the LLM returns a matching object. Works for contacts, invoices, events, product specs, medical records, legal clauses, resumes — any shape. Returns the extracted object plus token usage; unfound fields are omitted or null.

## Output

A JSON object whose shape matches the user-supplied schema, with each field populated from the source text where found, fields omitted or null where not found, plus token usage counts (prompt tokens and completion tokens) for cost tracking.

## Example request

```json
{
 "input": {
  "body": {
   "raw_text": "Meeting notes from Q1 planning session on March 15, 2024. Attendees: John Smith, Sarah Johnson, Mike Chen. Topics discussed: budget allocation of $50,000 for marketing, timeline extension to June 30, 2024, and approval of new vendor contract. Action items: John to finalize budget by March 22, Sarah to review vendor terms by March 20.",
   "target_schema": {
    "type": "object",
    "required": [
     "meeting_date",
     "attendees",
     "action_items"
    ],
    "properties": {
     "deadline": {
      "type": "string",
      "description": "Project deadline or timeline"
     },
     "attendees": {
      "type": "array",
      "items": {
       "type": "string"
      },
      "description": "List of people who attended"
     },
     "action_items": {
      "type": "array",
      "items": {
       "type": "object",
       "properties": {
        "task": {
         "type": "string"
        },
        "owner": {
         "type": "string"
        },
        "due_date": {
         "type": "string"
        }
       }
      },
      "description": "List of action items with owner and due date"
     },
     "meeting_date": {
      "type": "string",
      "description": "Date of the meeting"
     },
     "budget_amount": {
      "type": "number",
      "description": "Budget amount in dollars"
     }
    }
   }
  },
  "type": "http",
  "method": "POST",
  "bodyType": "json"
 }
}
```

## 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": {
     "type": "object",
     "required": [
      "raw_text",
      "target_schema"
     ],
     "properties": {
      "raw_text": {
       "type": "string",
       "description": "Unstructured text to extract data from — emails, resumes, articles, log entries, contracts, support tickets, etc."
      },
      "target_schema": {
       "type": "object",
       "description": "A standard JSON Schema object with type, properties, and optionally required. Defines the shape of the extracted output."
      }
     }
    },
    "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": {
      "extracted": {
       "type": "object",
       "description": "Structured data conforming to the caller's target_schema. Missing fields are omitted or null."
      },
      "tokens_used": {
       "type": "object",
       "properties": {
        "input": {
         "type": "number",
         "description": "Prompt tokens consumed"
        },
        "output": {
         "type": "number",
         "description": "Completion tokens consumed"
        }
       },
       "description": "LLM token consumption for this extraction"
      }
     }
    }
   }
  }
 }
}
```

## Response schema (JSON Schema)

```json
{
 "type": "json",
 "example": {
  "extracted": {
   "name": "Sarah Chen",
   "role": "VP of Engineering",
   "email": "sarah.chen@acme.com",
   "phone": "555-867-5309",
   "company": "Acme Corp"
  },
  "tokens_used": {
   "input": 312,
   "output": 48
  }
 }
}
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/netintel-production-440c-up-railway-app-ed1b4ee9/health.json
- [Zero catalog index](https://www.zero.xyz/llms.txt)
- [Other services from netintel-production-440c.up.railway.app](https://www.zero.xyz/host/netintel-production-440c.up.railway.app/llms.txt)
