Smart search combining web and academic results
Scholar Search
Scholarly and web search with result explanations.
Smart search combining web and academic results
Search the web and academic sources together, for questions that straddle both. ⚠️ Parameters go in the query string: query (required), max_num_results, as_ylo/as_yhi. Returns a search id and results[]; the entry shape varies by source — every result has title, link and snippet, and academic ones additionally carry authors and number_of_citations, so treat those two as optional rather than assuming they are there. Use it when you do not know in advance which kind of source will answer. When you do, post_scholar_search_web or post_scholar_search_scholar is more predictable. Keep the id for post_scholar_search_explain.
- Type: stringqueryrequired
Search query for scholarly materials
- Type: integermax
_num _results min:1max:100Maximum number of search results to return, up to 100
- Type: integeras
_ylo min:1900max:2030nullableYear of publication lower bound
- Type: integeras
_yhi min:1900max:2030nullableYear of publication upper bound
- Type: object · SmartSearchResponse200
Successful search response
- Type: stringidrequired
Unique identifier for the search request
- Type: array object[] · SmartResult[]resultsrequired
List of smart search results combining web and academic content
- linkType: string Format: urirequired
URL to access the content
- snippetType: stringrequired
Brief summary or abstract
- titleType: stringrequired
Title of the result
- authorsType: array string[]
List of authors (for academic content)
- numberType: integer
_of _citations min:0Number of citations (for academic content)
- relevanceType: number
_score min:0max:1Relevance score of the result
- typeType: string enum
Type of the result
values- web
- academic
- Type: string enumsearch
_type Type of search results included
values- web
- academic
- hybrid
application/json - Type: object · ErrorResponse400
Bad request - invalid parameters
- Type: stringerror
A short error message.
- Type: stringmessage
A more detailed error message.
application/json - Type: object · ErrorResponse401
Unauthorized - invalid or missing API key
- Type: stringerror
A short error message.
- Type: stringmessage
A more detailed error message.
application/json - 402
The request cannot proceed because a billing requirement is not met.
- 403
The account is not permitted to perform this operation.
- Type: object · ErrorResponse429
Rate limit exceeded
- Type: stringerror
A short error message.
- Type: stringmessage
A more detailed error message.
application/json - Type: object · ErrorResponse500
Internal server error
- Type: stringerror
A short error message.
- Type: stringmessage
A more detailed error message.
application/json - 502
The service could not complete the request.
- 503
The API or billing service is temporarily unavailable.
- 504
The service timed out while processing the request.
- default
The operation failed. Keep the response request ID when contacting Felo support.
curl 'https://openapi.felo.ai/v1/beta/scholar/search/mixed?query=machine%20learning' \
--request POST \
--header 'Authorization: Bearer YOUR_SECRET_TOKEN'
{
"id": "string",
"results": [
{
"title": "string",
"link": "https://example.com",
"snippet": "string",
"authors": [
"string"
],
"number_of_citations": 0,
"type": "web",
"relevance_score": 0
}
],
"search_type": "web"
}