Felo API PlatformFelo API Platform

Data API / DataForSEO / AI Optimization

Setting ‘LLM Responses Gemini’ Tasks

Queues a Gemini prompt instead of waiting, returning a task id. Wrapped in DataForSEO's envelope: data in tasks[0].result, outcome in tasks[0].status_code - a rejected request still returns HTTP 200. Check task_post_supported in get_dataforseo_ai_gemini_llm_responses_models, and retrieve with get_dataforseo_ai_gemini_llm_responses_fetch.

Parameters

No path, query, or header parameters.

Request body

  • user_promptstringRequired

    prompt 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_namestringRequired

    name 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_tokensintegerOptional

    maximum 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

  • temperaturenumberOptional

    randomness 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_pnumberOptional

    diversity 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_searchbooleanOptional

    enable 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_messagestringOptional

    instructions 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[]Optional

    conversation 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?"}]

  • rolestringRequired

    Allowed values: user · ai

  • messagestringRequired
  • use_reasoningbooleanOptional

    enable 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

  • tagstringOptional

    user-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

  • postback_urlstringOptional

    URL for sending task results optional field once the task is completed, we will send a POST request with its results compressed in the gzip format to the postback_url you specified you can use the ‘$id’ string as a $id variable and ‘$tag’ as urlencoded $tag variable. We will set the necessary values before sending the request. example: http://your-server.com/postbackscript?id=$id http://your-server.com/postbackscript?id=$id&tag=$tag Note: special character in postback_url will be urlencoded; i.a., the # character will be encoded into %23learn more on our Help Center

  • pingback_urlstringOptional

    notification URL of a completed task optional field when a task is completed we will notify you by GET request sent to the URL you have specified you can use the ‘$id’ string as a $id variable and ‘$tag’ as urlencoded $tag variable. We will set the necessary values before sending the request example: http://your-server.com/pingscript?id=$id http://your-server.com/pingscript?id=$id&tag=$tag Note: special character in pingback_url will be urlencoded; i.a., the # character will be encoded into %23learn more on our Help Center

Example request

curl -X POST "https://openapi.felo.ai/v1/beta/dataforseo/ai_optimization/gemini/llm_responses/task_post" \
  -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

  • versionstringOptional

    the current version of the API

  • status_codeintegerOptional

    general 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_messagestringOptional

    general informational message you can find the full list of general informational messages here

  • timestringOptional

    execution time, seconds

  • costnumberOptional

    total tasks cost, USD

  • tasks_countintegerOptional

    the number of tasks in the tasksarray

  • tasks_errorintegerOptional

    the number of tasks in the tasks array returned with an error

  • tasksstring[]Optional

    array of tasks

  • idstringOptional

    unique task identifier in our system unique task identifier in the UUID format

  • status_codeintegerOptional

    status code of the task generated by DataForSEO; can be within the following range: 10000-60000 you can find the full list of response codes here

  • status_messagestringOptional

    informational message of the task you can find the full list of general informational messages here

  • timestringOptional

    execution time, seconds

  • costnumberOptional

    cost of the task, USD

  • result_countintegerOptional

    number of elements in the result array

  • pathstring[]Optional

    URL path

  • dataobjectOptional

    contains the same parameters that you specified in the POST request

  • resultstring[]Optional

    array of results in this case, the value will be null