Oxylabs
AI-assisted web search.
Query an AI answer engine for GEO/AEO visibility.
Synchronous passthrough to the upstream Oxylabs Realtime endpoint (POST /v1/queries). Pick an AI answer engine with source and send the parameters that source expects; the request body is passed through unchanged. The response returns the AI-generated answer text and the cited source URLs, letting you track how a brand or product is surfaced and cited across AI answers. AI sources (chatgpt, gemini, perplexity) take ~40–60s and Google-type sources ~4–8s, so use a client timeout of at least 90s.
Passthrough body. source selects the AI answer engine; the remaining fields are the parameters that source expects (see per-source notes on each property). Additional upstream parameters are passed through as-is.
- 类型: string 枚举source必填
The AI answer engine to query.
google_searchreturns Google AI Overviews. Each source expects a specific subset of the parameters below.值- chatgpt
- gemini
- perplexity
- google
_search - google
_ai _mode
- 类型: stringgeo
_location Country-level geo-location for the query, e.g. "United States".
- 类型: booleanparse
Return structured, parsed results instead of raw output. Recommended for every source.
- 类型: stringprompt
The natural-language prompt. Used by
chatgpt(max 4000 chars),gemini(max 8000 chars), andperplexity. Usequeryinstead for the Google-type sources. - 类型: stringquery
The search query. Used by
google_searchandgoogle_ai_mode. Usepromptinstead for chatgpt/gemini/perplexity. - 枚举render常量:html
For
google_searchandgoogle_ai_mode, set to "html" to render the page before parsing.值- html
- 类型: booleansearch
For
chatgpt, set to true to have ChatGPT browse the web before answering. - 类型: anythingproperty
Name
- 类型: object200
Query completed successfully.
results[]holds one result per query. The parsed shape insidecontentvaries by source (see property descriptions); the example below shows thegoogle_search(Google AI Overviews) shape.- 类型: array object[]results
One entry per query. A Realtime single query returns exactly one result, which is the billed unit.
- content类型: object
Parsed answer payload. The structure varies by source:
google_search→content.results.ai_overviews[]withanswer_textandreferences[]{source, url}(shown below).chatgpt/gemini→response_textpluscitations[].perplexity→top_sources[]/sources_results[].google_ai_mode→content.citations[]{text, urls[]}.
- results类型: object
Google-type parsed results container.
- ai类型: array object[]
_overviews Google AI Overviews returned for the query.
- answer类型: array object[]
_text The AI-generated answer, split into fragments that may carry inline references.
- fragments类型: array object[]
- references类型: array
- references类型: array object[]
Cited sources for this overview.
- source类型: string
- url类型: string
application/json - 400
The request could not be processed. Check the request parameters.
- 401
A valid Felo API key is required.
- 402
The request cannot proceed because a billing requirement is not met.
- 403
The account is not permitted to perform this operation.
- 429
A request or spending limit has been reached.
- 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/oxylabs/ai-search \
--request POST \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer YOUR_SECRET_TOKEN' \
--data '{
"source": "google_search",
"query": "best noise cancelling headphones 2026",
"parse": true,
"render": "html",
"geo_location": "United States"
}'
{
"results": [
{
"content": {
"results": {
"ai_overviews": [
{
"answer_text": [
{
"fragments": [
{
"references": "[Max Depth Exceeded]"
}
]
}
],
"references": [
{
"source": "string",
"url": "string"
}
]
}
]
}
}
}
]
}