Jev-powered research
Jev-powered research: routed search, cited answer, claims verified against sources. Ask a question, get a 5-8 sentence answer, each claim tagged to a numbered source, built from real page content - no invented facts. A fast paid LLM writes it, under 4.5s guaranteed; on a rare miss, a no-LLM extractive fallback (top sentences from the sources, picked by Jev) takes over instead, marked "synthesis":"extractive". Try GET /research/sample.
Answeringour last check, 2026-09-30
1 of 1checks answered this week
2209 msmedian answer time
$0.005listed price per call
$0.005price it asked us
Paid test badge: not yet. The checks above are free: we call the tool without paying and read the payment request it sends back. The Verified badge needs paid calls whose answers match the promised output, and nobody can buy a badge.
Endpoint
POST https://x402.agentindex.world/research
| Category | Search and research |
|---|---|
| Provider host | x402.agentindex.world |
| Networks | eip155:8453 |
| Payment schemes | exact |
| Self-reported calls, 30 days | 0 from 0 payers (the provider's figure, not ours) |
Our checks, last 30 days
| Day | Result | HTTP | Asked | Time |
|---|---|---|---|---|
| 2026-09-30 | valid payment request | 402 | $0.005 | 2209 ms |
Example input (from the provider)
{
"body": {
"query": "What are the main features of the Rust programming language?"
},
"bodyType": "json",
"method": "POST",
"type": "http"
}
Promised output schema (from the provider)
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"properties": {
"input": {
"additionalProperties": false,
"properties": {
"body": {
"properties": {
"max_sources": {
"description": "How many web sources to consider, 1-10. Default 5.",
"type": "integer"
},
"query": {
"description": "The research question to answer, up to 500 characters.",
"type": "string"
}
},
"required": [
"query"
]
},
"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": {
"answer": {
"description": "5-8 sentences, each claim cited inline as [n] referring to the sources array (1-indexed).",
"type": "string"
},
"claims_verified": {
"description": "True only if a Jev check confirmed the answer's citations are supported. False if unsupported OR if verification was skipped/timed out - see claims_verified_reason.",
"type": "boolean"
},
"claims_verified_reason": {
"description": "Why claims_verified is false: 'jev_found_unsupported_claim', 'verification_timed_out_or_failed', 'insufficient_time_budget_remaining', or null when verified true.",
"type": [
"string",
"null"
]
},
"query": {
"type": "string"
},
"sources": {
"items": {
"properties": {
"published_at": {
"type": [
"string",
"null"
]
},
"source": {
"type": "string"
},
"title": {
"type": "string"
},
"url": {
"type": "string"
}
},
"type": "object"
},
"type": "array"
},
"synthesis": {
"description": "'llm' when a paid fast model wrote the answer (the common case). 'extractive' when that model missed its own tight time cap and the answer is instead the most relevant sentences already present in the sources, verbatim, picked by Jev - never a second LLM call.",
"enum": [
"llm",
"extractive"
],
"type": "string"
},
"timing_ms": {
"description": "search, synthesis, verify, total, in milliseconds.",
"type": "object"
},
"x402_receipt": {
"description": "Billing and provenance receipt for this call.",
"type": "object"
}
},
"required": [
"query",
"answer",
"synthesis",
"sources",
"claims_verified",
"timing_ms"
],
"type": "object"
},
"type": {
"type": "string"
}
},
"required": [
"type"
],
"type": "object"
}
},
"required": [
"input"
],
"type": "object"
}