extract-structured-data
Extract structured data from a URL or raw text into strict JSON matching a schema you provide. Fields the content doesn't support come back null - never an invented or approximate value, and an unmatchable schema returns an explicit error. Try GET /extract/sample. Part of the AgentIndex content kit (pdf, web-read, extract, summarize, detect-language) - see GET /capabilities.
Offering
- Provider
- x402.agentindex.world
- Method
- POST
- Offering type
- Api Endpoint
- Transport type
- http
- Category
- Data
- Delivery
- Not provided
- Pricing model
- Not provided
- x402 version
- 2
Endpoint context
- URL
https://x402.agentindex.world/extract- MIME type
- application/json
- First seen
- 2026-10-16T01:50:38.788Z
- Last seen
- Tags
- extract, structured data, JSON Schema
Payment pricing
x402 payment terms are the authoritative price for calling this endpoint.
- Payment option 1
- 0.002 USDC
Atomic price: 2000 · Network: eip155:8453 · Asset: USDC · Scheme: exact
Raw x402 terms
[
{
"scheme": "exact",
"network": "eip155:8453",
"asset": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
"amount": "2000",
"payTo": "0xb3F32bdfe8D07825BC0D7387295aB1D7559BA69d"
}
]Observed health
- Status
- Reachable
- Latest latency
- 301 ms
- Average latency
- 602 ms
- HTTP status
- 405
- Last checked
- Reachability
- 100% over 12 checks
Latency is measured to the first response headers. A reachable result does not verify response accuracy or merchant identity.
Input schema
{
"type": "object",
"properties": {
"type": {
"type": "string",
"const": "http"
},
"method": {
"type": "string",
"enum": [
"POST",
"PUT",
"PATCH"
]
},
"bodyType": {
"type": "string",
"enum": [
"json",
"form-data",
"text"
]
},
"body": {
"properties": {
"url": {
"type": "string",
"description": "URL to read and extract from. Provide this or text, not both."
},
"text": {
"type": "string",
"description": "Raw text to extract from. Provide this or url, not both."
},
"schema": {
"type": "object",
"description": "JSON Schema describing the fields to extract. The response's `data` field will strictly conform to it."
}
},
"required": [
"schema"
]
}
},
"required": [
"type",
"method",
"bodyType",
"body"
],
"additionalProperties": false
}Output schema
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"properties": {
"input": {
"additionalProperties": false,
"properties": {
"body": {
"properties": {
"schema": {
"description": "JSON Schema describing the fields to extract. The response's `data` field will strictly conform to it.",
"type": "object"
},
"text": {
"description": "Raw text to extract from. Provide this or url, not both.",
"type": "string"
},
"url": {
"description": "URL to read and extract from. Provide this or text, not both.",
"type": "string"
}
},
"required": [
"schema"
]
},
"bodyType": {
"enum": [
"json",
"form-data",
"text"
],
"type": "string"
},
"method": {
"enum": [
"POST",
"PUT",
"PATCH"
],
"type": "string"
},
"type": {
"const": "http",
"type": "string"
}
},
"required": [
"type",
"method",
"bodyType",
"body"
],
"type": "object"
},
"output": {
"properties": {
"example": {
"properties": {
"data": {
"description": "Extracted data, matching the requested schema's shape - fields the content doesn't support come back null rather than an invented value (see missing_fields).",
"type": "object"
},
"missing_fields": {
"description": "Top-level keys in data the model could not find in the content and returned as null.",
"items": {
"type": "string"
},
"type": "array"
},
"x402_receipt": {
"description": "Billing and provenance receipt for this call.",
"type": "object"
}
},
"required": [
"data",
"missing_fields"
],
"type": "object"
},
"type": {
"type": "string"
}
},
"required": [
"type"
],
"type": "object"
}
},
"required": [
"input"
],
"type": "object"
}