Properties
| Name | Type | Description |
|---|---|---|
| query | string | |
| max_results | integer | Results to return, 1-100 (default 10). Up to 25 at the mode price; past 25, +5¢ plus 2¢ for every started 10 results returned past 25 (100 results: +21¢). |
| num_results | integer | Another name for `max_results` (wins when both are sent). |
| mode | string | standard 5¢ (web indexes and structured sources; results carry excerpts from the indexes, and on deployments that read pages a table, history or long-text request also gets matching rows read from the |
| objective | string | Optional. Your agent's overall task, in a sentence or two (what the query is a step toward). Used on deployments with adaptive search to choose follow-up queries, ignored otherwise; never sent to a se |
| include_domains | array | Only sources on these domains (and their subdomains), e.g. `["sec.gov", "nature.com"]`. A scheme and any path are ignored; a leading `www.` is kept as written (send `example.com` for the whole site). |
| exclude_domains | array | Never sources on these domains (or their subdomains). Up to 50. |
| start_published_date | string | Only sources published on or after this ISO 8601 date (`2026-01-01`) or date-time. With a date filter set, a source with no known published date is left out. |
| end_published_date | string | Only sources published on or before this ISO 8601 date or date-time (a date covers that whole day, UTC). With a date filter set, a source with no known published date is left out. |
| include_text | array | Short phrases looked for (case-insensitive) in the returned text: on search a result's title, snippet or passages; on ask the pages it reads. Standard search keeps a result that has ANY of the phrases |
| exclude_text | array | Short phrases none of which may appear in the returned text (as for include_text). Up to 5. |
| max_chars_per_result | integer | The most characters of passage text one result carries (passages are cut in order; the snippet is capped too). Default: no cap (index excerpts, up to about 4,500 a result). On deployments that read pa |
| max_chars_total | integer | The most characters of passage text in the whole response, spent in rank order; a result past it keeps its URL and title with no passages. |
JSON Schema
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"$id": "https://artifacts.apis.io/hyperresearch-ai/json-schema/hyperresearch-ai-answer-search-body-schema.json",
"title": "AnswerSearchBody",
"x-generated": "2026-11-12",
"x-method": "derived",
"x-generator": "derive-json-schema.py",
"x-source": "openapi/hyperresearch-ai-openapi.json#/components/schemas/AnswerSearchBody",
"type": "object",
"properties": {
"query": {
"type": "string",
"minLength": 1,
"maxLength": 1000
},
"max_results": {
"type": "integer",
"minimum": 1,
"maximum": 100,
"default": 10,
"description": "Results to return, 1-100 (default 10). Up to 25 at the mode price; past 25, +5¢ plus 2¢ for every started 10 results returned past 25 (100 results: +21¢)."
},
"num_results": {
"type": "integer",
"minimum": 1,
"maximum": 100,
"description": "Another name for `max_results` (wins when both are sent)."
},
"mode": {
"type": "string",
"enum": [
"standard",
"max"
],
"default": "standard",
"description": "standard 5¢ (web indexes and structured sources; results carry excerpts from the indexes, and on deployments that read pages a table, history or long-text request also gets matching rows read from the top pages; ~10-20 s) · max 15¢ (every provider, PDF tables; ~20-45 s) per call. A search that fails is free; one that completes with no results is free unless it was expensive to run (then 1.5x our cost, at most the mode price)."
},
"objective": {
"type": "string",
"maxLength": 2000,
"description": "Optional. Your agent's overall task, in a sentence or two (what the query is a step toward). Used on deployments with adaptive search to choose follow-up queries, ignored otherwise; never sent to a search index as typed. Up to 2,000 characters."
},
"include_domains": {
"type": "array",
"items": {
"type": "string",
"maxLength": 253
},
"maxItems": 50,
"description": "Only sources on these domains (and their subdomains), e.g. `[\"sec.gov\", \"nature.com\"]`. A scheme and any path are ignored; a leading `www.` is kept as written (send `example.com` for the whole site). A bare suffix such as `.gov` is refused. Up to 50."
},
"exclude_domains": {
"type": "array",
"items": {
"type": "string",
"maxLength": 253
},
"maxItems": 50,
"description": "Never sources on these domains (or their subdomains). Up to 50."
},
"start_published_date": {
"type": "string",
"maxLength": 40,
"description": "Only sources published on or after this ISO 8601 date (`2026-01-01`) or date-time. With a date filter set, a source with no known published date is left out."
},
"end_published_date": {
"type": "string",
"maxLength": 40,
"description": "Only sources published on or before this ISO 8601 date or date-time (a date covers that whole day, UTC). With a date filter set, a source with no known published date is left out."
},
"include_text": {
"type": "array",
"items": {
"type": "string",
"maxLength": 100
},
"maxItems": 5,
"description": "Short phrases looked for (case-insensitive) in the returned text: on search a result's title, snippet or passages; on ask the pages it reads. Standard search keeps a result that has ANY of the phrases, and treats dash and quote variants as the same character; max search and ask need ALL of them. Up to 5 phrases of at most 100 characters."
},
"exclude_text": {
"type": "array",
"items": {
"type": "string",
"maxLength": 100
},
"maxItems": 5,
"description": "Short phrases none of which may appear in the returned text (as for include_text). Up to 5."
},
"max_chars_per_result": {
"type": "integer",
"minimum": 1,
"maximum": 100000,
"description": "The most characters of passage text one result carries (passages are cut in order; the snippet is capped too). Default: no cap (index excerpts, up to about 4,500 a result). On deployments that read pages, a value above 4,500 or a table or history query adds the matching rows read from the top pages, up to this cap (about 12,000 a result when unset)."
},
"max_chars_total": {
"type": "integer",
"minimum": 1,
"maximum": 1000000,
"description": "The most characters of passage text in the whole response, spent in rank order; a result past it keeps its URL and title with no passages."
}
},
"required": [
"query"
]
}
Work with this as data
Every JSON Schema here is available over the APIs.io API and to AI agents over MCP.
MCP server
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
Tools for schemas
4 MCP tools reach this
find_json_schemasBrowse and filter every JSON Schema in the catalog.apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.resolveTurn a domain, URL or GitHub org into the provider it belongs to.find_cohortsEvery scored population of providers in the catalog.
Call it yourself
curl for this page
This JSON Schema
curl "https://apis.io/api/v1/json-schemas/hyperresearch-ai-answer-search-body"
All schemas
curl "https://apis.io/api/v1/json-schemas?limit=25"
Calls without X-API-Key need no key. Calls with it need a paid plan — get a key.
Get an API key
Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.
A second provider on the same verified email joins the account you already have.