{"id":23217,"date":"2025-11-18T14:08:57","date_gmt":"2025-11-18T14:08:57","guid":{"rendered":"https:\/\/docs.dataforseo.com\/v3\/?page_id=23217"},"modified":"2026-09-17T09:29:05","modified_gmt":"2026-09-17T09:29:05","slug":"ai_optimization-gemini-llm_responses-task_get","status":"publish","type":"page","link":"https:\/\/docs.dataforseo.com\/v3\/ai_optimization-gemini-llm_responses-task_get\/","title":{"rendered":"ai_optimization\/gemini\/llm_responses\/task_get"},"content":{"rendered":"<div class=\"wpb-content-wrapper\"><p>[vc_row][vc_column][vc_column_text]<\/p>\n<h2>Get Gemini LLM Responses Results by id<\/h2>\n<p>\u200c<br \/>\nGemini LLM Responses endpoint allows you to retrieve structured responses from a specific Gemini model, based on the input parameters.<\/p>\n<p>Tasks using the Standard method <strong>may take up to 72 hours to complete<\/strong>. If the task is not completed within this time, it is marked as failed, and the $0.01 advance is refunded. It is also important to note that if your account balance is negative, you will not receive the results even if the task is completed successfully.<\/p>\n<p>[\/vc_column_text]    <div class=\"endpoint\">\n        <img decoding=\"async\" class=\"endpoint__icon\" src=\"https:\/\/docs.dataforseo.com\/v3\/wp-content\/themes\/dataforseo\/assets\/img\/icons\/checked-circle.svg\" alt=\"checked\">\n\n                    GET            <button class=\"btn-reset button-link copy-button\" data-href=\"https:\/\/api.dataforseo.com\/v3\/ai_optimization\/gemini\/llm_responses\/task_get\/$id\">\n                https:\/\/api.dataforseo.com\/v3\/ai_optimization\/gemini\/llm_responses\/task_get\/$id                <svg width=\"16\" height=\"16\" viewBox=\"0 0 16 16\">\n                    <use href=\"https:\/\/docs.dataforseo.com\/v3\/wp-content\/themes\/dataforseo\/assets\/img\/icons\/sprite.svg#layers\"><\/use>\n                <\/svg>\n            <\/button>\n            <\/div>\n    \t<article class=\"info-card info-card--yellow\">\n\t\t<header class=\"info-card__header\">\n\t\t\t<div class=\"info-card__icon\">\n\t\t\t\t<svg width=\"16\" height=\"16\" viewBox=\"0 0 16 16\">\n\t\t\t\t\t<use href=\"https:\/\/docs.dataforseo.com\/v3\/wp-content\/themes\/dataforseo\/assets\/img\/icons\/sprite.svg#label\"><\/use>\n\t\t\t\t<\/svg>\n\t\t\t<\/div>\n\t\t\t<div class=\"info-card__title\">Pricing<\/div>\n\t\t<\/header>\n\t\t<div class=\"info-card__content\">\n\t\t\t<p> Your account will be charged only for posting a task. You can get the results of the task within the next 30 days for free.<br \/>\nThe cost can be calculated on the <a title=\"Pricing\" href=\"https:\/\/dataforseo.com\/pricing\/ai-optimization\/llm-responses\" target=\"_blank\" rel=\"noopener noreferrer\">Pricing<\/a> page.<\/p>\n\t\t<\/div>\n\t<\/article>\n\t[vc_column_text]<\/p>\n<p><strong>Description of the fields for sending a request:<\/strong><br \/>\n<div class=\"dfs-doc-container dfs-doc-request\"><table><thead><tr><th>Field name<\/th><th>Type<\/th><th>Description<\/th><\/tr><\/thead><tbody><tr data-doc-id=\"id\"><td><code>id<\/code><\/td><td>string<\/td><td><p><em>task identifier<\/em><br><strong>unique task identifier in our system in the <a href=\"https:\/\/en.wikipedia.org\/wiki\/Universally_unique_identifier\">UUID<\/a> format<\/strong><br>you will be able to use it within <strong>30 days<\/strong> to request the results of the task at any time<\/p><\/td><\/tr><\/tbody><\/table><\/div><br \/>\n\u200c<br \/>\nAs a response of the API server, you will receive <a href=\"https:\/\/en.wikipedia.org\/wiki\/JSON\">JSON<\/a>-encoded data containing a <code>tasks<\/code> array with the information specific to the set tasks.<\/p>\n<p><strong>Description of the fields in the results array:<\/strong><br \/>\n<div class=\"dfs-doc-container dfs-doc-response\"><div class=\"api-block-main\"><div class=\"api-section\"><table><thead><tr><th>Field name<\/th><th>Type<\/th><th>Description<\/th><\/tr><\/thead><tbody><tr data-doc-id=\"version\"><td><code>version<\/code><\/td><td>string<\/td><td><p><em>the current version of the API<\/em><\/p><\/td><\/tr><tr data-doc-id=\"status_code\"><td><code>status_code<\/code><\/td><td>integer<\/td><td><p><i>general status code<\/i><br>you can find the full list of the response codes <a href=\"\/v3\/appendix\/errors\">here<\/a><br><strong>Note:<\/strong> we strongly recommend designing a necessary system for handling related exceptional or error conditions<\/p><\/td><\/tr><tr data-doc-id=\"status_message\"><td><code>status_message<\/code><\/td><td>string<\/td><td><p><em>general informational message<\/em><br>you can find the full list of general informational messages <a href=\"\/v3\/appendix\/errors\">here<\/a><\/p><\/td><\/tr><tr data-doc-id=\"time\"><td><code>time<\/code><\/td><td>string<\/td><td><p><em>execution time, seconds<\/em><\/p><\/td><\/tr><tr data-doc-id=\"cost\"><td><code>cost<\/code><\/td><td>float<\/td><td><p><em>total tasks cost, USD<\/em><\/p><\/td><\/tr><tr data-doc-id=\"tasks_count\"><td><code>tasks_count<\/code><\/td><td>integer<\/td><td><p><em>the number of tasks in the <strong><code>tasks<\/code><\/strong> array<\/em><\/p><\/td><\/tr><tr data-doc-id=\"tasks_error\"><td><code>tasks_error<\/code><\/td><td>integer<\/td><td><p><em>the number of tasks in the <strong><code>tasks<\/code><\/strong> array returned with an error<\/em><\/p><\/td><\/tr><tr data-doc-id=\"tasks\"><td><strong><code>tasks<\/code><\/strong><\/td><td>array<\/td><td><p><em>array of tasks<\/em><\/p><\/td><\/tr><tr data-doc-id=\"tasks-id\"><td>&nbsp;&nbsp;&nbsp;&nbsp;<code>id<\/code><\/td><td>string<\/td><td><p><em>task identifier<\/em><br><strong>unique task identifier in our system in the <a href=\"https:\/\/en.wikipedia.org\/wiki\/Universally_unique_identifier\">UUID<\/a> format<\/strong><\/p><\/td><\/tr><tr data-doc-id=\"tasks-status_code\"><td>&nbsp;&nbsp;&nbsp;&nbsp;<code>status_code<\/code><\/td><td>integer<\/td><td><p><em>status code of the task<\/em><br>generated by DataForSEO; can be within the following range: 10000-60000<br>you can find the full list of the response codes <a href=\"\/v3\/appendix\/errors\">here<\/a><\/p><\/td><\/tr><tr data-doc-id=\"tasks-status_message\"><td>&nbsp;&nbsp;&nbsp;&nbsp;<code>status_message<\/code><\/td><td>string<\/td><td><p><em>informational message of the task<\/em><br>you can find the full list of general informational messages <a href=\"\/v3\/appendix\/errors\">here<\/a><\/p><\/td><\/tr><tr data-doc-id=\"tasks-time\"><td>&nbsp;&nbsp;&nbsp;&nbsp;<code>time<\/code><\/td><td>string<\/td><td><p><em>execution time, seconds<\/em><\/p><\/td><\/tr><tr data-doc-id=\"tasks-cost\"><td>&nbsp;&nbsp;&nbsp;&nbsp;<code>cost<\/code><\/td><td>float<\/td><td><p><em>cost of the task, USD<\/em><br>includes the base task price plus the <code>money_spent<\/code> value<\/p><\/td><\/tr><tr data-doc-id=\"tasks-result_count\"><td>&nbsp;&nbsp;&nbsp;&nbsp;<code>result_count<\/code><\/td><td>integer<\/td><td><p><em>number of elements in the <code>result<\/code> array<\/em><\/p><\/td><\/tr><tr data-doc-id=\"tasks-path\"><td>&nbsp;&nbsp;&nbsp;&nbsp;<code>path<\/code><\/td><td>array<\/td><td><p><em>URL path<\/em><\/p><\/td><\/tr><tr data-doc-id=\"tasks-data\"><td>&nbsp;&nbsp;&nbsp;&nbsp;<code>data<\/code><\/td><td>object<\/td><td><p><em>contains the same parameters that you specified in the POST request<\/em><\/p><\/td><\/tr><tr data-doc-id=\"tasks-result\"><td>&nbsp;&nbsp;&nbsp;&nbsp;<strong><code>result<\/code><\/strong><\/td><td>array<\/td><td><p><em>array of results<\/em><\/p><\/td><\/tr><tr data-doc-id=\"tasks-result-model_name\"><td>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<code>model_name<\/code><\/td><td>string<\/td><td><p><em>name of the AI model used<\/em><\/p><\/td><\/tr><tr data-doc-id=\"tasks-result-input_tokens\"><td>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<code>input_tokens<\/code><\/td><td>integer<\/td><td><p><em>number of tokens in the input<\/em><br>total count of tokens processed<\/p><\/td><\/tr><tr data-doc-id=\"tasks-result-output_tokens\"><td>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<code>output_tokens<\/code><\/td><td>integer<\/td><td><p><em>number of tokens in the output<\/em><br>total count of tokens generated in the AI response<\/p><\/td><\/tr><tr data-doc-id=\"tasks-result-reasoning_tokens\"><td>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<code>reasoning_tokens<\/code><\/td><td>integer<\/td><td><p><em>number of reasoning tokens<\/em><br>total count of tokens used to generate reasoning content<\/p><\/td><\/tr><tr data-doc-id=\"tasks-result-web_search\"><td>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<code>web_search<\/code><\/td><td>boolean<\/td><td><p><em>indicates if web search was used<\/em><\/p><\/td><\/tr><tr data-doc-id=\"tasks-result-money_spent\"><td>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<code>money_spent<\/code><\/td><td>float<\/td><td><p><em>cost of AI tokens, USD<\/em><br>the price charged by the third-party AI model provider for according to its <a href=\"https:\/\/platform.openai.com\/docs\/pricing\" target=\"_blank\">Pricing<\/a><\/p><\/td><\/tr><tr data-doc-id=\"tasks-result-datetime\"><td>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<code>datetime<\/code><\/td><td>string<\/td><td><p><em>date and time when the result was received<\/em><br>in the UTC format: \u201cyyyy-mm-dd hh-mm-ss +00:00\u201d<br>example:<br><code class=\"long-string\">2019-11-15 12:57:46 +00:00<\/code><\/p><\/td><\/tr><tr data-doc-id=\"tasks-result-items\"><td>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<code>items<\/code><\/td><td>array<\/td><td><p><em>array of response items<\/em><br>contains structured AI response data<\/p><\/td><\/tr><tr data-doc-id=\"tasks-result-items\"><td>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<strong><code>items<\/code><\/strong><\/td><td>array<\/td><td><p><em>array of response items<\/em><br>contains structured AI response data<\/p><\/td><\/tr><tr data-doc-id=\"tasks-result-items-type:reasoning\"><td>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<strong><code>reasoning<\/code><\/strong><\/td><td>object<\/td><td><p><em>element in the response<\/em><\/p><\/td><\/tr><tr data-doc-id=\"tasks-result-items-type:reasoning-type\"><td>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<code>type<\/code><\/td><td>string<\/td><td><p><em>type of the element = <strong>'reasoning'<\/strong><\/em><br><strong>Note:<\/strong> this element is supported only in reasoning models and is not guaranteed to be returned<\/p><\/td><\/tr><tr data-doc-id=\"tasks-result-items-type:reasoning-sections\"><td>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<strong><code>sections<\/code><\/strong><\/td><td>array<\/td><td><p><em>reasoning chain sections<\/em><br>array of objects containing the reasoning chain sections generated by the LLM<\/p><\/td><\/tr><tr data-doc-id=\"tasks-result-items-type:reasoning-sections-type\"><td>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<code>type<\/code><\/td><td>string<\/td><td><p><em>type of element<em>=<\/em><strong>'summary_text'<\/strong><\/em><\/p><\/td><\/tr><tr data-doc-id=\"tasks-result-items-type:reasoning-sections-text\"><td>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<code>text<\/code><\/td><td>string<\/td><td><p><em>text of the reasoning chain section<\/em><br>text of the reasoning chain  section summarizing the model's thought process<\/p><\/td><\/tr><tr data-doc-id=\"tasks-result-items-type:message\"><td>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<strong><code>message<\/code><\/strong><\/td><td>object<\/td><td><p><em>element in the response<\/em><\/p><\/td><\/tr><tr data-doc-id=\"tasks-result-items-type:message-type\"><td>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<code>type<\/code><\/td><td>string<\/td><td><p><em>type of the element = <strong>'message'<\/strong><\/em><\/p><\/td><\/tr><tr data-doc-id=\"tasks-result-items-type:message-sections\"><td>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<strong><code>sections<\/code><\/strong><\/td><td>array<\/td><td><p><em>array of content sections<\/em><br>contains different parts of the AI response<\/p><\/td><\/tr><tr data-doc-id=\"tasks-result-items-type:message-sections-type\"><td>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<code>type<\/code><\/td><td>string<\/td><td><p><em>type of element<em>=<\/em><strong>'text'<\/strong><\/em><\/p><\/td><\/tr><tr data-doc-id=\"tasks-result-items-type:message-sections-text\"><td>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<code>text<\/code><\/td><td>string<\/td><td><p><em>AI-generated text content<\/em><\/p><\/td><\/tr><tr data-doc-id=\"tasks-result-items-type:message-sections-annotations\"><td>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<strong><code>annotations<\/code><\/strong><\/td><td>array<\/td><td><p><em>array of references used to generate the response<\/em><br>equals <code>null<\/code> if the <code>web_search<\/code> parameter is not set to <code>true<\/code><br><strong>Note:<\/strong> <code>annotations<\/code> may return empty even when <code>web_search<\/code> is <code>true<\/code>, as the AI will attempt to retrieve web information but may not find relevant results<\/p><\/td><\/tr><tr data-doc-id=\"tasks-result-items-type:message-sections-annotations-title\"><td>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<code>title<\/code><\/td><td>string<\/td><td><p><em>the domain name or title of the quoted source<\/em><\/p><\/td><\/tr><tr data-doc-id=\"tasks-result-items-type:message-sections-annotations-url\"><td>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<code>url<\/code><\/td><td>string<\/td><td><p><em>redirect URL to the quoted source<\/em><br>contains a Vertex AI redirect that leads to the original source<\/p><\/td><\/tr><tr data-doc-id=\"tasks-result-items-type:message-sections-annotations-direct_url\"><td>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<code>direct_url<\/code><\/td><td>string<\/td><td><p><em>direct URL to the quoted source<\/em><br>contains the original source URL that the Vertex AI redirect in the <code>url<\/code> field leads to<\/p><\/td><\/tr><tr data-doc-id=\"tasks-result-items-type:message-sections-annotations-start_index\"><td>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<code>start_index<\/code><\/td><td>integer<\/td><td><p><em>start of the annotation indexing<\/em><\/p><\/td><\/tr><tr data-doc-id=\"tasks-result-items-type:message-sections-annotations-end_index\"><td>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<code>end_index<\/code><\/td><td>integer<\/td><td><p><em>end of the annotation indexing<\/em><\/p><\/td><\/tr><tr data-doc-id=\"tasks-result-items-type:message-sections-annotations-text\"><td>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<code>text<\/code><\/td><td>string<\/td><td><p><em>annotated part of the quoted source<\/em><\/p><\/td><\/tr><tr data-doc-id=\"tasks-result-fan_out_queries\"><td>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<code>fan_out_queries<\/code><\/td><td>array<\/td><td><p><em>array of fan-out queries<\/em><br>contains related search queries derived from the main query to provide a more comprehensive response<\/p><\/td><\/tr><\/tbody><\/table><\/div><\/div><\/div><br \/>\n\u200c\u200c[\/vc_column_text][\/vc_column][\/vc_row]<\/p>\n<blockquote><p>Instead of \u2018login\u2019 and \u2018password\u2019 use your credentials from https:\/\/app.dataforseo.com\/api-access<\/p><\/blockquote><div id=\"curl\" class=\"tab-content example__content\"><div class=\"example__code\"><pre><code class=\"language-bash hljs\"># Instead of &#039;login&#039; and &#039;password&#039; use your credentials from https:\/\/app.dataforseo.com\/api-access \r\nlogin=&quot;login&quot; \r\npassword=&quot;password&quot; \r\ncred=&quot;$(printf ${login}:${password} | base64)&quot; \r\nid=&quot;02031608-0696-0110-0000-a81d0414edbe&quot; \r\ncurl --location --request GET &quot;https:\/\/api.dataforseo.com\/v3\/ai_optimization\/gemini\/llm_responses\/task_get\/${id}&quot; \r\n--header &quot;Authorization: Basic ${cred}&quot;  \r\n--header &quot;Content-Type: application\/json&quot; \r\n--data-raw &quot;&quot;<\/code><\/pre><\/div><\/div><div id=\"php\" class=\"tab-content example__content\"><div class=\"example__code\"><pre><code class=\"language-php hljs\">&lt;?php\r\n\r\n\/**\r\n * Method: GET\r\n * Endpoint: https:\/\/api.dataforseo.com\/v3\/ai_optimization\/chat_gpt\/llm_responses\/task_get\/$id\r\n * @see https:\/\/docs.dataforseo.com\/v3\/ai_optimization\/chat_gpt\/llm_responses\/task_get\r\n *\/\r\n\r\nrequire_once __DIR__ . &#039;\/..\/..\/..\/..\/..\/lib\/RestClient.php&#039;;\r\n$config = require __DIR__ . &#039;\/..\/..\/..\/..\/..\/lib\/config.php&#039;;\r\n\r\n$client = new RestClient($config[&#039;base_url&#039;], null, $config[&#039;login&#039;], $config[&#039;password&#039;]);\r\n\r\ntry {\r\n    $taskId = &#039;07211938-0696-0613-0000-674a0f948d6b&#039;;\r\n    $result = $client-&gt;get(&quot;\/v3\/ai_optimization\/gemini\/llm_responses\/task_get\/{$taskId}&quot;);\r\n    print_r($result);\r\n    \/\/ do something with get result\r\n} catch (RestClientException $e) {\r\n    printf(\r\n        &quot;HTTP code: %dnError code: %dnMessage: %snTrace: %sn&quot;,\r\n        $e-&gt;getHttpCode(),\r\n        $e-&gt;getCode(),\r\n        $e-&gt;getMessage(),\r\n        $e-&gt;getTraceAsString()\r\n    );\r\n}\r\n\r\n?&gt;<\/code><\/pre><\/div><\/div><div id=\"javascript\" class=\"tab-content example__content\"><div class=\"example__code\"><pre><code class=\"language-javascript hljs\">const task_id = &#039;02231934-2604-0066-2000-570459f04879&#039;;\r\n\r\nconst axios = require(&#039;axios&#039;);\r\n\r\naxios({\r\n    method: &#039;get&#039;,\r\n    url: &#039;https:\/\/api.dataforseo.com\/v3\/ai_optimization\/gemini\/llm_responses\/task_get\/&#039; + task_id,\r\n    auth: {\r\n        username: &#039;login&#039;,\r\n        password: &#039;password&#039;\r\n    },\r\n    headers: {\r\n        &#039;content-type&#039;: &#039;application\/json&#039;\r\n    }\r\n}).then(function (response) {\r\n    var result = response[&#039;data&#039;][&#039;tasks&#039;];\r\n    \/\/ Result data\r\n    console.log(result);\r\n}).catch(function (error) {\r\n    console.log(error);\r\n});<\/code><\/pre><\/div><\/div><div id=\"python\" class=\"tab-content example__content\"><div class=\"example__code\"><pre><code class=\"language-python hljs\">&quot;&quot;&quot;\r\nMethod: GET\r\nEndpoint: https:\/\/api.dataforseo.com\/v3\/ai_optimization\/gemini\/llm_responses\/task_get\/$id\r\n@see https:\/\/docs.dataforseo.com\/v3\/ai_optimization\/gemini\/llm_responses\/task_get\r\n&quot;&quot;&quot;\r\n\r\nimport sys\r\nimport os\r\nsys.path.append(os.path.abspath(os.path.join(os.path.dirname(__file__), &#039;..\/..\/..\/..\/..\/&#039;)))\r\nfrom lib.client import RestClient\r\nfrom lib.config import username, password\r\nclient = RestClient(username, password)\r\n\r\ntry:\r\n    task_id = &#039;07211938-0696-0613-0000-674a0f948d6b&#039;\r\n    response = client.get(f&#039;\/v3\/ai_optimization\/gemini\/llm_responses\/task_get\/{task_id}&#039;)\r\n    print(response)\r\n    # do something with get result\r\nexcept Exception as e:\r\n    print(f&#039;An error occurred: {e}&#039;)<\/code><\/pre><\/div><\/div><div id=\"csharp\" class=\"tab-content example__content\"><div class=\"example__code\"><pre><code class=\"language-csharp hljs\">using System;\r\nusing System.Linq;\r\nusing System.Net.Http;\r\nusing System.Net.Http.Headers;\r\nusing System.Text;\r\nusing System.Collections.Generic;\r\nusing System.Threading.Tasks;\r\nusing Newtonsoft.Json;\r\nnamespace DataForSeoSdk;\r\n\r\npublic class AiOptimization\r\n{\r\n\r\n    private static readonly HttpClient _httpClient;\r\n    \r\n    static AiOptimization()\r\n    {\r\n        _httpClient = new HttpClient\r\n        {\r\n            BaseAddress = new Uri(&quot;https:\/\/api.dataforseo.com\/&quot;)\r\n        };\r\n        _httpClient.DefaultRequestHeaders.Authorization =\r\n            new AuthenticationHeaderValue(&quot;Basic&quot;, ApiConfig.Base64Auth);\r\n    }\r\n    \r\n    \/\/\/ &lt;summary&gt;\r\n    \/\/\/ Method: GET\r\n    \/\/\/ Endpoint: https:\/\/api.dataforseo.com\/v3\/ai_optimization\/gemini\/llm_responses\/task_get\r\n    \/\/\/ &lt;\/summary&gt;\r\n    \/\/\/ &lt;see href=&quot;https:\/\/docs.dataforseo.com\/v3\/ai_optimization\/gemini\/llm_responses\/task_get&quot;\/&gt;\r\n    \r\n    public static async Task GeminiLlmResponsesTaskGetById()\r\n    {\r\n\t\t\/\/ use the task identifier that you recieved upon setting a task\r\n\t    string taskId = &quot;07211938-0696-0613-0000-674a0f948d6b&quot;;\r\n\t    using var response = await _httpClient.GetAsync(&quot;\/v3\/ai_optimization\/gemini\/llm_responses\/task_get\/&quot; + taskId);\r\n\t    var result = JsonConvert.DeserializeObject&lt;dynamic&gt;(await response.Content.ReadAsStringAsync());\r\n\t    \/\/ you can find the full list of the response codes here https:\/\/docs.dataforseo.com\/v3\/appendix\/errors\r\n\t    if (result.status_code == 20000)\r\n\t    {\r\n\t        \/\/ do something with result\r\n\t        Console.WriteLine(result);\r\n\t    }\r\n\t    else\r\n\t        Console.WriteLine($&quot;error. Code: {result.status_code} Message: {result.status_message}&quot;);\r\n    }<\/code><\/pre><\/div><\/div><blockquote><p>The above command returns JSON structured like this:<\/p><\/blockquote><div class=\"example example--json\"><div class=\"example__content\"><div class=\"example__code example__code-json\"><pre><code class=\"language-json hljs\">{\r\n  &quot;version&quot;: &quot;0.1.20260903&quot;,\r\n  &quot;status_code&quot;: 20000,\r\n  &quot;status_message&quot;: &quot;Ok.&quot;,\r\n  &quot;time&quot;: &quot;3.8357 sec.&quot;,\r\n  &quot;cost&quot;: 0.036219,\r\n  &quot;tasks_count&quot;: 1,\r\n  &quot;tasks_error&quot;: 0,\r\n  &quot;tasks&quot;: [\r\n    {\r\n      &quot;id&quot;: &quot;09041216-1444-0612-0000-7eaf4493f783&quot;,\r\n      &quot;status_code&quot;: 20000,\r\n      &quot;status_message&quot;: &quot;Ok.&quot;,\r\n      &quot;time&quot;: &quot;3.0487 sec.&quot;,\r\n      &quot;cost&quot;: 0.036219,\r\n      &quot;result_count&quot;: 1,\r\n      &quot;path&quot;: [\r\n        &quot;v3&quot;,\r\n        &quot;ai_optimization&quot;,\r\n        &quot;gemini&quot;,\r\n        &quot;llm_responses&quot;,\r\n        &quot;task_get&quot;,\r\n        &quot;07221711-1535-0612-0000-53c33fae76ff&quot;\r\n      ],\r\n      &quot;data&quot;: {\r\n        &quot;api&quot;: &quot;ai_optimization&quot;,\r\n        &quot;function&quot;: &quot;llm_responses&quot;,\r\n        &quot;se&quot;: &quot;gemini&quot;,\r\n        &quot;system_message&quot;: &quot;communicate as if we are in a business meeting&quot;,\r\n        &quot;message_chain&quot;: [\r\n          {\r\n            &quot;role&quot;: &quot;user&quot;,\r\n            &quot;message&quot;: &quot;Hello, what&#039;s up?&quot;\r\n          },\r\n          {\r\n            &quot;role&quot;: &quot;ai&quot;,\r\n            &quot;message&quot;: &quot;Hello! I\u2019m doing well, thank you. How can I assist you today? Are there any specific topics or projects you\u2019d like to discuss in our meeting?&quot;\r\n          }\r\n        ],\r\n        &quot;max_output_tokens&quot;: 200,\r\n        &quot;temperature&quot;: 0.3,\r\n        &quot;top_p&quot;: 0.5,\r\n        &quot;model_name&quot;: &quot;gemini-2.5-flash&quot;,\r\n        &quot;web_search&quot;: true,\r\n        &quot;user_prompt&quot;: &quot;provide information on how relevant the amusement park business is in France now&quot;\r\n      },\r\n      &quot;result&quot;: [\r\n        {\r\n          &quot;model_name&quot;: &quot;gemini-2.5-flash&quot;,\r\n          &quot;input_tokens&quot;: 180,\r\n          &quot;output_tokens&quot;: 226,\r\n          &quot;reasoning_tokens&quot;: 0,\r\n          &quot;web_search&quot;: true,\r\n          &quot;money_spent&quot;: 0.035619,\r\n          &quot;datetime&quot;: &quot;2026-09-04 12:16:38 +00:00&quot;,\r\n          &quot;items&quot;: [\r\n            {\r\n              &quot;type&quot;: &quot;message&quot;,\r\n              &quot;sections&quot;: [\r\n                {\r\n                  &quot;type&quot;: &quot;text&quot;,\r\n                  &quot;text&quot;: &quot;The amusement park business in France is a significant and growing industry, demonstrating strong relevance in the current market. Here&#039;s a breakdown of its key aspects:nn**Market Size and Growth:**n*   The French amusement parks market generated an estimated revenue of USD 3,601.9 million in 2025.n*   It is projected to reach USD 5,023.1 million by 2033, growing at a Compound Annual Growth Rate (CAGR) of 4% from 2026 to 2033.n*   In 2025, France accounted for 3.4% of the global amusement parks market revenue.n*   Within Europe, France is expected to lead the regional market in terms of revenue by 2033 and is projected to be the fastest-growing regional market&quot;,\r\n                  &quot;annotations&quot;: [\r\n                    {\r\n                      &quot;title&quot;: &quot;grandviewresearch.com&quot;,\r\n                      &quot;url&quot;: &quot;https:\/\/vertexaisearch.cloud.google.com\/grounding-api-redirect\/AUZIYQFGFBpWd9vCZdJPQcb8I-VR4gzqM86zOtr1Lnqxj-49n83scQUMGFM1PjHEDueualMXbXidaRKcYoaXlAXBBINoXA2sBmLgTnhcQR4UwpXrbPRrMDBrTqNKxm84J0eOkxY1zpEQdJ97p-Dj1bdjIYQLO915HClxAeqgEtIwgfRtDqKPtkbC2Hy-HNM=&quot;,\r\n                      &quot;direct_url&quot;: &quot;https:\/\/www.grandviewresearch.com\/horizon\/outlook\/amusement-parks-market\/france&quot;,\r\n                      &quot;start_index&quot;: 171,\r\n                      &quot;end_index&quot;: 299,\r\n                      &quot;text&quot;: &quot;**Market Size and Growth:**n*   The French amusement parks market generated an estimated revenue of USD 3,601.9 million in 2025.&quot;\r\n                    },\r\n                    {\r\n                      &quot;title&quot;: &quot;grandviewresearch.com&quot;,\r\n                      &quot;url&quot;: &quot;https:\/\/vertexaisearch.cloud.google.com\/grounding-api-redirect\/AUZIYQFGFBpWd9vCZdJPQcb8I-VR4gzqM86zOtr1Lnqxj-49n83scQUMGFM1PjHEDueualMXbXidaRKcYoaXlAXBBINoXA2sBmLgTnhcQR4UwpXrbPRrMDBrTqNKxm84J0eOkxY1zpEQdJ97p-Dj1bdjIYQLO915HClxAeqgEtIwgfRtDqKPtkbC2Hy-HNM=&quot;,\r\n                      &quot;direct_url&quot;: &quot;https:\/\/www.grandviewresearch.com\/horizon\/outlook\/amusement-parks-market\/france&quot;,\r\n                      &quot;start_index&quot;: 300,\r\n                      &quot;end_index&quot;: 430,\r\n                      &quot;text&quot;: &quot;*   It is projected to reach USD 5,023.1 million by 2033, growing at a Compound Annual Growth Rate (CAGR) of 4% from 2026 to 2033.&quot;\r\n                    },\r\n                    {\r\n                      &quot;title&quot;: &quot;grandviewresearch.com&quot;,\r\n                      &quot;url&quot;: &quot;https:\/\/vertexaisearch.cloud.google.com\/grounding-api-redirect\/AUZIYQFGFBpWd9vCZdJPQcb8I-VR4gzqM86zOtr1Lnqxj-49n83scQUMGFM1PjHEDueualMXbXidaRKcYoaXlAXBBINoXA2sBmLgTnhcQR4UwpXrbPRrMDBrTqNKxm84J0eOkxY1zpEQdJ97p-Dj1bdjIYQLO915HClxAeqgEtIwgfRtDqKPtkbC2Hy-HNM=&quot;,\r\n                      &quot;direct_url&quot;: &quot;https:\/\/www.grandviewresearch.com\/horizon\/outlook\/amusement-parks-market\/france&quot;,\r\n                      &quot;start_index&quot;: 431,\r\n                      &quot;end_index&quot;: 515,\r\n                      &quot;text&quot;: &quot;*   In 2025, France accounted for 3.4% of the global amusement parks market revenue.&quot;\r\n                    }\r\n                  ]\r\n                }\r\n              ]\r\n            }\r\n          ],\r\n          &quot;fan_out_queries&quot;: [\r\n            &quot;amusement park business France current relevance&quot;,\r\n            &quot;amusement park industry France market size&quot;,\r\n            &quot;amusement park attendance France recent data&quot;,\r\n            &quot;trends in French amusement park industry&quot;\r\n          ]\r\n        }\r\n      ]\r\n    }\r\n  ]\r\n}<\/code><\/pre><\/div><\/div><\/div><\/div>","protected":false},"excerpt":{"rendered":"<p>[vc_row][vc_column][vc_column_text] Get Gemini LLM Responses Results by id \u200c Gemini LLM Responses endpoint allows you to retrieve structured responses from a specific Gemini model, based on the input parameters. Tasks using the Standard method may take up to 72 hours to complete. If the task is not completed within this time, it is marked as [&hellip;]<\/p>\n","protected":false},"author":2,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"template.php","meta":{"apibase_doc_request_yaml":"parameters:\n  - name: id\n    type: string\n    description: |\n      <em>task identifier<\/em><br><strong>unique task identifier in our system in the <a href=\"https:\/\/en.wikipedia.org\/wiki\/Universally_unique_identifier\">UUID<\/a> format<\/strong><br>you will be able to use it within <strong>30 days<\/strong> to request the results of the task at any time","apibase_doc_request_additional_yaml":"","apibase_doc_response_yaml":"parameters:\n  - name: version\n    type: string\n    description: |\n      <em>the current version of the API<\/em>\n  - name: status_code\n    type: integer\n    description: |\n      <i>general status code<\/i><br>you can find the full list of the response codes <a href=\"\/v3\/appendix\/errors\">here<\/a><br><strong>Note:<\/strong> we strongly recommend designing a necessary system for handling related exceptional or error conditions\n  - name: status_message\n    type: string\n    description: |\n      <em>general informational message<\/em><br>you can find the full list of general informational messages <a href=\"\/v3\/appendix\/errors\">here<\/a>\n  - name: time\n    type: string\n    description: |\n      <em>execution time, seconds<\/em>\n  - name: cost\n    type: float\n    description: |\n      <em>total tasks cost, USD<\/em>\n  - name: tasks_count\n    type: integer\n    description: |\n      <em>the number of tasks in the <strong><code>tasks<\/code><\/strong> array<\/em>\n  - name: tasks_error\n    type: integer\n    description: |\n      <em>the number of tasks in the <strong><code>tasks<\/code><\/strong> array returned with an error<\/em>\n  - name: tasks\n    type: array\n    description: |\n      <em>array of tasks<\/em>\n    items:\n      children:\n        - name: id\n          type: string\n          description: |\n            <em>task identifier<\/em><br><strong>unique task identifier in our system in the <a href=\"https:\/\/en.wikipedia.org\/wiki\/Universally_unique_identifier\">UUID<\/a> format<\/strong>\n        - name: status_code\n          type: integer\n          description: |\n            <em>status code of the task<\/em><br>generated by DataForSEO; can be within the following range: 10000-60000<br>you can find the full list of the response codes <a href=\"\/v3\/appendix\/errors\">here<\/a>\n        - name: status_message\n          type: string\n          description: |\n            <em>informational message of the task<\/em><br>you can find the full list of general informational messages <a href=\"\/v3\/appendix\/errors\">here<\/a>\n        - name: time\n          type: string\n          description: |\n            <em>execution time, seconds<\/em>\n        - name: cost\n          type: float\n          description: |\n            <em>cost of the task, USD<\/em><br>includes the base task price plus the <code>money_spent<\/code> value\n        - name: result_count\n          type: integer\n          description: |\n            <em>number of elements in the <code>result<\/code> array<\/em>\n        - name: path\n          type: array\n          description: |\n            <em>URL path<\/em>\n        - name: data\n          type: object\n          description: |\n            <em>contains the same parameters that you specified in the POST request<\/em>\n        - name: result\n          type: array\n          description: |\n            <em>array of results<\/em>\n          items:\n            children:\n              - name: model_name\n                type: string\n                description: |\n                  <em>name of the AI model used<\/em>\n              - name: input_tokens\n                type: integer\n                description: |\n                  <em>number of tokens in the input<\/em><br>total count of tokens processed\n              - name: output_tokens\n                type: integer\n                description: |\n                  <em>number of tokens in the output<\/em><br>total count of tokens generated in the AI response\n              - name: reasoning_tokens\n                type: integer\n                description: |\n                  <em>number of reasoning tokens<\/em><br>total count of tokens used to generate reasoning content\n              - name: web_search\n                type: boolean\n                description: |\n                  <em>indicates if web search was used<\/em>\n              - name: money_spent\n                type: float\n                description: |\n                  <em>cost of AI tokens, USD<\/em><br>the price charged by the third-party AI model provider for according to its <a href=\"https:\/\/platform.openai.com\/docs\/pricing\" target=\"_blank\">Pricing<\/a>\n              - name: datetime\n                type: string\n                description: |\n                  <em>date and time when the result was received<\/em><br>in the UTC format: \u201cyyyy-mm-dd hh-mm-ss +00:00\u201d<br>example:<br><code class=\"long-string\">2019-11-15 12:57:46 +00:00<\/code>\n              - name: items\n                type: array\n                description: |\n                  <em>array of response items<\/em><br>contains structured AI response data\n              - name: items\n                type: array\n                description: |\n                  <em>array of response items<\/em><br>contains structured AI response data\n                children:\n                  - name: reasoning\n                    type: object\n                    description: |\n                      <em>element in the response<\/em>\n                    addIt: type:reasoning\n                    children:\n                      - name: type\n                        type: string\n                        description: |\n                          <em>type of the element = <strong>'reasoning'<\/strong><\/em><br><strong>Note:<\/strong> this element is supported only in reasoning models and is not guaranteed to be returned\n                      - name: sections\n                        type: array\n                        description: |\n                          <em>reasoning chain sections<\/em><br>array of objects containing the reasoning chain sections generated by the LLM\n                        items:\n                          children:\n                            - name: type\n                              type: string\n                              description: \"<em>type of element_=_<strong>'summary_text'<\/strong><\/em>\"\n                            - name: text\n                              type: string\n                              description: |\n                                <em>text of the reasoning chain section<\/em><br>text of the reasoning chain  section summarizing the model's thought process\n                  - name: message\n                    type: object\n                    description: |\n                      <em>element in the response<\/em>\n                    addIt: type:message\n                    children:\n                      - name: type\n                        type: string\n                        description: |\n                          <em>type of the element = <strong>'message'<\/strong><\/em>\n                      - name: sections\n                        type: array\n                        description: |\n                          <em>array of content sections<\/em><br>contains different parts of the AI response\n                        items:\n                          children:\n                            - name: type\n                              type: string\n                              description: \"<em>type of element_=_<strong>'text'<\/strong><\/em>\"\n                            - name: text\n                              type: string\n                              description: |\n                                <em>AI-generated text content<\/em>\n                            - name: annotations\n                              type: array\n                              description: |\n                                <em>array of references used to generate the response<\/em><br>equals <code>null<\/code> if the <code>web_search<\/code> parameter is not set to <code>true<\/code><br><strong>Note:<\/strong> <code>annotations<\/code> may return empty even when <code>web_search<\/code> is <code>true<\/code>, as the AI will attempt to retrieve web information but may not find relevant results\n                              items:\n                                children:\n                                  - name: title\n                                    type: string\n                                    description: |\n                                      <em>the domain name or title of the quoted source<\/em>\n                                  - name: url\n                                    type: string\n                                    description: |\n                                      <em>redirect URL to the quoted source<\/em><br>contains a Vertex AI redirect that leads to the original source\n                                  - name: direct_url\n                                    type: string\n                                    description: |\n                                      <em>direct URL to the quoted source<\/em><br>contains the original source URL that the Vertex AI redirect in the `url` field leads to\n                                  - name: start_index\n                                    type: integer\n                                    description: |\n                                      <em>start of the annotation indexing<\/em>\n                                  - name: end_index\n                                    type: integer\n                                    description: |\n                                      <em>end of the annotation indexing<\/em>\n                                  - name: text\n                                    type: string\n                                    description: |\n                                      <em>annotated part of the quoted source<\/em>\n              - name: fan_out_queries\n                type: array\n                description: |\n                  <em>array of fan-out queries<\/em><br>contains related search queries derived from the main query to provide a more comprehensive response","footnotes":""},"class_list":["post-23217","page","type-page","status-publish","hentry"],"_links":{"self":[{"href":"https:\/\/docs.dataforseo.com\/v3\/wp-json\/wp\/v2\/pages\/23217","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/docs.dataforseo.com\/v3\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/docs.dataforseo.com\/v3\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/docs.dataforseo.com\/v3\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/docs.dataforseo.com\/v3\/wp-json\/wp\/v2\/comments?post=23217"}],"version-history":[{"count":10,"href":"https:\/\/docs.dataforseo.com\/v3\/wp-json\/wp\/v2\/pages\/23217\/revisions"}],"predecessor-version":[{"id":23400,"href":"https:\/\/docs.dataforseo.com\/v3\/wp-json\/wp\/v2\/pages\/23217\/revisions\/23400"}],"wp:attachment":[{"href":"https:\/\/docs.dataforseo.com\/v3\/wp-json\/wp\/v2\/media?parent=23217"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}