Space Frontiers · Schema
SearchRequestV2
ResearchScholarly SearchFull-Text SearchRetrievalRAGPatentsDocumentsOCRDocument RecognitionMCPA2AAgent-NativeAI AgentsDataSearch
Properties
| Name | Type | Description |
|---|---|---|
| candidate_ranking | object | Candidate selection before the cross-encoder. Formula requires an explicit model or an artifact configured for the query's ranking profile. |
| combiner | string | Multi-query score combiner. |
| combiner_decay | number | Rank decay applied by the combiner. |
| combiner_temperature | number | Temperature for the weighted combiner. |
| combiner_top_k | integer | Number of sub-query ranks considered by the combiner. |
| cross_rerank | boolean | Final-stage hosted cross-encoder reranker. On by default; pass `false` to skip it. No-op unless the reranker is configured (`reranker.enabled`). Runs after Summa candidate selection. |
| cross_rerank_candidates | integer | Override the number of candidates retrieved and reranked (0 = config default). Capped at `MAX_CROSS_RERANK_POOL`. |
| deduplicate | boolean | Collapse duplicate documents. |
| filter_issns | arraynull | Restrict results to ISSNs. |
| filter_issued_after | integernull | Earliest issue time as a Unix timestamp. |
| filter_issued_before | integernull | Latest issue time as a Unix timestamp. |
| filter_languages | arraynull | Restrict results to ISO language codes. |
| filter_publisher | stringnull | Restrict results to a publisher. |
| filter_types | arraynull | Restrict results to document types. |
| filter_uri_prefixes | arraynull | Restrict results to canonical URI prefixes. |
| fulltext_phrase_boost | numbernull | Extra weight for exact phrase matches inside the BM25 branch (default 1.0). Zero disables the bonus while keeping quoted phrase constraints. |
| fulltext_weight | numbernull | Weight of the stemmed BM25 (full-text) channel in hybrid fusion; `0` disables it. Omit for the service default (1.0). Takes effect only on indexes whose schema carries the text fields. |
| heap_factor | numbernull | Summa candidate heap multiplier. |
| include_candidate_scores | boolean | Include raw document/passage features for formula-ranked returned hits. Training collection uses the separate complete-union export path. |
| include_rrf_scores | boolean | Include exact organic RRF votes alongside fusion results. |
| index_names | array | Logical indexes to search. Public values are `documents` and `social`. |
| l1 | object | |
| l2_rerank | object | Search API CatBoost selection before the cross-encoder. Auto activates a configured profile; off is the control. Catboost requires a model. |
| limit | integer | Maximum number of hits to return. |
| max_query_dims | integer | Maximum number of reformulated query dimensions; zero uses the service default. |
| mode | object | |
| offset | integer | Result offset. `offset + limit` cannot exceed 500. |
| possible_languages | arraynull | Language hints used by query processing. |
| pruning | numbernull | Optional sparse-vector pruning threshold. |
| query | string | Natural-language query (at most 16 KiB UTF-8). Wrap a span in double quotes (`"float-zero determinants"`) to require ordered indexed tokens. Straight, curly and guillemet pairs work; all quoted spans |
| ranking_mode | object | |
| referenced_by_uri | object | |
| return_documents | boolean | Include enriched document metadata and query-matched snippets. Set to false for bulk ranking jobs that only need document IDs and scores. |
| rrf_k | numbernull | RRF smoothing constant for hybrid fusion. Omit for the service default (60, the original-paper value); smaller values weight top-ranked results more aggressively. |
| tracing | boolean | Return bounded per-shard and per-vertical execution traces. |
| weight_threshold | number | Minimum generated sub-query weight. |
JSON Schema
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"$id": "https://raw.githubusercontent.com/api-evangelist/machinelibrary-ai/main/json-schema/machinelibrary-ai-search-request-v2-schema.json",
"title": "SearchRequestV2",
"x-generated": "2026-09-28",
"x-method": "derived",
"x-generator": "derive-json-schema.py",
"x-source": "openapi/machinelibrary-ai-conversations-api-openapi.json#/components/schemas/SearchRequestV2",
"additionalProperties": false,
"properties": {
"candidate_ranking": {
"$ref": "#/$defs/CandidateRanking",
"description": "Candidate selection before the cross-encoder. Formula requires an\nexplicit model or an artifact configured for the query's ranking profile."
},
"combiner": {
"default": "log_sum_exp",
"description": "Multi-query score combiner.",
"type": "string"
},
"combiner_decay": {
"default": 0.699999988079071,
"description": "Rank decay applied by the combiner.",
"format": "float",
"type": "number"
},
"combiner_temperature": {
"default": 1.5,
"description": "Temperature for the weighted combiner.",
"format": "float",
"type": "number"
},
"combiner_top_k": {
"default": 3,
"description": "Number of sub-query ranks considered by the combiner.",
"format": "int32",
"minimum": 0,
"type": "integer"
},
"cross_rerank": {
"default": true,
"description": "Final-stage hosted cross-encoder reranker. On by default; pass `false`\nto skip it. No-op unless the reranker is configured\n(`reranker.enabled`). Runs after Summa candidate selection.",
"type": "boolean"
},
"cross_rerank_candidates": {
"default": 0,
"description": "Override the number of candidates retrieved and reranked (0 = config\ndefault). Capped at `MAX_CROSS_RERANK_POOL`.",
"format": "int32",
"maximum": 256,
"minimum": 0,
"type": "integer"
},
"deduplicate": {
"default": true,
"description": "Collapse duplicate documents.",
"type": "boolean"
},
"filter_issns": {
"description": "Restrict results to ISSNs.",
"items": {
"type": "string"
},
"type": [
"array",
"null"
]
},
"filter_issued_after": {
"description": "Earliest issue time as a Unix timestamp.",
"format": "int64",
"type": [
"integer",
"null"
]
},
"filter_issued_before": {
"description": "Latest issue time as a Unix timestamp.",
"format": "int64",
"type": [
"integer",
"null"
]
},
"filter_languages": {
"description": "Restrict results to ISO language codes.",
"items": {
"type": "string"
},
"type": [
"array",
"null"
]
},
"filter_publisher": {
"description": "Restrict results to a publisher.",
"type": [
"string",
"null"
]
},
"filter_types": {
"description": "Restrict results to document types.",
"items": {
"type": "string"
},
"type": [
"array",
"null"
]
},
"filter_uri_prefixes": {
"description": "Restrict results to canonical URI prefixes.",
"items": {
"type": "string"
},
"type": [
"array",
"null"
]
},
"fulltext_phrase_boost": {
"description": "Extra weight for exact phrase matches inside the BM25 branch (default\n1.0). Zero disables the bonus while keeping quoted phrase constraints.",
"format": "float",
"maximum": 10,
"minimum": 0,
"type": [
"number",
"null"
]
},
"fulltext_weight": {
"description": "Weight of the stemmed BM25 (full-text) channel in hybrid fusion; `0`\ndisables it. Omit for the service default (1.0). Takes effect only on\nindexes whose schema carries the text fields.",
"format": "float",
"maximum": 10,
"minimum": 0,
"type": [
"number",
"null"
]
},
"heap_factor": {
"default": 0.8500000238418579,
"description": "Summa candidate heap multiplier.",
"format": "float",
"type": [
"number",
"null"
]
},
"include_candidate_scores": {
"description": "Include raw document/passage features for formula-ranked returned hits.\nTraining collection uses the separate complete-union export path.",
"type": "boolean"
},
"include_rrf_scores": {
"description": "Include exact organic RRF votes alongside fusion results.",
"type": "boolean"
},
"index_names": {
"default": [
"documents"
],
"description": "Logical indexes to search. Public values are `documents` and `social`.",
"items": {
"type": "string"
},
"maxItems": 8,
"minItems": 1,
"type": "array"
},
"l1": {
"oneOf": [
{
"type": "null"
},
{
"$ref": "#/$defs/FormulaRanking",
"description": "Symbolic formula over named raw scores and organic `rrf`.\nMissing raw cells use defaults; references to absent branches fail validation."
}
]
},
"l2_rerank": {
"$ref": "#/$defs/L2Rerank",
"description": "Search API CatBoost selection before the cross-encoder. Auto activates\na configured profile; off is the control. Catboost requires a model."
},
"limit": {
"default": 10,
"description": "Maximum number of hits to return.",
"format": "int32",
"maximum": 500,
"minimum": 1,
"type": "integer"
},
"max_query_dims": {
"default": 0,
"description": "Maximum number of reformulated query dimensions; zero uses the service default.",
"format": "int32",
"minimum": 0,
"type": "integer"
},
"mode": {
"default": "hybrid",
"oneOf": [
{
"$ref": "#/$defs/SearchMode",
"description": "Retrieval strategy. Hybrid combines lexical and semantic retrieval."
}
]
},
"offset": {
"default": 0,
"description": "Result offset. `offset + limit` cannot exceed 500.",
"format": "int32",
"maximum": 499,
"minimum": 0,
"type": "integer"
},
"possible_languages": {
"description": "Language hints used by query processing.",
"items": {
"type": "string"
},
"type": [
"array",
"null"
]
},
"pruning": {
"description": "Optional sparse-vector pruning threshold.",
"format": "float",
"type": [
"number",
"null"
]
},
"query": {
"default": "",
"description": "Natural-language query (at most 16 KiB UTF-8). Wrap a span in double\nquotes (`\"float-zero determinants\"`) to require ordered indexed tokens.\nStraight, curly and guillemet pairs work; all quoted spans are required\nand receive a lexical score bonus. Tokenizer normalization still applies.\nUnquoted words guide relevance; use structured parameters for filters.\nQuoted identifiers are text constraints, not direct lookup requests.\nAn empty query can be combined with filters.",
"type": "string"
},
"ranking_mode": {
"default": "auto",
"oneOf": [
{
"$ref": "#/$defs/RankingMode",
"description": "Relevance objective: passages ranks answer-bearing passages and their\ndocument groups; documents ranks sources for researching the topic.\nAuto resolves intent to one of those two objectives. The response reports\nthe resolved mode. Corpus selection is independent."
}
]
},
"referenced_by_uri": {
"oneOf": [
{
"type": "null"
},
{
"$ref": "#/$defs/ReferencedBy",
"description": "Return documents that cite this work: one `doi://`/`arxiv://` URI or\na list of up to 16 identifiers of the same work."
}
]
},
"return_documents": {
"default": true,
"description": "Include enriched document metadata and query-matched snippets. Set to\nfalse for bulk ranking jobs that only need document IDs and scores.",
"type": "boolean"
},
"rrf_k": {
"description": "RRF smoothing constant for hybrid fusion. Omit for the service\ndefault (60, the original-paper value); smaller values weight\ntop-ranked results more aggressively.",
"format": "float",
"type": [
"number",
"null"
]
},
"tracing": {
"description": "Return bounded per-shard and per-vertical execution traces.",
"type": "boolean"
},
"weight_threshold": {
"default": 0,
"description": "Minimum generated sub-query weight.",
"format": "float",
"type": "number"
}
},
"type": "object",
"$defs": {
"CandidateRanking": {
"enum": [
"auto",
"rrf",
"formula"
],
"type": "string"
},
"FormulaRanking": {
"additionalProperties": false,
"properties": {
"backfill": {
"description": "Preserve organic scores and probe only missing cells when enabled.",
"type": "boolean"
},
"formula": {
"description": "Summa symbolic expression over named raw branch scores and organic `rrf`.",
"type": "string"
},
"missing_values": {
"additionalProperties": {
"format": "double",
"type": "number"
},
"description": "Finite raw defaults for absent formula variables. Observed zero wins.",
"propertyNames": {
"type": "string"
},
"type": "object"
}
},
"required": [
"formula"
],
"type": "object"
},
"L2Rerank": {
"enum": [
"auto",
"off",
"catboost"
],
"type": "string"
},
"RankingMode": {
"description": "Relevance objective, independent of corpus and lexical/vector retrieval.\nResults remain document groups for both objectives.",
"enum": [
"auto",
"documents",
"passages"
],
"type": "string"
},
"ReferencedBy": {
"description": "One identifier or several identifiers of the same cited work.",
"oneOf": [
{
"type": "string"
},
{
"items": {
"type": "string"
},
"type": "array"
}
]
},
"SearchMode": {
"enum": [
"sparse",
"short_document",
"binary",
"hybrid",
"fulltext"
],
"type": "string"
}
}
}
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/machinelibrary-ai-search-request-v2"
All schemas
curl "https://apis.io/api/v1/json-schemas?limit=25"
Discovery needs no key. Ratings and market analysis are Pro.
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.