Data API / DataForSEO / AI Optimization
Live Gemini LLM Responses
Sends a user_prompt to a Gemini model and returns its reply, synchronously. model_name must come from get_dataforseo_ai_gemini_llm_responses_models. system_message is accepted here, unlike on the Claude and ChatGPT live endpoints. Returns model_name, input_tokens, output_tokens, reasoning_tokens, web_search, money_spent, datetime, items and fan_out_queries. Read money_spent on the response to see what a prompt actually cost. Wrapped in DataForSEO's envelope: data in tasks[0].result, outcome in tasks[0].status_code - a rejected request still returns HTTP 200.
Parameters
No path, query, or header parameters.
Request body
user_promptstringRequiredprompt for the AI model required field the question or task you want to send to the AI model; you can specify up to 500 characters in the user_prompt field
model_namestringRequiredname of the AI model required field model_nameconsists of the actual model name and version name; if the basic model name is specified, its latest version will be set by default; for example, if gemini-1.5-pro is specified, the gemini-1.5-pro-002 will be set as model_name automatically; you can receive the list of available LLM models by making a separate request to the https://api.dataforseo.com/v3/ai_optimization/gemini/llm_responses/models
max_output_tokensintegerOptionalmaximum number of tokens in the AI response optional field minimum value: 1 maximum value: 4096; default value: 2048; Note: if web_search is set to true or the reasoning model is specified in the request, the output token count may exceed the specified max_output_tokens limit Note #2: if use_reasoning is set to true, the minimum value for max_output_tokens is 1024
temperaturenumberOptionalrandomness of the AI response optional field higher values make output more diverse lower values make output more focused minimum value: 0 maximum value: 2 default value: 1.3
top_pnumberOptionaldiversity of the AI response optional field controls diversity of the response by limiting token selection minimum value: 0 maximum value: 1 default value: 0.9
web_searchbooleanOptionalenable web search for current information optional field when enabled, the AI model can access and cite current web information; Note: refer to the Models endpoint for a list of models that support web_search; default value: false; The cost of the parameter can be calculated on the Pricing page
system_messagestringOptionalinstructions for the AI behavior optional field defines the AI's role, tone, or specific behavior you can specify up to 500 characters in the system_message field
message_chainobject[]Optionalconversation history optional field array of message objects representing previous conversation turns; each object must contain role and message parameters: role string with either user or ai role; message string with message content (max 500 characters); you can specify the maximum of 10 message objects in the array; example: "message_chain": [{"role":"user","message":"Hello, what’s up?"},{"role":"ai","message":"Hello! I’m doing well, thank you. How can I assist you today?"}]
rolestringRequiredAllowed values: user · ai
messagestringRequireduse_reasoningbooleanOptionalenable reasoning for the AI model optional field when enabled, the model will perform reasoning before generating a response refer to the Models endpoint for a list of models that support reasoning default value: false Note: if set to true, the minimum value for max_output_tokens is 1024 Note #2: for Gemini Pro models, the use_reasoning will automatically be set to true
tagstringOptionaluser-defined task identifier optional field the character limit is 255 you can use this parameter to identify the task and match it with the result you will find the specified tag value in the data object of the response
Example request
curl -X POST "https://openapi.felo.ai/v1/beta/dataforseo/ai_optimization/gemini/llm_responses/live" \
-H "Authorization: Bearer $FELO_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"user_prompt": "<string>",
"model_name": "<string>",
"max_output_tokens": 0,
"temperature": 0,
"top_p": 0,
"web_search": false,
"system_message": "<string>",
"message_chain": [
{}
]
}'Response
Response fields
versionstringOptionalthe current version of the API
status_codeintegerOptionalgeneral status code you can find the full list of the response codes here Note: we strongly recommend designing a necessary system for handling related exceptional or error conditions
status_messagestringOptionalgeneral informational message you can find the full list of general informational messages here
timestringOptionalexecution time, seconds
costnumberOptionaltotal tasks cost, USD
tasks_countintegerOptionalthe number of tasks in the tasks array
tasks_errorintegerOptionalthe number of tasks in the tasks array returned with an error
tasksstring[]Optionalarray of tasks
idstringOptionaltask identifier unique task identifier in our system in the UUID format
status_codeintegerOptionalstatus code of the task generated by DataForSEO; can be within the following range: 10000-60000 you can find the full list of the response codes here
status_messagestringOptionalinformational message of the task you can find the full list of general informational messages here
timestringOptionalexecution time, seconds
costnumberOptionalcost of the task, USD includes the base task price plus the money_spent value
result_countintegerOptionalnumber of elements in the result array
pathstring[]OptionalURL path
dataobjectOptionalcontains the same parameters that you specified in the POST request
resultstring[]Optionalarray of results
model_namestringOptionalname of the AI model used
input_tokensintegerOptionalnumber of tokens in the input total count of tokens processed
output_tokensintegerOptionalnumber of tokens in the output total count of tokens generated in the AI response
reasoning_tokensintegerOptionalnumber of reasoning tokens total count of tokens used to generate reasoning content
web_searchbooleanOptionalindicates if web search was used
money_spentnumberOptionalcost of AI tokens, USD the price charged by the third-party AI model provider for according to its Pricing
datetimestringOptionaldate and time when the result was received in the UTC format: “yyyy-mm-dd hh-mm-ss +00:00” example: 2019-11-15 12:57:46 +00:00
itemsstring[]Optionalarray of response items contains structured AI response data
reasoningobjectOptionalelement in the response
typestringOptionaltype of the element = 'reasoning' Note: this element is supported only in reasoning models and is not guaranteed to be returned
sectionsstring[]Optionalreasoning chain sections array of objects containing the reasoning chain sections generated by the LLM
typestringOptionaltype of element='summary_text'
textstringOptionaltext of the reasoning chain section text of the reasoning chain section summarizing the model's thought process
messageobjectOptionalelement in the response
typestringOptionaltype of the element = 'message'
sectionsstring[]Optionalarray of content sections contains different parts of the AI response
typestringOptionaltype of element='text'
textstringOptionalAI-generated text content
annotationsstring[]Optionalarray of references used to generate the response equals null if the web_search parameter is not set to true Note: annotations may return empty even when web_search is true, as the AI will attempt to retrieve web information but may not find relevant results
titlestringOptionalthe domain name or title of the quoted source
urlstringOptionalredirect URL to the quoted source contains a Vertex AI redirect that leads to the original source
fan_out_queriesstring[]Optionalarray of fan-out queries contains related search queries derived from the main query to provide a more comprehensive response