Skip to main content
Glama

AIsa Keyword Volume & Ads

Server Details

Your agent needs to know what people actually search — volume, ideas, how hard the term is, and whether interest is rising or was a spike last March.

What you can ask for • "What is the monthly volume and difficulty for these 200 keywords?" • "Give me keyword ideas around this seed, with questions people ask." • "Which keywords does this competitor rank for that we do not?" • "Is interest in this term growing, and where?" • "What does this page already rank for?"

How to use it Point any MCP client at https://mcp.aisa.one/seo-keywords/mcp and sign in with OAuth — there is no key to create or paste. 49 tools: Google and Bing volume and suggestions, keywords for a site or a URL, clickstream volumes, Google Trends and Ads traffic estimates, plus Semrush difficulty, question keywords, broad match and paid keywords, and Similarweb's keyword and landing page sets.

Why this rather than the source Three sources for the same number, so a suspicious volume can be checked rather than believed.

It is also a door to the rest The same login reaches 26 sources and 580+ operations. Size the demand here, then ask the same agent who ranks for it and who links to them — without adding a second server.

What it costs Finding and inspecting an operation is free. Running one is billed per call at API prices, with no seat and no monthly minimum, and every call takes max_price_usd so an agent cannot overspend by accident.

Where else it reaches https://mcp.aisa.one/seo/mcp for all of it at once — rankings, keywords, backlinks, site health and AI-answer visibility across DataForSEO, Semrush and Ahrefs.

Ownership verified
Status
Healthy
Uptime
94.0% over 42 days
OAuth
Works in Glama
Last Tested
Transport
Streamable HTTP · MCP 2025-11-25
URL

TDQS

C2.5/5.0

Scored across 56 tools

Disambiguation3/5

Many tools return similar keyword volume/search data from Bing, Google Ads, Clickstream, DataForSEO Labs, Semrush, and Similarweb, so an agent must carefully choose among near-overlapping volume endpoints. The descriptions often clarify provider and use-case differences, but the concurrent presence of direct endpoints plus search/batch_use routing adds ambiguity.

Naming Consistency4/5

Most tools follow a readable snake_case verb-first pattern such as get_semrush_* / post_dataforseo_*, with consistent batch_* and list_* prefixes. Minor deviations like bare account, search, use, and the mixed get_..._fetch name keep it from being fully uniform.

Tool Count2/5

At 56 tools, the surface is far above the typical 3-15 range and includes many locale/reference endpoints and provider-specific variants of similar keyword operations. The breadth reflects the underlying data catalogue, but the set is heavy and several endpoints could be consolidated or moved behind the router.

Completeness4/5

The surface covers keyword volume, difficulty, search intent, trends, categories, audience estimation, ad traffic, domain organic/paid keywords, clickstream, and Similarweb data. Some asynchronous submit/fetch variants and other provider-specific operations are missing, but the core keyword research and ads workflows are well represented.

Available Tools

56 tools
accountShow account and usageA
Read-only
Inspect

Who am I, what can I use, how much can I spend: the key, the account balance, the Go-to-Market wallet when one is active, and usage for today, 7 days and 30 days. Free; needs the Authorization header. Call it to verify a new connection or to explain a 402. ok is true only when the balance was read; otherwise each entry of errors says what to do in next_step.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

A4.7/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Adds substantial context beyond the readOnlyHint/openWorldHint/destructiveHint annotations: the call is free, it requires the Authorization header, and it discloses result semantics ('ok is true only when the balance was read; otherwise each entry of errors says what to do in next_step'). That tells an agent how to interpret partial failure, which annotations cannot convey.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Three sentences, front-loaded with what the agent gets, followed by cost/auth, then call triggers, then result interpretation. No sentence is redundant and none could be dropped without losing information.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a zero-parameter read tool with an output schema already present, the description covers the remaining gaps: cost, auth requirement, invocation triggers, and the ok/errors/next_step contract. Nothing an agent needs to call or interpret it correctly is missing.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The tool takes zero parameters, so the description has nothing parameter-level to compensate for, and the schema is fully covered. A 4 rather than 5 reflects that it adds no input-syntax detail, though none is possible here.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a concrete resource set (identity/key, account balance, Go-to-Market wallet, usage over 1/7/30 days) rather than restating the name. It is clearly distinguishable from every sibling, which are all Reddit, batch, or search tools. An agent knows exactly what it will learn by calling it.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Explicit triggering conditions are given: 'Call it to verify a new connection or to explain a 402.' That is a strong when-to-use statement. It stops short of 5 because it names no alternative tool or a when-not condition, though the sibling list offers no obvious competing diagnostic.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

batch_get_schemaGet AIsa tool schemas in one batchA
Read-onlyIdempotent
Inspect

Retrieve schemas for 1 to 20 exact tool names from search. Build arguments from successful schemas, then call batch_quote. Do not call batch_use yet. Use tool names exactly as search returns them, without a client prefix such as mcp__aisa__. Reuse the session_id returned by Search in all subsequent tool calls for this task. If omitted, a new session is created.

ParametersJSON Schema
NameRequiredDescriptionDefault
toolsYesExact tool names returned by search whose complete contracts are needed. Never invent tool names.
session_idNoReuse the session_id returned by Search in all subsequent tool calls for this task. If omitted, a new session is created.
include_documentationNoReturn the complete immutable public OpenAPI operation, referenced declarations, provenance and scoped completeness. Documentation does not change execution support.
include_response_schemaNoReturn the complete response_schema. Defaults to false.
include_arguments_schemaNoReturn the complete arguments_schema. Defaults to true.

Output Schema

ParametersJSON Schema
NameRequiredDescription
toolsYes
session_idYesReuse the session_id returned by Search in all subsequent tool calls for this task. If omitted, a new session is created.
error_countYes
total_countYes
success_countYes
next_steps_guidanceYes

TDQS

A4.6/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already cover the safety profile (readOnly, idempotent, non-destructive, closed-world), so the description is not required to restate it. It adds genuine operational context: the batch_use prohibition, exact-name/prefix requirements, and session reuse semantics. It does not cover failure handling when names are invalid, keeping it below a 5.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Front-loaded with the core action and size limit, and every sentence carries workflow value. The session_id sentence duplicates the schema's own parameter description, which is minor redundancy rather than bloat.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a read-only batch retrieval tool with an output schema, the description supplies the orchestration context an agent needs (source of names, next steps, session handling) without needing to explain return values. Nothing essential to correct invocation is missing.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the baseline is 3. The description adds real meaning beyond the schema by constraining names to those returned by search and warning against a client prefix such as mcp__aisa__, which is not encoded in the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb and resource ('Retrieve schemas for 1 to 20 exact tool names') and pins the source of those names to search. This clearly separates it from siblings like search (finds tools), batch_quote, and batch_use.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Explicitly sequences the workflow: build arguments from successful schemas, then call batch_quote, and 'Do not call batch_use yet.' This is an explicit when-to-use and when-not-to-use instruction naming the alternative siblings.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

batch_quoteQuote published AIsa tools without executing themA
Read-onlyIdempotent
Inspect

Obtain AIsaServices cost quotes for 1 to 20 published tools without executing them. Same input as batch_use: exact tool names and schema-valid arguments. Never falls back to execution. The response reports auto_execute_eligible and auto_execute_threshold_micros_usd. auto_execute_eligible waives only the extra cost-confirmation step and does not override a user prohibition on execution, a narrower scope, or a tighter budget limit. Quotes are price observations, not authorization grants. Use tool names exactly as search returns them, without a client prefix such as mcp__aisa__. Reuse the session_id returned by Search in all subsequent tool calls for this task. If omitted, a new session is created.

ParametersJSON Schema
NameRequiredDescriptionDefault
callsYes
search_idNoOptional search correlation identifier returned by search.
session_idNoReuse the session_id returned by Search in all subsequent tool calls for this task. If omitted, a new session is created.

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultsYes
batch_idYes
session_idYesReuse the session_id returned by Search in all subsequent tool calls for this task. If omitted, a new session is created.
error_countYes
total_countYes
success_countYes
next_steps_guidanceYesDeterministic next-step instructions derived from this result. Not an authorization grant.
auto_execute_eligibleNoTrue when the worst-known total of successful USD quotes is at or below auto_execute_threshold_micros_usd. A non-USD successful quote makes the batch ineligible. Present on quote responses.
auto_execute_threshold_micros_usdNoConfigured auto-execute threshold in micro-USD. 0 disables automatic execution. Present on quote responses.

TDQS

A4.8/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Goes well past the readOnly/idempotent annotations by explaining that quotes are price observations rather than authorization grants, and precisely delimiting what auto_execute_eligible does and does not waive (user prohibition, narrower scope, tighter budget). It also guarantees no execution fallback, which is the key behavioral risk for this tool.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Purpose is front-loaded and most sentences carry distinct rules (no fallback, eligibility limits, naming, session reuse). It is on the long side and the argument-shape constraint is stated twice in spirit, but little is truly wasted.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

An output schema exists, so return-value documentation isn't required, yet the description still flags the two response fields that matter for a downstream decision. Combined with session and naming guidance, an agent has everything needed to call it correctly.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

At 67% schema coverage the schema already documents each parameter, so the description earns credit only for added meaning: exact-name rules for 'tool', session_id reuse semantics, and the 1-to-20 argument-shape parallel with batch_use. It doesn't clarify search_id beyond what the schema states.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb and resource ('Obtain AIsaServices cost quotes for 1 to 20 published tools') plus the crucial scope qualifier 'without executing them.' It is immediately distinguishable from the sibling batch_use, which executes rather than quotes.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Explicitly names the parallel sibling ('Same input as batch_use') and draws the boundary ('Never falls back to execution'). It also gives operational conditions: use names exactly as search returns them, strip any mcp__aisa__ prefix, and reuse session_id from Search for the task.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

batch_useExecute published AIsa toolsA
Destructive
Inspect

Billable API calls can incur substantial charges. Never call before a successful batch_quote for the same tools and arguments. Execute only when that quote response reports auto_execute_eligible=true for these calls, or when explicit user authorization covers that cost and risk. auto_execute_eligible waives only the extra cost-confirmation step; it does not override a user prohibition on execution, a narrower scope, or a tighter budget limit. Re-quote if tools, arguments, or scope change. Execute 1 to 20 independent published-tool calls; never silently retry. A missing or failed quote is not free. Use tool names exactly as search returns them, without a client prefix such as mcp__aisa__. Reuse the session_id returned by Search in all subsequent tool calls for this task. If omitted, a new session is created.

ParametersJSON Schema
NameRequiredDescriptionDefault
callsYes
search_idNoOptional search correlation identifier returned by search.
session_idNoReuse the session_id returned by Search in all subsequent tool calls for this task. If omitted, a new session is created.

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultsYes
batch_idYes
session_idYesReuse the session_id returned by Search in all subsequent tool calls for this task. If omitted, a new session is created.
error_countYes
total_countYes
success_countYes
next_steps_guidanceYesDeterministic next-step instructions derived from this result. Not an authorization grant.

TDQS

A4.1/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already cover mutability, destructiveness, and open-world behavior. The description adds critical business logic: billable calls, quote dependency, the meaning of auto_execute_eligible (waives only cost confirmation, not user prohibitions), and no silent retry. It doesn't detail rate limits or return format, but with an output schema present, that's acceptable.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is dense and front-loads the cost warning, but it packs many separate instructions into one block, making it less scannable. Some sentences like 'A missing or failed quote is not free' add value, but the overall flow could be better structured.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the destructive, open-world annotations and the presence of an output schema, the description covers the essential preconditions and behavioral constraints. It could mention error handling or partial failure behavior, but the core guidance is sufficient for correct invocation.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 67%, and the description adds important semantics: tool names must be exact without client prefix, session_id reuse guidance, and 1-20 call limit. It doesn't explain search_id, but the schema description for search_id is already clear enough.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the verb and resource: 'Execute 1 to 20 independent published-tool calls', and the title matches. It distinguishes itself from batch_quote by requiring a quote first, but doesn't explicitly contrast with the singular 'use' sibling, though that's implied by 'batch'.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description gives explicit when-to-use and when-not-to-use conditions: only after a successful batch_quote with auto_execute_eligible=true or explicit user authorization. It also states re-quote conditions and prohibits silent retries, leaving little ambiguity.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_dataforseo_keywords_bing_audience_industriesList of Industries for Bing Ads Audience EstimationB
Read-onlyIdempotent
Inspect

By calling this API you will receive the list of industries with industry_id supported by Bing Ads Audience Estimation endpoint.

Usage-based billing; Default request estimate: $0.012 USD (not a fixed price). Account-specific pricing and final settlement may differ.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

B3.4/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint, idempotentHint, destructiveHint=false and openWorldHint, so the safety profile is covered. The description adds pricing context (usage-based billing, ~$0.012 default estimate), which is real value beyond the annotations, but discloses nothing about auth requirements or rate limits.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The core sentence is a single front-loaded statement with no waste. The appended pricing block is templated boilerplate rather than prose, but it carries genuinely useful cost information rather than filler.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With an output schema present, return values need no explanation, and annotations already carry the safety profile; the empty parameter set means there is little else to document. The one omission is that the description never tells the agent what to do with the returned industry_id, leaving the connection to the audience live endpoint implicit.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The tool takes zero parameters and the input schema is an empty object, so there is nothing for the description to disambiguate. Per the rubric, zero parameters establish a baseline of 4.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb and resource: it returns the list of industries with their industry_id as supported by the Bing Ads Audience Estimation endpoint. It is clear what the tool yields, but it does not explicitly distinguish itself from lookup siblings such as get_dataforseo_keywords_bing_audience_job_functions, which serve the same reference-data role.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description says what you receive but never states when to call it or what alternative exists. The natural use case, feeding industry_id values into post_dataforseo_keywords_bing_audience_live, is only hinted at through the phrase 'supported by Bing Ads Audience Estimation endpoint' and is left for the agent to infer.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_dataforseo_keywords_bing_audience_job_functionsList of Job Functions for Bing Ads Audience EstimationB
Read-onlyIdempotent
Inspect

By calling this API you will receive the list of job functions with job_function_id supported by Bing Ads Audience Estimation endpoint.

Usage-based billing; Default request estimate: $0.012 USD (not a fixed price). Account-specific pricing and final settlement may differ.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

B3.1/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnly, idempotent, non-destructive, and open-world behavior, so safety is covered by structured data. The description adds the pricing/billing context which is a useful but boilerplate operational note; it doesn't describe pagination or what the returned list looks like beyond the field name.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness2/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The core sentence is front-loaded and clear, but it's buried by a large HTML-comment pricing block with a dollar estimate that is boilerplate and not specific to this tool's behavior. That padding reduces signal.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

This is a no-param lookup with an output schema and strong annotations, so not much is required. Still, the description could name the sibling distinction (industries) and mention that the result feeds the audience live endpoint; without that, completeness is adequate but not rich.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

There are zero parameters, so the baseline is 4. The description adds no parameter detail because there is none to add, which is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific verb (receive/list) and resource (job functions with job_function_id) for the Bing Ads Audience Estimation endpoint, which is clear. It doesn't proactively differentiate from siblings like get_dataforseo_keywords_bing_audience_industries, though those names make the distinction implicit.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

It says what you get back, not when to call this versus the industries sibling or when to use the live audience endpoint (post_dataforseo_keywords_bing_audience_live). No exclusion criteria or alternatives are stated.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_dataforseo_keywords_bing_kw_for_url_languagesList of Bing Languages for Keyword Suggestions for URLA
Read-onlyIdempotent
Inspect

The languages post_dataforseo_keywords_bing_kw_for_url_live accepts. Free: upstream cost is 0. Note this is a narrower list than get_dataforseo_keywords_bing_languages, which serves the rest of the Bing family. Free: upstream cost is 0, and it is reference data - fetch once and keep what you need rather than calling it per request. ⚠️ Catalogues in this provider are not shared between families: the same endpoint name under a different product returns a different list, and one of them measured 46 MB. Check the list belonging to the endpoint you are actually calling.

Usage-based billing; Default request estimate: $0.012 USD (not a fixed price). Account-specific pricing and final settlement may differ.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

A4.7/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already cover readOnly/idempotent/openWorld, but the description adds substantial context: zero upstream cost, reference-data semantics, the 46 MB catalogue size warning, and the critical caveat that catalogues are not shared between families (same endpoint name can return a different list). These are non-obvious behaviors that materially change how an agent should call it.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The purpose and alternative routing are front-loaded, which is good, but 'Free: upstream cost is 0' is stated twice in close succession, which is wasteful repetition. The injected pricing block further bloats the text. Content is useful but not tightly edited.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

An output schema exists, so return values need no explanation. Combined with the cost note, caching guidance, sibling differentiation, and the cross-family catalogue warning, nothing an agent needs to invoke this reference tool correctly is missing.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The tool takes no parameters, so there is nothing to disambiguate and the baseline is 4. The description correctly implies a zero-argument enumeration call, though it adds no parameter detail because none exists.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description names a specific resource (the language list) and the exact consumer endpoint it serves (`post_dataforseo_keywords_bing_kw_for_url_live`), so an agent knows precisely what it returns and for which call. It explicitly distinguishes itself from the sibling `get_dataforseo_keywords_bing_languages`, which serves the rest of the Bing family.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

It states when to use it (to obtain valid language values for the URL endpoint), names the alternative for the rest of the Bing family, and gives a caching directive ('fetch once and keep what you need rather than calling it per request'). The warning to check the list belonging to the endpoint actually being called is explicit routing guidance.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_dataforseo_keywords_bing_kw_performance_localesList of Locations and Languages for Keyword Performance endpointsA
Read-onlyIdempotent
Inspect

‌ Using this endpoint you can get the full list of locations and languages supported in Keyword Performance endpoints of Bing Keywords Data API.

Usage-based billing; Default request estimate: $0.012 USD (not a fixed price). Account-specific pricing and final settlement may differ.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

A3.6/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint, idempotentHint, and destructiveHint=false, so the safety profile is covered by structured data. The description adds a useful piece of non-annotation context: usage-based billing with a default estimate of $0.012 USD and a note that account pricing may differ. It adds nothing about auth or rate limits.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Short and front-loaded: the returned resource appears in the first clause. The opening 'Using this endpoint you can get' is slightly wordy and the pricing block is raw HTML-comment markup buried in the text, but overall it is not padded.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a zero-parameter reference-data lookup with an output schema and full annotation coverage, the description of what is returned is sufficient. The only mild gap is the lack of any cue about how this list relates to the other locales/locations endpoints in the sibling set.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The tool takes zero parameters, so there is nothing for the description to disambiguate; the baseline of 4 applies. The empty schema and the description's statement that it returns the supported locations and languages are consistent.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a clear verb and resource: retrieves the full list of locations and languages. It also scopes the resource to 'Keyword Performance endpoints of Bing Keywords Data API', which partially separates it from the sibling languages/locations tools. However, it never explicitly names or contrasts those siblings, so the differentiation is left to inference.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

There is no explicit when-to-use, prerequisite, or alternative-selection guidance. In a sibling set that already contains get_dataforseo_keywords_bing_languages and get_dataforseo_keywords_bing_locations, the description does not say why an agent would pick this one over them. Usage is only implied by the 'Keyword Performance' scoping.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_dataforseo_keywords_bing_languagesList of Bing Languages for Keywords DataA
Read-onlyIdempotent
Inspect

By calling this API you will receive the list of languages supported by Bing Ads API.

Usage-based billing; Default request estimate: $0.012 USD (not a fixed price). Account-specific pricing and final settlement may differ.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

A3.5/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint, idempotentHint, openWorldHint, and destructiveHint=false, so the safety profile is fully covered structurally. The description's only added behavioral context is the usage-based billing note with a $0.012 estimate, which is genuinely useful but does not address freshness, caching, or result scope.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The functional sentence is short, front-loaded, and free of waste. The appended pricing block is boilerplate but clearly demarcated and does not obscure the core statement.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

An output schema exists, so return-value explanation is unnecessary, and with no parameters the description is nearly sufficient. It still lacks any hint of how this language list relates to the parallel locales/locations lookup tools, leaving the agent to guess which reference endpoint to call.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The tool takes zero parameters, so per the rubric the baseline is 4. There is nothing for the description to clarify beyond confirming the call is argument-free.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a clear verb (receive) and specific resource (list of languages supported by Bing Ads API), so an agent knows exactly what it returns. However, it offers no differentiation from the many sibling reference-list tools such as get_dataforseo_keywords_bing_kw_for_url_languages, get_dataforseo_keywords_bing_locations, or the various *_locales tools, which all return lookup lists.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Usage is implied: as a no-parameter lookup of supported languages, an agent can infer it is called to validate or enumerate language codes before issuing a Bing keywords request. There is no explicit when/when-not guidance and no mention of which sibling lookup (locales, locations, kw_for_url_languages) to prefer for a given need.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_dataforseo_keywords_bing_locationsList of Bing Locations for Keywords DataB
Read-onlyIdempotent
Inspect

By calling this API you will receive the list of locations supported in Bing Ads API.

Usage-based billing; Default request estimate: $0.012 USD (not a fixed price). Account-specific pricing and final settlement may differ.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

B3.2/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnly, idempotent, openWorld, and non-destructive. The description adds only the usage-based billing note, which is useful but not behavioral in the invocation sense; it doesn't state response format or refresh cadence since output schema covers returns.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The core sentence is efficient, but the large pricing comment block is injected boilerplate that interrupts flow and bloats the definition.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Output schema exists, so return values needn't be explained, and there are no params. However, no differentiation from the many sibling list tools and no mention of how results relate to Bing Ads contexts leaves a small gap.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Zero parameters, so baseline is 4. No param semantics needed and description doesn't need to compensate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb and resource: receives the list of Bing Ads supported locations. This is clear and distinguishable from siblings like get_dataforseo_keywords_bing_languages, though it doesn't explicitly contrast with them.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance on when to use this versus the Bing languages tool or trends locations. An agent must infer that this lists geographic locations for Bing keyword data.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_dataforseo_keywords_bing_volume_history_localesList of Locations and Languages for Bing ‘Search Volume History’ EndpointB
Read-onlyIdempotent
Inspect

By calling this API you will receive the list of locations and languages supported by Bing ‘Search Volume History’ endpoint.

Usage-based billing; Default request estimate: $0.012 USD (not a fixed price). Account-specific pricing and final settlement may differ.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

B3.4/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The annotations already declare readOnly, idempotent, openWorld and non-destructive, so the safety profile is covered. The description adds a billing signal (usage-based, ~$0.012 default estimate, account-specific pricing), which is genuinely useful context not present in structured fields, but says nothing about response shape, caching, or rate behavior.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The functional sentence is front-loaded and concise. The injected pricing comment block is boilerplate that doesn't help tool selection, but it is short and clearly delineated.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

An output schema exists, so return values need no explanation, and a zero-parameter lookup tool has minimal documentation burden. The main gap is the lack of any hint about how to apply the returned locales in downstream Search Volume History calls.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Zero parameters, so the baseline of 4 applies. There is nothing for the description to clarify, and schema coverage is reported at 100%.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific verb ('receive the list') and resource ('locations and languages supported by Bing Search Volume History endpoint'), which is narrower than the generic sibling tools get_dataforseo_keywords_bing_languages and get_dataforseo_keywords_bing_locations. It's clear but largely restates the title, and it doesn't explicitly distinguish itself from those near-identical siblings beyond the endpoint qualifier.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance on when to call this versus get_dataforseo_keywords_bing_languages, get_dataforseo_keywords_bing_locations, or get_dataforseo_keywords_bing_kw_performance_locales, all of which sound like locale/location lookups. The agent must infer that this one is scoped to the Search Volume History endpoint specifically.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_dataforseo_keywords_clickstream_localesList of Locations and Languages for DataForSEO Clickstream Data APIA
Read-onlyIdempotent
Inspect

‌ Using this endpoint you can get the full list of locations and languages supported in DataForSEO Clickstream Data API.

Usage-based billing; Default request estimate: $0.012 USD (not a fixed price). Account-specific pricing and final settlement may differ.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

A3.6/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint, idempotentHint, openWorldHint, and destructiveHint=false, so safety is covered. The description adds genuinely new behavioral context: usage-based billing with a default request estimate of $0.012 and a caveat that account-specific pricing and final settlement may differ. It does not discuss rate limits or auth, but the cost disclosure is a meaningful addition beyond structured fields.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The content is short and front-loaded: purpose first, then a clearly delimited pricing note. The pricing block is boilerplate but relevant to invocation planning. The stray leading zero-width character is a minor formatting blemish, and the pricing text is slightly verbose for what it conveys.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

An output schema exists, so return structure need not be described. With annotations covering the safety profile and no parameters to explain, the description only needs to establish purpose and cost, which it does. The one remaining gap is sibling differentiation, which matters here given the many parallel locale/language listers.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The tool takes zero parameters and the schema is an empty object, so there is nothing for the description to disambiguate. Baseline 4 applies for a parameterless tool.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific verb and resource: retrieve the full list of locations and languages supported in the DataForSEO Clickstream Data API. The name and title reinforce the same scope. However, it does not distinguish this clickstream locales endpoint from sibling locale/language listers such as get_dataforseo_keywords_bing_languages, bing_locations, or get_dataforseo_keywords_trends_locations, so an agent must infer the API-surface distinction from the tool name alone.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The phrase 'using this endpoint you can get...' implies the tool is a reference/dimension lookup, but there is no explicit statement of when to call it versus the many sibling lister tools. No prerequisites, no exclusions, and no named alternatives are given despite a crowded sibling set.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_dataforseo_keywords_gads_ad_traffic_fetchGet ‘Ads Traffic By Keywords’ Results by idD
Read-onlyIdempotent
Inspect

Published reference price: $0 USD per successful request. Account-specific pricing and final settlement may differ.

ParametersJSON Schema
NameRequiredDescriptionDefault
idYes<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

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

D1.6/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint=true, idempotentHint=true, openWorldHint=true, and destructiveHint=false, so the safety profile is covered. The description adds only a generic price disclaimer, not operational behavior, auth needs, rate limits, or error handling. It does not contradict annotations, but it adds almost no useful behavioral context.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness2/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The text is short but consists entirely of boilerplate pricing markup that does not help an agent select or invoke the tool. It is not front-loaded with purpose or usage information.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness1/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Despite having an output schema and rich annotations, the description fails to tell the agent what data is fetched, what the return represents, or how this fetch tool relates to its sibling submit tool. For a fetch-by-id operation in a large family, the definition is contextually inadequate.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, and the single id parameter is fully documented in the schema with format, example, and 30-day validity. The description adds nothing about parameters, so the baseline of 3 applies when the schema does the heavy lifting.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose1/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description contains only a pricing disclaimer and never states what the tool does. The title alone carries the purpose, but the description itself provides no verb, resource, or scope. This is a missing purpose.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines1/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance on when to use this tool versus alternatives. There is no mention of context, prerequisites, or sibling tools like post_dataforseo_keywords_gads_ad_traffic_submit.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_dataforseo_keywords_gads_statusGoogle Ads StatusA
Read-onlyIdempotent
Inspect

‌ By calling this endpoint, you will know if Google updated keyword data for the previous month. Generally, Google updates keyword data in the middle of the month. So, if Google updated its data in October, you would be able to see the actual search volume, cost-per-click, competition, and other metrics for September. If Google didn’t update its data in October, the latest information would be available for August.

Usage-based billing; Default request estimate: $0.012 USD (not a fixed price). Account-specific pricing and final settlement may differ.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

A3.8/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already cover read-only, idempotent, open-world, non-destructive semantics, so the bar is lower. The description adds genuine behavioral context beyond them: the monthly update cadence, the data-lag consequence (falling back to an earlier month), and a billing note (usage-based, ~$0.012 estimate).

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The core purpose is front-loaded in the first sentence, and the October/September example usefully illustrates the lag concept. The trailing pricing block and a stray leading whitespace character add minor noise but do not obscure the meaning.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With zero parameters and an output schema present, the description need not describe return values. It supplies the conceptual model (data freshness/lag) an agent needs to interpret the result, leaving only explicit routing guidance as a gap.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The tool takes zero parameters, so per the rubric the baseline is 4. There is nothing parameter-wise for the description to document or compensate for.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific purpose: determining whether Google has refreshed Google Ads keyword data for the prior month. It conveys the verb (check/learn status) and resource (GAds keyword data freshness) clearly. It does not explicitly differentiate itself from sibling freshness/inventory tools, but the concept is unambiguous.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Usage is only implied — an agent infers it should call this before relying on GAds keyword data to know how current it is. There is no explicit when-to-use, when-not-to-use, or named alternative among the many sibling endpoints.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_dataforseo_labs_google_categories_for_kw_languagesList of Languages for Google Categories for Keywords APIA
Read-onlyIdempotent
Inspect

‌ Using this endpoint you can get the full list of languages supported for the Google Categories for Keywords endpoint of DataForSEO Labs API.

Usage-based billing; Default request estimate: $0.012 USD (not a fixed price). Account-specific pricing and final settlement may differ.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

A3.6/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnly/idempotent/non-destructive and openWorld, so the safety profile is fully covered. The description adds a genuinely useful behavioral fact beyond the annotations: the usage-based cost estimate (~$0.012). However, it says nothing further about the nature of the response or edge cases; with annotations carrying the load, this is adequate but not rich.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The core purpose is one front-loaded sentence, and the pricing note is confined to a clearly delimited comment block. Minor redundancy (the endpoint is named twice) but overall tight for a simple tool.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

An output schema exists, so return values need not be described. For a zero-parameter reference endpoint with full annotation coverage, the description supplies everything an agent needs to invoke it correctly; only explicit routing against siblings is absent.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The schema has zero parameters, so the baseline is 4. There are no parameter semantics to document and the description correctly implies a parameterless lookup.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb+resource: fetching the full list of supported languages for the Google Categories for Keywords endpoint. An agent can tell it is a static reference list tied to that one endpoint, though the description never explicitly contrasts it with siblings like post_dataforseo_labs_google_categories_for_kw_live.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Usage is implied by the name (discover supported language codes before calling the categories-for-keywords endpoint), but the description states no when-to-use, no prerequisite, and no alternative. Nothing tells the agent when this lookup is or isn't needed.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_semrush_broad_match_keywordsBroad Match KeywordsD
Read-onlyIdempotent
Inspect

Usage-based billing; Default request estimate: $0.04 USD (not a fixed price). Account-specific pricing and final settlement may differ.

ParametersJSON Schema
NameRequiredDescriptionDefault
phraseYes
databaseNo

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

D1.3/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint, idempotentHint, openWorldHint and destructiveHint=false, so the safety profile is covered. The description's only contribution is the cost disclosure ($0.04 USD estimated, usage-based, account-specific) — genuinely useful and not present in the annotations — but it says nothing about result volume, latency, or what 'broad match' actually returns.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness2/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The text is short, which is superficially good, but it is short because it omits the essential content rather than because it is efficient. The markup comments and repeated price hedging ('not a fixed price', 'may differ') consume the entire budget that should have described the tool.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness1/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

An output schema exists, so return values need not be explained, but that does not excuse the total absence of purpose, usage, and parameter meaning for a two-parameter tool. As written, an agent has no basis for choosing or correctly invoking this tool other than its name.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters1/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0% and the description supplies no information about either parameter. The required 'phrase' argument and the 'database' argument (its allowed values, e.g. which Semrush regional/global databases are valid) are completely undocumented in both places, which is exactly the case where the description must compensate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose1/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description never states what the tool does — not a verb, not a resource, not even the word 'keyword'. It consists solely of a pricing/billing block wrapped in HTML comments, so an agent cannot tell from the description that this retrieves Semrush broad-match keyword data, nor how it differs from siblings like get_semrush_question_keywords or get_semrush_keyword_overview.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines1/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

There is no when-to-use, when-not-to-use, or alternative-selection guidance of any kind. With ~55 sibling keyword tools available, the absence of any routing hint leaves selection entirely to name-guessing.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_semrush_domain_organic_keywordsDomain Organic KeywordsD
Read-onlyIdempotent
Inspect

Usage-based billing; Default request estimate: $0.02 USD (not a fixed price). Account-specific pricing and final settlement may differ.

ParametersJSON Schema
NameRequiredDescriptionDefault
domainYes
databaseYes

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

D1.3/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnly, idempotent, openWorld and non-destructive, so safety is covered. The description's only added value is a usage-based billing note ($0.02 default estimate), which is genuine cost context not present in annotations, but nothing is said about scope, database semantics, or result limits.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness2/5

Is the description appropriately sized, front-loaded, and free of redundancy?

It is short, but the content is an HTML-comment-wrapped billing banner rather than front-loaded task information. Brevity here reflects missing content, not conciseness.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness1/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

An output schema exists so return values need not be explained, but for a two-parameter query tool with 0% schema coverage the description supplies nothing an agent needs to invoke it correctly – no purpose, no parameter meaning, no usage context.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters1/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0% for two required parameters (domain, database). With no enums and no schema docs, the description must compensate, and it says nothing about expected domain format or valid database values.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose1/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description contains zero functional content – it is entirely a pricing banner. The only signal about what the tool does comes from the tool name itself, and there is no differentiation from siblings like get_semrush_url_organic_keywords or get_semrush_organic_competitors.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines1/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No when-to-use guidance, no alternatives named, no prerequisites. An agent has no basis for choosing this over the many other Semrush/DataForSEO keyword tools listed as siblings.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_semrush_domain_paid_keywordsDomain Paid KeywordsD
Read-onlyIdempotent
Inspect

Usage-based billing; Default request estimate: $0.04 USD (not a fixed price). Account-specific pricing and final settlement may differ.

ParametersJSON Schema
NameRequiredDescriptionDefault
domainYes
databaseYes

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

D1.9/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint, idempotentHint, openWorldHint and destructiveHint=false, so the safety profile is covered. The description does add genuinely non-annotation information: a usage-based cost estimate (~$0.04/request) and a warning that final settlement may differ, which is useful behavioral context for a paid API call. It still omits rate limits, result shape, and any pagination behavior.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The text is short and has no filler sentences, and the pricing caveat is front-loaded. However, its brevity is achieved by omitting the core purpose rather than by tight editing, so conciseness here is partly a symptom of incompleteness.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

An output schema exists, so return values need not be explained, and annotations cover the safety profile. But for a two-parameter, cost-incurring API call, the complete absence of purpose and parameter documentation leaves the definition too thin for an agent to invoke confidently.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0% and the description supplies no parameter information at all. 'domain' is largely self-evident, but 'database' (e.g. which regional Semrush database) is entirely undefined in both the schema and the description, leaving a required parameter ambiguous.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose1/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description contains only a pricing/billing boilerplate block and never states what the tool does. The agent must infer the purpose entirely from the name/title 'Domain Paid Keywords', and the description does nothing to distinguish this from sibling get_semrush_domain_organic_keywords.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines1/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

There is no when-to-use guidance, no prerequisites, and no mention of alternatives. An agent cannot tell from this text why it would pick paid keywords over organic keywords (get_semrush_domain_organic_keywords) or the domain overview.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_semrush_keyword_difficultyKeyword DifficultyD
Read-onlyIdempotent
Inspect

Usage-based billing; Default request estimate: $0.005 USD (not a fixed price). Account-specific pricing and final settlement may differ.

ParametersJSON Schema
NameRequiredDescriptionDefault
phraseYes
databaseNo

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

D1.3/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint=true, idempotentHint=true, and destructiveHint=false, so the read-only safety profile is covered elsewhere. The description's sole contribution is cost transparency (usage-based billing, ~$0.005/request, account-specific settlement), which is genuinely useful but says nothing about data source behavior, batching limits implied by x-aisa-maxItems=20, or result freshness.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness2/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The text is short, but it is boilerplate wrapped in HTML comment markers that consumes the entire description while conveying none of the tool's functional purpose. Brevity here stems from omission, not from disciplined editing.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness1/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Although an output schema and rich annotations exist, the description omits everything an agent needs to select this tool over its many keyword-data siblings and to supply 'phrase'/'database' correctly. Pricing alone is insufficient for a 2-parameter, high-sibling-ambiguity tool.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters1/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0% for both parameters, and the description adds nothing about 'phrase' (multi-value, delimiter ';', max 20 items) or 'database' (which SEMrush database/region to query). With zero coverage on both sides, the agent is left to guess parameter meaning entirely.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose1/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description never states what the tool does. It contains only a billing/pricing notice ('Usage-based billing; Default request estimate: $0.005 USD'), so an agent cannot tell this retrieves SEMrush keyword difficulty scores, nor distinguish it from siblings like get_semrush_keyword_overview or the DataForSEO difficulty tools.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines1/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

There is no when-to-use guidance, no prerequisites, and no reference to alternatives such as post_dataforseo_labs_google_bulk_keyword_difficulty_live or get_semrush_keyword_overview. The only conditional text is about pricing, not invocation context.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_semrush_keyword_overviewSemrush Keyword OverviewD
Read-onlyIdempotent
Inspect

Published reference price: $0.001 USD per successful request. Account-specific pricing and final settlement may differ.

ParametersJSON Schema
NameRequiredDescriptionDefault
phraseYes
databaseNous

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

D1.2/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint, idempotentHint, non-destructive and open-world behavior, so the safety profile is covered. The only added behavior is the per-request price ($0.001 USD per successful request), which is genuinely useful cost context beyond the annotations, but it is the sole non-template content.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness1/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The blurb is short but consists entirely of an HTML-comment pricing artifact that does not earn its place for tool selection. It is not front-loaded with any purpose statement.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness1/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Although an output schema and annotations exist, the description supplies zero information on what the tool returns or when to call it. For a keyword-lookup tool surrounded by dozens of similar siblings, this is completely inadequate for correct selection.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters1/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0% for both parameters, so the description must compensate and instead says nothing about the required 'phrase' or the 'database' default. There is no hint about accepted phrase format or database values such as 'us'.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose1/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description contains only a pricing banner and never states what the tool does. Nothing indicates it returns Semrush keyword overview metrics for a phrase, nor distinguishes it from siblings like get_semrush_keyword_difficulty or post_dataforseo_labs_google_keyword_overview_live.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines1/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

There is no when-to-use guidance, no mention of alternatives, and no conditions for selecting this tool over the many keyword-data siblings. The agent is left to infer everything from the tool name.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_semrush_question_keywordsQuestion KeywordsD
Read-onlyIdempotent
Inspect

Usage-based billing; Default request estimate: $0.08 USD (not a fixed price). Account-specific pricing and final settlement may differ.

ParametersJSON Schema
NameRequiredDescriptionDefault
phraseYes
databaseNo

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

D1.3/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint, idempotentHint, openWorldHint and destructiveHint=false, so safety is covered. The description's only contribution is cost context ($0.08 estimate, usage-based billing, settlement may differ), which is genuinely useful but says nothing about what the call returns, its latency, or its external-data dependencies.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness2/5

Is the description appropriately sized, front-loaded, and free of redundancy?

It is short, but brevity here reflects omission rather than conciseness. The only content is a boilerplate pricing banner wrapped in HTML comments, which wastes the entire description budget on non-purpose information.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness1/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Although an output schema exists (so return values need not be explained), the tool has a required parameter at 0% schema coverage and no stated purpose. For a 2-parameter keyword lookup with many near-identical siblings, the description is completely inadequate for correct selection or invocation.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters1/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0% for both parameters ('phrase' and 'database'), and the description adds no meaning whatsoever about what 'phrase' should contain or what values 'database' accepts. With two undocumented parameters, the description fails to compensate for the gap.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose1/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description never states what the tool does. It contains only an HTML-wrapped pricing notice ('Usage-based billing; Default request estimate: $0.08 USD'). Nothing identifies the resource (question keywords) or the verb (fetch), so an agent cannot distinguish it from the dozens of sibling keyword tools.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines1/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

There is no when-to-use guidance, no conditions, and no mention of alternatives such as get_semrush_broad_match_keywords or get_semrush_keyword_overview. The text provides zero routing information.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_semrush_url_organic_keywordsURL Organic KeywordsD
Read-onlyIdempotent
Inspect

Usage-based billing; Default request estimate: $0.02 USD (not a fixed price). Account-specific pricing and final settlement may differ.

ParametersJSON Schema
NameRequiredDescriptionDefault
urlYes
databaseYes

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

D1.3/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnly, idempotent, non-destructive and open-world, so safety is covered. The description adds only a cost estimate (~$0.02, not fixed), which is genuinely useful context for a paid third-party API, but it omits auth needs, rate limits, and result shape.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness2/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The text is short, but every line is irrelevant boilerplate about pricing rather than tool purpose. Brevity here reflects under-specification, not conciseness.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness1/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Even granting that the output schema covers return values and annotations cover safety, the description omits the one thing only it can provide: what the tool returns and how it differs from its Semrush siblings. The definition is functionally incomplete.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters1/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Two required parameters (url, database) with 0% schema description coverage, and the description supplies no meaning, format, or valid values for either. For a required 'database' field this is a real gap, as the agent cannot know whether it expects 'us', 'google.com', or a locale code.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose1/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description never states what the tool does. It contains only a pricing banner, so the agent must infer purpose from the name alone, and nothing distinguishes it from sibling get_semrush_domain_organic_keywords.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines1/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance about when to use this tool versus the many sibling alternatives (domain organic keywords, organic competitors, Ahrefs/DataForSEO equivalents). The only conditional text is about billing, not usage.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_similarweb_keywordsWebsite KeywordsD
Read-onlyIdempotent
Inspect

Usage-based billing; Default request estimate: $0.075 USD (not a fixed price). Declared unit rate: $0.075 USD per similarweb_credit. Account-specific pricing and final settlement may differ.

ParametersJSON Schema
NameRequiredDescriptionDefault
limitYes
domainYes
formatNo
countryNoWorldwide data only; values are case-insensitive.ww
end_dateYes
start_dateYes
web_sourceNo
granularityYes
main_domain_onlyNo

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

D1.3/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already cover the operational profile (readOnly, idempotent, openWorld, non-destructive). The description's only additive behavioral content is the billing model — usage-based, ~$0.075 per similarweb_credit — which is genuinely useful cost context. However, it discloses nothing about data freshness, result size, or what the returned keyword records contain.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness2/5

Is the description appropriately sized, front-loaded, and free of redundancy?

It is short, but the brevity is under-specification rather than efficiency: the entire body is boilerplate pricing with zero functional content. The one useful sentence (per-credit rate) is buried in a compliance block rather than front-loaded as tool guidance.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness1/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

An output schema exists, so return values need not be described, but for a 9-parameter, 5-required tool with 11% schema coverage and a crowded sibling namespace, the description supplies no purpose, no usage routing, and no parameter semantics — it is functionally empty.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters1/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 11% (only 'country' is documented), and there are 9 parameters including five required ones (domain, start_date, end_date, granularity, limit). The description explains none of them — no date format, no domain input convention, no meaning for granularity or web_source — leaving the agent to guess.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose1/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description contains no statement of what the tool does — it is entirely a pricing/billing notice. An agent must infer from the name and title alone that this retrieves SimilarWeb keyword data, and it cannot distinguish this from the many get_semrush_* and get_dataforseo_keywords_* siblings.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines1/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No when-to-use, when-not-to-use, or alternative guidance is given. The pricing block states cost but not the conditions under which this tool should be chosen over the adjacent get_similarweb_landing_pages or the Semrush/DataForSEO keyword tools.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_similarweb_landing_pagesLanding PagesD
Read-onlyIdempotent
Inspect

Usage-based billing; Default request estimate: $0.075 USD (not a fixed price). Declared unit rate: $0.075 USD per similarweb_credit. Account-specific pricing and final settlement may differ.

ParametersJSON Schema
NameRequiredDescriptionDefault
limitYes
domainYes
offsetNo
countryNoWorldwide data only; values are case-insensitive.ww
end_dateYes
start_dateYes
web_sourceNo
granularityNo
traffic_sourceNo
main_domain_onlyNo

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

D1.3/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint=true, idempotentHint=true, destructiveHint=false and openWorldHint=true, so the safety profile is covered without the description. The only added behavioral information is the usage-based pricing estimate ($0.075 USD per similarweb_credit), which is genuinely useful context not present in annotations, but it says nothing about data scope, rate limits, or result semantics.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness2/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The text is short, but every sentence is off-topic boilerplate about billing rather than the tool's function. It is structurally compact yet fails the 'every sentence earns its place' test because no sentence helps an agent invoke the tool correctly.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness1/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Although an output schema exists (so return values need not be explained), the description omits the tool's purpose, usage context, and parameter meaning for a 10-parameter tool with 4 required fields. For a complex, expensive, open-world query tool, this is completely inadequate.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters1/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is only 10% across 10 parameters, so the description must compensate — and it does not. Parameters like domain, start_date/end_date formats, limit, offset, traffic_source, web_source, granularity and main_domain_only are left completely undocumented in both the schema and the description.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose1/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description contains only auto-generated pricing boilerplate and never states what the tool does. Nothing in it indicates that the tool retrieves SimilarWeb landing page data, what a 'landing page' record contains, or how it differs from siblings like get_similarweb_keywords. An agent reading only the description would have no idea what this tool returns.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines1/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

There is no usage guidance of any kind — no when-to-use, no when-not-to-use, and no routing to the many sibling tools (get_similarweb_keywords, get_semrush_url_organic_keywords, etc.). The description gives the agent no basis for choosing this tool over alternatives.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

list_categoriesBrowse the AIsa catalogue
Read-only
Inspect

The AIsa catalogue at a glance: categories, the servers in each, tool counts, and the dedicated endpoint to connect if you only need one category. Free. (AIsa-only: tool-router has no equivalent.) Use mcp.aisa.one/mcp?modules=<category> (or mcp.aisa.one/<category>/mcp) to have that category's tools listed directly instead of via search.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

post_dataforseo_keywords_bing_audience_liveSetting Live ‘Bing Ads Audience Estimation’ TasksC
Destructive
Inspect

This endpoint provides estimated audience size for an ad campaign based on specified targeting criteria. It returns data on the total estimated audience, such as suggested bid and budget for an ad campaign and estimated engagement metrics.

Usage-based billing; Default request estimate: $0.09 USD (not a fixed price). Account-specific pricing and final settlement may differ.

ParametersJSON Schema
NameRequiredDescriptionDefault
bodyNo

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

C2.8/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations declare readOnlyHint=false, idempotentHint=false, openWorldHint=true and destructiveHint=true, yet the description frames the endpoint purely as data retrieval ('provides', 'returns'), leaving that tension unaddressed. The only behavioral value added is the usage-based billing note ($0.09 estimate); it says nothing about auth requirements, rate limits, or what the non-idempotent/destructive flags imply for the caller.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The substantive description is two front-loaded sentences with no filler, and the pricing block is boilerplate but relevant to cost. Structure is efficient; only the pricing fragment slightly dilutes focus.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

An output schema exists, so return-value explanation (which the description duplicates) is not strictly required. What is missing for a 1-param, zero-required, nested-object tool is usage context: when to call it, and that the helper endpoints supply valid industry/job_function ids. Adequate but with clear gaps.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The top-level 'body' parameter has no schema description (coverage 0%) and the description adds no parameter-level meaning beyond the vague phrase 'specified targeting criteria'. It never explains that the body is a targeting object, how the mutually exclusive location selectors work, or the required-ness of location — all of which the agent must infer from nested schema text.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific verb and resource: it 'provides estimated audience size for an ad campaign based on specified targeting criteria' and returns totals, suggested bid/budget and engagement metrics. That is clear enough to identify the tool, but it offers no differentiation from the many sibling keyword/volume endpoints (e.g. post_dataforseo_keywords_bing_search_volume_live), which an agent must disambiguate by name alone.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

There is no guidance on when to use this endpoint versus alternatives, and no mention of prerequisites even though the schema implies at least one location selector is required. The two companion lookup endpoints that provide valid industry/job_function ids (get_dataforseo_keywords_bing_audience_industries, ..._job_functions) are never referenced, so the agent gets no routing help.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

post_dataforseo_keywords_bing_kw_for_keywords_liveSetting Live ‘Keywords For Keywords’ TasksB
Destructive
Inspect

‌ This endpoint will select the relevant keywords for the specified ones. Set up to 200 keywords and get the results, which are suggested by Bing Ads for your query. You can get up to 3000 keyword suggestions using this function.

Usage-based billing; Default request estimate: $0.09 USD (not a fixed price). Account-specific pricing and final settlement may differ.

ParametersJSON Schema
NameRequiredDescriptionDefault
bodyNo

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

B3.4/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare the write/read profile (readOnlyHint=false, destructiveHint=true, idempotentHint=false, openWorldHint=true), so the description carries less burden. It adds genuinely useful operational context — the 200-keyword input cap, the 3000-suggestion output cap, and usage-based billing (~$0.09 estimate) — but it does not explain why this is flagged destructive or what auth is needed, leaving a notable gap.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two tight sentences front-load the purpose and limits, followed by a clearly delimited pricing block. A stray zero-width character and the boilerplate pricing comment are minor blemishes but the prose is efficient.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

An output schema exists, so return-value explanation is not required, and the description covers input/output caps and billing. However, for a billed, non-idempotent POST endpoint with a 0%-described top-level param, it stops short of clarifying the destructive/one-shot semantics or how the array body is structured.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The top-level schema has only the single 'body' parameter with no description (0% coverage), but the nested object properties are documented in exhaustive detail (device, sort_by, date ranges, location/language options, negative keywords). The description only restates the 200-keyword limit that the schema already gives and adds the 3000-suggestion cap, so it adds marginal value over structured data.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb and resource: it selects relevant keywords for the seed keywords supplied, sourced from Bing Ads, returning up to 3000 suggestions. This differentiates it from siblings like kw_for_url_live and kw_for_site_live by implying the input is keywords rather than a URL or site, though it never names those alternatives explicitly.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Usage is implied — you call it to expand seed keywords into Bing-suggested related keywords — but there is no explicit when-to-use guidance, no mention of when to prefer this over kw_for_url_live, gads_kw_for_keywords_live, or the Labs keyword-suggestion tools, and no prerequisites stated.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

post_dataforseo_keywords_bing_kw_for_site_liveSetting Live ‘Keywords For Site’ TasksB
Destructive
Inspect

‌This endpoint will provide you with a list of keywords relevant to the specified URL along with their search volume for the last month, search volume trend for up to 24 past months (for estimating search volume dynamics), current cost-per-click and competition values for paid search. The maximum number of returned keywords is 3000.

Usage-based billing; Default request estimate: $0.09 USD (not a fixed price). Account-specific pricing and final settlement may differ.

ParametersJSON Schema
NameRequiredDescriptionDefault
bodyNo

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

B3.2/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint=false, destructiveHint=true, idempotentHint=false and openWorldHint=true, so the safety profile is covered structurally. The description adds useful behavior beyond that (the 3000-result cap, the pricing/usage-based billing note, and the cost estimate), but it says nothing about the live-call semantics, latency, or rate/limits, and it frames the call purely as data retrieval in a way that sits uneasily with destructiveHint=true.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The prose is a single front-loaded sentence that delivers the return payload and the result cap immediately, followed by a clearly demarcated pricing block. Every sentence earns its place, though the pricing boilerplate is generic rather than tool-specific.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

An output schema exists, so return-value explanation is technically unnecessary and the description is not penalized for the metric details it repeats. However, for a live POST endpoint with a deeply nested body schema and dozens of near-identical Bing/Google Ads siblings, the definition never routes the agent to the correct variant, leaving a meaningful selection gap.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Top-level schema coverage is 0% (the single body array carries no description), but the nested oneOf properties are documented extensively in the schema itself — target, device, date_from/date_to, location_code/name/coordinate, sort_by, keywords_negative. The description adds no parameter-level meaning at all, so it neither compensates for the top-level gap nor surpasses what the nested schema already provides.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific verb and resource: it returns keywords relevant to a specified URL, and it enumerates the returned metrics (search volume, 24-month trend, CPC, competition) and the 3000-keyword cap. That distinguishes it in scope from keyword-seed siblings, but it never names an alternative and never mentions 'Bing' in the body text, so an agent must rely on the tool name to separate it from post_dataforseo_keywords_gads_kw_for_site_live.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

There is no when-to-use versus when-not-to-use guidance and no named alternative. The phrase 'specified URL' only weakly implies the input shape, and with close siblings like kw_for_keywords and kw_for_url present, the absence of routing guidance is a real gap.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

post_dataforseo_keywords_bing_kw_for_url_liveSetting Live ‘Bing Ads Keyword Suggestions for URL’ TasksA
Destructive
Inspect

Suggests Bing keywords for one page target, reading the page itself rather than a seed list. exclude_brands drops brand terms, language_code scopes it. Wrapped in DataForSEO's envelope: data in tasks[0].result, outcome in tasks[0].status_code - a rejected request still returns HTTP 200. Use it when you have a URL and no keyword list yet; once you have seeds, post_dataforseo_keywords_bing_kw_for_keywords_live expands them. The submit and fetch twins of this endpoint do the same work asynchronously, at the same price, for batches too large to wait on.

Usage-based billing; Default request estimate: $0.09 USD (not a fixed price). Account-specific pricing and final settlement may differ.

ParametersJSON Schema
NameRequiredDescriptionDefault
bodyYes

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

A4.3/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint=false, destructiveHint=true, idempotentHint=false, and openWorldHint=true, so the safety profile is covered. The description adds genuinely useful non-annotation context: the DataForSEO envelope layout (tasks[0].result vs tasks[0].status_code) and the critical detail that a rejected request still returns HTTP 200, which prevents false success detection.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Front-loaded with the core purpose, then routing, then envelope/error semantics – each sentence earns its place. Slightly dense, and the boilerplate pricing comment sits outside the descriptive value, but nothing is redundant.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a single-parameter POST task submission with an output schema already present, the description covers routing, the alternative endpoints, and the response envelope, so return-value explanation is not needed. The only gap is the language_code/language_name selection rule, which is left entirely to the schema.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Adds meaning to two parameters the schema names but does not explain functionally: 'exclude_brands drops brand terms, language_code scopes it'. However, with 0% reported schema description coverage, the description would need to carry more (e.g. the language_code/language_name mutual-requirement is left to the schema), so it only partially compensates.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb and resource ('Suggests Bing keywords for one page target') and crisply distinguishes the input mode: it reads the page itself rather than a seed list. It also names the sibling it is not (post_dataforseo_keywords_bing_kw_for_keywords_live) and the submit/fetch twins, so an agent can route without opening another schema.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Explicit trigger ('Use it when you have a URL and no keyword list yet') and explicit hand-off ('once you have seeds, ...expands them'), plus a note that the async twins do the same work at the same price for batches too large to wait on. When-to-use, when-to-use-something-else, and the cost-equivalence caveat are all present.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

post_dataforseo_keywords_bing_kw_performance_liveSetting Live ‘Bing Keyword Performance’ TasksB
Destructive
Inspect

‌ You can receive a set of keyword performance stats for a group of keywords depending on the specified match type, location and language parameters. Ad position, clicks, impressions, and other keyword metrics are aggregated for the last month for one or all of the following device types: mobile, desktop, tablet.

Usage-based billing; Default request estimate: $0.09 USD (not a fixed price). Account-specific pricing and final settlement may differ.

ParametersJSON Schema
NameRequiredDescriptionDefault
bodyNo

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

B3.2/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint=false, destructiveHint=true, idempotentHint=false, and openWorldHint=true, so the safety profile is covered elsewhere. The description does add real behavioral context beyond structured fields: data is aggregated over the last month, and the pricing block discloses usage-based billing with a ~$0.09 per-request estimate. It still does not explain that each invocation re-triggers billing with no caching, which is the natural implication of the non-idempotent annotation.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The core is two tight sentences with the aggregation window and device breakdown front-loaded. The HTML-comment pricing block and a stray zero-width character add some noise, but the substantive content is efficient and free of filler.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

An output schema exists, so return values need not be explained, and the description covers the essence of the data produced. However, for a paid live POST endpoint with 0 required top-level parameters and numerous selectable location/language fields, the description omits any prerequisite guidance and gives no hint that separate calls are needed to discover valid locales. Adequate but with visible gaps.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The schema itself documents every field exhaustively (match types, device values, keyword limits, language/location alternatives, example coordinate format), so the schema carries the parameter burden. The description only echoes that match type, location, and language affect results without adding syntax or defaults beyond the schema. A baseline 3 is appropriate given the schema's thorough coverage.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific verb and resource: it returns keyword performance stats (ad position, clicks, impressions) aggregated over the last month for a keyword group, broken down by match type, location, language, and device. That is clear and concrete. It does not, however, distinguish this tool from the many similarly named siblings such as post_dataforseo_keywords_bing_search_volume_live or post_dataforseo_keywords_bing_kw_for_keywords_live, so an agent cannot route between them from the text alone.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

There is no when-to-use guidance, no exclusions, and no mention of alternatives. The agent is not told how this differs from search_volume, kw_for_keywords, or the Google Ads equivalents, nor when a live call is preferable. It merely describes the output, leaving tool selection to inference.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

post_dataforseo_keywords_bing_search_volume_liveSetting Live ‘Search Volume’ TasksB
Destructive
Inspect

‌This endpoint will provide you with search volume data for the last month, search volume trend for up to 24 past months (that will let you estimate search volume dynamics), current cost-per-click and competition values for paid search.

Usage-based billing; Default request estimate: $0.09 USD (not a fixed price). Account-specific pricing and final settlement may differ.

ParametersJSON Schema
NameRequiredDescriptionDefault
bodyNo

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

B3/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The pricing note adds real behavioral context (usage-based billing, ~$0.09 default estimate) that annotations do not cover. However, the description says nothing about the non-idempotent, task-creating nature implied by readOnlyHint=false, idempotentHint=false and destructiveHint=true, so the mutation/billing semantics remain only partially surfaced.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

One front-loaded sentence stating the returned data, followed by a compact pricing block. No filler, though the two halves (capability + price) are only loosely connected.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

An output schema exists so return values need not be explained, and the capability sentence covers the payload. But for a billable POST task endpoint with no annotations-level safety explanation and no usage routing, an agent still lacks the operational context needed to invoke it confidently.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The description adds zero parameter meaning: it never mentions keywords, language, location, date ranges or sorting. Although the nested item schema is richly documented, the top-level schema coverage is reported at 0%, and the description does not compensate with any framing of the request body.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb and resource: this endpoint returns search volume for the last month, trend up to 24 months, CPC and competition values. The Bing scope is carried in the tool name, but the description itself does not distinguish this from similar siblings like gads_search_volume_live or clickstream_search_volume_live.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

There is no guidance on when to use this tool versus the many sibling search-volume endpoints (Bing vs Gads vs Clickstream), nor on prerequisites such as language/location requirements. The reader must infer usage entirely from the tool name.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

post_dataforseo_keywords_clickstream_bulk_volume_liveSetting Live ‘Bulk Clickstream Search Volume’ TasksC
Destructive
Inspect

‌‌  The Bulk Clickstream Search Volume endpoint of DataForSEO Keywords Data API is designed to provide clickstream-based search volume data for up to 1000 keywords in a single Live request. What’s more, it offers historical search volume values for up to 12 months (depending on keywords, location, and language parameters).

Usage-based billing; Default request estimate: $0.09 USD (not a fixed price). Account-specific pricing and final settlement may differ.

ParametersJSON Schema
NameRequiredDescriptionDefault
bodyNo

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

C2.9/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare the safety profile (readOnlyHint=false, destructiveHint=true, idempotentHint=false, openWorldHint=true), so the description's job is to add context. It does add genuinely useful context beyond annotations — the 1000-keyword batch limit, 12-month history depth, and a default billing estimate of $0.09 — but it does not explain the destructive/non-idempotent behavior, auth needs, or rate limits.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The core purpose is front-loaded in the first sentence, which is good, but the text opens with zero-width junk characters and carries a boilerplate pricing comment block. Roughly half the payload is non-descriptive scaffolding.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

An output schema exists, so return values need no explanation, and annotations cover the safety profile. Still, for an endpoint with a dozen confusingly similar siblings and an untyped body array, the description omits the routing rationale and request-shape essentials an agent needs to call it correctly.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Top-level schema description coverage is 0%: the sole 'body' array parameter has no description of its own, and the nested oneOf does not mark keywords/location as required even though the endpoint needs them. The description only restates the 1000-keyword limit and vaguely alludes to 'location and language parameters', without explaining the body array structure or the location_code vs location_name choice.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description names a specific resource ('Bulk Clickstream Search Volume endpoint of DataForSEO Keywords Data API') and states its scope: clickstream search volume for up to 1000 keywords in one Live request with up to 12 months of history. However, it never distinguishes itself from near-identical siblings such as post_dataforseo_keywords_clickstream_search_volume_live or post_dataforseo_keywords_clickstream_global_volume_live, so an agent still cannot tell them apart.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No when-to-use guidance is given: nothing says when to prefer bulk over the single/global clickstream variants, or what prerequisites exist. The 1000-keyword cap and 12-month history are capacity facts, not selection guidance.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

post_dataforseo_keywords_clickstream_global_volume_liveSetting Live ‘Clickstream Global Search Volume’ TasksA
Destructive
Inspect

‌‌  The Clickstream Global Search Volume endpoint of DataForSEO Keywords Data API is designed to provide clickstream-based search volume data for up to 1000 keywords in a single Live request. What’s more, it offers geographical distribution of clickstream search volume values across all available locations.

Usage-based billing; Default request estimate: $0.09 USD (not a fixed price). Account-specific pricing and final settlement may differ.

ParametersJSON Schema
NameRequiredDescriptionDefault
bodyNo

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

A3.5/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare the write/billing profile (readOnlyHint=false, destructiveHint=true, idempotentHint=false), and the description usefully adds beyond them: the 1000-keyword-per-request limit, that results include geographical distribution across all locations, and an account-specific usage-based price estimate (~$0.09 USD, explicitly not fixed). Cost and batch-size behavior are exactly the kind of context annotations cannot express. It does not cover rate limits or failure modes, so not a 5.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two purpose sentences followed by a fenced pricing note; the purpose is front-loaded and nothing is padded. The leading zero-width/whitespace characters and the raw `<!-- aisa-pricing -->` comment delimiters are visible formatting cruft that a cleaner definition would omit, but the content itself is tight.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With an output schema present, return values need no explanation, and annotations cover the safety/mutation profile, so the remaining burden is scope, limits, and cost — all three are stated. The gap is routing: nothing tells an agent why to pick this clickstream global endpoint rather than its search_volume/bulk_volume siblings, which is a meaningful omission in a 60-tool namespace.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The top-level `body` parameter has no description (0% schema coverage at that level), so the description must compensate, and it only partially does — it conveys the 1000-keyword limit and Live-request context. It says nothing about the array-of-task-objects shape, the optional `tag`, or the fact that keywords are lowercased and symbol-restricted, all of which live in the nested schema rather than the description. Baseline 3 for a schema that documents its nested fields well despite the flat coverage metric.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description names a specific resource (Clickstream Global Search Volume endpoint of the DataForSEO Keywords Data API) and states the concrete payload: clickstream-based search volume for up to 1000 keywords in one Live request. That is a clear verb+resource statement. It stops short of distinguishing itself from near-identical siblings such as post_dataforseo_keywords_clickstream_search_volume_live and post_dataforseo_keywords_clickstream_bulk_volume_live, which an agent cannot disambiguate from this text alone.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The only usage signal is 'in a single Live request' and the 1000-keyword ceiling. There is no statement of when to prefer this tool over the clickstream search-volume variant, the bulk-volume variant, or the Bing/GAds search-volume tools in the sibling list. No prerequisites, no exclusions, no routing guidance.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

post_dataforseo_keywords_clickstream_search_volume_liveSetting Live ‘DataForSEO Search Volume’ TasksD
Destructive
Inspect

‌

Usage-based billing; Default request estimate: $0.09 USD (not a fixed price). Account-specific pricing and final settlement may differ.

ParametersJSON Schema
NameRequiredDescriptionDefault
bodyNo

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

D1.5/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare the safety profile (readOnlyHint=false, destructiveHint=true, openWorldHint=true, idempotentHint=false), so the bar is low. The description adds only cost context (usage-based billing, ~$0.09 default estimate), which is genuinely useful but is the sole behavioral detail; it says nothing about rate limits, async task handling, or what the 'live' POST actually triggers.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness2/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Very short, but that shortness reflects absent content rather than tight writing. The only sentence present is the pricing disclaimer, which is useful but leaves the definition with no purpose statement to front-load.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness1/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

An output schema exists, so return values need not be explained, but the description still omits that the payload is an array of task objects, that keywords/language/location are effectively required despite 'required: []', and that this is a paid live task submission. For a billing-relevant, open-world write endpoint this is inadequate.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Top-level schema description coverage is 0% — the single 'body' parameter carries no description in the schema, and the description adds nothing about it. The nested item properties are richly documented inside the schema (keywords max 1000, language/location code pairs, use_clickstream default), but the description itself contributes no parameter meaning at all.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose1/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description body contains only a billing note and zero-width characters; it never states what the tool does. Nothing distinguishes it from the many sibling post_dataforseo_*_live endpoints (bing_search_volume_live, clickstream_bulk_volume_live, gads_search_volume_live, etc.) beyond what the name/title already implies.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines1/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No when-to-use, when-not-to-use, or alternative selection guidance is present. An agent has no way to know whether to pick this over post_dataforseo_keywords_bing_search_volume_live, clickstream_bulk_volume_live, or clickstream_global_volume_live.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

post_dataforseo_keywords_gads_ad_traffic_submitSetting ‘Ad Traffic By Keywords’ TasksD
Destructive
Inspect

Usage-based billing; Default request estimate: $0.09 USD (not a fixed price). Account-specific pricing and final settlement may differ.

ParametersJSON Schema
NameRequiredDescriptionDefault
bodyNo

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

D1.5/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare destructiveHint=true, idempotentHint=false, and openWorldHint=true, so the safety profile is largely covered. The description's only genuine addition is the cost disclosure ($0.09 default estimate, not a fixed price), which is real but minimal; it says nothing about async task submission, result retrieval, or the pingback/postback flow that the schema implies.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness2/5

Is the description appropriately sized, front-loaded, and free of redundancy?

It is short and structurally clean, but the content does not earn its place relative to the tool's job: a purely commercial notice occupies the entire description while purpose and usage go unstated. Brevity here stems from under-specification rather than disciplined editing.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness1/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a task-submission endpoint wrapping a 1-parameter body array with many nested fields, the description omits purpose, usage, and behavioral context entirely. Although an output schema exists and annotations cover the safety profile, an agent still lacks the essential information to select and call this correctly.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Reported schema description coverage is 0% and the top-level 'body' array has no description at all, so the description would need to compensate — which it does not. The nested item properties do carry detailed field-level descriptions (bid, match, keywords, dates), which prevents a 1, but the description itself adds zero parameter meaning.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose1/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description body contains only a usage-based pricing notice; it never states what the tool does. The only signal of purpose comes from the tool name and title ('Setting Ad Traffic By Keywords Tasks'), which the description does not reinforce or clarify. An agent reading the description alone learns nothing about the operation.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines1/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

There is no when-to-use, when-not-to-use, or alternative guidance whatsoever. Siblings like get_dataforseo_keywords_gads_ad_traffic_fetch and post_dataforseo_keywords_gads_search_volume_live exist, but the agent is given no basis for choosing among them. The pricing block is not usage guidance.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

post_dataforseo_keywords_gads_kw_for_keywords_liveSetting Live ‘Keywords For Keywords’ TasksC
Destructive
Inspect

Note that Google Ads Keywords Data API is based on the latest version of the Google Ads API that has replaced legacy Google AdWords API. If you’re using DataForSEO Google AdWords API, you need to upgrade to DataForSEO Google Ads API. ‌‌ This endpoint will provide relevant keywords for the specified terms. Set up to 20 keywords in the keywords array and get keyword suggestions from Google Ads.

Usage-based billing; Default request estimate: $0.09 USD (not a fixed price). Account-specific pricing and final settlement may differ.

ParametersJSON Schema
NameRequiredDescriptionDefault
bodyNo

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

C2.4/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare the safety profile (readOnlyHint=false, destructiveHint=true, idempotentHint=false, openWorldHint=true), so the description carries less burden. It does add useful behavioral context not present in annotations: the usage-based billing model with a $0.09 default request estimate and the note that Google Ads may return no data for certain keyword groups. It does not explain why the tool is flagged destructive or mention auth/rate behavior, leaving a gap.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness2/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The most prominent content is an API-migration warning about AdWords vs Google Ads that is irrelevant to invoking this endpoint, plus a templated pricing block. The actual purpose sentence is buried in the middle of the description rather than front-loaded, so the reader must dig for the operative information.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

An output schema exists, so return values need no explanation here. But for a mutation/billing endpoint whose only top-level parameter is an undescribed array wrapper, the description should clarify how requests are structured and what gets generated; instead it spends its space on legacy-API migration trivia.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The top-level 'body' parameter is an array of task objects with no schema description (reported coverage 0%), and the description does not explain this wrapper structure, the batching semantics, or ordering. The one detail it does give — 'up to 20 keywords in the keywords array' — merely duplicates what the nested schema already documents, so it does not compensate for the coverage gap.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose3/5

Does the description clearly state what the tool does and how it differs from similar tools?

The operative sentence — 'provide relevant keywords for the specified terms... get keyword suggestions from Google Ads' — states a specific verb and resource, so the core purpose is discernible. However, the migration note about the legacy AdWords API dominates the opening, and the description never distinguishes this tool from close siblings like post_dataforseo_labs_google_keyword_suggestions_live or post_dataforseo_keywords_gads_search_volume_live. An agent must guess from the name alone which keyword tool to pick.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description says 'Set up to 20 keywords in the keywords array and get keyword suggestions,' which hints at a mechanical usage but offers no when-to-use versus alternatives, no prerequisites, and no exclusions. With many overlapping keyword/suggestion siblings available, this is a meaningful omission.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

post_dataforseo_keywords_gads_kw_for_site_liveSetting Live ‘Keywords For Site’ TasksC
Destructive
Inspect

Note that Google Ads Keywords Data API is based on the latest version of the Google Ads API that has replaced legacy Google AdWords API. If you’re using DataForSEO Google AdWords API, you need to upgrade to DataForSEO Google Ads API. ‌‌ This endpoint will provide you with a list of keywords relevant to the specified domain along with their bids, search volumes for the last month, search volume trends for the last year (for estimating search volume dynamics), and competition levels.

Usage-based billing; Default request estimate: $0.09 USD (not a fixed price). Account-specific pricing and final settlement may differ.

ParametersJSON Schema
NameRequiredDescriptionDefault
bodyNo

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

C2.8/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint=false, destructiveHint=true, and openWorldHint=true, so the safety profile is covered by structured data (consistent with a task-creating POST endpoint). The description adds genuinely useful non-annotation context: usage-based billing at roughly $0.09 per request and the exact data fields returned. It does not explain the task/async lifecycle or whether a separate fetch step is required.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness2/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Roughly half the text is a Google Ads vs AdWords migration notice that is irrelevant to selecting or invoking this tool, and it is placed first, ahead of the only sentence that describes the endpoint. The pricing boilerplate is useful but the definition is not front-loaded on the actual function.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

An output schema exists, so return values need not be described, and annotations cover safety. What is still missing is the batch/array nature of the request body, the async task semantics implied by the name and title, and any differentiation from the large sibling set — for a tool with this much overlapping competition, that leaves real gaps.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Top-level schema description coverage is 0% and the description says nothing about the single 'body' parameter — notably it never explains that this is an ARRAY of task objects, i.e. that multiple tasks can be batched in one call. The nested item properties are thoroughly documented in the schema, which mitigates the gap, but the description itself fails to compensate for the structural ambiguity it should clarify.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The second paragraph states a specific verb+resource: it returns 'a list of keywords relevant to the specified domain along with their bids, search volumes..., and competition levels'. That is concrete enough to know what the tool does, but it never distinguishes this from the many keyword siblings (post_dataforseo_keywords_gads_kw_for_keywords_live, post_dataforseo_keywords_bing_kw_for_site_live) or from the page-targeting variant. The front-loaded AdWords-vs-Ads upgrade notice adds confusion rather than clarity.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

There is no when-to-use guidance, no mention of prerequisites (credentials, task/queue model implied by the 'post' prefix and 'Setting ... Tasks' title), and no routing to any of the ~40 sibling keyword tools. The agent must infer the choice between site, url, and keyword-based variants entirely from the tool name.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

post_dataforseo_keywords_gads_search_volume_liveSetting Live ‘Google Ads Search Volume’ TasksC
Destructive
Inspect

‌ Note that Google Ads Keywords Data API is based on the latest version of the Google Ads API that has replaced legacy Google AdWords API. If you’re using DataForSEO Google AdWords API, you need to upgrade to DataForSEO Google Ads API.

Usage-based billing; Default request estimate: $0.09 USD (not a fixed price). Account-specific pricing and final settlement may differ.

ParametersJSON Schema
NameRequiredDescriptionDefault
bodyNo

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

C2/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already supply the safety profile (readOnlyHint=false, destructiveHint=true, idempotentHint=false, openWorldHint=true). The description adds genuinely useful behavioral context not in the annotations: usage-based billing with a default estimate of $0.09 USD and account-specific pricing. However, it says nothing about rate limits, synchronous vs task-based execution, or what 'destructive' means here. With annotations carrying the safety burden, this is an adequate 3.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness2/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The text is short but poorly structured: it opens with a stray zero-width character and front-loads an irrelevant API-migration warning before any statement of purpose. Every sentence discusses migration or pricing rather than the tool's function, so the space is not spent on what an agent needs.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Because an output schema exists, return values need not be explained, and the annotations cover the safety profile. But for a keyword-search-volume endpoint with a complex nested body and a 1000-keyword limit, the description omits the essentials: what it returns, that it runs live/synchronously, and any keyword/location constraints. The critical purpose and usage gaps make it incomplete.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The description provides zero information about any parameter, and the top-level schema description coverage is reported as 0%. Although the deeply nested body fields (keywords, date_from/date_to, location_*) carry rich descriptions in the schema, the description does not compensate for the measured coverage gap as required. It adds nothing an agent could use to invoke the tool correctly.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose2/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description never states what the tool does. Its two substantive sentences are about migrating from the legacy AdWords API and about pricing, neither of which describes the operation. An agent must fall back on the title ('Google Ads Search Volume Tasks') and the tool name to infer that it retrieves Google Ads search volume data for keywords, so the description itself is effectively tautological/boilerplate.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines1/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

There is no when-to-use guidance at all. The only condition stated ('if you're using the DataForSEO Google AdWords API, you need to upgrade') is a migration notice, not a routing instruction. No mention of alternatives such as post_dataforseo_ai_keyword_volume_live or post_dataforseo_keywords_gads_kw_for_keywords_live, and no indication of live-vs-task semantics.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

post_dataforseo_keywords_trends_demography_liveSetting Live ‘DataForSEO Trends Demography’ TasksB
Destructive
Inspect

This endpoint will provide you with the demographic breakdown (by age and gender) of keyword popularity per each specified term based on DataForSEO Trends data. You can check keyword trends for Google Search, Google News, and Google Shopping.

Usage-based billing; Default request estimate: $0.0024 USD (not a fixed price). Account-specific pricing and final settlement may differ.

ParametersJSON Schema
NameRequiredDescriptionDefault
bodyNo

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

B3.1/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare destructiveHint=true, idempotentHint=false, openWorldHint=true, so the safety profile is covered externally. The description adds almost nothing behavioral: it does not explain the cost beyond the boilerplate pricing line, auth requirements, or that the endpoint accepts a POST body of tasks — and it silently conflicts with the 'Setting Tasks' title by framing itself as a simple data provider.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two tight, front-loaded sentences that earn their place, followed by a compact pricing note. No redundant restatement of the name, though the pricing boilerplate is generic template text.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

An output schema exists, so return values need not be described, and the core data description is clear. However, for a destructive POST endpoint the definition omits any behavioral or cost/auth context and gives no routing guidance among the dense set of trends siblings.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Top-level schema description coverage is 0% for the single `body` parameter, and the description does not compensate. It never mentions that `keywords` is effectively required (max 5), the date/time_range behavior, or the location_code/location_name mutual exclusivity that the nested schema documents.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb and resource: it returns the demographic breakdown (by age and gender) of keyword popularity per term. This differentiates it from siblings like trends_explore_live, trends_merged_data_live, and trends_subregion_interests_live, and it scopes the data sources (Google Search, News, Shopping).

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description explains what data comes back but never says when to choose this tool over the many sibling trends/labs/volume tools. No prerequisites, no exclusions, no named alternative for the demography-vs-explore-vs-merged decision.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

post_dataforseo_keywords_trends_explore_liveSetting Live ‘DataForSEO Trends Explore’ TasksC
Destructive
Inspect

This endpoint will provide you with the keyword popularity data from DataForSEO Trends. You can check keyword trends for Google Search, Google News, and Google Shopping.

Usage-based billing; Default request estimate: $0.0012 USD (not a fixed price). Account-specific pricing and final settlement may differ.

ParametersJSON Schema
NameRequiredDescriptionDefault
bodyNo

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

C2.5/5.0
Behavior1/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The description frames the tool purely as a data-retrieval endpoint ("will provide you with the keyword popularity data"), which conflicts with the annotations declaring readOnlyHint=false and destructiveHint=true. The only added behavioral note is the auto-inserted pricing block (usage-based billing, ~$0.0012 estimate), and no auth, rate-limit, or side-effect context is given. Description and annotations disagree on the safety profile.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two sentences, purpose front-loaded, no filler; the pricing block is boilerplate but clearly demarcated. Nothing in the prose is wasted, though the content is thin rather than tight.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

An output schema exists so return values need not be described, but for a POST endpoint that sets a live task with a required keywords field inside a body array, the description omits how to select the engine type, how the array is structured, and the task-setting nature implied by its own title. An agent cannot call this correctly from the description alone.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage for the sole top-level parameter (body) is 0% and the description says nothing about the request shape — no mention of keywords, date ranges, location, or time_range presets. The nested item schema happens to document those fields, but the description itself contributes zero parameter meaning and does not compensate for the reported coverage gap.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description names a specific verb+resource ("provide you with the keyword popularity data from DataForSEO Trends") and scopes it to three engines (Google Search, Google News, Google Shopping). It is clear on what the tool returns, but it never distinguishes itself from near-neighbours such as post_dataforseo_ai_keyword_volume_live or post_dataforseo_keywords_gads_search_volume_live, which return adjacent keyword metrics.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

There is no when-to-use / when-not-to-use guidance and no named alternative. The agent is told what data comes back but not in which situation this trends endpoint should be chosen over the many keyword-volume and keyword-overview siblings.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

post_dataforseo_keywords_trends_merged_data_liveSetting Live ‘DataForSEO Trends Merged Data’ TasksB
Destructive
Inspect

This endpoint will provide you with the keyword popularity data from DataForSEO Trends. In addition to keyword popularity rate over the given time range, you will get location-specific keyword popularity data, and a demographic breakdown of keyword popularity per each specified term along with comparative values.

Usage-based billing; Default request estimate: $0.09 USD (not a fixed price). Account-specific pricing and final settlement may differ.

ParametersJSON Schema
NameRequiredDescriptionDefault
bodyNo

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

B3/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint=false, openWorldHint=true, idempotentHint=false and destructiveHint=true, so the safety profile is covered structurally. The description adds genuinely useful pricing context ($0.09 default estimate, usage-based billing) that annotations do not carry. Beyond that it says nothing about task/live execution semantics, keyword cap, or billing triggers, so it adds moderate rather than rich context.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Purpose is front-loaded in the first clause and the enumeration of returned data is compact. There is minor redundancy ('keyword popularity' recurs three times) and the injected pricing block breaks the flow, but nothing is padded or wasted.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

An output schema exists, so return values need not be explained, and annotations cover the safety profile. What is missing for a tool sitting among four near-neighbour trends endpoints is the routing information — when this merged variant should be used instead of the specialized ones — which leaves the definition adequate but incomplete.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Top-level schema description coverage is 0% and the description contributes no parameter meaning at all — no mention of keywords, date range, time_range presets, or the location_code/location_name tradeoff. Nested field docs in the schema do cover keywords (max 5) and date formats, which partially mitigates the gap, but the description itself compensates for nothing.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description names a specific resource (DataForSEO Trends keyword popularity data) and enumerates the three data families it returns: popularity rate over time, location-specific popularity, and demographic breakdown per term. That is far more specific than a tautology. The gap is that it never explains what 'merged' means relative to its siblings post_dataforseo_keywords_trends_explore_live and post_dataforseo_keywords_trends_demography_live, which cover overlapping data.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

There is no guidance on when to choose this endpoint over the several sibling trends endpoints (explore_live, demography_live, subregion_interests_live). The description implies it is a combined call, but it never states that explicitly, nor does it mention prerequisites, keyword limits, or exclusions. Usage is left entirely to inference.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

post_dataforseo_keywords_trends_subregion_interests_liveSetting Live ‘DataForSEO Trends Subregion Interests’ TasksC
Destructive
Inspect

This endpoint will provide you with location-specific keyword popularity data from DataForSEO Trends. You can check keyword trends for Google Search, Google News, and Google Shopping.

Usage-based billing; Default request estimate: $0.0024 USD (not a fixed price). Account-specific pricing and final settlement may differ.

ParametersJSON Schema
NameRequiredDescriptionDefault
bodyNo

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

C2.7/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare the safety profile (readOnlyHint=false, destructiveHint=true, non-idempotent), so the description carries a lighter burden. It adds genuinely useful cost context ('Usage-based billing; Default request estimate: $0.0024 USD'), which is not in the annotations, but it says nothing about what 'live' means here or how the endpoint behaves at call time. Note the tension between a data-retrieval description and destructiveHint=true; because the title frames this as 'Setting ... Tasks' (a non-idempotent POST), this is not treated as a hard contradiction.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The core purpose is front-loaded in a single tight sentence, and the pricing block is compact and clearly delimited. It is appropriately sized, though the brevity comes partly from omitting necessary scope detail rather than from disciplined editing.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

An output schema exists, so return values need not be explained, but the description still leaves real gaps for a trends-family POST: what 'subregion interests' actually returns, how it differs from sibling trends endpoints, and any parameter guidance for the nested body object. Given the richness of the nested schema and the number of near-identical siblings, the description is under-specified.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage for the top-level body parameter is 0% (the array property itself has no description), so the description must compensate and largely does not. Only 'location-specific' loosely gestures at location_code/location_name; nothing is said about keywords, the 5-keyword limit, date_from/date_to, or time_range presets.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose3/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description gives a clear verb phrase ('provide you with location-specific keyword popularity data from DataForSEO Trends') and names the three surfaces (Google Search, News, Shopping). However, it never explains the tool's distinguishing scope — 'subregion interests' — and reads identically to sibling trends endpoints such as trends_explore_live, trends_demography_live, and trends_merged_data_live, so an agent cannot tell them apart from the description alone.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

There is no when-to-use guidance, no prerequisites, and no alternatives named. The description states only what data comes back, leaving the agent to guess whether this endpoint or one of the other trends siblings is appropriate.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

post_dataforseo_labs_google_bulk_keyword_difficulty_liveBulk Keyword DifficultyC
Destructive
Inspect

This endpoint will provide you with the Keyword Difficulty metric for a maximum of 1,000 keywords in one API request. Keyword Difficulty stands for the relative difficulty of ranking in the first top-10 organic results for the related keyword. Keyword Difficulty in DataForSEO API responses indicates the chance of getting in top-10 organic results for a keyword on a logarithmic scale from 0 to 100.

Usage-based billing; Default request estimate: $0.0734 USD (not a fixed price). Account-specific pricing and final settlement may differ.

ParametersJSON Schema
NameRequiredDescriptionDefault
bodyNo

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

C2.6/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations declare readOnlyHint=false and destructiveHint=true, yet the description's 'provide you with the Keyword Difficulty metric' describes a pure read/retrieval operation, so the two conflict. The description does add a useful behavioral detail — usage-based billing with a default estimate of $0.0734 — but it never addresses auth, rate limits, or the destructive classification, so transparency is weak and partly contradictory.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

It is front-loaded with the core purpose and reasonably short, but the second and third sentences overlap heavily (both explain ranking in top-10 organic results), and the boilerplate billing block adds bulk without adding task-selection value.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

An output schema exists, so return-value explanation is unnecessary, but the description leaves the single array parameter and its required nested fields entirely uncovered and provides no usage routing. For a bulk live endpoint whose only param is a structured array, this is incomplete.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Reported schema description coverage is 0% at the top level (the 'body' array itself is undocumented), so the description carries the burden of explaining parameters — and it mentions none of them. It doesn't explain the required keywords array, the max-1000 limit within the array, or the language/location code requirements.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description names a specific resource (Keyword Difficulty metric) and a clear scope (bulk, up to 1,000 keywords in one request), and it even defines what the metric means. It does not, however, distinguish this bulk endpoint from siblings like get_semrush_keyword_difficulty or post_dataforseo_labs_google_keyword_overview_live.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

It states the 1,000-keyword bulk limit, which implies when the endpoint is appropriate, but gives no explicit when-to-use/when-not-to-use guidance and names no alternative sibling for single-keyword or cross-source lookups. An agent must infer the routing decision on its own.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

post_dataforseo_labs_google_categories_for_kw_liveCategories for KeywordsB
Destructive
Inspect

This endpoint will provide you with Google product and service categories related for each specified keyword. You can indicate a maximum of 1,000 keywords in one API request.

Usage-based billing; Default request estimate: $0.1356 USD (not a fixed price). Account-specific pricing and final settlement may differ.

ParametersJSON Schema
NameRequiredDescriptionDefault
bodyNo

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

B3/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare openWorld and non-idempotent, but the destructiveHint=true / readOnlyHint=false pair is counterintuitive for an endpoint whose description says it merely 'provides' category data; the description never explains that the flag reflects usage-based billing rather than data mutation. It does add genuinely useful behavior the annotations lack: the 1,000-keyword request cap and a default cost estimate of $0.1356 USD. That pricing disclosure is real added value, but the destructive framing is left unexplained.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The core sentence is front-loaded and the limit sentence is short and useful. The embedded pricing comment block adds a third section of boilerplate, but it is clearly delimited and only minimally interrupts the two substantive sentences.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

An output schema exists, so return values need not be described, and the pricing note covers the cost dimension. However, for a paid live endpoint the description omits the prerequisites (language selection) and any positioning against the several sibling keyword-category tools, leaving the destructive annotation unexplained despite it being the most surprising signal.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is reported at 0% for the top-level body parameter, so the description carries the burden and largely fails it. The only parameter fact offered, the 1,000-keyword maximum, is already stated in the nested keywords description, and nothing is said about the tag field, language_code/language_name alternatives, or the required-inside-item quirk that the empty top-level required array obscures.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific verb and resource: it returns Google product and service categories for each specified keyword. An agent can distinguish this from the nearby post_dataforseo_labs_google_categories_for_domain_live and post_dataforseo_labs_google_keywords_for_categories_live, since the input unit (keywords) is named. It stops short of explicitly routing against those siblings, so it is clear but not differentiated.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

There is no when-to-use guidance, no named alternative, and no prerequisite stated (the schema requires language_code or language_name on each body item, and keywords itself is marked required inside the item, while top-level required is empty). The only usage-relevant fact given is the 1,000-keyword ceiling, which is also present in the schema. An agent gets no help deciding between this and the many other keyword/category endpoints.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

post_dataforseo_labs_google_historical_keyword_data_liveHistorical Keyword DataB
Destructive
Inspect

‌‌  This endpoint provides Google historical keyword data for specified keywords, including search volume, cost-per-click, competition values for paid search, monthly searches, and search volume trends. You can get historical keyword data since August, 2021, depending on keywords along with location and language combination. You can find the list of supported locations and languages here.

Usage-based billing; Default request estimate: $0.1356 USD (not a fixed price). Account-specific pricing and final settlement may differ.

ParametersJSON Schema
NameRequiredDescriptionDefault
bodyNo

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

B3.2/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare the safety profile (readOnlyHint=false, destructiveHint=true, openWorldHint=true), so the bar is lower. The description adds genuinely useful context beyond the schema: historical coverage start (August 2021) and a usage-based billing estimate ($0.1356 default). It does not reconcile the destructive/readOnly annotations with what is plainly a data-retrieval endpoint, nor mention auth or rate limits.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Purpose is front-loaded in the first sentence and the whole body is short. The pricing block earns its place as cost context, though the leading zero-width characters before the first sentence are noise.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

An output schema exists, so return values need not be explained, and the annotations cover behavior. The description covers data meaning, historical range, and cost, but omits the batch/array request mechanics and the relationship to the near-identical non-historical siblings, leaving selection ambiguity.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Top-level schema description coverage is reported at 0% (the single 'body' property is undocumented), but the nested item properties carry very rich descriptions. The description compensates partially by naming keywords, location, and language, matching the request fields, though it says nothing about the array/body wrapper or the 700-keyword / 80-character limits.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description names a specific verb and resource ('provides Google historical keyword data for specified keywords') and enumerates the returned metrics (search volume, CPC, paid-competition values, monthly searches, trends), so an agent knows exactly what it gets. The 'historical' qualifier implicitly distinguishes it from the non-historical sibling post_dataforseo_labs_google_keyword_overview_live, but no sibling is named explicitly.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

It states data coverage (since August 2021) and that availability varies by keyword/location/language, but never says when to pick this tool over alternatives such as post_dataforseo_labs_google_keyword_overview_live or post_dataforseo_keywords_trends_explore_live. No when-not guidance or prerequisite conditions are given.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

post_dataforseo_labs_google_keyword_ideas_liveKeyword IdeasB
Destructive
Inspect

‌ The Keyword Ideas endpoint provides search terms that are relevant to the product or service categories of the specified keywords. The algorithm selects the keywords which fall into the same categories as the seed keywords specified in a POST array.

Usage-based billing; Default request estimate: $0.132 USD (not a fixed price). Account-specific pricing and final settlement may differ.

ParametersJSON Schema
NameRequiredDescriptionDefault
bodyNo

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

B3.2/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare openWorldHint, non-idempotent, and destructive/readOnly=false, so the safety profile is largely covered by structured data and nothing here contradicts it. The description adds genuinely useful cost transparency via the usage-based billing note ($0.132 default estimate), but omits other material behaviors such as the required location/language pairing and the double-charge when include_clickstream_data is enabled.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two substantive sentences plus a pricing block, front-loaded with the core purpose and free of filler. The pricing banner is boilerplate but short and informative; the leading stray character is a minor formatting blemish.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

An output schema exists, so return values need not be described, and the pricing note covers cost. Still missing for an agent to use it confidently are differentiation from the sibling keyword endpoints and confirmation of the location/language requirement, which the schema forces but the description never signals.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Only one top-level parameter (body) exists, and the schema's nested property descriptions are extremely detailed, so the schema carries the parameter burden. The description adds just one hint ('seed keywords specified in a POST array'), which does not compensate for the reported 0% coverage at the top level nor mention the required keywords/location fields.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific verb and resource: it generates search terms ('keyword ideas') relevant to the categories of the seed keywords supplied. It explains the selection algorithm (same-category matching), which separates it conceptually from siblings. However, it never names or contrasts with the very similar siblings (post_dataforseo_labs_google_keyword_suggestions_live, post_dataforseo_labs_google_related_keywords_live), so an agent must infer the difference.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

There is no when-to-use / when-not-to-use guidance and no mention of alternatives, despite a crowded sibling set of near-identical keyword-expansion endpoints. The description only says what the endpoint does, leaving the agent to guess which of the several keyword endpoints to select.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

post_dataforseo_labs_google_keyword_overview_liveKeyword OverviewB
Destructive
Inspect

‌‌  This endpoint provides Google keyword data for specified keywords. For each keyword, you will receive current cost-per-click, competition values for paid search, search volume, search intent, monthly searches, as well as SERP and backlink information. Additionally, you can obtain clickstream data, such as clickstream search volume, by specifying the include_clickstream_data parameter.

Usage-based billing; Default request estimate: $0.0254 USD (not a fixed price). Account-specific pricing and final settlement may differ.

ParametersJSON Schema
NameRequiredDescriptionDefault
bodyNo

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

B3.2/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations declare readOnlyHint=false, destructiveHint=true, and idempotentHint=false, yet the description neither explains that destructive framing nor notes auth/permission needs. It does add genuinely useful context not in the annotations: the ~$0.0254 default cost estimate and the doubling of price when include_clickstream_data is enabled.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two front-loaded sentences that lead with what data is returned, plus a clearly delimited pricing boilerplate block. No wasted prose, though the boilerplate is not the description's core job.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

An output schema exists, so return-value detail is not required, and the tool is a single-parameter live query. However, the description omits the input constraint pairs the schema enforces (language_code/language_name and location_code/location_name are each required in some combination), which an agent needs to call it successfully.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The top-level recommended parameter 'body' has no description of its own (0% coverage per the signals), and the description adds only the include_clickstream_data behavior. The nested oneOf schema is in fact well documented, so the description neither compensates for nor detracts from the schema; a baseline 3 fits.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb ('provides') and resource ('Google keyword data for specified keywords') and enumerates the returned metrics (CPC, competition, search volume, search intent, monthly searches, SERP/backlink info). Clear enough to call, but it never distinguishes itself from sibling keyword tools such as keyword_ideas, keyword_suggestions, or google_search_intent.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No when-to-use guidance, no prerequisites, and no routing against the many sibling keyword endpoints. The only conditional hint is that clickstream data can be obtained by setting include_clickstream_data, which is a parameter note rather than usage guidance.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

post_dataforseo_labs_google_keywords_for_categories_liveKeywords For CategoriesB
Destructive
Inspect

‌ This endpoint will provide you with a list of keywords relevant to the specified product categories. You will get the search volume rate for the last month, search volume trend for the previous 12 months, as well as current cost-per-click and competition values for each keyword.

Usage-based billing; Default request estimate: $0.1356 USD (not a fixed price). Account-specific pricing and final settlement may differ.

ParametersJSON Schema
NameRequiredDescriptionDefault
bodyNo

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

B3/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint=false, destructiveHint=true, openWorldHint=true and idempotentHint=false, so the safety profile is covered structurally. The description adds useful behavioral context by disclosing billing (default estimate $0.1356, usage-based, not fixed), which matters for a paid live call; it says nothing about auth, rate limits, or pagination limits beyond what the schema carries.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Purpose is front-loaded in a single compact sentence followed by the returned-metric list, with no filler. Minor detraction from a stray zero-width character at the start and a pricing block that reads as injected boilerplate rather than authored prose.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

An output schema exists, so return values need not be re-explained (the description does so anyway, mildly redundantly). For a schema this complex — one nested body object with fifteen properties and implicit required-field rules — the description is thin, leaving the agent to discover the category/language/location requirements only inside the schema.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Top-level schema description coverage is 0% and the description never discusses the body payload. The phrase 'specified product categories' loosely maps to category_codes, but the required language/language_code and location/location_code pairing, pagination via offset_token, and the filter semantics are left entirely to the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific verb and resource: it returns keywords relevant to specified product categories, and enumerates the metrics returned (search volume, 12-month trend, CPC, competition). That is enough to separate it from siblings like keywords_for_app, categories_for_kw, or keyword_ideas, though no sibling is named explicitly.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

There is no when-to-use or when-not-to-use guidance, no mention of alternatives (e.g. keyword_ideas, related_keywords), and no prerequisites such as the language/location pairing or the 20-category cap required by the body. The agent must infer all of this from the sibling list and schema.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

post_dataforseo_labs_google_keyword_suggestions_liveKeyword SuggestionsB
Destructive
Inspect

‌‌ The Keyword Suggestions endpoint provides search queries that include the specified seed keyword.

Usage-based billing; Default request estimate: $0.132 USD (not a fixed price). Account-specific pricing and final settlement may differ.

ParametersJSON Schema
NameRequiredDescriptionDefault
bodyNo

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

B3.2/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare the safety profile (readOnlyHint=false, destructiveHint=true, idempotentHint=false, openWorldHint=true), so the description's main added value is the usage-based billing estimate ($0.132 default), which is genuinely useful behavioral context for a paid API call. It does not explain why the tool is flagged destructive, nor does it repeat or contradict that flag, so it neither contradicts nor enriches the annotation set further.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Purpose is front-loaded in a single tight sentence, followed by a clearly delimited pricing block. Nothing is wasted, though the brevity edges toward under-specification given the tool's numerous siblings.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

An output schema exists, so return values need not be described, and annotations cover the safety profile. What is missing is selection context: for a keyword-research endpoint sitting among roughly ten near-neighbor DataForSEO Labs tools, the agent gets no signal on when this one is preferred.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The description adds nothing about parameters, but the reported 0% coverage reflects only the top-level 'body' property; the nested request fields (keyword, location_code, filters, order_by, include_clickstream_data, etc.) are documented in extensive detail inside the schema itself. Since the schema already carries the parameter semantics, the description adding nothing lands at the baseline rather than a penalty.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description names a specific deliverable ('search queries that include the specified seed keyword'), which is a real verb+resource and even disambiguates it semantically from related-keyword tools. It never names a sibling tool, however, so the agent must infer the boundary with tools like post_dataforseo_labs_google_related_keywords_live or post_dataforseo_labs_google_keyword_ideas_live on its own.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

There is no when-to-use statement, no when-not-to-use statement, and no mention of any alternative among the many keyword-research siblings. The only usage signal is implied by the name and the one-line definition.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

post_dataforseo_labs_google_related_keywords_liveRelated KeywordsB
Destructive
Inspect

The Related Keywords endpoint provides keywords appearing in the “Searches Related to” SERP element.   View the element. You can get up to 4680 keyword ideas by specifying the search depth. Each related keyword comes with the list of relevant product categories, search volume rate for the last month, search volume trend for the previous 12 months, as well as current cost-per-click and competition values.

Usage-based billing; Default request estimate: $0.0156 USD (not a fixed price). Account-specific pricing and final settlement may differ.

ParametersJSON Schema
NameRequiredDescriptionDefault
bodyNo

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

B3.2/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare the operational profile (openWorld, destructive, non-idempotent, non-readOnly), so the bar is lower. The description usefully adds cost context (default $0.0156 estimate, usage-based billing) and enumerates the returned fields (product categories, search volume, trend, CPC, competition). It does not explain why a data-retrieval endpoint carries destructiveHint=true, leaving a mild inconsistency unaddressed.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Purpose is front-loaded in the first sentence, and the bounded pricing block is clearly delimited. The orphaned fragment 'View the element.' is a leftover artifact that earns nothing, but overall the text is tight and appropriately sized.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Because an output schema exists, return values need not be explained, and cost is covered. However, the description omits usage routing against sibling keyword tools and any mention of the location/language requirement, leaving gaps for an agent selecting and invoking this among ~60 siblings.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Reported top-level schema coverage is 0%, but the sole top-level parameter ('body') embeds a nested schema that richly documents keyword, depth, limit, filters, and location/language fields. The description adds the 'search depth' concept and the 4680-keyword ceiling, overlapping what the nested schema already states, but does not surface the required location/language selection constraints.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description names a specific verb+resource ('The Related Keywords endpoint provides keywords') and identifies the data source ('Searches Related to' SERP element), which separates it from sibling keyword tools like keyword_ideas or keyword_suggestions. It does not explicitly name those siblings, but the source-of-data framing makes the purpose distinguishable.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

There is no when-to-use guidance and no routing against the many sibling keyword endpoints (keyword_ideas, keyword_suggestions, keyword_overview). The description describes the endpoint's output but never states the condition under which an agent should prefer it over those alternatives.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

post_dataforseo_labs_google_search_intent_liveSearch IntentB
Destructive
Inspect

‌ This endpoint will provide you with search intent data for up to 1,000 keywords. For each keyword that you specify when setting a task, the API will return the keyword’s search intent and intent probability. Besides the highest probable search intent, the results will also provide you with other likely search intent(s) and their probability.

Usage-based billing; Default request estimate: $0.0073 USD (not a fixed price). Account-specific pricing and final settlement may differ.

ParametersJSON Schema
NameRequiredDescriptionDefault
bodyNo

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

B3.4/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations declare readOnlyHint=false, destructiveHint=true, idempotentHint=false and openWorldHint=true, so the safety profile is already carried structurally. The description adds genuinely decision-relevant context beyond that: per-request usage-based cost (~$0.0073) and variable account pricing, which matters for a billed live call. It does not, however, explain the non-idempotent/destructive annotation, leaving a mild unexplained tension with the 'provide you with data' framing.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

One tight sentence covering the operation, the per-keyword granularity, and the result shape, followed by a pricing block. There is a stray leading whitespace character and the billing banner is boilerplate, but the core content is front-loaded and waste is minimal.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

An output schema exists, so return values need not be explained, and the description does state the input ceiling and cost. What remains missing for a live, paid, non-idempotent endpoint is any routing guidance against the many sibling keyword endpoints and any note on batching or latency behavior.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Top-level schema description coverage is 0% (the single body parameter is undocumented), but the nested properties for 'keywords' and 'tag' carry rich descriptions, and the description restates the meaningful constraint that up to 1,000 keywords are accepted. It adds little else — requiredness, lowercasing, and encoding come only from the schema. Baseline 3 given one parameter with schema-side detail.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific verb and resource: obtain search intent data (intent + probability, plus secondary intents) for up to 1,000 keywords. This is distinguishable from sibling Labs endpoints like keyword_overview or keyword_ideas by subject matter, though the description never names or contrasts itself against those alternatives.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

There is no when-to-use guidance: no statement of when search-intent classification is the right choice versus keyword_volume, keyword_suggestions, or the AI keyword tools in the sibling list. The only usage-adjacent information is the 1,000-keyword input cap, which is a limit rather than a selection criterion.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

post_dataforseo_labs_google_top_searches_liveTop SearchesC
Destructive
Inspect

‌‌ The Top Searches endpoint of DataForSEO Labs API can provide you with over 7 billion keywords from the DataForSEO Keyword Database. Each keyword in the API response is provided with a set of relevant keyword data with Google Ads metrics, product categories, and Google SERP data.

Usage-based billing; Default request estimate: $0.1356 USD (not a fixed price). Account-specific pricing and final settlement may differ.

ParametersJSON Schema
NameRequiredDescriptionDefault
bodyNo

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

C2.8/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare the safety profile (readOnlyHint=false, destructiveHint=true, openWorldHint=true), so the description's lower burden is met partly by the added pricing context ('Default request estimate: $0.1356 USD', not a fixed price). It does not explain why the operation is flagged destructive, whether the request is billed/rate-limited beyond the estimate, or what happens on failure. Given annotation coverage, a 3 is appropriate.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two short sentences plus a pricing note; front-loaded with the endpoint identity and reasonably free of waste. The pricing block is boilerplate but compact.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

An output schema exists, so return-value explanation is not required, and annotations cover safety. But for a complex, paid, location-scoped keyword API the description omits what the tool conceptually returns and any usage context, leaving gaps an agent would need to close from the schema alone.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is reported at 0% for the top-level 'body' parameter, so the description carries the burden of compensating and does not. It says nothing about the location/language requirement, filters, limit/offset, or the offset_token pagination behavior. The rich nested schema descriptions help, but the description itself adds no parameter meaning.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose3/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description names the endpoint and says it returns keywords from the DataForSEO Keyword Database with Google Ads metrics, product categories, and SERP data. However, it never explains what 'Top Searches' actually means functionally (most popular searches for a location/language) and offers no differentiation from the many sibling keyword tools such as google_keyword_ideas_live or google_related_keywords_live. The purpose is implied but marketing-flavored rather than precise.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

There is no when-to-use guidance, no prerequisites, and no mention of alternatives among the dozens of sibling DataForSEO Labs endpoints. The agent is left to infer entirely from the name and the mass of siblings.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

useRun an AIsa operationC
Destructive
Inspect

deprecated, use batch_use instead

ParametersJSON Schema
NameRequiredDescriptionDefault
argumentsNoArguments matching input_schema / arguments_schema
search_idNosearch_id from the search that found this operation
operation_idYesoperation_id as returned by search
max_price_usdNoRefuse the call before any spend if its quoted price is above this many USD

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

C2.8/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint=false, destructiveHint=true, and openWorldHint=true, so the agent knows this is a state-changing, open-world operation. The description adds only the deprecation status and says nothing about what gets mutated, spend behavior (despite a max_price_usd param), or authorization needs.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

A single clause with zero waste; the deprecation notice and the replacement are front-loaded. It is terse by design for a deprecated endpoint, though it is under-specified rather than optimally efficient.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Has an output schema and annotations, which reduces the burden, but a 4-parameter operation tool with a deprecation notice gives no information about what it executes or whether it remains functional. For an agent deciding between this and batch_use, the description is thin.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so all four parameters (operation_id, arguments, search_id, max_price_usd) are already documented in the schema. The description adds no parameter meaning on top, so the baseline 3 applies.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose2/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description never states what the tool does — no verb or resource. It only labels the tool as deprecated and points to a replacement, leaving the actual capability ('Run an AIsa operation' from the title) unexplained. An agent must infer the purpose from the title and schema alone.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

It explicitly routes the agent to the alternative ('use batch_use instead'), which is exactly the guidance needed for a deprecated tool. It doesn't explain when, if ever, this tool should still be called (e.g., during a migration window), so it stops short of a 5.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

  1. 28 tool updates
    • Addedaccount
    • Removedget_details
    • Changedpost_dataforseo_keywords_bing_audience_live1 field changed
      • changedInput schema / properties / body / items / oneOf
        Previous value: -[
        -  {
        -    "example": [
        -      {
        -        "age": [
        -          "twenty_five_to_thirty_four",
        -          "eighteen_to_twenty_four",
        -          "unknown"
        -        ],
        -        "bid": 1,
        -        "daily_budget": 24,
        -        "gender": [
        -          "male"
        -        ],
        -        "industry": [
        -          "806303407",
        -          "806301758"
        -        ],
        -        "job_function": [
        -          "806298607"
        -        ],
        -        "location_coordinate": "29.6821525,-82.4098881,100"
        -      }
        -    ],
        -    "properties": {
        -      "age": {
        -        "description": "<em>selection of age ranges for targeting</em><br>possible values: <code>eighteen_to_twenty_four</code>, <code>fifty_to_sixty_four</code>, <code>sixty_five_and_above</code>, <code>thirteen_to_seventeen</code>, <code>thirty_five_to_forty_nine</code>, <code>twenty_five_to_thirty_four</code>, <code>unknown</code>, <code>zero_to_twelve</code>",
        -        "items": {
        -          "type": "string"
        -        },
        -        "type": [
        -          "array",
        -          "null"
        -        ]
        -      },
        -      "bid": {
        -        "description": "<em>desired bid setting value in USD</em><br>maximum value: 1000",
        -        "type": [
        -          "number",
        -          "null"
        -        ]
        -      },
        -      "daily_budget": {
        -        "description": "<em>daily campaign budget value in USD</em><br>maximum value: 10000",
        -        "type": [
        -          "number",
        -          "null"
        -        ]
        -      },
        -      "gender": {
        -        "description": "<em>gender to target</em><br>possible values: <code>male</code>, <code>female</code>, <code>unknown</code>",
        -        "items": {
        -          "type": "string"
        -        },
        -        "type": [
        -          "array",
        -          "null"
        -        ]
        -      },
        -      "industry": {
        -        "description": "<em>industry of LinkedIn profile targeting</em><p>if you use this field, you can receive the list of available industry names  with industry_id by making a separate request to the https://api.dataforseo.com/v3/keywords_data/bing/audience_estimation/industries<p>example: <code>806301758</code>",
        -        "items": {
        -          "type": "string"
        -        },
        -        "type": [
        -          "array",
        -          "null"
        -        ]
        -      },
        -      "job_function": {
        -        "description": "<em>job function of LinkedIn profile targeting</em><p>if you use this field, you can receive the list of available job function names  with job_function_id by making a separate request to the https://api.dataforseo.com/v3/keywords_data/bing/audience_estimation/job_functions<p>example: <code>806300451</code>",
        -        "items": {
        -          "type": "string"
        -        },
        -        "type": [
        -          "array",
        -          "null"
        -        ]
        -      },
        -      "location_code": {
        -        "description": "<em>search engine location code</em><br><strong>required field if you don't specify</strong> <code>location_name</code> or <code>location_coordinate</code><br><strong>if you use this field, you don't need to specify <code>location_name</code> or <code>location_coordinate</code></strong><br>you can receive the list of available locations of the search engines with their <code>location_code</code> by making a separate request to <code>https://api.dataforseo.com/v3/keywords_data/bing/locations</code><br>example:<br><code class=\"long-string\">2840</code>",
        -        "type": "integer"
        -      },
        -      "location_coordinate": {
        -        "description": "<em>GPS coordinates of a location</em><br><strong>required field if you don't specify</strong> <code>location_name</code> or <code>location_code</code><br><strong>if you use this field, you don't need to specify <code>location_name</code> or <code>location_code</code></strong><br><code>location_coordinate</code> parameter should be specified in the <em>\"latitude,longitude,radius (in km)\"</em> format<br><strong>the data will be provided for the country the specified coordinates belong to</strong><br>example:<br><code class=\"long-string\">29.6821525,-82.4098881,100</code>",
        -        "type": "string"
        -      },
        -      "location_name": {
        -        "description": "<em>full name of search engine location</em><br><strong>required field if you don't specify</strong> <code>location_code</code> or <code>location_coordinate</code><br><strong>if you use this field, you don't need to specify <code>location_code</code> or <code>location_coordinate</code></strong><br>you can receive the list of available locations of the search engine with their <code>location_name</code> by making a separate request to <code>https://api.dataforseo.com/v3/keywords_data/bing/locations</code><br>example:<br><code class=\"long-string\">London,England,United Kingdom</code>",
        -        "type": "string"
        -      }
        -    },
        -    "type": "object"
        -  }
        -]New value: +[
        +  {
        +    "properties": {
        +      "age": {
        +        "description": "<em>selection of age ranges for targeting</em><br>possible values: <code>eighteen_to_twenty_four</code>, <code>fifty_to_sixty_four</code>, <code>sixty_five_and_above</code>, <code>thirteen_to_seventeen</code>, <code>thirty_five_to_forty_nine</code>, <code>twenty_five_to_thirty_four</code>, <code>unknown</code>, <code>zero_to_twelve</code>",
        +        "items": {
        +          "type": "string"
        +        },
        +        "type": [
        +          "array",
        +          "null"
        +        ]
        +      },
        +      "bid": {
        +        "description": "<em>desired bid setting value in USD</em><br>maximum value: 1000",
        +        "type": [
        +          "number",
        +          "null"
        +        ]
        +      },
        +      "daily_budget": {
        +        "description": "<em>daily campaign budget value in USD</em><br>maximum value: 10000",
        +        "type": [
        +          "number",
        +          "null"
        +        ]
        +      },
        +      "gender": {
        +        "description": "<em>gender to target</em><br>possible values: <code>male</code>, <code>female</code>, <code>unknown</code>",
        +        "items": {
        +          "type": "string"
        +        },
        +        "type": [
        +          "array",
        +          "null"
        +        ]
        +      },
        +      "industry": {
        +        "description": "<em>industry of LinkedIn profile targeting</em><p>if you use this field, you can receive the list of available industry names  with industry_id by making a separate request to the https://api.dataforseo.com/v3/keywords_data/bing/audience_estimation/industries<p>example: <code>806301758</code>",
        +        "items": {
        +          "type": "string"
        +        },
        +        "type": [
        +          "array",
        +          "null"
        +        ]
        +      },
        +      "job_function": {
        +        "description": "<em>job function of LinkedIn profile targeting</em><p>if you use this field, you can receive the list of available job function names  with job_function_id by making a separate request to the https://api.dataforseo.com/v3/keywords_data/bing/audience_estimation/job_functions<p>example: <code>806300451</code>",
        +        "items": {
        +          "type": "string"
        +        },
        +        "type": [
        +          "array",
        +          "null"
        +        ]
        +      },
        +      "location_code": {
        +        "description": "<em>search engine location code</em><br><strong>required field if you don't specify</strong> <code>location_name</code> or <code>location_coordinate</code><br><strong>if you use this field, you don't need to specify <code>location_name</code> or <code>location_coordinate</code></strong><br>you can receive the list of available locations of the search engines with their <code>location_code</code> by making a separate request to <code>https://api.dataforseo.com/v3/keywords_data/bing/locations</code><br>example:<br><code class=\"long-string\">2840</code>",
        +        "type": "integer"
        +      },
        +      "location_coordinate": {
        +        "description": "<em>GPS coordinates of a location</em><br><strong>required field if you don't specify</strong> <code>location_name</code> or <code>location_code</code><br><strong>if you use this field, you don't need to specify <code>location_name</code> or <code>location_code</code></strong><br><code>location_coordinate</code> parameter should be specified in the <em>\"latitude,longitude,radius (in km)\"</em> format<br><strong>the data will be provided for the country the specified coordinates belong to</strong><br>example:<br><code class=\"long-string\">29.6821525,-82.4098881,100</code>",
        +        "type": "string"
        +      },
        +      "location_name": {
        +        "description": "<em>full name of search engine location</em><br><strong>required field if you don't specify</strong> <code>location_code</code> or <code>location_coordinate</code><br><strong>if you use this field, you don't need to specify <code>location_code</code> or <code>location_coordinate</code></strong><br>you can receive the list of available locations of the search engine with their <code>location_name</code> by making a separate request to <code>https://api.dataforseo.com/v3/keywords_data/bing/locations</code><br>example:<br><code class=\"long-string\">London,England,United Kingdom</code>",
        +        "type": "string"
        +      }
        +    },
        +    "type": "object"
        +  }
        +]
    • Changedpost_dataforseo_keywords_bing_kw_for_keywords_live1 field changed
      • changedInput schema / properties / body / items / oneOf
        Previous value: -[
        -  {
        -    "example": [
        -      {
        -        "keywords": [
        -          "average page rpm adsense",
        -          "adsense blank ads how long",
        -          "leads and prospects"
        -        ],
        -        "language_name": "English",
        -        "location_name": "United States"
        -      }
        -    ],
        -    "properties": {
        -      "date_from": {
        -        "description": "<em>starting date of the time range</em><br>optional field<br>minimal value: 24 months from today's date;<br>if you don't specify this field, data will be provided for the last 12 months;<br>if <a href=\"/v3/keywords_data/bing/status/\" target=\"_blank\" rel=\"noopener noreferrer\">Status endpoint</a> returns <code>false</code> in the <code>actual_data</code> field, <code>date_from</code> can be set to the month before last and prior;<br>if <a href=\"/v3/keywords_data/bing/status/\" target=\"_blank\" rel=\"noopener noreferrer\">Status endpoint</a> returns <code>true</code> in the <code>actual_data</code> field, <code>date_from</code> can be set to the last month and prior;<br>date format: <code>\"yyyy-mm-dd\"</code><br>example:<br><code>\"2020-01-01\"</code><p><strong>Note:</strong> we do not recommend using a custom time range for the past year's dates",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      },
        -      "date_to": {
        -        "description": "<em>ending date of the time range</em><br>optional field<br>if you don't specify this field, data will be provided for the last 12 months;<br>minimum value: two years back from today’s date;<br>maximum value: one month from today's date;<br>date format: <code>\"yyyy-mm-dd\"</code><br>example:<br><code>\"2020-03-15\"</code><p><strong>Note:</strong> we do not recommend using a custom time range for the past year's dates",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      },
        -      "device": {
        -        "description": "<em>device type</em><br>optional field<br>specify this field if you want to get the data for a particular device type;<br>possible values: <code>all</code>, <code>mobile</code>, <code>desktop</code>, <code>tablet</code><br>default value: <code>all</code>",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      },
        -      "keywords": {
        -        "description": "<em>keywords</em><br><strong>required field</strong><br>you can specify <strong>the maximum of 200 keywords</strong> with each keyword containing no more than <strong>100 characters</strong>;<br>the specified keywords will be converted to lowercase, data will be provided in a separate array<p>learn more about rules and limitations of <code>keyword</code> and <code>keywords</code> fields in DataForSEO APIs in this <a href=\"https://dataforseo.com/help-center/rules-and-limitations-of-keyword-and-keywords-fields-in-dataforseo-apis\" rel=\"noopener noreferrer\" target=\"_blank\">Help Center article</a>",
        -        "items": {
        -          "type": "string"
        -        },
        -        "type": "array"
        -      },
        -      "keywords_negative": {
        -        "description": "<em>keywords negative array</em><br>optional field<br>These keywords will be ignored in the results array;<br>You can specify <strong>a maximum of 200 terms</strong> that you want to exclude from the results;<br>the specified keywords will be converted to lowercase format",
        -        "items": {
        -          "type": "string"
        -        },
        -        "type": [
        -          "array",
        -          "null"
        -        ]
        -      },
        -      "language_code": {
        -        "description": "<em>search engine language code</em><br><strong>required field if you don't specify</strong> <code>language_name</code><br>if you use this field, you don't need to specify <code>language_name</code><br>supported languages:<br><code class=\"long-string\">en</code>, <code>fr</code>, <code>de</code>",
        -        "type": "string"
        -      },
        -      "language_name": {
        -        "description": "<em>full name of search engine language</em><br><strong>required field if you don't specify</strong> <code>language_code</code><br>if you use this field, you don't need to specify <code>language_code</code><br>supported languages:<br><code>English</code>, <code>French</code>, <code>German</code>",
        -        "type": "string"
        -      },
        -      "location_code": {
        -        "description": "<em>search engine location code</em><br><strong>required field if you don't specify</strong> <code>location_name</code> or <code>location_coordinate</code><br><strong>if you use this field, you don't need to specify <code>location_name</code> or <code>location_coordinate</code></strong><br>you can receive the list of available locations of the search engines with their <code>location_code</code> by making a separate request to <code>https://api.dataforseo.com/v3/keywords_data/bing/locations</code><br>example:<br><code class=\"long-string\">2840</code>",
        -        "type": "integer"
        -      },
        -      "location_coordinate": {
        -        "description": "<em>GPS coordinates of a location</em><br><strong>required field if you don't specify</strong> <code>location_name</code> or <code>location_code</code><br><strong>if you use this field, you don't need to specify <code>location_name</code> or <code>location_code</code></strong><br><code>location_coordinate</code> parameter should be specified in the <em>\"latitude,longitude\"</em> format<br><strong>the data will be provided for the country the specified coordinates belong to</strong><br>example:<br><code class=\"long-string\">52.6178549,-155.352142</code>",
        -        "type": "string"
        -      },
        -      "location_name": {
        -        "description": "<em>full name of search engine location</em><br><strong>required field if you don't specify</strong> <code>location_code</code> or <code>location_coordinate</code><br><strong>if you use this field, you don't need to specify <code>location_code</code> or <code>location_coordinate</code></strong><br>you can receive the list of available locations of the search engine with their <code>location_name</code> by making a separate request to <code>https://api.dataforseo.com/v3/keywords_data/bing/locations</code><br>example:<br><code class=\"long-string\">London,England,United Kingdom</code>",
        -        "type": "string"
        -      },
        -      "search_partners": {
        -        "description": "<em>Bing search partners type</em><br>optional field<br>if you specify <code class=\"prettyprint\">true</code>, the results will be delivered for owned, operated, and syndicated networks across Bing, Yahoo, AOL and partner sites that host Bing, AOL, and Yahoo search.<br>default value: <code>false</code> - results are returned for Bing, AOL, and Yahoo search networks",
        -        "type": [
        -          "boolean",
        -          "null"
        -        ]
        -      },
        -      "sort_by": {
        -        "description": "<em>results sorting parameters</em><br>optional field<br>Use these parameters to sort the results by <code>search_volume</code>, <code>cpc</code>, <code>competition</code> or <code>relevance</code> in the descending order<br>default value: <code>relevance</code>",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      },
        -      "tag": {
        -        "description": "<em>user-defined task identifier</em><br>optional field<br><em>the character limit is 255</em><br>you can use this parameter to identify the task and match it with the result<br>you will find the specified <code>tag</code> value in the <code>data</code> object of the response",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      }
        -    },
        -    "type": "object"
        -  }
        -]New value: +[
        +  {
        +    "properties": {
        +      "date_from": {
        +        "description": "<em>starting date of the time range</em><br>optional field<br>minimal value: 24 months from today's date;<br>if you don't specify this field, data will be provided for the last 12 months;<br>if <a href=\"/v3/keywords_data/bing/status/\" target=\"_blank\" rel=\"noopener noreferrer\">Status endpoint</a> returns <code>false</code> in the <code>actual_data</code> field, <code>date_from</code> can be set to the month before last and prior;<br>if <a href=\"/v3/keywords_data/bing/status/\" target=\"_blank\" rel=\"noopener noreferrer\">Status endpoint</a> returns <code>true</code> in the <code>actual_data</code> field, <code>date_from</code> can be set to the last month and prior;<br>date format: <code>\"yyyy-mm-dd\"</code><br>example:<br><code>\"2020-01-01\"</code><p><strong>Note:</strong> we do not recommend using a custom time range for the past year's dates",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "date_to": {
        +        "description": "<em>ending date of the time range</em><br>optional field<br>if you don't specify this field, data will be provided for the last 12 months;<br>minimum value: two years back from today’s date;<br>maximum value: one month from today's date;<br>date format: <code>\"yyyy-mm-dd\"</code><br>example:<br><code>\"2020-03-15\"</code><p><strong>Note:</strong> we do not recommend using a custom time range for the past year's dates",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "device": {
        +        "description": "<em>device type</em><br>optional field<br>specify this field if you want to get the data for a particular device type;<br>possible values: <code>all</code>, <code>mobile</code>, <code>desktop</code>, <code>tablet</code><br>default value: <code>all</code>",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "keywords": {
        +        "description": "<em>keywords</em><br><strong>required field</strong><br>you can specify <strong>the maximum of 200 keywords</strong> with each keyword containing no more than <strong>100 characters</strong>;<br>the specified keywords will be converted to lowercase, data will be provided in a separate array<p>learn more about rules and limitations of <code>keyword</code> and <code>keywords</code> fields in DataForSEO APIs in this <a href=\"https://dataforseo.com/help-center/rules-and-limitations-of-keyword-and-keywords-fields-in-dataforseo-apis\" rel=\"noopener noreferrer\" target=\"_blank\">Help Center article</a>",
        +        "items": {
        +          "type": "string"
        +        },
        +        "type": "array"
        +      },
        +      "keywords_negative": {
        +        "description": "<em>keywords negative array</em><br>optional field<br>These keywords will be ignored in the results array;<br>You can specify <strong>a maximum of 200 terms</strong> that you want to exclude from the results;<br>the specified keywords will be converted to lowercase format",
        +        "items": {
        +          "type": "string"
        +        },
        +        "type": [
        +          "array",
        +          "null"
        +        ]
        +      },
        +      "language_code": {
        +        "description": "<em>search engine language code</em><br><strong>required field if you don't specify</strong> <code>language_name</code><br>if you use this field, you don't need to specify <code>language_name</code><br>supported languages:<br><code class=\"long-string\">en</code>, <code>fr</code>, <code>de</code>",
        +        "type": "string"
        +      },
        +      "language_name": {
        +        "description": "<em>full name of search engine language</em><br><strong>required field if you don't specify</strong> <code>language_code</code><br>if you use this field, you don't need to specify <code>language_code</code><br>supported languages:<br><code>English</code>, <code>French</code>, <code>German</code>",
        +        "type": "string"
        +      },
        +      "location_code": {
        +        "description": "<em>search engine location code</em><br><strong>required field if you don't specify</strong> <code>location_name</code> or <code>location_coordinate</code><br><strong>if you use this field, you don't need to specify <code>location_name</code> or <code>location_coordinate</code></strong><br>you can receive the list of available locations of the search engines with their <code>location_code</code> by making a separate request to <code>https://api.dataforseo.com/v3/keywords_data/bing/locations</code><br>example:<br><code class=\"long-string\">2840</code>",
        +        "type": "integer"
        +      },
        +      "location_coordinate": {
        +        "description": "<em>GPS coordinates of a location</em><br><strong>required field if you don't specify</strong> <code>location_name</code> or <code>location_code</code><br><strong>if you use this field, you don't need to specify <code>location_name</code> or <code>location_code</code></strong><br><code>location_coordinate</code> parameter should be specified in the <em>\"latitude,longitude\"</em> format<br><strong>the data will be provided for the country the specified coordinates belong to</strong><br>example:<br><code class=\"long-string\">52.6178549,-155.352142</code>",
        +        "type": "string"
        +      },
        +      "location_name": {
        +        "description": "<em>full name of search engine location</em><br><strong>required field if you don't specify</strong> <code>location_code</code> or <code>location_coordinate</code><br><strong>if you use this field, you don't need to specify <code>location_code</code> or <code>location_coordinate</code></strong><br>you can receive the list of available locations of the search engine with their <code>location_name</code> by making a separate request to <code>https://api.dataforseo.com/v3/keywords_data/bing/locations</code><br>example:<br><code class=\"long-string\">London,England,United Kingdom</code>",
        +        "type": "string"
        +      },
        +      "search_partners": {
        +        "description": "<em>Bing search partners type</em><br>optional field<br>if you specify <code class=\"prettyprint\">true</code>, the results will be delivered for owned, operated, and syndicated networks across Bing, Yahoo, AOL and partner sites that host Bing, AOL, and Yahoo search.<br>default value: <code>false</code> - results are returned for Bing, AOL, and Yahoo search networks",
        +        "type": [
        +          "boolean",
        +          "null"
        +        ]
        +      },
        +      "sort_by": {
        +        "description": "<em>results sorting parameters</em><br>optional field<br>Use these parameters to sort the results by <code>search_volume</code>, <code>cpc</code>, <code>competition</code> or <code>relevance</code> in the descending order<br>default value: <code>relevance</code>",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "tag": {
        +        "description": "<em>user-defined task identifier</em><br>optional field<br><em>the character limit is 255</em><br>you can use this parameter to identify the task and match it with the result<br>you will find the specified <code>tag</code> value in the <code>data</code> object of the response",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      }
        +    },
        +    "type": "object"
        +  }
        +]
    • Changedpost_dataforseo_keywords_bing_kw_for_site_live1 field changed
      • changedInput schema / properties / body / items / oneOf
        Previous value: -[
        -  {
        -    "example": [
        -      {
        -        "language_code": "en",
        -        "location_code": 2840,
        -        "target": "dataforseo.com"
        -      }
        -    ],
        -    "properties": {
        -      "date_from": {
        -        "description": "<em>starting date of the time range</em><br>optional field<br>minimal value: 24 months from today's date;<br>if you don't specify this field, data will be provided for the last 12 months;<br>if <a href=\"/v3/keywords_data/bing/status/\" target=\"_blank\" rel=\"noopener noreferrer\">Status endpoint</a> returns <code>false</code> in the <code>actual_data</code> field, <code>date_from</code> can be set to the month before last and prior;<br>if <a href=\"/v3/keywords_data/bing/status/\" target=\"_blank\" rel=\"noopener noreferrer\">Status endpoint</a> returns <code>true</code> in the <code>actual_data</code> field, <code>date_from</code> can be set to the last month and prior;<br>date format: <code>\"yyyy-mm-dd\"</code><br>example:<br><code>\"2020-01-01\"</code><p><strong>Note:</strong> we do not recommend using a custom time range for the past year's dates",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      },
        -      "date_to": {
        -        "description": "<em>ending date of the time range</em><br>optional field<br>if you don't specify this field, data will be provided for the last 12 months;<br>minimum value: two years back from today’s date;<br>maximum value: one month from today's date;<br><strong>note:</strong> we do not recommend using a custom time range for the past year's dates;<br>date format: <code>\"yyyy-mm-dd\"</code><br>example:<br><code>\"2020-03-15\"</code><p><strong>Note:</strong> we do not recommend using a custom time range for the past year's dates",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      },
        -      "device": {
        -        "description": "<em>device type</em><br>optional field<br>specify this field if you want to get the data for a particular device typepossible values: <code>all</code>, <code>mobile</code>, <code>desktop</code>, <code>tablet</code><br>default value: <code>all</code>",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      },
        -      "keywords_negative": {
        -        "description": "<em>keywords negative array</em><br>optional field<br>These keywords will be ignored in the results array;<br>You can specify <strong>a maximum of 200 terms</strong> that you want to exclude from the results;<br>the specified keywords will be converted to lowercase format",
        -        "items": {
        -          "type": "string"
        -        },
        -        "type": [
        -          "array",
        -          "null"
        -        ]
        -      },
        -      "language_code": {
        -        "description": "<em>search engine language code</em><br><strong>required field if you don't specify</strong> <code>language_name</code><br>if you use this field, you don't need to specify <code>language_name</code><br>supported languages:<br><code class=\"long-string\">en</code>, <code>fr</code>, <code>de</code>",
        -        "type": "string"
        -      },
        -      "language_name": {
        -        "description": "<em>full name of search engine language</em><br><strong>required field if you don't specify</strong> <code>language_code</code><br>if you use this field, you don't need to specify <code>language_code</code><br>supported languages:<br><code>English</code>, <code>French</code>, <code>German</code>",
        -        "type": "string"
        -      },
        -      "location_code": {
        -        "description": "<em>search engine location code</em><br><strong>required field if you don't specify</strong> <code>location_name</code> or <code>location_coordinate</code><br><strong>if you use this field, you don't need to specify <code>location_name</code> or <code>location_coordinate</code></strong><br>you can receive the list of available locations of the search engines with their <code>location_code</code> by making a separate request to <code>https://api.dataforseo.com/v3/keywords_data/bing/locations</code><br>example:<br><code class=\"long-string\">2840</code>",
        -        "type": "integer"
        -      },
        -      "location_coordinate": {
        -        "description": "<em>GPS coordinates of a location</em><br><strong>required field if you don't specify</strong> <code>location_name</code> or <code>location_code</code><br><strong>if you use this field, you don't need to specify <code>location_name</code> or <code>location_code</code></strong><br><code>location_coordinate</code> parameter should be specified in the <em>\"latitude,longitude\"</em> format<br><strong>the data will be provided for the country the specified coordinates belong to</strong><br>example:<br><code class=\"long-string\">52.6178549,-155.352142</code>",
        -        "type": "string"
        -      },
        -      "location_name": {
        -        "description": "<em>full name of search engine location</em><br><strong>required field if you don't specify</strong> <code>location_code</code> or <code>location_coordinate</code><br><strong>if you use this field, you don't need to specify <code>location_code</code> or <code>location_coordinate</code></strong><br>you can receive the list of available locations of the search engine with their <code>location_name</code> by making a separate request to <code>https://api.dataforseo.com/v3/keywords_data/bing/locations</code><br>example:<br><code class=\"long-string\">London,England,United Kingdom</code>",
        -        "type": "string"
        -      },
        -      "search_partners": {
        -        "description": "<em>Bing search partners type</em><br>optional field<br>if you specify <code class=\"prettyprint\">true</code>, the results will be delivered for owned, operated, and syndicated networks across Bing, Yahoo, AOL and partner sites that host Bing, AOL, and Yahoo search.<br>default value: <code>false</code> - results are returned for Bing, AOL, and Yahoo search networks",
        -        "type": [
        -          "boolean",
        -          "null"
        -        ]
        -      },
        -      "sort_by": {
        -        "description": "<em>results sorting parameters</em><br>optional field<br>Use these parameters to sort the results by <code>search_volume</code>, <code>cpc</code>, <code>competition</code> or <code>relevance</code> in the descending order<br>default value: <code>relevance</code>",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      },
        -      "tag": {
        -        "description": "<em>user-defined task identifier</em><br>optional field<br><em>the character limit is 255</em><br>you can use this parameter to identify the task and match it with the result<br>you will find the specified <code>tag</code> value in the <code>data</code> object of the response",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      },
        -      "target": {
        -        "description": "<em>domain or URL</em><br><strong>required field</strong><br>the domain name or URL of the target website",
        -        "type": "string"
        -      }
        -    },
        -    "type": "object"
        -  }
        -]New value: +[
        +  {
        +    "properties": {
        +      "date_from": {
        +        "description": "<em>starting date of the time range</em><br>optional field<br>minimal value: 24 months from today's date;<br>if you don't specify this field, data will be provided for the last 12 months;<br>if <a href=\"/v3/keywords_data/bing/status/\" target=\"_blank\" rel=\"noopener noreferrer\">Status endpoint</a> returns <code>false</code> in the <code>actual_data</code> field, <code>date_from</code> can be set to the month before last and prior;<br>if <a href=\"/v3/keywords_data/bing/status/\" target=\"_blank\" rel=\"noopener noreferrer\">Status endpoint</a> returns <code>true</code> in the <code>actual_data</code> field, <code>date_from</code> can be set to the last month and prior;<br>date format: <code>\"yyyy-mm-dd\"</code><br>example:<br><code>\"2020-01-01\"</code><p><strong>Note:</strong> we do not recommend using a custom time range for the past year's dates",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "date_to": {
        +        "description": "<em>ending date of the time range</em><br>optional field<br>if you don't specify this field, data will be provided for the last 12 months;<br>minimum value: two years back from today’s date;<br>maximum value: one month from today's date;<br><strong>note:</strong> we do not recommend using a custom time range for the past year's dates;<br>date format: <code>\"yyyy-mm-dd\"</code><br>example:<br><code>\"2020-03-15\"</code><p><strong>Note:</strong> we do not recommend using a custom time range for the past year's dates",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "device": {
        +        "description": "<em>device type</em><br>optional field<br>specify this field if you want to get the data for a particular device typepossible values: <code>all</code>, <code>mobile</code>, <code>desktop</code>, <code>tablet</code><br>default value: <code>all</code>",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "keywords_negative": {
        +        "description": "<em>keywords negative array</em><br>optional field<br>These keywords will be ignored in the results array;<br>You can specify <strong>a maximum of 200 terms</strong> that you want to exclude from the results;<br>the specified keywords will be converted to lowercase format",
        +        "items": {
        +          "type": "string"
        +        },
        +        "type": [
        +          "array",
        +          "null"
        +        ]
        +      },
        +      "language_code": {
        +        "description": "<em>search engine language code</em><br><strong>required field if you don't specify</strong> <code>language_name</code><br>if you use this field, you don't need to specify <code>language_name</code><br>supported languages:<br><code class=\"long-string\">en</code>, <code>fr</code>, <code>de</code>",
        +        "type": "string"
        +      },
        +      "language_name": {
        +        "description": "<em>full name of search engine language</em><br><strong>required field if you don't specify</strong> <code>language_code</code><br>if you use this field, you don't need to specify <code>language_code</code><br>supported languages:<br><code>English</code>, <code>French</code>, <code>German</code>",
        +        "type": "string"
        +      },
        +      "location_code": {
        +        "description": "<em>search engine location code</em><br><strong>required field if you don't specify</strong> <code>location_name</code> or <code>location_coordinate</code><br><strong>if you use this field, you don't need to specify <code>location_name</code> or <code>location_coordinate</code></strong><br>you can receive the list of available locations of the search engines with their <code>location_code</code> by making a separate request to <code>https://api.dataforseo.com/v3/keywords_data/bing/locations</code><br>example:<br><code class=\"long-string\">2840</code>",
        +        "type": "integer"
        +      },
        +      "location_coordinate": {
        +        "description": "<em>GPS coordinates of a location</em><br><strong>required field if you don't specify</strong> <code>location_name</code> or <code>location_code</code><br><strong>if you use this field, you don't need to specify <code>location_name</code> or <code>location_code</code></strong><br><code>location_coordinate</code> parameter should be specified in the <em>\"latitude,longitude\"</em> format<br><strong>the data will be provided for the country the specified coordinates belong to</strong><br>example:<br><code class=\"long-string\">52.6178549,-155.352142</code>",
        +        "type": "string"
        +      },
        +      "location_name": {
        +        "description": "<em>full name of search engine location</em><br><strong>required field if you don't specify</strong> <code>location_code</code> or <code>location_coordinate</code><br><strong>if you use this field, you don't need to specify <code>location_code</code> or <code>location_coordinate</code></strong><br>you can receive the list of available locations of the search engine with their <code>location_name</code> by making a separate request to <code>https://api.dataforseo.com/v3/keywords_data/bing/locations</code><br>example:<br><code class=\"long-string\">London,England,United Kingdom</code>",
        +        "type": "string"
        +      },
        +      "search_partners": {
        +        "description": "<em>Bing search partners type</em><br>optional field<br>if you specify <code class=\"prettyprint\">true</code>, the results will be delivered for owned, operated, and syndicated networks across Bing, Yahoo, AOL and partner sites that host Bing, AOL, and Yahoo search.<br>default value: <code>false</code> - results are returned for Bing, AOL, and Yahoo search networks",
        +        "type": [
        +          "boolean",
        +          "null"
        +        ]
        +      },
        +      "sort_by": {
        +        "description": "<em>results sorting parameters</em><br>optional field<br>Use these parameters to sort the results by <code>search_volume</code>, <code>cpc</code>, <code>competition</code> or <code>relevance</code> in the descending order<br>default value: <code>relevance</code>",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "tag": {
        +        "description": "<em>user-defined task identifier</em><br>optional field<br><em>the character limit is 255</em><br>you can use this parameter to identify the task and match it with the result<br>you will find the specified <code>tag</code> value in the <code>data</code> object of the response",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "target": {
        +        "description": "<em>domain or URL</em><br><strong>required field</strong><br>the domain name or URL of the target website",
        +        "type": "string"
        +      }
        +    },
        +    "type": "object"
        +  }
        +]
    • Changedpost_dataforseo_keywords_bing_kw_performance_live1 field changed
      • changedInput schema / properties / body / items / oneOf
        Previous value: -[
        -  {
        -    "example": [
        -      {
        -        "keywords": [
        -          "dataforseo",
        -          "seo",
        -          "ranking"
        -        ],
        -        "language_code": "en",
        -        "location_code": 2840
        -      }
        -    ],
        -    "properties": {
        -      "device": {
        -        "description": "<em>device type</em><br>optional field<br>specify this field if you want to get the data for a particular device typepossible values: <code>desktop</code>, <code>mobile</code>, <code>tablet</code>, <code>all</code><br>default value: <code>all</code>",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      },
        -      "keywords": {
        -        "description": "<em>keywords</em><br><strong>required field</strong><br>The maximum number of keywords you can specify: 1000<br>The maximum number of characters for each keyword: 80<br>The maximum number of words for each keyword phrase: 10<br>the specified keywords will be converted to lowercase, data will be provided in a separate array<p>learn more about rules and limitations of <code>keyword</code> and <code>keywords</code> fields in DataForSEO APIs in this <a href=\"https://dataforseo.com/help-center/rules-and-limitations-of-keyword-and-keywords-fields-in-dataforseo-apis\" rel=\"noopener noreferrer\" target=\"_blank\">Help Center article</a>",
        -        "items": {
        -          "type": "string"
        -        },
        -        "type": "array"
        -      },
        -      "language_code": {
        -        "description": "<em>search engine language code</em><br><strong>required field if you don't specify</strong> <code>language_name</code><br>you can receive the list of available locations and languages by making a separate request to <code>https://api.dataforseo.com/v3/keywords_data/bing/keyword_performance/locations_and_languages</code><br>example:<br><code>\"en\"</code>",
        -        "type": "string"
        -      },
        -      "language_name": {
        -        "description": "<em>full name of search engine language</em><br><strong>required field if you don't specify</strong> <code>language_code</code><br><strong>if you use this field, you don't need to specify <code>language_code</code></strong><br>you can receive the list of available locations and languages by making a separate request to <code>https://api.dataforseo.com/v3/keywords_data/bing/keyword_performance/locations_and_languages</code><br>example:<br><code class=\"long-string\">English</code>",
        -        "type": "string"
        -      },
        -      "location_code": {
        -        "description": "<em>search engine location code</em><br><strong>required field if you don't specify</strong> <code>location_name</code> or <code>location_coordinate</code><br><strong>if you use this field, you don't need to specify <code>location_name</code> or <code>location_coordinate</code></strong><br>you can receive the list of available locations and languages by making a separate request to <code>https://api.dataforseo.com/v3/keywords_data/bing/keyword_performance/locations_and_languages</code><br>example:<br><code>2840</code>",
        -        "type": "integer"
        -      },
        -      "location_coordinate": {
        -        "description": "<em>GPS coordinates of a location</em><br><strong>required field if you don't specify</strong> <code>location_name</code> or <code>location_code</code><br><strong>if you use this field, you don't need to specify <code>location_name</code> or <code>location_code</code></strong><br><code>location_coordinate</code> parameter should be specified in the <em>\"latitude,longitude\"</em> format<br><strong>the data will be provided for the country the specified coordinates belong to</strong><br>example:<br><code class=\"long-string\">52.6178549,-155.352142</code>",
        -        "type": "string"
        -      },
        -      "location_name": {
        -        "description": "<em>full name of search engine location</em><br><strong>required field if you don't specify</strong> <code>location_code</code> or <code>location_coordinate</code><br><strong>if you use this field, you don't need to specify <code>location_code</code> or <code>location_coordinate</code></strong><br>you can receive the list of available locations and languages by making a separate request to <code>https://api.dataforseo.com/v3/keywords_data/bing/keyword_performance/locations_and_languages</code><br>example:<br><code>\"United States\"</code>",
        -        "type": "string"
        -      },
        -      "match": {
        -        "description": "<em>keywords match type</em><br>optional field<br>can take the following values:<br><code>aggregate</code> returns data across all match types;<br><code>broad</code> returns data for all user queries containing the specified keyword with varying word order;<br><code>phrase</code> returns data for all user queries containing the specified keyword with identical word order;<br><code>exact</code> returns data for user query that matches the specified keyword;<strong>Note:</strong> the <code>aggregate</code> match type is applied by default",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      },
        -      "tag": {
        -        "description": "<em>user-defined task identifier</em><br>optional field<br><em>the character limit is 255</em><br>you can use this parameter to identify the task and match it with the result<br>you will find the specified <code>tag</code> value in the <code>data</code> object of the response",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      }
        -    },
        -    "type": "object"
        -  }
        -]New value: +[
        +  {
        +    "properties": {
        +      "device": {
        +        "description": "<em>device type</em><br>optional field<br>specify this field if you want to get the data for a particular device typepossible values: <code>desktop</code>, <code>mobile</code>, <code>tablet</code>, <code>all</code><br>default value: <code>all</code>",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "keywords": {
        +        "description": "<em>keywords</em><br><strong>required field</strong><br>The maximum number of keywords you can specify: 1000<br>The maximum number of characters for each keyword: 80<br>The maximum number of words for each keyword phrase: 10<br>the specified keywords will be converted to lowercase, data will be provided in a separate array<p>learn more about rules and limitations of <code>keyword</code> and <code>keywords</code> fields in DataForSEO APIs in this <a href=\"https://dataforseo.com/help-center/rules-and-limitations-of-keyword-and-keywords-fields-in-dataforseo-apis\" rel=\"noopener noreferrer\" target=\"_blank\">Help Center article</a>",
        +        "items": {
        +          "type": "string"
        +        },
        +        "type": "array"
        +      },
        +      "language_code": {
        +        "description": "<em>search engine language code</em><br><strong>required field if you don't specify</strong> <code>language_name</code><br>you can receive the list of available locations and languages by making a separate request to <code>https://api.dataforseo.com/v3/keywords_data/bing/keyword_performance/locations_and_languages</code><br>example:<br><code>\"en\"</code>",
        +        "type": "string"
        +      },
        +      "language_name": {
        +        "description": "<em>full name of search engine language</em><br><strong>required field if you don't specify</strong> <code>language_code</code><br><strong>if you use this field, you don't need to specify <code>language_code</code></strong><br>you can receive the list of available locations and languages by making a separate request to <code>https://api.dataforseo.com/v3/keywords_data/bing/keyword_performance/locations_and_languages</code><br>example:<br><code class=\"long-string\">English</code>",
        +        "type": "string"
        +      },
        +      "location_code": {
        +        "description": "<em>search engine location code</em><br><strong>required field if you don't specify</strong> <code>location_name</code> or <code>location_coordinate</code><br><strong>if you use this field, you don't need to specify <code>location_name</code> or <code>location_coordinate</code></strong><br>you can receive the list of available locations and languages by making a separate request to <code>https://api.dataforseo.com/v3/keywords_data/bing/keyword_performance/locations_and_languages</code><br>example:<br><code>2840</code>",
        +        "type": "integer"
        +      },
        +      "location_coordinate": {
        +        "description": "<em>GPS coordinates of a location</em><br><strong>required field if you don't specify</strong> <code>location_name</code> or <code>location_code</code><br><strong>if you use this field, you don't need to specify <code>location_name</code> or <code>location_code</code></strong><br><code>location_coordinate</code> parameter should be specified in the <em>\"latitude,longitude\"</em> format<br><strong>the data will be provided for the country the specified coordinates belong to</strong><br>example:<br><code class=\"long-string\">52.6178549,-155.352142</code>",
        +        "type": "string"
        +      },
        +      "location_name": {
        +        "description": "<em>full name of search engine location</em><br><strong>required field if you don't specify</strong> <code>location_code</code> or <code>location_coordinate</code><br><strong>if you use this field, you don't need to specify <code>location_code</code> or <code>location_coordinate</code></strong><br>you can receive the list of available locations and languages by making a separate request to <code>https://api.dataforseo.com/v3/keywords_data/bing/keyword_performance/locations_and_languages</code><br>example:<br><code>\"United States\"</code>",
        +        "type": "string"
        +      },
        +      "match": {
        +        "description": "<em>keywords match type</em><br>optional field<br>can take the following values:<br><code>aggregate</code> returns data across all match types;<br><code>broad</code> returns data for all user queries containing the specified keyword with varying word order;<br><code>phrase</code> returns data for all user queries containing the specified keyword with identical word order;<br><code>exact</code> returns data for user query that matches the specified keyword;<strong>Note:</strong> the <code>aggregate</code> match type is applied by default",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "tag": {
        +        "description": "<em>user-defined task identifier</em><br>optional field<br><em>the character limit is 255</em><br>you can use this parameter to identify the task and match it with the result<br>you will find the specified <code>tag</code> value in the <code>data</code> object of the response",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      }
        +    },
        +    "type": "object"
        +  }
        +]
    • Changedpost_dataforseo_keywords_bing_search_volume_live1 field changed
      • changedInput schema / properties / body / items / oneOf
        Previous value: -[
        -  {
        -    "example": [
        -      {
        -        "keywords": [
        -          "tom and jerry",
        -          "silicon valley",
        -          "spider man"
        -        ],
        -        "language_code": "en",
        -        "location_name": "United States"
        -      }
        -    ],
        -    "properties": {
        -      "date_from": {
        -        "description": "<em>starting date of the time range</em><br>optional field<br>minimal value: 24 months from today's date;<br>if you don't specify this field, data will be provided for the last 12 months;<br>minimum value: two years back from today’s date;<br>if <a href=\"/v3/keywords_data/bing/status/\" target=\"_blank\" rel=\"noopener noreferrer\">Status endpoint</a> returns <code>false</code> in the <code>actual_data</code> field, <code>date_from</code> can be set to the month before last and prior;<br>if <a href=\"/v3/keywords_data/bing/status/\" target=\"_blank\" rel=\"noopener noreferrer\">Status endpoint</a> returns <code>true</code> in the <code>actual_data</code> field, <code>date_from</code> can be set to the last month and prior;<br>date format: <code>\"yyyy-mm-dd\"</code><br>example:<br><code>\"2020-01-01\"</code><strong>Note:</strong> we do not recommend using a custom time range for the past year's dates",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      },
        -      "date_to": {
        -        "description": "<em>ending date of the time range</em><br>optional field<br>if you don't specify this field, data will be provided for the last 12 months;<br>minimum value: two years back from today’s date;<br>maximum value: one month from today's date;<br><strong>note:</strong> we do not recommend using a custom time range for the past year's dates;<br>date format: <code>\"yyyy-mm-dd\"</code><br>example:<br><code>\"2020-03-15\"</code><strong>Note:</strong> we do not recommend using a custom time range for the past year's dates",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      },
        -      "device": {
        -        "description": "<em>device type</em><br>optional field<br>specify this field if you want to get the data for a particular device type;<br>possible values: <code>all</code>, <code>mobile</code>, <code>desktop</code>, <code>tablet</code><br>default value: <code>all</code>",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      },
        -      "keywords": {
        -        "description": "<em>keywords</em><br><strong>required field</strong><br>The maximum number of keywords you can specify: 1000<br>The maximum number of characters for each keyword: 100<br>the specified keywords will be converted to lowercase, data will be provided in a separate arraylearn more about rules and limitations of <code>keyword</code> and <code>keywords</code> fields in DataForSEO APIs in this <a href=\"https://dataforseo.com/help-center/rules-and-limitations-of-keyword-and-keywords-fields-in-dataforseo-apis\" target=\"_blank\" rel=\"noopener noreferrer\">Help Center article</a>",
        -        "items": {
        -          "type": "string"
        -        },
        -        "type": "array"
        -      },
        -      "language_code": {
        -        "description": "<em>search engine language code</em><br><strong>required field if you don't specify</strong> <code>language_name</code><br>if you use this field, you don't need to specify <code>language_name</code><br>supported languages:<br><code class=\"long-string\">en</code>, <code>fr</code>, <code>de</code>",
        -        "type": "string"
        -      },
        -      "language_name": {
        -        "description": "<em>full name of search engine language</em><br><strong>required field if you don't specify</strong> <code>language_code</code><br>if you use this field, you don't need to specify <code>language_code</code><br>supported languages:<br><code>English</code>, <code>French</code>, <code>German</code>",
        -        "type": "string"
        -      },
        -      "location_code": {
        -        "description": "<em>search engine location code</em><br><strong>required field if you don't specify</strong> <code>location_name</code> or <code>location_coordinate</code><br><strong>if you use this field, you don't need to specify <code>location_name</code> or <code>location_coordinate</code></strong><br>you can receive the list of available locations of the search engines with their <code>location_code</code> by making a separate request to <code>https://api.dataforseo.com/v3/keywords_data/bing/locations</code><br>example:<br><code class=\"long-string\">2840</code>",
        -        "type": "integer"
        -      },
        -      "location_coordinate": {
        -        "description": "<em>GPS coordinates of a location</em><br><strong>required field if you don't specify</strong> <code>location_name</code> or <code>location_code</code><br><strong>if you use this field, you don't need to specify <code>location_name</code> or <code>location_code</code></strong><br><code>location_coordinate</code> parameter should be specified in the <em>\"latitude,longitude\"</em> format<br><strong>the data will be provided for the country the specified coordinates belong to</strong><br>example:<br><code class=\"long-string\">52.6178549,-155.352142</code>",
        -        "type": "string"
        -      },
        -      "location_name": {
        -        "description": "<em>full name of search engine location</em><br><strong>required field if you don't specify</strong> <code>location_code</code> or <code>location_coordinate</code><br><strong>if you use this field, you don't need to specify <code>location_code</code> or <code>location_coordinate</code></strong><br>you can receive the list of available locations of the search engine with their <code>location_name</code> by making a separate request to <code>https://api.dataforseo.com/v3/keywords_data/bing/locations</code><br>example:<br><code class=\"long-string\">London,England,United Kingdom</code>",
        -        "type": "string"
        -      },
        -      "search_partners": {
        -        "description": "<em>Bing search partners type</em><br>optional field<br>if you specify <code class=\"prettyprint\">true</code>, the results will be delivered for owned, operated, and syndicated networks across Bing, Yahoo, AOL and partner sites that host Bing, AOL, and Yahoo search.<br>default value: <code>false</code> - results are returned for Bing, AOL, and Yahoo search networks",
        -        "type": [
        -          "boolean",
        -          "null"
        -        ]
        -      },
        -      "sort_by": {
        -        "description": "<em>results sorting parameters</em><br>optional field<br>Use these parameters to sort the results by <code>search_volume</code>, <code>cpc</code>, <code>competition</code> or <code>relevance</code> in the descending order<br>default value: <code>relevance</code>",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      },
        -      "tag": {
        -        "description": "<em>user-defined task identifier</em><br>optional field<br><em>the character limit is 255</em><br>you can use this parameter to identify the task and match it with the result<br>you will find the specified <code>tag</code> value in the <code>data</code> object of the response",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      }
        -    },
        -    "type": "object"
        -  }
        -]New value: +[
        +  {
        +    "properties": {
        +      "date_from": {
        +        "description": "<em>starting date of the time range</em><br>optional field<br>minimal value: 24 months from today's date;<br>if you don't specify this field, data will be provided for the last 12 months;<br>minimum value: two years back from today’s date;<br>if <a href=\"/v3/keywords_data/bing/status/\" target=\"_blank\" rel=\"noopener noreferrer\">Status endpoint</a> returns <code>false</code> in the <code>actual_data</code> field, <code>date_from</code> can be set to the month before last and prior;<br>if <a href=\"/v3/keywords_data/bing/status/\" target=\"_blank\" rel=\"noopener noreferrer\">Status endpoint</a> returns <code>true</code> in the <code>actual_data</code> field, <code>date_from</code> can be set to the last month and prior;<br>date format: <code>\"yyyy-mm-dd\"</code><br>example:<br><code>\"2020-01-01\"</code><strong>Note:</strong> we do not recommend using a custom time range for the past year's dates",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "date_to": {
        +        "description": "<em>ending date of the time range</em><br>optional field<br>if you don't specify this field, data will be provided for the last 12 months;<br>minimum value: two years back from today’s date;<br>maximum value: one month from today's date;<br><strong>note:</strong> we do not recommend using a custom time range for the past year's dates;<br>date format: <code>\"yyyy-mm-dd\"</code><br>example:<br><code>\"2020-03-15\"</code><strong>Note:</strong> we do not recommend using a custom time range for the past year's dates",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "device": {
        +        "description": "<em>device type</em><br>optional field<br>specify this field if you want to get the data for a particular device type;<br>possible values: <code>all</code>, <code>mobile</code>, <code>desktop</code>, <code>tablet</code><br>default value: <code>all</code>",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "keywords": {
        +        "description": "<em>keywords</em><br><strong>required field</strong><br>The maximum number of keywords you can specify: 1000<br>The maximum number of characters for each keyword: 100<br>the specified keywords will be converted to lowercase, data will be provided in a separate arraylearn more about rules and limitations of <code>keyword</code> and <code>keywords</code> fields in DataForSEO APIs in this <a href=\"https://dataforseo.com/help-center/rules-and-limitations-of-keyword-and-keywords-fields-in-dataforseo-apis\" target=\"_blank\" rel=\"noopener noreferrer\">Help Center article</a>",
        +        "items": {
        +          "type": "string"
        +        },
        +        "type": "array"
        +      },
        +      "language_code": {
        +        "description": "<em>search engine language code</em><br><strong>required field if you don't specify</strong> <code>language_name</code><br>if you use this field, you don't need to specify <code>language_name</code><br>supported languages:<br><code class=\"long-string\">en</code>, <code>fr</code>, <code>de</code>",
        +        "type": "string"
        +      },
        +      "language_name": {
        +        "description": "<em>full name of search engine language</em><br><strong>required field if you don't specify</strong> <code>language_code</code><br>if you use this field, you don't need to specify <code>language_code</code><br>supported languages:<br><code>English</code>, <code>French</code>, <code>German</code>",
        +        "type": "string"
        +      },
        +      "location_code": {
        +        "description": "<em>search engine location code</em><br><strong>required field if you don't specify</strong> <code>location_name</code> or <code>location_coordinate</code><br><strong>if you use this field, you don't need to specify <code>location_name</code> or <code>location_coordinate</code></strong><br>you can receive the list of available locations of the search engines with their <code>location_code</code> by making a separate request to <code>https://api.dataforseo.com/v3/keywords_data/bing/locations</code><br>example:<br><code class=\"long-string\">2840</code>",
        +        "type": "integer"
        +      },
        +      "location_coordinate": {
        +        "description": "<em>GPS coordinates of a location</em><br><strong>required field if you don't specify</strong> <code>location_name</code> or <code>location_code</code><br><strong>if you use this field, you don't need to specify <code>location_name</code> or <code>location_code</code></strong><br><code>location_coordinate</code> parameter should be specified in the <em>\"latitude,longitude\"</em> format<br><strong>the data will be provided for the country the specified coordinates belong to</strong><br>example:<br><code class=\"long-string\">52.6178549,-155.352142</code>",
        +        "type": "string"
        +      },
        +      "location_name": {
        +        "description": "<em>full name of search engine location</em><br><strong>required field if you don't specify</strong> <code>location_code</code> or <code>location_coordinate</code><br><strong>if you use this field, you don't need to specify <code>location_code</code> or <code>location_coordinate</code></strong><br>you can receive the list of available locations of the search engine with their <code>location_name</code> by making a separate request to <code>https://api.dataforseo.com/v3/keywords_data/bing/locations</code><br>example:<br><code class=\"long-string\">London,England,United Kingdom</code>",
        +        "type": "string"
        +      },
        +      "search_partners": {
        +        "description": "<em>Bing search partners type</em><br>optional field<br>if you specify <code class=\"prettyprint\">true</code>, the results will be delivered for owned, operated, and syndicated networks across Bing, Yahoo, AOL and partner sites that host Bing, AOL, and Yahoo search.<br>default value: <code>false</code> - results are returned for Bing, AOL, and Yahoo search networks",
        +        "type": [
        +          "boolean",
        +          "null"
        +        ]
        +      },
        +      "sort_by": {
        +        "description": "<em>results sorting parameters</em><br>optional field<br>Use these parameters to sort the results by <code>search_volume</code>, <code>cpc</code>, <code>competition</code> or <code>relevance</code> in the descending order<br>default value: <code>relevance</code>",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "tag": {
        +        "description": "<em>user-defined task identifier</em><br>optional field<br><em>the character limit is 255</em><br>you can use this parameter to identify the task and match it with the result<br>you will find the specified <code>tag</code> value in the <code>data</code> object of the response",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      }
        +    },
        +    "type": "object"
        +  }
        +]
    • Changedpost_dataforseo_keywords_clickstream_bulk_volume_live1 field changed
      • changedInput schema / properties / body / items / oneOf
        Previous value: -[
        -  {
        -    "example": [
        -      {
        -        "keywords": [
        -          "you tube",
        -          "youtube",
        -          "youtub"
        -        ],
        -        "location_code": 2840,
        -        "tag": "test-tag"
        -      }
        -    ],
        -    "properties": {
        -      "keywords": {
        -        "description": "<em>target keywords</em><br><strong>required field</strong><br>UTF-8 encoding<br>maximum number of keywords you can specify in this array: 1000;<br>each keyword should be at least 3 characters long;<br>the keywords will be converted to lowercase format;<br><strong>Note:</strong> certain symbols and characters (e.g., UTF symbols, emojis) are not allowed<br>to learn more about which symbols and characters can be used, please refer to <a href=\"https://dataforseo.com/help-center/using-symbols-in-keywords-when-setting-a-google-ads-task\" target=\"_blank\" rel=\"noopener noreferrer\">this article</a><p>learn more about rules and limitations of <code>keyword</code> and <code>keywords</code> fields in DataForSEO APIs in this <a href=\"https://dataforseo.com/help-center/rules-and-limitations-of-keyword-and-keywords-fields-in-dataforseo-apis\" rel=\"noopener noreferrer\" target=\"_blank\">Help Center article</a>",
        -        "items": {
        -          "type": "string"
        -        },
        -        "type": "array"
        -      },
        -      "location_code": {
        -        "description": "<em>location code</em><br><strong>required field if you don't specify</strong> <code>location_name</code><br><strong>Note:</strong> it is required to specify either <code>location_name</code> or <code>location_code</code><br>you can receive the list of available locations with their <code>location_code</code> by making a separate request to the <br><code>https://api.dataforseo.com/v3/keywords_data/clickstream_data/locations_and_languages</code><br>example:<br><code class=\"long-string\">2840</code>",
        -        "type": "integer"
        -      },
        -      "location_name": {
        -        "description": "<em>full name of the location</em><br><strong>required field if you don't specify</strong> <code>location_code</code><br><strong>Note:</strong> it is required to specify either <code>location_name</code> or <code>location_code</code><br>you can receive the list of available locations with their <code>location_name</code> by making a separate request to the <br><code>https://api.dataforseo.com/v3/keywords_data/clickstream_data/locations_and_languages</code><br>example:<br><code class=\"long-string\">United Kingdom</code>",
        -        "type": "string"
        -      },
        -      "tag": {
        -        "description": "<em>user-defined task identifier</em><br>optional field<br><em>the character limit is 255</em><br>you can use this parameter to identify the task and match it with the result<br>you will find the specified <code>tag</code> value in the <code>data</code> object of the response",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      }
        -    },
        -    "type": "object"
        -  }
        -]New value: +[
        +  {
        +    "properties": {
        +      "keywords": {
        +        "description": "<em>target keywords</em><br><strong>required field</strong><br>UTF-8 encoding<br>maximum number of keywords you can specify in this array: 1000;<br>each keyword should be at least 3 characters long;<br>the keywords will be converted to lowercase format;<br><strong>Note:</strong> certain symbols and characters (e.g., UTF symbols, emojis) are not allowed<br>to learn more about which symbols and characters can be used, please refer to <a href=\"https://dataforseo.com/help-center/using-symbols-in-keywords-when-setting-a-google-ads-task\" target=\"_blank\" rel=\"noopener noreferrer\">this article</a><p>learn more about rules and limitations of <code>keyword</code> and <code>keywords</code> fields in DataForSEO APIs in this <a href=\"https://dataforseo.com/help-center/rules-and-limitations-of-keyword-and-keywords-fields-in-dataforseo-apis\" rel=\"noopener noreferrer\" target=\"_blank\">Help Center article</a>",
        +        "items": {
        +          "type": "string"
        +        },
        +        "type": "array"
        +      },
        +      "location_code": {
        +        "description": "<em>location code</em><br><strong>required field if you don't specify</strong> <code>location_name</code><br><strong>Note:</strong> it is required to specify either <code>location_name</code> or <code>location_code</code><br>you can receive the list of available locations with their <code>location_code</code> by making a separate request to the <br><code>https://api.dataforseo.com/v3/keywords_data/clickstream_data/locations_and_languages</code><br>example:<br><code class=\"long-string\">2840</code>",
        +        "type": "integer"
        +      },
        +      "location_name": {
        +        "description": "<em>full name of the location</em><br><strong>required field if you don't specify</strong> <code>location_code</code><br><strong>Note:</strong> it is required to specify either <code>location_name</code> or <code>location_code</code><br>you can receive the list of available locations with their <code>location_name</code> by making a separate request to the <br><code>https://api.dataforseo.com/v3/keywords_data/clickstream_data/locations_and_languages</code><br>example:<br><code class=\"long-string\">United Kingdom</code>",
        +        "type": "string"
        +      },
        +      "tag": {
        +        "description": "<em>user-defined task identifier</em><br>optional field<br><em>the character limit is 255</em><br>you can use this parameter to identify the task and match it with the result<br>you will find the specified <code>tag</code> value in the <code>data</code> object of the response",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      }
        +    },
        +    "type": "object"
        +  }
        +]
    • Changedpost_dataforseo_keywords_clickstream_global_volume_live1 field changed
      • changedInput schema / properties / body / items / oneOf
        Previous value: -[
        -  {
        -    "example": [
        -      {
        -        "keywords": [
        -          "you tube",
        -          "youtube",
        -          "youtub"
        -        ],
        -        "tag": "test-tag"
        -      }
        -    ],
        -    "properties": {
        -      "keywords": {
        -        "description": "<em>target keywords</em><br><strong>required field</strong><br>UTF-8 encoding<br>maximum number of keywords you can specify in this array: 1000;<br>each keyword should be at least 3 characters long;<br>the keywords will be converted to lowercase format;<br><strong>Note:</strong> certain symbols and characters (e.g., UTF symbols, emojis) are not allowed<br>to learn more about which symbols and characters can be used, please refer to <a href=\"https://dataforseo.com/help-center/using-symbols-in-keywords-when-setting-a-google-ads-task\" target=\"_blank\" rel=\"noopener noreferrer\">this article</a><p>learn more about rules and limitations of <code>keyword</code> and <code>keywords</code> fields in DataForSEO APIs in this <a href=\"https://dataforseo.com/help-center/rules-and-limitations-of-keyword-and-keywords-fields-in-dataforseo-apis\" rel=\"noopener noreferrer\" target=\"_blank\">Help Center article</a>",
        -        "items": {
        -          "type": "string"
        -        },
        -        "type": "array"
        -      },
        -      "tag": {
        -        "description": "<em>user-defined task identifier</em><br>optional field<br><em>the character limit is 255</em><br>you can use this parameter to identify the task and match it with the result<br>you will find the specified <code>tag</code> value in the <code>data</code> object of the response",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      }
        -    },
        -    "type": "object"
        -  }
        -]New value: +[
        +  {
        +    "properties": {
        +      "keywords": {
        +        "description": "<em>target keywords</em><br><strong>required field</strong><br>UTF-8 encoding<br>maximum number of keywords you can specify in this array: 1000;<br>each keyword should be at least 3 characters long;<br>the keywords will be converted to lowercase format;<br><strong>Note:</strong> certain symbols and characters (e.g., UTF symbols, emojis) are not allowed<br>to learn more about which symbols and characters can be used, please refer to <a href=\"https://dataforseo.com/help-center/using-symbols-in-keywords-when-setting-a-google-ads-task\" target=\"_blank\" rel=\"noopener noreferrer\">this article</a><p>learn more about rules and limitations of <code>keyword</code> and <code>keywords</code> fields in DataForSEO APIs in this <a href=\"https://dataforseo.com/help-center/rules-and-limitations-of-keyword-and-keywords-fields-in-dataforseo-apis\" rel=\"noopener noreferrer\" target=\"_blank\">Help Center article</a>",
        +        "items": {
        +          "type": "string"
        +        },
        +        "type": "array"
        +      },
        +      "tag": {
        +        "description": "<em>user-defined task identifier</em><br>optional field<br><em>the character limit is 255</em><br>you can use this parameter to identify the task and match it with the result<br>you will find the specified <code>tag</code> value in the <code>data</code> object of the response",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      }
        +    },
        +    "type": "object"
        +  }
        +]
    • Changedpost_dataforseo_keywords_clickstream_search_volume_live1 field changed
      • changedInput schema / properties / body / items / oneOf
        Previous value: -[
        -  {
        -    "example": [
        -      {
        -        "keywords": [
        -          "you tube",
        -          "youtube",
        -          "youtub"
        -        ],
        -        "language_code": "en",
        -        "location_code": 2840,
        -        "tag": "test-tag"
        -      }
        -    ],
        -    "properties": {
        -      "keywords": {
        -        "description": "<em>target keywords</em><br><strong>required field</strong><br>UTF-8 encoding<br>maximum number of keywords you can specify in this array: 1000<br>the keywords will be converted to lowercase format<p><strong>Note:</strong> certain symbols and characters (e.g., UTF symbols, emojis) are not allowed<br>to learn more about which symbols and characters can be used, please refer to <a href=\"https://dataforseo.com/help-center/using-symbols-in-keywords-when-setting-a-google-ads-task\" target=\"_blank\" rel=\"noopener noreferrer\">this article</a><p>learn more about rules and limitations of <code>keyword</code> and <code>keywords</code> fields in DataForSEO APIs in this <a href=\"https://dataforseo.com/help-center/rules-and-limitations-of-keyword-and-keywords-fields-in-dataforseo-apis\" rel=\"noopener noreferrer\" target=\"_blank\">Help Center article</a>",
        -        "items": {
        -          "type": "string"
        -        },
        -        "type": "array"
        -      },
        -      "language_code": {
        -        "description": "<em>search engine language code</em><br><strong>required field if don’t specify <code>language_name</code></strong><br>you can receive the list of available languages with their <code>language_code</code> by making a separate request to the <code>https://api.dataforseo.com/v3/keywords_data/clickstream_data/locations_and_languages</code><br>example:<br><code class=\"long-string\">en</code>",
        -        "type": "string"
        -      },
        -      "language_name": {
        -        "description": "<em>full name of search engine language</em><br><strong>required field if don’t specify <code>language_code</code></strong><br>you can receive the list of available languages with their <code>language_name</code> by making a separate request to the <code>https://api.dataforseo.com/v3/keywords_data/clickstream_data/locations_and_languages</code><br>example:<br><code class=\"long-string\">English</code>",
        -        "type": "string"
        -      },
        -      "location_code": {
        -        "description": "<em>search engine location code</em><br><strong>required field if you don’t specify <code>location_name</code></strong><br>if you use this field, you can receive the list of available locations with <code>location_code</code> by making a separate request to the <code>https://api.dataforseo.com/v3/keywords_data/clickstream_data/locations_and_languages</code><br>example:<br><code class=\"long-string\">2826</code>",
        -        "type": "integer"
        -      },
        -      "location_name": {
        -        "description": "<em>full name of search engine location</em><br><strong>required field if you don’t specify <code>location_code </code></strong><br>you can receive the list of available locations with <code>location_name</code> by making a separate request to <code>https://api.dataforseo.com/v3/keywords_data/clickstream_data/locations_and_languages</code><br>example:<br><code class=\"long-string\">United Kingdom</code>",
        -        "type": "string"
        -      },
        -      "tag": {
        -        "description": "<em>user-defined task identifier</em><br>optional field<br><em>the character limit is 255</em><br>you can use this parameter to identify the task and match it with the result<br>you will find the specified <code>tag</code> value in the <code>data</code> object of the response",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      },
        -      "use_clickstream": {
        -        "description": "<em>use clickstream data to provide results</em><br>optional field<br>if set to <code>true</code>, you will get DataForSEO search volume values based on clickstream data;<br>if set to <code>false</code>, Bing search volume data will be used to calculate DataForSEO search volume;<br>default value: <code>true</code>;<br><strong>Note:</strong> Bing search volume is available for locations provided in <a href=\"https://docs.dataforseo.com/v3/keywords_data/bing/search_volume_history/locations_and_languages/?bash\" rel=\"noopener noreferrer\" target=\"_blank\">Bing Search Volume History Locations</a> and <a href=\"https://docs.dataforseo.com/v3/keywords_data/bing/locations/?bash\" rel=\"noopener noreferrer\" target=\"_blank\">Bing Ads Locations</a> endpoints; search volume values for any other location are calculated based on clickstream data even if you set this parameter to <code>false</code>",
        -        "type": [
        -          "boolean",
        -          "null"
        -        ]
        -      }
        -    },
        -    "type": "object"
        -  }
        -]New value: +[
        +  {
        +    "properties": {
        +      "keywords": {
        +        "description": "<em>target keywords</em><br><strong>required field</strong><br>UTF-8 encoding<br>maximum number of keywords you can specify in this array: 1000<br>the keywords will be converted to lowercase format<p><strong>Note:</strong> certain symbols and characters (e.g., UTF symbols, emojis) are not allowed<br>to learn more about which symbols and characters can be used, please refer to <a href=\"https://dataforseo.com/help-center/using-symbols-in-keywords-when-setting-a-google-ads-task\" target=\"_blank\" rel=\"noopener noreferrer\">this article</a><p>learn more about rules and limitations of <code>keyword</code> and <code>keywords</code> fields in DataForSEO APIs in this <a href=\"https://dataforseo.com/help-center/rules-and-limitations-of-keyword-and-keywords-fields-in-dataforseo-apis\" rel=\"noopener noreferrer\" target=\"_blank\">Help Center article</a>",
        +        "items": {
        +          "type": "string"
        +        },
        +        "type": "array"
        +      },
        +      "language_code": {
        +        "description": "<em>search engine language code</em><br><strong>required field if don’t specify <code>language_name</code></strong><br>you can receive the list of available languages with their <code>language_code</code> by making a separate request to the <code>https://api.dataforseo.com/v3/keywords_data/clickstream_data/locations_and_languages</code><br>example:<br><code class=\"long-string\">en</code>",
        +        "type": "string"
        +      },
        +      "language_name": {
        +        "description": "<em>full name of search engine language</em><br><strong>required field if don’t specify <code>language_code</code></strong><br>you can receive the list of available languages with their <code>language_name</code> by making a separate request to the <code>https://api.dataforseo.com/v3/keywords_data/clickstream_data/locations_and_languages</code><br>example:<br><code class=\"long-string\">English</code>",
        +        "type": "string"
        +      },
        +      "location_code": {
        +        "description": "<em>search engine location code</em><br><strong>required field if you don’t specify <code>location_name</code></strong><br>if you use this field, you can receive the list of available locations with <code>location_code</code> by making a separate request to the <code>https://api.dataforseo.com/v3/keywords_data/clickstream_data/locations_and_languages</code><br>example:<br><code class=\"long-string\">2826</code>",
        +        "type": "integer"
        +      },
        +      "location_name": {
        +        "description": "<em>full name of search engine location</em><br><strong>required field if you don’t specify <code>location_code </code></strong><br>you can receive the list of available locations with <code>location_name</code> by making a separate request to <code>https://api.dataforseo.com/v3/keywords_data/clickstream_data/locations_and_languages</code><br>example:<br><code class=\"long-string\">United Kingdom</code>",
        +        "type": "string"
        +      },
        +      "tag": {
        +        "description": "<em>user-defined task identifier</em><br>optional field<br><em>the character limit is 255</em><br>you can use this parameter to identify the task and match it with the result<br>you will find the specified <code>tag</code> value in the <code>data</code> object of the response",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "use_clickstream": {
        +        "description": "<em>use clickstream data to provide results</em><br>optional field<br>if set to <code>true</code>, you will get DataForSEO search volume values based on clickstream data;<br>if set to <code>false</code>, Bing search volume data will be used to calculate DataForSEO search volume;<br>default value: <code>true</code>;<br><strong>Note:</strong> Bing search volume is available for locations provided in <a href=\"https://docs.dataforseo.com/v3/keywords_data/bing/search_volume_history/locations_and_languages/?bash\" rel=\"noopener noreferrer\" target=\"_blank\">Bing Search Volume History Locations</a> and <a href=\"https://docs.dataforseo.com/v3/keywords_data/bing/locations/?bash\" rel=\"noopener noreferrer\" target=\"_blank\">Bing Ads Locations</a> endpoints; search volume values for any other location are calculated based on clickstream data even if you set this parameter to <code>false</code>",
        +        "type": [
        +          "boolean",
        +          "null"
        +        ]
        +      }
        +    },
        +    "type": "object"
        +  }
        +]
    • Changedpost_dataforseo_keywords_gads_ad_traffic_submit1 field changed
      • changedInput schema / properties / body / items / oneOf
        Previous value: -[
        -  {
        -    "example": [
        -      {
        -        "bid": 999,
        -        "keywords": [
        -          "seo marketing"
        -        ],
        -        "language_code": "en",
        -        "location_code": 2840,
        -        "match": "exact"
        -      }
        -    ],
        -    "properties": {
        -      "bid": {
        -        "description": "<em>the maximum custom bid</em><br><strong>required field</strong><br>the collected data will be based on this value<br>it stands for the price you are willing to pay for an ad; the higher value you specify here, the higher values you will get in the returned metrics<br>learn more in <a href=\"https://dataforseo.com/help-center/configuring-bid\">this help center article</a>",
        -        "type": "number"
        -      },
        -      "date_from": {
        -        "description": "<em>starting date of the forecasting time range</em><br>required field if you specify <code>date_to</code><br><strong>if you indicate <code>date_from</code> and <code>date_to</code>, you don't need to specify <code>date_interval</code></strong><br>minimum value is tomorrow's date<br>the value you specify in <code>date_from</code> shouldn't be further than <code>date_to</code><br>date format: <code>\"yyyy-mm-dd\"</code><br>example:<br><code>\"2021-10-30\"</code>if <a href=\"/v3/keywords_data/google_ads/status/\" target=\"_blank\" rel=\"noopener noreferrer\">Status endpoint</a> returns <code>false</code> in the <code>actual_data</code> field, <code>date_from</code> can be set to the month before last and prior;<br>if <a href=\"/v3/keywords_data/google_ads/status/\" target=\"_blank\" rel=\"noopener noreferrer\">Status endpoint</a> returns <code>true</code> in the <code>actual_data</code> field, <code>date_from</code> can be set to the last month and prior",
        -        "type": "string"
        -      },
        -      "date_interval": {
        -        "description": "<em>forecasting date interval</em><br>optional field<br><strong>if you specify <code>date_interval</code>, you don't need to indicate <code>date_from</code> and <code>date_to</code></strong><br>possible values: <code>next_week</code>, <code>next_month</code>, <code>next_quarter</code><br>default value: <code>next_month</code>",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      },
        -      "date_to": {
        -        "description": "<em>ending date of the forecasting time range</em><br>required field if you specify <code>date_from</code><br><strong>if you indicate <code>date_from</code> and <code>date_to</code>, you don't need to specify <code>date_interval</code></strong><br>minimum value is <code>date_from</code> +1 day<br>maximum value is current day and month of the next year<br>date format: <code>\"yyyy-mm-dd\"</code><br>example:<br><code>\"2022-10-30\"</code>",
        -        "type": "string"
        -      },
        -      "keywords": {
        -        "description": "<em>keywords</em><br><strong>required field</strong><br>The maximum number of keywords you can specify: 1000<br>The maximum number of characters for each keyword: 80<br>The maximum number of words for each keyword phrase: 10<br>the keywords you specify will be converted to a lowercase format<br><strong>Note #1:</strong> <a href=\"https://dataforseo.com/help-center/no-search-volume-data-for-some-keywords\" target=\"_blank\" rel=\"noopener noreferrer\">Google Ads may return no data for certain groups of keywords</a>;<br><strong>Note #2:</strong> <a href=\"https://dataforseo.com/help-center/sv-broad-exact-phrase-match\" target=\"_blank\" rel=\"noopener noreferrer\">Google Ads provides combined search volume values for groups of similar keywords</a><br>to obtain search volume for similar keywords, we recommend submitting such keywords in separate requests;<br><strong>Note #3:</strong> Google Ads doesn't allow using certain symbols and characters (e.g., UTF symbols, emojis), so you can't use them when setting a task;<br>to learn more about which symbols and characters can be used, please refer to <a href=\"https://dataforseo.com/help-center/using-symbols-in-keywords-when-setting-a-google-ads-task\" target=\"_blank\" rel=\"noopener noreferrer\">this article</a><p>learn more about rules and limitations of <code>keyword</code> and <code>keywords</code> fields in DataForSEO APIs in this <a href=\"https://dataforseo.com/help-center/rules-and-limitations-of-keyword-and-keywords-fields-in-dataforseo-apis\" rel=\"noopener noreferrer\" target=\"_blank\">Help Center article</a>",
        -        "items": {
        -          "type": "string"
        -        },
        -        "type": "array"
        -      },
        -      "language_code": {
        -        "description": "<em>search engine language code</em><br>optional field<br>you can receive the list of available languages of the search engine with their <code>language_code</code> by making a separate request to <code>https://api.dataforseo.com/v3/keywords_data/google_ads/languages</code><br>example:<br><code class=\"long-string\">en</code>",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      },
        -      "language_name": {
        -        "description": "<em>full name of search engine language</em><br>optional field<br>you can receive the list of available languages of the search engine with their <code>language_name</code> by making a separate request to <code>https://api.dataforseo.com/v3/keywords_data/google_ads/languages</code><br>example:<br><code class=\"long-string\">English</code>",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      },
        -      "location_code": {
        -        "description": "<em>search engine location code</em><br>optional field<br>if you do not indicate the location, you will receive worldwide results, i.e., for all available locations;<br><strong>if you use this field, you don't need to specify <code>location_name</code> or <code>location_coordinate</code></strong>;<br>you can receive the list of available locations of the search engines with their <code>location_code</code> by making a separate request to <code>https://api.dataforseo.com/v3/keywords_data/google_ads/locations</code><br>example:<br><code class=\"long-string\">2840</code>",
        -        "type": [
        -          "integer",
        -          "null"
        -        ]
        -      },
        -      "location_coordinate": {
        -        "description": "<em>GPS coordinates of a location</em><br>optional field<br>if you do not indicate the location, you will receive worldwide results, i.e., for all available locations;<br><strong>if you use this field, you don't need to specify <code>location_name</code> or <code>location_code</code></strong>;<br><code>location_coordinate</code> parameter should be specified in the <em>\"latitude,longitude\"</em> format;<br><strong>the data will be provided for the country the specified coordinates belong to</strong>;<br>example:<br><code class=\"long-string\">52.6178549,-155.352142</code>",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      },
        -      "location_name": {
        -        "description": "<em>full name of search engine location</em><br>optional field<br>if you do not indicate the location, you will receive worldwide results, i.e., for all available locations;<br><strong>if you use this field, you don't need to specify <code>location_code</code> or <code>location_coordinate</code></strong><br>you can receive the list of available locations of the search engine with their <code>location_name</code> by making a separate request to <code>https://api.dataforseo.com/v3/keywords_data/google_ads/locations</code><br>example:<br><code class=\"long-string\">London,England,United Kingdom</code>",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      },
        -      "match": {
        -        "description": "<em>keywords match-type</em><br><strong>required field</strong><br>can take the following values: <code>exact</code>, <code>broad</code>, <code>phrase</code>",
        -        "type": "string"
        -      },
        -      "pingback_url": {
        -        "description": "<em>notification URL of a completed task</em><br>optional field<br>when a task is completed we will notify you by GET request sent to the URL you have specified<br>you can use the ‘$id’ string as a <code>$id</code> variable and ‘$tag’ as urlencoded <code>$tag</code> variable. We will set the necessary values before sending the request.<br>example:<br><code>http://your-server.com/pingscript?id=$id</code><br><code>http://your-server.com/pingscript?id=$id&amp;tag=$tag</code><br><strong>Note:</strong> special characters in <code>pingback_url</code> will be urlencoded;<br>i.a., the <code>#</code> character will be encoded into <code>%23</code><p>learn more on our <a href=\"https://dataforseo.com/help-center/pingbacks-postbacks-with-dataforseo-api\" target=\"_blank\" rel=\"noopener noreferrer\">Help Center</a>",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      },
        -      "postback_url": {
        -        "description": "<em>URL for sending task results</em><br>optional field<br>once the task is completed, we will send a POST request with its results compressed in the <code>gzip</code> format to the <code>postback_url</code> you specified<br>you can use the ‘$id’ string as a <code>$id</code> variable and ‘$tag’ as urlencoded <code>$tag</code> variable. We will set the necessary values before sending the request.<br>example:<br><code>http://your-server.com/postbackscript?id=$id</code><br><code>http://your-server.com/postbackscript?id=$id&amp;tag=$tag</code><br><strong>Note:</strong> special characters in <code>postback_url</code> will be urlencoded;<br>i.a., the <code>#</code> character will be encoded into <code>%23</code><p>learn more on our <a href=\"https://dataforseo.com/help-center/pingbacks-postbacks-with-dataforseo-api\" target=\"_blank\" rel=\"noopener noreferrer\">Help Center</a>",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      },
        -      "sort_by": {
        -        "description": "<em>results sorting parameters</em><br>optional field<br>Use these parameters to sort the results by <code>relevance</code>, <code>average_cpc</code>, <code>cost</code>, or <code>clicks</code> in the descending order<br>default value: <code>relevance</code>",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      },
        -      "tag": {
        -        "description": "<em>user-defined task identifier</em><br>optional field<br><em>the character limit is 255</em><br>you can use this parameter to identify the task and match it with the result<br>you will find the specified <code>tag</code> value in the <code>data</code> object of the response",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      }
        -    },
        -    "type": "object"
        -  }
        -]New value: +[
        +  {
        +    "properties": {
        +      "bid": {
        +        "description": "<em>the maximum custom bid</em><br><strong>required field</strong><br>the collected data will be based on this value<br>it stands for the price you are willing to pay for an ad; the higher value you specify here, the higher values you will get in the returned metrics<br>learn more in <a href=\"https://dataforseo.com/help-center/configuring-bid\">this help center article</a>",
        +        "type": "number"
        +      },
        +      "date_from": {
        +        "description": "<em>starting date of the forecasting time range</em><br>required field if you specify <code>date_to</code><br><strong>if you indicate <code>date_from</code> and <code>date_to</code>, you don't need to specify <code>date_interval</code></strong><br>minimum value is tomorrow's date<br>the value you specify in <code>date_from</code> shouldn't be further than <code>date_to</code><br>date format: <code>\"yyyy-mm-dd\"</code><br>example:<br><code>\"2021-10-30\"</code>if <a href=\"/v3/keywords_data/google_ads/status/\" target=\"_blank\" rel=\"noopener noreferrer\">Status endpoint</a> returns <code>false</code> in the <code>actual_data</code> field, <code>date_from</code> can be set to the month before last and prior;<br>if <a href=\"/v3/keywords_data/google_ads/status/\" target=\"_blank\" rel=\"noopener noreferrer\">Status endpoint</a> returns <code>true</code> in the <code>actual_data</code> field, <code>date_from</code> can be set to the last month and prior",
        +        "type": "string"
        +      },
        +      "date_interval": {
        +        "description": "<em>forecasting date interval</em><br>optional field<br><strong>if you specify <code>date_interval</code>, you don't need to indicate <code>date_from</code> and <code>date_to</code></strong><br>possible values: <code>next_week</code>, <code>next_month</code>, <code>next_quarter</code><br>default value: <code>next_month</code>",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "date_to": {
        +        "description": "<em>ending date of the forecasting time range</em><br>required field if you specify <code>date_from</code><br><strong>if you indicate <code>date_from</code> and <code>date_to</code>, you don't need to specify <code>date_interval</code></strong><br>minimum value is <code>date_from</code> +1 day<br>maximum value is current day and month of the next year<br>date format: <code>\"yyyy-mm-dd\"</code><br>example:<br><code>\"2022-10-30\"</code>",
        +        "type": "string"
        +      },
        +      "keywords": {
        +        "description": "<em>keywords</em><br><strong>required field</strong><br>The maximum number of keywords you can specify: 1000<br>The maximum number of characters for each keyword: 80<br>The maximum number of words for each keyword phrase: 10<br>the keywords you specify will be converted to a lowercase format<br><strong>Note #1:</strong> <a href=\"https://dataforseo.com/help-center/no-search-volume-data-for-some-keywords\" target=\"_blank\" rel=\"noopener noreferrer\">Google Ads may return no data for certain groups of keywords</a>;<br><strong>Note #2:</strong> <a href=\"https://dataforseo.com/help-center/sv-broad-exact-phrase-match\" target=\"_blank\" rel=\"noopener noreferrer\">Google Ads provides combined search volume values for groups of similar keywords</a><br>to obtain search volume for similar keywords, we recommend submitting such keywords in separate requests;<br><strong>Note #3:</strong> Google Ads doesn't allow using certain symbols and characters (e.g., UTF symbols, emojis), so you can't use them when setting a task;<br>to learn more about which symbols and characters can be used, please refer to <a href=\"https://dataforseo.com/help-center/using-symbols-in-keywords-when-setting-a-google-ads-task\" target=\"_blank\" rel=\"noopener noreferrer\">this article</a><p>learn more about rules and limitations of <code>keyword</code> and <code>keywords</code> fields in DataForSEO APIs in this <a href=\"https://dataforseo.com/help-center/rules-and-limitations-of-keyword-and-keywords-fields-in-dataforseo-apis\" rel=\"noopener noreferrer\" target=\"_blank\">Help Center article</a>",
        +        "items": {
        +          "type": "string"
        +        },
        +        "type": "array"
        +      },
        +      "language_code": {
        +        "description": "<em>search engine language code</em><br>optional field<br>you can receive the list of available languages of the search engine with their <code>language_code</code> by making a separate request to <code>https://api.dataforseo.com/v3/keywords_data/google_ads/languages</code><br>example:<br><code class=\"long-string\">en</code>",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "language_name": {
        +        "description": "<em>full name of search engine language</em><br>optional field<br>you can receive the list of available languages of the search engine with their <code>language_name</code> by making a separate request to <code>https://api.dataforseo.com/v3/keywords_data/google_ads/languages</code><br>example:<br><code class=\"long-string\">English</code>",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "location_code": {
        +        "description": "<em>search engine location code</em><br>optional field<br>if you do not indicate the location, you will receive worldwide results, i.e., for all available locations;<br><strong>if you use this field, you don't need to specify <code>location_name</code> or <code>location_coordinate</code></strong>;<br>you can receive the list of available locations of the search engines with their <code>location_code</code> by making a separate request to <code>https://api.dataforseo.com/v3/keywords_data/google_ads/locations</code><br>example:<br><code class=\"long-string\">2840</code>",
        +        "type": [
        +          "integer",
        +          "null"
        +        ]
        +      },
        +      "location_coordinate": {
        +        "description": "<em>GPS coordinates of a location</em><br>optional field<br>if you do not indicate the location, you will receive worldwide results, i.e., for all available locations;<br><strong>if you use this field, you don't need to specify <code>location_name</code> or <code>location_code</code></strong>;<br><code>location_coordinate</code> parameter should be specified in the <em>\"latitude,longitude\"</em> format;<br><strong>the data will be provided for the country the specified coordinates belong to</strong>;<br>example:<br><code class=\"long-string\">52.6178549,-155.352142</code>",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "location_name": {
        +        "description": "<em>full name of search engine location</em><br>optional field<br>if you do not indicate the location, you will receive worldwide results, i.e., for all available locations;<br><strong>if you use this field, you don't need to specify <code>location_code</code> or <code>location_coordinate</code></strong><br>you can receive the list of available locations of the search engine with their <code>location_name</code> by making a separate request to <code>https://api.dataforseo.com/v3/keywords_data/google_ads/locations</code><br>example:<br><code class=\"long-string\">London,England,United Kingdom</code>",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "match": {
        +        "description": "<em>keywords match-type</em><br><strong>required field</strong><br>can take the following values: <code>exact</code>, <code>broad</code>, <code>phrase</code>",
        +        "type": "string"
        +      },
        +      "pingback_url": {
        +        "description": "<em>notification URL of a completed task</em><br>optional field<br>when a task is completed we will notify you by GET request sent to the URL you have specified<br>you can use the ‘$id’ string as a <code>$id</code> variable and ‘$tag’ as urlencoded <code>$tag</code> variable. We will set the necessary values before sending the request.<br>example:<br><code>http://your-server.com/pingscript?id=$id</code><br><code>http://your-server.com/pingscript?id=$id&amp;tag=$tag</code><br><strong>Note:</strong> special characters in <code>pingback_url</code> will be urlencoded;<br>i.a., the <code>#</code> character will be encoded into <code>%23</code><p>learn more on our <a href=\"https://dataforseo.com/help-center/pingbacks-postbacks-with-dataforseo-api\" target=\"_blank\" rel=\"noopener noreferrer\">Help Center</a>",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "postback_url": {
        +        "description": "<em>URL for sending task results</em><br>optional field<br>once the task is completed, we will send a POST request with its results compressed in the <code>gzip</code> format to the <code>postback_url</code> you specified<br>you can use the ‘$id’ string as a <code>$id</code> variable and ‘$tag’ as urlencoded <code>$tag</code> variable. We will set the necessary values before sending the request.<br>example:<br><code>http://your-server.com/postbackscript?id=$id</code><br><code>http://your-server.com/postbackscript?id=$id&amp;tag=$tag</code><br><strong>Note:</strong> special characters in <code>postback_url</code> will be urlencoded;<br>i.a., the <code>#</code> character will be encoded into <code>%23</code><p>learn more on our <a href=\"https://dataforseo.com/help-center/pingbacks-postbacks-with-dataforseo-api\" target=\"_blank\" rel=\"noopener noreferrer\">Help Center</a>",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "sort_by": {
        +        "description": "<em>results sorting parameters</em><br>optional field<br>Use these parameters to sort the results by <code>relevance</code>, <code>average_cpc</code>, <code>cost</code>, or <code>clicks</code> in the descending order<br>default value: <code>relevance</code>",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "tag": {
        +        "description": "<em>user-defined task identifier</em><br>optional field<br><em>the character limit is 255</em><br>you can use this parameter to identify the task and match it with the result<br>you will find the specified <code>tag</code> value in the <code>data</code> object of the response",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      }
        +    },
        +    "type": "object"
        +  }
        +]
    • Changedpost_dataforseo_keywords_gads_kw_for_keywords_live1 field changed
      • changedInput schema / properties / body / items / oneOf
        Previous value: -[
        -  {
        -    "example": [
        -      {
        -        "keywords": [
        -          "phone",
        -          "cellphone"
        -        ],
        -        "location_code": 2840
        -      }
        -    ],
        -    "properties": {
        -      "date_from": {
        -        "description": "<em>starting date of the time range</em><br>optional field<br>date format: <code>\"yyyy-mm-dd\"</code><br>minimal value: 4 years from the current date<br>by default, data is returned for the past 12 months;<br><strong>Note</strong>: the indicated date cannot be greater than that specified in <code>date_to</code> and/or yesterday's date;if <a href=\"/v3/keywords_data/google_ads/status/\" target=\"_blank\" rel=\"noopener noreferrer\">Status endpoint</a> returns <code>false</code> in the <code>actual_data</code> field, <code>date_from</code> can be set to the month before last and prior;<br>if <a href=\"/v3/keywords_data/google_ads/status/\" target=\"_blank\" rel=\"noopener noreferrer\">Status endpoint</a> returns <code>true</code> in the <code>actual_data</code> field, <code>date_from</code> can be set to the last month and prior",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      },
        -      "date_to": {
        -        "description": "<em>ending date of the time range</em><br>optional field<br><strong>Note:</strong> the indicated date cannot be greater than yesterday's date;<br>if you don't specify this field, yesterday's date will be used by default<br>date format: <code>\"yyyy-mm-dd\"</code><br>example:<br><code>\"2022-11-30\"</code>",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      },
        -      "include_adult_keywords": {
        -        "description": "<em>include keywords associated with adult content</em><br>optional field<br>if set to <code>true</code>, adult keywords will be included in the response<br>default value: <code>false</code><br><strong>note</strong> that the API may return no data for such keywords due to <a href=\"https://support.google.com/adspolicy/answer/6008942?hl=en\" target=\"_blank\" rel=\"noopener noreferrer\">Google Ads restrictions</a>",
        -        "type": [
        -          "boolean",
        -          "null"
        -        ]
        -      },
        -      "keywords": {
        -        "description": "<em>keywords</em><br><strong>required field</strong><br>The maximum number of keywords you can specify: 20<br>The maximum number of characters for each keyword: 80<br>the keywords you specify will be converted to a lowercase format<br><strong>Note:</strong> Google Ads may return no data for certain groups of keywords<br><a href=\"https://dataforseo.com/help-center/no-search-volume-data-for-some-keywords\" target=\"_blank\" rel=\"noopener noreferrer\">visit our Help Center to learn more</a><br><strong>Also note</strong> that Google Ads doesn't allow using certain symbols and characters (e.g., UTF symbols, emojis), so you can't use them when setting a task;<br>to learn more about which symbols and characters can be used, please refer to <a href=\"https://dataforseo.com/help-center/using-symbols-in-keywords-when-setting-a-google-ads-task\" target=\"_blank\" rel=\"noopener noreferrer\">this article</a><p>learn more about rules and limitations of <code>keyword</code> and <code>keywords</code> fields in DataForSEO APIs in this <a href=\"https://dataforseo.com/help-center/rules-and-limitations-of-keyword-and-keywords-fields-in-dataforseo-apis\" rel=\"noopener noreferrer\" target=\"_blank\">Help Center article</a>",
        -        "items": {
        -          "type": "string"
        -        },
        -        "type": "array"
        -      },
        -      "language_code": {
        -        "description": "<em>search engine language code</em><br>optional field<br>you can receive the list of available languages of the search engine with their <code>language_code</code> by making a separate request to <code>https://api.dataforseo.com/v3/keywords_data/google_ads/languages</code><br>example:<br><code class=\"long-string\">en</code>",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      },
        -      "language_name": {
        -        "description": "<em>full name of search engine language</em><br>optional field<br>you can receive the list of available languages of the search engine with their <code>language_name</code> by making a separate request to <code>https://api.dataforseo.com/v3/keywords_data/google_ads/languages</code><br>example:<br><code class=\"long-string\">English</code>",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      },
        -      "location_code": {
        -        "description": "<em>search engine location code</em><br>optional field<br>if you do not indicate the location, you will receive worldwide results, i.e., for all available locations;<br><strong>if you use this field, you don't need to specify <code>location_name</code> or <code>location_coordinate</code></strong>;<br>you can receive the list of available locations of the search engines with their <code>location_code</code> by making a separate request to <code>https://api.dataforseo.com/v3/keywords_data/google_ads/locations</code><br>example:<br><code class=\"long-string\">2840</code>",
        -        "type": [
        -          "integer",
        -          "null"
        -        ]
        -      },
        -      "location_coordinate": {
        -        "description": "<em>GPS coordinates of a location</em><br>optional field<br>if you do not indicate the location, you will receive worldwide results, i.e., for all available locations;<br><strong>if you use this field, you don't need to specify <code>location_name</code> or <code>location_code</code></strong>;<br><code>location_coordinate</code> parameter should be specified in the <em>\"latitude,longitude\"</em> format;<br><strong>the data will be provided for the country the specified coordinates belong to</strong>;<br>example:<br><code class=\"long-string\">52.6178549,-155.352142</code>",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      },
        -      "location_name": {
        -        "description": "<em>full name of search engine location</em><br>optional field<br>if you do not indicate the location, you will receive worldwide results, i.e., for all available locations;<br><strong>if you use this field, you don't need to specify <code>location_code</code> or <code>location_coordinate</code></strong><br>you can receive the list of available locations of the search engine with their <code>location_name</code> by making a separate request to <code>https://api.dataforseo.com/v3/keywords_data/google_ads/locations</code><br>example:<br><code class=\"long-string\">London,England,United Kingdom</code>",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      },
        -      "search_partners": {
        -        "description": "<em>include Google search partners</em><br>optional field<br>if you specify <code class=\"prettyprint\">true</code>, the results will be delivered for owned, operated, and syndicated networks across <a href=\"https://support.google.com/google-ads/answer/1722047?hl=en\" target=\"_blank\" rel=\"noopener noreferrer\">Google and partner sites</a> that host Google search;<br>default value: <code>false</code> - results are returned for Google search sites",
        -        "type": [
        -          "boolean",
        -          "null"
        -        ]
        -      },
        -      "sort_by": {
        -        "description": "<em>results sorting parameters</em><br>optional field<br>Use these parameters to sort the results by <code>relevance</code>, <code>search_volume</code>, <code>competition_index</code>, <code>low_top_of_page_bid</code>, or <code>high_top_of_page_bid</code> in descending order<br>default value: <code>relevance</code>",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      },
        -      "tag": {
        -        "description": "<em>user-defined task identifier</em><br>optional field<br><em>the character limit is 255</em><br>you can use this parameter to identify the task and match it with the result<br>you will find the specified <code>tag</code> value in the <code>data</code> object of the response",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      }
        -    },
        -    "type": "object"
        -  }
        -]New value: +[
        +  {
        +    "properties": {
        +      "date_from": {
        +        "description": "<em>starting date of the time range</em><br>optional field<br>date format: <code>\"yyyy-mm-dd\"</code><br>minimal value: 4 years from the current date<br>by default, data is returned for the past 12 months;<br><strong>Note</strong>: the indicated date cannot be greater than that specified in <code>date_to</code> and/or yesterday's date;if <a href=\"/v3/keywords_data/google_ads/status/\" target=\"_blank\" rel=\"noopener noreferrer\">Status endpoint</a> returns <code>false</code> in the <code>actual_data</code> field, <code>date_from</code> can be set to the month before last and prior;<br>if <a href=\"/v3/keywords_data/google_ads/status/\" target=\"_blank\" rel=\"noopener noreferrer\">Status endpoint</a> returns <code>true</code> in the <code>actual_data</code> field, <code>date_from</code> can be set to the last month and prior",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "date_to": {
        +        "description": "<em>ending date of the time range</em><br>optional field<br><strong>Note:</strong> the indicated date cannot be greater than yesterday's date;<br>if you don't specify this field, yesterday's date will be used by default<br>date format: <code>\"yyyy-mm-dd\"</code><br>example:<br><code>\"2022-11-30\"</code>",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "include_adult_keywords": {
        +        "description": "<em>include keywords associated with adult content</em><br>optional field<br>if set to <code>true</code>, adult keywords will be included in the response<br>default value: <code>false</code><br><strong>note</strong> that the API may return no data for such keywords due to <a href=\"https://support.google.com/adspolicy/answer/6008942?hl=en\" target=\"_blank\" rel=\"noopener noreferrer\">Google Ads restrictions</a>",
        +        "type": [
        +          "boolean",
        +          "null"
        +        ]
        +      },
        +      "keywords": {
        +        "description": "<em>keywords</em><br><strong>required field</strong><br>The maximum number of keywords you can specify: 20<br>The maximum number of characters for each keyword: 80<br>the keywords you specify will be converted to a lowercase format<br><strong>Note:</strong> Google Ads may return no data for certain groups of keywords<br><a href=\"https://dataforseo.com/help-center/no-search-volume-data-for-some-keywords\" target=\"_blank\" rel=\"noopener noreferrer\">visit our Help Center to learn more</a><br><strong>Also note</strong> that Google Ads doesn't allow using certain symbols and characters (e.g., UTF symbols, emojis), so you can't use them when setting a task;<br>to learn more about which symbols and characters can be used, please refer to <a href=\"https://dataforseo.com/help-center/using-symbols-in-keywords-when-setting-a-google-ads-task\" target=\"_blank\" rel=\"noopener noreferrer\">this article</a><p>learn more about rules and limitations of <code>keyword</code> and <code>keywords</code> fields in DataForSEO APIs in this <a href=\"https://dataforseo.com/help-center/rules-and-limitations-of-keyword-and-keywords-fields-in-dataforseo-apis\" rel=\"noopener noreferrer\" target=\"_blank\">Help Center article</a>",
        +        "items": {
        +          "type": "string"
        +        },
        +        "type": "array"
        +      },
        +      "language_code": {
        +        "description": "<em>search engine language code</em><br>optional field<br>you can receive the list of available languages of the search engine with their <code>language_code</code> by making a separate request to <code>https://api.dataforseo.com/v3/keywords_data/google_ads/languages</code><br>example:<br><code class=\"long-string\">en</code>",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "language_name": {
        +        "description": "<em>full name of search engine language</em><br>optional field<br>you can receive the list of available languages of the search engine with their <code>language_name</code> by making a separate request to <code>https://api.dataforseo.com/v3/keywords_data/google_ads/languages</code><br>example:<br><code class=\"long-string\">English</code>",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "location_code": {
        +        "description": "<em>search engine location code</em><br>optional field<br>if you do not indicate the location, you will receive worldwide results, i.e., for all available locations;<br><strong>if you use this field, you don't need to specify <code>location_name</code> or <code>location_coordinate</code></strong>;<br>you can receive the list of available locations of the search engines with their <code>location_code</code> by making a separate request to <code>https://api.dataforseo.com/v3/keywords_data/google_ads/locations</code><br>example:<br><code class=\"long-string\">2840</code>",
        +        "type": [
        +          "integer",
        +          "null"
        +        ]
        +      },
        +      "location_coordinate": {
        +        "description": "<em>GPS coordinates of a location</em><br>optional field<br>if you do not indicate the location, you will receive worldwide results, i.e., for all available locations;<br><strong>if you use this field, you don't need to specify <code>location_name</code> or <code>location_code</code></strong>;<br><code>location_coordinate</code> parameter should be specified in the <em>\"latitude,longitude\"</em> format;<br><strong>the data will be provided for the country the specified coordinates belong to</strong>;<br>example:<br><code class=\"long-string\">52.6178549,-155.352142</code>",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "location_name": {
        +        "description": "<em>full name of search engine location</em><br>optional field<br>if you do not indicate the location, you will receive worldwide results, i.e., for all available locations;<br><strong>if you use this field, you don't need to specify <code>location_code</code> or <code>location_coordinate</code></strong><br>you can receive the list of available locations of the search engine with their <code>location_name</code> by making a separate request to <code>https://api.dataforseo.com/v3/keywords_data/google_ads/locations</code><br>example:<br><code class=\"long-string\">London,England,United Kingdom</code>",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "search_partners": {
        +        "description": "<em>include Google search partners</em><br>optional field<br>if you specify <code class=\"prettyprint\">true</code>, the results will be delivered for owned, operated, and syndicated networks across <a href=\"https://support.google.com/google-ads/answer/1722047?hl=en\" target=\"_blank\" rel=\"noopener noreferrer\">Google and partner sites</a> that host Google search;<br>default value: <code>false</code> - results are returned for Google search sites",
        +        "type": [
        +          "boolean",
        +          "null"
        +        ]
        +      },
        +      "sort_by": {
        +        "description": "<em>results sorting parameters</em><br>optional field<br>Use these parameters to sort the results by <code>relevance</code>, <code>search_volume</code>, <code>competition_index</code>, <code>low_top_of_page_bid</code>, or <code>high_top_of_page_bid</code> in descending order<br>default value: <code>relevance</code>",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "tag": {
        +        "description": "<em>user-defined task identifier</em><br>optional field<br><em>the character limit is 255</em><br>you can use this parameter to identify the task and match it with the result<br>you will find the specified <code>tag</code> value in the <code>data</code> object of the response",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      }
        +    },
        +    "type": "object"
        +  }
        +]
    • Changedpost_dataforseo_keywords_gads_kw_for_site_live1 field changed
      • changedInput schema / properties / body / items / oneOf
        Previous value: -[
        -  {
        -    "example": [
        -      {
        -        "location_code": 2840,
        -        "target": "dataforseo.com"
        -      }
        -    ],
        -    "properties": {
        -      "date_from": {
        -        "description": "<em>starting date of the time range</em><br>optional field<br>date format: <code>\"yyyy-mm-dd\"</code><br>minimal value: 4 years from the current date<br>by default, data is returned for the past 12 months;<br><strong>Note</strong>: the indicated date cannot be greater than that specified in <code>date_to</code> and/or yesterday's date;if <a href=\"/v3/keywords_data/google_ads/status/\" target=\"_blank\" rel=\"noopener noreferrer\">Status endpoint</a> returns <code>false</code> in the <code>actual_data</code> field, <code>date_from</code> can be set to the month before last and prior;<br>if <a href=\"/v3/keywords_data/google_ads/status/\" target=\"_blank\" rel=\"noopener noreferrer\">Status endpoint</a> returns <code>true</code> in the <code>actual_data</code> field, <code>date_from</code> can be set to the last month and prior",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      },
        -      "date_to": {
        -        "description": "<em>ending date of the time range</em><br>optional field<br><strong>Note:</strong> the indicated date cannot be greater than yesterday's date;<br>if you don't specify this field, yesterday's date will be used by default<br>date format: <code>\"yyyy-mm-dd\"</code><br>example:<br><code>\"2022-11-30\"</code>",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      },
        -      "include_adult_keywords": {
        -        "description": "<em>include keywords associated with adult content</em><br>optional field<br>if set to <code>true</code>, adult keywords will be included in the response<br>default value: <code>false</code><br><strong>note</strong> that the API may return no data for such keywords due to <a href=\"https://support.google.com/adspolicy/answer/6008942?hl=en\" target=\"_blank\" rel=\"noopener noreferrer\">Google Ads restrictions</a>",
        -        "type": [
        -          "boolean",
        -          "null"
        -        ]
        -      },
        -      "language_code": {
        -        "description": "<em>search engine language code</em><br>optional field<br>you can receive the list of available languages of the search engine with their <code>language_code</code> by making a separate request to <code>https://api.dataforseo.com/v3/keywords_data/google_ads/languages</code><br>example:<br><code class=\"long-string\">en</code>",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      },
        -      "language_name": {
        -        "description": "<em>full name of search engine language</em><br>optional field<br>you can receive the list of available languages of the search engine with their <code>language_name</code> by making a separate request to <code>https://api.dataforseo.com/v3/keywords_data/google_ads/languages</code><br>example:<br><code class=\"long-string\">English</code>",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      },
        -      "location_code": {
        -        "description": "<em>search engine location code</em><br>optional field<br>if you do not indicate the location, you will receive worldwide results, i.e., for all available locations;<br><strong>if you use this field, you don't need to specify <code>location_name</code> or <code>location_coordinate</code></strong>;<br>you can receive the list of available locations of the search engines with their <code>location_code</code> by making a separate request to <code>https://api.dataforseo.com/v3/keywords_data/google_ads/locations</code><br>example:<br><code class=\"long-string\">2840</code>",
        -        "type": [
        -          "integer",
        -          "null"
        -        ]
        -      },
        -      "location_coordinate": {
        -        "description": "<em>GPS coordinates of a location</em><br>optional field<br>if you do not indicate the location, you will receive worldwide results, i.e., for all available locations;<br><strong>if you use this field, you don't need to specify <code>location_name</code> or <code>location_code</code></strong>;<br><code>location_coordinate</code> parameter should be specified in the <em>\"latitude,longitude\"</em> format;<br><strong>the data will be provided for the country the specified coordinates belong to</strong>;<br>example:<br><code class=\"long-string\">52.6178549,-155.352142</code>",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      },
        -      "location_name": {
        -        "description": "<em>full name of search engine location</em><br>optional field<br>if you do not indicate the location, you will receive worldwide results, i.e., for all available locations;<br><strong>if you use this field, you don't need to specify <code>location_code</code> or <code>location_coordinate</code></strong><br>you can receive the list of available locations of the search engine with their <code>location_name</code> by making a separate request to <code>https://api.dataforseo.com/v3/keywords_data/google_ads/locations</code><br>example:<br><code class=\"long-string\">London,England,United Kingdom</code>",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      },
        -      "search_partners": {
        -        "description": "<em>include Google search partners</em><br>optional field<br>if you specify <code class=\"prettyprint\">true</code>, the results will be delivered for owned, operated, and syndicated networks across <a href=\"https://support.google.com/google-ads/answer/1722047?hl=en\" target=\"_blank\" rel=\"noopener noreferrer\">Google and partner sites</a> that host Google search;<br>default value: <code>false</code> - results are returned for Google search sites",
        -        "type": [
        -          "boolean",
        -          "null"
        -        ]
        -      },
        -      "sort_by": {
        -        "description": "<em>results sorting parameters</em><br>optional field<br>Use these parameters to sort the results by <code>relevance</code>, <code>search_volume</code>, <code>competition_index</code>, <code>low_top_of_page_bid</code>, or <code>high_top_of_page_bid</code> in descending order<br>default value: <code>relevance</code>",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      },
        -      "tag": {
        -        "description": "<em>user-defined task identifier</em><br>optional field<br><em>the character limit is 255</em><br>you can use this parameter to identify the task and match it with the result<br>you will find the specified <code>tag</code> value in the <code>data</code> object of the response",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      },
        -      "target": {
        -        "description": "<em>domain or page</em><br><strong>required field</strong><br>the domain name of the target website or the url of the target page;<br><strong>note:</strong> to obtain keywords for the target website, use the <code>target_type</code> parameter",
        -        "type": "string"
        -      },
        -      "target_type": {
        -        "description": "<em>search keywords for site or for url</em><br>optional field<br>possible values: <code>site</code>, <code>page</code>;<br>default value: <code>page</code>;<br>if set to <code>site</code>, keywords will be provided for the entire site;<br>if set to <code>page</code>, keywords will be provided for the specified webpage",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      }
        -    },
        -    "type": "object"
        -  }
        -]New value: +[
        +  {
        +    "properties": {
        +      "date_from": {
        +        "description": "<em>starting date of the time range</em><br>optional field<br>date format: <code>\"yyyy-mm-dd\"</code><br>minimal value: 4 years from the current date<br>by default, data is returned for the past 12 months;<br><strong>Note</strong>: the indicated date cannot be greater than that specified in <code>date_to</code> and/or yesterday's date;if <a href=\"/v3/keywords_data/google_ads/status/\" target=\"_blank\" rel=\"noopener noreferrer\">Status endpoint</a> returns <code>false</code> in the <code>actual_data</code> field, <code>date_from</code> can be set to the month before last and prior;<br>if <a href=\"/v3/keywords_data/google_ads/status/\" target=\"_blank\" rel=\"noopener noreferrer\">Status endpoint</a> returns <code>true</code> in the <code>actual_data</code> field, <code>date_from</code> can be set to the last month and prior",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "date_to": {
        +        "description": "<em>ending date of the time range</em><br>optional field<br><strong>Note:</strong> the indicated date cannot be greater than yesterday's date;<br>if you don't specify this field, yesterday's date will be used by default<br>date format: <code>\"yyyy-mm-dd\"</code><br>example:<br><code>\"2022-11-30\"</code>",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "include_adult_keywords": {
        +        "description": "<em>include keywords associated with adult content</em><br>optional field<br>if set to <code>true</code>, adult keywords will be included in the response<br>default value: <code>false</code><br><strong>note</strong> that the API may return no data for such keywords due to <a href=\"https://support.google.com/adspolicy/answer/6008942?hl=en\" target=\"_blank\" rel=\"noopener noreferrer\">Google Ads restrictions</a>",
        +        "type": [
        +          "boolean",
        +          "null"
        +        ]
        +      },
        +      "language_code": {
        +        "description": "<em>search engine language code</em><br>optional field<br>you can receive the list of available languages of the search engine with their <code>language_code</code> by making a separate request to <code>https://api.dataforseo.com/v3/keywords_data/google_ads/languages</code><br>example:<br><code class=\"long-string\">en</code>",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "language_name": {
        +        "description": "<em>full name of search engine language</em><br>optional field<br>you can receive the list of available languages of the search engine with their <code>language_name</code> by making a separate request to <code>https://api.dataforseo.com/v3/keywords_data/google_ads/languages</code><br>example:<br><code class=\"long-string\">English</code>",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "location_code": {
        +        "description": "<em>search engine location code</em><br>optional field<br>if you do not indicate the location, you will receive worldwide results, i.e., for all available locations;<br><strong>if you use this field, you don't need to specify <code>location_name</code> or <code>location_coordinate</code></strong>;<br>you can receive the list of available locations of the search engines with their <code>location_code</code> by making a separate request to <code>https://api.dataforseo.com/v3/keywords_data/google_ads/locations</code><br>example:<br><code class=\"long-string\">2840</code>",
        +        "type": [
        +          "integer",
        +          "null"
        +        ]
        +      },
        +      "location_coordinate": {
        +        "description": "<em>GPS coordinates of a location</em><br>optional field<br>if you do not indicate the location, you will receive worldwide results, i.e., for all available locations;<br><strong>if you use this field, you don't need to specify <code>location_name</code> or <code>location_code</code></strong>;<br><code>location_coordinate</code> parameter should be specified in the <em>\"latitude,longitude\"</em> format;<br><strong>the data will be provided for the country the specified coordinates belong to</strong>;<br>example:<br><code class=\"long-string\">52.6178549,-155.352142</code>",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "location_name": {
        +        "description": "<em>full name of search engine location</em><br>optional field<br>if you do not indicate the location, you will receive worldwide results, i.e., for all available locations;<br><strong>if you use this field, you don't need to specify <code>location_code</code> or <code>location_coordinate</code></strong><br>you can receive the list of available locations of the search engine with their <code>location_name</code> by making a separate request to <code>https://api.dataforseo.com/v3/keywords_data/google_ads/locations</code><br>example:<br><code class=\"long-string\">London,England,United Kingdom</code>",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "search_partners": {
        +        "description": "<em>include Google search partners</em><br>optional field<br>if you specify <code class=\"prettyprint\">true</code>, the results will be delivered for owned, operated, and syndicated networks across <a href=\"https://support.google.com/google-ads/answer/1722047?hl=en\" target=\"_blank\" rel=\"noopener noreferrer\">Google and partner sites</a> that host Google search;<br>default value: <code>false</code> - results are returned for Google search sites",
        +        "type": [
        +          "boolean",
        +          "null"
        +        ]
        +      },
        +      "sort_by": {
        +        "description": "<em>results sorting parameters</em><br>optional field<br>Use these parameters to sort the results by <code>relevance</code>, <code>search_volume</code>, <code>competition_index</code>, <code>low_top_of_page_bid</code>, or <code>high_top_of_page_bid</code> in descending order<br>default value: <code>relevance</code>",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "tag": {
        +        "description": "<em>user-defined task identifier</em><br>optional field<br><em>the character limit is 255</em><br>you can use this parameter to identify the task and match it with the result<br>you will find the specified <code>tag</code> value in the <code>data</code> object of the response",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "target": {
        +        "description": "<em>domain or page</em><br><strong>required field</strong><br>the domain name of the target website or the url of the target page;<br><strong>note:</strong> to obtain keywords for the target website, use the <code>target_type</code> parameter",
        +        "type": "string"
        +      },
        +      "target_type": {
        +        "description": "<em>search keywords for site or for url</em><br>optional field<br>possible values: <code>site</code>, <code>page</code>;<br>default value: <code>page</code>;<br>if set to <code>site</code>, keywords will be provided for the entire site;<br>if set to <code>page</code>, keywords will be provided for the specified webpage",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      }
        +    },
        +    "type": "object"
        +  }
        +]
    • Changedpost_dataforseo_keywords_gads_search_volume_live1 field changed
      • changedInput schema / properties / body / items / oneOf
        Previous value: -[
        -  {
        -    "example": [
        -      {
        -        "date_from": "2021-08-01",
        -        "keywords": [
        -          "buy laptop",
        -          "cheap laptops for sale",
        -          "purchase laptop"
        -        ],
        -        "location_code": 2840,
        -        "search_partners": true
        -      }
        -    ],
        -    "properties": {
        -      "date_from": {
        -        "description": "<em>starting date of the time range</em><br>optional field<br>date format: <code>\"yyyy-mm-dd\"</code><br>minimal value: 4 years from the current date<br>by default, data is returned for the past 12 months;<br><strong>Note</strong>: the indicated date cannot be greater than that specified in <code>date_to</code> and/or yesterday's date;if <a href=\"/v3/keywords_data/google_ads/status/\" target=\"_blank\" rel=\"noopener noreferrer\">Status endpoint</a> returns <code>false</code> in the <code>actual_data</code> field, <code>date_from</code> can be set to the month before last and prior;<br>if <a href=\"/v3/keywords_data/google_ads/status/\" target=\"_blank\" rel=\"noopener noreferrer\">Status endpoint</a> returns <code>true</code> in the <code>actual_data</code> field, <code>date_from</code> can be set to the last month and prior",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      },
        -      "date_to": {
        -        "description": "<em>ending date of the time range</em><br>optional field<br><strong>Note:</strong> the indicated date cannot be greater than the past month, Google Ads does not return data on the current month;<br>if you don't specify this field, yesterday's date will be used by default<br>date format: <code>\"yyyy-mm-dd\"</code><br>example:<br><code>\"2022-11-30\"</code>",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      },
        -      "include_adult_keywords": {
        -        "description": "<em>include keywords associated with adult content<br></em>optional field<br>if set to_<code>true</code>, adult keywords will be included in the response<br>default value:_<code>false</code><br><strong>note</strong>_that the API may return no data for such keywords due to_<a href=\"https://support.google.com/adspolicy/answer/6008942?hl=en\" target=\"_blank\" rel=\"noopener noreferrer\">Google Ads restrictions</a>n",
        -        "type": [
        -          "boolean",
        -          "null"
        -        ]
        -      },
        -      "keywords": {
        -        "description": "<em>keywords</em><br><strong>required field</strong><br>The maximum number of keywords you can specify: 1000<br>The maximum number of characters for each keyword: 80<br>The maximum number of words for each keyword phrase: 10<br>the keywords you specify will be converted to a lowercase format<br><strong>Note #1:</strong> <a href=\"https://dataforseo.com/help-center/no-search-volume-data-for-some-keywords\" target=\"_blank\" rel=\"noopener noreferrer\">Google Ads may return no data for certain groups of keywords</a>;<br><strong>Note #2:</strong> <a href=\"https://dataforseo.com/help-center/sv-broad-exact-phrase-match\" target=\"_blank\" rel=\"noopener noreferrer\">Google Ads provides combined search volume values for groups of similar keywords</a><br>to obtain search volume for similar keywords, we recommend submitting such keywords in separate requests;<br><strong>Note #3:</strong> Google Ads doesn't allow using certain symbols and characters (e.g., UTF symbols, emojis), so you can't use them when setting a task;<br>to learn more about which symbols and characters can be used, please refer to <a href=\"https://dataforseo.com/help-center/using-symbols-in-keywords-when-setting-a-google-ads-task\" target=\"_blank\" rel=\"noopener noreferrer\">this article</a><p>learn more about rules and limitations of <code>keyword</code> and <code>keywords</code> fields in DataForSEO APIs in this <a href=\"https://dataforseo.com/help-center/rules-and-limitations-of-keyword-and-keywords-fields-in-dataforseo-apis\" rel=\"noopener noreferrer\" target=\"_blank\">Help Center article</a>",
        -        "items": {
        -          "type": "string"
        -        },
        -        "type": "array"
        -      },
        -      "language_code": {
        -        "description": "<em>search engine language code</em><br>optional field<br>you can receive the list of available languages of the search engine with their <code>language_code</code> by making a separate request to <code>https://api.dataforseo.com/v3/keywords_data/google_ads/languages</code><br>example:<br><code class=\"long-string\">en</code>",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      },
        -      "language_name": {
        -        "description": "<em>full name of search engine language</em><br>optional field<br>you can receive the list of available languages of the search engine with their <code>language_name</code> by making a separate request to <code>https://api.dataforseo.com/v3/keywords_data/google_ads/languages</code><br>example:<br><code class=\"long-string\">English</code>",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      },
        -      "location_code": {
        -        "description": "<em>search engine location code</em><br>optional field<br>if you do not indicate the location, you will receive worldwide results, i.e., for all available locations;<br><strong>if you use this field, you don't need to specify <code>location_name</code> or <code>location_coordinate</code></strong>;<br>you can receive the list of available locations of the search engines with their <code>location_code</code> by making a separate request to <code>https://api.dataforseo.com/v3/keywords_data/google_ads/locations</code><br>example:<br><code class=\"long-string\">2840</code>",
        -        "type": [
        -          "integer",
        -          "null"
        -        ]
        -      },
        -      "location_coordinate": {
        -        "description": "<em>GPS coordinates of a location</em><br>optional field<br>if you do not indicate the location, you will receive worldwide results, i.e., for all available locations;<br><strong>if you use this field, you don't need to specify <code>location_name</code> or <code>location_code</code></strong>;<br><code>location_coordinate</code> parameter should be specified in the <em>\"latitude,longitude\"</em> format;<br><strong>the data will be provided for the country the specified coordinates belong to</strong>;<br>example:<br><code class=\"long-string\">52.6178549,-155.352142</code>",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      },
        -      "location_name": {
        -        "description": "<em>full name of search engine location</em><br>optional field<br>if you do not indicate the location, you will receive worldwide results, i.e., for all available locations;<br><strong>if you use this field, you don't need to specify <code>location_code</code> or <code>location_coordinate</code></strong><br>you can receive the list of available locations of the search engine with their <code>location_name</code> by making a separate request to <code>https://api.dataforseo.com/v3/keywords_data/google_ads/locations</code><br>example:<br><code class=\"long-string\">London,England,United Kingdom</code>",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      },
        -      "search_partners": {
        -        "description": "<em>include Google search partners</em><br>optional field<br>if you specify <code class=\"prettyprint\">true</code>, the results will be delivered for owned, operated, and syndicated networks across <a href=\"https://support.google.com/google-ads/answer/1722047?hl=en\" target=\"_blank\" rel=\"noopener noreferrer\">Google and partner sites</a> that host Google search;<br>default value: <code>false</code> - results are returned for Google search sites",
        -        "type": [
        -          "boolean",
        -          "null"
        -        ]
        -      },
        -      "sort_by": {
        -        "description": "<em>results sorting parameters</em><br>optional field<br>use these parameters to sort the results by <code>relevance</code>, <code>search_volume</code>, <code>competition_index</code>, <code>low_top_of_page_bid</code>, or <code>high_top_of_page_bid</code> in the descending order<br>default value: <code>relevance</code>",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      },
        -      "tag": {
        -        "description": "<em>user-defined task identifier</em><br>optional field<br><em>the character limit is 255</em><br>you can use this parameter to identify the task and match it with the result<br>you will find the specified <code>tag</code> value in the <code>data</code> array of the response",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      }
        -    },
        -    "type": "object"
        -  }
        -]New value: +[
        +  {
        +    "properties": {
        +      "date_from": {
        +        "description": "<em>starting date of the time range</em><br>optional field<br>date format: <code>\"yyyy-mm-dd\"</code><br>minimal value: 4 years from the current date<br>by default, data is returned for the past 12 months;<br><strong>Note</strong>: the indicated date cannot be greater than that specified in <code>date_to</code> and/or yesterday's date;if <a href=\"/v3/keywords_data/google_ads/status/\" target=\"_blank\" rel=\"noopener noreferrer\">Status endpoint</a> returns <code>false</code> in the <code>actual_data</code> field, <code>date_from</code> can be set to the month before last and prior;<br>if <a href=\"/v3/keywords_data/google_ads/status/\" target=\"_blank\" rel=\"noopener noreferrer\">Status endpoint</a> returns <code>true</code> in the <code>actual_data</code> field, <code>date_from</code> can be set to the last month and prior",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "date_to": {
        +        "description": "<em>ending date of the time range</em><br>optional field<br><strong>Note:</strong> the indicated date cannot be greater than the past month, Google Ads does not return data on the current month;<br>if you don't specify this field, yesterday's date will be used by default<br>date format: <code>\"yyyy-mm-dd\"</code><br>example:<br><code>\"2022-11-30\"</code>",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "include_adult_keywords": {
        +        "description": "<em>include keywords associated with adult content<br></em>optional field<br>if set to_<code>true</code>, adult keywords will be included in the response<br>default value:_<code>false</code><br><strong>note</strong>_that the API may return no data for such keywords due to_<a href=\"https://support.google.com/adspolicy/answer/6008942?hl=en\" target=\"_blank\" rel=\"noopener noreferrer\">Google Ads restrictions</a>n",
        +        "type": [
        +          "boolean",
        +          "null"
        +        ]
        +      },
        +      "keywords": {
        +        "description": "<em>keywords</em><br><strong>required field</strong><br>The maximum number of keywords you can specify: 1000<br>The maximum number of characters for each keyword: 80<br>The maximum number of words for each keyword phrase: 10<br>the keywords you specify will be converted to a lowercase format<br><strong>Note #1:</strong> <a href=\"https://dataforseo.com/help-center/no-search-volume-data-for-some-keywords\" target=\"_blank\" rel=\"noopener noreferrer\">Google Ads may return no data for certain groups of keywords</a>;<br><strong>Note #2:</strong> <a href=\"https://dataforseo.com/help-center/sv-broad-exact-phrase-match\" target=\"_blank\" rel=\"noopener noreferrer\">Google Ads provides combined search volume values for groups of similar keywords</a><br>to obtain search volume for similar keywords, we recommend submitting such keywords in separate requests;<br><strong>Note #3:</strong> Google Ads doesn't allow using certain symbols and characters (e.g., UTF symbols, emojis), so you can't use them when setting a task;<br>to learn more about which symbols and characters can be used, please refer to <a href=\"https://dataforseo.com/help-center/using-symbols-in-keywords-when-setting-a-google-ads-task\" target=\"_blank\" rel=\"noopener noreferrer\">this article</a><p>learn more about rules and limitations of <code>keyword</code> and <code>keywords</code> fields in DataForSEO APIs in this <a href=\"https://dataforseo.com/help-center/rules-and-limitations-of-keyword-and-keywords-fields-in-dataforseo-apis\" rel=\"noopener noreferrer\" target=\"_blank\">Help Center article</a>",
        +        "items": {
        +          "type": "string"
        +        },
        +        "type": "array"
        +      },
        +      "language_code": {
        +        "description": "<em>search engine language code</em><br>optional field<br>you can receive the list of available languages of the search engine with their <code>language_code</code> by making a separate request to <code>https://api.dataforseo.com/v3/keywords_data/google_ads/languages</code><br>example:<br><code class=\"long-string\">en</code>",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "language_name": {
        +        "description": "<em>full name of search engine language</em><br>optional field<br>you can receive the list of available languages of the search engine with their <code>language_name</code> by making a separate request to <code>https://api.dataforseo.com/v3/keywords_data/google_ads/languages</code><br>example:<br><code class=\"long-string\">English</code>",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "location_code": {
        +        "description": "<em>search engine location code</em><br>optional field<br>if you do not indicate the location, you will receive worldwide results, i.e., for all available locations;<br><strong>if you use this field, you don't need to specify <code>location_name</code> or <code>location_coordinate</code></strong>;<br>you can receive the list of available locations of the search engines with their <code>location_code</code> by making a separate request to <code>https://api.dataforseo.com/v3/keywords_data/google_ads/locations</code><br>example:<br><code class=\"long-string\">2840</code>",
        +        "type": [
        +          "integer",
        +          "null"
        +        ]
        +      },
        +      "location_coordinate": {
        +        "description": "<em>GPS coordinates of a location</em><br>optional field<br>if you do not indicate the location, you will receive worldwide results, i.e., for all available locations;<br><strong>if you use this field, you don't need to specify <code>location_name</code> or <code>location_code</code></strong>;<br><code>location_coordinate</code> parameter should be specified in the <em>\"latitude,longitude\"</em> format;<br><strong>the data will be provided for the country the specified coordinates belong to</strong>;<br>example:<br><code class=\"long-string\">52.6178549,-155.352142</code>",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "location_name": {
        +        "description": "<em>full name of search engine location</em><br>optional field<br>if you do not indicate the location, you will receive worldwide results, i.e., for all available locations;<br><strong>if you use this field, you don't need to specify <code>location_code</code> or <code>location_coordinate</code></strong><br>you can receive the list of available locations of the search engine with their <code>location_name</code> by making a separate request to <code>https://api.dataforseo.com/v3/keywords_data/google_ads/locations</code><br>example:<br><code class=\"long-string\">London,England,United Kingdom</code>",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "search_partners": {
        +        "description": "<em>include Google search partners</em><br>optional field<br>if you specify <code class=\"prettyprint\">true</code>, the results will be delivered for owned, operated, and syndicated networks across <a href=\"https://support.google.com/google-ads/answer/1722047?hl=en\" target=\"_blank\" rel=\"noopener noreferrer\">Google and partner sites</a> that host Google search;<br>default value: <code>false</code> - results are returned for Google search sites",
        +        "type": [
        +          "boolean",
        +          "null"
        +        ]
        +      },
        +      "sort_by": {
        +        "description": "<em>results sorting parameters</em><br>optional field<br>use these parameters to sort the results by <code>relevance</code>, <code>search_volume</code>, <code>competition_index</code>, <code>low_top_of_page_bid</code>, or <code>high_top_of_page_bid</code> in the descending order<br>default value: <code>relevance</code>",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "tag": {
        +        "description": "<em>user-defined task identifier</em><br>optional field<br><em>the character limit is 255</em><br>you can use this parameter to identify the task and match it with the result<br>you will find the specified <code>tag</code> value in the <code>data</code> array of the response",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      }
        +    },
        +    "type": "object"
        +  }
        +]
    • Changedpost_dataforseo_keywords_trends_demography_live1 field changed
      • changedInput schema / properties / body / items / oneOf
        Previous value: -[
        -  {
        -    "example": [
        -      {
        -        "date_from": "2023-01-01",
        -        "date_to": "2024-01-01",
        -        "keywords": [
        -          "rugby",
        -          "cricket"
        -        ],
        -        "location_name": "United States",
        -        "type": "web"
        -      }
        -    ],
        -    "properties": {
        -      "date_from": {
        -        "description": "<em>starting date of the time range</em><br>optional field<br>if you don't specify this field, the current day and month of the preceding year will be used by default<br>minimal value for the <code>web</code> type: <code>2004-01-01</code><br>minimal value for other types: <code>2008-01-01</code><br>date format: <code>\"yyyy-mm-dd\"</code><br>example:<br><code>\"2019-01-15\"</code>",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      },
        -      "date_to": {
        -        "description": "<em>ending date of the time range</em><br>optional field<br>if you don't specify this field, the today's date will be used by default<br>date format: <code>\"yyyy-mm-dd\"</code><br>example:<br><code>\"2019-01-15\"</code>",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      },
        -      "keywords": {
        -        "description": "<em>keywords</em><br><strong>required field</strong><br>the maximum number of keywords you can specify: 5<br>avoid symbols and special characters (e.g., UTF symbols, emojis);<br>specifying non-Latin characters, you’ll get data for the countries where they are used<p>learn more about rules and limitations of <code>keyword</code> and <code>keywords</code> fields in DataForSEO APIs in this <a href=\"https://dataforseo.com/help-center/rules-and-limitations-of-keyword-and-keywords-fields-in-dataforseo-apis\" rel=\"noopener noreferrer\" target=\"_blank\">Help Center article</a>",
        -        "items": {
        -          "type": "string"
        -        },
        -        "type": "array"
        -      },
        -      "location_code": {
        -        "description": "<em>search engine location code</em><br>optional field<br>if you don't use this field, you will recieve global results<br><strong>if you use this field, you don't need to specify <code>location_name</code></strong><br>you can receive the list of available locations of the search engines with their <code>location_code</code> by making a separate request to <code>https://api.dataforseo.com/v3/keywords_data/dataforseo_trends/locations</code><br><strong>note that the data will be provided for the country the specified <code>location_code</code> belongs to;</strong><br>example:<br><code class=\"long-string\">2840</code>",
        -        "type": [
        -          "integer",
        -          "null"
        -        ]
        -      },
        -      "location_name": {
        -        "description": "<em>full name of search engine location</em><br>optional field<br>if you don't use this field, you will recieve global results<br><strong>if you use this field, you don't need to specify <code>location_code</code></strong><br>you can receive the list of available locations of the search engine with their <code>location_name</code> by making a separate request to <code>https://api.dataforseo.com/v3/keywords_data/dataforseo_trends/locations</code><br><strong>note that the data will be provided for the country the specified <code>location_name</code> belongs to;</strong><br>example:<br><code class=\"long-string\">United Kingdom</code>",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      },
        -      "tag": {
        -        "description": "<em>user-defined task identifier</em><br>optional field<br><em>the character limit is 255</em><br>you can use this parameter to identify the task and match it with the result<br>you will find the specified <code>tag</code> value in the <code>data</code> object of the response",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      },
        -      "time_range": {
        -        "description": "<em>preset time ranges</em><br>optional field<br>if you specify <code>date_from</code> or <code>date_to</code> parameters, this field will be ignored when setting a task<br><em>possible values for all <code>type</code> parameters:</em><br><code>past_4_hours</code>, <code>past_day</code>, <code>past_7_days</code>, <code>past_30_days</code>, <code>past_90_days</code>, <code>past_12_months</code>, <code>past_5_years</code>",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      },
        -      "type": {
        -        "description": "type of element",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      }
        -    },
        -    "type": "object"
        -  }
        -]New value: +[
        +  {
        +    "properties": {
        +      "date_from": {
        +        "description": "<em>starting date of the time range</em><br>optional field<br>if you don't specify this field, the current day and month of the preceding year will be used by default<br>minimal value for the <code>web</code> type: <code>2004-01-01</code><br>minimal value for other types: <code>2008-01-01</code><br>date format: <code>\"yyyy-mm-dd\"</code><br>example:<br><code>\"2019-01-15\"</code>",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "date_to": {
        +        "description": "<em>ending date of the time range</em><br>optional field<br>if you don't specify this field, the today's date will be used by default<br>date format: <code>\"yyyy-mm-dd\"</code><br>example:<br><code>\"2019-01-15\"</code>",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "keywords": {
        +        "description": "<em>keywords</em><br><strong>required field</strong><br>the maximum number of keywords you can specify: 5<br>avoid symbols and special characters (e.g., UTF symbols, emojis);<br>specifying non-Latin characters, you’ll get data for the countries where they are used<p>learn more about rules and limitations of <code>keyword</code> and <code>keywords</code> fields in DataForSEO APIs in this <a href=\"https://dataforseo.com/help-center/rules-and-limitations-of-keyword-and-keywords-fields-in-dataforseo-apis\" rel=\"noopener noreferrer\" target=\"_blank\">Help Center article</a>",
        +        "items": {
        +          "type": "string"
        +        },
        +        "type": "array"
        +      },
        +      "location_code": {
        +        "description": "<em>search engine location code</em><br>optional field<br>if you don't use this field, you will recieve global results<br><strong>if you use this field, you don't need to specify <code>location_name</code></strong><br>you can receive the list of available locations of the search engines with their <code>location_code</code> by making a separate request to <code>https://api.dataforseo.com/v3/keywords_data/dataforseo_trends/locations</code><br><strong>note that the data will be provided for the country the specified <code>location_code</code> belongs to;</strong><br>example:<br><code class=\"long-string\">2840</code>",
        +        "type": [
        +          "integer",
        +          "null"
        +        ]
        +      },
        +      "location_name": {
        +        "description": "<em>full name of search engine location</em><br>optional field<br>if you don't use this field, you will recieve global results<br><strong>if you use this field, you don't need to specify <code>location_code</code></strong><br>you can receive the list of available locations of the search engine with their <code>location_name</code> by making a separate request to <code>https://api.dataforseo.com/v3/keywords_data/dataforseo_trends/locations</code><br><strong>note that the data will be provided for the country the specified <code>location_name</code> belongs to;</strong><br>example:<br><code class=\"long-string\">United Kingdom</code>",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "tag": {
        +        "description": "<em>user-defined task identifier</em><br>optional field<br><em>the character limit is 255</em><br>you can use this parameter to identify the task and match it with the result<br>you will find the specified <code>tag</code> value in the <code>data</code> object of the response",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "time_range": {
        +        "description": "<em>preset time ranges</em><br>optional field<br>if you specify <code>date_from</code> or <code>date_to</code> parameters, this field will be ignored when setting a task<br><em>possible values for all <code>type</code> parameters:</em><br><code>past_4_hours</code>, <code>past_day</code>, <code>past_7_days</code>, <code>past_30_days</code>, <code>past_90_days</code>, <code>past_12_months</code>, <code>past_5_years</code>",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "type": {
        +        "description": "type of element",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      }
        +    },
        +    "type": "object"
        +  }
        +]
    • Changedpost_dataforseo_keywords_trends_explore_live1 field changed
      • changedInput schema / properties / body / items / oneOf
        Previous value: -[
        -  {
        -    "example": [
        -      {
        -        "keywords": [
        -          "iphone 14",
        -          "samsung s23"
        -        ],
        -        "location_code": 2840
        -      }
        -    ],
        -    "properties": {
        -      "date_from": {
        -        "description": "<em>starting date of the time range</em><br>optional field<br>if you don't specify this field, the current day and month of the preceding year will be used by default<br>minimal value for the <code>web</code> type: <code>2004-01-01</code><br>minimal value for other types: <code>2008-01-01</code><br>date format: <code>\"yyyy-mm-dd\"</code><br>example:<br><code>\"2019-01-15\"</code>",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      },
        -      "date_to": {
        -        "description": "<em>ending date of the time range</em><br>optional field<br>if you don't specify this field, the today's date will be used by default<br>date format: <code>\"yyyy-mm-dd\"</code><br>example:<br><code>\"2019-01-15\"</code>",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      },
        -      "keywords": {
        -        "description": "<em>keywords</em><br><strong>required field</strong><br>the maximum number of keywords you can specify: 5<p>learn more about rules and limitations of <code>keyword</code> and <code>keywords</code> fields in DataForSEO APIs in this <a href=\"https://dataforseo.com/help-center/rules-and-limitations-of-keyword-and-keywords-fields-in-dataforseo-apis\" rel=\"noopener noreferrer\" target=\"_blank\">Help Center article</a>",
        -        "items": {
        -          "type": "string"
        -        },
        -        "type": "array"
        -      },
        -      "location_code": {
        -        "description": "<em>search engine location code</em><br>optional field<br>if you don't use this field, you will recieve global results<br><strong>if you use this field, you don't need to specify <code>location_name</code></strong><br>you can receive the list of available locations of the search engines with their <code>location_code</code> by making a separate request to <code>https://api.dataforseo.com/v3/keywords_data/dataforseo_trends/locations</code><br><strong>note that the data will be provided for the country the specified <code>location_code</code> belongs to;</strong><br>example:<br><code class=\"long-string\">2840</code>",
        -        "type": [
        -          "integer",
        -          "null"
        -        ]
        -      },
        -      "location_name": {
        -        "description": "<em>full name of search engine location</em><br>optional field<br>if you don't use this field, you will recieve global results<br><strong>if you use this field, you don't need to specify <code>location_code</code></strong><br>you can receive the list of available locations of the search engine with their <code>location_name</code> by making a separate request to <code>https://api.dataforseo.com/v3/keywords_data/dataforseo_trends/locations</code><br><strong>note that the data will be provided for the country the specified <code>location_name</code> belongs to;</strong><br>example:<br><code class=\"long-string\">United Kingdom</code>",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      },
        -      "tag": {
        -        "description": "<em>user-defined task identifier</em><br>optional field<br><em>the character limit is 255</em><br>you can use this parameter to identify the task and match it with the result<br>you will find the specified <code>tag</code> value in the <code>data</code> object of the response",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      },
        -      "time_range": {
        -        "description": "<em>preset time ranges</em><br>optional field<br>if you specify <code>date_from</code> or <code>date_to</code> parameters, this field will be ignored when setting a task<br><em>possible values for all <code>type</code> parameters:</em><br><code>past_4_hours</code>, <code>past_day</code>, <code>past_7_days</code>, <code>past_30_days</code>, <code>past_90_days</code>, <code>past_12_months</code>, <code>past_5_years</code>",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      },
        -      "type": {
        -        "description": "type of element",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      }
        -    },
        -    "type": "object"
        -  }
        -]New value: +[
        +  {
        +    "properties": {
        +      "date_from": {
        +        "description": "<em>starting date of the time range</em><br>optional field<br>if you don't specify this field, the current day and month of the preceding year will be used by default<br>minimal value for the <code>web</code> type: <code>2004-01-01</code><br>minimal value for other types: <code>2008-01-01</code><br>date format: <code>\"yyyy-mm-dd\"</code><br>example:<br><code>\"2019-01-15\"</code>",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "date_to": {
        +        "description": "<em>ending date of the time range</em><br>optional field<br>if you don't specify this field, the today's date will be used by default<br>date format: <code>\"yyyy-mm-dd\"</code><br>example:<br><code>\"2019-01-15\"</code>",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "keywords": {
        +        "description": "<em>keywords</em><br><strong>required field</strong><br>the maximum number of keywords you can specify: 5<p>learn more about rules and limitations of <code>keyword</code> and <code>keywords</code> fields in DataForSEO APIs in this <a href=\"https://dataforseo.com/help-center/rules-and-limitations-of-keyword-and-keywords-fields-in-dataforseo-apis\" rel=\"noopener noreferrer\" target=\"_blank\">Help Center article</a>",
        +        "items": {
        +          "type": "string"
        +        },
        +        "type": "array"
        +      },
        +      "location_code": {
        +        "description": "<em>search engine location code</em><br>optional field<br>if you don't use this field, you will recieve global results<br><strong>if you use this field, you don't need to specify <code>location_name</code></strong><br>you can receive the list of available locations of the search engines with their <code>location_code</code> by making a separate request to <code>https://api.dataforseo.com/v3/keywords_data/dataforseo_trends/locations</code><br><strong>note that the data will be provided for the country the specified <code>location_code</code> belongs to;</strong><br>example:<br><code class=\"long-string\">2840</code>",
        +        "type": [
        +          "integer",
        +          "null"
        +        ]
        +      },
        +      "location_name": {
        +        "description": "<em>full name of search engine location</em><br>optional field<br>if you don't use this field, you will recieve global results<br><strong>if you use this field, you don't need to specify <code>location_code</code></strong><br>you can receive the list of available locations of the search engine with their <code>location_name</code> by making a separate request to <code>https://api.dataforseo.com/v3/keywords_data/dataforseo_trends/locations</code><br><strong>note that the data will be provided for the country the specified <code>location_name</code> belongs to;</strong><br>example:<br><code class=\"long-string\">United Kingdom</code>",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "tag": {
        +        "description": "<em>user-defined task identifier</em><br>optional field<br><em>the character limit is 255</em><br>you can use this parameter to identify the task and match it with the result<br>you will find the specified <code>tag</code> value in the <code>data</code> object of the response",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "time_range": {
        +        "description": "<em>preset time ranges</em><br>optional field<br>if you specify <code>date_from</code> or <code>date_to</code> parameters, this field will be ignored when setting a task<br><em>possible values for all <code>type</code> parameters:</em><br><code>past_4_hours</code>, <code>past_day</code>, <code>past_7_days</code>, <code>past_30_days</code>, <code>past_90_days</code>, <code>past_12_months</code>, <code>past_5_years</code>",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "type": {
        +        "description": "type of element",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      }
        +    },
        +    "type": "object"
        +  }
        +]
    • Changedpost_dataforseo_keywords_trends_merged_data_live1 field changed
      • changedInput schema / properties / body / items / oneOf
        Previous value: -[
        -  {
        -    "example": [
        -      {
        -        "date_from": "2023-01-01",
        -        "date_to": "2024-01-01",
        -        "keywords": [
        -          "rugby",
        -          "cricket"
        -        ],
        -        "location_name": "United States",
        -        "type": "web"
        -      }
        -    ],
        -    "properties": {
        -      "date_from": {
        -        "description": "<em>starting date of the time range</em><br>optional field<br>if you don't specify this field, the current day and month of the preceding year will be used by default<br>minimal value for the <code>web</code> type: <code>2004-01-01</code><br>minimal value for other types: <code>2008-01-01</code><br>date format: <code>\"yyyy-mm-dd\"</code><br>example:<br><code>\"2019-01-15\"</code>",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      },
        -      "date_to": {
        -        "description": "<em>ending date of the time range</em><br>optional field<br>if you don't specify this field, the today's date will be used by default<br>date format: <code>\"yyyy-mm-dd\"</code><br>example:<br><code>\"2019-01-15\"</code>",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      },
        -      "keywords": {
        -        "description": "<em>keywords</em><br><strong>required field</strong><br>the maximum number of keywords you can specify: 5<br>avoid symbols and special characters (e.g., UTF symbols, emojis);<br>specifying non-Latin characters, you’ll get data for the countries where they are used<p>learn more about rules and limitations of <code>keyword</code> and <code>keywords</code> fields in DataForSEO APIs in this <a href=\"https://dataforseo.com/help-center/rules-and-limitations-of-keyword-and-keywords-fields-in-dataforseo-apis\" rel=\"noopener noreferrer\" target=\"_blank\">Help Center article</a>",
        -        "items": {
        -          "type": "string"
        -        },
        -        "type": "array"
        -      },
        -      "location_code": {
        -        "description": "<em>search engine location code</em><br>optional field<br>if you don't use this field, you will recieve global results<br><strong>if you use this field, you don't need to specify <code>location_name</code></strong><br>you can receive the list of available locations of the search engines with their <code>location_code</code> by making a separate request to <code>https://api.dataforseo.com/v3/keywords_data/dataforseo_trends/locations</code><br><strong>note that the data will be provided for the country the specified <code>location_code</code> belongs to;</strong><br>example:<br><code class=\"long-string\">2840</code>",
        -        "type": [
        -          "integer",
        -          "null"
        -        ]
        -      },
        -      "location_name": {
        -        "description": "<em>full name of search engine location</em><br>optional field<br>if you don't use this field, you will recieve global results<br><strong>if you use this field, you don't need to specify <code>location_code</code></strong><br>you can receive the list of available locations of the search engine with their <code>location_name</code> by making a separate request to <code>https://api.dataforseo.com/v3/keywords_data/dataforseo_trends/locations</code><br><strong>note that the data will be provided for the country the specified <code>location_name</code> belongs to;</strong><br>example:<br><code class=\"long-string\">United Kingdom</code>",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      },
        -      "tag": {
        -        "description": "<em>user-defined task identifier</em><br>optional field<br><em>the character limit is 255</em><br>you can use this parameter to identify the task and match it with the result<br>you will find the specified <code>tag</code> value in the <code>data</code> object of the response",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      },
        -      "time_range": {
        -        "description": "<em>preset time ranges</em><br>optional field<br>if you specify <code>date_from</code> or <code>date_to</code> parameters, this field will be ignored when setting a task<br><em>possible values for all <code>type</code> parameters:</em><br><code>past_4_hours</code>, <code>past_day</code>, <code>past_7_days</code>, <code>past_30_days</code>, <code>past_90_days</code>, <code>past_12_months</code>, <code>past_5_years</code>",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      },
        -      "type": {
        -        "description": "type of element",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      }
        -    },
        -    "type": "object"
        -  }
        -]New value: +[
        +  {
        +    "properties": {
        +      "date_from": {
        +        "description": "<em>starting date of the time range</em><br>optional field<br>if you don't specify this field, the current day and month of the preceding year will be used by default<br>minimal value for the <code>web</code> type: <code>2004-01-01</code><br>minimal value for other types: <code>2008-01-01</code><br>date format: <code>\"yyyy-mm-dd\"</code><br>example:<br><code>\"2019-01-15\"</code>",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "date_to": {
        +        "description": "<em>ending date of the time range</em><br>optional field<br>if you don't specify this field, the today's date will be used by default<br>date format: <code>\"yyyy-mm-dd\"</code><br>example:<br><code>\"2019-01-15\"</code>",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "keywords": {
        +        "description": "<em>keywords</em><br><strong>required field</strong><br>the maximum number of keywords you can specify: 5<br>avoid symbols and special characters (e.g., UTF symbols, emojis);<br>specifying non-Latin characters, you’ll get data for the countries where they are used<p>learn more about rules and limitations of <code>keyword</code> and <code>keywords</code> fields in DataForSEO APIs in this <a href=\"https://dataforseo.com/help-center/rules-and-limitations-of-keyword-and-keywords-fields-in-dataforseo-apis\" rel=\"noopener noreferrer\" target=\"_blank\">Help Center article</a>",
        +        "items": {
        +          "type": "string"
        +        },
        +        "type": "array"
        +      },
        +      "location_code": {
        +        "description": "<em>search engine location code</em><br>optional field<br>if you don't use this field, you will recieve global results<br><strong>if you use this field, you don't need to specify <code>location_name</code></strong><br>you can receive the list of available locations of the search engines with their <code>location_code</code> by making a separate request to <code>https://api.dataforseo.com/v3/keywords_data/dataforseo_trends/locations</code><br><strong>note that the data will be provided for the country the specified <code>location_code</code> belongs to;</strong><br>example:<br><code class=\"long-string\">2840</code>",
        +        "type": [
        +          "integer",
        +          "null"
        +        ]
        +      },
        +      "location_name": {
        +        "description": "<em>full name of search engine location</em><br>optional field<br>if you don't use this field, you will recieve global results<br><strong>if you use this field, you don't need to specify <code>location_code</code></strong><br>you can receive the list of available locations of the search engine with their <code>location_name</code> by making a separate request to <code>https://api.dataforseo.com/v3/keywords_data/dataforseo_trends/locations</code><br><strong>note that the data will be provided for the country the specified <code>location_name</code> belongs to;</strong><br>example:<br><code class=\"long-string\">United Kingdom</code>",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "tag": {
        +        "description": "<em>user-defined task identifier</em><br>optional field<br><em>the character limit is 255</em><br>you can use this parameter to identify the task and match it with the result<br>you will find the specified <code>tag</code> value in the <code>data</code> object of the response",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "time_range": {
        +        "description": "<em>preset time ranges</em><br>optional field<br>if you specify <code>date_from</code> or <code>date_to</code> parameters, this field will be ignored when setting a task<br><em>possible values for all <code>type</code> parameters:</em><br><code>past_4_hours</code>, <code>past_day</code>, <code>past_7_days</code>, <code>past_30_days</code>, <code>past_90_days</code>, <code>past_12_months</code>, <code>past_5_years</code>",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "type": {
        +        "description": "type of element",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      }
        +    },
        +    "type": "object"
        +  }
        +]
    • Changedpost_dataforseo_keywords_trends_subregion_interests_live1 field changed
      • changedInput schema / properties / body / items / oneOf
        Previous value: -[
        -  {
        -    "example": [
        -      {
        -        "date_from": "2023-01-01",
        -        "date_to": "2024-01-01",
        -        "keywords": [
        -          "rugby",
        -          "cricket"
        -        ],
        -        "location_name": "United States",
        -        "type": "web"
        -      }
        -    ],
        -    "properties": {
        -      "date_from": {
        -        "description": "<em>starting date of the time range</em><br>optional field<br>if you don't specify this field, the current day and month of the preceding year will be used by default<br>minimal value for the <code>web</code> type: <code>2004-01-01</code><br>minimal value for other types: <code>2008-01-01</code><br>date format: <code>\"yyyy-mm-dd\"</code><br>example:<br><code>\"2019-01-15\"</code>",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      },
        -      "date_to": {
        -        "description": "<em>ending date of the time range</em><br>optional field<br>if you don't specify this field, the today's date will be used by default<br>date format: <code>\"yyyy-mm-dd\"</code><br>example:<br><code>\"2019-01-15\"</code>",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      },
        -      "keywords": {
        -        "description": "<em>keywords</em><br><strong>required field</strong><br>the maximum number of keywords you can specify: 5<br>avoid symbols and special characters (e.g., UTF symbols, emojis);<br>specifying non-Latin characters, you’ll get data for the countries where they are used<p>learn more about rules and limitations of <code>keyword</code> and <code>keywords</code> fields in DataForSEO APIs in this <a href=\"https://dataforseo.com/help-center/rules-and-limitations-of-keyword-and-keywords-fields-in-dataforseo-apis\" rel=\"noopener noreferrer\" target=\"_blank\">Help Center article</a>",
        -        "items": {
        -          "type": "string"
        -        },
        -        "type": "array"
        -      },
        -      "location_code": {
        -        "description": "<em>search engine location code</em><br>optional field<br>if you don't use this field, you will recieve global results<br><strong>if you use this field, you don't need to specify <code>location_name</code></strong><br>you can receive the list of available locations of the search engines with their <code>location_code</code> by making a separate request to <code>https://api.dataforseo.com/v3/keywords_data/dataforseo_trends/locations</code><br><strong>note that the data will be provided for the country the specified <code>location_code</code> belongs to;</strong><br>example:<br><code class=\"long-string\">2840</code>",
        -        "type": [
        -          "integer",
        -          "null"
        -        ]
        -      },
        -      "location_name": {
        -        "description": "<em>full name of search engine location</em><br>optional field<br>if you don't use this field, you will recieve global results<br><strong>if you use this field, you don't need to specify <code>location_code</code></strong><br>you can receive the list of available locations of the search engine with their <code>location_name</code> by making a separate request to <code>https://api.dataforseo.com/v3/keywords_data/dataforseo_trends/locations</code><br><strong>note that the data will be provided for the country the specified <code>location_name</code> belongs to;</strong><br>example:<br><code class=\"long-string\">United Kingdom</code>",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      },
        -      "tag": {
        -        "description": "<em>user-defined task identifier</em><br>optional field<br><em>the character limit is 255</em><br>you can use this parameter to identify the task and match it with the result<br>you will find the specified <code>tag</code> value in the <code>data</code> object of the response",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      },
        -      "time_range": {
        -        "description": "<em>preset time ranges</em><br>optional field<br>if you specify <code>date_from</code> or <code>date_to</code> parameters, this field will be ignored when setting a task<br><em>possible values for all <code>type</code> parameters:</em><br><code>past_4_hours</code>, <code>past_day</code>, <code>past_7_days</code>, <code>past_30_days</code>, <code>past_90_days</code>, <code>past_12_months</code>, <code>past_5_years</code>",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      },
        -      "type": {
        -        "description": "type of element",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      }
        -    },
        -    "type": "object"
        -  }
        -]New value: +[
        +  {
        +    "properties": {
        +      "date_from": {
        +        "description": "<em>starting date of the time range</em><br>optional field<br>if you don't specify this field, the current day and month of the preceding year will be used by default<br>minimal value for the <code>web</code> type: <code>2004-01-01</code><br>minimal value for other types: <code>2008-01-01</code><br>date format: <code>\"yyyy-mm-dd\"</code><br>example:<br><code>\"2019-01-15\"</code>",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "date_to": {
        +        "description": "<em>ending date of the time range</em><br>optional field<br>if you don't specify this field, the today's date will be used by default<br>date format: <code>\"yyyy-mm-dd\"</code><br>example:<br><code>\"2019-01-15\"</code>",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "keywords": {
        +        "description": "<em>keywords</em><br><strong>required field</strong><br>the maximum number of keywords you can specify: 5<br>avoid symbols and special characters (e.g., UTF symbols, emojis);<br>specifying non-Latin characters, you’ll get data for the countries where they are used<p>learn more about rules and limitations of <code>keyword</code> and <code>keywords</code> fields in DataForSEO APIs in this <a href=\"https://dataforseo.com/help-center/rules-and-limitations-of-keyword-and-keywords-fields-in-dataforseo-apis\" rel=\"noopener noreferrer\" target=\"_blank\">Help Center article</a>",
        +        "items": {
        +          "type": "string"
        +        },
        +        "type": "array"
        +      },
        +      "location_code": {
        +        "description": "<em>search engine location code</em><br>optional field<br>if you don't use this field, you will recieve global results<br><strong>if you use this field, you don't need to specify <code>location_name</code></strong><br>you can receive the list of available locations of the search engines with their <code>location_code</code> by making a separate request to <code>https://api.dataforseo.com/v3/keywords_data/dataforseo_trends/locations</code><br><strong>note that the data will be provided for the country the specified <code>location_code</code> belongs to;</strong><br>example:<br><code class=\"long-string\">2840</code>",
        +        "type": [
        +          "integer",
        +          "null"
        +        ]
        +      },
        +      "location_name": {
        +        "description": "<em>full name of search engine location</em><br>optional field<br>if you don't use this field, you will recieve global results<br><strong>if you use this field, you don't need to specify <code>location_code</code></strong><br>you can receive the list of available locations of the search engine with their <code>location_name</code> by making a separate request to <code>https://api.dataforseo.com/v3/keywords_data/dataforseo_trends/locations</code><br><strong>note that the data will be provided for the country the specified <code>location_name</code> belongs to;</strong><br>example:<br><code class=\"long-string\">United Kingdom</code>",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "tag": {
        +        "description": "<em>user-defined task identifier</em><br>optional field<br><em>the character limit is 255</em><br>you can use this parameter to identify the task and match it with the result<br>you will find the specified <code>tag</code> value in the <code>data</code> object of the response",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "time_range": {
        +        "description": "<em>preset time ranges</em><br>optional field<br>if you specify <code>date_from</code> or <code>date_to</code> parameters, this field will be ignored when setting a task<br><em>possible values for all <code>type</code> parameters:</em><br><code>past_4_hours</code>, <code>past_day</code>, <code>past_7_days</code>, <code>past_30_days</code>, <code>past_90_days</code>, <code>past_12_months</code>, <code>past_5_years</code>",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "type": {
        +        "description": "type of element",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      }
        +    },
        +    "type": "object"
        +  }
        +]
    • Changedpost_dataforseo_labs_google_bulk_keyword_difficulty_live1 field changed
      • changedInput schema / properties / body / items / oneOf
        Previous value: -[
        -  {
        -    "example": [
        -      {
        -        "keywords": [
        -          "dentist new york",
        -          "pizza brooklyn",
        -          "car dealer los angeles"
        -        ],
        -        "language_code": "en",
        -        "location_code": 2840
        -      }
        -    ],
        -    "properties": {
        -      "keywords": {
        -        "description": "<em>target keywords</em><br><strong>required field</strong><br>UTF-8 encoding<br>maximum number of keywords you can specify in this array: 1000<br>the keywords will be converted to lowercase format<p>learn more about rules and limitations of <code>keyword</code> and <code>keywords</code> fields in DataForSEO APIs in this <a href=\"https://dataforseo.com/help-center/rules-and-limitations-of-keyword-and-keywords-fields-in-dataforseo-apis\" rel=\"noopener noreferrer\" target=\"_blank\">Help Center article</a>",
        -        "items": {
        -          "type": "string"
        -        },
        -        "type": "array"
        -      },
        -      "language_code": {
        -        "description": "<em>language code</em><br><strong>required field if don't specify <code>language_name</code></strong><br>you can receive the list of available languages with their <code>language_code</code> by making a separate request to the <br><code>https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages</code><br>example:<br><code class=\"long-string\">en</code>",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      },
        -      "language_name": {
        -        "description": "<em>full name of the language</em><br><strong>required field if don't specify <code>language_code</code></strong><br>you can receive the list of available languages with their <code>language_name</code> by making a separate request to the <br><code>https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages</code><br>example:<br><code class=\"long-string\">English</code>",
        -        "type": "string"
        -      },
        -      "location_code": {
        -        "description": "<em>location code</em><br><strong>required field if don't specify <code>location_name</code></strong><br>you can receive the list of available locations with their <code>location_code</code> by making a separate request to the <br><code>https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages</code><br>example:<br><code class=\"long-string\">2840</code>",
        -        "type": "integer"
        -      },
        -      "location_name": {
        -        "description": "<em>full name of the location</em><br><strong>required field if don't specify <code>location_code</code></strong><br>you can receive the list of available locations with their <code>location_name</code> by making a separate request to the <br><code>https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages</code><br>example:<br><code class=\"long-string\">United Kingdom</code>",
        -        "type": "string"
        -      },
        -      "tag": {
        -        "description": "<em>user-defined task identifier</em><br>optional field<br><em>the character limit is 255</em><br>you can use this parameter to identify the task and match it with the result<br>you will find the specified <code>tag</code> value in the <code>data</code> object of the response",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      }
        -    },
        -    "type": "object"
        -  }
        -]New value: +[
        +  {
        +    "properties": {
        +      "keywords": {
        +        "description": "<em>target keywords</em><br><strong>required field</strong><br>UTF-8 encoding<br>maximum number of keywords you can specify in this array: 1000<br>the keywords will be converted to lowercase format<p>learn more about rules and limitations of <code>keyword</code> and <code>keywords</code> fields in DataForSEO APIs in this <a href=\"https://dataforseo.com/help-center/rules-and-limitations-of-keyword-and-keywords-fields-in-dataforseo-apis\" rel=\"noopener noreferrer\" target=\"_blank\">Help Center article</a>",
        +        "items": {
        +          "type": "string"
        +        },
        +        "type": "array"
        +      },
        +      "language_code": {
        +        "description": "<em>language code</em><br><strong>required field if don't specify <code>language_name</code></strong><br>you can receive the list of available languages with their <code>language_code</code> by making a separate request to the <br><code>https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages</code><br>example:<br><code class=\"long-string\">en</code>",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "language_name": {
        +        "description": "<em>full name of the language</em><br><strong>required field if don't specify <code>language_code</code></strong><br>you can receive the list of available languages with their <code>language_name</code> by making a separate request to the <br><code>https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages</code><br>example:<br><code class=\"long-string\">English</code>",
        +        "type": "string"
        +      },
        +      "location_code": {
        +        "description": "<em>location code</em><br><strong>required field if don't specify <code>location_name</code></strong><br>you can receive the list of available locations with their <code>location_code</code> by making a separate request to the <br><code>https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages</code><br>example:<br><code class=\"long-string\">2840</code>",
        +        "type": "integer"
        +      },
        +      "location_name": {
        +        "description": "<em>full name of the location</em><br><strong>required field if don't specify <code>location_code</code></strong><br>you can receive the list of available locations with their <code>location_name</code> by making a separate request to the <br><code>https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages</code><br>example:<br><code class=\"long-string\">United Kingdom</code>",
        +        "type": "string"
        +      },
        +      "tag": {
        +        "description": "<em>user-defined task identifier</em><br>optional field<br><em>the character limit is 255</em><br>you can use this parameter to identify the task and match it with the result<br>you will find the specified <code>tag</code> value in the <code>data</code> object of the response",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      }
        +    },
        +    "type": "object"
        +  }
        +]
    • Changedpost_dataforseo_labs_google_categories_for_kw_live1 field changed
      • changedInput schema / properties / body / items / oneOf
        Previous value: -[
        -  {
        -    "example": [
        -      {
        -        "keywords": [
        -          "dentist new york",
        -          "pizza brooklyn",
        -          "car dealer los angeles"
        -        ],
        -        "language_code": "en"
        -      }
        -    ],
        -    "properties": {
        -      "keywords": {
        -        "description": "<em>target keywords</em><br><strong>required field</strong><br>UTF-8 encoding<br>maximum number of keywords you can specify in this array: 1000<br>the keywords will be converted to lowercase format<p>learn more about rules and limitations of <code>keyword</code> and <code>keywords</code> fields in DataForSEO APIs in this <a href=\"https://dataforseo.com/help-center/rules-and-limitations-of-keyword-and-keywords-fields-in-dataforseo-apis\" rel=\"noopener noreferrer\" target=\"_blank\">Help Center article</a>",
        -        "items": {
        -          "type": "string"
        -        },
        -        "type": "array"
        -      },
        -      "language_code": {
        -        "description": "<em>language code</em><br><strong>required field if don't specify <code>language_name</code></strong><br>you can receive the list of available languages with their <code>language_code</code> by making a separate request to the <br><code>https://api.dataforseo.com/v3/dataforseo_labs/google/categories_for_keywords/languages</code><br>example:<br><code class=\"long-string\">en</code>",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      },
        -      "language_name": {
        -        "description": "<em>full name of the language</em><br><strong>required field if don't specify <code>language_code</code></strong><br>you can receive the list of available languages with their <code>language_name</code> by making a separate request to the <br><code>https://api.dataforseo.com/v3/dataforseo_labs/google/categories_for_keywords/languages</code><br>example:<br><code class=\"long-string\">English</code>",
        -        "type": "string"
        -      },
        -      "tag": {
        -        "description": "<em>user-defined task identifier</em><br>optional field<br><em>the character limit is 255</em><br>you can use this parameter to identify the task and match it with the result<br>you will find the specified <code>tag</code> value in the <code>data</code> object of the response",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      }
        -    },
        -    "type": "object"
        -  }
        -]New value: +[
        +  {
        +    "properties": {
        +      "keywords": {
        +        "description": "<em>target keywords</em><br><strong>required field</strong><br>UTF-8 encoding<br>maximum number of keywords you can specify in this array: 1000<br>the keywords will be converted to lowercase format<p>learn more about rules and limitations of <code>keyword</code> and <code>keywords</code> fields in DataForSEO APIs in this <a href=\"https://dataforseo.com/help-center/rules-and-limitations-of-keyword-and-keywords-fields-in-dataforseo-apis\" rel=\"noopener noreferrer\" target=\"_blank\">Help Center article</a>",
        +        "items": {
        +          "type": "string"
        +        },
        +        "type": "array"
        +      },
        +      "language_code": {
        +        "description": "<em>language code</em><br><strong>required field if don't specify <code>language_name</code></strong><br>you can receive the list of available languages with their <code>language_code</code> by making a separate request to the <br><code>https://api.dataforseo.com/v3/dataforseo_labs/google/categories_for_keywords/languages</code><br>example:<br><code class=\"long-string\">en</code>",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "language_name": {
        +        "description": "<em>full name of the language</em><br><strong>required field if don't specify <code>language_code</code></strong><br>you can receive the list of available languages with their <code>language_name</code> by making a separate request to the <br><code>https://api.dataforseo.com/v3/dataforseo_labs/google/categories_for_keywords/languages</code><br>example:<br><code class=\"long-string\">English</code>",
        +        "type": "string"
        +      },
        +      "tag": {
        +        "description": "<em>user-defined task identifier</em><br>optional field<br><em>the character limit is 255</em><br>you can use this parameter to identify the task and match it with the result<br>you will find the specified <code>tag</code> value in the <code>data</code> object of the response",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      }
        +    },
        +    "type": "object"
        +  }
        +]
    • Changedpost_dataforseo_labs_google_historical_keyword_data_live1 field changed
      • changedInput schema / properties / body / items / oneOf
        Previous value: -[
        -  {
        -    "example": [
        -      {
        -        "keywords": [
        -          "iphone"
        -        ],
        -        "language_code": "en",
        -        "location_code": 2840
        -      }
        -    ],
        -    "properties": {
        -      "keywords": {
        -        "description": "<em>keywords</em><br><strong>required field</strong><br>The maximum number of keywords you can specify: 700<br>The maximum number of characters for each keyword: 80<br>The maximum number of words for each keyword phrase: 10<br>the specified keywords will be converted to lowercase format, data will be provided in a separate array<p><strong>note</strong> that if some of the keywords specified in this array are omitted in the results you receive, then our database doesn't contain such keywords and cannot return data on them<br>you will not be charged for the keywords omitted in the results<p>learn more about rules and limitations of <code>keyword</code> and <code>keywords</code> fields in DataForSEO APIs in this <a href=\"https://dataforseo.com/help-center/rules-and-limitations-of-keyword-and-keywords-fields-in-dataforseo-apis\" rel=\"noopener noreferrer\" target=\"_blank\">Help Center article</a>",
        -        "items": {
        -          "type": "string"
        -        },
        -        "type": "array"
        -      },
        -      "language_code": {
        -        "description": "<em>language code</em><br><strong>required field if you don't specify</strong> <code>language_name</code><br><strong>Note:</strong> it is required to specify either <code>language_name</code> or <code>language_code</code><br>you can receive the list of available locations with their <code>language_code</code> by making a separate request to the <br><code>https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages</code><br>example:<br><code class=\"long-string\">en</code>",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      },
        -      "language_name": {
        -        "description": "<em>full name of the language</em><br><strong>required field if you don't specify</strong> <code>language_code</code><br><strong>Note:</strong> it is required to specify either <code>language_name</code> or <code>language_code</code><br>you can receive the list of available locations with their <code>language_name</code> by making a separate request to the <br><code>https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages</code><br>example:<br><code class=\"long-string\">English</code>",
        -        "type": "string"
        -      },
        -      "location_code": {
        -        "description": "<em>location code</em><br><strong>required field if you don't specify</strong> <code>location_name</code><br><strong>Note:</strong> it is required to specify either <code>location_name</code> or <code>location_code</code><br>you can receive the list of available locations with their <code>location_code</code> by making a separate request to the <br><code>https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages</code><br>example:<br><code class=\"long-string\">2840</code>",
        -        "type": "integer"
        -      },
        -      "location_name": {
        -        "description": "<em>full name of the location</em><br><strong>required field if you don't specify</strong> <code>location_code</code><br><strong>Note:</strong> it is required to specify either <code>location_name</code> or <code>location_code</code><br>you can receive the list of available locations with their <code>location_name</code> by making a separate request to the <br><code>https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages</code><br>example:<br><code class=\"long-string\">United Kingdom</code>",
        -        "type": "string"
        -      },
        -      "tag": {
        -        "description": "<em>user-defined task identifier</em><br>optional field<br><em>the character limit is 255</em><br>you can use this parameter to identify the task and match it with the result<br>you will find the specified <code>tag</code> value in the <code>data</code> object of the response",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      }
        -    },
        -    "type": "object"
        -  }
        -]New value: +[
        +  {
        +    "properties": {
        +      "keywords": {
        +        "description": "<em>keywords</em><br><strong>required field</strong><br>The maximum number of keywords you can specify: 700<br>The maximum number of characters for each keyword: 80<br>The maximum number of words for each keyword phrase: 10<br>the specified keywords will be converted to lowercase format, data will be provided in a separate array<p><strong>note</strong> that if some of the keywords specified in this array are omitted in the results you receive, then our database doesn't contain such keywords and cannot return data on them<br>you will not be charged for the keywords omitted in the results<p>learn more about rules and limitations of <code>keyword</code> and <code>keywords</code> fields in DataForSEO APIs in this <a href=\"https://dataforseo.com/help-center/rules-and-limitations-of-keyword-and-keywords-fields-in-dataforseo-apis\" rel=\"noopener noreferrer\" target=\"_blank\">Help Center article</a>",
        +        "items": {
        +          "type": "string"
        +        },
        +        "type": "array"
        +      },
        +      "language_code": {
        +        "description": "<em>language code</em><br><strong>required field if you don't specify</strong> <code>language_name</code><br><strong>Note:</strong> it is required to specify either <code>language_name</code> or <code>language_code</code><br>you can receive the list of available locations with their <code>language_code</code> by making a separate request to the <br><code>https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages</code><br>example:<br><code class=\"long-string\">en</code>",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "language_name": {
        +        "description": "<em>full name of the language</em><br><strong>required field if you don't specify</strong> <code>language_code</code><br><strong>Note:</strong> it is required to specify either <code>language_name</code> or <code>language_code</code><br>you can receive the list of available locations with their <code>language_name</code> by making a separate request to the <br><code>https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages</code><br>example:<br><code class=\"long-string\">English</code>",
        +        "type": "string"
        +      },
        +      "location_code": {
        +        "description": "<em>location code</em><br><strong>required field if you don't specify</strong> <code>location_name</code><br><strong>Note:</strong> it is required to specify either <code>location_name</code> or <code>location_code</code><br>you can receive the list of available locations with their <code>location_code</code> by making a separate request to the <br><code>https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages</code><br>example:<br><code class=\"long-string\">2840</code>",
        +        "type": "integer"
        +      },
        +      "location_name": {
        +        "description": "<em>full name of the location</em><br><strong>required field if you don't specify</strong> <code>location_code</code><br><strong>Note:</strong> it is required to specify either <code>location_name</code> or <code>location_code</code><br>you can receive the list of available locations with their <code>location_name</code> by making a separate request to the <br><code>https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages</code><br>example:<br><code class=\"long-string\">United Kingdom</code>",
        +        "type": "string"
        +      },
        +      "tag": {
        +        "description": "<em>user-defined task identifier</em><br>optional field<br><em>the character limit is 255</em><br>you can use this parameter to identify the task and match it with the result<br>you will find the specified <code>tag</code> value in the <code>data</code> object of the response",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      }
        +    },
        +    "type": "object"
        +  }
        +]
    • Changedpost_dataforseo_labs_google_keyword_ideas_live3 fields changed
      • addedInput schema / $defs
        Added value: +{
        +  "Provider0A3E90081762_AisaDataforseoFilterJsonValue": {
        +    "anyOf": [
        +      {
        +        "type": "string"
        +      },
        +      {
        +        "type": "number"
        +      },
        +      {
        +        "type": "boolean"
        +      },
        +      {
        +        "additionalProperties": {
        +          "$ref": "#/$defs/Provider0A3E90081762_AisaDataforseoFilterJsonValue"
        +        },
        +        "type": [
        +          "object",
        +          "null"
        +        ]
        +      },
        +      {
        +        "items": {
        +          "$ref": "#/$defs/Provider0A3E90081762_AisaDataforseoFilterJsonValue"
        +        },
        +        "type": "array"
        +      }
        +    ],
        +    "description": "JSON representation of filter values and nested expressions. Field names, operators, condition counts and operand compatibility remain provider-validated as documented for each endpoint; this is not a complete filter-language validator."
        +  }
        +}
      • addedInput schema / properties / body / items / anyOf
        Added value: +[
        +  {
        +    "properties": {
        +      "closely_variants": {
        +        "description": "<em>search mode</em><br>optional field<br>if set to_<code class=\"prettyprint\">true</code> the results will be based on the phrase-match search algorithm<br>if set to <code class=\"prettyprint\">false</code> the results will be based on the broad-match search algorithm<br>default value: <code>false</code>n",
        +        "type": [
        +          "boolean",
        +          "null"
        +        ]
        +      },
        +      "filters": {
        +        "description": "<em>array of results filtering parameters</em><br>optional field<br><strong>you can add several filters at once (8 filters maximum)</strong><br>you should set a logical operator <code>and</code>, <code>or</code> between the conditions<br>the following operators are supported:<br><code>regex</code>, <code>not_regex</code>, <code>&lt;</code>, <code>&lt;=</code>, <code>&gt;</code>, <code>&gt;=</code>, <code>=</code>, <code>&lt;&gt;</code>, <code>in</code>, <code>not_in</code>, <code>match</code>, <code>not_match</code>, <code>ilike</code>, <code>not_ilike</code>, <code>like</code>, <code>not_like</code><br>you can use the <code>%</code> operator with <code>like</code> and <code>not_like</code>,as well as <code>ilike</code>, <code>not_ilike</code> to match any string of zero or more characters<br><strong>note that you can not filter the results by <code>relevance</code></strong><br>example:<br><code>[\"keyword_info.search_volume\",\"&gt;\",0]</code><p><code>[[\"keyword_info.search_volume\",\"in\",[0,1000]],<br>\"and\",<br>[\"keyword_info.competition_level\",\"=\",\"LOW\"]]</code><p><code>[[\"keyword_info.search_volume\",\"&gt;\",100],<br>\"and\",<br>[[\"keyword_info.cpc\",\"&lt;\",0.5],<br>\"or\",<p>[\"keyword_info.high_top_of_page_bid\",\"&lt;=\",0.5]]]</code><br>for more information about filters, please refer to <a href=\"/v3/dataforseo_labs/filters\" target=\"_blank\" rel=\"noopener noreferrer\">Dataforseo Labs - Filters</a> or this <a href=\"https://dataforseo.com/help-center/how-to-use-filters-in-dataforseo-labs-api\" rel=\"noopener noreferrer\" target=\"_blank\">help center guide</a>",
        +        "items": {
        +          "anyOf": [
        +            {
        +              "type": "string"
        +            },
        +            {
        +              "type": "number"
        +            },
        +            {
        +              "type": "boolean"
        +            },
        +            {
        +              "additionalProperties": {
        +                "$ref": "#/$defs/Provider0A3E90081762_AisaDataforseoFilterJsonValue"
        +              },
        +              "type": [
        +                "object",
        +                "null"
        +              ]
        +            },
        +            {
        +              "items": {
        +                "$ref": "#/$defs/Provider0A3E90081762_AisaDataforseoFilterJsonValue"
        +              },
        +              "type": "array"
        +            }
        +          ],
        +          "description": "JSON representation of filter values and nested expressions. Field names, operators, condition counts and operand compatibility remain provider-validated as documented for each endpoint; this is not a complete filter-language validator."
        +        },
        +        "type": [
        +          "array",
        +          "null"
        +        ]
        +      },
        +      "ignore_synonyms": {
        +        "description": "<em>ignore highly similar keywords</em><br>optional field<br>if set to_<code class=\"prettyprint\">true</code> only core keywords will be returned, all highly similar keywords will be excluded;  <br>default value: <code>false</code>n",
        +        "type": [
        +          "boolean",
        +          "null"
        +        ]
        +      },
        +      "include_clickstream_data": {
        +        "description": "<em>include or exclude data from clickstream-based metrics in the result</em><br>optional field<br>if the parameter is set to <code>true</code>, you will receive <code>clickstream_keyword_info</code>, <code>keyword_info_normalized_with_clickstream</code>, and <code>keyword_info_normalized_with_bing</code> fields in the response<br>default value: <code>false</code><br>with this parameter enabled, you will be charged double the price for the request<p>learn more about how clickstream-based metrics are calculated in this <a href=\"https://dataforseo.com/help-center/what-are-clickstream-based-metrics-and-how-do-we-calculate-them\" rel=\"noopener noreferrer\" target=\"_blank\">help center article</a>",
        +        "type": [
        +          "boolean",
        +          "null"
        +        ]
        +      },
        +      "include_serp_info": {
        +        "description": "<em>include data from SERP for each keyword</em><br>optional field<br>if set to <code>true</code>, we will return a <code>serp_info</code> array containing SERP data (number of search results, relevant URL, and SERP features) for every keyword in the response<br>default value: <code>false</code>",
        +        "type": [
        +          "boolean",
        +          "null"
        +        ]
        +      },
        +      "keywords": {
        +        "description": "<em>keywords</em><br><strong>required field</strong><br>UTF-8 encoding<br>The maximum number of keywords you can specify: 200.<br>The keywords will be converted to lowercase format<p>learn more about rules and limitations of <code>keyword</code> and <code>keywords</code> fields in DataForSEO APIs in this <a href=\"https://dataforseo.com/help-center/rules-and-limitations-of-keyword-and-keywords-fields-in-dataforseo-apis\" rel=\"noopener noreferrer\" target=\"_blank\">Help Center article</a>",
        +        "items": {
        +          "type": "string"
        +        },
        +        "type": "array"
        +      },
        +      "language_code": {
        +        "description": "<em>language code</em><br>optional field<br>if you use this field, you don't need to specify <code>language_name</code><br>you can receive the list of available languages with their <code>language_code</code> by making a separate request to the<br><code>https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages</code><br>example:<br><code class=\"long-string\">en</code><br><strong>Note:</strong> if omitted, results default to the language with the most keyword records in the specified location;<br>refer to the <code>available_languages.keywords</code> field of the <a href=\"https://docs.dataforseo.com/v3/dataforseo_labs/locations_and_languages\" target=\"_blank\">Locations and Languages endpoint</a> to determine the default language",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "language_name": {
        +        "description": "<em>full name of the language</em><br>optional field<br>if you use this field, you don't need to specify <code>language_code</code><br>you can receive the list of available languages with their <code>language_name</code> by making a separate request to the<br><code>https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages</code><br>example:<br><code class=\"long-string\">English</code><br><strong>Note:</strong> if omitted, results default to the language with the most keyword records in the specified location;<br>refer to the <code>available_languages.keywords</code> field of the <a href=\"https://docs.dataforseo.com/v3/dataforseo_labs/locations_and_languages\" target=\"_blank\">Locations and Languages endpoint</a> to determine the default language",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "limit": {
        +        "description": "<em>the maximum number of keywords in the results array</em><br>optional field<br>default value: <code>700</code><br>maximum value: <code>1000</code>",
        +        "type": [
        +          "integer",
        +          "null"
        +        ]
        +      },
        +      "location_code": {
        +        "description": "<em>unique location identifier</em><br><strong>required field if you don't specify</strong> <code>location_name</code><br><strong>Note:</strong> it is required to specify either <code>location_name</code> or <code>location_code</code><br>you can receive the list of available locations with their <code>location_code</code> by making a separate request to the <br><code>https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages</code><br>example:<br><code class=\"long-string\">2840</code>",
        +        "type": "integer"
        +      },
        +      "location_name": {
        +        "description": "<em>full name of the location</em><br><strong>required field if you don't specify</strong> <code>location_code</code><br><strong>Note:</strong> it is required to specify either <code>location_name</code> or <code>location_code</code><br>you can receive the list of available locations with their <code>location_name</code> by making a separate request to the<br><code>https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages</code><br>example:<br><code class=\"long-string\">United Kingdom</code>",
        +        "type": "string"
        +      },
        +      "offset": {
        +        "description": "<em>offset in the results array of returned keywords</em><br>optional field<br>default value: <code>0</code><br>if you specify the <code>10</code> value, the first ten keywords in the results array will be omitted and the data will be provided for the successive keywords<br><strong>Note:</strong> we recommend using this parameter only when retrieving up to 10,000 results<br>for retrieving over 10,000 results, use the <code>offset_token</code> instead.",
        +        "type": [
        +          "integer",
        +          "null"
        +        ]
        +      },
        +      "offset_token": {
        +        "description": "<em>offset token for subsequent requests</em><br>optional field<br>provided in the identical filed of the response to each request;<br>use this parameter to avoid timeouts while trying to obtain over 10,000 results in a single request;<br>by specifying the unique <code>offset_token</code> value from the response array, you will get the subsequent results of the initial task;<br><code>offset_token</code> values are unique for each subsequent task <br><strong>Note:</strong> if the <code>offset_token</code> is specified in the request, all other parameters except <code>limit</code> will not be taken into account when processing a task.<br>learn more about this parameter on our <a href=\"https://dataforseo.com/help-center/what-is-the-difference-between-the-offset-and-offset_token-parameters#offset_token\" target=\"_blank\">Help Center</a>",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "order_by": {
        +        "description": "<em>results sorting rules</em><br>optional field<br>you can use the same values as in the <code>filters</code> array to sort the results<br>possible sorting types:<br><code>asc</code> - results will be sorted in the ascending order<br><code>desc</code> - results will be sorted in the descending order<br>you should use a comma to set up a sorting parameter<p>default rule:<br><code>[\"relevance,desc\"]</code><br>relevance is used as the default sorting rule to provide you with the closest keyword ideas. We recommend using this sorting rule to get highly-relevant search terms. <strong>Note</strong> that <code>relevance</code> is only our internal system identifier, so <strong>it can not be used as a filter</strong>, and you will not find this field in the <code>result</code> array. The relevance score is based on a similar principle as used in <a href=\"/v3/keywords_data/google/keywords_for_keywords/live/?php\">the Keywords For Keywords</a> endpoint.<p><strong>note that you can set no more than three sorting rules in a single request</strong><br>you should use a comma to separate several sorting rules<br>example:<br><code>[\"relevance,desc\",\"keyword_info.search_volume,desc\"]</code>",
        +        "items": {
        +          "type": "string"
        +        },
        +        "type": [
        +          "array",
        +          "null"
        +        ]
        +      },
        +      "tag": {
        +        "description": "<em>user-defined task identifier</em><br>optional field<br><em>the character limit is 255</em><br>you can use this parameter to identify the task and match it with the result<br>you will find the specified <code>tag</code> value in the <code>data</code> object of the response",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      }
        +    },
        +    "type": "object"
        +  }
        +]
      • removedInput schema / properties / body / items / oneOf
        Removed value: -[
        -  {
        -    "example": [
        -      {
        -        "include_serp_info": true,
        -        "keywords": [
        -          "phone",
        -          "watch"
        -        ],
        -        "language_code": "en",
        -        "limit": 3,
        -        "location_code": 2840
        -      }
        -    ],
        -    "properties": {
        -      "closely_variants": {
        -        "description": "<em>search mode</em><br>optional field<br>if set to_<code class=\"prettyprint\">true</code> the results will be based on the phrase-match search algorithm<br>if set to <code class=\"prettyprint\">false</code> the results will be based on the broad-match search algorithm<br>default value: <code>false</code>n",
        -        "type": [
        -          "boolean",
        -          "null"
        -        ]
        -      },
        -      "filters": {
        -        "description": "<em>array of results filtering parameters</em><br>optional field<br><strong>you can add several filters at once (8 filters maximum)</strong><br>you should set a logical operator <code>and</code>, <code>or</code> between the conditions<br>the following operators are supported:<br><code>regex</code>, <code>not_regex</code>, <code>&lt;</code>, <code>&lt;=</code>, <code>&gt;</code>, <code>&gt;=</code>, <code>=</code>, <code>&lt;&gt;</code>, <code>in</code>, <code>not_in</code>, <code>match</code>, <code>not_match</code>, <code>ilike</code>, <code>not_ilike</code>, <code>like</code>, <code>not_like</code><br>you can use the <code>%</code> operator with <code>like</code> and <code>not_like</code>,as well as <code>ilike</code>, <code>not_ilike</code> to match any string of zero or more characters<br><strong>note that you can not filter the results by <code>relevance</code></strong><br>example:<br><code>[\"keyword_info.search_volume\",\"&gt;\",0]</code><p><code>[[\"keyword_info.search_volume\",\"in\",[0,1000]],<br>\"and\",<br>[\"keyword_info.competition_level\",\"=\",\"LOW\"]]</code><p><code>[[\"keyword_info.search_volume\",\"&gt;\",100],<br>\"and\",<br>[[\"keyword_info.cpc\",\"&lt;\",0.5],<br>\"or\",<p>[\"keyword_info.high_top_of_page_bid\",\"&lt;=\",0.5]]]</code><br>for more information about filters, please refer to <a href=\"/v3/dataforseo_labs/filters\" target=\"_blank\" rel=\"noopener noreferrer\">Dataforseo Labs - Filters</a> or this <a href=\"https://dataforseo.com/help-center/how-to-use-filters-in-dataforseo-labs-api\" rel=\"noopener noreferrer\" target=\"_blank\">help center guide</a>",
        -        "items": {
        -          "type": [
        -            "object",
        -            "null"
        -          ]
        -        },
        -        "type": [
        -          "array",
        -          "null"
        -        ]
        -      },
        -      "ignore_synonyms": {
        -        "description": "<em>ignore highly similar keywords</em><br>optional field<br>if set to_<code class=\"prettyprint\">true</code> only core keywords will be returned, all highly similar keywords will be excluded;  <br>default value: <code>false</code>n",
        -        "type": [
        -          "boolean",
        -          "null"
        -        ]
        -      },
        -      "include_clickstream_data": {
        -        "description": "<em>include or exclude data from clickstream-based metrics in the result</em><br>optional field<br>if the parameter is set to <code>true</code>, you will receive <code>clickstream_keyword_info</code>, <code>keyword_info_normalized_with_clickstream</code>, and <code>keyword_info_normalized_with_bing</code> fields in the response<br>default value: <code>false</code><br>with this parameter enabled, you will be charged double the price for the request<p>learn more about how clickstream-based metrics are calculated in this <a href=\"https://dataforseo.com/help-center/what-are-clickstream-based-metrics-and-how-do-we-calculate-them\" rel=\"noopener noreferrer\" target=\"_blank\">help center article</a>",
        -        "type": [
        -          "boolean",
        -          "null"
        -        ]
        -      },
        -      "include_serp_info": {
        -        "description": "<em>include data from SERP for each keyword</em><br>optional field<br>if set to <code>true</code>, we will return a <code>serp_info</code> array containing SERP data (number of search results, relevant URL, and SERP features) for every keyword in the response<br>default value: <code>false</code>",
        -        "type": [
        -          "boolean",
        -          "null"
        -        ]
        -      },
        -      "keywords": {
        -        "description": "<em>keywords</em><br><strong>required field</strong><br>UTF-8 encoding<br>The maximum number of keywords you can specify: 200.<br>The keywords will be converted to lowercase format<p>learn more about rules and limitations of <code>keyword</code> and <code>keywords</code> fields in DataForSEO APIs in this <a href=\"https://dataforseo.com/help-center/rules-and-limitations-of-keyword-and-keywords-fields-in-dataforseo-apis\" rel=\"noopener noreferrer\" target=\"_blank\">Help Center article</a>",
        -        "items": {
        -          "type": "string"
        -        },
        -        "type": "array"
        -      },
        -      "language_code": {
        -        "description": "<em>language code</em><br>optional field<br>if you use this field, you don't need to specify <code>language_name</code><br>you can receive the list of available languages with their <code>language_code</code> by making a separate request to the<br><code>https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages</code><br>example:<br><code class=\"long-string\">en</code><br><strong>Note:</strong> if omitted, results default to the language with the most keyword records in the specified location;<br>refer to the <code>available_languages.keywords</code> field of the <a href=\"https://docs.dataforseo.com/v3/dataforseo_labs/locations_and_languages\" target=\"_blank\">Locations and Languages endpoint</a> to determine the default language",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      },
        -      "language_name": {
        -        "description": "<em>full name of the language</em><br>optional field<br>if you use this field, you don't need to specify <code>language_code</code><br>you can receive the list of available languages with their <code>language_name</code> by making a separate request to the<br><code>https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages</code><br>example:<br><code class=\"long-string\">English</code><br><strong>Note:</strong> if omitted, results default to the language with the most keyword records in the specified location;<br>refer to the <code>available_languages.keywords</code> field of the <a href=\"https://docs.dataforseo.com/v3/dataforseo_labs/locations_and_languages\" target=\"_blank\">Locations and Languages endpoint</a> to determine the default language",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      },
        -      "limit": {
        -        "description": "<em>the maximum number of keywords in the results array</em><br>optional field<br>default value: <code>700</code><br>maximum value: <code>1000</code>",
        -        "type": [
        -          "integer",
        -          "null"
        -        ]
        -      },
        -      "location_code": {
        -        "description": "<em>unique location identifier</em><br><strong>required field if you don't specify</strong> <code>location_name</code><br><strong>Note:</strong> it is required to specify either <code>location_name</code> or <code>location_code</code><br>you can receive the list of available locations with their <code>location_code</code> by making a separate request to the <br><code>https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages</code><br>example:<br><code class=\"long-string\">2840</code>",
        -        "type": "integer"
        -      },
        -      "location_name": {
        -        "description": "<em>full name of the location</em><br><strong>required field if you don't specify</strong> <code>location_code</code><br><strong>Note:</strong> it is required to specify either <code>location_name</code> or <code>location_code</code><br>you can receive the list of available locations with their <code>location_name</code> by making a separate request to the<br><code>https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages</code><br>example:<br><code class=\"long-string\">United Kingdom</code>",
        -        "type": "string"
        -      },
        -      "offset": {
        -        "description": "<em>offset in the results array of returned keywords</em><br>optional field<br>default value: <code>0</code><br>if you specify the <code>10</code> value, the first ten keywords in the results array will be omitted and the data will be provided for the successive keywords<br><strong>Note:</strong> we recommend using this parameter only when retrieving up to 10,000 results<br>for retrieving over 10,000 results, use the <code>offset_token</code> instead.",
        -        "type": [
        -          "integer",
        -          "null"
        -        ]
        -      },
        -      "offset_token": {
        -        "description": "<em>offset token for subsequent requests</em><br>optional field<br>provided in the identical filed of the response to each request;<br>use this parameter to avoid timeouts while trying to obtain over 10,000 results in a single request;<br>by specifying the unique <code>offset_token</code> value from the response array, you will get the subsequent results of the initial task;<br><code>offset_token</code> values are unique for each subsequent task <br><strong>Note:</strong> if the <code>offset_token</code> is specified in the request, all other parameters except <code>limit</code> will not be taken into account when processing a task.<br>learn more about this parameter on our <a href=\"https://dataforseo.com/help-center/what-is-the-difference-between-the-offset-and-offset_token-parameters#offset_token\" target=\"_blank\">Help Center</a>",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      },
        -      "order_by": {
        -        "description": "<em>results sorting rules</em><br>optional field<br>you can use the same values as in the <code>filters</code> array to sort the results<br>possible sorting types:<br><code>asc</code> - results will be sorted in the ascending order<br><code>desc</code> - results will be sorted in the descending order<br>you should use a comma to set up a sorting parameter<p>default rule:<br><code>[\"relevance,desc\"]</code><br>relevance is used as the default sorting rule to provide you with the closest keyword ideas. We recommend using this sorting rule to get highly-relevant search terms. <strong>Note</strong> that <code>relevance</code> is only our internal system identifier, so <strong>it can not be used as a filter</strong>, and you will not find this field in the <code>result</code> array. The relevance score is based on a similar principle as used in <a href=\"/v3/keywords_data/google/keywords_for_keywords/live/?php\">the Keywords For Keywords</a> endpoint.<p><strong>note that you can set no more than three sorting rules in a single request</strong><br>you should use a comma to separate several sorting rules<br>example:<br><code>[\"relevance,desc\",\"keyword_info.search_volume,desc\"]</code>",
        -        "items": {
        -          "type": "string"
        -        },
        -        "type": [
        -          "array",
        -          "null"
        -        ]
        -      },
        -      "tag": {
        -        "description": "<em>user-defined task identifier</em><br>optional field<br><em>the character limit is 255</em><br>you can use this parameter to identify the task and match it with the result<br>you will find the specified <code>tag</code> value in the <code>data</code> object of the response",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      }
        -    },
        -    "type": "object"
        -  }
        -]
    • Changedpost_dataforseo_labs_google_keyword_overview_live1 field changed
      • changedInput schema / properties / body / items / oneOf
        Previous value: -[
        -  {
        -    "example": [
        -      {
        -        "include_clickstream_data": true,
        -        "include_serp_info": true,
        -        "keywords": [
        -          "iphone"
        -        ],
        -        "language_code": "en",
        -        "location_code": 2840
        -      }
        -    ],
        -    "properties": {
        -      "include_clickstream_data": {
        -        "description": "<em>include or exclude data from clickstream-based metrics in the result</em><br>optional field<br>if the parameter is set to <code>true</code>, you will receive <code>clickstream_keyword_info</code>, <code>keyword_info_normalized_with_clickstream</code>, and <code>keyword_info_normalized_with_bing</code> fields in the response<br>default value: <code>false</code><br>with this parameter enabled, you will be charged double the price for the request<p>learn more about how clickstream-based metrics are calculated in this <a href=\"https://dataforseo.com/help-center/what-are-clickstream-based-metrics-and-how-do-we-calculate-them\" rel=\"noopener noreferrer\" target=\"_blank\">help center article</a>",
        -        "type": [
        -          "boolean",
        -          "null"
        -        ]
        -      },
        -      "include_serp_info": {
        -        "description": "<em>include data from SERP for each keyword</em><br>optional field<br>if set to <code>true</code>, we will return a <code>serp_info</code> array containing SERP data (number of search results, relevant URL, and SERP features) for every keyword in the response<br>default value: <code>false</code>",
        -        "type": [
        -          "boolean",
        -          "null"
        -        ]
        -      },
        -      "keywords": {
        -        "description": "<em>keywords</em><br><strong>required field</strong><br>The maximum number of keywords you can specify: 700<br>The maximum number of characters for each keyword: 80<br>The maximum number of words for each keyword phrase: 10<br>the specified keywords will be converted to lowercase format, data will be provided in a separate array<p><strong>note</strong> that if some of the keywords specified in this array are omitted in the results you receive, then our database doesn't contain such keywords and cannot return data on them<br>you will not be charged for the keywords omitted in the results<p>learn more about rules and limitations of <code>keyword</code> and <code>keywords</code> fields in DataForSEO APIs in this <a href=\"https://dataforseo.com/help-center/rules-and-limitations-of-keyword-and-keywords-fields-in-dataforseo-apis\" rel=\"noopener noreferrer\" target=\"_blank\">Help Center article</a>",
        -        "items": {
        -          "type": "string"
        -        },
        -        "type": "array"
        -      },
        -      "language_code": {
        -        "description": "<em>language code</em><br><strong>required field if you don't specify</strong> <code>language_name</code><br><strong>Note:</strong> it is required to specify either <code>language_name</code> or <code>language_code</code><br>you can receive the list of available locations with their <code>language_code</code> by making a separate request to the <br><code>https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages</code><br>example:<br><code class=\"long-string\">en</code>",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      },
        -      "language_name": {
        -        "description": "<em>full name of the language</em><br><strong>required field if you don't specify</strong> <code>language_code</code><br><strong>Note:</strong> it is required to specify either <code>language_name</code> or <code>language_code</code><br>you can receive the list of available locations with their <code>language_name</code> by making a separate request to the <br><code>https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages</code><br>example:<br><code class=\"long-string\">English</code>",
        -        "type": "string"
        -      },
        -      "location_code": {
        -        "description": "<em>location code</em><br><strong>required field if you don't specify</strong> <code>location_name</code><br><strong>Note:</strong> it is required to specify either <code>location_name</code> or <code>location_code</code><br>you can receive the list of available locations with their <code>location_code</code> by making a separate request to the <br><code>https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages</code><br>example:<br><code class=\"long-string\">2840</code>",
        -        "type": "integer"
        -      },
        -      "location_name": {
        -        "description": "<em>full name of the location</em><br><strong>required field if you don't specify</strong> <code>location_code</code><br><strong>Note:</strong> it is required to specify either <code>location_name</code> or <code>location_code</code><br>you can receive the list of available locations with their <code>location_name</code> by making a separate request to the <br><code>https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages</code><br>example:<br><code class=\"long-string\">United Kingdom</code>",
        -        "type": "string"
        -      },
        -      "tag": {
        -        "description": "<em>user-defined task identifier</em><br>optional field<br><em>the character limit is 255</em><br>you can use this parameter to identify the task and match it with the result<br>you will find the specified <code>tag</code> value in the <code>data</code> object of the response",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      }
        -    },
        -    "type": "object"
        -  }
        -]New value: +[
        +  {
        +    "properties": {
        +      "include_clickstream_data": {
        +        "description": "<em>include or exclude data from clickstream-based metrics in the result</em><br>optional field<br>if the parameter is set to <code>true</code>, you will receive <code>clickstream_keyword_info</code>, <code>keyword_info_normalized_with_clickstream</code>, and <code>keyword_info_normalized_with_bing</code> fields in the response<br>default value: <code>false</code><br>with this parameter enabled, you will be charged double the price for the request<p>learn more about how clickstream-based metrics are calculated in this <a href=\"https://dataforseo.com/help-center/what-are-clickstream-based-metrics-and-how-do-we-calculate-them\" rel=\"noopener noreferrer\" target=\"_blank\">help center article</a>",
        +        "type": [
        +          "boolean",
        +          "null"
        +        ]
        +      },
        +      "include_serp_info": {
        +        "description": "<em>include data from SERP for each keyword</em><br>optional field<br>if set to <code>true</code>, we will return a <code>serp_info</code> array containing SERP data (number of search results, relevant URL, and SERP features) for every keyword in the response<br>default value: <code>false</code>",
        +        "type": [
        +          "boolean",
        +          "null"
        +        ]
        +      },
        +      "keywords": {
        +        "description": "<em>keywords</em><br><strong>required field</strong><br>The maximum number of keywords you can specify: 700<br>The maximum number of characters for each keyword: 80<br>The maximum number of words for each keyword phrase: 10<br>the specified keywords will be converted to lowercase format, data will be provided in a separate array<p><strong>note</strong> that if some of the keywords specified in this array are omitted in the results you receive, then our database doesn't contain such keywords and cannot return data on them<br>you will not be charged for the keywords omitted in the results<p>learn more about rules and limitations of <code>keyword</code> and <code>keywords</code> fields in DataForSEO APIs in this <a href=\"https://dataforseo.com/help-center/rules-and-limitations-of-keyword-and-keywords-fields-in-dataforseo-apis\" rel=\"noopener noreferrer\" target=\"_blank\">Help Center article</a>",
        +        "items": {
        +          "type": "string"
        +        },
        +        "type": "array"
        +      },
        +      "language_code": {
        +        "description": "<em>language code</em><br><strong>required field if you don't specify</strong> <code>language_name</code><br><strong>Note:</strong> it is required to specify either <code>language_name</code> or <code>language_code</code><br>you can receive the list of available locations with their <code>language_code</code> by making a separate request to the <br><code>https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages</code><br>example:<br><code class=\"long-string\">en</code>",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "language_name": {
        +        "description": "<em>full name of the language</em><br><strong>required field if you don't specify</strong> <code>language_code</code><br><strong>Note:</strong> it is required to specify either <code>language_name</code> or <code>language_code</code><br>you can receive the list of available locations with their <code>language_name</code> by making a separate request to the <br><code>https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages</code><br>example:<br><code class=\"long-string\">English</code>",
        +        "type": "string"
        +      },
        +      "location_code": {
        +        "description": "<em>location code</em><br><strong>required field if you don't specify</strong> <code>location_name</code><br><strong>Note:</strong> it is required to specify either <code>location_name</code> or <code>location_code</code><br>you can receive the list of available locations with their <code>location_code</code> by making a separate request to the <br><code>https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages</code><br>example:<br><code class=\"long-string\">2840</code>",
        +        "type": "integer"
        +      },
        +      "location_name": {
        +        "description": "<em>full name of the location</em><br><strong>required field if you don't specify</strong> <code>location_code</code><br><strong>Note:</strong> it is required to specify either <code>location_name</code> or <code>location_code</code><br>you can receive the list of available locations with their <code>location_name</code> by making a separate request to the <br><code>https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages</code><br>example:<br><code class=\"long-string\">United Kingdom</code>",
        +        "type": "string"
        +      },
        +      "tag": {
        +        "description": "<em>user-defined task identifier</em><br>optional field<br><em>the character limit is 255</em><br>you can use this parameter to identify the task and match it with the result<br>you will find the specified <code>tag</code> value in the <code>data</code> object of the response",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      }
        +    },
        +    "type": "object"
        +  }
        +]
    • Changedpost_dataforseo_labs_google_keyword_suggestions_live3 fields changed
      • addedInput schema / $defs
        Added value: +{
        +  "Provider0A3E90081762_AisaDataforseoFilterJsonValue": {
        +    "anyOf": [
        +      {
        +        "type": "string"
        +      },
        +      {
        +        "type": "number"
        +      },
        +      {
        +        "type": "boolean"
        +      },
        +      {
        +        "additionalProperties": {
        +          "$ref": "#/$defs/Provider0A3E90081762_AisaDataforseoFilterJsonValue"
        +        },
        +        "type": [
        +          "object",
        +          "null"
        +        ]
        +      },
        +      {
        +        "items": {
        +          "$ref": "#/$defs/Provider0A3E90081762_AisaDataforseoFilterJsonValue"
        +        },
        +        "type": "array"
        +      }
        +    ],
        +    "description": "JSON representation of filter values and nested expressions. Field names, operators, condition counts and operand compatibility remain provider-validated as documented for each endpoint; this is not a complete filter-language validator."
        +  }
        +}
      • addedInput schema / properties / body / items / anyOf
        Added value: +[
        +  {
        +    "properties": {
        +      "exact_match": {
        +        "description": "<em>search for the exact phrase</em><br>optional field<br>if set to <code>true</code>, the returned keywords will include the exact keyword phrase you specified, with potentially other words before or after that phrase<br>default value: <code>false</code>",
        +        "type": [
        +          "boolean",
        +          "null"
        +        ]
        +      },
        +      "filters": {
        +        "description": "<em>array of results filtering parameters</em><br>optional field<br><strong>you can add several filters at once (8 filters maximum)</strong><br>you should set a logical operator <code>and</code>, <code>or</code> between the conditions<br>the following operators are supported:<br><code>regex</code>, <code>not_regex</code>, <code>&lt;</code>, <code>&lt;=</code>, <code>&gt;</code>, <code>&gt;=</code>, <code>=</code>, <code>&lt;&gt;</code>, <code>in</code>, <code>not_in</code>, <code>match</code>, <code>not_match</code>, <code>ilike</code>, <code>not_ilike</code>, <code>like</code>, <code>not_like</code><br>you can use the <code>%</code> operator with <code>like</code> and <code>not_like</code>, as well as <code>ilike</code> and <code>not_ilike</code> to match any string of zero or more characters<br>example:<br><code>[\"keyword_info.search_volume\",\"&gt;\",0]</code><br><code>[[\"keyword_info.search_volume\",\"in\",[0,1000]],<br>\"and\",<br>[\"keyword_info.competition_level\",\"=\",\"LOW\"]]</code><code>[[\"keyword_info.search_volume\",\"&gt;\",100],<br>\"and\",<br>[[\"keyword_info.cpc\",\"&lt;\",0.5],<br>\"or\",<br>[\"keyword_info.high_top_of_page_bid\",\"&lt;=\",0.5]]]</code><br>for more information about filters, please refer to <a href=\"/v3/dataforseo_labs/filters\" target=\"_blank\" rel=\"noopener noreferrer\">Dataforseo Labs - Filters</a> or this <a href=\"https://dataforseo.com/help-center/how-to-use-filters-in-dataforseo-labs-api\" target=\"_blank\" rel=\"noopener noreferrer\">help center guide</a>",
        +        "items": {
        +          "anyOf": [
        +            {
        +              "type": "string"
        +            },
        +            {
        +              "type": "number"
        +            },
        +            {
        +              "type": "boolean"
        +            },
        +            {
        +              "additionalProperties": {
        +                "$ref": "#/$defs/Provider0A3E90081762_AisaDataforseoFilterJsonValue"
        +              },
        +              "type": [
        +                "object",
        +                "null"
        +              ]
        +            },
        +            {
        +              "items": {
        +                "$ref": "#/$defs/Provider0A3E90081762_AisaDataforseoFilterJsonValue"
        +              },
        +              "type": "array"
        +            }
        +          ],
        +          "description": "JSON representation of filter values and nested expressions. Field names, operators, condition counts and operand compatibility remain provider-validated as documented for each endpoint; this is not a complete filter-language validator."
        +        },
        +        "type": [
        +          "array",
        +          "null"
        +        ]
        +      },
        +      "ignore_synonyms": {
        +        "description": "<em>ignore highly similar keywords</em><br>optional field<br>if set to <code class=\"prettyprint\">true</code> only core keywords will be returned, all highly similar keywords will be excluded;<br>default value: <code>false</code>",
        +        "type": [
        +          "boolean",
        +          "null"
        +        ]
        +      },
        +      "include_clickstream_data": {
        +        "description": "<em>include or exclude data from clickstream-based metrics in the result</em><br>optional field<br>if the parameter is set to <code>true</code>, you will receive <code>clickstream_keyword_info</code>, <code>keyword_info_normalized_with_clickstream</code>, and <code>keyword_info_normalized_with_bing</code> fields in the response<br>default value: <code>false</code><br>with this parameter enabled, you will be charged double the price for the request<p>learn more about how clickstream-based metrics are calculated in this <a href=\"https://dataforseo.com/help-center/what-are-clickstream-based-metrics-and-how-do-we-calculate-them\" rel=\"noopener noreferrer\" target=\"_blank\">help center article</a>",
        +        "type": [
        +          "boolean",
        +          "null"
        +        ]
        +      },
        +      "include_seed_keyword": {
        +        "description": "<em>include data for the seed keyword</em><br>optional field<br>if set to <code>true</code>, data for the seed keyword specified in the <code>keyword</code> field will be provided in the <code>seed_keyword_data</code> array of the response<br>default value: <code>false</code>",
        +        "type": [
        +          "boolean",
        +          "null"
        +        ]
        +      },
        +      "include_serp_info": {
        +        "description": "<em>include data from SERP for each keyword</em><br>optional field<br>if set to <code>true</code>, we will return a <code>serp_info</code> array containing SERP data (number of search results, relevant URL, and SERP features) for every keyword in the response<br>default value: <code>false</code>",
        +        "type": [
        +          "boolean",
        +          "null"
        +        ]
        +      },
        +      "keyword": {
        +        "description": "<em>keyword</em><br><strong>required field</strong><br>UTF-8 encoding<br>the keywords will be converted to lowercase format;<p>learn more about rules and limitations of <code>keyword</code> and <code>keywords</code> fields in DataForSEO APIs in this <a href=\"https://dataforseo.com/help-center/rules-and-limitations-of-keyword-and-keywords-fields-in-dataforseo-apis\" rel=\"noopener noreferrer\" target=\"_blank\">Help Center article</a>",
        +        "type": "string"
        +      },
        +      "language_code": {
        +        "description": "<em>language code</em><br>optional field<br>if you use this field, you don't need to specify <code>language_name</code><br>you can receive the list of available languages with their <code>language_code</code> by making a separate request to the<br><code>https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages</code><br>example:<br><code class=\"long-string\">en</code><br><strong>Note:</strong> if omitted, results default to the language with the most keyword records in the specified location;<br>refer to the <code>available_languages.keywords</code> field of the <a href=\"https://docs.dataforseo.com/v3/dataforseo_labs/locations_and_languages\" target=\"_blank\">Locations and Languages endpoint</a> to determine the default language",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "language_name": {
        +        "description": "<em>full name of the language</em><br>optional field<br>if you use this field, you don't need to specify <code>language_code</code><br>you can receive the list of available languages with their <code>language_name</code> by making a separate request to the<br><code>https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages</code><br>example:<br><code class=\"long-string\">English</code><br><strong>Note:</strong> if omitted, results default to the language with the most keyword records in the specified location;<br>refer to the <code>available_languages.keywords</code> field of the <a href=\"https://docs.dataforseo.com/v3/dataforseo_labs/locations_and_languages\" target=\"_blank\">Locations and Languages endpoint</a> to determine the default language",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "limit": {
        +        "description": "<em>the maximum number of returned keywords</em><br>optional field<br>default value: <code>100</code><br>maximum value: <code>1000</code>",
        +        "type": [
        +          "integer",
        +          "null"
        +        ]
        +      },
        +      "location_code": {
        +        "description": "<em>location code</em><br>optional field<br>if you use this field, you don't need to specify <code>location_name</code><br>you can receive the list of available locations with their <code>location_code</code> by making a separate request to the<br><code>https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages</code><br>ignore this field to get the results for all available locations<br>example:<br><code class=\"long-string\">2840</code>",
        +        "type": [
        +          "integer",
        +          "null"
        +        ]
        +      },
        +      "location_name": {
        +        "description": "<em>full name of the location</em><br>optional field<br>if you use this field, you don't need to specify <code>location_code</code><br>you can receive the list of available locations with their <code>location_name</code> by making a separate request to the<br><code>https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages</code><br>ignore this field to get the results for all available locations<br>example:<br><code class=\"long-string\">United Kingdom</code>",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "offset": {
        +        "description": "<em>offset in the results array of returned keywords</em><br>optional field<br>default value: <code>0</code><br>if you specify the <code>10</code> value, the first ten keywords in the results array will be omitted and the data will be provided for the successive keywords<br><strong>Note:</strong> we recommend using this parameter only when retrieving up to 10,000 results<br>for retrieving over 10,000 results, use the <code>offset_token</code> instead.",
        +        "type": [
        +          "integer",
        +          "null"
        +        ]
        +      },
        +      "offset_token": {
        +        "description": "<em>offset token for subsequent requests</em><br>optional field<br>provided in the identical filed of the response to each request;<br>use this parameter to avoid timeouts while trying to obtain over 10,000 results in a single request;<br>by specifying the unique <code>offset_token</code> value from the response array, you will get the subsequent results of the initial task;<br><code>offset_token</code> values are unique for each subsequent task<br><strong>Note:</strong> if the <code>offset_token</code> is specified in the request, all other parameters except <code>limit</code> will not be taken into account when processing a task.<br>learn more about this parameter on our <a href=\"https://dataforseo.com/help-center/what-is-the-difference-between-the-offset-and-offset_token-parameters#offset_token\" target=\"_blank\">Help Center</a>",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "order_by": {
        +        "description": "<em>results sorting rules</em><br>optional field<br>you can use the same values as in the <code>filters</code> array to sort the results<br>possible sorting types:<br><code>asc</code> - results will be sorted in the ascending order<br><code>desc</code> - results will be sorted in the descending order<br>a comma is used as a separator<br>example:<br><code>[\"keyword_info.competition,desc\"]</code><br>default rule:<br><code>[\"keyword_info.search_volume,desc\"]</code><br><strong>note that you can set no more than three sorting rules in a single request</strong><br>you should use a comma to separate several sorting rules<br>example:<br><code>[\"keyword_info.search_volume,desc\",\"keyword_info.cpc,desc\"]</code>",
        +        "items": {
        +          "type": "string"
        +        },
        +        "type": [
        +          "array",
        +          "null"
        +        ]
        +      },
        +      "tag": {
        +        "description": "<em>user-defined task identifier</em><br>optional field<br><em>the character limit is 255</em><br>you can use this parameter to identify the task and match it with the result<br>you will find the specified <code>tag</code> value in the <code>data</code> object of the response",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      }
        +    },
        +    "type": "object"
        +  }
        +]
      • removedInput schema / properties / body / items / oneOf
        Removed value: -[
        -  {
        -    "example": [
        -      {
        -        "include_seed_keyword": true,
        -        "include_serp_info": true,
        -        "keyword": "phone",
        -        "language_code": "en",
        -        "limit": 1,
        -        "location_code": 2840
        -      }
        -    ],
        -    "properties": {
        -      "exact_match": {
        -        "description": "<em>search for the exact phrase</em><br>optional field<br>if set to <code>true</code>, the returned keywords will include the exact keyword phrase you specified, with potentially other words before or after that phrase<br>default value: <code>false</code>",
        -        "type": [
        -          "boolean",
        -          "null"
        -        ]
        -      },
        -      "filters": {
        -        "description": "<em>array of results filtering parameters</em><br>optional field<br><strong>you can add several filters at once (8 filters maximum)</strong><br>you should set a logical operator <code>and</code>, <code>or</code> between the conditions<br>the following operators are supported:<br><code>regex</code>, <code>not_regex</code>, <code>&lt;</code>, <code>&lt;=</code>, <code>&gt;</code>, <code>&gt;=</code>, <code>=</code>, <code>&lt;&gt;</code>, <code>in</code>, <code>not_in</code>, <code>match</code>, <code>not_match</code>, <code>ilike</code>, <code>not_ilike</code>, <code>like</code>, <code>not_like</code><br>you can use the <code>%</code> operator with <code>like</code> and <code>not_like</code>, as well as <code>ilike</code> and <code>not_ilike</code> to match any string of zero or more characters<br>example:<br><code>[\"keyword_info.search_volume\",\"&gt;\",0]</code><br><code>[[\"keyword_info.search_volume\",\"in\",[0,1000]],<br>\"and\",<br>[\"keyword_info.competition_level\",\"=\",\"LOW\"]]</code><code>[[\"keyword_info.search_volume\",\"&gt;\",100],<br>\"and\",<br>[[\"keyword_info.cpc\",\"&lt;\",0.5],<br>\"or\",<br>[\"keyword_info.high_top_of_page_bid\",\"&lt;=\",0.5]]]</code><br>for more information about filters, please refer to <a href=\"/v3/dataforseo_labs/filters\" target=\"_blank\" rel=\"noopener noreferrer\">Dataforseo Labs - Filters</a> or this <a href=\"https://dataforseo.com/help-center/how-to-use-filters-in-dataforseo-labs-api\" target=\"_blank\" rel=\"noopener noreferrer\">help center guide</a>",
        -        "items": {
        -          "type": [
        -            "object",
        -            "null"
        -          ]
        -        },
        -        "type": [
        -          "array",
        -          "null"
        -        ]
        -      },
        -      "ignore_synonyms": {
        -        "description": "<em>ignore highly similar keywords</em><br>optional field<br>if set to <code class=\"prettyprint\">true</code> only core keywords will be returned, all highly similar keywords will be excluded;<br>default value: <code>false</code>",
        -        "type": [
        -          "boolean",
        -          "null"
        -        ]
        -      },
        -      "include_clickstream_data": {
        -        "description": "<em>include or exclude data from clickstream-based metrics in the result</em><br>optional field<br>if the parameter is set to <code>true</code>, you will receive <code>clickstream_keyword_info</code>, <code>keyword_info_normalized_with_clickstream</code>, and <code>keyword_info_normalized_with_bing</code> fields in the response<br>default value: <code>false</code><br>with this parameter enabled, you will be charged double the price for the request<p>learn more about how clickstream-based metrics are calculated in this <a href=\"https://dataforseo.com/help-center/what-are-clickstream-based-metrics-and-how-do-we-calculate-them\" rel=\"noopener noreferrer\" target=\"_blank\">help center article</a>",
        -        "type": [
        -          "boolean",
        -          "null"
        -        ]
        -      },
        -      "include_seed_keyword": {
        -        "description": "<em>include data for the seed keyword</em><br>optional field<br>if set to <code>true</code>, data for the seed keyword specified in the <code>keyword</code> field will be provided in the <code>seed_keyword_data</code> array of the response<br>default value: <code>false</code>",
        -        "type": [
        -          "boolean",
        -          "null"
        -        ]
        -      },
        -      "include_serp_info": {
        -        "description": "<em>include data from SERP for each keyword</em><br>optional field<br>if set to <code>true</code>, we will return a <code>serp_info</code> array containing SERP data (number of search results, relevant URL, and SERP features) for every keyword in the response<br>default value: <code>false</code>",
        -        "type": [
        -          "boolean",
        -          "null"
        -        ]
        -      },
        -      "keyword": {
        -        "description": "<em>keyword</em><br><strong>required field</strong><br>UTF-8 encoding<br>the keywords will be converted to lowercase format;<p>learn more about rules and limitations of <code>keyword</code> and <code>keywords</code> fields in DataForSEO APIs in this <a href=\"https://dataforseo.com/help-center/rules-and-limitations-of-keyword-and-keywords-fields-in-dataforseo-apis\" rel=\"noopener noreferrer\" target=\"_blank\">Help Center article</a>",
        -        "type": "string"
        -      },
        -      "language_code": {
        -        "description": "<em>language code</em><br>optional field<br>if you use this field, you don't need to specify <code>language_name</code><br>you can receive the list of available languages with their <code>language_code</code> by making a separate request to the<br><code>https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages</code><br>example:<br><code class=\"long-string\">en</code><br><strong>Note:</strong> if omitted, results default to the language with the most keyword records in the specified location;<br>refer to the <code>available_languages.keywords</code> field of the <a href=\"https://docs.dataforseo.com/v3/dataforseo_labs/locations_and_languages\" target=\"_blank\">Locations and Languages endpoint</a> to determine the default language",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      },
        -      "language_name": {
        -        "description": "<em>full name of the language</em><br>optional field<br>if you use this field, you don't need to specify <code>language_code</code><br>you can receive the list of available languages with their <code>language_name</code> by making a separate request to the<br><code>https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages</code><br>example:<br><code class=\"long-string\">English</code><br><strong>Note:</strong> if omitted, results default to the language with the most keyword records in the specified location;<br>refer to the <code>available_languages.keywords</code> field of the <a href=\"https://docs.dataforseo.com/v3/dataforseo_labs/locations_and_languages\" target=\"_blank\">Locations and Languages endpoint</a> to determine the default language",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      },
        -      "limit": {
        -        "description": "<em>the maximum number of returned keywords</em><br>optional field<br>default value: <code>100</code><br>maximum value: <code>1000</code>",
        -        "type": [
        -          "integer",
        -          "null"
        -        ]
        -      },
        -      "location_code": {
        -        "description": "<em>location code</em><br>optional field<br>if you use this field, you don't need to specify <code>location_name</code><br>you can receive the list of available locations with their <code>location_code</code> by making a separate request to the<br><code>https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages</code><br>ignore this field to get the results for all available locations<br>example:<br><code class=\"long-string\">2840</code>",
        -        "type": [
        -          "integer",
        -          "null"
        -        ]
        -      },
        -      "location_name": {
        -        "description": "<em>full name of the location</em><br>optional field<br>if you use this field, you don't need to specify <code>location_code</code><br>you can receive the list of available locations with their <code>location_name</code> by making a separate request to the<br><code>https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages</code><br>ignore this field to get the results for all available locations<br>example:<br><code class=\"long-string\">United Kingdom</code>",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      },
        -      "offset": {
        -        "description": "<em>offset in the results array of returned keywords</em><br>optional field<br>default value: <code>0</code><br>if you specify the <code>10</code> value, the first ten keywords in the results array will be omitted and the data will be provided for the successive keywords<br><strong>Note:</strong> we recommend using this parameter only when retrieving up to 10,000 results<br>for retrieving over 10,000 results, use the <code>offset_token</code> instead.",
        -        "type": [
        -          "integer",
        -          "null"
        -        ]
        -      },
        -      "offset_token": {
        -        "description": "<em>offset token for subsequent requests</em><br>optional field<br>provided in the identical filed of the response to each request;<br>use this parameter to avoid timeouts while trying to obtain over 10,000 results in a single request;<br>by specifying the unique <code>offset_token</code> value from the response array, you will get the subsequent results of the initial task;<br><code>offset_token</code> values are unique for each subsequent task<br><strong>Note:</strong> if the <code>offset_token</code> is specified in the request, all other parameters except <code>limit</code> will not be taken into account when processing a task.<br>learn more about this parameter on our <a href=\"https://dataforseo.com/help-center/what-is-the-difference-between-the-offset-and-offset_token-parameters#offset_token\" target=\"_blank\">Help Center</a>",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      },
        -      "order_by": {
        -        "description": "<em>results sorting rules</em><br>optional field<br>you can use the same values as in the <code>filters</code> array to sort the results<br>possible sorting types:<br><code>asc</code> - results will be sorted in the ascending order<br><code>desc</code> - results will be sorted in the descending order<br>a comma is used as a separator<br>example:<br><code>[\"keyword_info.competition,desc\"]</code><br>default rule:<br><code>[\"keyword_info.search_volume,desc\"]</code><br><strong>note that you can set no more than three sorting rules in a single request</strong><br>you should use a comma to separate several sorting rules<br>example:<br><code>[\"keyword_info.search_volume,desc\",\"keyword_info.cpc,desc\"]</code>",
        -        "items": {
        -          "type": "string"
        -        },
        -        "type": [
        -          "array",
        -          "null"
        -        ]
        -      },
        -      "tag": {
        -        "description": "<em>user-defined task identifier</em><br>optional field<br><em>the character limit is 255</em><br>you can use this parameter to identify the task and match it with the result<br>you will find the specified <code>tag</code> value in the <code>data</code> object of the response",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      }
        -    },
        -    "type": "object"
        -  }
        -]
    • Changedpost_dataforseo_labs_google_keywords_for_categories_live3 fields changed
      • addedInput schema / $defs
        Added value: +{
        +  "Provider0A3E90081762_AisaDataforseoFilterJsonValue": {
        +    "anyOf": [
        +      {
        +        "type": "string"
        +      },
        +      {
        +        "type": "number"
        +      },
        +      {
        +        "type": "boolean"
        +      },
        +      {
        +        "additionalProperties": {
        +          "$ref": "#/$defs/Provider0A3E90081762_AisaDataforseoFilterJsonValue"
        +        },
        +        "type": [
        +          "object",
        +          "null"
        +        ]
        +      },
        +      {
        +        "items": {
        +          "$ref": "#/$defs/Provider0A3E90081762_AisaDataforseoFilterJsonValue"
        +        },
        +        "type": "array"
        +      }
        +    ],
        +    "description": "JSON representation of filter values and nested expressions. Field names, operators, condition counts and operand compatibility remain provider-validated as documented for each endpoint; this is not a complete filter-language validator."
        +  }
        +}
      • addedInput schema / properties / body / items / anyOf
        Added value: +[
        +  {
        +    "properties": {
        +      "category_codes": {
        +        "description": "<em>product and service categories</em><br><strong>required field</strong><br>The maximum number of categories you can specify: 20<br>you can download <a href=\"https://cdn.dataforseo.com/v3/categories/categories_dataforseo_labs_2023_10_25.csv\">the full list of possible categories</a>",
        +        "items": {
        +          "type": "string"
        +        },
        +        "type": "array"
        +      },
        +      "category_intersection": {
        +        "description": "<em>category intersections</em><br>optional field<br>if set to <code class=\"prettyprint\">true</code>, you will get keywords featured in all specified categories;<br>if set to <code class=\"prettyprint\">false</code>, you will keywords that are specified in any of the specified categories;<br>default value: <code>true</code>",
        +        "type": [
        +          "boolean",
        +          "null"
        +        ]
        +      },
        +      "filters": {
        +        "description": "<em>array of results filtering parameters</em><br>optional field<br><strong>you can add several filters at once (8 filters maximum)</strong><br>you should set a logical operator <code>and</code>, <code>or</code> between the conditions<br>the following operators are supported:<br><code>regex</code>, <code>not_regex</code>, <code>&lt;</code>, <code>&lt;=</code>, <code>&gt;</code>, <code>&gt;=</code>, <code>=</code>, <code>&lt;&gt;</code>, <code>in</code>, <code>not_in</code>, <code>match</code>, <code>not_match</code>, <code>ilike</code>, <code>not_ilike</code>, <code>like</code>, <code>not_like</code><br>you can use the <code>%</code> operator with <code>like</code> and <code>not_like</code>,as well as <code>ilike</code>, <code>not_ilike</code> to match any string of zero or more characters<br>example:<br><code>[\"keyword_info.search_volume\",\"&gt;\",0]</code><br><code>[[\"keyword_info.search_volume\",\"in\",[0,1000]],<br>\"and\",<br>[\"keyword_info.competition_level\",\"=\",\"LOW\"]]</code><p><code>[[\"keyword_info.search_volume\",\"&gt;\",100],<br>\"and\",<br>[[\"keyword_info.cpc\",\"&lt;\",0.5],<br>\"or\",<br>[\"keyword_info.high_top_of_page_bid\",\"&lt;=\",0.5]]]</code><br>for more information about filters, please refer to <a href=\"/v3/dataforseo_labs/filters\" target=\"_blank\" rel=\"noopener noreferrer\">Dataforseo Labs - Filters</a> or this <a href=\"https://dataforseo.com/help-center/how-to-use-filters-in-dataforseo-labs-api\" target=\"_blank\" rel=\"noopener noreferrer\">help center guide</a>",
        +        "items": {
        +          "anyOf": [
        +            {
        +              "type": "string"
        +            },
        +            {
        +              "type": "number"
        +            },
        +            {
        +              "type": "boolean"
        +            },
        +            {
        +              "additionalProperties": {
        +                "$ref": "#/$defs/Provider0A3E90081762_AisaDataforseoFilterJsonValue"
        +              },
        +              "type": [
        +                "object",
        +                "null"
        +              ]
        +            },
        +            {
        +              "items": {
        +                "$ref": "#/$defs/Provider0A3E90081762_AisaDataforseoFilterJsonValue"
        +              },
        +              "type": "array"
        +            }
        +          ],
        +          "description": "JSON representation of filter values and nested expressions. Field names, operators, condition counts and operand compatibility remain provider-validated as documented for each endpoint; this is not a complete filter-language validator."
        +        },
        +        "type": [
        +          "array",
        +          "null"
        +        ]
        +      },
        +      "ignore_synonyms": {
        +        "description": "<em>ignore highly similar keywords</em><br>optional field<br>if set to <code class=\"prettyprint\">true</code> only core keywords will be returned, all highly similar keywords will be excluded;<br>default value: <code>false</code>",
        +        "type": [
        +          "boolean",
        +          "null"
        +        ]
        +      },
        +      "include_clickstream_data": {
        +        "description": "<em>include or exclude data from clickstream-based metrics in the result</em><br>optional field<br>if the parameter is set to <code>true</code>, you will receive <code>clickstream_keyword_info</code>, <code>keyword_info_normalized_with_clickstream</code>, and <code>keyword_info_normalized_with_bing</code> fields in the response<br>default value: <code>false</code><br>with this parameter enabled, you will be charged double the price for the request<p>learn more about how clickstream-based metrics are calculated in this <a href=\"https://dataforseo.com/help-center/what-are-clickstream-based-metrics-and-how-do-we-calculate-them\" rel=\"noopener noreferrer\" target=\"_blank\">help center article</a>",
        +        "type": [
        +          "boolean",
        +          "null"
        +        ]
        +      },
        +      "include_serp_info": {
        +        "description": "<em>include data from SERP for each keyword</em><br>optional field<br>if set to <code>true</code>, we will return a <code>serp_info</code> array containing SERP data (number of search results, relevant URL, and SERP features) for every keyword in the response<br>default value: <code>false</code>",
        +        "type": [
        +          "boolean",
        +          "null"
        +        ]
        +      },
        +      "language_code": {
        +        "description": "<em>unique language identifier</em><br><strong>required field if you don't specify</strong> <code>language_name</code><br><strong>Note:</strong> it is required to specify either <code>language_name</code> or <code>language_code</code><br>you can receive the list of available languages with their <code>language_code</code> by making a separate request to the<br><code>https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages</code><br>example:<br><code class=\"long-string\">en</code>",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "language_name": {
        +        "description": "<em>full name of the language</em><br><strong>required field if you don't specify</strong> <code>language_code</code><br><strong>Note:</strong> it is required to specify either <code>language_name</code> or <code>language_code</code><br>you can receive the list of available languages with their <code>language_name</code> by making a separate request to the<br><code>https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages</code><br>example:<br><code class=\"long-string\">English</code>",
        +        "type": "string"
        +      },
        +      "limit": {
        +        "description": "<em>the maximum number of keywords in the results array</em><br>optional field<br>default value: <code>100</code><br>maximum value: <code>1000</code>",
        +        "type": [
        +          "integer",
        +          "null"
        +        ]
        +      },
        +      "location_code": {
        +        "description": "<em>unique location identifier</em><br><strong>required field if you don't specify</strong> <code>location_name</code><br><strong>Note:</strong> it is required to specify either <code>location_name</code> or <code>location_code</code><br>you can receive the list of available locations with their <code>location_code</code> by making a separate request to the<br><code>https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages</code><br>example:<br><code class=\"long-string\">2840</code>",
        +        "type": "integer"
        +      },
        +      "location_name": {
        +        "description": "<em>full name of the location</em><br><strong>required field if you don't specify</strong> <code>location_code</code><br><strong>Note:</strong> it is required to specify either <code>location_name</code> or <code>location_code</code><br>you can receive the list of available locations with their <code>location_name</code> by making a separate request to the<br><code>https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages</code><br>example:<br><code class=\"long-string\">United Kingdom</code>",
        +        "type": "string"
        +      },
        +      "offset": {
        +        "description": "<em>offset in the results array of returned keywords</em><br>optional field<br>default value: <code>0</code><br>if you specify the <code>10</code> value, the first ten keywords in the results array will be omitted and the data will be provided for the successive keywords<br><strong>Note:</strong> we recommend using this parameter only when retrieving up to 10,000 results<br>for retrieving over 10,000 results, use the <code>offset_token</code> instead.",
        +        "type": [
        +          "integer",
        +          "null"
        +        ]
        +      },
        +      "offset_token": {
        +        "description": "<em>offset token for subsequent requests</em><br>optional field<br>provided in the identical filed of the response to each request;<br>use this parameter to avoid timeouts while trying to obtain over 10,000 results in a single request;<br>by specifying the unique <code>offset_token</code> value from the response array, you will get the subsequent results of the initial task;<br><code>offset_token</code> values are unique for each subsequent task<br><strong>Note:</strong> if the <code>offset_token</code> is specified in the request, all other parameters except <code>limit</code> will not be taken into account when processing a task.<br>learn more about this parameter on our <a href=\"https://dataforseo.com/help-center/what-is-the-difference-between-the-offset-and-offset_token-parameters#offset_token\" target=\"_blank\">Help Center</a>",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "order_by": {
        +        "description": "<em>results sorting rules</em><br>optional field<br>you can use the same values as in the <code>filters</code> array to sort the results<br>possible sorting types:<br><code>asc</code> - results will be sorted in the ascending order<br><code>desc</code> - results will be sorted in the descending order<br>you should use a comma to set up a sorting type<br>example:<br><code>[\"keyword_info.competition,desc\"]</code><br>default rule:<br><code>[\"keyword_info.search_volume,desc\"]</code><br><strong>note that you can set no more than three sorting rules in a single request</strong><br>you should use a comma to separate several sorting rules<br>example:<br><code>[\"keyword_info.search_volume,desc\",\"keyword_info.competition,asc\"]</code>",
        +        "items": {
        +          "type": "string"
        +        },
        +        "type": [
        +          "array",
        +          "null"
        +        ]
        +      },
        +      "tag": {
        +        "description": "<em>user-defined task identifier</em><br>optional field<br><em>the character limit is 255</em><br>you can use this parameter to identify the task and match it with the result<br>you will find the specified <code>tag</code> value in the <code>data</code> object of the response",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      }
        +    },
        +    "type": "object"
        +  }
        +]
      • removedInput schema / properties / body / items / oneOf
        Removed value: -[
        -  {
        -    "example": [
        -      {
        -        "category_codes": [
        -          "12191",
        -          "12193"
        -        ],
        -        "include_serp_info": true,
        -        "language_name": "English",
        -        "limit": 3,
        -        "location_code": 2840
        -      }
        -    ],
        -    "properties": {
        -      "category_codes": {
        -        "description": "<em>product and service categories</em><br><strong>required field</strong><br>The maximum number of categories you can specify: 20<br>you can download <a href=\"https://cdn.dataforseo.com/v3/categories/categories_dataforseo_labs_2023_10_25.csv\">the full list of possible categories</a>",
        -        "items": {
        -          "type": "string"
        -        },
        -        "type": "array"
        -      },
        -      "category_intersection": {
        -        "description": "<em>category intersections</em><br>optional field<br>if set to <code class=\"prettyprint\">true</code>, you will get keywords featured in all specified categories;<br>if set to <code class=\"prettyprint\">false</code>, you will keywords that are specified in any of the specified categories;<br>default value: <code>true</code>",
        -        "type": [
        -          "boolean",
        -          "null"
        -        ]
        -      },
        -      "filters": {
        -        "description": "<em>array of results filtering parameters</em><br>optional field<br><strong>you can add several filters at once (8 filters maximum)</strong><br>you should set a logical operator <code>and</code>, <code>or</code> between the conditions<br>the following operators are supported:<br><code>regex</code>, <code>not_regex</code>, <code>&lt;</code>, <code>&lt;=</code>, <code>&gt;</code>, <code>&gt;=</code>, <code>=</code>, <code>&lt;&gt;</code>, <code>in</code>, <code>not_in</code>, <code>match</code>, <code>not_match</code>, <code>ilike</code>, <code>not_ilike</code>, <code>like</code>, <code>not_like</code><br>you can use the <code>%</code> operator with <code>like</code> and <code>not_like</code>,as well as <code>ilike</code>, <code>not_ilike</code> to match any string of zero or more characters<br>example:<br><code>[\"keyword_info.search_volume\",\"&gt;\",0]</code><br><code>[[\"keyword_info.search_volume\",\"in\",[0,1000]],<br>\"and\",<br>[\"keyword_info.competition_level\",\"=\",\"LOW\"]]</code><p><code>[[\"keyword_info.search_volume\",\"&gt;\",100],<br>\"and\",<br>[[\"keyword_info.cpc\",\"&lt;\",0.5],<br>\"or\",<br>[\"keyword_info.high_top_of_page_bid\",\"&lt;=\",0.5]]]</code><br>for more information about filters, please refer to <a href=\"/v3/dataforseo_labs/filters\" target=\"_blank\" rel=\"noopener noreferrer\">Dataforseo Labs - Filters</a> or this <a href=\"https://dataforseo.com/help-center/how-to-use-filters-in-dataforseo-labs-api\" target=\"_blank\" rel=\"noopener noreferrer\">help center guide</a>",
        -        "items": {
        -          "type": [
        -            "object",
        -            "null"
        -          ]
        -        },
        -        "type": [
        -          "array",
        -          "null"
        -        ]
        -      },
        -      "ignore_synonyms": {
        -        "description": "<em>ignore highly similar keywords</em><br>optional field<br>if set to <code class=\"prettyprint\">true</code> only core keywords will be returned, all highly similar keywords will be excluded;<br>default value: <code>false</code>",
        -        "type": [
        -          "boolean",
        -          "null"
        -        ]
        -      },
        -      "include_clickstream_data": {
        -        "description": "<em>include or exclude data from clickstream-based metrics in the result</em><br>optional field<br>if the parameter is set to <code>true</code>, you will receive <code>clickstream_keyword_info</code>, <code>keyword_info_normalized_with_clickstream</code>, and <code>keyword_info_normalized_with_bing</code> fields in the response<br>default value: <code>false</code><br>with this parameter enabled, you will be charged double the price for the request<p>learn more about how clickstream-based metrics are calculated in this <a href=\"https://dataforseo.com/help-center/what-are-clickstream-based-metrics-and-how-do-we-calculate-them\" rel=\"noopener noreferrer\" target=\"_blank\">help center article</a>",
        -        "type": [
        -          "boolean",
        -          "null"
        -        ]
        -      },
        -      "include_serp_info": {
        -        "description": "<em>include data from SERP for each keyword</em><br>optional field<br>if set to <code>true</code>, we will return a <code>serp_info</code> array containing SERP data (number of search results, relevant URL, and SERP features) for every keyword in the response<br>default value: <code>false</code>",
        -        "type": [
        -          "boolean",
        -          "null"
        -        ]
        -      },
        -      "language_code": {
        -        "description": "<em>unique language identifier</em><br><strong>required field if you don't specify</strong> <code>language_name</code><br><strong>Note:</strong> it is required to specify either <code>language_name</code> or <code>language_code</code><br>you can receive the list of available languages with their <code>language_code</code> by making a separate request to the<br><code>https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages</code><br>example:<br><code class=\"long-string\">en</code>",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      },
        -      "language_name": {
        -        "description": "<em>full name of the language</em><br><strong>required field if you don't specify</strong> <code>language_code</code><br><strong>Note:</strong> it is required to specify either <code>language_name</code> or <code>language_code</code><br>you can receive the list of available languages with their <code>language_name</code> by making a separate request to the<br><code>https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages</code><br>example:<br><code class=\"long-string\">English</code>",
        -        "type": "string"
        -      },
        -      "limit": {
        -        "description": "<em>the maximum number of keywords in the results array</em><br>optional field<br>default value: <code>100</code><br>maximum value: <code>1000</code>",
        -        "type": [
        -          "integer",
        -          "null"
        -        ]
        -      },
        -      "location_code": {
        -        "description": "<em>unique location identifier</em><br><strong>required field if you don't specify</strong> <code>location_name</code><br><strong>Note:</strong> it is required to specify either <code>location_name</code> or <code>location_code</code><br>you can receive the list of available locations with their <code>location_code</code> by making a separate request to the<br><code>https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages</code><br>example:<br><code class=\"long-string\">2840</code>",
        -        "type": "integer"
        -      },
        -      "location_name": {
        -        "description": "<em>full name of the location</em><br><strong>required field if you don't specify</strong> <code>location_code</code><br><strong>Note:</strong> it is required to specify either <code>location_name</code> or <code>location_code</code><br>you can receive the list of available locations with their <code>location_name</code> by making a separate request to the<br><code>https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages</code><br>example:<br><code class=\"long-string\">United Kingdom</code>",
        -        "type": "string"
        -      },
        -      "offset": {
        -        "description": "<em>offset in the results array of returned keywords</em><br>optional field<br>default value: <code>0</code><br>if you specify the <code>10</code> value, the first ten keywords in the results array will be omitted and the data will be provided for the successive keywords<br><strong>Note:</strong> we recommend using this parameter only when retrieving up to 10,000 results<br>for retrieving over 10,000 results, use the <code>offset_token</code> instead.",
        -        "type": [
        -          "integer",
        -          "null"
        -        ]
        -      },
        -      "offset_token": {
        -        "description": "<em>offset token for subsequent requests</em><br>optional field<br>provided in the identical filed of the response to each request;<br>use this parameter to avoid timeouts while trying to obtain over 10,000 results in a single request;<br>by specifying the unique <code>offset_token</code> value from the response array, you will get the subsequent results of the initial task;<br><code>offset_token</code> values are unique for each subsequent task<br><strong>Note:</strong> if the <code>offset_token</code> is specified in the request, all other parameters except <code>limit</code> will not be taken into account when processing a task.<br>learn more about this parameter on our <a href=\"https://dataforseo.com/help-center/what-is-the-difference-between-the-offset-and-offset_token-parameters#offset_token\" target=\"_blank\">Help Center</a>",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      },
        -      "order_by": {
        -        "description": "<em>results sorting rules</em><br>optional field<br>you can use the same values as in the <code>filters</code> array to sort the results<br>possible sorting types:<br><code>asc</code> - results will be sorted in the ascending order<br><code>desc</code> - results will be sorted in the descending order<br>you should use a comma to set up a sorting type<br>example:<br><code>[\"keyword_info.competition,desc\"]</code><br>default rule:<br><code>[\"keyword_info.search_volume,desc\"]</code><br><strong>note that you can set no more than three sorting rules in a single request</strong><br>you should use a comma to separate several sorting rules<br>example:<br><code>[\"keyword_info.search_volume,desc\",\"keyword_info.competition,asc\"]</code>",
        -        "items": {
        -          "type": "string"
        -        },
        -        "type": [
        -          "array",
        -          "null"
        -        ]
        -      },
        -      "tag": {
        -        "description": "<em>user-defined task identifier</em><br>optional field<br><em>the character limit is 255</em><br>you can use this parameter to identify the task and match it with the result<br>you will find the specified <code>tag</code> value in the <code>data</code> object of the response",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      }
        -    },
        -    "type": "object"
        -  }
        -]
    • Changedpost_dataforseo_labs_google_related_keywords_live3 fields changed
      • addedInput schema / $defs
        Added value: +{
        +  "Provider0A3E90081762_AisaDataforseoFilterJsonValue": {
        +    "anyOf": [
        +      {
        +        "type": "string"
        +      },
        +      {
        +        "type": "number"
        +      },
        +      {
        +        "type": "boolean"
        +      },
        +      {
        +        "additionalProperties": {
        +          "$ref": "#/$defs/Provider0A3E90081762_AisaDataforseoFilterJsonValue"
        +        },
        +        "type": [
        +          "object",
        +          "null"
        +        ]
        +      },
        +      {
        +        "items": {
        +          "$ref": "#/$defs/Provider0A3E90081762_AisaDataforseoFilterJsonValue"
        +        },
        +        "type": "array"
        +      }
        +    ],
        +    "description": "JSON representation of filter values and nested expressions. Field names, operators, condition counts and operand compatibility remain provider-validated as documented for each endpoint; this is not a complete filter-language validator."
        +  }
        +}
      • addedInput schema / properties / body / items / anyOf
        Added value: +[
        +  {
        +    "properties": {
        +      "depth": {
        +        "description": "<em>keyword search depth</em><br>optional field<br>default value: <code>1</code><p>number of the returned results depends on the value you set in this field<br>you can specify a level from 0 to 4<br>estimated number of keywords for each level (maximum):<br>0 - the keyword set in the <code>keyword</code> field<br>1 – 8 keywords<br>2 – 72 keywords<br>3 – 584 keywords<br>4 – 4680 keywords",
        +        "type": [
        +          "integer",
        +          "null"
        +        ]
        +      },
        +      "filters": {
        +        "description": "<em>array of results filtering parameters</em><br>optional field<br><strong>you can add several filters at once (8 filters maximum)</strong><br>you should set a logical operator <code>and</code>, <code>or</code> between the conditions<br>the following operators are supported:<br><code>regex</code>, <code>not_regex</code>, <code>&lt;</code>, <code>&lt;=</code>, <code>&gt;</code>, <code>&gt;=</code>, <code>=</code>, <code>&lt;&gt;</code>, <code>in</code>, <code>not_in</code>, <code>match</code>, <code>not_match</code>, <code>ilike</code>, <code>not_ilike</code>, <code>like</code>,<code>not_like</code><br>you can use the <code>%</code> operator with <code>like</code> and <code>not_like</code>, as well as <code>ilike</code> and <code>not_ilike</code> to match any string of zero or more characters<br>example:<br><code>[\"keyword_data.keyword_info.search_volume\",\"&gt;\",0]</code><p><code>[[\"keyword_info.search_volume\",\"in\",[0,1000]],<br>\"and\",<br>[\"keyword_data.keyword_info.competition_level\",\"=\",\"LOW\"]]</code><p><code>[[\"keyword_data.keyword_info.search_volume\",\"&gt;\",100],<br>\"and\",<br>[[\"keyword_data.keyword_info.cpc\",\"&lt;\",0.5],<br>\"or\",<p>[\"keyword_info.high_top_of_page_bid\",\"&lt;=\",0.5]]]</code><br>for more information about filters, please refer to <a href=\"/v3/dataforseo_labs/filters\" target=\"_blank\" rel=\"noopener noreferrer\">Dataforseo Labs - Filters</a> or this <a href=\"https://dataforseo.com/help-center/how-to-use-filters-in-dataforseo-labs-api\" rel=\"noopener noreferrer\" target=\"_blank\">help center guide</a>",
        +        "items": {
        +          "anyOf": [
        +            {
        +              "type": "string"
        +            },
        +            {
        +              "type": "number"
        +            },
        +            {
        +              "type": "boolean"
        +            },
        +            {
        +              "additionalProperties": {
        +                "$ref": "#/$defs/Provider0A3E90081762_AisaDataforseoFilterJsonValue"
        +              },
        +              "type": [
        +                "object",
        +                "null"
        +              ]
        +            },
        +            {
        +              "items": {
        +                "$ref": "#/$defs/Provider0A3E90081762_AisaDataforseoFilterJsonValue"
        +              },
        +              "type": "array"
        +            }
        +          ],
        +          "description": "JSON representation of filter values and nested expressions. Field names, operators, condition counts and operand compatibility remain provider-validated as documented for each endpoint; this is not a complete filter-language validator."
        +        },
        +        "type": [
        +          "array",
        +          "null"
        +        ]
        +      },
        +      "ignore_synonyms": {
        +        "description": "",
        +        "type": [
        +          "boolean",
        +          "null"
        +        ]
        +      },
        +      "include_clickstream_data": {
        +        "description": "",
        +        "type": [
        +          "boolean",
        +          "null"
        +        ]
        +      },
        +      "include_seed_keyword": {
        +        "description": "<em>include data for the seed keyword</em><br>optional field<br>if set to <code>true</code>, data for the seed keyword specified in the <code>keyword</code> field will be provided in the <code>seed_keyword_data</code> array of the response<br>default value: <code>false</code>",
        +        "type": [
        +          "boolean",
        +          "null"
        +        ]
        +      },
        +      "include_serp_info": {
        +        "description": "<em>include data from SERP for each keyword</em><br>optional field<br>if set to <code>true</code>, we will return a <code>serp_info</code> array containing SERP data (number of search results, relevant URL, and SERP features) for every keyword in the response<br>default value: <code>false</code>",
        +        "type": [
        +          "boolean",
        +          "null"
        +        ]
        +      },
        +      "keyword": {
        +        "description": "<em>keyword</em><br><strong>required field</strong><br>UTF-8 encoding<br>the keywords will be converted to lowercase format<p>learn more about rules and limitations of <code>keyword</code> and <code>keywords</code> fields in DataForSEO APIs in this <a href=\"https://dataforseo.com/help-center/rules-and-limitations-of-keyword-and-keywords-fields-in-dataforseo-apis\" rel=\"noopener noreferrer\" target=\"_blank\">Help Center article</a>",
        +        "type": "string"
        +      },
        +      "language_code": {
        +        "description": "<em>language code</em><br><strong>required field if you don't specify</strong> <code>language_name</code><br><strong>Note:</strong> it is required to specify either <code>language_name</code> or <code>language_code</code><br>you can receive the list of available locations with their <code>language_code</code> by making a separate request to the <br><code>https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages</code><br>example:<br><code class=\"long-string\">en</code>",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "language_name": {
        +        "description": "<em>full name of the language</em><br><strong>required field if you don't specify</strong> <code>language_code</code><br><strong>Note:</strong> it is required to specify either <code>language_name</code> or <code>language_code</code><br>you can receive the list of available locations with their <code>language_name</code> by making a separate request to the <br><code>https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages</code><br>example:<br><code class=\"long-string\">English</code>",
        +        "type": "string"
        +      },
        +      "limit": {
        +        "description": "<em>the maximum number of returned keywords</em><br>optional field<br>default value: <code>100</code><br>maximum value: <code>1000</code>",
        +        "type": [
        +          "integer",
        +          "null"
        +        ]
        +      },
        +      "location_code": {
        +        "description": "<em>location code</em><br><strong>required field if you don't specify</strong> <code>location_name</code><br><strong>Note:</strong> it is required to specify either <code>location_name</code> or <code>location_code</code><br>you can receive the list of available locations with their <code>location_code</code> by making a separate request to the <br><code>https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages</code><br>example:<br><code class=\"long-string\">2840</code>",
        +        "type": "integer"
        +      },
        +      "location_name": {
        +        "description": "<em>full name of the location</em><br><strong>required field if you don't specify</strong> <code>location_code</code><br><strong>Note:</strong> it is required to specify either <code>location_name</code> or <code>location_code</code><br>you can receive the list of available locations with their <code>location_name</code> by making a separate request to the <br><code>https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages</code><br>example:<br><code class=\"long-string\">United Kingdom</code>",
        +        "type": "string"
        +      },
        +      "offset": {
        +        "description": "<em>offset in the results array of returned keywords</em><br>optional field<br>default value: <code>0</code><br>if you specify the <code>10</code> value, the first ten keywords in the results array will be omitted and the data will be provided for the successive keywords",
        +        "type": [
        +          "integer",
        +          "null"
        +        ]
        +      },
        +      "order_by": {
        +        "description": "<em>results sorting rules</em><br>optional field<br>you can use the same values as in the <code>filters</code> array to sort the results<br>possible sorting types:<br><code>asc</code> - results will be sorted in the ascending order<br><code>desc</code> - results will be sorted in the descending order<br>you should use a comma to set up a sorting type<br>example:<br><code>[\"keyword_data.keyword_info.competition,desc\"]</code><br>default rule:<br><code>[\"keyword_data.keyword_info.search_volume,desc\"]</code><br><strong>note that you can set no more than three sorting rules in a single request</strong><br>you should use a comma to separate several sorting rules<br>example:<br><code>[\"keyword_data.keyword_info.search_volume,desc\",\"keyword_data.keyword_info.cpc,desc\"]</code>",
        +        "items": {
        +          "type": "string"
        +        },
        +        "type": [
        +          "array",
        +          "null"
        +        ]
        +      },
        +      "replace_with_core_keyword": {
        +        "description": "<em>return data for core keyword</em><br>optional field<br>if <code>true</code>, <code>serp_info</code> and <code>related_keywords</code> will be returned for the main keyword in the group that the specified <code>keyword</code> belongs to;<br>if <code>false</code>, <code>serp_info</code> and <code>related_keywords</code> will be returned for the specified <code>keyword</code> (if available);<br>refer to <a href=\"https://dataforseo.com/help-center/replace_with_core_keyword\" rel=\"noopener noreferrer\" target=\"_blank\">this help center article</a> for more details;<br>default value: <code>false</code>",
        +        "type": [
        +          "boolean",
        +          "null"
        +        ]
        +      },
        +      "tag": {
        +        "description": "<em>user-defined task identifier</em><br>optional field<br><em>the character limit is 255</em><br>you can use this parameter to identify the task and match it with the result<br>you will find the specified <code>tag</code> value in the <code>data</code> object of the response",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      }
        +    },
        +    "type": "object"
        +  }
        +]
      • removedInput schema / properties / body / items / oneOf
        Removed value: -[
        -  {
        -    "example": [
        -      {
        -        "keyword": "phone",
        -        "language_name": "English",
        -        "limit": 3,
        -        "location_code": 2840
        -      }
        -    ],
        -    "properties": {
        -      "depth": {
        -        "description": "<em>keyword search depth</em><br>optional field<br>default value: <code>1</code><p>number of the returned results depends on the value you set in this field<br>you can specify a level from 0 to 4<br>estimated number of keywords for each level (maximum):<br>0 - the keyword set in the <code>keyword</code> field<br>1 – 8 keywords<br>2 – 72 keywords<br>3 – 584 keywords<br>4 – 4680 keywords",
        -        "type": [
        -          "integer",
        -          "null"
        -        ]
        -      },
        -      "filters": {
        -        "description": "<em>array of results filtering parameters</em><br>optional field<br><strong>you can add several filters at once (8 filters maximum)</strong><br>you should set a logical operator <code>and</code>, <code>or</code> between the conditions<br>the following operators are supported:<br><code>regex</code>, <code>not_regex</code>, <code>&lt;</code>, <code>&lt;=</code>, <code>&gt;</code>, <code>&gt;=</code>, <code>=</code>, <code>&lt;&gt;</code>, <code>in</code>, <code>not_in</code>, <code>match</code>, <code>not_match</code>, <code>ilike</code>, <code>not_ilike</code>, <code>like</code>,<code>not_like</code><br>you can use the <code>%</code> operator with <code>like</code> and <code>not_like</code>, as well as <code>ilike</code> and <code>not_ilike</code> to match any string of zero or more characters<br>example:<br><code>[\"keyword_data.keyword_info.search_volume\",\"&gt;\",0]</code><p><code>[[\"keyword_info.search_volume\",\"in\",[0,1000]],<br>\"and\",<br>[\"keyword_data.keyword_info.competition_level\",\"=\",\"LOW\"]]</code><p><code>[[\"keyword_data.keyword_info.search_volume\",\"&gt;\",100],<br>\"and\",<br>[[\"keyword_data.keyword_info.cpc\",\"&lt;\",0.5],<br>\"or\",<p>[\"keyword_info.high_top_of_page_bid\",\"&lt;=\",0.5]]]</code><br>for more information about filters, please refer to <a href=\"/v3/dataforseo_labs/filters\" target=\"_blank\" rel=\"noopener noreferrer\">Dataforseo Labs - Filters</a> or this <a href=\"https://dataforseo.com/help-center/how-to-use-filters-in-dataforseo-labs-api\" rel=\"noopener noreferrer\" target=\"_blank\">help center guide</a>",
        -        "items": {
        -          "type": [
        -            "object",
        -            "null"
        -          ]
        -        },
        -        "type": [
        -          "array",
        -          "null"
        -        ]
        -      },
        -      "ignore_synonyms": {
        -        "description": "",
        -        "type": [
        -          "boolean",
        -          "null"
        -        ]
        -      },
        -      "include_clickstream_data": {
        -        "description": "",
        -        "type": [
        -          "boolean",
        -          "null"
        -        ]
        -      },
        -      "include_seed_keyword": {
        -        "description": "<em>include data for the seed keyword</em><br>optional field<br>if set to <code>true</code>, data for the seed keyword specified in the <code>keyword</code> field will be provided in the <code>seed_keyword_data</code> array of the response<br>default value: <code>false</code>",
        -        "type": [
        -          "boolean",
        -          "null"
        -        ]
        -      },
        -      "include_serp_info": {
        -        "description": "<em>include data from SERP for each keyword</em><br>optional field<br>if set to <code>true</code>, we will return a <code>serp_info</code> array containing SERP data (number of search results, relevant URL, and SERP features) for every keyword in the response<br>default value: <code>false</code>",
        -        "type": [
        -          "boolean",
        -          "null"
        -        ]
        -      },
        -      "keyword": {
        -        "description": "<em>keyword</em><br><strong>required field</strong><br>UTF-8 encoding<br>the keywords will be converted to lowercase format<p>learn more about rules and limitations of <code>keyword</code> and <code>keywords</code> fields in DataForSEO APIs in this <a href=\"https://dataforseo.com/help-center/rules-and-limitations-of-keyword-and-keywords-fields-in-dataforseo-apis\" rel=\"noopener noreferrer\" target=\"_blank\">Help Center article</a>",
        -        "type": "string"
        -      },
        -      "language_code": {
        -        "description": "<em>language code</em><br><strong>required field if you don't specify</strong> <code>language_name</code><br><strong>Note:</strong> it is required to specify either <code>language_name</code> or <code>language_code</code><br>you can receive the list of available locations with their <code>language_code</code> by making a separate request to the <br><code>https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages</code><br>example:<br><code class=\"long-string\">en</code>",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      },
        -      "language_name": {
        -        "description": "<em>full name of the language</em><br><strong>required field if you don't specify</strong> <code>language_code</code><br><strong>Note:</strong> it is required to specify either <code>language_name</code> or <code>language_code</code><br>you can receive the list of available locations with their <code>language_name</code> by making a separate request to the <br><code>https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages</code><br>example:<br><code class=\"long-string\">English</code>",
        -        "type": "string"
        -      },
        -      "limit": {
        -        "description": "<em>the maximum number of returned keywords</em><br>optional field<br>default value: <code>100</code><br>maximum value: <code>1000</code>",
        -        "type": [
        -          "integer",
        -          "null"
        -        ]
        -      },
        -      "location_code": {
        -        "description": "<em>location code</em><br><strong>required field if you don't specify</strong> <code>location_name</code><br><strong>Note:</strong> it is required to specify either <code>location_name</code> or <code>location_code</code><br>you can receive the list of available locations with their <code>location_code</code> by making a separate request to the <br><code>https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages</code><br>example:<br><code class=\"long-string\">2840</code>",
        -        "type": "integer"
        -      },
        -      "location_name": {
        -        "description": "<em>full name of the location</em><br><strong>required field if you don't specify</strong> <code>location_code</code><br><strong>Note:</strong> it is required to specify either <code>location_name</code> or <code>location_code</code><br>you can receive the list of available locations with their <code>location_name</code> by making a separate request to the <br><code>https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages</code><br>example:<br><code class=\"long-string\">United Kingdom</code>",
        -        "type": "string"
        -      },
        -      "offset": {
        -        "description": "<em>offset in the results array of returned keywords</em><br>optional field<br>default value: <code>0</code><br>if you specify the <code>10</code> value, the first ten keywords in the results array will be omitted and the data will be provided for the successive keywords",
        -        "type": [
        -          "integer",
        -          "null"
        -        ]
        -      },
        -      "order_by": {
        -        "description": "<em>results sorting rules</em><br>optional field<br>you can use the same values as in the <code>filters</code> array to sort the results<br>possible sorting types:<br><code>asc</code> - results will be sorted in the ascending order<br><code>desc</code> - results will be sorted in the descending order<br>you should use a comma to set up a sorting type<br>example:<br><code>[\"keyword_data.keyword_info.competition,desc\"]</code><br>default rule:<br><code>[\"keyword_data.keyword_info.search_volume,desc\"]</code><br><strong>note that you can set no more than three sorting rules in a single request</strong><br>you should use a comma to separate several sorting rules<br>example:<br><code>[\"keyword_data.keyword_info.search_volume,desc\",\"keyword_data.keyword_info.cpc,desc\"]</code>",
        -        "items": {
        -          "type": "string"
        -        },
        -        "type": [
        -          "array",
        -          "null"
        -        ]
        -      },
        -      "replace_with_core_keyword": {
        -        "description": "<em>return data for core keyword</em><br>optional field<br>if <code>true</code>, <code>serp_info</code> and <code>related_keywords</code> will be returned for the main keyword in the group that the specified <code>keyword</code> belongs to;<br>if <code>false</code>, <code>serp_info</code> and <code>related_keywords</code> will be returned for the specified <code>keyword</code> (if available);<br>refer to <a href=\"https://dataforseo.com/help-center/replace_with_core_keyword\" rel=\"noopener noreferrer\" target=\"_blank\">this help center article</a> for more details;<br>default value: <code>false</code>",
        -        "type": [
        -          "boolean",
        -          "null"
        -        ]
        -      },
        -      "tag": {
        -        "description": "<em>user-defined task identifier</em><br>optional field<br><em>the character limit is 255</em><br>you can use this parameter to identify the task and match it with the result<br>you will find the specified <code>tag</code> value in the <code>data</code> object of the response",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      }
        -    },
        -    "type": "object"
        -  }
        -]
    • Changedpost_dataforseo_labs_google_search_intent_live1 field changed
      • changedInput schema / properties / body / items / oneOf
        Previous value: -[
        -  {
        -    "example": [
        -      {
        -        "keywords": [
        -          "login page",
        -          "audi a7",
        -          "elon musk",
        -          "milk store new york"
        -        ]
        -      }
        -    ],
        -    "properties": {
        -      "keywords": {
        -        "description": "<em>target keywords</em><br><strong>required field</strong><br>UTF-8 encoding<br>maximum number of keywords you can specify in this array: 1000;<br>the keywords will be converted to lowercase format<p>learn more about rules and limitations of <code>keyword</code> and <code>keywords</code> fields in DataForSEO APIs in this <a href=\"https://dataforseo.com/help-center/rules-and-limitations-of-keyword-and-keywords-fields-in-dataforseo-apis\" rel=\"noopener noreferrer\" target=\"_blank\">Help Center article</a>",
        -        "items": {
        -          "type": "string"
        -        },
        -        "type": "array"
        -      },
        -      "tag": {
        -        "description": "<em>user-defined task identifier</em><br>optional field<br><em>the character limit is 255</em><br>you can use this parameter to identify the task and match it with the result<br>you will find the specified <code>tag</code> value in the <code>data</code> object of the response",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      }
        -    },
        -    "type": "object"
        -  }
        -]New value: +[
        +  {
        +    "properties": {
        +      "keywords": {
        +        "description": "<em>target keywords</em><br><strong>required field</strong><br>UTF-8 encoding<br>maximum number of keywords you can specify in this array: 1000;<br>the keywords will be converted to lowercase format<p>learn more about rules and limitations of <code>keyword</code> and <code>keywords</code> fields in DataForSEO APIs in this <a href=\"https://dataforseo.com/help-center/rules-and-limitations-of-keyword-and-keywords-fields-in-dataforseo-apis\" rel=\"noopener noreferrer\" target=\"_blank\">Help Center article</a>",
        +        "items": {
        +          "type": "string"
        +        },
        +        "type": "array"
        +      },
        +      "tag": {
        +        "description": "<em>user-defined task identifier</em><br>optional field<br><em>the character limit is 255</em><br>you can use this parameter to identify the task and match it with the result<br>you will find the specified <code>tag</code> value in the <code>data</code> object of the response",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      }
        +    },
        +    "type": "object"
        +  }
        +]
    • Changedpost_dataforseo_labs_google_top_searches_live3 fields changed
      • addedInput schema / $defs
        Added value: +{
        +  "Provider0A3E90081762_AisaDataforseoFilterJsonValue": {
        +    "anyOf": [
        +      {
        +        "type": "string"
        +      },
        +      {
        +        "type": "number"
        +      },
        +      {
        +        "type": "boolean"
        +      },
        +      {
        +        "additionalProperties": {
        +          "$ref": "#/$defs/Provider0A3E90081762_AisaDataforseoFilterJsonValue"
        +        },
        +        "type": [
        +          "object",
        +          "null"
        +        ]
        +      },
        +      {
        +        "items": {
        +          "$ref": "#/$defs/Provider0A3E90081762_AisaDataforseoFilterJsonValue"
        +        },
        +        "type": "array"
        +      }
        +    ],
        +    "description": "JSON representation of filter values and nested expressions. Field names, operators, condition counts and operand compatibility remain provider-validated as documented for each endpoint; this is not a complete filter-language validator."
        +  }
        +}
      • addedInput schema / properties / body / items / anyOf
        Added value: +[
        +  {
        +    "properties": {
        +      "filters": {
        +        "description": "<em>array of results filtering parameters</em><br>optional field<br><strong>you can add several filters at once (8 filters maximum)</strong><br>you should set a logical operator <code>and</code>, <code>or</code> between the conditions<br>the following operators are supported:<br><code>regex</code>, <code>not_regex</code>, <code>&lt;</code>, <code>&lt;=</code>, <code>&gt;</code>, <code>&gt;=</code>, <code>=</code>, <code>&lt;&gt;</code>, <code>in</code>, <code>not_in</code>, <code>match</code>, <code>not_match</code>, <code>ilike</code>, <code>not_ilike</code>, <code>like</code>,<code>not_like</code><br>you can use the <code>%</code> operator with <code>like</code> and <code>not_like</code>,as well as <code>ilike</code> and <code>not_ilike</code> to match any string of zero or more characters<br>example:<br><code>[\"keyword_info.search_volume\",\"&gt;\",0]</code><p><code>[[\"keyword_info.search_volume\",\"in\",[0,1000]],<br>\"and\",<br>[\"keyword_info.competition_level\",\"=\",\"LOW\"]]</code><p><code>[[\"keyword_info.search_volume\",\"&gt;\",100],<br>\"and\",<br>[[\"keyword_info.cpc\",\"&lt;\",0.5],<br>\"or\",<p>[\"keyword_info.high_top_of_page_bid\",\"&lt;=\",0.5]]]</code><br>for more information about filters, please refer to <a href=\"/v3/dataforseo_labs/filters\" target=\"_blank\" rel=\"noopener noreferrer\">Dataforseo Labs - Filters</a> or this <a href=\"https://dataforseo.com/help-center/how-to-use-filters-in-dataforseo-labs-api\" rel=\"noopener noreferrer\" target=\"_blank\">help center guide</a>",
        +        "items": {
        +          "anyOf": [
        +            {
        +              "type": "string"
        +            },
        +            {
        +              "type": "number"
        +            },
        +            {
        +              "type": "boolean"
        +            },
        +            {
        +              "additionalProperties": {
        +                "$ref": "#/$defs/Provider0A3E90081762_AisaDataforseoFilterJsonValue"
        +              },
        +              "type": [
        +                "object",
        +                "null"
        +              ]
        +            },
        +            {
        +              "items": {
        +                "$ref": "#/$defs/Provider0A3E90081762_AisaDataforseoFilterJsonValue"
        +              },
        +              "type": "array"
        +            }
        +          ],
        +          "description": "JSON representation of filter values and nested expressions. Field names, operators, condition counts and operand compatibility remain provider-validated as documented for each endpoint; this is not a complete filter-language validator."
        +        },
        +        "type": [
        +          "array",
        +          "null"
        +        ]
        +      },
        +      "ignore_synonyms": {
        +        "description": "<em>ignore highly similar keywords</em><br>optional field<br>if set to <code class=\"prettyprint\">true</code> only core keywords will be returned, all highly similar keywords will be excluded;  <br>default value: <code>false</code>",
        +        "type": [
        +          "boolean",
        +          "null"
        +        ]
        +      },
        +      "include_clickstream_data": {
        +        "description": "<em>include or exclude data from clickstream-based metrics in the result</em><br>optional field<br>if the parameter is set to <code>true</code>, you will receive <code>clickstream_keyword_info</code>, <code>keyword_info_normalized_with_clickstream</code>, and <code>keyword_info_normalized_with_bing</code> fields in the response<br>default value: <code>false</code><br>with this parameter enabled, you will be charged double the price for the request<p>learn more about how clickstream-based metrics are calculated in this <a href=\"https://dataforseo.com/help-center/what-are-clickstream-based-metrics-and-how-do-we-calculate-them\" rel=\"noopener noreferrer\" target=\"_blank\">help center article</a>",
        +        "type": [
        +          "boolean",
        +          "null"
        +        ]
        +      },
        +      "include_serp_info": {
        +        "description": "<em>include data from SERP for each keyword</em><br>optional field<br>if set to <code>true</code>, we will return a <code>serp_info</code> array containing SERP data (number of search results, relevant URL, and SERP features) for every keyword in the response<br>default value: <code>false</code>",
        +        "type": [
        +          "boolean",
        +          "null"
        +        ]
        +      },
        +      "language_code": {
        +        "description": "<em>language code</em><br><strong>required field if you don't specify</strong> <code>language_name</code><br><strong>Note:</strong> it is required to specify either <code>language_name</code> or <code>language_code</code><br>you can receive the list of available locations with their <code>language_code</code> by making a separate request to the <br><code>https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages</code><br>example:<br><code class=\"long-string\">en</code>",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "language_name": {
        +        "description": "<em>full name of the language</em><br><strong>required field if you don't specify</strong> <code>language_code</code><br><strong>Note:</strong> it is required to specify either <code>language_name</code> or <code>language_code</code><br>you can receive the list of available locations with their <code>language_name</code> by making a separate request to the <br><code>https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages</code><br>example:<br><code class=\"long-string\">English</code>",
        +        "type": "string"
        +      },
        +      "limit": {
        +        "description": "<em>the maximum number of returned keywords</em><br>optional field<br></strong>note:</strong> you can get more than 1000 results by using the <code>offset_token</code> provided in the response to each subsequent request<br>default value: <code>1000</code><br>maximum value: <code>1000</code>",
        +        "type": [
        +          "integer",
        +          "null"
        +        ]
        +      },
        +      "location_code": {
        +        "description": "<em>location code</em><br><strong>required field if you don't specify</strong> <code>location_name</code><br><strong>Note:</strong> it is required to specify either <code>location_name</code> or <code>location_code</code><br>you can receive the list of available locations with their <code>location_code</code> by making a separate request to the <br><code>https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages</code><br>example:<br><code class=\"long-string\">2840</code>",
        +        "type": "integer"
        +      },
        +      "location_name": {
        +        "description": "<em>full name of the location</em><br><strong>required field if you don't specify</strong> <code>location_code</code><br><strong>Note:</strong> it is required to specify either <code>location_name</code> or <code>location_code</code><br>you can receive the list of available locations with their <code>location_name</code> by making a separate request to the <br><code>https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages</code><br>example:<br><code class=\"long-string\">United Kingdom</code>",
        +        "type": "string"
        +      },
        +      "offset": {
        +        "description": "<em>offset in the results array of returned keywords</em><br>optional field<br>default value: <code>0</code><br>if you specify the <code>10</code> value, the first ten keywords in the results array will be omitted and the data will be provided for the successive keywords<br><strong>Note:</strong> we recommend using this parameter only when retrieving up to 10,000 results<br>for retrieving over 10,000 results, use the <code>offset_token</code> instead.",
        +        "type": [
        +          "integer",
        +          "null"
        +        ]
        +      },
        +      "offset_token": {
        +        "description": "<em>offset token for subsequent requests</em><br>optional field<br>provided in the identical filed of the response to each request;<br>use this parameter to avoid timeouts while trying to obtain over 10,000 results in a single request;<br>by specifying the unique <code>offset_token</code> value from the response array, you will get the subsequent results of the initial task;<br><code>offset_token</code> values are unique for each subsequent task <br><strong>Note:</strong> if the <code>offset_token</code> is specified in the request, all other parameters except <code>limit</code> will not be taken into account when processing a task.<br>learn more about this parameter on our <a href=\"https://dataforseo.com/help-center/what-is-the-difference-between-the-offset-and-offset_token-parameters#offset_token\" target=\"_blank\">Help Center</a>",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "order_by": {
        +        "description": "<em>results sorting rules</em><br>optional field<br>you can use the same values as in the <code>filters</code> array to sort the results<br>possible sorting types:<br><code>asc</code> - results will be sorted in the ascending order<br><code>desc</code> - results will be sorted in the descending order<br>you should use a comma to set up a sorting type<br>example:<br><code>[\"keyword_info.competition,desc\"]</code><br>default rule:<br><code>[\"keyword_info.search_volume,desc\"]</code><br><strong>note that you can set no more than three sorting rules in a single request</strong><br>you should use a comma to separate several sorting rules<br>example:<br><code>[\"keyword_info.search_volume,desc\",\"keyword_info.cpc,desc\"]</code>",
        +        "items": {
        +          "type": "string"
        +        },
        +        "type": [
        +          "array",
        +          "null"
        +        ]
        +      },
        +      "tag": {
        +        "description": "<em>user-defined task identifier</em><br>optional field<br><em>the character limit is 255</em><br>you can use this parameter to identify the task and match it with the result<br>you will find the specified <code>tag</code> value in the <code>data</code> object of the response",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      }
        +    },
        +    "type": "object"
        +  }
        +]
      • removedInput schema / properties / body / items / oneOf
        Removed value: -[
        -  {
        -    "example": [
        -      {
        -        "language_name": "English",
        -        "limit": 3,
        -        "location_code": 2840
        -      }
        -    ],
        -    "properties": {
        -      "filters": {
        -        "description": "<em>array of results filtering parameters</em><br>optional field<br><strong>you can add several filters at once (8 filters maximum)</strong><br>you should set a logical operator <code>and</code>, <code>or</code> between the conditions<br>the following operators are supported:<br><code>regex</code>, <code>not_regex</code>, <code>&lt;</code>, <code>&lt;=</code>, <code>&gt;</code>, <code>&gt;=</code>, <code>=</code>, <code>&lt;&gt;</code>, <code>in</code>, <code>not_in</code>, <code>match</code>, <code>not_match</code>, <code>ilike</code>, <code>not_ilike</code>, <code>like</code>,<code>not_like</code><br>you can use the <code>%</code> operator with <code>like</code> and <code>not_like</code>,as well as <code>ilike</code> and <code>not_ilike</code> to match any string of zero or more characters<br>example:<br><code>[\"keyword_info.search_volume\",\"&gt;\",0]</code><p><code>[[\"keyword_info.search_volume\",\"in\",[0,1000]],<br>\"and\",<br>[\"keyword_info.competition_level\",\"=\",\"LOW\"]]</code><p><code>[[\"keyword_info.search_volume\",\"&gt;\",100],<br>\"and\",<br>[[\"keyword_info.cpc\",\"&lt;\",0.5],<br>\"or\",<p>[\"keyword_info.high_top_of_page_bid\",\"&lt;=\",0.5]]]</code><br>for more information about filters, please refer to <a href=\"/v3/dataforseo_labs/filters\" target=\"_blank\" rel=\"noopener noreferrer\">Dataforseo Labs - Filters</a> or this <a href=\"https://dataforseo.com/help-center/how-to-use-filters-in-dataforseo-labs-api\" rel=\"noopener noreferrer\" target=\"_blank\">help center guide</a>",
        -        "items": {
        -          "type": [
        -            "object",
        -            "null"
        -          ]
        -        },
        -        "type": [
        -          "array",
        -          "null"
        -        ]
        -      },
        -      "ignore_synonyms": {
        -        "description": "<em>ignore highly similar keywords</em><br>optional field<br>if set to <code class=\"prettyprint\">true</code> only core keywords will be returned, all highly similar keywords will be excluded;  <br>default value: <code>false</code>",
        -        "type": [
        -          "boolean",
        -          "null"
        -        ]
        -      },
        -      "include_clickstream_data": {
        -        "description": "<em>include or exclude data from clickstream-based metrics in the result</em><br>optional field<br>if the parameter is set to <code>true</code>, you will receive <code>clickstream_keyword_info</code>, <code>keyword_info_normalized_with_clickstream</code>, and <code>keyword_info_normalized_with_bing</code> fields in the response<br>default value: <code>false</code><br>with this parameter enabled, you will be charged double the price for the request<p>learn more about how clickstream-based metrics are calculated in this <a href=\"https://dataforseo.com/help-center/what-are-clickstream-based-metrics-and-how-do-we-calculate-them\" rel=\"noopener noreferrer\" target=\"_blank\">help center article</a>",
        -        "type": [
        -          "boolean",
        -          "null"
        -        ]
        -      },
        -      "include_serp_info": {
        -        "description": "<em>include data from SERP for each keyword</em><br>optional field<br>if set to <code>true</code>, we will return a <code>serp_info</code> array containing SERP data (number of search results, relevant URL, and SERP features) for every keyword in the response<br>default value: <code>false</code>",
        -        "type": [
        -          "boolean",
        -          "null"
        -        ]
        -      },
        -      "language_code": {
        -        "description": "<em>language code</em><br><strong>required field if you don't specify</strong> <code>language_name</code><br><strong>Note:</strong> it is required to specify either <code>language_name</code> or <code>language_code</code><br>you can receive the list of available locations with their <code>language_code</code> by making a separate request to the <br><code>https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages</code><br>example:<br><code class=\"long-string\">en</code>",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      },
        -      "language_name": {
        -        "description": "<em>full name of the language</em><br><strong>required field if you don't specify</strong> <code>language_code</code><br><strong>Note:</strong> it is required to specify either <code>language_name</code> or <code>language_code</code><br>you can receive the list of available locations with their <code>language_name</code> by making a separate request to the <br><code>https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages</code><br>example:<br><code class=\"long-string\">English</code>",
        -        "type": "string"
        -      },
        -      "limit": {
        -        "description": "<em>the maximum number of returned keywords</em><br>optional field<br></strong>note:</strong> you can get more than 1000 results by using the <code>offset_token</code> provided in the response to each subsequent request<br>default value: <code>1000</code><br>maximum value: <code>1000</code>",
        -        "type": [
        -          "integer",
        -          "null"
        -        ]
        -      },
        -      "location_code": {
        -        "description": "<em>location code</em><br><strong>required field if you don't specify</strong> <code>location_name</code><br><strong>Note:</strong> it is required to specify either <code>location_name</code> or <code>location_code</code><br>you can receive the list of available locations with their <code>location_code</code> by making a separate request to the <br><code>https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages</code><br>example:<br><code class=\"long-string\">2840</code>",
        -        "type": "integer"
        -      },
        -      "location_name": {
        -        "description": "<em>full name of the location</em><br><strong>required field if you don't specify</strong> <code>location_code</code><br><strong>Note:</strong> it is required to specify either <code>location_name</code> or <code>location_code</code><br>you can receive the list of available locations with their <code>location_name</code> by making a separate request to the <br><code>https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages</code><br>example:<br><code class=\"long-string\">United Kingdom</code>",
        -        "type": "string"
        -      },
        -      "offset": {
        -        "description": "<em>offset in the results array of returned keywords</em><br>optional field<br>default value: <code>0</code><br>if you specify the <code>10</code> value, the first ten keywords in the results array will be omitted and the data will be provided for the successive keywords<br><strong>Note:</strong> we recommend using this parameter only when retrieving up to 10,000 results<br>for retrieving over 10,000 results, use the <code>offset_token</code> instead.",
        -        "type": [
        -          "integer",
        -          "null"
        -        ]
        -      },
        -      "offset_token": {
        -        "description": "<em>offset token for subsequent requests</em><br>optional field<br>provided in the identical filed of the response to each request;<br>use this parameter to avoid timeouts while trying to obtain over 10,000 results in a single request;<br>by specifying the unique <code>offset_token</code> value from the response array, you will get the subsequent results of the initial task;<br><code>offset_token</code> values are unique for each subsequent task <br><strong>Note:</strong> if the <code>offset_token</code> is specified in the request, all other parameters except <code>limit</code> will not be taken into account when processing a task.<br>learn more about this parameter on our <a href=\"https://dataforseo.com/help-center/what-is-the-difference-between-the-offset-and-offset_token-parameters#offset_token\" target=\"_blank\">Help Center</a>",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      },
        -      "order_by": {
        -        "description": "<em>results sorting rules</em><br>optional field<br>you can use the same values as in the <code>filters</code> array to sort the results<br>possible sorting types:<br><code>asc</code> - results will be sorted in the ascending order<br><code>desc</code> - results will be sorted in the descending order<br>you should use a comma to set up a sorting type<br>example:<br><code>[\"keyword_info.competition,desc\"]</code><br>default rule:<br><code>[\"keyword_info.search_volume,desc\"]</code><br><strong>note that you can set no more than three sorting rules in a single request</strong><br>you should use a comma to separate several sorting rules<br>example:<br><code>[\"keyword_info.search_volume,desc\",\"keyword_info.cpc,desc\"]</code>",
        -        "items": {
        -          "type": "string"
        -        },
        -        "type": [
        -          "array",
        -          "null"
        -        ]
        -      },
        -      "tag": {
        -        "description": "<em>user-defined task identifier</em><br>optional field<br><em>the character limit is 255</em><br>you can use this parameter to identify the task and match it with the result<br>you will find the specified <code>tag</code> value in the <code>data</code> object of the response",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      }
        -    },
        -    "type": "object"
        -  }
        -]
  2. 26 tool updates
    • Changedpost_dataforseo_keywords_bing_audience_live2 fields changed
      • removedInput schema / properties / body / items / anyOf
        Removed value: -[
        -  {
        -    "example": [
        -      {
        -        "age": [
        -          "twenty_five_to_thirty_four",
        -          "eighteen_to_twenty_four",
        -          "unknown"
        -        ],
        -        "bid": 1,
        -        "daily_budget": 24,
        -        "gender": [
        -          "male"
        -        ],
        -        "industry": [
        -          "806303407",
        -          "806301758"
        -        ],
        -        "job_function": [
        -          "806298607"
        -        ],
        -        "location_coordinate": "29.6821525,-82.4098881,100"
        -      }
        -    ],
        -    "properties": {
        -      "age": {
        -        "description": "<em>selection of age ranges for targeting</em><br>possible values: <code>eighteen_to_twenty_four</code>, <code>fifty_to_sixty_four</code>, <code>sixty_five_and_above</code>, <code>thirteen_to_seventeen</code>, <code>thirty_five_to_forty_nine</code>, <code>twenty_five_to_thirty_four</code>, <code>unknown</code>, <code>zero_to_twelve</code>",
        -        "items": {
        -          "type": "string"
        -        },
        -        "type": [
        -          "array",
        -          "null"
        -        ]
        -      },
        -      "bid": {
        -        "description": "<em>desired bid setting value in USD</em><br>maximum value: 1000",
        -        "type": [
        -          "number",
        -          "null"
        -        ]
        -      },
        -      "daily_budget": {
        -        "description": "<em>daily campaign budget value in USD</em><br>maximum value: 10000",
        -        "type": [
        -          "number",
        -          "null"
        -        ]
        -      },
        -      "gender": {
        -        "description": "<em>gender to target</em><br>possible values: <code>male</code>, <code>female</code>, <code>unknown</code>",
        -        "items": {
        -          "type": "string"
        -        },
        -        "type": [
        -          "array",
        -          "null"
        -        ]
        -      },
        -      "industry": {
        -        "description": "<em>industry of LinkedIn profile targeting</em><p>if you use this field, you can receive the list of available industry names  with industry_id by making a separate request to the https://api.dataforseo.com/v3/keywords_data/bing/audience_estimation/industries<p>example: <code>806301758</code>",
        -        "items": {
        -          "type": "string"
        -        },
        -        "type": [
        -          "array",
        -          "null"
        -        ]
        -      },
        -      "job_function": {
        -        "description": "<em>job function of LinkedIn profile targeting</em><p>if you use this field, you can receive the list of available job function names  with job_function_id by making a separate request to the https://api.dataforseo.com/v3/keywords_data/bing/audience_estimation/job_functions<p>example: <code>806300451</code>",
        -        "items": {
        -          "type": "string"
        -        },
        -        "type": [
        -          "array",
        -          "null"
        -        ]
        -      },
        -      "location_code": {
        -        "description": "<em>search engine location code</em><br><strong>required field if you don't specify</strong> <code>location_name</code> or <code>location_coordinate</code><br><strong>if you use this field, you don't need to specify <code>location_name</code> or <code>location_coordinate</code></strong><br>you can receive the list of available locations of the search engines with their <code>location_code</code> by making a separate request to <code>https://api.dataforseo.com/v3/keywords_data/bing/locations</code><br>example:<br><code class=\"long-string\">2840</code>",
        -        "type": "integer"
        -      },
        -      "location_coordinate": {
        -        "description": "<em>GPS coordinates of a location</em><br><strong>required field if you don't specify</strong> <code>location_name</code> or <code>location_code</code><br><strong>if you use this field, you don't need to specify <code>location_name</code> or <code>location_code</code></strong><br><code>location_coordinate</code> parameter should be specified in the <em>\"latitude,longitude,radius (in km)\"</em> format<br><strong>the data will be provided for the country the specified coordinates belong to</strong><br>example:<br><code class=\"long-string\">29.6821525,-82.4098881,100</code>",
        -        "type": "string"
        -      },
        -      "location_name": {
        -        "description": "<em>full name of search engine location</em><br><strong>required field if you don't specify</strong> <code>location_code</code> or <code>location_coordinate</code><br><strong>if you use this field, you don't need to specify <code>location_code</code> or <code>location_coordinate</code></strong><br>you can receive the list of available locations of the search engine with their <code>location_name</code> by making a separate request to <code>https://api.dataforseo.com/v3/keywords_data/bing/locations</code><br>example:<br><code class=\"long-string\">London,England,United Kingdom</code>",
        -        "type": "string"
        -      }
        -    },
        -    "type": "object"
        -  }
        -]
      • addedInput schema / properties / body / items / oneOf
        Added value: +[
        +  {
        +    "example": [
        +      {
        +        "age": [
        +          "twenty_five_to_thirty_four",
        +          "eighteen_to_twenty_four",
        +          "unknown"
        +        ],
        +        "bid": 1,
        +        "daily_budget": 24,
        +        "gender": [
        +          "male"
        +        ],
        +        "industry": [
        +          "806303407",
        +          "806301758"
        +        ],
        +        "job_function": [
        +          "806298607"
        +        ],
        +        "location_coordinate": "29.6821525,-82.4098881,100"
        +      }
        +    ],
        +    "properties": {
        +      "age": {
        +        "description": "<em>selection of age ranges for targeting</em><br>possible values: <code>eighteen_to_twenty_four</code>, <code>fifty_to_sixty_four</code>, <code>sixty_five_and_above</code>, <code>thirteen_to_seventeen</code>, <code>thirty_five_to_forty_nine</code>, <code>twenty_five_to_thirty_four</code>, <code>unknown</code>, <code>zero_to_twelve</code>",
        +        "items": {
        +          "type": "string"
        +        },
        +        "type": [
        +          "array",
        +          "null"
        +        ]
        +      },
        +      "bid": {
        +        "description": "<em>desired bid setting value in USD</em><br>maximum value: 1000",
        +        "type": [
        +          "number",
        +          "null"
        +        ]
        +      },
        +      "daily_budget": {
        +        "description": "<em>daily campaign budget value in USD</em><br>maximum value: 10000",
        +        "type": [
        +          "number",
        +          "null"
        +        ]
        +      },
        +      "gender": {
        +        "description": "<em>gender to target</em><br>possible values: <code>male</code>, <code>female</code>, <code>unknown</code>",
        +        "items": {
        +          "type": "string"
        +        },
        +        "type": [
        +          "array",
        +          "null"
        +        ]
        +      },
        +      "industry": {
        +        "description": "<em>industry of LinkedIn profile targeting</em><p>if you use this field, you can receive the list of available industry names  with industry_id by making a separate request to the https://api.dataforseo.com/v3/keywords_data/bing/audience_estimation/industries<p>example: <code>806301758</code>",
        +        "items": {
        +          "type": "string"
        +        },
        +        "type": [
        +          "array",
        +          "null"
        +        ]
        +      },
        +      "job_function": {
        +        "description": "<em>job function of LinkedIn profile targeting</em><p>if you use this field, you can receive the list of available job function names  with job_function_id by making a separate request to the https://api.dataforseo.com/v3/keywords_data/bing/audience_estimation/job_functions<p>example: <code>806300451</code>",
        +        "items": {
        +          "type": "string"
        +        },
        +        "type": [
        +          "array",
        +          "null"
        +        ]
        +      },
        +      "location_code": {
        +        "description": "<em>search engine location code</em><br><strong>required field if you don't specify</strong> <code>location_name</code> or <code>location_coordinate</code><br><strong>if you use this field, you don't need to specify <code>location_name</code> or <code>location_coordinate</code></strong><br>you can receive the list of available locations of the search engines with their <code>location_code</code> by making a separate request to <code>https://api.dataforseo.com/v3/keywords_data/bing/locations</code><br>example:<br><code class=\"long-string\">2840</code>",
        +        "type": "integer"
        +      },
        +      "location_coordinate": {
        +        "description": "<em>GPS coordinates of a location</em><br><strong>required field if you don't specify</strong> <code>location_name</code> or <code>location_code</code><br><strong>if you use this field, you don't need to specify <code>location_name</code> or <code>location_code</code></strong><br><code>location_coordinate</code> parameter should be specified in the <em>\"latitude,longitude,radius (in km)\"</em> format<br><strong>the data will be provided for the country the specified coordinates belong to</strong><br>example:<br><code class=\"long-string\">29.6821525,-82.4098881,100</code>",
        +        "type": "string"
        +      },
        +      "location_name": {
        +        "description": "<em>full name of search engine location</em><br><strong>required field if you don't specify</strong> <code>location_code</code> or <code>location_coordinate</code><br><strong>if you use this field, you don't need to specify <code>location_code</code> or <code>location_coordinate</code></strong><br>you can receive the list of available locations of the search engine with their <code>location_name</code> by making a separate request to <code>https://api.dataforseo.com/v3/keywords_data/bing/locations</code><br>example:<br><code class=\"long-string\">London,England,United Kingdom</code>",
        +        "type": "string"
        +      }
        +    },
        +    "type": "object"
        +  }
        +]
    • Changedpost_dataforseo_keywords_bing_kw_for_keywords_live2 fields changed
      • removedInput schema / properties / body / items / anyOf
        Removed value: -[
        -  {
        -    "example": [
        -      {
        -        "keywords": [
        -          "average page rpm adsense",
        -          "adsense blank ads how long",
        -          "leads and prospects"
        -        ],
        -        "language_name": "English",
        -        "location_name": "United States"
        -      }
        -    ],
        -    "properties": {
        -      "date_from": {
        -        "description": "<em>starting date of the time range</em><br>optional field<br>minimal value: 24 months from today's date;<br>if you don't specify this field, data will be provided for the last 12 months;<br>if <a href=\"/v3/keywords_data/bing/status/\" target=\"_blank\" rel=\"noopener noreferrer\">Status endpoint</a> returns <code>false</code> in the <code>actual_data</code> field, <code>date_from</code> can be set to the month before last and prior;<br>if <a href=\"/v3/keywords_data/bing/status/\" target=\"_blank\" rel=\"noopener noreferrer\">Status endpoint</a> returns <code>true</code> in the <code>actual_data</code> field, <code>date_from</code> can be set to the last month and prior;<br>date format: <code>\"yyyy-mm-dd\"</code><br>example:<br><code>\"2020-01-01\"</code><p><strong>Note:</strong> we do not recommend using a custom time range for the past year's dates",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      },
        -      "date_to": {
        -        "description": "<em>ending date of the time range</em><br>optional field<br>if you don't specify this field, data will be provided for the last 12 months;<br>minimum value: two years back from today’s date;<br>maximum value: one month from today's date;<br>date format: <code>\"yyyy-mm-dd\"</code><br>example:<br><code>\"2020-03-15\"</code><p><strong>Note:</strong> we do not recommend using a custom time range for the past year's dates",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      },
        -      "device": {
        -        "description": "<em>device type</em><br>optional field<br>specify this field if you want to get the data for a particular device type;<br>possible values: <code>all</code>, <code>mobile</code>, <code>desktop</code>, <code>tablet</code><br>default value: <code>all</code>",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      },
        -      "keywords": {
        -        "description": "<em>keywords</em><br><strong>required field</strong><br>you can specify <strong>the maximum of 200 keywords</strong> with each keyword containing no more than <strong>100 characters</strong>;<br>the specified keywords will be converted to lowercase, data will be provided in a separate array<p>learn more about rules and limitations of <code>keyword</code> and <code>keywords</code> fields in DataForSEO APIs in this <a href=\"https://dataforseo.com/help-center/rules-and-limitations-of-keyword-and-keywords-fields-in-dataforseo-apis\" rel=\"noopener noreferrer\" target=\"_blank\">Help Center article</a>",
        -        "items": {
        -          "type": "string"
        -        },
        -        "type": "array"
        -      },
        -      "keywords_negative": {
        -        "description": "<em>keywords negative array</em><br>optional field<br>These keywords will be ignored in the results array;<br>You can specify <strong>a maximum of 200 terms</strong> that you want to exclude from the results;<br>the specified keywords will be converted to lowercase format",
        -        "items": {
        -          "type": "string"
        -        },
        -        "type": [
        -          "array",
        -          "null"
        -        ]
        -      },
        -      "language_code": {
        -        "description": "<em>search engine language code</em><br><strong>required field if you don't specify</strong> <code>language_name</code><br>if you use this field, you don't need to specify <code>language_name</code><br>supported languages:<br><code class=\"long-string\">en</code>, <code>fr</code>, <code>de</code>",
        -        "type": "string"
        -      },
        -      "language_name": {
        -        "description": "<em>full name of search engine language</em><br><strong>required field if you don't specify</strong> <code>language_code</code><br>if you use this field, you don't need to specify <code>language_code</code><br>supported languages:<br><code>English</code>, <code>French</code>, <code>German</code>",
        -        "type": "string"
        -      },
        -      "location_code": {
        -        "description": "<em>search engine location code</em><br><strong>required field if you don't specify</strong> <code>location_name</code> or <code>location_coordinate</code><br><strong>if you use this field, you don't need to specify <code>location_name</code> or <code>location_coordinate</code></strong><br>you can receive the list of available locations of the search engines with their <code>location_code</code> by making a separate request to <code>https://api.dataforseo.com/v3/keywords_data/bing/locations</code><br>example:<br><code class=\"long-string\">2840</code>",
        -        "type": "integer"
        -      },
        -      "location_coordinate": {
        -        "description": "<em>GPS coordinates of a location</em><br><strong>required field if you don't specify</strong> <code>location_name</code> or <code>location_code</code><br><strong>if you use this field, you don't need to specify <code>location_name</code> or <code>location_code</code></strong><br><code>location_coordinate</code> parameter should be specified in the <em>\"latitude,longitude\"</em> format<br><strong>the data will be provided for the country the specified coordinates belong to</strong><br>example:<br><code class=\"long-string\">52.6178549,-155.352142</code>",
        -        "type": "string"
        -      },
        -      "location_name": {
        -        "description": "<em>full name of search engine location</em><br><strong>required field if you don't specify</strong> <code>location_code</code> or <code>location_coordinate</code><br><strong>if you use this field, you don't need to specify <code>location_code</code> or <code>location_coordinate</code></strong><br>you can receive the list of available locations of the search engine with their <code>location_name</code> by making a separate request to <code>https://api.dataforseo.com/v3/keywords_data/bing/locations</code><br>example:<br><code class=\"long-string\">London,England,United Kingdom</code>",
        -        "type": "string"
        -      },
        -      "search_partners": {
        -        "description": "<em>Bing search partners type</em><br>optional field<br>if you specify <code class=\"prettyprint\">true</code>, the results will be delivered for owned, operated, and syndicated networks across Bing, Yahoo, AOL and partner sites that host Bing, AOL, and Yahoo search.<br>default value: <code>false</code> - results are returned for Bing, AOL, and Yahoo search networks",
        -        "type": [
        -          "boolean",
        -          "null"
        -        ]
        -      },
        -      "sort_by": {
        -        "description": "<em>results sorting parameters</em><br>optional field<br>Use these parameters to sort the results by <code>search_volume</code>, <code>cpc</code>, <code>competition</code> or <code>relevance</code> in the descending order<br>default value: <code>relevance</code>",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      },
        -      "tag": {
        -        "description": "<em>user-defined task identifier</em><br>optional field<br><em>the character limit is 255</em><br>you can use this parameter to identify the task and match it with the result<br>you will find the specified <code>tag</code> value in the <code>data</code> object of the response",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      }
        -    },
        -    "type": "object"
        -  }
        -]
      • addedInput schema / properties / body / items / oneOf
        Added value: +[
        +  {
        +    "example": [
        +      {
        +        "keywords": [
        +          "average page rpm adsense",
        +          "adsense blank ads how long",
        +          "leads and prospects"
        +        ],
        +        "language_name": "English",
        +        "location_name": "United States"
        +      }
        +    ],
        +    "properties": {
        +      "date_from": {
        +        "description": "<em>starting date of the time range</em><br>optional field<br>minimal value: 24 months from today's date;<br>if you don't specify this field, data will be provided for the last 12 months;<br>if <a href=\"/v3/keywords_data/bing/status/\" target=\"_blank\" rel=\"noopener noreferrer\">Status endpoint</a> returns <code>false</code> in the <code>actual_data</code> field, <code>date_from</code> can be set to the month before last and prior;<br>if <a href=\"/v3/keywords_data/bing/status/\" target=\"_blank\" rel=\"noopener noreferrer\">Status endpoint</a> returns <code>true</code> in the <code>actual_data</code> field, <code>date_from</code> can be set to the last month and prior;<br>date format: <code>\"yyyy-mm-dd\"</code><br>example:<br><code>\"2020-01-01\"</code><p><strong>Note:</strong> we do not recommend using a custom time range for the past year's dates",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "date_to": {
        +        "description": "<em>ending date of the time range</em><br>optional field<br>if you don't specify this field, data will be provided for the last 12 months;<br>minimum value: two years back from today’s date;<br>maximum value: one month from today's date;<br>date format: <code>\"yyyy-mm-dd\"</code><br>example:<br><code>\"2020-03-15\"</code><p><strong>Note:</strong> we do not recommend using a custom time range for the past year's dates",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "device": {
        +        "description": "<em>device type</em><br>optional field<br>specify this field if you want to get the data for a particular device type;<br>possible values: <code>all</code>, <code>mobile</code>, <code>desktop</code>, <code>tablet</code><br>default value: <code>all</code>",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "keywords": {
        +        "description": "<em>keywords</em><br><strong>required field</strong><br>you can specify <strong>the maximum of 200 keywords</strong> with each keyword containing no more than <strong>100 characters</strong>;<br>the specified keywords will be converted to lowercase, data will be provided in a separate array<p>learn more about rules and limitations of <code>keyword</code> and <code>keywords</code> fields in DataForSEO APIs in this <a href=\"https://dataforseo.com/help-center/rules-and-limitations-of-keyword-and-keywords-fields-in-dataforseo-apis\" rel=\"noopener noreferrer\" target=\"_blank\">Help Center article</a>",
        +        "items": {
        +          "type": "string"
        +        },
        +        "type": "array"
        +      },
        +      "keywords_negative": {
        +        "description": "<em>keywords negative array</em><br>optional field<br>These keywords will be ignored in the results array;<br>You can specify <strong>a maximum of 200 terms</strong> that you want to exclude from the results;<br>the specified keywords will be converted to lowercase format",
        +        "items": {
        +          "type": "string"
        +        },
        +        "type": [
        +          "array",
        +          "null"
        +        ]
        +      },
        +      "language_code": {
        +        "description": "<em>search engine language code</em><br><strong>required field if you don't specify</strong> <code>language_name</code><br>if you use this field, you don't need to specify <code>language_name</code><br>supported languages:<br><code class=\"long-string\">en</code>, <code>fr</code>, <code>de</code>",
        +        "type": "string"
        +      },
        +      "language_name": {
        +        "description": "<em>full name of search engine language</em><br><strong>required field if you don't specify</strong> <code>language_code</code><br>if you use this field, you don't need to specify <code>language_code</code><br>supported languages:<br><code>English</code>, <code>French</code>, <code>German</code>",
        +        "type": "string"
        +      },
        +      "location_code": {
        +        "description": "<em>search engine location code</em><br><strong>required field if you don't specify</strong> <code>location_name</code> or <code>location_coordinate</code><br><strong>if you use this field, you don't need to specify <code>location_name</code> or <code>location_coordinate</code></strong><br>you can receive the list of available locations of the search engines with their <code>location_code</code> by making a separate request to <code>https://api.dataforseo.com/v3/keywords_data/bing/locations</code><br>example:<br><code class=\"long-string\">2840</code>",
        +        "type": "integer"
        +      },
        +      "location_coordinate": {
        +        "description": "<em>GPS coordinates of a location</em><br><strong>required field if you don't specify</strong> <code>location_name</code> or <code>location_code</code><br><strong>if you use this field, you don't need to specify <code>location_name</code> or <code>location_code</code></strong><br><code>location_coordinate</code> parameter should be specified in the <em>\"latitude,longitude\"</em> format<br><strong>the data will be provided for the country the specified coordinates belong to</strong><br>example:<br><code class=\"long-string\">52.6178549,-155.352142</code>",
        +        "type": "string"
        +      },
        +      "location_name": {
        +        "description": "<em>full name of search engine location</em><br><strong>required field if you don't specify</strong> <code>location_code</code> or <code>location_coordinate</code><br><strong>if you use this field, you don't need to specify <code>location_code</code> or <code>location_coordinate</code></strong><br>you can receive the list of available locations of the search engine with their <code>location_name</code> by making a separate request to <code>https://api.dataforseo.com/v3/keywords_data/bing/locations</code><br>example:<br><code class=\"long-string\">London,England,United Kingdom</code>",
        +        "type": "string"
        +      },
        +      "search_partners": {
        +        "description": "<em>Bing search partners type</em><br>optional field<br>if you specify <code class=\"prettyprint\">true</code>, the results will be delivered for owned, operated, and syndicated networks across Bing, Yahoo, AOL and partner sites that host Bing, AOL, and Yahoo search.<br>default value: <code>false</code> - results are returned for Bing, AOL, and Yahoo search networks",
        +        "type": [
        +          "boolean",
        +          "null"
        +        ]
        +      },
        +      "sort_by": {
        +        "description": "<em>results sorting parameters</em><br>optional field<br>Use these parameters to sort the results by <code>search_volume</code>, <code>cpc</code>, <code>competition</code> or <code>relevance</code> in the descending order<br>default value: <code>relevance</code>",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "tag": {
        +        "description": "<em>user-defined task identifier</em><br>optional field<br><em>the character limit is 255</em><br>you can use this parameter to identify the task and match it with the result<br>you will find the specified <code>tag</code> value in the <code>data</code> object of the response",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      }
        +    },
        +    "type": "object"
        +  }
        +]
    • Changedpost_dataforseo_keywords_bing_kw_for_site_live2 fields changed
      • removedInput schema / properties / body / items / anyOf
        Removed value: -[
        -  {
        -    "example": [
        -      {
        -        "language_code": "en",
        -        "location_code": 2840,
        -        "target": "dataforseo.com"
        -      }
        -    ],
        -    "properties": {
        -      "date_from": {
        -        "description": "<em>starting date of the time range</em><br>optional field<br>minimal value: 24 months from today's date;<br>if you don't specify this field, data will be provided for the last 12 months;<br>if <a href=\"/v3/keywords_data/bing/status/\" target=\"_blank\" rel=\"noopener noreferrer\">Status endpoint</a> returns <code>false</code> in the <code>actual_data</code> field, <code>date_from</code> can be set to the month before last and prior;<br>if <a href=\"/v3/keywords_data/bing/status/\" target=\"_blank\" rel=\"noopener noreferrer\">Status endpoint</a> returns <code>true</code> in the <code>actual_data</code> field, <code>date_from</code> can be set to the last month and prior;<br>date format: <code>\"yyyy-mm-dd\"</code><br>example:<br><code>\"2020-01-01\"</code><p><strong>Note:</strong> we do not recommend using a custom time range for the past year's dates",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      },
        -      "date_to": {
        -        "description": "<em>ending date of the time range</em><br>optional field<br>if you don't specify this field, data will be provided for the last 12 months;<br>minimum value: two years back from today’s date;<br>maximum value: one month from today's date;<br><strong>note:</strong> we do not recommend using a custom time range for the past year's dates;<br>date format: <code>\"yyyy-mm-dd\"</code><br>example:<br><code>\"2020-03-15\"</code><p><strong>Note:</strong> we do not recommend using a custom time range for the past year's dates",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      },
        -      "device": {
        -        "description": "<em>device type</em><br>optional field<br>specify this field if you want to get the data for a particular device typepossible values: <code>all</code>, <code>mobile</code>, <code>desktop</code>, <code>tablet</code><br>default value: <code>all</code>",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      },
        -      "keywords_negative": {
        -        "description": "<em>keywords negative array</em><br>optional field<br>These keywords will be ignored in the results array;<br>You can specify <strong>a maximum of 200 terms</strong> that you want to exclude from the results;<br>the specified keywords will be converted to lowercase format",
        -        "items": {
        -          "type": "string"
        -        },
        -        "type": [
        -          "array",
        -          "null"
        -        ]
        -      },
        -      "language_code": {
        -        "description": "<em>search engine language code</em><br><strong>required field if you don't specify</strong> <code>language_name</code><br>if you use this field, you don't need to specify <code>language_name</code><br>supported languages:<br><code class=\"long-string\">en</code>, <code>fr</code>, <code>de</code>",
        -        "type": "string"
        -      },
        -      "language_name": {
        -        "description": "<em>full name of search engine language</em><br><strong>required field if you don't specify</strong> <code>language_code</code><br>if you use this field, you don't need to specify <code>language_code</code><br>supported languages:<br><code>English</code>, <code>French</code>, <code>German</code>",
        -        "type": "string"
        -      },
        -      "location_code": {
        -        "description": "<em>search engine location code</em><br><strong>required field if you don't specify</strong> <code>location_name</code> or <code>location_coordinate</code><br><strong>if you use this field, you don't need to specify <code>location_name</code> or <code>location_coordinate</code></strong><br>you can receive the list of available locations of the search engines with their <code>location_code</code> by making a separate request to <code>https://api.dataforseo.com/v3/keywords_data/bing/locations</code><br>example:<br><code class=\"long-string\">2840</code>",
        -        "type": "integer"
        -      },
        -      "location_coordinate": {
        -        "description": "<em>GPS coordinates of a location</em><br><strong>required field if you don't specify</strong> <code>location_name</code> or <code>location_code</code><br><strong>if you use this field, you don't need to specify <code>location_name</code> or <code>location_code</code></strong><br><code>location_coordinate</code> parameter should be specified in the <em>\"latitude,longitude\"</em> format<br><strong>the data will be provided for the country the specified coordinates belong to</strong><br>example:<br><code class=\"long-string\">52.6178549,-155.352142</code>",
        -        "type": "string"
        -      },
        -      "location_name": {
        -        "description": "<em>full name of search engine location</em><br><strong>required field if you don't specify</strong> <code>location_code</code> or <code>location_coordinate</code><br><strong>if you use this field, you don't need to specify <code>location_code</code> or <code>location_coordinate</code></strong><br>you can receive the list of available locations of the search engine with their <code>location_name</code> by making a separate request to <code>https://api.dataforseo.com/v3/keywords_data/bing/locations</code><br>example:<br><code class=\"long-string\">London,England,United Kingdom</code>",
        -        "type": "string"
        -      },
        -      "search_partners": {
        -        "description": "<em>Bing search partners type</em><br>optional field<br>if you specify <code class=\"prettyprint\">true</code>, the results will be delivered for owned, operated, and syndicated networks across Bing, Yahoo, AOL and partner sites that host Bing, AOL, and Yahoo search.<br>default value: <code>false</code> - results are returned for Bing, AOL, and Yahoo search networks",
        -        "type": [
        -          "boolean",
        -          "null"
        -        ]
        -      },
        -      "sort_by": {
        -        "description": "<em>results sorting parameters</em><br>optional field<br>Use these parameters to sort the results by <code>search_volume</code>, <code>cpc</code>, <code>competition</code> or <code>relevance</code> in the descending order<br>default value: <code>relevance</code>",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      },
        -      "tag": {
        -        "description": "<em>user-defined task identifier</em><br>optional field<br><em>the character limit is 255</em><br>you can use this parameter to identify the task and match it with the result<br>you will find the specified <code>tag</code> value in the <code>data</code> object of the response",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      },
        -      "target": {
        -        "description": "<em>domain or URL</em><br><strong>required field</strong><br>the domain name or URL of the target website",
        -        "type": "string"
        -      }
        -    },
        -    "type": "object"
        -  }
        -]
      • addedInput schema / properties / body / items / oneOf
        Added value: +[
        +  {
        +    "example": [
        +      {
        +        "language_code": "en",
        +        "location_code": 2840,
        +        "target": "dataforseo.com"
        +      }
        +    ],
        +    "properties": {
        +      "date_from": {
        +        "description": "<em>starting date of the time range</em><br>optional field<br>minimal value: 24 months from today's date;<br>if you don't specify this field, data will be provided for the last 12 months;<br>if <a href=\"/v3/keywords_data/bing/status/\" target=\"_blank\" rel=\"noopener noreferrer\">Status endpoint</a> returns <code>false</code> in the <code>actual_data</code> field, <code>date_from</code> can be set to the month before last and prior;<br>if <a href=\"/v3/keywords_data/bing/status/\" target=\"_blank\" rel=\"noopener noreferrer\">Status endpoint</a> returns <code>true</code> in the <code>actual_data</code> field, <code>date_from</code> can be set to the last month and prior;<br>date format: <code>\"yyyy-mm-dd\"</code><br>example:<br><code>\"2020-01-01\"</code><p><strong>Note:</strong> we do not recommend using a custom time range for the past year's dates",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "date_to": {
        +        "description": "<em>ending date of the time range</em><br>optional field<br>if you don't specify this field, data will be provided for the last 12 months;<br>minimum value: two years back from today’s date;<br>maximum value: one month from today's date;<br><strong>note:</strong> we do not recommend using a custom time range for the past year's dates;<br>date format: <code>\"yyyy-mm-dd\"</code><br>example:<br><code>\"2020-03-15\"</code><p><strong>Note:</strong> we do not recommend using a custom time range for the past year's dates",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "device": {
        +        "description": "<em>device type</em><br>optional field<br>specify this field if you want to get the data for a particular device typepossible values: <code>all</code>, <code>mobile</code>, <code>desktop</code>, <code>tablet</code><br>default value: <code>all</code>",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "keywords_negative": {
        +        "description": "<em>keywords negative array</em><br>optional field<br>These keywords will be ignored in the results array;<br>You can specify <strong>a maximum of 200 terms</strong> that you want to exclude from the results;<br>the specified keywords will be converted to lowercase format",
        +        "items": {
        +          "type": "string"
        +        },
        +        "type": [
        +          "array",
        +          "null"
        +        ]
        +      },
        +      "language_code": {
        +        "description": "<em>search engine language code</em><br><strong>required field if you don't specify</strong> <code>language_name</code><br>if you use this field, you don't need to specify <code>language_name</code><br>supported languages:<br><code class=\"long-string\">en</code>, <code>fr</code>, <code>de</code>",
        +        "type": "string"
        +      },
        +      "language_name": {
        +        "description": "<em>full name of search engine language</em><br><strong>required field if you don't specify</strong> <code>language_code</code><br>if you use this field, you don't need to specify <code>language_code</code><br>supported languages:<br><code>English</code>, <code>French</code>, <code>German</code>",
        +        "type": "string"
        +      },
        +      "location_code": {
        +        "description": "<em>search engine location code</em><br><strong>required field if you don't specify</strong> <code>location_name</code> or <code>location_coordinate</code><br><strong>if you use this field, you don't need to specify <code>location_name</code> or <code>location_coordinate</code></strong><br>you can receive the list of available locations of the search engines with their <code>location_code</code> by making a separate request to <code>https://api.dataforseo.com/v3/keywords_data/bing/locations</code><br>example:<br><code class=\"long-string\">2840</code>",
        +        "type": "integer"
        +      },
        +      "location_coordinate": {
        +        "description": "<em>GPS coordinates of a location</em><br><strong>required field if you don't specify</strong> <code>location_name</code> or <code>location_code</code><br><strong>if you use this field, you don't need to specify <code>location_name</code> or <code>location_code</code></strong><br><code>location_coordinate</code> parameter should be specified in the <em>\"latitude,longitude\"</em> format<br><strong>the data will be provided for the country the specified coordinates belong to</strong><br>example:<br><code class=\"long-string\">52.6178549,-155.352142</code>",
        +        "type": "string"
        +      },
        +      "location_name": {
        +        "description": "<em>full name of search engine location</em><br><strong>required field if you don't specify</strong> <code>location_code</code> or <code>location_coordinate</code><br><strong>if you use this field, you don't need to specify <code>location_code</code> or <code>location_coordinate</code></strong><br>you can receive the list of available locations of the search engine with their <code>location_name</code> by making a separate request to <code>https://api.dataforseo.com/v3/keywords_data/bing/locations</code><br>example:<br><code class=\"long-string\">London,England,United Kingdom</code>",
        +        "type": "string"
        +      },
        +      "search_partners": {
        +        "description": "<em>Bing search partners type</em><br>optional field<br>if you specify <code class=\"prettyprint\">true</code>, the results will be delivered for owned, operated, and syndicated networks across Bing, Yahoo, AOL and partner sites that host Bing, AOL, and Yahoo search.<br>default value: <code>false</code> - results are returned for Bing, AOL, and Yahoo search networks",
        +        "type": [
        +          "boolean",
        +          "null"
        +        ]
        +      },
        +      "sort_by": {
        +        "description": "<em>results sorting parameters</em><br>optional field<br>Use these parameters to sort the results by <code>search_volume</code>, <code>cpc</code>, <code>competition</code> or <code>relevance</code> in the descending order<br>default value: <code>relevance</code>",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "tag": {
        +        "description": "<em>user-defined task identifier</em><br>optional field<br><em>the character limit is 255</em><br>you can use this parameter to identify the task and match it with the result<br>you will find the specified <code>tag</code> value in the <code>data</code> object of the response",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "target": {
        +        "description": "<em>domain or URL</em><br><strong>required field</strong><br>the domain name or URL of the target website",
        +        "type": "string"
        +      }
        +    },
        +    "type": "object"
        +  }
        +]
    • Changedpost_dataforseo_keywords_bing_kw_performance_live2 fields changed
      • removedInput schema / properties / body / items / anyOf
        Removed value: -[
        -  {
        -    "example": [
        -      {
        -        "keywords": [
        -          "dataforseo",
        -          "seo",
        -          "ranking"
        -        ],
        -        "language_code": "en",
        -        "location_code": 2840
        -      }
        -    ],
        -    "properties": {
        -      "device": {
        -        "description": "<em>device type</em><br>optional field<br>specify this field if you want to get the data for a particular device typepossible values: <code>desktop</code>, <code>mobile</code>, <code>tablet</code>, <code>all</code><br>default value: <code>all</code>",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      },
        -      "keywords": {
        -        "description": "<em>keywords</em><br><strong>required field</strong><br>The maximum number of keywords you can specify: 1000<br>The maximum number of characters for each keyword: 80<br>The maximum number of words for each keyword phrase: 10<br>the specified keywords will be converted to lowercase, data will be provided in a separate array<p>learn more about rules and limitations of <code>keyword</code> and <code>keywords</code> fields in DataForSEO APIs in this <a href=\"https://dataforseo.com/help-center/rules-and-limitations-of-keyword-and-keywords-fields-in-dataforseo-apis\" rel=\"noopener noreferrer\" target=\"_blank\">Help Center article</a>",
        -        "items": {
        -          "type": "string"
        -        },
        -        "type": "array"
        -      },
        -      "language_code": {
        -        "description": "<em>search engine language code</em><br><strong>required field if you don't specify</strong> <code>language_name</code><br>you can receive the list of available locations and languages by making a separate request to <code>https://api.dataforseo.com/v3/keywords_data/bing/keyword_performance/locations_and_languages</code><br>example:<br><code>\"en\"</code>",
        -        "type": "string"
        -      },
        -      "language_name": {
        -        "description": "<em>full name of search engine language</em><br><strong>required field if you don't specify</strong> <code>language_code</code><br><strong>if you use this field, you don't need to specify <code>language_code</code></strong><br>you can receive the list of available locations and languages by making a separate request to <code>https://api.dataforseo.com/v3/keywords_data/bing/keyword_performance/locations_and_languages</code><br>example:<br><code class=\"long-string\">English</code>",
        -        "type": "string"
        -      },
        -      "location_code": {
        -        "description": "<em>search engine location code</em><br><strong>required field if you don't specify</strong> <code>location_name</code> or <code>location_coordinate</code><br><strong>if you use this field, you don't need to specify <code>location_name</code> or <code>location_coordinate</code></strong><br>you can receive the list of available locations and languages by making a separate request to <code>https://api.dataforseo.com/v3/keywords_data/bing/keyword_performance/locations_and_languages</code><br>example:<br><code>2840</code>",
        -        "type": "integer"
        -      },
        -      "location_coordinate": {
        -        "description": "<em>GPS coordinates of a location</em><br><strong>required field if you don't specify</strong> <code>location_name</code> or <code>location_code</code><br><strong>if you use this field, you don't need to specify <code>location_name</code> or <code>location_code</code></strong><br><code>location_coordinate</code> parameter should be specified in the <em>\"latitude,longitude\"</em> format<br><strong>the data will be provided for the country the specified coordinates belong to</strong><br>example:<br><code class=\"long-string\">52.6178549,-155.352142</code>",
        -        "type": "string"
        -      },
        -      "location_name": {
        -        "description": "<em>full name of search engine location</em><br><strong>required field if you don't specify</strong> <code>location_code</code> or <code>location_coordinate</code><br><strong>if you use this field, you don't need to specify <code>location_code</code> or <code>location_coordinate</code></strong><br>you can receive the list of available locations and languages by making a separate request to <code>https://api.dataforseo.com/v3/keywords_data/bing/keyword_performance/locations_and_languages</code><br>example:<br><code>\"United States\"</code>",
        -        "type": "string"
        -      },
        -      "match": {
        -        "description": "<em>keywords match type</em><br>optional field<br>can take the following values:<br><code>aggregate</code> returns data across all match types;<br><code>broad</code> returns data for all user queries containing the specified keyword with varying word order;<br><code>phrase</code> returns data for all user queries containing the specified keyword with identical word order;<br><code>exact</code> returns data for user query that matches the specified keyword;<strong>Note:</strong> the <code>aggregate</code> match type is applied by default",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      },
        -      "tag": {
        -        "description": "<em>user-defined task identifier</em><br>optional field<br><em>the character limit is 255</em><br>you can use this parameter to identify the task and match it with the result<br>you will find the specified <code>tag</code> value in the <code>data</code> object of the response",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      }
        -    },
        -    "type": "object"
        -  }
        -]
      • addedInput schema / properties / body / items / oneOf
        Added value: +[
        +  {
        +    "example": [
        +      {
        +        "keywords": [
        +          "dataforseo",
        +          "seo",
        +          "ranking"
        +        ],
        +        "language_code": "en",
        +        "location_code": 2840
        +      }
        +    ],
        +    "properties": {
        +      "device": {
        +        "description": "<em>device type</em><br>optional field<br>specify this field if you want to get the data for a particular device typepossible values: <code>desktop</code>, <code>mobile</code>, <code>tablet</code>, <code>all</code><br>default value: <code>all</code>",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "keywords": {
        +        "description": "<em>keywords</em><br><strong>required field</strong><br>The maximum number of keywords you can specify: 1000<br>The maximum number of characters for each keyword: 80<br>The maximum number of words for each keyword phrase: 10<br>the specified keywords will be converted to lowercase, data will be provided in a separate array<p>learn more about rules and limitations of <code>keyword</code> and <code>keywords</code> fields in DataForSEO APIs in this <a href=\"https://dataforseo.com/help-center/rules-and-limitations-of-keyword-and-keywords-fields-in-dataforseo-apis\" rel=\"noopener noreferrer\" target=\"_blank\">Help Center article</a>",
        +        "items": {
        +          "type": "string"
        +        },
        +        "type": "array"
        +      },
        +      "language_code": {
        +        "description": "<em>search engine language code</em><br><strong>required field if you don't specify</strong> <code>language_name</code><br>you can receive the list of available locations and languages by making a separate request to <code>https://api.dataforseo.com/v3/keywords_data/bing/keyword_performance/locations_and_languages</code><br>example:<br><code>\"en\"</code>",
        +        "type": "string"
        +      },
        +      "language_name": {
        +        "description": "<em>full name of search engine language</em><br><strong>required field if you don't specify</strong> <code>language_code</code><br><strong>if you use this field, you don't need to specify <code>language_code</code></strong><br>you can receive the list of available locations and languages by making a separate request to <code>https://api.dataforseo.com/v3/keywords_data/bing/keyword_performance/locations_and_languages</code><br>example:<br><code class=\"long-string\">English</code>",
        +        "type": "string"
        +      },
        +      "location_code": {
        +        "description": "<em>search engine location code</em><br><strong>required field if you don't specify</strong> <code>location_name</code> or <code>location_coordinate</code><br><strong>if you use this field, you don't need to specify <code>location_name</code> or <code>location_coordinate</code></strong><br>you can receive the list of available locations and languages by making a separate request to <code>https://api.dataforseo.com/v3/keywords_data/bing/keyword_performance/locations_and_languages</code><br>example:<br><code>2840</code>",
        +        "type": "integer"
        +      },
        +      "location_coordinate": {
        +        "description": "<em>GPS coordinates of a location</em><br><strong>required field if you don't specify</strong> <code>location_name</code> or <code>location_code</code><br><strong>if you use this field, you don't need to specify <code>location_name</code> or <code>location_code</code></strong><br><code>location_coordinate</code> parameter should be specified in the <em>\"latitude,longitude\"</em> format<br><strong>the data will be provided for the country the specified coordinates belong to</strong><br>example:<br><code class=\"long-string\">52.6178549,-155.352142</code>",
        +        "type": "string"
        +      },
        +      "location_name": {
        +        "description": "<em>full name of search engine location</em><br><strong>required field if you don't specify</strong> <code>location_code</code> or <code>location_coordinate</code><br><strong>if you use this field, you don't need to specify <code>location_code</code> or <code>location_coordinate</code></strong><br>you can receive the list of available locations and languages by making a separate request to <code>https://api.dataforseo.com/v3/keywords_data/bing/keyword_performance/locations_and_languages</code><br>example:<br><code>\"United States\"</code>",
        +        "type": "string"
        +      },
        +      "match": {
        +        "description": "<em>keywords match type</em><br>optional field<br>can take the following values:<br><code>aggregate</code> returns data across all match types;<br><code>broad</code> returns data for all user queries containing the specified keyword with varying word order;<br><code>phrase</code> returns data for all user queries containing the specified keyword with identical word order;<br><code>exact</code> returns data for user query that matches the specified keyword;<strong>Note:</strong> the <code>aggregate</code> match type is applied by default",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "tag": {
        +        "description": "<em>user-defined task identifier</em><br>optional field<br><em>the character limit is 255</em><br>you can use this parameter to identify the task and match it with the result<br>you will find the specified <code>tag</code> value in the <code>data</code> object of the response",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      }
        +    },
        +    "type": "object"
        +  }
        +]
    • Changedpost_dataforseo_keywords_bing_search_volume_live2 fields changed
      • removedInput schema / properties / body / items / anyOf
        Removed value: -[
        -  {
        -    "example": [
        -      {
        -        "keywords": [
        -          "tom and jerry",
        -          "silicon valley",
        -          "spider man"
        -        ],
        -        "language_code": "en",
        -        "location_name": "United States"
        -      }
        -    ],
        -    "properties": {
        -      "date_from": {
        -        "description": "<em>starting date of the time range</em><br>optional field<br>minimal value: 24 months from today's date;<br>if you don't specify this field, data will be provided for the last 12 months;<br>minimum value: two years back from today’s date;<br>if <a href=\"/v3/keywords_data/bing/status/\" target=\"_blank\" rel=\"noopener noreferrer\">Status endpoint</a> returns <code>false</code> in the <code>actual_data</code> field, <code>date_from</code> can be set to the month before last and prior;<br>if <a href=\"/v3/keywords_data/bing/status/\" target=\"_blank\" rel=\"noopener noreferrer\">Status endpoint</a> returns <code>true</code> in the <code>actual_data</code> field, <code>date_from</code> can be set to the last month and prior;<br>date format: <code>\"yyyy-mm-dd\"</code><br>example:<br><code>\"2020-01-01\"</code><strong>Note:</strong> we do not recommend using a custom time range for the past year's dates",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      },
        -      "date_to": {
        -        "description": "<em>ending date of the time range</em><br>optional field<br>if you don't specify this field, data will be provided for the last 12 months;<br>minimum value: two years back from today’s date;<br>maximum value: one month from today's date;<br><strong>note:</strong> we do not recommend using a custom time range for the past year's dates;<br>date format: <code>\"yyyy-mm-dd\"</code><br>example:<br><code>\"2020-03-15\"</code><strong>Note:</strong> we do not recommend using a custom time range for the past year's dates",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      },
        -      "device": {
        -        "description": "<em>device type</em><br>optional field<br>specify this field if you want to get the data for a particular device type;<br>possible values: <code>all</code>, <code>mobile</code>, <code>desktop</code>, <code>tablet</code><br>default value: <code>all</code>",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      },
        -      "keywords": {
        -        "description": "<em>keywords</em><br><strong>required field</strong><br>The maximum number of keywords you can specify: 1000<br>The maximum number of characters for each keyword: 100<br>the specified keywords will be converted to lowercase, data will be provided in a separate arraylearn more about rules and limitations of <code>keyword</code> and <code>keywords</code> fields in DataForSEO APIs in this <a href=\"https://dataforseo.com/help-center/rules-and-limitations-of-keyword-and-keywords-fields-in-dataforseo-apis\" target=\"_blank\" rel=\"noopener noreferrer\">Help Center article</a>",
        -        "items": {
        -          "type": "string"
        -        },
        -        "type": "array"
        -      },
        -      "language_code": {
        -        "description": "<em>search engine language code</em><br><strong>required field if you don't specify</strong> <code>language_name</code><br>if you use this field, you don't need to specify <code>language_name</code><br>supported languages:<br><code class=\"long-string\">en</code>, <code>fr</code>, <code>de</code>",
        -        "type": "string"
        -      },
        -      "language_name": {
        -        "description": "<em>full name of search engine language</em><br><strong>required field if you don't specify</strong> <code>language_code</code><br>if you use this field, you don't need to specify <code>language_code</code><br>supported languages:<br><code>English</code>, <code>French</code>, <code>German</code>",
        -        "type": "string"
        -      },
        -      "location_code": {
        -        "description": "<em>search engine location code</em><br><strong>required field if you don't specify</strong> <code>location_name</code> or <code>location_coordinate</code><br><strong>if you use this field, you don't need to specify <code>location_name</code> or <code>location_coordinate</code></strong><br>you can receive the list of available locations of the search engines with their <code>location_code</code> by making a separate request to <code>https://api.dataforseo.com/v3/keywords_data/bing/locations</code><br>example:<br><code class=\"long-string\">2840</code>",
        -        "type": "integer"
        -      },
        -      "location_coordinate": {
        -        "description": "<em>GPS coordinates of a location</em><br><strong>required field if you don't specify</strong> <code>location_name</code> or <code>location_code</code><br><strong>if you use this field, you don't need to specify <code>location_name</code> or <code>location_code</code></strong><br><code>location_coordinate</code> parameter should be specified in the <em>\"latitude,longitude\"</em> format<br><strong>the data will be provided for the country the specified coordinates belong to</strong><br>example:<br><code class=\"long-string\">52.6178549,-155.352142</code>",
        -        "type": "string"
        -      },
        -      "location_name": {
        -        "description": "<em>full name of search engine location</em><br><strong>required field if you don't specify</strong> <code>location_code</code> or <code>location_coordinate</code><br><strong>if you use this field, you don't need to specify <code>location_code</code> or <code>location_coordinate</code></strong><br>you can receive the list of available locations of the search engine with their <code>location_name</code> by making a separate request to <code>https://api.dataforseo.com/v3/keywords_data/bing/locations</code><br>example:<br><code class=\"long-string\">London,England,United Kingdom</code>",
        -        "type": "string"
        -      },
        -      "search_partners": {
        -        "description": "<em>Bing search partners type</em><br>optional field<br>if you specify <code class=\"prettyprint\">true</code>, the results will be delivered for owned, operated, and syndicated networks across Bing, Yahoo, AOL and partner sites that host Bing, AOL, and Yahoo search.<br>default value: <code>false</code> - results are returned for Bing, AOL, and Yahoo search networks",
        -        "type": [
        -          "boolean",
        -          "null"
        -        ]
        -      },
        -      "sort_by": {
        -        "description": "<em>results sorting parameters</em><br>optional field<br>Use these parameters to sort the results by <code>search_volume</code>, <code>cpc</code>, <code>competition</code> or <code>relevance</code> in the descending order<br>default value: <code>relevance</code>",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      },
        -      "tag": {
        -        "description": "<em>user-defined task identifier</em><br>optional field<br><em>the character limit is 255</em><br>you can use this parameter to identify the task and match it with the result<br>you will find the specified <code>tag</code> value in the <code>data</code> object of the response",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      }
        -    },
        -    "type": "object"
        -  }
        -]
      • addedInput schema / properties / body / items / oneOf
        Added value: +[
        +  {
        +    "example": [
        +      {
        +        "keywords": [
        +          "tom and jerry",
        +          "silicon valley",
        +          "spider man"
        +        ],
        +        "language_code": "en",
        +        "location_name": "United States"
        +      }
        +    ],
        +    "properties": {
        +      "date_from": {
        +        "description": "<em>starting date of the time range</em><br>optional field<br>minimal value: 24 months from today's date;<br>if you don't specify this field, data will be provided for the last 12 months;<br>minimum value: two years back from today’s date;<br>if <a href=\"/v3/keywords_data/bing/status/\" target=\"_blank\" rel=\"noopener noreferrer\">Status endpoint</a> returns <code>false</code> in the <code>actual_data</code> field, <code>date_from</code> can be set to the month before last and prior;<br>if <a href=\"/v3/keywords_data/bing/status/\" target=\"_blank\" rel=\"noopener noreferrer\">Status endpoint</a> returns <code>true</code> in the <code>actual_data</code> field, <code>date_from</code> can be set to the last month and prior;<br>date format: <code>\"yyyy-mm-dd\"</code><br>example:<br><code>\"2020-01-01\"</code><strong>Note:</strong> we do not recommend using a custom time range for the past year's dates",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "date_to": {
        +        "description": "<em>ending date of the time range</em><br>optional field<br>if you don't specify this field, data will be provided for the last 12 months;<br>minimum value: two years back from today’s date;<br>maximum value: one month from today's date;<br><strong>note:</strong> we do not recommend using a custom time range for the past year's dates;<br>date format: <code>\"yyyy-mm-dd\"</code><br>example:<br><code>\"2020-03-15\"</code><strong>Note:</strong> we do not recommend using a custom time range for the past year's dates",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "device": {
        +        "description": "<em>device type</em><br>optional field<br>specify this field if you want to get the data for a particular device type;<br>possible values: <code>all</code>, <code>mobile</code>, <code>desktop</code>, <code>tablet</code><br>default value: <code>all</code>",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "keywords": {
        +        "description": "<em>keywords</em><br><strong>required field</strong><br>The maximum number of keywords you can specify: 1000<br>The maximum number of characters for each keyword: 100<br>the specified keywords will be converted to lowercase, data will be provided in a separate arraylearn more about rules and limitations of <code>keyword</code> and <code>keywords</code> fields in DataForSEO APIs in this <a href=\"https://dataforseo.com/help-center/rules-and-limitations-of-keyword-and-keywords-fields-in-dataforseo-apis\" target=\"_blank\" rel=\"noopener noreferrer\">Help Center article</a>",
        +        "items": {
        +          "type": "string"
        +        },
        +        "type": "array"
        +      },
        +      "language_code": {
        +        "description": "<em>search engine language code</em><br><strong>required field if you don't specify</strong> <code>language_name</code><br>if you use this field, you don't need to specify <code>language_name</code><br>supported languages:<br><code class=\"long-string\">en</code>, <code>fr</code>, <code>de</code>",
        +        "type": "string"
        +      },
        +      "language_name": {
        +        "description": "<em>full name of search engine language</em><br><strong>required field if you don't specify</strong> <code>language_code</code><br>if you use this field, you don't need to specify <code>language_code</code><br>supported languages:<br><code>English</code>, <code>French</code>, <code>German</code>",
        +        "type": "string"
        +      },
        +      "location_code": {
        +        "description": "<em>search engine location code</em><br><strong>required field if you don't specify</strong> <code>location_name</code> or <code>location_coordinate</code><br><strong>if you use this field, you don't need to specify <code>location_name</code> or <code>location_coordinate</code></strong><br>you can receive the list of available locations of the search engines with their <code>location_code</code> by making a separate request to <code>https://api.dataforseo.com/v3/keywords_data/bing/locations</code><br>example:<br><code class=\"long-string\">2840</code>",
        +        "type": "integer"
        +      },
        +      "location_coordinate": {
        +        "description": "<em>GPS coordinates of a location</em><br><strong>required field if you don't specify</strong> <code>location_name</code> or <code>location_code</code><br><strong>if you use this field, you don't need to specify <code>location_name</code> or <code>location_code</code></strong><br><code>location_coordinate</code> parameter should be specified in the <em>\"latitude,longitude\"</em> format<br><strong>the data will be provided for the country the specified coordinates belong to</strong><br>example:<br><code class=\"long-string\">52.6178549,-155.352142</code>",
        +        "type": "string"
        +      },
        +      "location_name": {
        +        "description": "<em>full name of search engine location</em><br><strong>required field if you don't specify</strong> <code>location_code</code> or <code>location_coordinate</code><br><strong>if you use this field, you don't need to specify <code>location_code</code> or <code>location_coordinate</code></strong><br>you can receive the list of available locations of the search engine with their <code>location_name</code> by making a separate request to <code>https://api.dataforseo.com/v3/keywords_data/bing/locations</code><br>example:<br><code class=\"long-string\">London,England,United Kingdom</code>",
        +        "type": "string"
        +      },
        +      "search_partners": {
        +        "description": "<em>Bing search partners type</em><br>optional field<br>if you specify <code class=\"prettyprint\">true</code>, the results will be delivered for owned, operated, and syndicated networks across Bing, Yahoo, AOL and partner sites that host Bing, AOL, and Yahoo search.<br>default value: <code>false</code> - results are returned for Bing, AOL, and Yahoo search networks",
        +        "type": [
        +          "boolean",
        +          "null"
        +        ]
        +      },
        +      "sort_by": {
        +        "description": "<em>results sorting parameters</em><br>optional field<br>Use these parameters to sort the results by <code>search_volume</code>, <code>cpc</code>, <code>competition</code> or <code>relevance</code> in the descending order<br>default value: <code>relevance</code>",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "tag": {
        +        "description": "<em>user-defined task identifier</em><br>optional field<br><em>the character limit is 255</em><br>you can use this parameter to identify the task and match it with the result<br>you will find the specified <code>tag</code> value in the <code>data</code> object of the response",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      }
        +    },
        +    "type": "object"
        +  }
        +]
    • Changedpost_dataforseo_keywords_clickstream_bulk_volume_live2 fields changed
      • removedInput schema / properties / body / items / anyOf
        Removed value: -[
        -  {
        -    "example": [
        -      {
        -        "keywords": [
        -          "you tube",
        -          "youtube",
        -          "youtub"
        -        ],
        -        "location_code": 2840,
        -        "tag": "test-tag"
        -      }
        -    ],
        -    "properties": {
        -      "keywords": {
        -        "description": "<em>target keywords</em><br><strong>required field</strong><br>UTF-8 encoding<br>maximum number of keywords you can specify in this array: 1000;<br>each keyword should be at least 3 characters long;<br>the keywords will be converted to lowercase format;<br><strong>Note:</strong> certain symbols and characters (e.g., UTF symbols, emojis) are not allowed<br>to learn more about which symbols and characters can be used, please refer to <a href=\"https://dataforseo.com/help-center/using-symbols-in-keywords-when-setting-a-google-ads-task\" target=\"_blank\" rel=\"noopener noreferrer\">this article</a><p>learn more about rules and limitations of <code>keyword</code> and <code>keywords</code> fields in DataForSEO APIs in this <a href=\"https://dataforseo.com/help-center/rules-and-limitations-of-keyword-and-keywords-fields-in-dataforseo-apis\" rel=\"noopener noreferrer\" target=\"_blank\">Help Center article</a>",
        -        "items": {
        -          "type": "string"
        -        },
        -        "type": "array"
        -      },
        -      "location_code": {
        -        "description": "<em>location code</em><br><strong>required field if you don't specify</strong> <code>location_name</code><br><strong>Note:</strong> it is required to specify either <code>location_name</code> or <code>location_code</code><br>you can receive the list of available locations with their <code>location_code</code> by making a separate request to the <br><code>https://api.dataforseo.com/v3/keywords_data/clickstream_data/locations_and_languages</code><br>example:<br><code class=\"long-string\">2840</code>",
        -        "type": "integer"
        -      },
        -      "location_name": {
        -        "description": "<em>full name of the location</em><br><strong>required field if you don't specify</strong> <code>location_code</code><br><strong>Note:</strong> it is required to specify either <code>location_name</code> or <code>location_code</code><br>you can receive the list of available locations with their <code>location_name</code> by making a separate request to the <br><code>https://api.dataforseo.com/v3/keywords_data/clickstream_data/locations_and_languages</code><br>example:<br><code class=\"long-string\">United Kingdom</code>",
        -        "type": "string"
        -      },
        -      "tag": {
        -        "description": "<em>user-defined task identifier</em><br>optional field<br><em>the character limit is 255</em><br>you can use this parameter to identify the task and match it with the result<br>you will find the specified <code>tag</code> value in the <code>data</code> object of the response",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      }
        -    },
        -    "type": "object"
        -  }
        -]
      • addedInput schema / properties / body / items / oneOf
        Added value: +[
        +  {
        +    "example": [
        +      {
        +        "keywords": [
        +          "you tube",
        +          "youtube",
        +          "youtub"
        +        ],
        +        "location_code": 2840,
        +        "tag": "test-tag"
        +      }
        +    ],
        +    "properties": {
        +      "keywords": {
        +        "description": "<em>target keywords</em><br><strong>required field</strong><br>UTF-8 encoding<br>maximum number of keywords you can specify in this array: 1000;<br>each keyword should be at least 3 characters long;<br>the keywords will be converted to lowercase format;<br><strong>Note:</strong> certain symbols and characters (e.g., UTF symbols, emojis) are not allowed<br>to learn more about which symbols and characters can be used, please refer to <a href=\"https://dataforseo.com/help-center/using-symbols-in-keywords-when-setting-a-google-ads-task\" target=\"_blank\" rel=\"noopener noreferrer\">this article</a><p>learn more about rules and limitations of <code>keyword</code> and <code>keywords</code> fields in DataForSEO APIs in this <a href=\"https://dataforseo.com/help-center/rules-and-limitations-of-keyword-and-keywords-fields-in-dataforseo-apis\" rel=\"noopener noreferrer\" target=\"_blank\">Help Center article</a>",
        +        "items": {
        +          "type": "string"
        +        },
        +        "type": "array"
        +      },
        +      "location_code": {
        +        "description": "<em>location code</em><br><strong>required field if you don't specify</strong> <code>location_name</code><br><strong>Note:</strong> it is required to specify either <code>location_name</code> or <code>location_code</code><br>you can receive the list of available locations with their <code>location_code</code> by making a separate request to the <br><code>https://api.dataforseo.com/v3/keywords_data/clickstream_data/locations_and_languages</code><br>example:<br><code class=\"long-string\">2840</code>",
        +        "type": "integer"
        +      },
        +      "location_name": {
        +        "description": "<em>full name of the location</em><br><strong>required field if you don't specify</strong> <code>location_code</code><br><strong>Note:</strong> it is required to specify either <code>location_name</code> or <code>location_code</code><br>you can receive the list of available locations with their <code>location_name</code> by making a separate request to the <br><code>https://api.dataforseo.com/v3/keywords_data/clickstream_data/locations_and_languages</code><br>example:<br><code class=\"long-string\">United Kingdom</code>",
        +        "type": "string"
        +      },
        +      "tag": {
        +        "description": "<em>user-defined task identifier</em><br>optional field<br><em>the character limit is 255</em><br>you can use this parameter to identify the task and match it with the result<br>you will find the specified <code>tag</code> value in the <code>data</code> object of the response",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      }
        +    },
        +    "type": "object"
        +  }
        +]
    • Changedpost_dataforseo_keywords_clickstream_global_volume_live2 fields changed
      • removedInput schema / properties / body / items / anyOf
        Removed value: -[
        -  {
        -    "example": [
        -      {
        -        "keywords": [
        -          "you tube",
        -          "youtube",
        -          "youtub"
        -        ],
        -        "tag": "test-tag"
        -      }
        -    ],
        -    "properties": {
        -      "keywords": {
        -        "description": "<em>target keywords</em><br><strong>required field</strong><br>UTF-8 encoding<br>maximum number of keywords you can specify in this array: 1000;<br>each keyword should be at least 3 characters long;<br>the keywords will be converted to lowercase format;<br><strong>Note:</strong> certain symbols and characters (e.g., UTF symbols, emojis) are not allowed<br>to learn more about which symbols and characters can be used, please refer to <a href=\"https://dataforseo.com/help-center/using-symbols-in-keywords-when-setting-a-google-ads-task\" target=\"_blank\" rel=\"noopener noreferrer\">this article</a><p>learn more about rules and limitations of <code>keyword</code> and <code>keywords</code> fields in DataForSEO APIs in this <a href=\"https://dataforseo.com/help-center/rules-and-limitations-of-keyword-and-keywords-fields-in-dataforseo-apis\" rel=\"noopener noreferrer\" target=\"_blank\">Help Center article</a>",
        -        "items": {
        -          "type": "string"
        -        },
        -        "type": "array"
        -      },
        -      "tag": {
        -        "description": "<em>user-defined task identifier</em><br>optional field<br><em>the character limit is 255</em><br>you can use this parameter to identify the task and match it with the result<br>you will find the specified <code>tag</code> value in the <code>data</code> object of the response",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      }
        -    },
        -    "type": "object"
        -  }
        -]
      • addedInput schema / properties / body / items / oneOf
        Added value: +[
        +  {
        +    "example": [
        +      {
        +        "keywords": [
        +          "you tube",
        +          "youtube",
        +          "youtub"
        +        ],
        +        "tag": "test-tag"
        +      }
        +    ],
        +    "properties": {
        +      "keywords": {
        +        "description": "<em>target keywords</em><br><strong>required field</strong><br>UTF-8 encoding<br>maximum number of keywords you can specify in this array: 1000;<br>each keyword should be at least 3 characters long;<br>the keywords will be converted to lowercase format;<br><strong>Note:</strong> certain symbols and characters (e.g., UTF symbols, emojis) are not allowed<br>to learn more about which symbols and characters can be used, please refer to <a href=\"https://dataforseo.com/help-center/using-symbols-in-keywords-when-setting-a-google-ads-task\" target=\"_blank\" rel=\"noopener noreferrer\">this article</a><p>learn more about rules and limitations of <code>keyword</code> and <code>keywords</code> fields in DataForSEO APIs in this <a href=\"https://dataforseo.com/help-center/rules-and-limitations-of-keyword-and-keywords-fields-in-dataforseo-apis\" rel=\"noopener noreferrer\" target=\"_blank\">Help Center article</a>",
        +        "items": {
        +          "type": "string"
        +        },
        +        "type": "array"
        +      },
        +      "tag": {
        +        "description": "<em>user-defined task identifier</em><br>optional field<br><em>the character limit is 255</em><br>you can use this parameter to identify the task and match it with the result<br>you will find the specified <code>tag</code> value in the <code>data</code> object of the response",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      }
        +    },
        +    "type": "object"
        +  }
        +]
    • Changedpost_dataforseo_keywords_clickstream_search_volume_live2 fields changed
      • removedInput schema / properties / body / items / anyOf
        Removed value: -[
        -  {
        -    "example": [
        -      {
        -        "keywords": [
        -          "you tube",
        -          "youtube",
        -          "youtub"
        -        ],
        -        "language_code": "en",
        -        "location_code": 2840,
        -        "tag": "test-tag"
        -      }
        -    ],
        -    "properties": {
        -      "keywords": {
        -        "description": "<em>target keywords</em><br><strong>required field</strong><br>UTF-8 encoding<br>maximum number of keywords you can specify in this array: 1000<br>the keywords will be converted to lowercase format<p><strong>Note:</strong> certain symbols and characters (e.g., UTF symbols, emojis) are not allowed<br>to learn more about which symbols and characters can be used, please refer to <a href=\"https://dataforseo.com/help-center/using-symbols-in-keywords-when-setting-a-google-ads-task\" target=\"_blank\" rel=\"noopener noreferrer\">this article</a><p>learn more about rules and limitations of <code>keyword</code> and <code>keywords</code> fields in DataForSEO APIs in this <a href=\"https://dataforseo.com/help-center/rules-and-limitations-of-keyword-and-keywords-fields-in-dataforseo-apis\" rel=\"noopener noreferrer\" target=\"_blank\">Help Center article</a>",
        -        "items": {
        -          "type": "string"
        -        },
        -        "type": "array"
        -      },
        -      "language_code": {
        -        "description": "<em>search engine language code</em><br><strong>required field if don’t specify <code>language_name</code></strong><br>you can receive the list of available languages with their <code>language_code</code> by making a separate request to the <code>https://api.dataforseo.com/v3/keywords_data/clickstream_data/locations_and_languages</code><br>example:<br><code class=\"long-string\">en</code>",
        -        "type": "string"
        -      },
        -      "language_name": {
        -        "description": "<em>full name of search engine language</em><br><strong>required field if don’t specify <code>language_code</code></strong><br>you can receive the list of available languages with their <code>language_name</code> by making a separate request to the <code>https://api.dataforseo.com/v3/keywords_data/clickstream_data/locations_and_languages</code><br>example:<br><code class=\"long-string\">English</code>",
        -        "type": "string"
        -      },
        -      "location_code": {
        -        "description": "<em>search engine location code</em><br><strong>required field if you don’t specify <code>location_name</code></strong><br>if you use this field, you can receive the list of available locations with <code>location_code</code> by making a separate request to the <code>https://api.dataforseo.com/v3/keywords_data/clickstream_data/locations_and_languages</code><br>example:<br><code class=\"long-string\">2826</code>",
        -        "type": "integer"
        -      },
        -      "location_name": {
        -        "description": "<em>full name of search engine location</em><br><strong>required field if you don’t specify <code>location_code </code></strong><br>you can receive the list of available locations with <code>location_name</code> by making a separate request to <code>https://api.dataforseo.com/v3/keywords_data/clickstream_data/locations_and_languages</code><br>example:<br><code class=\"long-string\">United Kingdom</code>",
        -        "type": "string"
        -      },
        -      "tag": {
        -        "description": "<em>user-defined task identifier</em><br>optional field<br><em>the character limit is 255</em><br>you can use this parameter to identify the task and match it with the result<br>you will find the specified <code>tag</code> value in the <code>data</code> object of the response",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      },
        -      "use_clickstream": {
        -        "description": "<em>use clickstream data to provide results</em><br>optional field<br>if set to <code>true</code>, you will get DataForSEO search volume values based on clickstream data;<br>if set to <code>false</code>, Bing search volume data will be used to calculate DataForSEO search volume;<br>default value: <code>true</code>;<br><strong>Note:</strong> Bing search volume is available for locations provided in <a href=\"https://docs.dataforseo.com/v3/keywords_data/bing/search_volume_history/locations_and_languages/?bash\" rel=\"noopener noreferrer\" target=\"_blank\">Bing Search Volume History Locations</a> and <a href=\"https://docs.dataforseo.com/v3/keywords_data/bing/locations/?bash\" rel=\"noopener noreferrer\" target=\"_blank\">Bing Ads Locations</a> endpoints; search volume values for any other location are calculated based on clickstream data even if you set this parameter to <code>false</code>",
        -        "type": [
        -          "boolean",
        -          "null"
        -        ]
        -      }
        -    },
        -    "type": "object"
        -  }
        -]
      • addedInput schema / properties / body / items / oneOf
        Added value: +[
        +  {
        +    "example": [
        +      {
        +        "keywords": [
        +          "you tube",
        +          "youtube",
        +          "youtub"
        +        ],
        +        "language_code": "en",
        +        "location_code": 2840,
        +        "tag": "test-tag"
        +      }
        +    ],
        +    "properties": {
        +      "keywords": {
        +        "description": "<em>target keywords</em><br><strong>required field</strong><br>UTF-8 encoding<br>maximum number of keywords you can specify in this array: 1000<br>the keywords will be converted to lowercase format<p><strong>Note:</strong> certain symbols and characters (e.g., UTF symbols, emojis) are not allowed<br>to learn more about which symbols and characters can be used, please refer to <a href=\"https://dataforseo.com/help-center/using-symbols-in-keywords-when-setting-a-google-ads-task\" target=\"_blank\" rel=\"noopener noreferrer\">this article</a><p>learn more about rules and limitations of <code>keyword</code> and <code>keywords</code> fields in DataForSEO APIs in this <a href=\"https://dataforseo.com/help-center/rules-and-limitations-of-keyword-and-keywords-fields-in-dataforseo-apis\" rel=\"noopener noreferrer\" target=\"_blank\">Help Center article</a>",
        +        "items": {
        +          "type": "string"
        +        },
        +        "type": "array"
        +      },
        +      "language_code": {
        +        "description": "<em>search engine language code</em><br><strong>required field if don’t specify <code>language_name</code></strong><br>you can receive the list of available languages with their <code>language_code</code> by making a separate request to the <code>https://api.dataforseo.com/v3/keywords_data/clickstream_data/locations_and_languages</code><br>example:<br><code class=\"long-string\">en</code>",
        +        "type": "string"
        +      },
        +      "language_name": {
        +        "description": "<em>full name of search engine language</em><br><strong>required field if don’t specify <code>language_code</code></strong><br>you can receive the list of available languages with their <code>language_name</code> by making a separate request to the <code>https://api.dataforseo.com/v3/keywords_data/clickstream_data/locations_and_languages</code><br>example:<br><code class=\"long-string\">English</code>",
        +        "type": "string"
        +      },
        +      "location_code": {
        +        "description": "<em>search engine location code</em><br><strong>required field if you don’t specify <code>location_name</code></strong><br>if you use this field, you can receive the list of available locations with <code>location_code</code> by making a separate request to the <code>https://api.dataforseo.com/v3/keywords_data/clickstream_data/locations_and_languages</code><br>example:<br><code class=\"long-string\">2826</code>",
        +        "type": "integer"
        +      },
        +      "location_name": {
        +        "description": "<em>full name of search engine location</em><br><strong>required field if you don’t specify <code>location_code </code></strong><br>you can receive the list of available locations with <code>location_name</code> by making a separate request to <code>https://api.dataforseo.com/v3/keywords_data/clickstream_data/locations_and_languages</code><br>example:<br><code class=\"long-string\">United Kingdom</code>",
        +        "type": "string"
        +      },
        +      "tag": {
        +        "description": "<em>user-defined task identifier</em><br>optional field<br><em>the character limit is 255</em><br>you can use this parameter to identify the task and match it with the result<br>you will find the specified <code>tag</code> value in the <code>data</code> object of the response",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "use_clickstream": {
        +        "description": "<em>use clickstream data to provide results</em><br>optional field<br>if set to <code>true</code>, you will get DataForSEO search volume values based on clickstream data;<br>if set to <code>false</code>, Bing search volume data will be used to calculate DataForSEO search volume;<br>default value: <code>true</code>;<br><strong>Note:</strong> Bing search volume is available for locations provided in <a href=\"https://docs.dataforseo.com/v3/keywords_data/bing/search_volume_history/locations_and_languages/?bash\" rel=\"noopener noreferrer\" target=\"_blank\">Bing Search Volume History Locations</a> and <a href=\"https://docs.dataforseo.com/v3/keywords_data/bing/locations/?bash\" rel=\"noopener noreferrer\" target=\"_blank\">Bing Ads Locations</a> endpoints; search volume values for any other location are calculated based on clickstream data even if you set this parameter to <code>false</code>",
        +        "type": [
        +          "boolean",
        +          "null"
        +        ]
        +      }
        +    },
        +    "type": "object"
        +  }
        +]
    • Changedpost_dataforseo_keywords_gads_ad_traffic_submit2 fields changed
      • removedInput schema / properties / body / items / anyOf
        Removed value: -[
        -  {
        -    "example": [
        -      {
        -        "bid": 999,
        -        "keywords": [
        -          "seo marketing"
        -        ],
        -        "language_code": "en",
        -        "location_code": 2840,
        -        "match": "exact"
        -      }
        -    ],
        -    "properties": {
        -      "bid": {
        -        "description": "<em>the maximum custom bid</em><br><strong>required field</strong><br>the collected data will be based on this value<br>it stands for the price you are willing to pay for an ad; the higher value you specify here, the higher values you will get in the returned metrics<br>learn more in <a href=\"https://dataforseo.com/help-center/configuring-bid\">this help center article</a>",
        -        "type": "number"
        -      },
        -      "date_from": {
        -        "description": "<em>starting date of the forecasting time range</em><br>required field if you specify <code>date_to</code><br><strong>if you indicate <code>date_from</code> and <code>date_to</code>, you don't need to specify <code>date_interval</code></strong><br>minimum value is tomorrow's date<br>the value you specify in <code>date_from</code> shouldn't be further than <code>date_to</code><br>date format: <code>\"yyyy-mm-dd\"</code><br>example:<br><code>\"2021-10-30\"</code>if <a href=\"/v3/keywords_data/google_ads/status/\" target=\"_blank\" rel=\"noopener noreferrer\">Status endpoint</a> returns <code>false</code> in the <code>actual_data</code> field, <code>date_from</code> can be set to the month before last and prior;<br>if <a href=\"/v3/keywords_data/google_ads/status/\" target=\"_blank\" rel=\"noopener noreferrer\">Status endpoint</a> returns <code>true</code> in the <code>actual_data</code> field, <code>date_from</code> can be set to the last month and prior",
        -        "type": "string"
        -      },
        -      "date_interval": {
        -        "description": "<em>forecasting date interval</em><br>optional field<br><strong>if you specify <code>date_interval</code>, you don't need to indicate <code>date_from</code> and <code>date_to</code></strong><br>possible values: <code>next_week</code>, <code>next_month</code>, <code>next_quarter</code><br>default value: <code>next_month</code>",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      },
        -      "date_to": {
        -        "description": "<em>ending date of the forecasting time range</em><br>required field if you specify <code>date_from</code><br><strong>if you indicate <code>date_from</code> and <code>date_to</code>, you don't need to specify <code>date_interval</code></strong><br>minimum value is <code>date_from</code> +1 day<br>maximum value is current day and month of the next year<br>date format: <code>\"yyyy-mm-dd\"</code><br>example:<br><code>\"2022-10-30\"</code>",
        -        "type": "string"
        -      },
        -      "keywords": {
        -        "description": "<em>keywords</em><br><strong>required field</strong><br>The maximum number of keywords you can specify: 1000<br>The maximum number of characters for each keyword: 80<br>The maximum number of words for each keyword phrase: 10<br>the keywords you specify will be converted to a lowercase format<br><strong>Note #1:</strong> <a href=\"https://dataforseo.com/help-center/no-search-volume-data-for-some-keywords\" target=\"_blank\" rel=\"noopener noreferrer\">Google Ads may return no data for certain groups of keywords</a>;<br><strong>Note #2:</strong> <a href=\"https://dataforseo.com/help-center/sv-broad-exact-phrase-match\" target=\"_blank\" rel=\"noopener noreferrer\">Google Ads provides combined search volume values for groups of similar keywords</a><br>to obtain search volume for similar keywords, we recommend submitting such keywords in separate requests;<br><strong>Note #3:</strong> Google Ads doesn't allow using certain symbols and characters (e.g., UTF symbols, emojis), so you can't use them when setting a task;<br>to learn more about which symbols and characters can be used, please refer to <a href=\"https://dataforseo.com/help-center/using-symbols-in-keywords-when-setting-a-google-ads-task\" target=\"_blank\" rel=\"noopener noreferrer\">this article</a><p>learn more about rules and limitations of <code>keyword</code> and <code>keywords</code> fields in DataForSEO APIs in this <a href=\"https://dataforseo.com/help-center/rules-and-limitations-of-keyword-and-keywords-fields-in-dataforseo-apis\" rel=\"noopener noreferrer\" target=\"_blank\">Help Center article</a>",
        -        "items": {
        -          "type": "string"
        -        },
        -        "type": "array"
        -      },
        -      "language_code": {
        -        "description": "<em>search engine language code</em><br>optional field<br>you can receive the list of available languages of the search engine with their <code>language_code</code> by making a separate request to <code>https://api.dataforseo.com/v3/keywords_data/google_ads/languages</code><br>example:<br><code class=\"long-string\">en</code>",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      },
        -      "language_name": {
        -        "description": "<em>full name of search engine language</em><br>optional field<br>you can receive the list of available languages of the search engine with their <code>language_name</code> by making a separate request to <code>https://api.dataforseo.com/v3/keywords_data/google_ads/languages</code><br>example:<br><code class=\"long-string\">English</code>",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      },
        -      "location_code": {
        -        "description": "<em>search engine location code</em><br>optional field<br>if you do not indicate the location, you will receive worldwide results, i.e., for all available locations;<br><strong>if you use this field, you don't need to specify <code>location_name</code> or <code>location_coordinate</code></strong>;<br>you can receive the list of available locations of the search engines with their <code>location_code</code> by making a separate request to <code>https://api.dataforseo.com/v3/keywords_data/google_ads/locations</code><br>example:<br><code class=\"long-string\">2840</code>",
        -        "type": [
        -          "integer",
        -          "null"
        -        ]
        -      },
        -      "location_coordinate": {
        -        "description": "<em>GPS coordinates of a location</em><br>optional field<br>if you do not indicate the location, you will receive worldwide results, i.e., for all available locations;<br><strong>if you use this field, you don't need to specify <code>location_name</code> or <code>location_code</code></strong>;<br><code>location_coordinate</code> parameter should be specified in the <em>\"latitude,longitude\"</em> format;<br><strong>the data will be provided for the country the specified coordinates belong to</strong>;<br>example:<br><code class=\"long-string\">52.6178549,-155.352142</code>",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      },
        -      "location_name": {
        -        "description": "<em>full name of search engine location</em><br>optional field<br>if you do not indicate the location, you will receive worldwide results, i.e., for all available locations;<br><strong>if you use this field, you don't need to specify <code>location_code</code> or <code>location_coordinate</code></strong><br>you can receive the list of available locations of the search engine with their <code>location_name</code> by making a separate request to <code>https://api.dataforseo.com/v3/keywords_data/google_ads/locations</code><br>example:<br><code class=\"long-string\">London,England,United Kingdom</code>",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      },
        -      "match": {
        -        "description": "<em>keywords match-type</em><br><strong>required field</strong><br>can take the following values: <code>exact</code>, <code>broad</code>, <code>phrase</code>",
        -        "type": "string"
        -      },
        -      "pingback_url": {
        -        "description": "<em>notification URL of a completed task</em><br>optional field<br>when a task is completed we will notify you by GET request sent to the URL you have specified<br>you can use the ‘$id’ string as a <code>$id</code> variable and ‘$tag’ as urlencoded <code>$tag</code> variable. We will set the necessary values before sending the request.<br>example:<br><code>http://your-server.com/pingscript?id=$id</code><br><code>http://your-server.com/pingscript?id=$id&amp;tag=$tag</code><br><strong>Note:</strong> special characters in <code>pingback_url</code> will be urlencoded;<br>i.a., the <code>#</code> character will be encoded into <code>%23</code><p>learn more on our <a href=\"https://dataforseo.com/help-center/pingbacks-postbacks-with-dataforseo-api\" target=\"_blank\" rel=\"noopener noreferrer\">Help Center</a>",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      },
        -      "postback_url": {
        -        "description": "<em>URL for sending task results</em><br>optional field<br>once the task is completed, we will send a POST request with its results compressed in the <code>gzip</code> format to the <code>postback_url</code> you specified<br>you can use the ‘$id’ string as a <code>$id</code> variable and ‘$tag’ as urlencoded <code>$tag</code> variable. We will set the necessary values before sending the request.<br>example:<br><code>http://your-server.com/postbackscript?id=$id</code><br><code>http://your-server.com/postbackscript?id=$id&amp;tag=$tag</code><br><strong>Note:</strong> special characters in <code>postback_url</code> will be urlencoded;<br>i.a., the <code>#</code> character will be encoded into <code>%23</code><p>learn more on our <a href=\"https://dataforseo.com/help-center/pingbacks-postbacks-with-dataforseo-api\" target=\"_blank\" rel=\"noopener noreferrer\">Help Center</a>",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      },
        -      "sort_by": {
        -        "description": "<em>results sorting parameters</em><br>optional field<br>Use these parameters to sort the results by <code>relevance</code>, <code>average_cpc</code>, <code>cost</code>, or <code>clicks</code> in the descending order<br>default value: <code>relevance</code>",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      },
        -      "tag": {
        -        "description": "<em>user-defined task identifier</em><br>optional field<br><em>the character limit is 255</em><br>you can use this parameter to identify the task and match it with the result<br>you will find the specified <code>tag</code> value in the <code>data</code> object of the response",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      }
        -    },
        -    "type": "object"
        -  }
        -]
      • addedInput schema / properties / body / items / oneOf
        Added value: +[
        +  {
        +    "example": [
        +      {
        +        "bid": 999,
        +        "keywords": [
        +          "seo marketing"
        +        ],
        +        "language_code": "en",
        +        "location_code": 2840,
        +        "match": "exact"
        +      }
        +    ],
        +    "properties": {
        +      "bid": {
        +        "description": "<em>the maximum custom bid</em><br><strong>required field</strong><br>the collected data will be based on this value<br>it stands for the price you are willing to pay for an ad; the higher value you specify here, the higher values you will get in the returned metrics<br>learn more in <a href=\"https://dataforseo.com/help-center/configuring-bid\">this help center article</a>",
        +        "type": "number"
        +      },
        +      "date_from": {
        +        "description": "<em>starting date of the forecasting time range</em><br>required field if you specify <code>date_to</code><br><strong>if you indicate <code>date_from</code> and <code>date_to</code>, you don't need to specify <code>date_interval</code></strong><br>minimum value is tomorrow's date<br>the value you specify in <code>date_from</code> shouldn't be further than <code>date_to</code><br>date format: <code>\"yyyy-mm-dd\"</code><br>example:<br><code>\"2021-10-30\"</code>if <a href=\"/v3/keywords_data/google_ads/status/\" target=\"_blank\" rel=\"noopener noreferrer\">Status endpoint</a> returns <code>false</code> in the <code>actual_data</code> field, <code>date_from</code> can be set to the month before last and prior;<br>if <a href=\"/v3/keywords_data/google_ads/status/\" target=\"_blank\" rel=\"noopener noreferrer\">Status endpoint</a> returns <code>true</code> in the <code>actual_data</code> field, <code>date_from</code> can be set to the last month and prior",
        +        "type": "string"
        +      },
        +      "date_interval": {
        +        "description": "<em>forecasting date interval</em><br>optional field<br><strong>if you specify <code>date_interval</code>, you don't need to indicate <code>date_from</code> and <code>date_to</code></strong><br>possible values: <code>next_week</code>, <code>next_month</code>, <code>next_quarter</code><br>default value: <code>next_month</code>",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "date_to": {
        +        "description": "<em>ending date of the forecasting time range</em><br>required field if you specify <code>date_from</code><br><strong>if you indicate <code>date_from</code> and <code>date_to</code>, you don't need to specify <code>date_interval</code></strong><br>minimum value is <code>date_from</code> +1 day<br>maximum value is current day and month of the next year<br>date format: <code>\"yyyy-mm-dd\"</code><br>example:<br><code>\"2022-10-30\"</code>",
        +        "type": "string"
        +      },
        +      "keywords": {
        +        "description": "<em>keywords</em><br><strong>required field</strong><br>The maximum number of keywords you can specify: 1000<br>The maximum number of characters for each keyword: 80<br>The maximum number of words for each keyword phrase: 10<br>the keywords you specify will be converted to a lowercase format<br><strong>Note #1:</strong> <a href=\"https://dataforseo.com/help-center/no-search-volume-data-for-some-keywords\" target=\"_blank\" rel=\"noopener noreferrer\">Google Ads may return no data for certain groups of keywords</a>;<br><strong>Note #2:</strong> <a href=\"https://dataforseo.com/help-center/sv-broad-exact-phrase-match\" target=\"_blank\" rel=\"noopener noreferrer\">Google Ads provides combined search volume values for groups of similar keywords</a><br>to obtain search volume for similar keywords, we recommend submitting such keywords in separate requests;<br><strong>Note #3:</strong> Google Ads doesn't allow using certain symbols and characters (e.g., UTF symbols, emojis), so you can't use them when setting a task;<br>to learn more about which symbols and characters can be used, please refer to <a href=\"https://dataforseo.com/help-center/using-symbols-in-keywords-when-setting-a-google-ads-task\" target=\"_blank\" rel=\"noopener noreferrer\">this article</a><p>learn more about rules and limitations of <code>keyword</code> and <code>keywords</code> fields in DataForSEO APIs in this <a href=\"https://dataforseo.com/help-center/rules-and-limitations-of-keyword-and-keywords-fields-in-dataforseo-apis\" rel=\"noopener noreferrer\" target=\"_blank\">Help Center article</a>",
        +        "items": {
        +          "type": "string"
        +        },
        +        "type": "array"
        +      },
        +      "language_code": {
        +        "description": "<em>search engine language code</em><br>optional field<br>you can receive the list of available languages of the search engine with their <code>language_code</code> by making a separate request to <code>https://api.dataforseo.com/v3/keywords_data/google_ads/languages</code><br>example:<br><code class=\"long-string\">en</code>",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "language_name": {
        +        "description": "<em>full name of search engine language</em><br>optional field<br>you can receive the list of available languages of the search engine with their <code>language_name</code> by making a separate request to <code>https://api.dataforseo.com/v3/keywords_data/google_ads/languages</code><br>example:<br><code class=\"long-string\">English</code>",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "location_code": {
        +        "description": "<em>search engine location code</em><br>optional field<br>if you do not indicate the location, you will receive worldwide results, i.e., for all available locations;<br><strong>if you use this field, you don't need to specify <code>location_name</code> or <code>location_coordinate</code></strong>;<br>you can receive the list of available locations of the search engines with their <code>location_code</code> by making a separate request to <code>https://api.dataforseo.com/v3/keywords_data/google_ads/locations</code><br>example:<br><code class=\"long-string\">2840</code>",
        +        "type": [
        +          "integer",
        +          "null"
        +        ]
        +      },
        +      "location_coordinate": {
        +        "description": "<em>GPS coordinates of a location</em><br>optional field<br>if you do not indicate the location, you will receive worldwide results, i.e., for all available locations;<br><strong>if you use this field, you don't need to specify <code>location_name</code> or <code>location_code</code></strong>;<br><code>location_coordinate</code> parameter should be specified in the <em>\"latitude,longitude\"</em> format;<br><strong>the data will be provided for the country the specified coordinates belong to</strong>;<br>example:<br><code class=\"long-string\">52.6178549,-155.352142</code>",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "location_name": {
        +        "description": "<em>full name of search engine location</em><br>optional field<br>if you do not indicate the location, you will receive worldwide results, i.e., for all available locations;<br><strong>if you use this field, you don't need to specify <code>location_code</code> or <code>location_coordinate</code></strong><br>you can receive the list of available locations of the search engine with their <code>location_name</code> by making a separate request to <code>https://api.dataforseo.com/v3/keywords_data/google_ads/locations</code><br>example:<br><code class=\"long-string\">London,England,United Kingdom</code>",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "match": {
        +        "description": "<em>keywords match-type</em><br><strong>required field</strong><br>can take the following values: <code>exact</code>, <code>broad</code>, <code>phrase</code>",
        +        "type": "string"
        +      },
        +      "pingback_url": {
        +        "description": "<em>notification URL of a completed task</em><br>optional field<br>when a task is completed we will notify you by GET request sent to the URL you have specified<br>you can use the ‘$id’ string as a <code>$id</code> variable and ‘$tag’ as urlencoded <code>$tag</code> variable. We will set the necessary values before sending the request.<br>example:<br><code>http://your-server.com/pingscript?id=$id</code><br><code>http://your-server.com/pingscript?id=$id&amp;tag=$tag</code><br><strong>Note:</strong> special characters in <code>pingback_url</code> will be urlencoded;<br>i.a., the <code>#</code> character will be encoded into <code>%23</code><p>learn more on our <a href=\"https://dataforseo.com/help-center/pingbacks-postbacks-with-dataforseo-api\" target=\"_blank\" rel=\"noopener noreferrer\">Help Center</a>",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "postback_url": {
        +        "description": "<em>URL for sending task results</em><br>optional field<br>once the task is completed, we will send a POST request with its results compressed in the <code>gzip</code> format to the <code>postback_url</code> you specified<br>you can use the ‘$id’ string as a <code>$id</code> variable and ‘$tag’ as urlencoded <code>$tag</code> variable. We will set the necessary values before sending the request.<br>example:<br><code>http://your-server.com/postbackscript?id=$id</code><br><code>http://your-server.com/postbackscript?id=$id&amp;tag=$tag</code><br><strong>Note:</strong> special characters in <code>postback_url</code> will be urlencoded;<br>i.a., the <code>#</code> character will be encoded into <code>%23</code><p>learn more on our <a href=\"https://dataforseo.com/help-center/pingbacks-postbacks-with-dataforseo-api\" target=\"_blank\" rel=\"noopener noreferrer\">Help Center</a>",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "sort_by": {
        +        "description": "<em>results sorting parameters</em><br>optional field<br>Use these parameters to sort the results by <code>relevance</code>, <code>average_cpc</code>, <code>cost</code>, or <code>clicks</code> in the descending order<br>default value: <code>relevance</code>",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "tag": {
        +        "description": "<em>user-defined task identifier</em><br>optional field<br><em>the character limit is 255</em><br>you can use this parameter to identify the task and match it with the result<br>you will find the specified <code>tag</code> value in the <code>data</code> object of the response",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      }
        +    },
        +    "type": "object"
        +  }
        +]
    • Changedpost_dataforseo_keywords_gads_kw_for_keywords_live2 fields changed
      • removedInput schema / properties / body / items / anyOf
        Removed value: -[
        -  {
        -    "example": [
        -      {
        -        "keywords": [
        -          "phone",
        -          "cellphone"
        -        ],
        -        "location_code": 2840
        -      }
        -    ],
        -    "properties": {
        -      "date_from": {
        -        "description": "<em>starting date of the time range</em><br>optional field<br>date format: <code>\"yyyy-mm-dd\"</code><br>minimal value: 4 years from the current date<br>by default, data is returned for the past 12 months;<br><strong>Note</strong>: the indicated date cannot be greater than that specified in <code>date_to</code> and/or yesterday's date;if <a href=\"/v3/keywords_data/google_ads/status/\" target=\"_blank\" rel=\"noopener noreferrer\">Status endpoint</a> returns <code>false</code> in the <code>actual_data</code> field, <code>date_from</code> can be set to the month before last and prior;<br>if <a href=\"/v3/keywords_data/google_ads/status/\" target=\"_blank\" rel=\"noopener noreferrer\">Status endpoint</a> returns <code>true</code> in the <code>actual_data</code> field, <code>date_from</code> can be set to the last month and prior",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      },
        -      "date_to": {
        -        "description": "<em>ending date of the time range</em><br>optional field<br><strong>Note:</strong> the indicated date cannot be greater than yesterday's date;<br>if you don't specify this field, yesterday's date will be used by default<br>date format: <code>\"yyyy-mm-dd\"</code><br>example:<br><code>\"2022-11-30\"</code>",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      },
        -      "include_adult_keywords": {
        -        "description": "<em>include keywords associated with adult content</em><br>optional field<br>if set to <code>true</code>, adult keywords will be included in the response<br>default value: <code>false</code><br><strong>note</strong> that the API may return no data for such keywords due to <a href=\"https://support.google.com/adspolicy/answer/6008942?hl=en\" target=\"_blank\" rel=\"noopener noreferrer\">Google Ads restrictions</a>",
        -        "type": [
        -          "boolean",
        -          "null"
        -        ]
        -      },
        -      "keywords": {
        -        "description": "<em>keywords</em><br><strong>required field</strong><br>The maximum number of keywords you can specify: 20<br>The maximum number of characters for each keyword: 80<br>the keywords you specify will be converted to a lowercase format<br><strong>Note:</strong> Google Ads may return no data for certain groups of keywords<br><a href=\"https://dataforseo.com/help-center/no-search-volume-data-for-some-keywords\" target=\"_blank\" rel=\"noopener noreferrer\">visit our Help Center to learn more</a><br><strong>Also note</strong> that Google Ads doesn't allow using certain symbols and characters (e.g., UTF symbols, emojis), so you can't use them when setting a task;<br>to learn more about which symbols and characters can be used, please refer to <a href=\"https://dataforseo.com/help-center/using-symbols-in-keywords-when-setting-a-google-ads-task\" target=\"_blank\" rel=\"noopener noreferrer\">this article</a><p>learn more about rules and limitations of <code>keyword</code> and <code>keywords</code> fields in DataForSEO APIs in this <a href=\"https://dataforseo.com/help-center/rules-and-limitations-of-keyword-and-keywords-fields-in-dataforseo-apis\" rel=\"noopener noreferrer\" target=\"_blank\">Help Center article</a>",
        -        "items": {
        -          "type": "string"
        -        },
        -        "type": "array"
        -      },
        -      "language_code": {
        -        "description": "<em>search engine language code</em><br>optional field<br>you can receive the list of available languages of the search engine with their <code>language_code</code> by making a separate request to <code>https://api.dataforseo.com/v3/keywords_data/google_ads/languages</code><br>example:<br><code class=\"long-string\">en</code>",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      },
        -      "language_name": {
        -        "description": "<em>full name of search engine language</em><br>optional field<br>you can receive the list of available languages of the search engine with their <code>language_name</code> by making a separate request to <code>https://api.dataforseo.com/v3/keywords_data/google_ads/languages</code><br>example:<br><code class=\"long-string\">English</code>",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      },
        -      "location_code": {
        -        "description": "<em>search engine location code</em><br>optional field<br>if you do not indicate the location, you will receive worldwide results, i.e., for all available locations;<br><strong>if you use this field, you don't need to specify <code>location_name</code> or <code>location_coordinate</code></strong>;<br>you can receive the list of available locations of the search engines with their <code>location_code</code> by making a separate request to <code>https://api.dataforseo.com/v3/keywords_data/google_ads/locations</code><br>example:<br><code class=\"long-string\">2840</code>",
        -        "type": [
        -          "integer",
        -          "null"
        -        ]
        -      },
        -      "location_coordinate": {
        -        "description": "<em>GPS coordinates of a location</em><br>optional field<br>if you do not indicate the location, you will receive worldwide results, i.e., for all available locations;<br><strong>if you use this field, you don't need to specify <code>location_name</code> or <code>location_code</code></strong>;<br><code>location_coordinate</code> parameter should be specified in the <em>\"latitude,longitude\"</em> format;<br><strong>the data will be provided for the country the specified coordinates belong to</strong>;<br>example:<br><code class=\"long-string\">52.6178549,-155.352142</code>",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      },
        -      "location_name": {
        -        "description": "<em>full name of search engine location</em><br>optional field<br>if you do not indicate the location, you will receive worldwide results, i.e., for all available locations;<br><strong>if you use this field, you don't need to specify <code>location_code</code> or <code>location_coordinate</code></strong><br>you can receive the list of available locations of the search engine with their <code>location_name</code> by making a separate request to <code>https://api.dataforseo.com/v3/keywords_data/google_ads/locations</code><br>example:<br><code class=\"long-string\">London,England,United Kingdom</code>",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      },
        -      "search_partners": {
        -        "description": "<em>include Google search partners</em><br>optional field<br>if you specify <code class=\"prettyprint\">true</code>, the results will be delivered for owned, operated, and syndicated networks across <a href=\"https://support.google.com/google-ads/answer/1722047?hl=en\" target=\"_blank\" rel=\"noopener noreferrer\">Google and partner sites</a> that host Google search;<br>default value: <code>false</code> - results are returned for Google search sites",
        -        "type": [
        -          "boolean",
        -          "null"
        -        ]
        -      },
        -      "sort_by": {
        -        "description": "<em>results sorting parameters</em><br>optional field<br>Use these parameters to sort the results by <code>relevance</code>, <code>search_volume</code>, <code>competition_index</code>, <code>low_top_of_page_bid</code>, or <code>high_top_of_page_bid</code> in descending order<br>default value: <code>relevance</code>",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      },
        -      "tag": {
        -        "description": "<em>user-defined task identifier</em><br>optional field<br><em>the character limit is 255</em><br>you can use this parameter to identify the task and match it with the result<br>you will find the specified <code>tag</code> value in the <code>data</code> object of the response",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      }
        -    },
        -    "type": "object"
        -  }
        -]
      • addedInput schema / properties / body / items / oneOf
        Added value: +[
        +  {
        +    "example": [
        +      {
        +        "keywords": [
        +          "phone",
        +          "cellphone"
        +        ],
        +        "location_code": 2840
        +      }
        +    ],
        +    "properties": {
        +      "date_from": {
        +        "description": "<em>starting date of the time range</em><br>optional field<br>date format: <code>\"yyyy-mm-dd\"</code><br>minimal value: 4 years from the current date<br>by default, data is returned for the past 12 months;<br><strong>Note</strong>: the indicated date cannot be greater than that specified in <code>date_to</code> and/or yesterday's date;if <a href=\"/v3/keywords_data/google_ads/status/\" target=\"_blank\" rel=\"noopener noreferrer\">Status endpoint</a> returns <code>false</code> in the <code>actual_data</code> field, <code>date_from</code> can be set to the month before last and prior;<br>if <a href=\"/v3/keywords_data/google_ads/status/\" target=\"_blank\" rel=\"noopener noreferrer\">Status endpoint</a> returns <code>true</code> in the <code>actual_data</code> field, <code>date_from</code> can be set to the last month and prior",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "date_to": {
        +        "description": "<em>ending date of the time range</em><br>optional field<br><strong>Note:</strong> the indicated date cannot be greater than yesterday's date;<br>if you don't specify this field, yesterday's date will be used by default<br>date format: <code>\"yyyy-mm-dd\"</code><br>example:<br><code>\"2022-11-30\"</code>",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "include_adult_keywords": {
        +        "description": "<em>include keywords associated with adult content</em><br>optional field<br>if set to <code>true</code>, adult keywords will be included in the response<br>default value: <code>false</code><br><strong>note</strong> that the API may return no data for such keywords due to <a href=\"https://support.google.com/adspolicy/answer/6008942?hl=en\" target=\"_blank\" rel=\"noopener noreferrer\">Google Ads restrictions</a>",
        +        "type": [
        +          "boolean",
        +          "null"
        +        ]
        +      },
        +      "keywords": {
        +        "description": "<em>keywords</em><br><strong>required field</strong><br>The maximum number of keywords you can specify: 20<br>The maximum number of characters for each keyword: 80<br>the keywords you specify will be converted to a lowercase format<br><strong>Note:</strong> Google Ads may return no data for certain groups of keywords<br><a href=\"https://dataforseo.com/help-center/no-search-volume-data-for-some-keywords\" target=\"_blank\" rel=\"noopener noreferrer\">visit our Help Center to learn more</a><br><strong>Also note</strong> that Google Ads doesn't allow using certain symbols and characters (e.g., UTF symbols, emojis), so you can't use them when setting a task;<br>to learn more about which symbols and characters can be used, please refer to <a href=\"https://dataforseo.com/help-center/using-symbols-in-keywords-when-setting-a-google-ads-task\" target=\"_blank\" rel=\"noopener noreferrer\">this article</a><p>learn more about rules and limitations of <code>keyword</code> and <code>keywords</code> fields in DataForSEO APIs in this <a href=\"https://dataforseo.com/help-center/rules-and-limitations-of-keyword-and-keywords-fields-in-dataforseo-apis\" rel=\"noopener noreferrer\" target=\"_blank\">Help Center article</a>",
        +        "items": {
        +          "type": "string"
        +        },
        +        "type": "array"
        +      },
        +      "language_code": {
        +        "description": "<em>search engine language code</em><br>optional field<br>you can receive the list of available languages of the search engine with their <code>language_code</code> by making a separate request to <code>https://api.dataforseo.com/v3/keywords_data/google_ads/languages</code><br>example:<br><code class=\"long-string\">en</code>",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "language_name": {
        +        "description": "<em>full name of search engine language</em><br>optional field<br>you can receive the list of available languages of the search engine with their <code>language_name</code> by making a separate request to <code>https://api.dataforseo.com/v3/keywords_data/google_ads/languages</code><br>example:<br><code class=\"long-string\">English</code>",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "location_code": {
        +        "description": "<em>search engine location code</em><br>optional field<br>if you do not indicate the location, you will receive worldwide results, i.e., for all available locations;<br><strong>if you use this field, you don't need to specify <code>location_name</code> or <code>location_coordinate</code></strong>;<br>you can receive the list of available locations of the search engines with their <code>location_code</code> by making a separate request to <code>https://api.dataforseo.com/v3/keywords_data/google_ads/locations</code><br>example:<br><code class=\"long-string\">2840</code>",
        +        "type": [
        +          "integer",
        +          "null"
        +        ]
        +      },
        +      "location_coordinate": {
        +        "description": "<em>GPS coordinates of a location</em><br>optional field<br>if you do not indicate the location, you will receive worldwide results, i.e., for all available locations;<br><strong>if you use this field, you don't need to specify <code>location_name</code> or <code>location_code</code></strong>;<br><code>location_coordinate</code> parameter should be specified in the <em>\"latitude,longitude\"</em> format;<br><strong>the data will be provided for the country the specified coordinates belong to</strong>;<br>example:<br><code class=\"long-string\">52.6178549,-155.352142</code>",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "location_name": {
        +        "description": "<em>full name of search engine location</em><br>optional field<br>if you do not indicate the location, you will receive worldwide results, i.e., for all available locations;<br><strong>if you use this field, you don't need to specify <code>location_code</code> or <code>location_coordinate</code></strong><br>you can receive the list of available locations of the search engine with their <code>location_name</code> by making a separate request to <code>https://api.dataforseo.com/v3/keywords_data/google_ads/locations</code><br>example:<br><code class=\"long-string\">London,England,United Kingdom</code>",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "search_partners": {
        +        "description": "<em>include Google search partners</em><br>optional field<br>if you specify <code class=\"prettyprint\">true</code>, the results will be delivered for owned, operated, and syndicated networks across <a href=\"https://support.google.com/google-ads/answer/1722047?hl=en\" target=\"_blank\" rel=\"noopener noreferrer\">Google and partner sites</a> that host Google search;<br>default value: <code>false</code> - results are returned for Google search sites",
        +        "type": [
        +          "boolean",
        +          "null"
        +        ]
        +      },
        +      "sort_by": {
        +        "description": "<em>results sorting parameters</em><br>optional field<br>Use these parameters to sort the results by <code>relevance</code>, <code>search_volume</code>, <code>competition_index</code>, <code>low_top_of_page_bid</code>, or <code>high_top_of_page_bid</code> in descending order<br>default value: <code>relevance</code>",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "tag": {
        +        "description": "<em>user-defined task identifier</em><br>optional field<br><em>the character limit is 255</em><br>you can use this parameter to identify the task and match it with the result<br>you will find the specified <code>tag</code> value in the <code>data</code> object of the response",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      }
        +    },
        +    "type": "object"
        +  }
        +]
    • Changedpost_dataforseo_keywords_gads_kw_for_site_live2 fields changed
      • removedInput schema / properties / body / items / anyOf
        Removed value: -[
        -  {
        -    "example": [
        -      {
        -        "location_code": 2840,
        -        "target": "dataforseo.com"
        -      }
        -    ],
        -    "properties": {
        -      "date_from": {
        -        "description": "<em>starting date of the time range</em><br>optional field<br>date format: <code>\"yyyy-mm-dd\"</code><br>minimal value: 4 years from the current date<br>by default, data is returned for the past 12 months;<br><strong>Note</strong>: the indicated date cannot be greater than that specified in <code>date_to</code> and/or yesterday's date;if <a href=\"/v3/keywords_data/google_ads/status/\" target=\"_blank\" rel=\"noopener noreferrer\">Status endpoint</a> returns <code>false</code> in the <code>actual_data</code> field, <code>date_from</code> can be set to the month before last and prior;<br>if <a href=\"/v3/keywords_data/google_ads/status/\" target=\"_blank\" rel=\"noopener noreferrer\">Status endpoint</a> returns <code>true</code> in the <code>actual_data</code> field, <code>date_from</code> can be set to the last month and prior",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      },
        -      "date_to": {
        -        "description": "<em>ending date of the time range</em><br>optional field<br><strong>Note:</strong> the indicated date cannot be greater than yesterday's date;<br>if you don't specify this field, yesterday's date will be used by default<br>date format: <code>\"yyyy-mm-dd\"</code><br>example:<br><code>\"2022-11-30\"</code>",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      },
        -      "include_adult_keywords": {
        -        "description": "<em>include keywords associated with adult content</em><br>optional field<br>if set to <code>true</code>, adult keywords will be included in the response<br>default value: <code>false</code><br><strong>note</strong> that the API may return no data for such keywords due to <a href=\"https://support.google.com/adspolicy/answer/6008942?hl=en\" target=\"_blank\" rel=\"noopener noreferrer\">Google Ads restrictions</a>",
        -        "type": [
        -          "boolean",
        -          "null"
        -        ]
        -      },
        -      "language_code": {
        -        "description": "<em>search engine language code</em><br>optional field<br>you can receive the list of available languages of the search engine with their <code>language_code</code> by making a separate request to <code>https://api.dataforseo.com/v3/keywords_data/google_ads/languages</code><br>example:<br><code class=\"long-string\">en</code>",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      },
        -      "language_name": {
        -        "description": "<em>full name of search engine language</em><br>optional field<br>you can receive the list of available languages of the search engine with their <code>language_name</code> by making a separate request to <code>https://api.dataforseo.com/v3/keywords_data/google_ads/languages</code><br>example:<br><code class=\"long-string\">English</code>",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      },
        -      "location_code": {
        -        "description": "<em>search engine location code</em><br>optional field<br>if you do not indicate the location, you will receive worldwide results, i.e., for all available locations;<br><strong>if you use this field, you don't need to specify <code>location_name</code> or <code>location_coordinate</code></strong>;<br>you can receive the list of available locations of the search engines with their <code>location_code</code> by making a separate request to <code>https://api.dataforseo.com/v3/keywords_data/google_ads/locations</code><br>example:<br><code class=\"long-string\">2840</code>",
        -        "type": [
        -          "integer",
        -          "null"
        -        ]
        -      },
        -      "location_coordinate": {
        -        "description": "<em>GPS coordinates of a location</em><br>optional field<br>if you do not indicate the location, you will receive worldwide results, i.e., for all available locations;<br><strong>if you use this field, you don't need to specify <code>location_name</code> or <code>location_code</code></strong>;<br><code>location_coordinate</code> parameter should be specified in the <em>\"latitude,longitude\"</em> format;<br><strong>the data will be provided for the country the specified coordinates belong to</strong>;<br>example:<br><code class=\"long-string\">52.6178549,-155.352142</code>",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      },
        -      "location_name": {
        -        "description": "<em>full name of search engine location</em><br>optional field<br>if you do not indicate the location, you will receive worldwide results, i.e., for all available locations;<br><strong>if you use this field, you don't need to specify <code>location_code</code> or <code>location_coordinate</code></strong><br>you can receive the list of available locations of the search engine with their <code>location_name</code> by making a separate request to <code>https://api.dataforseo.com/v3/keywords_data/google_ads/locations</code><br>example:<br><code class=\"long-string\">London,England,United Kingdom</code>",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      },
        -      "search_partners": {
        -        "description": "<em>include Google search partners</em><br>optional field<br>if you specify <code class=\"prettyprint\">true</code>, the results will be delivered for owned, operated, and syndicated networks across <a href=\"https://support.google.com/google-ads/answer/1722047?hl=en\" target=\"_blank\" rel=\"noopener noreferrer\">Google and partner sites</a> that host Google search;<br>default value: <code>false</code> - results are returned for Google search sites",
        -        "type": [
        -          "boolean",
        -          "null"
        -        ]
        -      },
        -      "sort_by": {
        -        "description": "<em>results sorting parameters</em><br>optional field<br>Use these parameters to sort the results by <code>relevance</code>, <code>search_volume</code>, <code>competition_index</code>, <code>low_top_of_page_bid</code>, or <code>high_top_of_page_bid</code> in descending order<br>default value: <code>relevance</code>",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      },
        -      "tag": {
        -        "description": "<em>user-defined task identifier</em><br>optional field<br><em>the character limit is 255</em><br>you can use this parameter to identify the task and match it with the result<br>you will find the specified <code>tag</code> value in the <code>data</code> object of the response",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      },
        -      "target": {
        -        "description": "<em>domain or page</em><br><strong>required field</strong><br>the domain name of the target website or the url of the target page;<br><strong>note:</strong> to obtain keywords for the target website, use the <code>target_type</code> parameter",
        -        "type": "string"
        -      },
        -      "target_type": {
        -        "description": "<em>search keywords for site or for url</em><br>optional field<br>possible values: <code>site</code>, <code>page</code>;<br>default value: <code>page</code>;<br>if set to <code>site</code>, keywords will be provided for the entire site;<br>if set to <code>page</code>, keywords will be provided for the specified webpage",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      }
        -    },
        -    "type": "object"
        -  }
        -]
      • addedInput schema / properties / body / items / oneOf
        Added value: +[
        +  {
        +    "example": [
        +      {
        +        "location_code": 2840,
        +        "target": "dataforseo.com"
        +      }
        +    ],
        +    "properties": {
        +      "date_from": {
        +        "description": "<em>starting date of the time range</em><br>optional field<br>date format: <code>\"yyyy-mm-dd\"</code><br>minimal value: 4 years from the current date<br>by default, data is returned for the past 12 months;<br><strong>Note</strong>: the indicated date cannot be greater than that specified in <code>date_to</code> and/or yesterday's date;if <a href=\"/v3/keywords_data/google_ads/status/\" target=\"_blank\" rel=\"noopener noreferrer\">Status endpoint</a> returns <code>false</code> in the <code>actual_data</code> field, <code>date_from</code> can be set to the month before last and prior;<br>if <a href=\"/v3/keywords_data/google_ads/status/\" target=\"_blank\" rel=\"noopener noreferrer\">Status endpoint</a> returns <code>true</code> in the <code>actual_data</code> field, <code>date_from</code> can be set to the last month and prior",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "date_to": {
        +        "description": "<em>ending date of the time range</em><br>optional field<br><strong>Note:</strong> the indicated date cannot be greater than yesterday's date;<br>if you don't specify this field, yesterday's date will be used by default<br>date format: <code>\"yyyy-mm-dd\"</code><br>example:<br><code>\"2022-11-30\"</code>",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "include_adult_keywords": {
        +        "description": "<em>include keywords associated with adult content</em><br>optional field<br>if set to <code>true</code>, adult keywords will be included in the response<br>default value: <code>false</code><br><strong>note</strong> that the API may return no data for such keywords due to <a href=\"https://support.google.com/adspolicy/answer/6008942?hl=en\" target=\"_blank\" rel=\"noopener noreferrer\">Google Ads restrictions</a>",
        +        "type": [
        +          "boolean",
        +          "null"
        +        ]
        +      },
        +      "language_code": {
        +        "description": "<em>search engine language code</em><br>optional field<br>you can receive the list of available languages of the search engine with their <code>language_code</code> by making a separate request to <code>https://api.dataforseo.com/v3/keywords_data/google_ads/languages</code><br>example:<br><code class=\"long-string\">en</code>",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "language_name": {
        +        "description": "<em>full name of search engine language</em><br>optional field<br>you can receive the list of available languages of the search engine with their <code>language_name</code> by making a separate request to <code>https://api.dataforseo.com/v3/keywords_data/google_ads/languages</code><br>example:<br><code class=\"long-string\">English</code>",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "location_code": {
        +        "description": "<em>search engine location code</em><br>optional field<br>if you do not indicate the location, you will receive worldwide results, i.e., for all available locations;<br><strong>if you use this field, you don't need to specify <code>location_name</code> or <code>location_coordinate</code></strong>;<br>you can receive the list of available locations of the search engines with their <code>location_code</code> by making a separate request to <code>https://api.dataforseo.com/v3/keywords_data/google_ads/locations</code><br>example:<br><code class=\"long-string\">2840</code>",
        +        "type": [
        +          "integer",
        +          "null"
        +        ]
        +      },
        +      "location_coordinate": {
        +        "description": "<em>GPS coordinates of a location</em><br>optional field<br>if you do not indicate the location, you will receive worldwide results, i.e., for all available locations;<br><strong>if you use this field, you don't need to specify <code>location_name</code> or <code>location_code</code></strong>;<br><code>location_coordinate</code> parameter should be specified in the <em>\"latitude,longitude\"</em> format;<br><strong>the data will be provided for the country the specified coordinates belong to</strong>;<br>example:<br><code class=\"long-string\">52.6178549,-155.352142</code>",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "location_name": {
        +        "description": "<em>full name of search engine location</em><br>optional field<br>if you do not indicate the location, you will receive worldwide results, i.e., for all available locations;<br><strong>if you use this field, you don't need to specify <code>location_code</code> or <code>location_coordinate</code></strong><br>you can receive the list of available locations of the search engine with their <code>location_name</code> by making a separate request to <code>https://api.dataforseo.com/v3/keywords_data/google_ads/locations</code><br>example:<br><code class=\"long-string\">London,England,United Kingdom</code>",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "search_partners": {
        +        "description": "<em>include Google search partners</em><br>optional field<br>if you specify <code class=\"prettyprint\">true</code>, the results will be delivered for owned, operated, and syndicated networks across <a href=\"https://support.google.com/google-ads/answer/1722047?hl=en\" target=\"_blank\" rel=\"noopener noreferrer\">Google and partner sites</a> that host Google search;<br>default value: <code>false</code> - results are returned for Google search sites",
        +        "type": [
        +          "boolean",
        +          "null"
        +        ]
        +      },
        +      "sort_by": {
        +        "description": "<em>results sorting parameters</em><br>optional field<br>Use these parameters to sort the results by <code>relevance</code>, <code>search_volume</code>, <code>competition_index</code>, <code>low_top_of_page_bid</code>, or <code>high_top_of_page_bid</code> in descending order<br>default value: <code>relevance</code>",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "tag": {
        +        "description": "<em>user-defined task identifier</em><br>optional field<br><em>the character limit is 255</em><br>you can use this parameter to identify the task and match it with the result<br>you will find the specified <code>tag</code> value in the <code>data</code> object of the response",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "target": {
        +        "description": "<em>domain or page</em><br><strong>required field</strong><br>the domain name of the target website or the url of the target page;<br><strong>note:</strong> to obtain keywords for the target website, use the <code>target_type</code> parameter",
        +        "type": "string"
        +      },
        +      "target_type": {
        +        "description": "<em>search keywords for site or for url</em><br>optional field<br>possible values: <code>site</code>, <code>page</code>;<br>default value: <code>page</code>;<br>if set to <code>site</code>, keywords will be provided for the entire site;<br>if set to <code>page</code>, keywords will be provided for the specified webpage",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      }
        +    },
        +    "type": "object"
        +  }
        +]
    • Changedpost_dataforseo_keywords_gads_search_volume_live2 fields changed
      • removedInput schema / properties / body / items / anyOf
        Removed value: -[
        -  {
        -    "example": [
        -      {
        -        "date_from": "2021-08-01",
        -        "keywords": [
        -          "buy laptop",
        -          "cheap laptops for sale",
        -          "purchase laptop"
        -        ],
        -        "location_code": 2840,
        -        "search_partners": true
        -      }
        -    ],
        -    "properties": {
        -      "date_from": {
        -        "description": "<em>starting date of the time range</em><br>optional field<br>date format: <code>\"yyyy-mm-dd\"</code><br>minimal value: 4 years from the current date<br>by default, data is returned for the past 12 months;<br><strong>Note</strong>: the indicated date cannot be greater than that specified in <code>date_to</code> and/or yesterday's date;if <a href=\"/v3/keywords_data/google_ads/status/\" target=\"_blank\" rel=\"noopener noreferrer\">Status endpoint</a> returns <code>false</code> in the <code>actual_data</code> field, <code>date_from</code> can be set to the month before last and prior;<br>if <a href=\"/v3/keywords_data/google_ads/status/\" target=\"_blank\" rel=\"noopener noreferrer\">Status endpoint</a> returns <code>true</code> in the <code>actual_data</code> field, <code>date_from</code> can be set to the last month and prior",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      },
        -      "date_to": {
        -        "description": "<em>ending date of the time range</em><br>optional field<br><strong>Note:</strong> the indicated date cannot be greater than the past month, Google Ads does not return data on the current month;<br>if you don't specify this field, yesterday's date will be used by default<br>date format: <code>\"yyyy-mm-dd\"</code><br>example:<br><code>\"2022-11-30\"</code>",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      },
        -      "include_adult_keywords": {
        -        "description": "<em>include keywords associated with adult content<br></em>optional field<br>if set to_<code>true</code>, adult keywords will be included in the response<br>default value:_<code>false</code><br><strong>note</strong>_that the API may return no data for such keywords due to_<a href=\"https://support.google.com/adspolicy/answer/6008942?hl=en\" target=\"_blank\" rel=\"noopener noreferrer\">Google Ads restrictions</a>n",
        -        "type": [
        -          "boolean",
        -          "null"
        -        ]
        -      },
        -      "keywords": {
        -        "description": "<em>keywords</em><br><strong>required field</strong><br>The maximum number of keywords you can specify: 1000<br>The maximum number of characters for each keyword: 80<br>The maximum number of words for each keyword phrase: 10<br>the keywords you specify will be converted to a lowercase format<br><strong>Note #1:</strong> <a href=\"https://dataforseo.com/help-center/no-search-volume-data-for-some-keywords\" target=\"_blank\" rel=\"noopener noreferrer\">Google Ads may return no data for certain groups of keywords</a>;<br><strong>Note #2:</strong> <a href=\"https://dataforseo.com/help-center/sv-broad-exact-phrase-match\" target=\"_blank\" rel=\"noopener noreferrer\">Google Ads provides combined search volume values for groups of similar keywords</a><br>to obtain search volume for similar keywords, we recommend submitting such keywords in separate requests;<br><strong>Note #3:</strong> Google Ads doesn't allow using certain symbols and characters (e.g., UTF symbols, emojis), so you can't use them when setting a task;<br>to learn more about which symbols and characters can be used, please refer to <a href=\"https://dataforseo.com/help-center/using-symbols-in-keywords-when-setting-a-google-ads-task\" target=\"_blank\" rel=\"noopener noreferrer\">this article</a><p>learn more about rules and limitations of <code>keyword</code> and <code>keywords</code> fields in DataForSEO APIs in this <a href=\"https://dataforseo.com/help-center/rules-and-limitations-of-keyword-and-keywords-fields-in-dataforseo-apis\" rel=\"noopener noreferrer\" target=\"_blank\">Help Center article</a>",
        -        "items": {
        -          "type": "string"
        -        },
        -        "type": "array"
        -      },
        -      "language_code": {
        -        "description": "<em>search engine language code</em><br>optional field<br>you can receive the list of available languages of the search engine with their <code>language_code</code> by making a separate request to <code>https://api.dataforseo.com/v3/keywords_data/google_ads/languages</code><br>example:<br><code class=\"long-string\">en</code>",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      },
        -      "language_name": {
        -        "description": "<em>full name of search engine language</em><br>optional field<br>you can receive the list of available languages of the search engine with their <code>language_name</code> by making a separate request to <code>https://api.dataforseo.com/v3/keywords_data/google_ads/languages</code><br>example:<br><code class=\"long-string\">English</code>",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      },
        -      "location_code": {
        -        "description": "<em>search engine location code</em><br>optional field<br>if you do not indicate the location, you will receive worldwide results, i.e., for all available locations;<br><strong>if you use this field, you don't need to specify <code>location_name</code> or <code>location_coordinate</code></strong>;<br>you can receive the list of available locations of the search engines with their <code>location_code</code> by making a separate request to <code>https://api.dataforseo.com/v3/keywords_data/google_ads/locations</code><br>example:<br><code class=\"long-string\">2840</code>",
        -        "type": [
        -          "integer",
        -          "null"
        -        ]
        -      },
        -      "location_coordinate": {
        -        "description": "<em>GPS coordinates of a location</em><br>optional field<br>if you do not indicate the location, you will receive worldwide results, i.e., for all available locations;<br><strong>if you use this field, you don't need to specify <code>location_name</code> or <code>location_code</code></strong>;<br><code>location_coordinate</code> parameter should be specified in the <em>\"latitude,longitude\"</em> format;<br><strong>the data will be provided for the country the specified coordinates belong to</strong>;<br>example:<br><code class=\"long-string\">52.6178549,-155.352142</code>",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      },
        -      "location_name": {
        -        "description": "<em>full name of search engine location</em><br>optional field<br>if you do not indicate the location, you will receive worldwide results, i.e., for all available locations;<br><strong>if you use this field, you don't need to specify <code>location_code</code> or <code>location_coordinate</code></strong><br>you can receive the list of available locations of the search engine with their <code>location_name</code> by making a separate request to <code>https://api.dataforseo.com/v3/keywords_data/google_ads/locations</code><br>example:<br><code class=\"long-string\">London,England,United Kingdom</code>",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      },
        -      "search_partners": {
        -        "description": "<em>include Google search partners</em><br>optional field<br>if you specify <code class=\"prettyprint\">true</code>, the results will be delivered for owned, operated, and syndicated networks across <a href=\"https://support.google.com/google-ads/answer/1722047?hl=en\" target=\"_blank\" rel=\"noopener noreferrer\">Google and partner sites</a> that host Google search;<br>default value: <code>false</code> - results are returned for Google search sites",
        -        "type": [
        -          "boolean",
        -          "null"
        -        ]
        -      },
        -      "sort_by": {
        -        "description": "<em>results sorting parameters</em><br>optional field<br>use these parameters to sort the results by <code>relevance</code>, <code>search_volume</code>, <code>competition_index</code>, <code>low_top_of_page_bid</code>, or <code>high_top_of_page_bid</code> in the descending order<br>default value: <code>relevance</code>",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      },
        -      "tag": {
        -        "description": "<em>user-defined task identifier</em><br>optional field<br><em>the character limit is 255</em><br>you can use this parameter to identify the task and match it with the result<br>you will find the specified <code>tag</code> value in the <code>data</code> array of the response",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      }
        -    },
        -    "type": "object"
        -  }
        -]
      • addedInput schema / properties / body / items / oneOf
        Added value: +[
        +  {
        +    "example": [
        +      {
        +        "date_from": "2021-08-01",
        +        "keywords": [
        +          "buy laptop",
        +          "cheap laptops for sale",
        +          "purchase laptop"
        +        ],
        +        "location_code": 2840,
        +        "search_partners": true
        +      }
        +    ],
        +    "properties": {
        +      "date_from": {
        +        "description": "<em>starting date of the time range</em><br>optional field<br>date format: <code>\"yyyy-mm-dd\"</code><br>minimal value: 4 years from the current date<br>by default, data is returned for the past 12 months;<br><strong>Note</strong>: the indicated date cannot be greater than that specified in <code>date_to</code> and/or yesterday's date;if <a href=\"/v3/keywords_data/google_ads/status/\" target=\"_blank\" rel=\"noopener noreferrer\">Status endpoint</a> returns <code>false</code> in the <code>actual_data</code> field, <code>date_from</code> can be set to the month before last and prior;<br>if <a href=\"/v3/keywords_data/google_ads/status/\" target=\"_blank\" rel=\"noopener noreferrer\">Status endpoint</a> returns <code>true</code> in the <code>actual_data</code> field, <code>date_from</code> can be set to the last month and prior",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "date_to": {
        +        "description": "<em>ending date of the time range</em><br>optional field<br><strong>Note:</strong> the indicated date cannot be greater than the past month, Google Ads does not return data on the current month;<br>if you don't specify this field, yesterday's date will be used by default<br>date format: <code>\"yyyy-mm-dd\"</code><br>example:<br><code>\"2022-11-30\"</code>",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "include_adult_keywords": {
        +        "description": "<em>include keywords associated with adult content<br></em>optional field<br>if set to_<code>true</code>, adult keywords will be included in the response<br>default value:_<code>false</code><br><strong>note</strong>_that the API may return no data for such keywords due to_<a href=\"https://support.google.com/adspolicy/answer/6008942?hl=en\" target=\"_blank\" rel=\"noopener noreferrer\">Google Ads restrictions</a>n",
        +        "type": [
        +          "boolean",
        +          "null"
        +        ]
        +      },
        +      "keywords": {
        +        "description": "<em>keywords</em><br><strong>required field</strong><br>The maximum number of keywords you can specify: 1000<br>The maximum number of characters for each keyword: 80<br>The maximum number of words for each keyword phrase: 10<br>the keywords you specify will be converted to a lowercase format<br><strong>Note #1:</strong> <a href=\"https://dataforseo.com/help-center/no-search-volume-data-for-some-keywords\" target=\"_blank\" rel=\"noopener noreferrer\">Google Ads may return no data for certain groups of keywords</a>;<br><strong>Note #2:</strong> <a href=\"https://dataforseo.com/help-center/sv-broad-exact-phrase-match\" target=\"_blank\" rel=\"noopener noreferrer\">Google Ads provides combined search volume values for groups of similar keywords</a><br>to obtain search volume for similar keywords, we recommend submitting such keywords in separate requests;<br><strong>Note #3:</strong> Google Ads doesn't allow using certain symbols and characters (e.g., UTF symbols, emojis), so you can't use them when setting a task;<br>to learn more about which symbols and characters can be used, please refer to <a href=\"https://dataforseo.com/help-center/using-symbols-in-keywords-when-setting-a-google-ads-task\" target=\"_blank\" rel=\"noopener noreferrer\">this article</a><p>learn more about rules and limitations of <code>keyword</code> and <code>keywords</code> fields in DataForSEO APIs in this <a href=\"https://dataforseo.com/help-center/rules-and-limitations-of-keyword-and-keywords-fields-in-dataforseo-apis\" rel=\"noopener noreferrer\" target=\"_blank\">Help Center article</a>",
        +        "items": {
        +          "type": "string"
        +        },
        +        "type": "array"
        +      },
        +      "language_code": {
        +        "description": "<em>search engine language code</em><br>optional field<br>you can receive the list of available languages of the search engine with their <code>language_code</code> by making a separate request to <code>https://api.dataforseo.com/v3/keywords_data/google_ads/languages</code><br>example:<br><code class=\"long-string\">en</code>",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "language_name": {
        +        "description": "<em>full name of search engine language</em><br>optional field<br>you can receive the list of available languages of the search engine with their <code>language_name</code> by making a separate request to <code>https://api.dataforseo.com/v3/keywords_data/google_ads/languages</code><br>example:<br><code class=\"long-string\">English</code>",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "location_code": {
        +        "description": "<em>search engine location code</em><br>optional field<br>if you do not indicate the location, you will receive worldwide results, i.e., for all available locations;<br><strong>if you use this field, you don't need to specify <code>location_name</code> or <code>location_coordinate</code></strong>;<br>you can receive the list of available locations of the search engines with their <code>location_code</code> by making a separate request to <code>https://api.dataforseo.com/v3/keywords_data/google_ads/locations</code><br>example:<br><code class=\"long-string\">2840</code>",
        +        "type": [
        +          "integer",
        +          "null"
        +        ]
        +      },
        +      "location_coordinate": {
        +        "description": "<em>GPS coordinates of a location</em><br>optional field<br>if you do not indicate the location, you will receive worldwide results, i.e., for all available locations;<br><strong>if you use this field, you don't need to specify <code>location_name</code> or <code>location_code</code></strong>;<br><code>location_coordinate</code> parameter should be specified in the <em>\"latitude,longitude\"</em> format;<br><strong>the data will be provided for the country the specified coordinates belong to</strong>;<br>example:<br><code class=\"long-string\">52.6178549,-155.352142</code>",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "location_name": {
        +        "description": "<em>full name of search engine location</em><br>optional field<br>if you do not indicate the location, you will receive worldwide results, i.e., for all available locations;<br><strong>if you use this field, you don't need to specify <code>location_code</code> or <code>location_coordinate</code></strong><br>you can receive the list of available locations of the search engine with their <code>location_name</code> by making a separate request to <code>https://api.dataforseo.com/v3/keywords_data/google_ads/locations</code><br>example:<br><code class=\"long-string\">London,England,United Kingdom</code>",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "search_partners": {
        +        "description": "<em>include Google search partners</em><br>optional field<br>if you specify <code class=\"prettyprint\">true</code>, the results will be delivered for owned, operated, and syndicated networks across <a href=\"https://support.google.com/google-ads/answer/1722047?hl=en\" target=\"_blank\" rel=\"noopener noreferrer\">Google and partner sites</a> that host Google search;<br>default value: <code>false</code> - results are returned for Google search sites",
        +        "type": [
        +          "boolean",
        +          "null"
        +        ]
        +      },
        +      "sort_by": {
        +        "description": "<em>results sorting parameters</em><br>optional field<br>use these parameters to sort the results by <code>relevance</code>, <code>search_volume</code>, <code>competition_index</code>, <code>low_top_of_page_bid</code>, or <code>high_top_of_page_bid</code> in the descending order<br>default value: <code>relevance</code>",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "tag": {
        +        "description": "<em>user-defined task identifier</em><br>optional field<br><em>the character limit is 255</em><br>you can use this parameter to identify the task and match it with the result<br>you will find the specified <code>tag</code> value in the <code>data</code> array of the response",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      }
        +    },
        +    "type": "object"
        +  }
        +]
    • Changedpost_dataforseo_keywords_trends_demography_live2 fields changed
      • removedInput schema / properties / body / items / anyOf
        Removed value: -[
        -  {
        -    "example": [
        -      {
        -        "date_from": "2023-01-01",
        -        "date_to": "2024-01-01",
        -        "keywords": [
        -          "rugby",
        -          "cricket"
        -        ],
        -        "location_name": "United States",
        -        "type": "web"
        -      }
        -    ],
        -    "properties": {
        -      "date_from": {
        -        "description": "<em>starting date of the time range</em><br>optional field<br>if you don't specify this field, the current day and month of the preceding year will be used by default<br>minimal value for the <code>web</code> type: <code>2004-01-01</code><br>minimal value for other types: <code>2008-01-01</code><br>date format: <code>\"yyyy-mm-dd\"</code><br>example:<br><code>\"2019-01-15\"</code>",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      },
        -      "date_to": {
        -        "description": "<em>ending date of the time range</em><br>optional field<br>if you don't specify this field, the today's date will be used by default<br>date format: <code>\"yyyy-mm-dd\"</code><br>example:<br><code>\"2019-01-15\"</code>",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      },
        -      "keywords": {
        -        "description": "<em>keywords</em><br><strong>required field</strong><br>the maximum number of keywords you can specify: 5<br>avoid symbols and special characters (e.g., UTF symbols, emojis);<br>specifying non-Latin characters, you’ll get data for the countries where they are used<p>learn more about rules and limitations of <code>keyword</code> and <code>keywords</code> fields in DataForSEO APIs in this <a href=\"https://dataforseo.com/help-center/rules-and-limitations-of-keyword-and-keywords-fields-in-dataforseo-apis\" rel=\"noopener noreferrer\" target=\"_blank\">Help Center article</a>",
        -        "items": {
        -          "type": "string"
        -        },
        -        "type": "array"
        -      },
        -      "location_code": {
        -        "description": "<em>search engine location code</em><br>optional field<br>if you don't use this field, you will recieve global results<br><strong>if you use this field, you don't need to specify <code>location_name</code></strong><br>you can receive the list of available locations of the search engines with their <code>location_code</code> by making a separate request to <code>https://api.dataforseo.com/v3/keywords_data/dataforseo_trends/locations</code><br><strong>note that the data will be provided for the country the specified <code>location_code</code> belongs to;</strong><br>example:<br><code class=\"long-string\">2840</code>",
        -        "type": [
        -          "integer",
        -          "null"
        -        ]
        -      },
        -      "location_name": {
        -        "description": "<em>full name of search engine location</em><br>optional field<br>if you don't use this field, you will recieve global results<br><strong>if you use this field, you don't need to specify <code>location_code</code></strong><br>you can receive the list of available locations of the search engine with their <code>location_name</code> by making a separate request to <code>https://api.dataforseo.com/v3/keywords_data/dataforseo_trends/locations</code><br><strong>note that the data will be provided for the country the specified <code>location_name</code> belongs to;</strong><br>example:<br><code class=\"long-string\">United Kingdom</code>",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      },
        -      "tag": {
        -        "description": "<em>user-defined task identifier</em><br>optional field<br><em>the character limit is 255</em><br>you can use this parameter to identify the task and match it with the result<br>you will find the specified <code>tag</code> value in the <code>data</code> object of the response",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      },
        -      "time_range": {
        -        "description": "<em>preset time ranges</em><br>optional field<br>if you specify <code>date_from</code> or <code>date_to</code> parameters, this field will be ignored when setting a task<br><em>possible values for all <code>type</code> parameters:</em><br><code>past_4_hours</code>, <code>past_day</code>, <code>past_7_days</code>, <code>past_30_days</code>, <code>past_90_days</code>, <code>past_12_months</code>, <code>past_5_years</code>",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      },
        -      "type": {
        -        "description": "type of element",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      }
        -    },
        -    "type": "object"
        -  }
        -]
      • addedInput schema / properties / body / items / oneOf
        Added value: +[
        +  {
        +    "example": [
        +      {
        +        "date_from": "2023-01-01",
        +        "date_to": "2024-01-01",
        +        "keywords": [
        +          "rugby",
        +          "cricket"
        +        ],
        +        "location_name": "United States",
        +        "type": "web"
        +      }
        +    ],
        +    "properties": {
        +      "date_from": {
        +        "description": "<em>starting date of the time range</em><br>optional field<br>if you don't specify this field, the current day and month of the preceding year will be used by default<br>minimal value for the <code>web</code> type: <code>2004-01-01</code><br>minimal value for other types: <code>2008-01-01</code><br>date format: <code>\"yyyy-mm-dd\"</code><br>example:<br><code>\"2019-01-15\"</code>",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "date_to": {
        +        "description": "<em>ending date of the time range</em><br>optional field<br>if you don't specify this field, the today's date will be used by default<br>date format: <code>\"yyyy-mm-dd\"</code><br>example:<br><code>\"2019-01-15\"</code>",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "keywords": {
        +        "description": "<em>keywords</em><br><strong>required field</strong><br>the maximum number of keywords you can specify: 5<br>avoid symbols and special characters (e.g., UTF symbols, emojis);<br>specifying non-Latin characters, you’ll get data for the countries where they are used<p>learn more about rules and limitations of <code>keyword</code> and <code>keywords</code> fields in DataForSEO APIs in this <a href=\"https://dataforseo.com/help-center/rules-and-limitations-of-keyword-and-keywords-fields-in-dataforseo-apis\" rel=\"noopener noreferrer\" target=\"_blank\">Help Center article</a>",
        +        "items": {
        +          "type": "string"
        +        },
        +        "type": "array"
        +      },
        +      "location_code": {
        +        "description": "<em>search engine location code</em><br>optional field<br>if you don't use this field, you will recieve global results<br><strong>if you use this field, you don't need to specify <code>location_name</code></strong><br>you can receive the list of available locations of the search engines with their <code>location_code</code> by making a separate request to <code>https://api.dataforseo.com/v3/keywords_data/dataforseo_trends/locations</code><br><strong>note that the data will be provided for the country the specified <code>location_code</code> belongs to;</strong><br>example:<br><code class=\"long-string\">2840</code>",
        +        "type": [
        +          "integer",
        +          "null"
        +        ]
        +      },
        +      "location_name": {
        +        "description": "<em>full name of search engine location</em><br>optional field<br>if you don't use this field, you will recieve global results<br><strong>if you use this field, you don't need to specify <code>location_code</code></strong><br>you can receive the list of available locations of the search engine with their <code>location_name</code> by making a separate request to <code>https://api.dataforseo.com/v3/keywords_data/dataforseo_trends/locations</code><br><strong>note that the data will be provided for the country the specified <code>location_name</code> belongs to;</strong><br>example:<br><code class=\"long-string\">United Kingdom</code>",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "tag": {
        +        "description": "<em>user-defined task identifier</em><br>optional field<br><em>the character limit is 255</em><br>you can use this parameter to identify the task and match it with the result<br>you will find the specified <code>tag</code> value in the <code>data</code> object of the response",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "time_range": {
        +        "description": "<em>preset time ranges</em><br>optional field<br>if you specify <code>date_from</code> or <code>date_to</code> parameters, this field will be ignored when setting a task<br><em>possible values for all <code>type</code> parameters:</em><br><code>past_4_hours</code>, <code>past_day</code>, <code>past_7_days</code>, <code>past_30_days</code>, <code>past_90_days</code>, <code>past_12_months</code>, <code>past_5_years</code>",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "type": {
        +        "description": "type of element",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      }
        +    },
        +    "type": "object"
        +  }
        +]
    • Changedpost_dataforseo_keywords_trends_explore_live2 fields changed
      • removedInput schema / properties / body / items / anyOf
        Removed value: -[
        -  {
        -    "example": [
        -      {
        -        "keywords": [
        -          "iphone 14",
        -          "samsung s23"
        -        ],
        -        "location_code": 2840
        -      }
        -    ],
        -    "properties": {
        -      "date_from": {
        -        "description": "<em>starting date of the time range</em><br>optional field<br>if you don't specify this field, the current day and month of the preceding year will be used by default<br>minimal value for the <code>web</code> type: <code>2004-01-01</code><br>minimal value for other types: <code>2008-01-01</code><br>date format: <code>\"yyyy-mm-dd\"</code><br>example:<br><code>\"2019-01-15\"</code>",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      },
        -      "date_to": {
        -        "description": "<em>ending date of the time range</em><br>optional field<br>if you don't specify this field, the today's date will be used by default<br>date format: <code>\"yyyy-mm-dd\"</code><br>example:<br><code>\"2019-01-15\"</code>",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      },
        -      "keywords": {
        -        "description": "<em>keywords</em><br><strong>required field</strong><br>the maximum number of keywords you can specify: 5<p>learn more about rules and limitations of <code>keyword</code> and <code>keywords</code> fields in DataForSEO APIs in this <a href=\"https://dataforseo.com/help-center/rules-and-limitations-of-keyword-and-keywords-fields-in-dataforseo-apis\" rel=\"noopener noreferrer\" target=\"_blank\">Help Center article</a>",
        -        "items": {
        -          "type": "string"
        -        },
        -        "type": "array"
        -      },
        -      "location_code": {
        -        "description": "<em>search engine location code</em><br>optional field<br>if you don't use this field, you will recieve global results<br><strong>if you use this field, you don't need to specify <code>location_name</code></strong><br>you can receive the list of available locations of the search engines with their <code>location_code</code> by making a separate request to <code>https://api.dataforseo.com/v3/keywords_data/dataforseo_trends/locations</code><br><strong>note that the data will be provided for the country the specified <code>location_code</code> belongs to;</strong><br>example:<br><code class=\"long-string\">2840</code>",
        -        "type": [
        -          "integer",
        -          "null"
        -        ]
        -      },
        -      "location_name": {
        -        "description": "<em>full name of search engine location</em><br>optional field<br>if you don't use this field, you will recieve global results<br><strong>if you use this field, you don't need to specify <code>location_code</code></strong><br>you can receive the list of available locations of the search engine with their <code>location_name</code> by making a separate request to <code>https://api.dataforseo.com/v3/keywords_data/dataforseo_trends/locations</code><br><strong>note that the data will be provided for the country the specified <code>location_name</code> belongs to;</strong><br>example:<br><code class=\"long-string\">United Kingdom</code>",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      },
        -      "tag": {
        -        "description": "<em>user-defined task identifier</em><br>optional field<br><em>the character limit is 255</em><br>you can use this parameter to identify the task and match it with the result<br>you will find the specified <code>tag</code> value in the <code>data</code> object of the response",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      },
        -      "time_range": {
        -        "description": "<em>preset time ranges</em><br>optional field<br>if you specify <code>date_from</code> or <code>date_to</code> parameters, this field will be ignored when setting a task<br><em>possible values for all <code>type</code> parameters:</em><br><code>past_4_hours</code>, <code>past_day</code>, <code>past_7_days</code>, <code>past_30_days</code>, <code>past_90_days</code>, <code>past_12_months</code>, <code>past_5_years</code>",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      },
        -      "type": {
        -        "description": "type of element",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      }
        -    },
        -    "type": "object"
        -  }
        -]
      • addedInput schema / properties / body / items / oneOf
        Added value: +[
        +  {
        +    "example": [
        +      {
        +        "keywords": [
        +          "iphone 14",
        +          "samsung s23"
        +        ],
        +        "location_code": 2840
        +      }
        +    ],
        +    "properties": {
        +      "date_from": {
        +        "description": "<em>starting date of the time range</em><br>optional field<br>if you don't specify this field, the current day and month of the preceding year will be used by default<br>minimal value for the <code>web</code> type: <code>2004-01-01</code><br>minimal value for other types: <code>2008-01-01</code><br>date format: <code>\"yyyy-mm-dd\"</code><br>example:<br><code>\"2019-01-15\"</code>",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "date_to": {
        +        "description": "<em>ending date of the time range</em><br>optional field<br>if you don't specify this field, the today's date will be used by default<br>date format: <code>\"yyyy-mm-dd\"</code><br>example:<br><code>\"2019-01-15\"</code>",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "keywords": {
        +        "description": "<em>keywords</em><br><strong>required field</strong><br>the maximum number of keywords you can specify: 5<p>learn more about rules and limitations of <code>keyword</code> and <code>keywords</code> fields in DataForSEO APIs in this <a href=\"https://dataforseo.com/help-center/rules-and-limitations-of-keyword-and-keywords-fields-in-dataforseo-apis\" rel=\"noopener noreferrer\" target=\"_blank\">Help Center article</a>",
        +        "items": {
        +          "type": "string"
        +        },
        +        "type": "array"
        +      },
        +      "location_code": {
        +        "description": "<em>search engine location code</em><br>optional field<br>if you don't use this field, you will recieve global results<br><strong>if you use this field, you don't need to specify <code>location_name</code></strong><br>you can receive the list of available locations of the search engines with their <code>location_code</code> by making a separate request to <code>https://api.dataforseo.com/v3/keywords_data/dataforseo_trends/locations</code><br><strong>note that the data will be provided for the country the specified <code>location_code</code> belongs to;</strong><br>example:<br><code class=\"long-string\">2840</code>",
        +        "type": [
        +          "integer",
        +          "null"
        +        ]
        +      },
        +      "location_name": {
        +        "description": "<em>full name of search engine location</em><br>optional field<br>if you don't use this field, you will recieve global results<br><strong>if you use this field, you don't need to specify <code>location_code</code></strong><br>you can receive the list of available locations of the search engine with their <code>location_name</code> by making a separate request to <code>https://api.dataforseo.com/v3/keywords_data/dataforseo_trends/locations</code><br><strong>note that the data will be provided for the country the specified <code>location_name</code> belongs to;</strong><br>example:<br><code class=\"long-string\">United Kingdom</code>",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "tag": {
        +        "description": "<em>user-defined task identifier</em><br>optional field<br><em>the character limit is 255</em><br>you can use this parameter to identify the task and match it with the result<br>you will find the specified <code>tag</code> value in the <code>data</code> object of the response",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "time_range": {
        +        "description": "<em>preset time ranges</em><br>optional field<br>if you specify <code>date_from</code> or <code>date_to</code> parameters, this field will be ignored when setting a task<br><em>possible values for all <code>type</code> parameters:</em><br><code>past_4_hours</code>, <code>past_day</code>, <code>past_7_days</code>, <code>past_30_days</code>, <code>past_90_days</code>, <code>past_12_months</code>, <code>past_5_years</code>",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "type": {
        +        "description": "type of element",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      }
        +    },
        +    "type": "object"
        +  }
        +]
    • Changedpost_dataforseo_keywords_trends_merged_data_live2 fields changed
      • removedInput schema / properties / body / items / anyOf
        Removed value: -[
        -  {
        -    "example": [
        -      {
        -        "date_from": "2023-01-01",
        -        "date_to": "2024-01-01",
        -        "keywords": [
        -          "rugby",
        -          "cricket"
        -        ],
        -        "location_name": "United States",
        -        "type": "web"
        -      }
        -    ],
        -    "properties": {
        -      "date_from": {
        -        "description": "<em>starting date of the time range</em><br>optional field<br>if you don't specify this field, the current day and month of the preceding year will be used by default<br>minimal value for the <code>web</code> type: <code>2004-01-01</code><br>minimal value for other types: <code>2008-01-01</code><br>date format: <code>\"yyyy-mm-dd\"</code><br>example:<br><code>\"2019-01-15\"</code>",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      },
        -      "date_to": {
        -        "description": "<em>ending date of the time range</em><br>optional field<br>if you don't specify this field, the today's date will be used by default<br>date format: <code>\"yyyy-mm-dd\"</code><br>example:<br><code>\"2019-01-15\"</code>",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      },
        -      "keywords": {
        -        "description": "<em>keywords</em><br><strong>required field</strong><br>the maximum number of keywords you can specify: 5<br>avoid symbols and special characters (e.g., UTF symbols, emojis);<br>specifying non-Latin characters, you’ll get data for the countries where they are used<p>learn more about rules and limitations of <code>keyword</code> and <code>keywords</code> fields in DataForSEO APIs in this <a href=\"https://dataforseo.com/help-center/rules-and-limitations-of-keyword-and-keywords-fields-in-dataforseo-apis\" rel=\"noopener noreferrer\" target=\"_blank\">Help Center article</a>",
        -        "items": {
        -          "type": "string"
        -        },
        -        "type": "array"
        -      },
        -      "location_code": {
        -        "description": "<em>search engine location code</em><br>optional field<br>if you don't use this field, you will recieve global results<br><strong>if you use this field, you don't need to specify <code>location_name</code></strong><br>you can receive the list of available locations of the search engines with their <code>location_code</code> by making a separate request to <code>https://api.dataforseo.com/v3/keywords_data/dataforseo_trends/locations</code><br><strong>note that the data will be provided for the country the specified <code>location_code</code> belongs to;</strong><br>example:<br><code class=\"long-string\">2840</code>",
        -        "type": [
        -          "integer",
        -          "null"
        -        ]
        -      },
        -      "location_name": {
        -        "description": "<em>full name of search engine location</em><br>optional field<br>if you don't use this field, you will recieve global results<br><strong>if you use this field, you don't need to specify <code>location_code</code></strong><br>you can receive the list of available locations of the search engine with their <code>location_name</code> by making a separate request to <code>https://api.dataforseo.com/v3/keywords_data/dataforseo_trends/locations</code><br><strong>note that the data will be provided for the country the specified <code>location_name</code> belongs to;</strong><br>example:<br><code class=\"long-string\">United Kingdom</code>",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      },
        -      "tag": {
        -        "description": "<em>user-defined task identifier</em><br>optional field<br><em>the character limit is 255</em><br>you can use this parameter to identify the task and match it with the result<br>you will find the specified <code>tag</code> value in the <code>data</code> object of the response",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      },
        -      "time_range": {
        -        "description": "<em>preset time ranges</em><br>optional field<br>if you specify <code>date_from</code> or <code>date_to</code> parameters, this field will be ignored when setting a task<br><em>possible values for all <code>type</code> parameters:</em><br><code>past_4_hours</code>, <code>past_day</code>, <code>past_7_days</code>, <code>past_30_days</code>, <code>past_90_days</code>, <code>past_12_months</code>, <code>past_5_years</code>",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      },
        -      "type": {
        -        "description": "type of element",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      }
        -    },
        -    "type": "object"
        -  }
        -]
      • addedInput schema / properties / body / items / oneOf
        Added value: +[
        +  {
        +    "example": [
        +      {
        +        "date_from": "2023-01-01",
        +        "date_to": "2024-01-01",
        +        "keywords": [
        +          "rugby",
        +          "cricket"
        +        ],
        +        "location_name": "United States",
        +        "type": "web"
        +      }
        +    ],
        +    "properties": {
        +      "date_from": {
        +        "description": "<em>starting date of the time range</em><br>optional field<br>if you don't specify this field, the current day and month of the preceding year will be used by default<br>minimal value for the <code>web</code> type: <code>2004-01-01</code><br>minimal value for other types: <code>2008-01-01</code><br>date format: <code>\"yyyy-mm-dd\"</code><br>example:<br><code>\"2019-01-15\"</code>",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "date_to": {
        +        "description": "<em>ending date of the time range</em><br>optional field<br>if you don't specify this field, the today's date will be used by default<br>date format: <code>\"yyyy-mm-dd\"</code><br>example:<br><code>\"2019-01-15\"</code>",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "keywords": {
        +        "description": "<em>keywords</em><br><strong>required field</strong><br>the maximum number of keywords you can specify: 5<br>avoid symbols and special characters (e.g., UTF symbols, emojis);<br>specifying non-Latin characters, you’ll get data for the countries where they are used<p>learn more about rules and limitations of <code>keyword</code> and <code>keywords</code> fields in DataForSEO APIs in this <a href=\"https://dataforseo.com/help-center/rules-and-limitations-of-keyword-and-keywords-fields-in-dataforseo-apis\" rel=\"noopener noreferrer\" target=\"_blank\">Help Center article</a>",
        +        "items": {
        +          "type": "string"
        +        },
        +        "type": "array"
        +      },
        +      "location_code": {
        +        "description": "<em>search engine location code</em><br>optional field<br>if you don't use this field, you will recieve global results<br><strong>if you use this field, you don't need to specify <code>location_name</code></strong><br>you can receive the list of available locations of the search engines with their <code>location_code</code> by making a separate request to <code>https://api.dataforseo.com/v3/keywords_data/dataforseo_trends/locations</code><br><strong>note that the data will be provided for the country the specified <code>location_code</code> belongs to;</strong><br>example:<br><code class=\"long-string\">2840</code>",
        +        "type": [
        +          "integer",
        +          "null"
        +        ]
        +      },
        +      "location_name": {
        +        "description": "<em>full name of search engine location</em><br>optional field<br>if you don't use this field, you will recieve global results<br><strong>if you use this field, you don't need to specify <code>location_code</code></strong><br>you can receive the list of available locations of the search engine with their <code>location_name</code> by making a separate request to <code>https://api.dataforseo.com/v3/keywords_data/dataforseo_trends/locations</code><br><strong>note that the data will be provided for the country the specified <code>location_name</code> belongs to;</strong><br>example:<br><code class=\"long-string\">United Kingdom</code>",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "tag": {
        +        "description": "<em>user-defined task identifier</em><br>optional field<br><em>the character limit is 255</em><br>you can use this parameter to identify the task and match it with the result<br>you will find the specified <code>tag</code> value in the <code>data</code> object of the response",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "time_range": {
        +        "description": "<em>preset time ranges</em><br>optional field<br>if you specify <code>date_from</code> or <code>date_to</code> parameters, this field will be ignored when setting a task<br><em>possible values for all <code>type</code> parameters:</em><br><code>past_4_hours</code>, <code>past_day</code>, <code>past_7_days</code>, <code>past_30_days</code>, <code>past_90_days</code>, <code>past_12_months</code>, <code>past_5_years</code>",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "type": {
        +        "description": "type of element",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      }
        +    },
        +    "type": "object"
        +  }
        +]
    • Changedpost_dataforseo_keywords_trends_subregion_interests_live2 fields changed
      • removedInput schema / properties / body / items / anyOf
        Removed value: -[
        -  {
        -    "example": [
        -      {
        -        "date_from": "2023-01-01",
        -        "date_to": "2024-01-01",
        -        "keywords": [
        -          "rugby",
        -          "cricket"
        -        ],
        -        "location_name": "United States",
        -        "type": "web"
        -      }
        -    ],
        -    "properties": {
        -      "date_from": {
        -        "description": "<em>starting date of the time range</em><br>optional field<br>if you don't specify this field, the current day and month of the preceding year will be used by default<br>minimal value for the <code>web</code> type: <code>2004-01-01</code><br>minimal value for other types: <code>2008-01-01</code><br>date format: <code>\"yyyy-mm-dd\"</code><br>example:<br><code>\"2019-01-15\"</code>",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      },
        -      "date_to": {
        -        "description": "<em>ending date of the time range</em><br>optional field<br>if you don't specify this field, the today's date will be used by default<br>date format: <code>\"yyyy-mm-dd\"</code><br>example:<br><code>\"2019-01-15\"</code>",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      },
        -      "keywords": {
        -        "description": "<em>keywords</em><br><strong>required field</strong><br>the maximum number of keywords you can specify: 5<br>avoid symbols and special characters (e.g., UTF symbols, emojis);<br>specifying non-Latin characters, you’ll get data for the countries where they are used<p>learn more about rules and limitations of <code>keyword</code> and <code>keywords</code> fields in DataForSEO APIs in this <a href=\"https://dataforseo.com/help-center/rules-and-limitations-of-keyword-and-keywords-fields-in-dataforseo-apis\" rel=\"noopener noreferrer\" target=\"_blank\">Help Center article</a>",
        -        "items": {
        -          "type": "string"
        -        },
        -        "type": "array"
        -      },
        -      "location_code": {
        -        "description": "<em>search engine location code</em><br>optional field<br>if you don't use this field, you will recieve global results<br><strong>if you use this field, you don't need to specify <code>location_name</code></strong><br>you can receive the list of available locations of the search engines with their <code>location_code</code> by making a separate request to <code>https://api.dataforseo.com/v3/keywords_data/dataforseo_trends/locations</code><br><strong>note that the data will be provided for the country the specified <code>location_code</code> belongs to;</strong><br>example:<br><code class=\"long-string\">2840</code>",
        -        "type": [
        -          "integer",
        -          "null"
        -        ]
        -      },
        -      "location_name": {
        -        "description": "<em>full name of search engine location</em><br>optional field<br>if you don't use this field, you will recieve global results<br><strong>if you use this field, you don't need to specify <code>location_code</code></strong><br>you can receive the list of available locations of the search engine with their <code>location_name</code> by making a separate request to <code>https://api.dataforseo.com/v3/keywords_data/dataforseo_trends/locations</code><br><strong>note that the data will be provided for the country the specified <code>location_name</code> belongs to;</strong><br>example:<br><code class=\"long-string\">United Kingdom</code>",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      },
        -      "tag": {
        -        "description": "<em>user-defined task identifier</em><br>optional field<br><em>the character limit is 255</em><br>you can use this parameter to identify the task and match it with the result<br>you will find the specified <code>tag</code> value in the <code>data</code> object of the response",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      },
        -      "time_range": {
        -        "description": "<em>preset time ranges</em><br>optional field<br>if you specify <code>date_from</code> or <code>date_to</code> parameters, this field will be ignored when setting a task<br><em>possible values for all <code>type</code> parameters:</em><br><code>past_4_hours</code>, <code>past_day</code>, <code>past_7_days</code>, <code>past_30_days</code>, <code>past_90_days</code>, <code>past_12_months</code>, <code>past_5_years</code>",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      },
        -      "type": {
        -        "description": "type of element",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      }
        -    },
        -    "type": "object"
        -  }
        -]
      • addedInput schema / properties / body / items / oneOf
        Added value: +[
        +  {
        +    "example": [
        +      {
        +        "date_from": "2023-01-01",
        +        "date_to": "2024-01-01",
        +        "keywords": [
        +          "rugby",
        +          "cricket"
        +        ],
        +        "location_name": "United States",
        +        "type": "web"
        +      }
        +    ],
        +    "properties": {
        +      "date_from": {
        +        "description": "<em>starting date of the time range</em><br>optional field<br>if you don't specify this field, the current day and month of the preceding year will be used by default<br>minimal value for the <code>web</code> type: <code>2004-01-01</code><br>minimal value for other types: <code>2008-01-01</code><br>date format: <code>\"yyyy-mm-dd\"</code><br>example:<br><code>\"2019-01-15\"</code>",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "date_to": {
        +        "description": "<em>ending date of the time range</em><br>optional field<br>if you don't specify this field, the today's date will be used by default<br>date format: <code>\"yyyy-mm-dd\"</code><br>example:<br><code>\"2019-01-15\"</code>",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "keywords": {
        +        "description": "<em>keywords</em><br><strong>required field</strong><br>the maximum number of keywords you can specify: 5<br>avoid symbols and special characters (e.g., UTF symbols, emojis);<br>specifying non-Latin characters, you’ll get data for the countries where they are used<p>learn more about rules and limitations of <code>keyword</code> and <code>keywords</code> fields in DataForSEO APIs in this <a href=\"https://dataforseo.com/help-center/rules-and-limitations-of-keyword-and-keywords-fields-in-dataforseo-apis\" rel=\"noopener noreferrer\" target=\"_blank\">Help Center article</a>",
        +        "items": {
        +          "type": "string"
        +        },
        +        "type": "array"
        +      },
        +      "location_code": {
        +        "description": "<em>search engine location code</em><br>optional field<br>if you don't use this field, you will recieve global results<br><strong>if you use this field, you don't need to specify <code>location_name</code></strong><br>you can receive the list of available locations of the search engines with their <code>location_code</code> by making a separate request to <code>https://api.dataforseo.com/v3/keywords_data/dataforseo_trends/locations</code><br><strong>note that the data will be provided for the country the specified <code>location_code</code> belongs to;</strong><br>example:<br><code class=\"long-string\">2840</code>",
        +        "type": [
        +          "integer",
        +          "null"
        +        ]
        +      },
        +      "location_name": {
        +        "description": "<em>full name of search engine location</em><br>optional field<br>if you don't use this field, you will recieve global results<br><strong>if you use this field, you don't need to specify <code>location_code</code></strong><br>you can receive the list of available locations of the search engine with their <code>location_name</code> by making a separate request to <code>https://api.dataforseo.com/v3/keywords_data/dataforseo_trends/locations</code><br><strong>note that the data will be provided for the country the specified <code>location_name</code> belongs to;</strong><br>example:<br><code class=\"long-string\">United Kingdom</code>",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "tag": {
        +        "description": "<em>user-defined task identifier</em><br>optional field<br><em>the character limit is 255</em><br>you can use this parameter to identify the task and match it with the result<br>you will find the specified <code>tag</code> value in the <code>data</code> object of the response",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "time_range": {
        +        "description": "<em>preset time ranges</em><br>optional field<br>if you specify <code>date_from</code> or <code>date_to</code> parameters, this field will be ignored when setting a task<br><em>possible values for all <code>type</code> parameters:</em><br><code>past_4_hours</code>, <code>past_day</code>, <code>past_7_days</code>, <code>past_30_days</code>, <code>past_90_days</code>, <code>past_12_months</code>, <code>past_5_years</code>",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "type": {
        +        "description": "type of element",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      }
        +    },
        +    "type": "object"
        +  }
        +]
    • Changedpost_dataforseo_labs_google_bulk_keyword_difficulty_live2 fields changed
      • removedInput schema / properties / body / items / anyOf
        Removed value: -[
        -  {
        -    "example": [
        -      {
        -        "keywords": [
        -          "dentist new york",
        -          "pizza brooklyn",
        -          "car dealer los angeles"
        -        ],
        -        "language_code": "en",
        -        "location_code": 2840
        -      }
        -    ],
        -    "properties": {
        -      "keywords": {
        -        "description": "<em>target keywords</em><br><strong>required field</strong><br>UTF-8 encoding<br>maximum number of keywords you can specify in this array: 1000<br>the keywords will be converted to lowercase format<p>learn more about rules and limitations of <code>keyword</code> and <code>keywords</code> fields in DataForSEO APIs in this <a href=\"https://dataforseo.com/help-center/rules-and-limitations-of-keyword-and-keywords-fields-in-dataforseo-apis\" rel=\"noopener noreferrer\" target=\"_blank\">Help Center article</a>",
        -        "items": {
        -          "type": "string"
        -        },
        -        "type": "array"
        -      },
        -      "language_code": {
        -        "description": "<em>language code</em><br><strong>required field if don't specify <code>language_name</code></strong><br>you can receive the list of available languages with their <code>language_code</code> by making a separate request to the <br><code>https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages</code><br>example:<br><code class=\"long-string\">en</code>",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      },
        -      "language_name": {
        -        "description": "<em>full name of the language</em><br><strong>required field if don't specify <code>language_code</code></strong><br>you can receive the list of available languages with their <code>language_name</code> by making a separate request to the <br><code>https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages</code><br>example:<br><code class=\"long-string\">English</code>",
        -        "type": "string"
        -      },
        -      "location_code": {
        -        "description": "<em>location code</em><br><strong>required field if don't specify <code>location_name</code></strong><br>you can receive the list of available locations with their <code>location_code</code> by making a separate request to the <br><code>https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages</code><br>example:<br><code class=\"long-string\">2840</code>",
        -        "type": "integer"
        -      },
        -      "location_name": {
        -        "description": "<em>full name of the location</em><br><strong>required field if don't specify <code>location_code</code></strong><br>you can receive the list of available locations with their <code>location_name</code> by making a separate request to the <br><code>https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages</code><br>example:<br><code class=\"long-string\">United Kingdom</code>",
        -        "type": "string"
        -      },
        -      "tag": {
        -        "description": "<em>user-defined task identifier</em><br>optional field<br><em>the character limit is 255</em><br>you can use this parameter to identify the task and match it with the result<br>you will find the specified <code>tag</code> value in the <code>data</code> object of the response",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      }
        -    },
        -    "type": "object"
        -  }
        -]
      • addedInput schema / properties / body / items / oneOf
        Added value: +[
        +  {
        +    "example": [
        +      {
        +        "keywords": [
        +          "dentist new york",
        +          "pizza brooklyn",
        +          "car dealer los angeles"
        +        ],
        +        "language_code": "en",
        +        "location_code": 2840
        +      }
        +    ],
        +    "properties": {
        +      "keywords": {
        +        "description": "<em>target keywords</em><br><strong>required field</strong><br>UTF-8 encoding<br>maximum number of keywords you can specify in this array: 1000<br>the keywords will be converted to lowercase format<p>learn more about rules and limitations of <code>keyword</code> and <code>keywords</code> fields in DataForSEO APIs in this <a href=\"https://dataforseo.com/help-center/rules-and-limitations-of-keyword-and-keywords-fields-in-dataforseo-apis\" rel=\"noopener noreferrer\" target=\"_blank\">Help Center article</a>",
        +        "items": {
        +          "type": "string"
        +        },
        +        "type": "array"
        +      },
        +      "language_code": {
        +        "description": "<em>language code</em><br><strong>required field if don't specify <code>language_name</code></strong><br>you can receive the list of available languages with their <code>language_code</code> by making a separate request to the <br><code>https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages</code><br>example:<br><code class=\"long-string\">en</code>",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "language_name": {
        +        "description": "<em>full name of the language</em><br><strong>required field if don't specify <code>language_code</code></strong><br>you can receive the list of available languages with their <code>language_name</code> by making a separate request to the <br><code>https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages</code><br>example:<br><code class=\"long-string\">English</code>",
        +        "type": "string"
        +      },
        +      "location_code": {
        +        "description": "<em>location code</em><br><strong>required field if don't specify <code>location_name</code></strong><br>you can receive the list of available locations with their <code>location_code</code> by making a separate request to the <br><code>https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages</code><br>example:<br><code class=\"long-string\">2840</code>",
        +        "type": "integer"
        +      },
        +      "location_name": {
        +        "description": "<em>full name of the location</em><br><strong>required field if don't specify <code>location_code</code></strong><br>you can receive the list of available locations with their <code>location_name</code> by making a separate request to the <br><code>https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages</code><br>example:<br><code class=\"long-string\">United Kingdom</code>",
        +        "type": "string"
        +      },
        +      "tag": {
        +        "description": "<em>user-defined task identifier</em><br>optional field<br><em>the character limit is 255</em><br>you can use this parameter to identify the task and match it with the result<br>you will find the specified <code>tag</code> value in the <code>data</code> object of the response",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      }
        +    },
        +    "type": "object"
        +  }
        +]
    • Changedpost_dataforseo_labs_google_categories_for_kw_live2 fields changed
      • removedInput schema / properties / body / items / anyOf
        Removed value: -[
        -  {
        -    "example": [
        -      {
        -        "keywords": [
        -          "dentist new york",
        -          "pizza brooklyn",
        -          "car dealer los angeles"
        -        ],
        -        "language_code": "en"
        -      }
        -    ],
        -    "properties": {
        -      "keywords": {
        -        "description": "<em>target keywords</em><br><strong>required field</strong><br>UTF-8 encoding<br>maximum number of keywords you can specify in this array: 1000<br>the keywords will be converted to lowercase format<p>learn more about rules and limitations of <code>keyword</code> and <code>keywords</code> fields in DataForSEO APIs in this <a href=\"https://dataforseo.com/help-center/rules-and-limitations-of-keyword-and-keywords-fields-in-dataforseo-apis\" rel=\"noopener noreferrer\" target=\"_blank\">Help Center article</a>",
        -        "items": {
        -          "type": "string"
        -        },
        -        "type": "array"
        -      },
        -      "language_code": {
        -        "description": "<em>language code</em><br><strong>required field if don't specify <code>language_name</code></strong><br>you can receive the list of available languages with their <code>language_code</code> by making a separate request to the <br><code>https://api.dataforseo.com/v3/dataforseo_labs/google/categories_for_keywords/languages</code><br>example:<br><code class=\"long-string\">en</code>",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      },
        -      "language_name": {
        -        "description": "<em>full name of the language</em><br><strong>required field if don't specify <code>language_code</code></strong><br>you can receive the list of available languages with their <code>language_name</code> by making a separate request to the <br><code>https://api.dataforseo.com/v3/dataforseo_labs/google/categories_for_keywords/languages</code><br>example:<br><code class=\"long-string\">English</code>",
        -        "type": "string"
        -      },
        -      "tag": {
        -        "description": "<em>user-defined task identifier</em><br>optional field<br><em>the character limit is 255</em><br>you can use this parameter to identify the task and match it with the result<br>you will find the specified <code>tag</code> value in the <code>data</code> object of the response",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      }
        -    },
        -    "type": "object"
        -  }
        -]
      • addedInput schema / properties / body / items / oneOf
        Added value: +[
        +  {
        +    "example": [
        +      {
        +        "keywords": [
        +          "dentist new york",
        +          "pizza brooklyn",
        +          "car dealer los angeles"
        +        ],
        +        "language_code": "en"
        +      }
        +    ],
        +    "properties": {
        +      "keywords": {
        +        "description": "<em>target keywords</em><br><strong>required field</strong><br>UTF-8 encoding<br>maximum number of keywords you can specify in this array: 1000<br>the keywords will be converted to lowercase format<p>learn more about rules and limitations of <code>keyword</code> and <code>keywords</code> fields in DataForSEO APIs in this <a href=\"https://dataforseo.com/help-center/rules-and-limitations-of-keyword-and-keywords-fields-in-dataforseo-apis\" rel=\"noopener noreferrer\" target=\"_blank\">Help Center article</a>",
        +        "items": {
        +          "type": "string"
        +        },
        +        "type": "array"
        +      },
        +      "language_code": {
        +        "description": "<em>language code</em><br><strong>required field if don't specify <code>language_name</code></strong><br>you can receive the list of available languages with their <code>language_code</code> by making a separate request to the <br><code>https://api.dataforseo.com/v3/dataforseo_labs/google/categories_for_keywords/languages</code><br>example:<br><code class=\"long-string\">en</code>",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "language_name": {
        +        "description": "<em>full name of the language</em><br><strong>required field if don't specify <code>language_code</code></strong><br>you can receive the list of available languages with their <code>language_name</code> by making a separate request to the <br><code>https://api.dataforseo.com/v3/dataforseo_labs/google/categories_for_keywords/languages</code><br>example:<br><code class=\"long-string\">English</code>",
        +        "type": "string"
        +      },
        +      "tag": {
        +        "description": "<em>user-defined task identifier</em><br>optional field<br><em>the character limit is 255</em><br>you can use this parameter to identify the task and match it with the result<br>you will find the specified <code>tag</code> value in the <code>data</code> object of the response",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      }
        +    },
        +    "type": "object"
        +  }
        +]
    • Changedpost_dataforseo_labs_google_historical_keyword_data_live2 fields changed
      • removedInput schema / properties / body / items / anyOf
        Removed value: -[
        -  {
        -    "example": [
        -      {
        -        "keywords": [
        -          "iphone"
        -        ],
        -        "language_code": "en",
        -        "location_code": 2840
        -      }
        -    ],
        -    "properties": {
        -      "keywords": {
        -        "description": "<em>keywords</em><br><strong>required field</strong><br>The maximum number of keywords you can specify: 700<br>The maximum number of characters for each keyword: 80<br>The maximum number of words for each keyword phrase: 10<br>the specified keywords will be converted to lowercase format, data will be provided in a separate array<p><strong>note</strong> that if some of the keywords specified in this array are omitted in the results you receive, then our database doesn't contain such keywords and cannot return data on them<br>you will not be charged for the keywords omitted in the results<p>learn more about rules and limitations of <code>keyword</code> and <code>keywords</code> fields in DataForSEO APIs in this <a href=\"https://dataforseo.com/help-center/rules-and-limitations-of-keyword-and-keywords-fields-in-dataforseo-apis\" rel=\"noopener noreferrer\" target=\"_blank\">Help Center article</a>",
        -        "items": {
        -          "type": "string"
        -        },
        -        "type": "array"
        -      },
        -      "language_code": {
        -        "description": "<em>language code</em><br><strong>required field if you don't specify</strong> <code>language_name</code><br><strong>Note:</strong> it is required to specify either <code>language_name</code> or <code>language_code</code><br>you can receive the list of available locations with their <code>language_code</code> by making a separate request to the <br><code>https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages</code><br>example:<br><code class=\"long-string\">en</code>",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      },
        -      "language_name": {
        -        "description": "<em>full name of the language</em><br><strong>required field if you don't specify</strong> <code>language_code</code><br><strong>Note:</strong> it is required to specify either <code>language_name</code> or <code>language_code</code><br>you can receive the list of available locations with their <code>language_name</code> by making a separate request to the <br><code>https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages</code><br>example:<br><code class=\"long-string\">English</code>",
        -        "type": "string"
        -      },
        -      "location_code": {
        -        "description": "<em>location code</em><br><strong>required field if you don't specify</strong> <code>location_name</code><br><strong>Note:</strong> it is required to specify either <code>location_name</code> or <code>location_code</code><br>you can receive the list of available locations with their <code>location_code</code> by making a separate request to the <br><code>https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages</code><br>example:<br><code class=\"long-string\">2840</code>",
        -        "type": "integer"
        -      },
        -      "location_name": {
        -        "description": "<em>full name of the location</em><br><strong>required field if you don't specify</strong> <code>location_code</code><br><strong>Note:</strong> it is required to specify either <code>location_name</code> or <code>location_code</code><br>you can receive the list of available locations with their <code>location_name</code> by making a separate request to the <br><code>https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages</code><br>example:<br><code class=\"long-string\">United Kingdom</code>",
        -        "type": "string"
        -      },
        -      "tag": {
        -        "description": "<em>user-defined task identifier</em><br>optional field<br><em>the character limit is 255</em><br>you can use this parameter to identify the task and match it with the result<br>you will find the specified <code>tag</code> value in the <code>data</code> object of the response",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      }
        -    },
        -    "type": "object"
        -  }
        -]
      • addedInput schema / properties / body / items / oneOf
        Added value: +[
        +  {
        +    "example": [
        +      {
        +        "keywords": [
        +          "iphone"
        +        ],
        +        "language_code": "en",
        +        "location_code": 2840
        +      }
        +    ],
        +    "properties": {
        +      "keywords": {
        +        "description": "<em>keywords</em><br><strong>required field</strong><br>The maximum number of keywords you can specify: 700<br>The maximum number of characters for each keyword: 80<br>The maximum number of words for each keyword phrase: 10<br>the specified keywords will be converted to lowercase format, data will be provided in a separate array<p><strong>note</strong> that if some of the keywords specified in this array are omitted in the results you receive, then our database doesn't contain such keywords and cannot return data on them<br>you will not be charged for the keywords omitted in the results<p>learn more about rules and limitations of <code>keyword</code> and <code>keywords</code> fields in DataForSEO APIs in this <a href=\"https://dataforseo.com/help-center/rules-and-limitations-of-keyword-and-keywords-fields-in-dataforseo-apis\" rel=\"noopener noreferrer\" target=\"_blank\">Help Center article</a>",
        +        "items": {
        +          "type": "string"
        +        },
        +        "type": "array"
        +      },
        +      "language_code": {
        +        "description": "<em>language code</em><br><strong>required field if you don't specify</strong> <code>language_name</code><br><strong>Note:</strong> it is required to specify either <code>language_name</code> or <code>language_code</code><br>you can receive the list of available locations with their <code>language_code</code> by making a separate request to the <br><code>https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages</code><br>example:<br><code class=\"long-string\">en</code>",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "language_name": {
        +        "description": "<em>full name of the language</em><br><strong>required field if you don't specify</strong> <code>language_code</code><br><strong>Note:</strong> it is required to specify either <code>language_name</code> or <code>language_code</code><br>you can receive the list of available locations with their <code>language_name</code> by making a separate request to the <br><code>https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages</code><br>example:<br><code class=\"long-string\">English</code>",
        +        "type": "string"
        +      },
        +      "location_code": {
        +        "description": "<em>location code</em><br><strong>required field if you don't specify</strong> <code>location_name</code><br><strong>Note:</strong> it is required to specify either <code>location_name</code> or <code>location_code</code><br>you can receive the list of available locations with their <code>location_code</code> by making a separate request to the <br><code>https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages</code><br>example:<br><code class=\"long-string\">2840</code>",
        +        "type": "integer"
        +      },
        +      "location_name": {
        +        "description": "<em>full name of the location</em><br><strong>required field if you don't specify</strong> <code>location_code</code><br><strong>Note:</strong> it is required to specify either <code>location_name</code> or <code>location_code</code><br>you can receive the list of available locations with their <code>location_name</code> by making a separate request to the <br><code>https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages</code><br>example:<br><code class=\"long-string\">United Kingdom</code>",
        +        "type": "string"
        +      },
        +      "tag": {
        +        "description": "<em>user-defined task identifier</em><br>optional field<br><em>the character limit is 255</em><br>you can use this parameter to identify the task and match it with the result<br>you will find the specified <code>tag</code> value in the <code>data</code> object of the response",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      }
        +    },
        +    "type": "object"
        +  }
        +]
    • Changedpost_dataforseo_labs_google_keyword_ideas_live2 fields changed
      • removedInput schema / properties / body / items / anyOf
        Removed value: -[
        -  {
        -    "example": [
        -      {
        -        "include_serp_info": true,
        -        "keywords": [
        -          "phone",
        -          "watch"
        -        ],
        -        "language_code": "en",
        -        "limit": 3,
        -        "location_code": 2840
        -      }
        -    ],
        -    "properties": {
        -      "closely_variants": {
        -        "description": "<em>search mode</em><br>optional field<br>if set to_<code class=\"prettyprint\">true</code> the results will be based on the phrase-match search algorithm<br>if set to <code class=\"prettyprint\">false</code> the results will be based on the broad-match search algorithm<br>default value: <code>false</code>n",
        -        "type": [
        -          "boolean",
        -          "null"
        -        ]
        -      },
        -      "filters": {
        -        "description": "<em>array of results filtering parameters</em><br>optional field<br><strong>you can add several filters at once (8 filters maximum)</strong><br>you should set a logical operator <code>and</code>, <code>or</code> between the conditions<br>the following operators are supported:<br><code>regex</code>, <code>not_regex</code>, <code>&lt;</code>, <code>&lt;=</code>, <code>&gt;</code>, <code>&gt;=</code>, <code>=</code>, <code>&lt;&gt;</code>, <code>in</code>, <code>not_in</code>, <code>match</code>, <code>not_match</code>, <code>ilike</code>, <code>not_ilike</code>, <code>like</code>, <code>not_like</code><br>you can use the <code>%</code> operator with <code>like</code> and <code>not_like</code>,as well as <code>ilike</code>, <code>not_ilike</code> to match any string of zero or more characters<br><strong>note that you can not filter the results by <code>relevance</code></strong><br>example:<br><code>[\"keyword_info.search_volume\",\"&gt;\",0]</code><p><code>[[\"keyword_info.search_volume\",\"in\",[0,1000]],<br>\"and\",<br>[\"keyword_info.competition_level\",\"=\",\"LOW\"]]</code><p><code>[[\"keyword_info.search_volume\",\"&gt;\",100],<br>\"and\",<br>[[\"keyword_info.cpc\",\"&lt;\",0.5],<br>\"or\",<p>[\"keyword_info.high_top_of_page_bid\",\"&lt;=\",0.5]]]</code><br>for more information about filters, please refer to <a href=\"/v3/dataforseo_labs/filters\" target=\"_blank\" rel=\"noopener noreferrer\">Dataforseo Labs - Filters</a> or this <a href=\"https://dataforseo.com/help-center/how-to-use-filters-in-dataforseo-labs-api\" rel=\"noopener noreferrer\" target=\"_blank\">help center guide</a>",
        -        "items": {
        -          "type": [
        -            "object",
        -            "null"
        -          ]
        -        },
        -        "type": [
        -          "array",
        -          "null"
        -        ]
        -      },
        -      "ignore_synonyms": {
        -        "description": "<em>ignore highly similar keywords</em><br>optional field<br>if set to_<code class=\"prettyprint\">true</code> only core keywords will be returned, all highly similar keywords will be excluded;  <br>default value: <code>false</code>n",
        -        "type": [
        -          "boolean",
        -          "null"
        -        ]
        -      },
        -      "include_clickstream_data": {
        -        "description": "<em>include or exclude data from clickstream-based metrics in the result</em><br>optional field<br>if the parameter is set to <code>true</code>, you will receive <code>clickstream_keyword_info</code>, <code>keyword_info_normalized_with_clickstream</code>, and <code>keyword_info_normalized_with_bing</code> fields in the response<br>default value: <code>false</code><br>with this parameter enabled, you will be charged double the price for the request<p>learn more about how clickstream-based metrics are calculated in this <a href=\"https://dataforseo.com/help-center/what-are-clickstream-based-metrics-and-how-do-we-calculate-them\" rel=\"noopener noreferrer\" target=\"_blank\">help center article</a>",
        -        "type": [
        -          "boolean",
        -          "null"
        -        ]
        -      },
        -      "include_serp_info": {
        -        "description": "<em>include data from SERP for each keyword</em><br>optional field<br>if set to <code>true</code>, we will return a <code>serp_info</code> array containing SERP data (number of search results, relevant URL, and SERP features) for every keyword in the response<br>default value: <code>false</code>",
        -        "type": [
        -          "boolean",
        -          "null"
        -        ]
        -      },
        -      "keywords": {
        -        "description": "<em>keywords</em><br><strong>required field</strong><br>UTF-8 encoding<br>The maximum number of keywords you can specify: 200.<br>The keywords will be converted to lowercase format<p>learn more about rules and limitations of <code>keyword</code> and <code>keywords</code> fields in DataForSEO APIs in this <a href=\"https://dataforseo.com/help-center/rules-and-limitations-of-keyword-and-keywords-fields-in-dataforseo-apis\" rel=\"noopener noreferrer\" target=\"_blank\">Help Center article</a>",
        -        "items": {
        -          "type": "string"
        -        },
        -        "type": "array"
        -      },
        -      "language_code": {
        -        "description": "<em>language code</em><br>optional field<br>if you use this field, you don't need to specify <code>language_name</code><br>you can receive the list of available languages with their <code>language_code</code> by making a separate request to the<br><code>https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages</code><br>example:<br><code class=\"long-string\">en</code><br><strong>Note:</strong> if omitted, results default to the language with the most keyword records in the specified location;<br>refer to the <code>available_languages.keywords</code> field of the <a href=\"https://docs.dataforseo.com/v3/dataforseo_labs/locations_and_languages\" target=\"_blank\">Locations and Languages endpoint</a> to determine the default language",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      },
        -      "language_name": {
        -        "description": "<em>full name of the language</em><br>optional field<br>if you use this field, you don't need to specify <code>language_code</code><br>you can receive the list of available languages with their <code>language_name</code> by making a separate request to the<br><code>https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages</code><br>example:<br><code class=\"long-string\">English</code><br><strong>Note:</strong> if omitted, results default to the language with the most keyword records in the specified location;<br>refer to the <code>available_languages.keywords</code> field of the <a href=\"https://docs.dataforseo.com/v3/dataforseo_labs/locations_and_languages\" target=\"_blank\">Locations and Languages endpoint</a> to determine the default language",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      },
        -      "limit": {
        -        "description": "<em>the maximum number of keywords in the results array</em><br>optional field<br>default value: <code>700</code><br>maximum value: <code>1000</code>",
        -        "type": [
        -          "integer",
        -          "null"
        -        ]
        -      },
        -      "location_code": {
        -        "description": "<em>unique location identifier</em><br><strong>required field if you don't specify</strong> <code>location_name</code><br><strong>Note:</strong> it is required to specify either <code>location_name</code> or <code>location_code</code><br>you can receive the list of available locations with their <code>location_code</code> by making a separate request to the <br><code>https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages</code><br>example:<br><code class=\"long-string\">2840</code>",
        -        "type": "integer"
        -      },
        -      "location_name": {
        -        "description": "<em>full name of the location</em><br><strong>required field if you don't specify</strong> <code>location_code</code><br><strong>Note:</strong> it is required to specify either <code>location_name</code> or <code>location_code</code><br>you can receive the list of available locations with their <code>location_name</code> by making a separate request to the<br><code>https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages</code><br>example:<br><code class=\"long-string\">United Kingdom</code>",
        -        "type": "string"
        -      },
        -      "offset": {
        -        "description": "<em>offset in the results array of returned keywords</em><br>optional field<br>default value: <code>0</code><br>if you specify the <code>10</code> value, the first ten keywords in the results array will be omitted and the data will be provided for the successive keywords<br><strong>Note:</strong> we recommend using this parameter only when retrieving up to 10,000 results<br>for retrieving over 10,000 results, use the <code>offset_token</code> instead.",
        -        "type": [
        -          "integer",
        -          "null"
        -        ]
        -      },
        -      "offset_token": {
        -        "description": "<em>offset token for subsequent requests</em><br>optional field<br>provided in the identical filed of the response to each request;<br>use this parameter to avoid timeouts while trying to obtain over 10,000 results in a single request;<br>by specifying the unique <code>offset_token</code> value from the response array, you will get the subsequent results of the initial task;<br><code>offset_token</code> values are unique for each subsequent task <br><strong>Note:</strong> if the <code>offset_token</code> is specified in the request, all other parameters except <code>limit</code> will not be taken into account when processing a task.<br>learn more about this parameter on our <a href=\"https://dataforseo.com/help-center/what-is-the-difference-between-the-offset-and-offset_token-parameters#offset_token\" target=\"_blank\">Help Center</a>",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      },
        -      "order_by": {
        -        "description": "<em>results sorting rules</em><br>optional field<br>you can use the same values as in the <code>filters</code> array to sort the results<br>possible sorting types:<br><code>asc</code> - results will be sorted in the ascending order<br><code>desc</code> - results will be sorted in the descending order<br>you should use a comma to set up a sorting parameter<p>default rule:<br><code>[\"relevance,desc\"]</code><br>relevance is used as the default sorting rule to provide you with the closest keyword ideas. We recommend using this sorting rule to get highly-relevant search terms. <strong>Note</strong> that <code>relevance</code> is only our internal system identifier, so <strong>it can not be used as a filter</strong>, and you will not find this field in the <code>result</code> array. The relevance score is based on a similar principle as used in <a href=\"/v3/keywords_data/google/keywords_for_keywords/live/?php\">the Keywords For Keywords</a> endpoint.<p><strong>note that you can set no more than three sorting rules in a single request</strong><br>you should use a comma to separate several sorting rules<br>example:<br><code>[\"relevance,desc\",\"keyword_info.search_volume,desc\"]</code>",
        -        "items": {
        -          "type": "string"
        -        },
        -        "type": [
        -          "array",
        -          "null"
        -        ]
        -      },
        -      "tag": {
        -        "description": "<em>user-defined task identifier</em><br>optional field<br><em>the character limit is 255</em><br>you can use this parameter to identify the task and match it with the result<br>you will find the specified <code>tag</code> value in the <code>data</code> object of the response",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      }
        -    },
        -    "type": "object"
        -  }
        -]
      • addedInput schema / properties / body / items / oneOf
        Added value: +[
        +  {
        +    "example": [
        +      {
        +        "include_serp_info": true,
        +        "keywords": [
        +          "phone",
        +          "watch"
        +        ],
        +        "language_code": "en",
        +        "limit": 3,
        +        "location_code": 2840
        +      }
        +    ],
        +    "properties": {
        +      "closely_variants": {
        +        "description": "<em>search mode</em><br>optional field<br>if set to_<code class=\"prettyprint\">true</code> the results will be based on the phrase-match search algorithm<br>if set to <code class=\"prettyprint\">false</code> the results will be based on the broad-match search algorithm<br>default value: <code>false</code>n",
        +        "type": [
        +          "boolean",
        +          "null"
        +        ]
        +      },
        +      "filters": {
        +        "description": "<em>array of results filtering parameters</em><br>optional field<br><strong>you can add several filters at once (8 filters maximum)</strong><br>you should set a logical operator <code>and</code>, <code>or</code> between the conditions<br>the following operators are supported:<br><code>regex</code>, <code>not_regex</code>, <code>&lt;</code>, <code>&lt;=</code>, <code>&gt;</code>, <code>&gt;=</code>, <code>=</code>, <code>&lt;&gt;</code>, <code>in</code>, <code>not_in</code>, <code>match</code>, <code>not_match</code>, <code>ilike</code>, <code>not_ilike</code>, <code>like</code>, <code>not_like</code><br>you can use the <code>%</code> operator with <code>like</code> and <code>not_like</code>,as well as <code>ilike</code>, <code>not_ilike</code> to match any string of zero or more characters<br><strong>note that you can not filter the results by <code>relevance</code></strong><br>example:<br><code>[\"keyword_info.search_volume\",\"&gt;\",0]</code><p><code>[[\"keyword_info.search_volume\",\"in\",[0,1000]],<br>\"and\",<br>[\"keyword_info.competition_level\",\"=\",\"LOW\"]]</code><p><code>[[\"keyword_info.search_volume\",\"&gt;\",100],<br>\"and\",<br>[[\"keyword_info.cpc\",\"&lt;\",0.5],<br>\"or\",<p>[\"keyword_info.high_top_of_page_bid\",\"&lt;=\",0.5]]]</code><br>for more information about filters, please refer to <a href=\"/v3/dataforseo_labs/filters\" target=\"_blank\" rel=\"noopener noreferrer\">Dataforseo Labs - Filters</a> or this <a href=\"https://dataforseo.com/help-center/how-to-use-filters-in-dataforseo-labs-api\" rel=\"noopener noreferrer\" target=\"_blank\">help center guide</a>",
        +        "items": {
        +          "type": [
        +            "object",
        +            "null"
        +          ]
        +        },
        +        "type": [
        +          "array",
        +          "null"
        +        ]
        +      },
        +      "ignore_synonyms": {
        +        "description": "<em>ignore highly similar keywords</em><br>optional field<br>if set to_<code class=\"prettyprint\">true</code> only core keywords will be returned, all highly similar keywords will be excluded;  <br>default value: <code>false</code>n",
        +        "type": [
        +          "boolean",
        +          "null"
        +        ]
        +      },
        +      "include_clickstream_data": {
        +        "description": "<em>include or exclude data from clickstream-based metrics in the result</em><br>optional field<br>if the parameter is set to <code>true</code>, you will receive <code>clickstream_keyword_info</code>, <code>keyword_info_normalized_with_clickstream</code>, and <code>keyword_info_normalized_with_bing</code> fields in the response<br>default value: <code>false</code><br>with this parameter enabled, you will be charged double the price for the request<p>learn more about how clickstream-based metrics are calculated in this <a href=\"https://dataforseo.com/help-center/what-are-clickstream-based-metrics-and-how-do-we-calculate-them\" rel=\"noopener noreferrer\" target=\"_blank\">help center article</a>",
        +        "type": [
        +          "boolean",
        +          "null"
        +        ]
        +      },
        +      "include_serp_info": {
        +        "description": "<em>include data from SERP for each keyword</em><br>optional field<br>if set to <code>true</code>, we will return a <code>serp_info</code> array containing SERP data (number of search results, relevant URL, and SERP features) for every keyword in the response<br>default value: <code>false</code>",
        +        "type": [
        +          "boolean",
        +          "null"
        +        ]
        +      },
        +      "keywords": {
        +        "description": "<em>keywords</em><br><strong>required field</strong><br>UTF-8 encoding<br>The maximum number of keywords you can specify: 200.<br>The keywords will be converted to lowercase format<p>learn more about rules and limitations of <code>keyword</code> and <code>keywords</code> fields in DataForSEO APIs in this <a href=\"https://dataforseo.com/help-center/rules-and-limitations-of-keyword-and-keywords-fields-in-dataforseo-apis\" rel=\"noopener noreferrer\" target=\"_blank\">Help Center article</a>",
        +        "items": {
        +          "type": "string"
        +        },
        +        "type": "array"
        +      },
        +      "language_code": {
        +        "description": "<em>language code</em><br>optional field<br>if you use this field, you don't need to specify <code>language_name</code><br>you can receive the list of available languages with their <code>language_code</code> by making a separate request to the<br><code>https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages</code><br>example:<br><code class=\"long-string\">en</code><br><strong>Note:</strong> if omitted, results default to the language with the most keyword records in the specified location;<br>refer to the <code>available_languages.keywords</code> field of the <a href=\"https://docs.dataforseo.com/v3/dataforseo_labs/locations_and_languages\" target=\"_blank\">Locations and Languages endpoint</a> to determine the default language",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "language_name": {
        +        "description": "<em>full name of the language</em><br>optional field<br>if you use this field, you don't need to specify <code>language_code</code><br>you can receive the list of available languages with their <code>language_name</code> by making a separate request to the<br><code>https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages</code><br>example:<br><code class=\"long-string\">English</code><br><strong>Note:</strong> if omitted, results default to the language with the most keyword records in the specified location;<br>refer to the <code>available_languages.keywords</code> field of the <a href=\"https://docs.dataforseo.com/v3/dataforseo_labs/locations_and_languages\" target=\"_blank\">Locations and Languages endpoint</a> to determine the default language",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "limit": {
        +        "description": "<em>the maximum number of keywords in the results array</em><br>optional field<br>default value: <code>700</code><br>maximum value: <code>1000</code>",
        +        "type": [
        +          "integer",
        +          "null"
        +        ]
        +      },
        +      "location_code": {
        +        "description": "<em>unique location identifier</em><br><strong>required field if you don't specify</strong> <code>location_name</code><br><strong>Note:</strong> it is required to specify either <code>location_name</code> or <code>location_code</code><br>you can receive the list of available locations with their <code>location_code</code> by making a separate request to the <br><code>https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages</code><br>example:<br><code class=\"long-string\">2840</code>",
        +        "type": "integer"
        +      },
        +      "location_name": {
        +        "description": "<em>full name of the location</em><br><strong>required field if you don't specify</strong> <code>location_code</code><br><strong>Note:</strong> it is required to specify either <code>location_name</code> or <code>location_code</code><br>you can receive the list of available locations with their <code>location_name</code> by making a separate request to the<br><code>https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages</code><br>example:<br><code class=\"long-string\">United Kingdom</code>",
        +        "type": "string"
        +      },
        +      "offset": {
        +        "description": "<em>offset in the results array of returned keywords</em><br>optional field<br>default value: <code>0</code><br>if you specify the <code>10</code> value, the first ten keywords in the results array will be omitted and the data will be provided for the successive keywords<br><strong>Note:</strong> we recommend using this parameter only when retrieving up to 10,000 results<br>for retrieving over 10,000 results, use the <code>offset_token</code> instead.",
        +        "type": [
        +          "integer",
        +          "null"
        +        ]
        +      },
        +      "offset_token": {
        +        "description": "<em>offset token for subsequent requests</em><br>optional field<br>provided in the identical filed of the response to each request;<br>use this parameter to avoid timeouts while trying to obtain over 10,000 results in a single request;<br>by specifying the unique <code>offset_token</code> value from the response array, you will get the subsequent results of the initial task;<br><code>offset_token</code> values are unique for each subsequent task <br><strong>Note:</strong> if the <code>offset_token</code> is specified in the request, all other parameters except <code>limit</code> will not be taken into account when processing a task.<br>learn more about this parameter on our <a href=\"https://dataforseo.com/help-center/what-is-the-difference-between-the-offset-and-offset_token-parameters#offset_token\" target=\"_blank\">Help Center</a>",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "order_by": {
        +        "description": "<em>results sorting rules</em><br>optional field<br>you can use the same values as in the <code>filters</code> array to sort the results<br>possible sorting types:<br><code>asc</code> - results will be sorted in the ascending order<br><code>desc</code> - results will be sorted in the descending order<br>you should use a comma to set up a sorting parameter<p>default rule:<br><code>[\"relevance,desc\"]</code><br>relevance is used as the default sorting rule to provide you with the closest keyword ideas. We recommend using this sorting rule to get highly-relevant search terms. <strong>Note</strong> that <code>relevance</code> is only our internal system identifier, so <strong>it can not be used as a filter</strong>, and you will not find this field in the <code>result</code> array. The relevance score is based on a similar principle as used in <a href=\"/v3/keywords_data/google/keywords_for_keywords/live/?php\">the Keywords For Keywords</a> endpoint.<p><strong>note that you can set no more than three sorting rules in a single request</strong><br>you should use a comma to separate several sorting rules<br>example:<br><code>[\"relevance,desc\",\"keyword_info.search_volume,desc\"]</code>",
        +        "items": {
        +          "type": "string"
        +        },
        +        "type": [
        +          "array",
        +          "null"
        +        ]
        +      },
        +      "tag": {
        +        "description": "<em>user-defined task identifier</em><br>optional field<br><em>the character limit is 255</em><br>you can use this parameter to identify the task and match it with the result<br>you will find the specified <code>tag</code> value in the <code>data</code> object of the response",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      }
        +    },
        +    "type": "object"
        +  }
        +]
    • Changedpost_dataforseo_labs_google_keyword_overview_live2 fields changed
      • removedInput schema / properties / body / items / anyOf
        Removed value: -[
        -  {
        -    "example": [
        -      {
        -        "include_clickstream_data": true,
        -        "include_serp_info": true,
        -        "keywords": [
        -          "iphone"
        -        ],
        -        "language_code": "en",
        -        "location_code": 2840
        -      }
        -    ],
        -    "properties": {
        -      "include_clickstream_data": {
        -        "description": "<em>include or exclude data from clickstream-based metrics in the result</em><br>optional field<br>if the parameter is set to <code>true</code>, you will receive <code>clickstream_keyword_info</code>, <code>keyword_info_normalized_with_clickstream</code>, and <code>keyword_info_normalized_with_bing</code> fields in the response<br>default value: <code>false</code><br>with this parameter enabled, you will be charged double the price for the request<p>learn more about how clickstream-based metrics are calculated in this <a href=\"https://dataforseo.com/help-center/what-are-clickstream-based-metrics-and-how-do-we-calculate-them\" rel=\"noopener noreferrer\" target=\"_blank\">help center article</a>",
        -        "type": [
        -          "boolean",
        -          "null"
        -        ]
        -      },
        -      "include_serp_info": {
        -        "description": "<em>include data from SERP for each keyword</em><br>optional field<br>if set to <code>true</code>, we will return a <code>serp_info</code> array containing SERP data (number of search results, relevant URL, and SERP features) for every keyword in the response<br>default value: <code>false</code>",
        -        "type": [
        -          "boolean",
        -          "null"
        -        ]
        -      },
        -      "keywords": {
        -        "description": "<em>keywords</em><br><strong>required field</strong><br>The maximum number of keywords you can specify: 700<br>The maximum number of characters for each keyword: 80<br>The maximum number of words for each keyword phrase: 10<br>the specified keywords will be converted to lowercase format, data will be provided in a separate array<p><strong>note</strong> that if some of the keywords specified in this array are omitted in the results you receive, then our database doesn't contain such keywords and cannot return data on them<br>you will not be charged for the keywords omitted in the results<p>learn more about rules and limitations of <code>keyword</code> and <code>keywords</code> fields in DataForSEO APIs in this <a href=\"https://dataforseo.com/help-center/rules-and-limitations-of-keyword-and-keywords-fields-in-dataforseo-apis\" rel=\"noopener noreferrer\" target=\"_blank\">Help Center article</a>",
        -        "items": {
        -          "type": "string"
        -        },
        -        "type": "array"
        -      },
        -      "language_code": {
        -        "description": "<em>language code</em><br><strong>required field if you don't specify</strong> <code>language_name</code><br><strong>Note:</strong> it is required to specify either <code>language_name</code> or <code>language_code</code><br>you can receive the list of available locations with their <code>language_code</code> by making a separate request to the <br><code>https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages</code><br>example:<br><code class=\"long-string\">en</code>",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      },
        -      "language_name": {
        -        "description": "<em>full name of the language</em><br><strong>required field if you don't specify</strong> <code>language_code</code><br><strong>Note:</strong> it is required to specify either <code>language_name</code> or <code>language_code</code><br>you can receive the list of available locations with their <code>language_name</code> by making a separate request to the <br><code>https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages</code><br>example:<br><code class=\"long-string\">English</code>",
        -        "type": "string"
        -      },
        -      "location_code": {
        -        "description": "<em>location code</em><br><strong>required field if you don't specify</strong> <code>location_name</code><br><strong>Note:</strong> it is required to specify either <code>location_name</code> or <code>location_code</code><br>you can receive the list of available locations with their <code>location_code</code> by making a separate request to the <br><code>https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages</code><br>example:<br><code class=\"long-string\">2840</code>",
        -        "type": "integer"
        -      },
        -      "location_name": {
        -        "description": "<em>full name of the location</em><br><strong>required field if you don't specify</strong> <code>location_code</code><br><strong>Note:</strong> it is required to specify either <code>location_name</code> or <code>location_code</code><br>you can receive the list of available locations with their <code>location_name</code> by making a separate request to the <br><code>https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages</code><br>example:<br><code class=\"long-string\">United Kingdom</code>",
        -        "type": "string"
        -      },
        -      "tag": {
        -        "description": "<em>user-defined task identifier</em><br>optional field<br><em>the character limit is 255</em><br>you can use this parameter to identify the task and match it with the result<br>you will find the specified <code>tag</code> value in the <code>data</code> object of the response",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      }
        -    },
        -    "type": "object"
        -  }
        -]
      • addedInput schema / properties / body / items / oneOf
        Added value: +[
        +  {
        +    "example": [
        +      {
        +        "include_clickstream_data": true,
        +        "include_serp_info": true,
        +        "keywords": [
        +          "iphone"
        +        ],
        +        "language_code": "en",
        +        "location_code": 2840
        +      }
        +    ],
        +    "properties": {
        +      "include_clickstream_data": {
        +        "description": "<em>include or exclude data from clickstream-based metrics in the result</em><br>optional field<br>if the parameter is set to <code>true</code>, you will receive <code>clickstream_keyword_info</code>, <code>keyword_info_normalized_with_clickstream</code>, and <code>keyword_info_normalized_with_bing</code> fields in the response<br>default value: <code>false</code><br>with this parameter enabled, you will be charged double the price for the request<p>learn more about how clickstream-based metrics are calculated in this <a href=\"https://dataforseo.com/help-center/what-are-clickstream-based-metrics-and-how-do-we-calculate-them\" rel=\"noopener noreferrer\" target=\"_blank\">help center article</a>",
        +        "type": [
        +          "boolean",
        +          "null"
        +        ]
        +      },
        +      "include_serp_info": {
        +        "description": "<em>include data from SERP for each keyword</em><br>optional field<br>if set to <code>true</code>, we will return a <code>serp_info</code> array containing SERP data (number of search results, relevant URL, and SERP features) for every keyword in the response<br>default value: <code>false</code>",
        +        "type": [
        +          "boolean",
        +          "null"
        +        ]
        +      },
        +      "keywords": {
        +        "description": "<em>keywords</em><br><strong>required field</strong><br>The maximum number of keywords you can specify: 700<br>The maximum number of characters for each keyword: 80<br>The maximum number of words for each keyword phrase: 10<br>the specified keywords will be converted to lowercase format, data will be provided in a separate array<p><strong>note</strong> that if some of the keywords specified in this array are omitted in the results you receive, then our database doesn't contain such keywords and cannot return data on them<br>you will not be charged for the keywords omitted in the results<p>learn more about rules and limitations of <code>keyword</code> and <code>keywords</code> fields in DataForSEO APIs in this <a href=\"https://dataforseo.com/help-center/rules-and-limitations-of-keyword-and-keywords-fields-in-dataforseo-apis\" rel=\"noopener noreferrer\" target=\"_blank\">Help Center article</a>",
        +        "items": {
        +          "type": "string"
        +        },
        +        "type": "array"
        +      },
        +      "language_code": {
        +        "description": "<em>language code</em><br><strong>required field if you don't specify</strong> <code>language_name</code><br><strong>Note:</strong> it is required to specify either <code>language_name</code> or <code>language_code</code><br>you can receive the list of available locations with their <code>language_code</code> by making a separate request to the <br><code>https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages</code><br>example:<br><code class=\"long-string\">en</code>",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "language_name": {
        +        "description": "<em>full name of the language</em><br><strong>required field if you don't specify</strong> <code>language_code</code><br><strong>Note:</strong> it is required to specify either <code>language_name</code> or <code>language_code</code><br>you can receive the list of available locations with their <code>language_name</code> by making a separate request to the <br><code>https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages</code><br>example:<br><code class=\"long-string\">English</code>",
        +        "type": "string"
        +      },
        +      "location_code": {
        +        "description": "<em>location code</em><br><strong>required field if you don't specify</strong> <code>location_name</code><br><strong>Note:</strong> it is required to specify either <code>location_name</code> or <code>location_code</code><br>you can receive the list of available locations with their <code>location_code</code> by making a separate request to the <br><code>https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages</code><br>example:<br><code class=\"long-string\">2840</code>",
        +        "type": "integer"
        +      },
        +      "location_name": {
        +        "description": "<em>full name of the location</em><br><strong>required field if you don't specify</strong> <code>location_code</code><br><strong>Note:</strong> it is required to specify either <code>location_name</code> or <code>location_code</code><br>you can receive the list of available locations with their <code>location_name</code> by making a separate request to the <br><code>https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages</code><br>example:<br><code class=\"long-string\">United Kingdom</code>",
        +        "type": "string"
        +      },
        +      "tag": {
        +        "description": "<em>user-defined task identifier</em><br>optional field<br><em>the character limit is 255</em><br>you can use this parameter to identify the task and match it with the result<br>you will find the specified <code>tag</code> value in the <code>data</code> object of the response",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      }
        +    },
        +    "type": "object"
        +  }
        +]
    • Changedpost_dataforseo_labs_google_keyword_suggestions_live2 fields changed
      • removedInput schema / properties / body / items / anyOf
        Removed value: -[
        -  {
        -    "example": [
        -      {
        -        "include_seed_keyword": true,
        -        "include_serp_info": true,
        -        "keyword": "phone",
        -        "language_code": "en",
        -        "limit": 1,
        -        "location_code": 2840
        -      }
        -    ],
        -    "properties": {
        -      "exact_match": {
        -        "description": "<em>search for the exact phrase</em><br>optional field<br>if set to <code>true</code>, the returned keywords will include the exact keyword phrase you specified, with potentially other words before or after that phrase<br>default value: <code>false</code>",
        -        "type": [
        -          "boolean",
        -          "null"
        -        ]
        -      },
        -      "filters": {
        -        "description": "<em>array of results filtering parameters</em><br>optional field<br><strong>you can add several filters at once (8 filters maximum)</strong><br>you should set a logical operator <code>and</code>, <code>or</code> between the conditions<br>the following operators are supported:<br><code>regex</code>, <code>not_regex</code>, <code>&lt;</code>, <code>&lt;=</code>, <code>&gt;</code>, <code>&gt;=</code>, <code>=</code>, <code>&lt;&gt;</code>, <code>in</code>, <code>not_in</code>, <code>match</code>, <code>not_match</code>, <code>ilike</code>, <code>not_ilike</code>, <code>like</code>, <code>not_like</code><br>you can use the <code>%</code> operator with <code>like</code> and <code>not_like</code>, as well as <code>ilike</code> and <code>not_ilike</code> to match any string of zero or more characters<br>example:<br><code>[\"keyword_info.search_volume\",\"&gt;\",0]</code><br><code>[[\"keyword_info.search_volume\",\"in\",[0,1000]],<br>\"and\",<br>[\"keyword_info.competition_level\",\"=\",\"LOW\"]]</code><code>[[\"keyword_info.search_volume\",\"&gt;\",100],<br>\"and\",<br>[[\"keyword_info.cpc\",\"&lt;\",0.5],<br>\"or\",<br>[\"keyword_info.high_top_of_page_bid\",\"&lt;=\",0.5]]]</code><br>for more information about filters, please refer to <a href=\"/v3/dataforseo_labs/filters\" target=\"_blank\" rel=\"noopener noreferrer\">Dataforseo Labs - Filters</a> or this <a href=\"https://dataforseo.com/help-center/how-to-use-filters-in-dataforseo-labs-api\" target=\"_blank\" rel=\"noopener noreferrer\">help center guide</a>",
        -        "items": {
        -          "type": [
        -            "object",
        -            "null"
        -          ]
        -        },
        -        "type": [
        -          "array",
        -          "null"
        -        ]
        -      },
        -      "ignore_synonyms": {
        -        "description": "<em>ignore highly similar keywords</em><br>optional field<br>if set to <code class=\"prettyprint\">true</code> only core keywords will be returned, all highly similar keywords will be excluded;<br>default value: <code>false</code>",
        -        "type": [
        -          "boolean",
        -          "null"
        -        ]
        -      },
        -      "include_clickstream_data": {
        -        "description": "<em>include or exclude data from clickstream-based metrics in the result</em><br>optional field<br>if the parameter is set to <code>true</code>, you will receive <code>clickstream_keyword_info</code>, <code>keyword_info_normalized_with_clickstream</code>, and <code>keyword_info_normalized_with_bing</code> fields in the response<br>default value: <code>false</code><br>with this parameter enabled, you will be charged double the price for the request<p>learn more about how clickstream-based metrics are calculated in this <a href=\"https://dataforseo.com/help-center/what-are-clickstream-based-metrics-and-how-do-we-calculate-them\" rel=\"noopener noreferrer\" target=\"_blank\">help center article</a>",
        -        "type": [
        -          "boolean",
        -          "null"
        -        ]
        -      },
        -      "include_seed_keyword": {
        -        "description": "<em>include data for the seed keyword</em><br>optional field<br>if set to <code>true</code>, data for the seed keyword specified in the <code>keyword</code> field will be provided in the <code>seed_keyword_data</code> array of the response<br>default value: <code>false</code>",
        -        "type": [
        -          "boolean",
        -          "null"
        -        ]
        -      },
        -      "include_serp_info": {
        -        "description": "<em>include data from SERP for each keyword</em><br>optional field<br>if set to <code>true</code>, we will return a <code>serp_info</code> array containing SERP data (number of search results, relevant URL, and SERP features) for every keyword in the response<br>default value: <code>false</code>",
        -        "type": [
        -          "boolean",
        -          "null"
        -        ]
        -      },
        -      "keyword": {
        -        "description": "<em>keyword</em><br><strong>required field</strong><br>UTF-8 encoding<br>the keywords will be converted to lowercase format;<p>learn more about rules and limitations of <code>keyword</code> and <code>keywords</code> fields in DataForSEO APIs in this <a href=\"https://dataforseo.com/help-center/rules-and-limitations-of-keyword-and-keywords-fields-in-dataforseo-apis\" rel=\"noopener noreferrer\" target=\"_blank\">Help Center article</a>",
        -        "type": "string"
        -      },
        -      "language_code": {
        -        "description": "<em>language code</em><br>optional field<br>if you use this field, you don't need to specify <code>language_name</code><br>you can receive the list of available languages with their <code>language_code</code> by making a separate request to the<br><code>https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages</code><br>example:<br><code class=\"long-string\">en</code><br><strong>Note:</strong> if omitted, results default to the language with the most keyword records in the specified location;<br>refer to the <code>available_languages.keywords</code> field of the <a href=\"https://docs.dataforseo.com/v3/dataforseo_labs/locations_and_languages\" target=\"_blank\">Locations and Languages endpoint</a> to determine the default language",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      },
        -      "language_name": {
        -        "description": "<em>full name of the language</em><br>optional field<br>if you use this field, you don't need to specify <code>language_code</code><br>you can receive the list of available languages with their <code>language_name</code> by making a separate request to the<br><code>https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages</code><br>example:<br><code class=\"long-string\">English</code><br><strong>Note:</strong> if omitted, results default to the language with the most keyword records in the specified location;<br>refer to the <code>available_languages.keywords</code> field of the <a href=\"https://docs.dataforseo.com/v3/dataforseo_labs/locations_and_languages\" target=\"_blank\">Locations and Languages endpoint</a> to determine the default language",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      },
        -      "limit": {
        -        "description": "<em>the maximum number of returned keywords</em><br>optional field<br>default value: <code>100</code><br>maximum value: <code>1000</code>",
        -        "type": [
        -          "integer",
        -          "null"
        -        ]
        -      },
        -      "location_code": {
        -        "description": "<em>location code</em><br>optional field<br>if you use this field, you don't need to specify <code>location_name</code><br>you can receive the list of available locations with their <code>location_code</code> by making a separate request to the<br><code>https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages</code><br>ignore this field to get the results for all available locations<br>example:<br><code class=\"long-string\">2840</code>",
        -        "type": [
        -          "integer",
        -          "null"
        -        ]
        -      },
        -      "location_name": {
        -        "description": "<em>full name of the location</em><br>optional field<br>if you use this field, you don't need to specify <code>location_code</code><br>you can receive the list of available locations with their <code>location_name</code> by making a separate request to the<br><code>https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages</code><br>ignore this field to get the results for all available locations<br>example:<br><code class=\"long-string\">United Kingdom</code>",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      },
        -      "offset": {
        -        "description": "<em>offset in the results array of returned keywords</em><br>optional field<br>default value: <code>0</code><br>if you specify the <code>10</code> value, the first ten keywords in the results array will be omitted and the data will be provided for the successive keywords<br><strong>Note:</strong> we recommend using this parameter only when retrieving up to 10,000 results<br>for retrieving over 10,000 results, use the <code>offset_token</code> instead.",
        -        "type": [
        -          "integer",
        -          "null"
        -        ]
        -      },
        -      "offset_token": {
        -        "description": "<em>offset token for subsequent requests</em><br>optional field<br>provided in the identical filed of the response to each request;<br>use this parameter to avoid timeouts while trying to obtain over 10,000 results in a single request;<br>by specifying the unique <code>offset_token</code> value from the response array, you will get the subsequent results of the initial task;<br><code>offset_token</code> values are unique for each subsequent task<br><strong>Note:</strong> if the <code>offset_token</code> is specified in the request, all other parameters except <code>limit</code> will not be taken into account when processing a task.<br>learn more about this parameter on our <a href=\"https://dataforseo.com/help-center/what-is-the-difference-between-the-offset-and-offset_token-parameters#offset_token\" target=\"_blank\">Help Center</a>",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      },
        -      "order_by": {
        -        "description": "<em>results sorting rules</em><br>optional field<br>you can use the same values as in the <code>filters</code> array to sort the results<br>possible sorting types:<br><code>asc</code> - results will be sorted in the ascending order<br><code>desc</code> - results will be sorted in the descending order<br>a comma is used as a separator<br>example:<br><code>[\"keyword_info.competition,desc\"]</code><br>default rule:<br><code>[\"keyword_info.search_volume,desc\"]</code><br><strong>note that you can set no more than three sorting rules in a single request</strong><br>you should use a comma to separate several sorting rules<br>example:<br><code>[\"keyword_info.search_volume,desc\",\"keyword_info.cpc,desc\"]</code>",
        -        "items": {
        -          "type": "string"
        -        },
        -        "type": [
        -          "array",
        -          "null"
        -        ]
        -      },
        -      "tag": {
        -        "description": "<em>user-defined task identifier</em><br>optional field<br><em>the character limit is 255</em><br>you can use this parameter to identify the task and match it with the result<br>you will find the specified <code>tag</code> value in the <code>data</code> object of the response",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      }
        -    },
        -    "type": "object"
        -  }
        -]
      • addedInput schema / properties / body / items / oneOf
        Added value: +[
        +  {
        +    "example": [
        +      {
        +        "include_seed_keyword": true,
        +        "include_serp_info": true,
        +        "keyword": "phone",
        +        "language_code": "en",
        +        "limit": 1,
        +        "location_code": 2840
        +      }
        +    ],
        +    "properties": {
        +      "exact_match": {
        +        "description": "<em>search for the exact phrase</em><br>optional field<br>if set to <code>true</code>, the returned keywords will include the exact keyword phrase you specified, with potentially other words before or after that phrase<br>default value: <code>false</code>",
        +        "type": [
        +          "boolean",
        +          "null"
        +        ]
        +      },
        +      "filters": {
        +        "description": "<em>array of results filtering parameters</em><br>optional field<br><strong>you can add several filters at once (8 filters maximum)</strong><br>you should set a logical operator <code>and</code>, <code>or</code> between the conditions<br>the following operators are supported:<br><code>regex</code>, <code>not_regex</code>, <code>&lt;</code>, <code>&lt;=</code>, <code>&gt;</code>, <code>&gt;=</code>, <code>=</code>, <code>&lt;&gt;</code>, <code>in</code>, <code>not_in</code>, <code>match</code>, <code>not_match</code>, <code>ilike</code>, <code>not_ilike</code>, <code>like</code>, <code>not_like</code><br>you can use the <code>%</code> operator with <code>like</code> and <code>not_like</code>, as well as <code>ilike</code> and <code>not_ilike</code> to match any string of zero or more characters<br>example:<br><code>[\"keyword_info.search_volume\",\"&gt;\",0]</code><br><code>[[\"keyword_info.search_volume\",\"in\",[0,1000]],<br>\"and\",<br>[\"keyword_info.competition_level\",\"=\",\"LOW\"]]</code><code>[[\"keyword_info.search_volume\",\"&gt;\",100],<br>\"and\",<br>[[\"keyword_info.cpc\",\"&lt;\",0.5],<br>\"or\",<br>[\"keyword_info.high_top_of_page_bid\",\"&lt;=\",0.5]]]</code><br>for more information about filters, please refer to <a href=\"/v3/dataforseo_labs/filters\" target=\"_blank\" rel=\"noopener noreferrer\">Dataforseo Labs - Filters</a> or this <a href=\"https://dataforseo.com/help-center/how-to-use-filters-in-dataforseo-labs-api\" target=\"_blank\" rel=\"noopener noreferrer\">help center guide</a>",
        +        "items": {
        +          "type": [
        +            "object",
        +            "null"
        +          ]
        +        },
        +        "type": [
        +          "array",
        +          "null"
        +        ]
        +      },
        +      "ignore_synonyms": {
        +        "description": "<em>ignore highly similar keywords</em><br>optional field<br>if set to <code class=\"prettyprint\">true</code> only core keywords will be returned, all highly similar keywords will be excluded;<br>default value: <code>false</code>",
        +        "type": [
        +          "boolean",
        +          "null"
        +        ]
        +      },
        +      "include_clickstream_data": {
        +        "description": "<em>include or exclude data from clickstream-based metrics in the result</em><br>optional field<br>if the parameter is set to <code>true</code>, you will receive <code>clickstream_keyword_info</code>, <code>keyword_info_normalized_with_clickstream</code>, and <code>keyword_info_normalized_with_bing</code> fields in the response<br>default value: <code>false</code><br>with this parameter enabled, you will be charged double the price for the request<p>learn more about how clickstream-based metrics are calculated in this <a href=\"https://dataforseo.com/help-center/what-are-clickstream-based-metrics-and-how-do-we-calculate-them\" rel=\"noopener noreferrer\" target=\"_blank\">help center article</a>",
        +        "type": [
        +          "boolean",
        +          "null"
        +        ]
        +      },
        +      "include_seed_keyword": {
        +        "description": "<em>include data for the seed keyword</em><br>optional field<br>if set to <code>true</code>, data for the seed keyword specified in the <code>keyword</code> field will be provided in the <code>seed_keyword_data</code> array of the response<br>default value: <code>false</code>",
        +        "type": [
        +          "boolean",
        +          "null"
        +        ]
        +      },
        +      "include_serp_info": {
        +        "description": "<em>include data from SERP for each keyword</em><br>optional field<br>if set to <code>true</code>, we will return a <code>serp_info</code> array containing SERP data (number of search results, relevant URL, and SERP features) for every keyword in the response<br>default value: <code>false</code>",
        +        "type": [
        +          "boolean",
        +          "null"
        +        ]
        +      },
        +      "keyword": {
        +        "description": "<em>keyword</em><br><strong>required field</strong><br>UTF-8 encoding<br>the keywords will be converted to lowercase format;<p>learn more about rules and limitations of <code>keyword</code> and <code>keywords</code> fields in DataForSEO APIs in this <a href=\"https://dataforseo.com/help-center/rules-and-limitations-of-keyword-and-keywords-fields-in-dataforseo-apis\" rel=\"noopener noreferrer\" target=\"_blank\">Help Center article</a>",
        +        "type": "string"
        +      },
        +      "language_code": {
        +        "description": "<em>language code</em><br>optional field<br>if you use this field, you don't need to specify <code>language_name</code><br>you can receive the list of available languages with their <code>language_code</code> by making a separate request to the<br><code>https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages</code><br>example:<br><code class=\"long-string\">en</code><br><strong>Note:</strong> if omitted, results default to the language with the most keyword records in the specified location;<br>refer to the <code>available_languages.keywords</code> field of the <a href=\"https://docs.dataforseo.com/v3/dataforseo_labs/locations_and_languages\" target=\"_blank\">Locations and Languages endpoint</a> to determine the default language",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "language_name": {
        +        "description": "<em>full name of the language</em><br>optional field<br>if you use this field, you don't need to specify <code>language_code</code><br>you can receive the list of available languages with their <code>language_name</code> by making a separate request to the<br><code>https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages</code><br>example:<br><code class=\"long-string\">English</code><br><strong>Note:</strong> if omitted, results default to the language with the most keyword records in the specified location;<br>refer to the <code>available_languages.keywords</code> field of the <a href=\"https://docs.dataforseo.com/v3/dataforseo_labs/locations_and_languages\" target=\"_blank\">Locations and Languages endpoint</a> to determine the default language",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "limit": {
        +        "description": "<em>the maximum number of returned keywords</em><br>optional field<br>default value: <code>100</code><br>maximum value: <code>1000</code>",
        +        "type": [
        +          "integer",
        +          "null"
        +        ]
        +      },
        +      "location_code": {
        +        "description": "<em>location code</em><br>optional field<br>if you use this field, you don't need to specify <code>location_name</code><br>you can receive the list of available locations with their <code>location_code</code> by making a separate request to the<br><code>https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages</code><br>ignore this field to get the results for all available locations<br>example:<br><code class=\"long-string\">2840</code>",
        +        "type": [
        +          "integer",
        +          "null"
        +        ]
        +      },
        +      "location_name": {
        +        "description": "<em>full name of the location</em><br>optional field<br>if you use this field, you don't need to specify <code>location_code</code><br>you can receive the list of available locations with their <code>location_name</code> by making a separate request to the<br><code>https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages</code><br>ignore this field to get the results for all available locations<br>example:<br><code class=\"long-string\">United Kingdom</code>",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "offset": {
        +        "description": "<em>offset in the results array of returned keywords</em><br>optional field<br>default value: <code>0</code><br>if you specify the <code>10</code> value, the first ten keywords in the results array will be omitted and the data will be provided for the successive keywords<br><strong>Note:</strong> we recommend using this parameter only when retrieving up to 10,000 results<br>for retrieving over 10,000 results, use the <code>offset_token</code> instead.",
        +        "type": [
        +          "integer",
        +          "null"
        +        ]
        +      },
        +      "offset_token": {
        +        "description": "<em>offset token for subsequent requests</em><br>optional field<br>provided in the identical filed of the response to each request;<br>use this parameter to avoid timeouts while trying to obtain over 10,000 results in a single request;<br>by specifying the unique <code>offset_token</code> value from the response array, you will get the subsequent results of the initial task;<br><code>offset_token</code> values are unique for each subsequent task<br><strong>Note:</strong> if the <code>offset_token</code> is specified in the request, all other parameters except <code>limit</code> will not be taken into account when processing a task.<br>learn more about this parameter on our <a href=\"https://dataforseo.com/help-center/what-is-the-difference-between-the-offset-and-offset_token-parameters#offset_token\" target=\"_blank\">Help Center</a>",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "order_by": {
        +        "description": "<em>results sorting rules</em><br>optional field<br>you can use the same values as in the <code>filters</code> array to sort the results<br>possible sorting types:<br><code>asc</code> - results will be sorted in the ascending order<br><code>desc</code> - results will be sorted in the descending order<br>a comma is used as a separator<br>example:<br><code>[\"keyword_info.competition,desc\"]</code><br>default rule:<br><code>[\"keyword_info.search_volume,desc\"]</code><br><strong>note that you can set no more than three sorting rules in a single request</strong><br>you should use a comma to separate several sorting rules<br>example:<br><code>[\"keyword_info.search_volume,desc\",\"keyword_info.cpc,desc\"]</code>",
        +        "items": {
        +          "type": "string"
        +        },
        +        "type": [
        +          "array",
        +          "null"
        +        ]
        +      },
        +      "tag": {
        +        "description": "<em>user-defined task identifier</em><br>optional field<br><em>the character limit is 255</em><br>you can use this parameter to identify the task and match it with the result<br>you will find the specified <code>tag</code> value in the <code>data</code> object of the response",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      }
        +    },
        +    "type": "object"
        +  }
        +]
    • Changedpost_dataforseo_labs_google_keywords_for_categories_live2 fields changed
      • removedInput schema / properties / body / items / anyOf
        Removed value: -[
        -  {
        -    "example": [
        -      {
        -        "category_codes": [
        -          "12191",
        -          "12193"
        -        ],
        -        "include_serp_info": true,
        -        "language_name": "English",
        -        "limit": 3,
        -        "location_code": 2840
        -      }
        -    ],
        -    "properties": {
        -      "category_codes": {
        -        "description": "<em>product and service categories</em><br><strong>required field</strong><br>The maximum number of categories you can specify: 20<br>you can download <a href=\"https://cdn.dataforseo.com/v3/categories/categories_dataforseo_labs_2023_10_25.csv\">the full list of possible categories</a>",
        -        "items": {
        -          "type": "string"
        -        },
        -        "type": "array"
        -      },
        -      "category_intersection": {
        -        "description": "<em>category intersections</em><br>optional field<br>if set to <code class=\"prettyprint\">true</code>, you will get keywords featured in all specified categories;<br>if set to <code class=\"prettyprint\">false</code>, you will keywords that are specified in any of the specified categories;<br>default value: <code>true</code>",
        -        "type": [
        -          "boolean",
        -          "null"
        -        ]
        -      },
        -      "filters": {
        -        "description": "<em>array of results filtering parameters</em><br>optional field<br><strong>you can add several filters at once (8 filters maximum)</strong><br>you should set a logical operator <code>and</code>, <code>or</code> between the conditions<br>the following operators are supported:<br><code>regex</code>, <code>not_regex</code>, <code>&lt;</code>, <code>&lt;=</code>, <code>&gt;</code>, <code>&gt;=</code>, <code>=</code>, <code>&lt;&gt;</code>, <code>in</code>, <code>not_in</code>, <code>match</code>, <code>not_match</code>, <code>ilike</code>, <code>not_ilike</code>, <code>like</code>, <code>not_like</code><br>you can use the <code>%</code> operator with <code>like</code> and <code>not_like</code>,as well as <code>ilike</code>, <code>not_ilike</code> to match any string of zero or more characters<br>example:<br><code>[\"keyword_info.search_volume\",\"&gt;\",0]</code><br><code>[[\"keyword_info.search_volume\",\"in\",[0,1000]],<br>\"and\",<br>[\"keyword_info.competition_level\",\"=\",\"LOW\"]]</code><p><code>[[\"keyword_info.search_volume\",\"&gt;\",100],<br>\"and\",<br>[[\"keyword_info.cpc\",\"&lt;\",0.5],<br>\"or\",<br>[\"keyword_info.high_top_of_page_bid\",\"&lt;=\",0.5]]]</code><br>for more information about filters, please refer to <a href=\"/v3/dataforseo_labs/filters\" target=\"_blank\" rel=\"noopener noreferrer\">Dataforseo Labs - Filters</a> or this <a href=\"https://dataforseo.com/help-center/how-to-use-filters-in-dataforseo-labs-api\" target=\"_blank\" rel=\"noopener noreferrer\">help center guide</a>",
        -        "items": {
        -          "type": [
        -            "object",
        -            "null"
        -          ]
        -        },
        -        "type": [
        -          "array",
        -          "null"
        -        ]
        -      },
        -      "ignore_synonyms": {
        -        "description": "<em>ignore highly similar keywords</em><br>optional field<br>if set to <code class=\"prettyprint\">true</code> only core keywords will be returned, all highly similar keywords will be excluded;<br>default value: <code>false</code>",
        -        "type": [
        -          "boolean",
        -          "null"
        -        ]
        -      },
        -      "include_clickstream_data": {
        -        "description": "<em>include or exclude data from clickstream-based metrics in the result</em><br>optional field<br>if the parameter is set to <code>true</code>, you will receive <code>clickstream_keyword_info</code>, <code>keyword_info_normalized_with_clickstream</code>, and <code>keyword_info_normalized_with_bing</code> fields in the response<br>default value: <code>false</code><br>with this parameter enabled, you will be charged double the price for the request<p>learn more about how clickstream-based metrics are calculated in this <a href=\"https://dataforseo.com/help-center/what-are-clickstream-based-metrics-and-how-do-we-calculate-them\" rel=\"noopener noreferrer\" target=\"_blank\">help center article</a>",
        -        "type": [
        -          "boolean",
        -          "null"
        -        ]
        -      },
        -      "include_serp_info": {
        -        "description": "<em>include data from SERP for each keyword</em><br>optional field<br>if set to <code>true</code>, we will return a <code>serp_info</code> array containing SERP data (number of search results, relevant URL, and SERP features) for every keyword in the response<br>default value: <code>false</code>",
        -        "type": [
        -          "boolean",
        -          "null"
        -        ]
        -      },
        -      "language_code": {
        -        "description": "<em>unique language identifier</em><br><strong>required field if you don't specify</strong> <code>language_name</code><br><strong>Note:</strong> it is required to specify either <code>language_name</code> or <code>language_code</code><br>you can receive the list of available languages with their <code>language_code</code> by making a separate request to the<br><code>https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages</code><br>example:<br><code class=\"long-string\">en</code>",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      },
        -      "language_name": {
        -        "description": "<em>full name of the language</em><br><strong>required field if you don't specify</strong> <code>language_code</code><br><strong>Note:</strong> it is required to specify either <code>language_name</code> or <code>language_code</code><br>you can receive the list of available languages with their <code>language_name</code> by making a separate request to the<br><code>https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages</code><br>example:<br><code class=\"long-string\">English</code>",
        -        "type": "string"
        -      },
        -      "limit": {
        -        "description": "<em>the maximum number of keywords in the results array</em><br>optional field<br>default value: <code>100</code><br>maximum value: <code>1000</code>",
        -        "type": [
        -          "integer",
        -          "null"
        -        ]
        -      },
        -      "location_code": {
        -        "description": "<em>unique location identifier</em><br><strong>required field if you don't specify</strong> <code>location_name</code><br><strong>Note:</strong> it is required to specify either <code>location_name</code> or <code>location_code</code><br>you can receive the list of available locations with their <code>location_code</code> by making a separate request to the<br><code>https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages</code><br>example:<br><code class=\"long-string\">2840</code>",
        -        "type": "integer"
        -      },
        -      "location_name": {
        -        "description": "<em>full name of the location</em><br><strong>required field if you don't specify</strong> <code>location_code</code><br><strong>Note:</strong> it is required to specify either <code>location_name</code> or <code>location_code</code><br>you can receive the list of available locations with their <code>location_name</code> by making a separate request to the<br><code>https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages</code><br>example:<br><code class=\"long-string\">United Kingdom</code>",
        -        "type": "string"
        -      },
        -      "offset": {
        -        "description": "<em>offset in the results array of returned keywords</em><br>optional field<br>default value: <code>0</code><br>if you specify the <code>10</code> value, the first ten keywords in the results array will be omitted and the data will be provided for the successive keywords<br><strong>Note:</strong> we recommend using this parameter only when retrieving up to 10,000 results<br>for retrieving over 10,000 results, use the <code>offset_token</code> instead.",
        -        "type": [
        -          "integer",
        -          "null"
        -        ]
        -      },
        -      "offset_token": {
        -        "description": "<em>offset token for subsequent requests</em><br>optional field<br>provided in the identical filed of the response to each request;<br>use this parameter to avoid timeouts while trying to obtain over 10,000 results in a single request;<br>by specifying the unique <code>offset_token</code> value from the response array, you will get the subsequent results of the initial task;<br><code>offset_token</code> values are unique for each subsequent task<br><strong>Note:</strong> if the <code>offset_token</code> is specified in the request, all other parameters except <code>limit</code> will not be taken into account when processing a task.<br>learn more about this parameter on our <a href=\"https://dataforseo.com/help-center/what-is-the-difference-between-the-offset-and-offset_token-parameters#offset_token\" target=\"_blank\">Help Center</a>",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      },
        -      "order_by": {
        -        "description": "<em>results sorting rules</em><br>optional field<br>you can use the same values as in the <code>filters</code> array to sort the results<br>possible sorting types:<br><code>asc</code> - results will be sorted in the ascending order<br><code>desc</code> - results will be sorted in the descending order<br>you should use a comma to set up a sorting type<br>example:<br><code>[\"keyword_info.competition,desc\"]</code><br>default rule:<br><code>[\"keyword_info.search_volume,desc\"]</code><br><strong>note that you can set no more than three sorting rules in a single request</strong><br>you should use a comma to separate several sorting rules<br>example:<br><code>[\"keyword_info.search_volume,desc\",\"keyword_info.competition,asc\"]</code>",
        -        "items": {
        -          "type": "string"
        -        },
        -        "type": [
        -          "array",
        -          "null"
        -        ]
        -      },
        -      "tag": {
        -        "description": "<em>user-defined task identifier</em><br>optional field<br><em>the character limit is 255</em><br>you can use this parameter to identify the task and match it with the result<br>you will find the specified <code>tag</code> value in the <code>data</code> object of the response",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      }
        -    },
        -    "type": "object"
        -  }
        -]
      • addedInput schema / properties / body / items / oneOf
        Added value: +[
        +  {
        +    "example": [
        +      {
        +        "category_codes": [
        +          "12191",
        +          "12193"
        +        ],
        +        "include_serp_info": true,
        +        "language_name": "English",
        +        "limit": 3,
        +        "location_code": 2840
        +      }
        +    ],
        +    "properties": {
        +      "category_codes": {
        +        "description": "<em>product and service categories</em><br><strong>required field</strong><br>The maximum number of categories you can specify: 20<br>you can download <a href=\"https://cdn.dataforseo.com/v3/categories/categories_dataforseo_labs_2023_10_25.csv\">the full list of possible categories</a>",
        +        "items": {
        +          "type": "string"
        +        },
        +        "type": "array"
        +      },
        +      "category_intersection": {
        +        "description": "<em>category intersections</em><br>optional field<br>if set to <code class=\"prettyprint\">true</code>, you will get keywords featured in all specified categories;<br>if set to <code class=\"prettyprint\">false</code>, you will keywords that are specified in any of the specified categories;<br>default value: <code>true</code>",
        +        "type": [
        +          "boolean",
        +          "null"
        +        ]
        +      },
        +      "filters": {
        +        "description": "<em>array of results filtering parameters</em><br>optional field<br><strong>you can add several filters at once (8 filters maximum)</strong><br>you should set a logical operator <code>and</code>, <code>or</code> between the conditions<br>the following operators are supported:<br><code>regex</code>, <code>not_regex</code>, <code>&lt;</code>, <code>&lt;=</code>, <code>&gt;</code>, <code>&gt;=</code>, <code>=</code>, <code>&lt;&gt;</code>, <code>in</code>, <code>not_in</code>, <code>match</code>, <code>not_match</code>, <code>ilike</code>, <code>not_ilike</code>, <code>like</code>, <code>not_like</code><br>you can use the <code>%</code> operator with <code>like</code> and <code>not_like</code>,as well as <code>ilike</code>, <code>not_ilike</code> to match any string of zero or more characters<br>example:<br><code>[\"keyword_info.search_volume\",\"&gt;\",0]</code><br><code>[[\"keyword_info.search_volume\",\"in\",[0,1000]],<br>\"and\",<br>[\"keyword_info.competition_level\",\"=\",\"LOW\"]]</code><p><code>[[\"keyword_info.search_volume\",\"&gt;\",100],<br>\"and\",<br>[[\"keyword_info.cpc\",\"&lt;\",0.5],<br>\"or\",<br>[\"keyword_info.high_top_of_page_bid\",\"&lt;=\",0.5]]]</code><br>for more information about filters, please refer to <a href=\"/v3/dataforseo_labs/filters\" target=\"_blank\" rel=\"noopener noreferrer\">Dataforseo Labs - Filters</a> or this <a href=\"https://dataforseo.com/help-center/how-to-use-filters-in-dataforseo-labs-api\" target=\"_blank\" rel=\"noopener noreferrer\">help center guide</a>",
        +        "items": {
        +          "type": [
        +            "object",
        +            "null"
        +          ]
        +        },
        +        "type": [
        +          "array",
        +          "null"
        +        ]
        +      },
        +      "ignore_synonyms": {
        +        "description": "<em>ignore highly similar keywords</em><br>optional field<br>if set to <code class=\"prettyprint\">true</code> only core keywords will be returned, all highly similar keywords will be excluded;<br>default value: <code>false</code>",
        +        "type": [
        +          "boolean",
        +          "null"
        +        ]
        +      },
        +      "include_clickstream_data": {
        +        "description": "<em>include or exclude data from clickstream-based metrics in the result</em><br>optional field<br>if the parameter is set to <code>true</code>, you will receive <code>clickstream_keyword_info</code>, <code>keyword_info_normalized_with_clickstream</code>, and <code>keyword_info_normalized_with_bing</code> fields in the response<br>default value: <code>false</code><br>with this parameter enabled, you will be charged double the price for the request<p>learn more about how clickstream-based metrics are calculated in this <a href=\"https://dataforseo.com/help-center/what-are-clickstream-based-metrics-and-how-do-we-calculate-them\" rel=\"noopener noreferrer\" target=\"_blank\">help center article</a>",
        +        "type": [
        +          "boolean",
        +          "null"
        +        ]
        +      },
        +      "include_serp_info": {
        +        "description": "<em>include data from SERP for each keyword</em><br>optional field<br>if set to <code>true</code>, we will return a <code>serp_info</code> array containing SERP data (number of search results, relevant URL, and SERP features) for every keyword in the response<br>default value: <code>false</code>",
        +        "type": [
        +          "boolean",
        +          "null"
        +        ]
        +      },
        +      "language_code": {
        +        "description": "<em>unique language identifier</em><br><strong>required field if you don't specify</strong> <code>language_name</code><br><strong>Note:</strong> it is required to specify either <code>language_name</code> or <code>language_code</code><br>you can receive the list of available languages with their <code>language_code</code> by making a separate request to the<br><code>https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages</code><br>example:<br><code class=\"long-string\">en</code>",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "language_name": {
        +        "description": "<em>full name of the language</em><br><strong>required field if you don't specify</strong> <code>language_code</code><br><strong>Note:</strong> it is required to specify either <code>language_name</code> or <code>language_code</code><br>you can receive the list of available languages with their <code>language_name</code> by making a separate request to the<br><code>https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages</code><br>example:<br><code class=\"long-string\">English</code>",
        +        "type": "string"
        +      },
        +      "limit": {
        +        "description": "<em>the maximum number of keywords in the results array</em><br>optional field<br>default value: <code>100</code><br>maximum value: <code>1000</code>",
        +        "type": [
        +          "integer",
        +          "null"
        +        ]
        +      },
        +      "location_code": {
        +        "description": "<em>unique location identifier</em><br><strong>required field if you don't specify</strong> <code>location_name</code><br><strong>Note:</strong> it is required to specify either <code>location_name</code> or <code>location_code</code><br>you can receive the list of available locations with their <code>location_code</code> by making a separate request to the<br><code>https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages</code><br>example:<br><code class=\"long-string\">2840</code>",
        +        "type": "integer"
        +      },
        +      "location_name": {
        +        "description": "<em>full name of the location</em><br><strong>required field if you don't specify</strong> <code>location_code</code><br><strong>Note:</strong> it is required to specify either <code>location_name</code> or <code>location_code</code><br>you can receive the list of available locations with their <code>location_name</code> by making a separate request to the<br><code>https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages</code><br>example:<br><code class=\"long-string\">United Kingdom</code>",
        +        "type": "string"
        +      },
        +      "offset": {
        +        "description": "<em>offset in the results array of returned keywords</em><br>optional field<br>default value: <code>0</code><br>if you specify the <code>10</code> value, the first ten keywords in the results array will be omitted and the data will be provided for the successive keywords<br><strong>Note:</strong> we recommend using this parameter only when retrieving up to 10,000 results<br>for retrieving over 10,000 results, use the <code>offset_token</code> instead.",
        +        "type": [
        +          "integer",
        +          "null"
        +        ]
        +      },
        +      "offset_token": {
        +        "description": "<em>offset token for subsequent requests</em><br>optional field<br>provided in the identical filed of the response to each request;<br>use this parameter to avoid timeouts while trying to obtain over 10,000 results in a single request;<br>by specifying the unique <code>offset_token</code> value from the response array, you will get the subsequent results of the initial task;<br><code>offset_token</code> values are unique for each subsequent task<br><strong>Note:</strong> if the <code>offset_token</code> is specified in the request, all other parameters except <code>limit</code> will not be taken into account when processing a task.<br>learn more about this parameter on our <a href=\"https://dataforseo.com/help-center/what-is-the-difference-between-the-offset-and-offset_token-parameters#offset_token\" target=\"_blank\">Help Center</a>",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "order_by": {
        +        "description": "<em>results sorting rules</em><br>optional field<br>you can use the same values as in the <code>filters</code> array to sort the results<br>possible sorting types:<br><code>asc</code> - results will be sorted in the ascending order<br><code>desc</code> - results will be sorted in the descending order<br>you should use a comma to set up a sorting type<br>example:<br><code>[\"keyword_info.competition,desc\"]</code><br>default rule:<br><code>[\"keyword_info.search_volume,desc\"]</code><br><strong>note that you can set no more than three sorting rules in a single request</strong><br>you should use a comma to separate several sorting rules<br>example:<br><code>[\"keyword_info.search_volume,desc\",\"keyword_info.competition,asc\"]</code>",
        +        "items": {
        +          "type": "string"
        +        },
        +        "type": [
        +          "array",
        +          "null"
        +        ]
        +      },
        +      "tag": {
        +        "description": "<em>user-defined task identifier</em><br>optional field<br><em>the character limit is 255</em><br>you can use this parameter to identify the task and match it with the result<br>you will find the specified <code>tag</code> value in the <code>data</code> object of the response",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      }
        +    },
        +    "type": "object"
        +  }
        +]
    • Changedpost_dataforseo_labs_google_related_keywords_live2 fields changed
      • removedInput schema / properties / body / items / anyOf
        Removed value: -[
        -  {
        -    "example": [
        -      {
        -        "keyword": "phone",
        -        "language_name": "English",
        -        "limit": 3,
        -        "location_code": 2840
        -      }
        -    ],
        -    "properties": {
        -      "depth": {
        -        "description": "<em>keyword search depth</em><br>optional field<br>default value: <code>1</code><p>number of the returned results depends on the value you set in this field<br>you can specify a level from 0 to 4<br>estimated number of keywords for each level (maximum):<br>0 - the keyword set in the <code>keyword</code> field<br>1 – 8 keywords<br>2 – 72 keywords<br>3 – 584 keywords<br>4 – 4680 keywords",
        -        "type": [
        -          "integer",
        -          "null"
        -        ]
        -      },
        -      "filters": {
        -        "description": "<em>array of results filtering parameters</em><br>optional field<br><strong>you can add several filters at once (8 filters maximum)</strong><br>you should set a logical operator <code>and</code>, <code>or</code> between the conditions<br>the following operators are supported:<br><code>regex</code>, <code>not_regex</code>, <code>&lt;</code>, <code>&lt;=</code>, <code>&gt;</code>, <code>&gt;=</code>, <code>=</code>, <code>&lt;&gt;</code>, <code>in</code>, <code>not_in</code>, <code>match</code>, <code>not_match</code>, <code>ilike</code>, <code>not_ilike</code>, <code>like</code>,<code>not_like</code><br>you can use the <code>%</code> operator with <code>like</code> and <code>not_like</code>, as well as <code>ilike</code> and <code>not_ilike</code> to match any string of zero or more characters<br>example:<br><code>[\"keyword_data.keyword_info.search_volume\",\"&gt;\",0]</code><p><code>[[\"keyword_info.search_volume\",\"in\",[0,1000]],<br>\"and\",<br>[\"keyword_data.keyword_info.competition_level\",\"=\",\"LOW\"]]</code><p><code>[[\"keyword_data.keyword_info.search_volume\",\"&gt;\",100],<br>\"and\",<br>[[\"keyword_data.keyword_info.cpc\",\"&lt;\",0.5],<br>\"or\",<p>[\"keyword_info.high_top_of_page_bid\",\"&lt;=\",0.5]]]</code><br>for more information about filters, please refer to <a href=\"/v3/dataforseo_labs/filters\" target=\"_blank\" rel=\"noopener noreferrer\">Dataforseo Labs - Filters</a> or this <a href=\"https://dataforseo.com/help-center/how-to-use-filters-in-dataforseo-labs-api\" rel=\"noopener noreferrer\" target=\"_blank\">help center guide</a>",
        -        "items": {
        -          "type": [
        -            "object",
        -            "null"
        -          ]
        -        },
        -        "type": [
        -          "array",
        -          "null"
        -        ]
        -      },
        -      "ignore_synonyms": {
        -        "description": "",
        -        "type": [
        -          "boolean",
        -          "null"
        -        ]
        -      },
        -      "include_clickstream_data": {
        -        "description": "",
        -        "type": [
        -          "boolean",
        -          "null"
        -        ]
        -      },
        -      "include_seed_keyword": {
        -        "description": "<em>include data for the seed keyword</em><br>optional field<br>if set to <code>true</code>, data for the seed keyword specified in the <code>keyword</code> field will be provided in the <code>seed_keyword_data</code> array of the response<br>default value: <code>false</code>",
        -        "type": [
        -          "boolean",
        -          "null"
        -        ]
        -      },
        -      "include_serp_info": {
        -        "description": "<em>include data from SERP for each keyword</em><br>optional field<br>if set to <code>true</code>, we will return a <code>serp_info</code> array containing SERP data (number of search results, relevant URL, and SERP features) for every keyword in the response<br>default value: <code>false</code>",
        -        "type": [
        -          "boolean",
        -          "null"
        -        ]
        -      },
        -      "keyword": {
        -        "description": "<em>keyword</em><br><strong>required field</strong><br>UTF-8 encoding<br>the keywords will be converted to lowercase format<p>learn more about rules and limitations of <code>keyword</code> and <code>keywords</code> fields in DataForSEO APIs in this <a href=\"https://dataforseo.com/help-center/rules-and-limitations-of-keyword-and-keywords-fields-in-dataforseo-apis\" rel=\"noopener noreferrer\" target=\"_blank\">Help Center article</a>",
        -        "type": "string"
        -      },
        -      "language_code": {
        -        "description": "<em>language code</em><br><strong>required field if you don't specify</strong> <code>language_name</code><br><strong>Note:</strong> it is required to specify either <code>language_name</code> or <code>language_code</code><br>you can receive the list of available locations with their <code>language_code</code> by making a separate request to the <br><code>https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages</code><br>example:<br><code class=\"long-string\">en</code>",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      },
        -      "language_name": {
        -        "description": "<em>full name of the language</em><br><strong>required field if you don't specify</strong> <code>language_code</code><br><strong>Note:</strong> it is required to specify either <code>language_name</code> or <code>language_code</code><br>you can receive the list of available locations with their <code>language_name</code> by making a separate request to the <br><code>https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages</code><br>example:<br><code class=\"long-string\">English</code>",
        -        "type": "string"
        -      },
        -      "limit": {
        -        "description": "<em>the maximum number of returned keywords</em><br>optional field<br>default value: <code>100</code><br>maximum value: <code>1000</code>",
        -        "type": [
        -          "integer",
        -          "null"
        -        ]
        -      },
        -      "location_code": {
        -        "description": "<em>location code</em><br><strong>required field if you don't specify</strong> <code>location_name</code><br><strong>Note:</strong> it is required to specify either <code>location_name</code> or <code>location_code</code><br>you can receive the list of available locations with their <code>location_code</code> by making a separate request to the <br><code>https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages</code><br>example:<br><code class=\"long-string\">2840</code>",
        -        "type": "integer"
        -      },
        -      "location_name": {
        -        "description": "<em>full name of the location</em><br><strong>required field if you don't specify</strong> <code>location_code</code><br><strong>Note:</strong> it is required to specify either <code>location_name</code> or <code>location_code</code><br>you can receive the list of available locations with their <code>location_name</code> by making a separate request to the <br><code>https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages</code><br>example:<br><code class=\"long-string\">United Kingdom</code>",
        -        "type": "string"
        -      },
        -      "offset": {
        -        "description": "<em>offset in the results array of returned keywords</em><br>optional field<br>default value: <code>0</code><br>if you specify the <code>10</code> value, the first ten keywords in the results array will be omitted and the data will be provided for the successive keywords",
        -        "type": [
        -          "integer",
        -          "null"
        -        ]
        -      },
        -      "order_by": {
        -        "description": "<em>results sorting rules</em><br>optional field<br>you can use the same values as in the <code>filters</code> array to sort the results<br>possible sorting types:<br><code>asc</code> - results will be sorted in the ascending order<br><code>desc</code> - results will be sorted in the descending order<br>you should use a comma to set up a sorting type<br>example:<br><code>[\"keyword_data.keyword_info.competition,desc\"]</code><br>default rule:<br><code>[\"keyword_data.keyword_info.search_volume,desc\"]</code><br><strong>note that you can set no more than three sorting rules in a single request</strong><br>you should use a comma to separate several sorting rules<br>example:<br><code>[\"keyword_data.keyword_info.search_volume,desc\",\"keyword_data.keyword_info.cpc,desc\"]</code>",
        -        "items": {
        -          "type": "string"
        -        },
        -        "type": [
        -          "array",
        -          "null"
        -        ]
        -      },
        -      "replace_with_core_keyword": {
        -        "description": "<em>return data for core keyword</em><br>optional field<br>if <code>true</code>, <code>serp_info</code> and <code>related_keywords</code> will be returned for the main keyword in the group that the specified <code>keyword</code> belongs to;<br>if <code>false</code>, <code>serp_info</code> and <code>related_keywords</code> will be returned for the specified <code>keyword</code> (if available);<br>refer to <a href=\"https://dataforseo.com/help-center/replace_with_core_keyword\" rel=\"noopener noreferrer\" target=\"_blank\">this help center article</a> for more details;<br>default value: <code>false</code>",
        -        "type": [
        -          "boolean",
        -          "null"
        -        ]
        -      },
        -      "tag": {
        -        "description": "<em>user-defined task identifier</em><br>optional field<br><em>the character limit is 255</em><br>you can use this parameter to identify the task and match it with the result<br>you will find the specified <code>tag</code> value in the <code>data</code> object of the response",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      }
        -    },
        -    "type": "object"
        -  }
        -]
      • addedInput schema / properties / body / items / oneOf
        Added value: +[
        +  {
        +    "example": [
        +      {
        +        "keyword": "phone",
        +        "language_name": "English",
        +        "limit": 3,
        +        "location_code": 2840
        +      }
        +    ],
        +    "properties": {
        +      "depth": {
        +        "description": "<em>keyword search depth</em><br>optional field<br>default value: <code>1</code><p>number of the returned results depends on the value you set in this field<br>you can specify a level from 0 to 4<br>estimated number of keywords for each level (maximum):<br>0 - the keyword set in the <code>keyword</code> field<br>1 – 8 keywords<br>2 – 72 keywords<br>3 – 584 keywords<br>4 – 4680 keywords",
        +        "type": [
        +          "integer",
        +          "null"
        +        ]
        +      },
        +      "filters": {
        +        "description": "<em>array of results filtering parameters</em><br>optional field<br><strong>you can add several filters at once (8 filters maximum)</strong><br>you should set a logical operator <code>and</code>, <code>or</code> between the conditions<br>the following operators are supported:<br><code>regex</code>, <code>not_regex</code>, <code>&lt;</code>, <code>&lt;=</code>, <code>&gt;</code>, <code>&gt;=</code>, <code>=</code>, <code>&lt;&gt;</code>, <code>in</code>, <code>not_in</code>, <code>match</code>, <code>not_match</code>, <code>ilike</code>, <code>not_ilike</code>, <code>like</code>,<code>not_like</code><br>you can use the <code>%</code> operator with <code>like</code> and <code>not_like</code>, as well as <code>ilike</code> and <code>not_ilike</code> to match any string of zero or more characters<br>example:<br><code>[\"keyword_data.keyword_info.search_volume\",\"&gt;\",0]</code><p><code>[[\"keyword_info.search_volume\",\"in\",[0,1000]],<br>\"and\",<br>[\"keyword_data.keyword_info.competition_level\",\"=\",\"LOW\"]]</code><p><code>[[\"keyword_data.keyword_info.search_volume\",\"&gt;\",100],<br>\"and\",<br>[[\"keyword_data.keyword_info.cpc\",\"&lt;\",0.5],<br>\"or\",<p>[\"keyword_info.high_top_of_page_bid\",\"&lt;=\",0.5]]]</code><br>for more information about filters, please refer to <a href=\"/v3/dataforseo_labs/filters\" target=\"_blank\" rel=\"noopener noreferrer\">Dataforseo Labs - Filters</a> or this <a href=\"https://dataforseo.com/help-center/how-to-use-filters-in-dataforseo-labs-api\" rel=\"noopener noreferrer\" target=\"_blank\">help center guide</a>",
        +        "items": {
        +          "type": [
        +            "object",
        +            "null"
        +          ]
        +        },
        +        "type": [
        +          "array",
        +          "null"
        +        ]
        +      },
        +      "ignore_synonyms": {
        +        "description": "",
        +        "type": [
        +          "boolean",
        +          "null"
        +        ]
        +      },
        +      "include_clickstream_data": {
        +        "description": "",
        +        "type": [
        +          "boolean",
        +          "null"
        +        ]
        +      },
        +      "include_seed_keyword": {
        +        "description": "<em>include data for the seed keyword</em><br>optional field<br>if set to <code>true</code>, data for the seed keyword specified in the <code>keyword</code> field will be provided in the <code>seed_keyword_data</code> array of the response<br>default value: <code>false</code>",
        +        "type": [
        +          "boolean",
        +          "null"
        +        ]
        +      },
        +      "include_serp_info": {
        +        "description": "<em>include data from SERP for each keyword</em><br>optional field<br>if set to <code>true</code>, we will return a <code>serp_info</code> array containing SERP data (number of search results, relevant URL, and SERP features) for every keyword in the response<br>default value: <code>false</code>",
        +        "type": [
        +          "boolean",
        +          "null"
        +        ]
        +      },
        +      "keyword": {
        +        "description": "<em>keyword</em><br><strong>required field</strong><br>UTF-8 encoding<br>the keywords will be converted to lowercase format<p>learn more about rules and limitations of <code>keyword</code> and <code>keywords</code> fields in DataForSEO APIs in this <a href=\"https://dataforseo.com/help-center/rules-and-limitations-of-keyword-and-keywords-fields-in-dataforseo-apis\" rel=\"noopener noreferrer\" target=\"_blank\">Help Center article</a>",
        +        "type": "string"
        +      },
        +      "language_code": {
        +        "description": "<em>language code</em><br><strong>required field if you don't specify</strong> <code>language_name</code><br><strong>Note:</strong> it is required to specify either <code>language_name</code> or <code>language_code</code><br>you can receive the list of available locations with their <code>language_code</code> by making a separate request to the <br><code>https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages</code><br>example:<br><code class=\"long-string\">en</code>",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "language_name": {
        +        "description": "<em>full name of the language</em><br><strong>required field if you don't specify</strong> <code>language_code</code><br><strong>Note:</strong> it is required to specify either <code>language_name</code> or <code>language_code</code><br>you can receive the list of available locations with their <code>language_name</code> by making a separate request to the <br><code>https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages</code><br>example:<br><code class=\"long-string\">English</code>",
        +        "type": "string"
        +      },
        +      "limit": {
        +        "description": "<em>the maximum number of returned keywords</em><br>optional field<br>default value: <code>100</code><br>maximum value: <code>1000</code>",
        +        "type": [
        +          "integer",
        +          "null"
        +        ]
        +      },
        +      "location_code": {
        +        "description": "<em>location code</em><br><strong>required field if you don't specify</strong> <code>location_name</code><br><strong>Note:</strong> it is required to specify either <code>location_name</code> or <code>location_code</code><br>you can receive the list of available locations with their <code>location_code</code> by making a separate request to the <br><code>https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages</code><br>example:<br><code class=\"long-string\">2840</code>",
        +        "type": "integer"
        +      },
        +      "location_name": {
        +        "description": "<em>full name of the location</em><br><strong>required field if you don't specify</strong> <code>location_code</code><br><strong>Note:</strong> it is required to specify either <code>location_name</code> or <code>location_code</code><br>you can receive the list of available locations with their <code>location_name</code> by making a separate request to the <br><code>https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages</code><br>example:<br><code class=\"long-string\">United Kingdom</code>",
        +        "type": "string"
        +      },
        +      "offset": {
        +        "description": "<em>offset in the results array of returned keywords</em><br>optional field<br>default value: <code>0</code><br>if you specify the <code>10</code> value, the first ten keywords in the results array will be omitted and the data will be provided for the successive keywords",
        +        "type": [
        +          "integer",
        +          "null"
        +        ]
        +      },
        +      "order_by": {
        +        "description": "<em>results sorting rules</em><br>optional field<br>you can use the same values as in the <code>filters</code> array to sort the results<br>possible sorting types:<br><code>asc</code> - results will be sorted in the ascending order<br><code>desc</code> - results will be sorted in the descending order<br>you should use a comma to set up a sorting type<br>example:<br><code>[\"keyword_data.keyword_info.competition,desc\"]</code><br>default rule:<br><code>[\"keyword_data.keyword_info.search_volume,desc\"]</code><br><strong>note that you can set no more than three sorting rules in a single request</strong><br>you should use a comma to separate several sorting rules<br>example:<br><code>[\"keyword_data.keyword_info.search_volume,desc\",\"keyword_data.keyword_info.cpc,desc\"]</code>",
        +        "items": {
        +          "type": "string"
        +        },
        +        "type": [
        +          "array",
        +          "null"
        +        ]
        +      },
        +      "replace_with_core_keyword": {
        +        "description": "<em>return data for core keyword</em><br>optional field<br>if <code>true</code>, <code>serp_info</code> and <code>related_keywords</code> will be returned for the main keyword in the group that the specified <code>keyword</code> belongs to;<br>if <code>false</code>, <code>serp_info</code> and <code>related_keywords</code> will be returned for the specified <code>keyword</code> (if available);<br>refer to <a href=\"https://dataforseo.com/help-center/replace_with_core_keyword\" rel=\"noopener noreferrer\" target=\"_blank\">this help center article</a> for more details;<br>default value: <code>false</code>",
        +        "type": [
        +          "boolean",
        +          "null"
        +        ]
        +      },
        +      "tag": {
        +        "description": "<em>user-defined task identifier</em><br>optional field<br><em>the character limit is 255</em><br>you can use this parameter to identify the task and match it with the result<br>you will find the specified <code>tag</code> value in the <code>data</code> object of the response",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      }
        +    },
        +    "type": "object"
        +  }
        +]
    • Changedpost_dataforseo_labs_google_search_intent_live2 fields changed
      • removedInput schema / properties / body / items / anyOf
        Removed value: -[
        -  {
        -    "example": [
        -      {
        -        "keywords": [
        -          "login page",
        -          "audi a7",
        -          "elon musk",
        -          "milk store new york"
        -        ]
        -      }
        -    ],
        -    "properties": {
        -      "keywords": {
        -        "description": "<em>target keywords</em><br><strong>required field</strong><br>UTF-8 encoding<br>maximum number of keywords you can specify in this array: 1000;<br>the keywords will be converted to lowercase format<p>learn more about rules and limitations of <code>keyword</code> and <code>keywords</code> fields in DataForSEO APIs in this <a href=\"https://dataforseo.com/help-center/rules-and-limitations-of-keyword-and-keywords-fields-in-dataforseo-apis\" rel=\"noopener noreferrer\" target=\"_blank\">Help Center article</a>",
        -        "items": {
        -          "type": "string"
        -        },
        -        "type": "array"
        -      },
        -      "tag": {
        -        "description": "<em>user-defined task identifier</em><br>optional field<br><em>the character limit is 255</em><br>you can use this parameter to identify the task and match it with the result<br>you will find the specified <code>tag</code> value in the <code>data</code> object of the response",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      }
        -    },
        -    "type": "object"
        -  }
        -]
      • addedInput schema / properties / body / items / oneOf
        Added value: +[
        +  {
        +    "example": [
        +      {
        +        "keywords": [
        +          "login page",
        +          "audi a7",
        +          "elon musk",
        +          "milk store new york"
        +        ]
        +      }
        +    ],
        +    "properties": {
        +      "keywords": {
        +        "description": "<em>target keywords</em><br><strong>required field</strong><br>UTF-8 encoding<br>maximum number of keywords you can specify in this array: 1000;<br>the keywords will be converted to lowercase format<p>learn more about rules and limitations of <code>keyword</code> and <code>keywords</code> fields in DataForSEO APIs in this <a href=\"https://dataforseo.com/help-center/rules-and-limitations-of-keyword-and-keywords-fields-in-dataforseo-apis\" rel=\"noopener noreferrer\" target=\"_blank\">Help Center article</a>",
        +        "items": {
        +          "type": "string"
        +        },
        +        "type": "array"
        +      },
        +      "tag": {
        +        "description": "<em>user-defined task identifier</em><br>optional field<br><em>the character limit is 255</em><br>you can use this parameter to identify the task and match it with the result<br>you will find the specified <code>tag</code> value in the <code>data</code> object of the response",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      }
        +    },
        +    "type": "object"
        +  }
        +]
    • Changedpost_dataforseo_labs_google_top_searches_live2 fields changed
      • removedInput schema / properties / body / items / anyOf
        Removed value: -[
        -  {
        -    "example": [
        -      {
        -        "language_name": "English",
        -        "limit": 3,
        -        "location_code": 2840
        -      }
        -    ],
        -    "properties": {
        -      "filters": {
        -        "description": "<em>array of results filtering parameters</em><br>optional field<br><strong>you can add several filters at once (8 filters maximum)</strong><br>you should set a logical operator <code>and</code>, <code>or</code> between the conditions<br>the following operators are supported:<br><code>regex</code>, <code>not_regex</code>, <code>&lt;</code>, <code>&lt;=</code>, <code>&gt;</code>, <code>&gt;=</code>, <code>=</code>, <code>&lt;&gt;</code>, <code>in</code>, <code>not_in</code>, <code>match</code>, <code>not_match</code>, <code>ilike</code>, <code>not_ilike</code>, <code>like</code>,<code>not_like</code><br>you can use the <code>%</code> operator with <code>like</code> and <code>not_like</code>,as well as <code>ilike</code> and <code>not_ilike</code> to match any string of zero or more characters<br>example:<br><code>[\"keyword_info.search_volume\",\"&gt;\",0]</code><p><code>[[\"keyword_info.search_volume\",\"in\",[0,1000]],<br>\"and\",<br>[\"keyword_info.competition_level\",\"=\",\"LOW\"]]</code><p><code>[[\"keyword_info.search_volume\",\"&gt;\",100],<br>\"and\",<br>[[\"keyword_info.cpc\",\"&lt;\",0.5],<br>\"or\",<p>[\"keyword_info.high_top_of_page_bid\",\"&lt;=\",0.5]]]</code><br>for more information about filters, please refer to <a href=\"/v3/dataforseo_labs/filters\" target=\"_blank\" rel=\"noopener noreferrer\">Dataforseo Labs - Filters</a> or this <a href=\"https://dataforseo.com/help-center/how-to-use-filters-in-dataforseo-labs-api\" rel=\"noopener noreferrer\" target=\"_blank\">help center guide</a>",
        -        "items": {
        -          "type": [
        -            "object",
        -            "null"
        -          ]
        -        },
        -        "type": [
        -          "array",
        -          "null"
        -        ]
        -      },
        -      "ignore_synonyms": {
        -        "description": "<em>ignore highly similar keywords</em><br>optional field<br>if set to <code class=\"prettyprint\">true</code> only core keywords will be returned, all highly similar keywords will be excluded;  <br>default value: <code>false</code>",
        -        "type": [
        -          "boolean",
        -          "null"
        -        ]
        -      },
        -      "include_clickstream_data": {
        -        "description": "<em>include or exclude data from clickstream-based metrics in the result</em><br>optional field<br>if the parameter is set to <code>true</code>, you will receive <code>clickstream_keyword_info</code>, <code>keyword_info_normalized_with_clickstream</code>, and <code>keyword_info_normalized_with_bing</code> fields in the response<br>default value: <code>false</code><br>with this parameter enabled, you will be charged double the price for the request<p>learn more about how clickstream-based metrics are calculated in this <a href=\"https://dataforseo.com/help-center/what-are-clickstream-based-metrics-and-how-do-we-calculate-them\" rel=\"noopener noreferrer\" target=\"_blank\">help center article</a>",
        -        "type": [
        -          "boolean",
        -          "null"
        -        ]
        -      },
        -      "include_serp_info": {
        -        "description": "<em>include data from SERP for each keyword</em><br>optional field<br>if set to <code>true</code>, we will return a <code>serp_info</code> array containing SERP data (number of search results, relevant URL, and SERP features) for every keyword in the response<br>default value: <code>false</code>",
        -        "type": [
        -          "boolean",
        -          "null"
        -        ]
        -      },
        -      "language_code": {
        -        "description": "<em>language code</em><br><strong>required field if you don't specify</strong> <code>language_name</code><br><strong>Note:</strong> it is required to specify either <code>language_name</code> or <code>language_code</code><br>you can receive the list of available locations with their <code>language_code</code> by making a separate request to the <br><code>https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages</code><br>example:<br><code class=\"long-string\">en</code>",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      },
        -      "language_name": {
        -        "description": "<em>full name of the language</em><br><strong>required field if you don't specify</strong> <code>language_code</code><br><strong>Note:</strong> it is required to specify either <code>language_name</code> or <code>language_code</code><br>you can receive the list of available locations with their <code>language_name</code> by making a separate request to the <br><code>https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages</code><br>example:<br><code class=\"long-string\">English</code>",
        -        "type": "string"
        -      },
        -      "limit": {
        -        "description": "<em>the maximum number of returned keywords</em><br>optional field<br></strong>note:</strong> you can get more than 1000 results by using the <code>offset_token</code> provided in the response to each subsequent request<br>default value: <code>1000</code><br>maximum value: <code>1000</code>",
        -        "type": [
        -          "integer",
        -          "null"
        -        ]
        -      },
        -      "location_code": {
        -        "description": "<em>location code</em><br><strong>required field if you don't specify</strong> <code>location_name</code><br><strong>Note:</strong> it is required to specify either <code>location_name</code> or <code>location_code</code><br>you can receive the list of available locations with their <code>location_code</code> by making a separate request to the <br><code>https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages</code><br>example:<br><code class=\"long-string\">2840</code>",
        -        "type": "integer"
        -      },
        -      "location_name": {
        -        "description": "<em>full name of the location</em><br><strong>required field if you don't specify</strong> <code>location_code</code><br><strong>Note:</strong> it is required to specify either <code>location_name</code> or <code>location_code</code><br>you can receive the list of available locations with their <code>location_name</code> by making a separate request to the <br><code>https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages</code><br>example:<br><code class=\"long-string\">United Kingdom</code>",
        -        "type": "string"
        -      },
        -      "offset": {
        -        "description": "<em>offset in the results array of returned keywords</em><br>optional field<br>default value: <code>0</code><br>if you specify the <code>10</code> value, the first ten keywords in the results array will be omitted and the data will be provided for the successive keywords<br><strong>Note:</strong> we recommend using this parameter only when retrieving up to 10,000 results<br>for retrieving over 10,000 results, use the <code>offset_token</code> instead.",
        -        "type": [
        -          "integer",
        -          "null"
        -        ]
        -      },
        -      "offset_token": {
        -        "description": "<em>offset token for subsequent requests</em><br>optional field<br>provided in the identical filed of the response to each request;<br>use this parameter to avoid timeouts while trying to obtain over 10,000 results in a single request;<br>by specifying the unique <code>offset_token</code> value from the response array, you will get the subsequent results of the initial task;<br><code>offset_token</code> values are unique for each subsequent task <br><strong>Note:</strong> if the <code>offset_token</code> is specified in the request, all other parameters except <code>limit</code> will not be taken into account when processing a task.<br>learn more about this parameter on our <a href=\"https://dataforseo.com/help-center/what-is-the-difference-between-the-offset-and-offset_token-parameters#offset_token\" target=\"_blank\">Help Center</a>",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      },
        -      "order_by": {
        -        "description": "<em>results sorting rules</em><br>optional field<br>you can use the same values as in the <code>filters</code> array to sort the results<br>possible sorting types:<br><code>asc</code> - results will be sorted in the ascending order<br><code>desc</code> - results will be sorted in the descending order<br>you should use a comma to set up a sorting type<br>example:<br><code>[\"keyword_info.competition,desc\"]</code><br>default rule:<br><code>[\"keyword_info.search_volume,desc\"]</code><br><strong>note that you can set no more than three sorting rules in a single request</strong><br>you should use a comma to separate several sorting rules<br>example:<br><code>[\"keyword_info.search_volume,desc\",\"keyword_info.cpc,desc\"]</code>",
        -        "items": {
        -          "type": "string"
        -        },
        -        "type": [
        -          "array",
        -          "null"
        -        ]
        -      },
        -      "tag": {
        -        "description": "<em>user-defined task identifier</em><br>optional field<br><em>the character limit is 255</em><br>you can use this parameter to identify the task and match it with the result<br>you will find the specified <code>tag</code> value in the <code>data</code> object of the response",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      }
        -    },
        -    "type": "object"
        -  }
        -]
      • addedInput schema / properties / body / items / oneOf
        Added value: +[
        +  {
        +    "example": [
        +      {
        +        "language_name": "English",
        +        "limit": 3,
        +        "location_code": 2840
        +      }
        +    ],
        +    "properties": {
        +      "filters": {
        +        "description": "<em>array of results filtering parameters</em><br>optional field<br><strong>you can add several filters at once (8 filters maximum)</strong><br>you should set a logical operator <code>and</code>, <code>or</code> between the conditions<br>the following operators are supported:<br><code>regex</code>, <code>not_regex</code>, <code>&lt;</code>, <code>&lt;=</code>, <code>&gt;</code>, <code>&gt;=</code>, <code>=</code>, <code>&lt;&gt;</code>, <code>in</code>, <code>not_in</code>, <code>match</code>, <code>not_match</code>, <code>ilike</code>, <code>not_ilike</code>, <code>like</code>,<code>not_like</code><br>you can use the <code>%</code> operator with <code>like</code> and <code>not_like</code>,as well as <code>ilike</code> and <code>not_ilike</code> to match any string of zero or more characters<br>example:<br><code>[\"keyword_info.search_volume\",\"&gt;\",0]</code><p><code>[[\"keyword_info.search_volume\",\"in\",[0,1000]],<br>\"and\",<br>[\"keyword_info.competition_level\",\"=\",\"LOW\"]]</code><p><code>[[\"keyword_info.search_volume\",\"&gt;\",100],<br>\"and\",<br>[[\"keyword_info.cpc\",\"&lt;\",0.5],<br>\"or\",<p>[\"keyword_info.high_top_of_page_bid\",\"&lt;=\",0.5]]]</code><br>for more information about filters, please refer to <a href=\"/v3/dataforseo_labs/filters\" target=\"_blank\" rel=\"noopener noreferrer\">Dataforseo Labs - Filters</a> or this <a href=\"https://dataforseo.com/help-center/how-to-use-filters-in-dataforseo-labs-api\" rel=\"noopener noreferrer\" target=\"_blank\">help center guide</a>",
        +        "items": {
        +          "type": [
        +            "object",
        +            "null"
        +          ]
        +        },
        +        "type": [
        +          "array",
        +          "null"
        +        ]
        +      },
        +      "ignore_synonyms": {
        +        "description": "<em>ignore highly similar keywords</em><br>optional field<br>if set to <code class=\"prettyprint\">true</code> only core keywords will be returned, all highly similar keywords will be excluded;  <br>default value: <code>false</code>",
        +        "type": [
        +          "boolean",
        +          "null"
        +        ]
        +      },
        +      "include_clickstream_data": {
        +        "description": "<em>include or exclude data from clickstream-based metrics in the result</em><br>optional field<br>if the parameter is set to <code>true</code>, you will receive <code>clickstream_keyword_info</code>, <code>keyword_info_normalized_with_clickstream</code>, and <code>keyword_info_normalized_with_bing</code> fields in the response<br>default value: <code>false</code><br>with this parameter enabled, you will be charged double the price for the request<p>learn more about how clickstream-based metrics are calculated in this <a href=\"https://dataforseo.com/help-center/what-are-clickstream-based-metrics-and-how-do-we-calculate-them\" rel=\"noopener noreferrer\" target=\"_blank\">help center article</a>",
        +        "type": [
        +          "boolean",
        +          "null"
        +        ]
        +      },
        +      "include_serp_info": {
        +        "description": "<em>include data from SERP for each keyword</em><br>optional field<br>if set to <code>true</code>, we will return a <code>serp_info</code> array containing SERP data (number of search results, relevant URL, and SERP features) for every keyword in the response<br>default value: <code>false</code>",
        +        "type": [
        +          "boolean",
        +          "null"
        +        ]
        +      },
        +      "language_code": {
        +        "description": "<em>language code</em><br><strong>required field if you don't specify</strong> <code>language_name</code><br><strong>Note:</strong> it is required to specify either <code>language_name</code> or <code>language_code</code><br>you can receive the list of available locations with their <code>language_code</code> by making a separate request to the <br><code>https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages</code><br>example:<br><code class=\"long-string\">en</code>",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "language_name": {
        +        "description": "<em>full name of the language</em><br><strong>required field if you don't specify</strong> <code>language_code</code><br><strong>Note:</strong> it is required to specify either <code>language_name</code> or <code>language_code</code><br>you can receive the list of available locations with their <code>language_name</code> by making a separate request to the <br><code>https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages</code><br>example:<br><code class=\"long-string\">English</code>",
        +        "type": "string"
        +      },
        +      "limit": {
        +        "description": "<em>the maximum number of returned keywords</em><br>optional field<br></strong>note:</strong> you can get more than 1000 results by using the <code>offset_token</code> provided in the response to each subsequent request<br>default value: <code>1000</code><br>maximum value: <code>1000</code>",
        +        "type": [
        +          "integer",
        +          "null"
        +        ]
        +      },
        +      "location_code": {
        +        "description": "<em>location code</em><br><strong>required field if you don't specify</strong> <code>location_name</code><br><strong>Note:</strong> it is required to specify either <code>location_name</code> or <code>location_code</code><br>you can receive the list of available locations with their <code>location_code</code> by making a separate request to the <br><code>https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages</code><br>example:<br><code class=\"long-string\">2840</code>",
        +        "type": "integer"
        +      },
        +      "location_name": {
        +        "description": "<em>full name of the location</em><br><strong>required field if you don't specify</strong> <code>location_code</code><br><strong>Note:</strong> it is required to specify either <code>location_name</code> or <code>location_code</code><br>you can receive the list of available locations with their <code>location_name</code> by making a separate request to the <br><code>https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages</code><br>example:<br><code class=\"long-string\">United Kingdom</code>",
        +        "type": "string"
        +      },
        +      "offset": {
        +        "description": "<em>offset in the results array of returned keywords</em><br>optional field<br>default value: <code>0</code><br>if you specify the <code>10</code> value, the first ten keywords in the results array will be omitted and the data will be provided for the successive keywords<br><strong>Note:</strong> we recommend using this parameter only when retrieving up to 10,000 results<br>for retrieving over 10,000 results, use the <code>offset_token</code> instead.",
        +        "type": [
        +          "integer",
        +          "null"
        +        ]
        +      },
        +      "offset_token": {
        +        "description": "<em>offset token for subsequent requests</em><br>optional field<br>provided in the identical filed of the response to each request;<br>use this parameter to avoid timeouts while trying to obtain over 10,000 results in a single request;<br>by specifying the unique <code>offset_token</code> value from the response array, you will get the subsequent results of the initial task;<br><code>offset_token</code> values are unique for each subsequent task <br><strong>Note:</strong> if the <code>offset_token</code> is specified in the request, all other parameters except <code>limit</code> will not be taken into account when processing a task.<br>learn more about this parameter on our <a href=\"https://dataforseo.com/help-center/what-is-the-difference-between-the-offset-and-offset_token-parameters#offset_token\" target=\"_blank\">Help Center</a>",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "order_by": {
        +        "description": "<em>results sorting rules</em><br>optional field<br>you can use the same values as in the <code>filters</code> array to sort the results<br>possible sorting types:<br><code>asc</code> - results will be sorted in the ascending order<br><code>desc</code> - results will be sorted in the descending order<br>you should use a comma to set up a sorting type<br>example:<br><code>[\"keyword_info.competition,desc\"]</code><br>default rule:<br><code>[\"keyword_info.search_volume,desc\"]</code><br><strong>note that you can set no more than three sorting rules in a single request</strong><br>you should use a comma to separate several sorting rules<br>example:<br><code>[\"keyword_info.search_volume,desc\",\"keyword_info.cpc,desc\"]</code>",
        +        "items": {
        +          "type": "string"
        +        },
        +        "type": [
        +          "array",
        +          "null"
        +        ]
        +      },
        +      "tag": {
        +        "description": "<em>user-defined task identifier</em><br>optional field<br><em>the character limit is 255</em><br>you can use this parameter to identify the task and match it with the result<br>you will find the specified <code>tag</code> value in the <code>data</code> object of the response",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      }
        +    },
        +    "type": "object"
        +  }
        +]
  3. 53 tool updates
    • Addedbatch_get_schema
    • Addedbatch_quote
    • Changedbatch_use18 fields changed
      • addedInput schema / $schema
        Added value: +"https://json-schema.org/draft/2020-12/schema"
      • removedInput schema / properties / calls / description
        Removed value: -"Up to 20 items of {call_id, operation_id, arguments}; steps at the same execution_level of a plan go in one batch"
      • addedInput schema / properties / calls / items / $schema
        Added value: +"https://json-schema.org/draft/2020-12/schema"
      • changedInput schema / properties / calls / items / additionalProperties
        Previous value: -trueNew value: +false
      • addedInput schema / properties / calls / items / properties
        Added value: +{
        +  "arguments": {
        +    "additionalProperties": true,
        +    "description": "Strictly schema-compliant arguments using the exact field names and types from this tool's arguments_schema.",
        +    "type": "object"
        +  },
        +  "call_id": {
        +    "description": "Caller-chosen identifier unique within this batch.",
        +    "maxLength": 128,
        +    "minLength": 1,
        +    "type": "string"
        +  },
        +  "tool": {
        +    "description": "Exact tool name returned by search or batch_get_schema. Never invent a name.",
        +    "minLength": 1,
        +    "type": "string"
        +  }
        +}
      • addedInput schema / properties / calls / items / required
        Added value: +[
        +  "call_id",
        +  "tool",
        +  "arguments"
        +]
      • addedInput schema / properties / calls / maxItems
        Added value: +20
      • addedInput schema / properties / calls / minItems
        Added value: +1
      • removedInput schema / properties / max_price_usd
        Removed value: -{
        -  "anyOf": [
        -    {
        -      "type": "number"
        -    },
        -    {
        -      "type": "null"
        -    }
        -  ],
        -  "default": null,
        -  "description": "Per-call price cap applied to every item"
        -}
      • removedInput schema / properties / search_id / anyOf
        Removed value: -[
        -  {
        -    "type": "string"
        -  },
        -  {
        -    "type": "null"
        -  }
        -]
      • removedInput schema / properties / search_id / default
        Removed value: -null
      • changedInput schema / properties / search_id / description
        Previous value: -"search_id from the search that found these operations"New value: +"Optional search correlation identifier returned by search."
      • addedInput schema / properties / search_id / type
        Added value: +"string"
      • addedInput schema / properties / session_id
        Added value: +{
        +  "description": "Reuse the session_id returned by Search in all subsequent tool calls for this task. If omitted, a new session is created.",
        +  "maxLength": 128,
        +  "pattern": "^[A-Za-z0-9_-]*$",
        +  "type": "string"
        +}
      • addedOutput schema / $defs
        Added value: +{
        +  "jsonValue": {
        +    "anyOf": [
        +      {
        +        "additionalProperties": {
        +          "$ref": "#/$defs/jsonValue"
        +        },
        +        "type": "object"
        +      },
        +      {
        +        "items": {
        +          "$ref": "#/$defs/jsonValue"
        +        },
        +        "type": "array"
        +      },
        +      {
        +        "type": "string"
        +      },
        +      {
        +        "type": "number"
        +      },
        +      {
        +        "type": "boolean"
        +      },
        +      {
        +        "type": "null"
        +      }
        +    ],
        +    "description": "JSON value returned by the upstream tool."
        +  }
        +}
      • addedOutput schema / $schema
        Added value: +"https://json-schema.org/draft/2020-12/schema"
      • addedOutput schema / properties
        Added value: +{
        +  "batch_id": {
        +    "type": "string"
        +  },
        +  "error_count": {
        +    "minimum": 0,
        +    "type": "integer"
        +  },
        +  "next_steps_guidance": {
        +    "description": "Deterministic next-step instructions derived from this result. Not an authorization grant.",
        +    "items": {
        +      "type": "string"
        +    },
        +    "type": "array"
        +  },
        +  "results": {
        +    "items": {
        +      "$schema": "https://json-schema.org/draft/2020-12/schema",
        +      "additionalProperties": false,
        +      "properties": {
        +        "call_id": {
        +          "type": "string"
        +        },
        +        "customer_cost_micros_usd": {
        +          "description": "Actual customer charge settled by AIsaServices, in micro-USD. Omitted when the upstream response does not report it.",
        +          "minimum": 0,
        +          "type": "integer"
        +        },
        +        "data": {
        +          "$ref": "#/$defs/jsonValue"
        +        },
        +        "error": {
        +          "anyOf": [
        +            {
        +              "$schema": "https://json-schema.org/draft/2020-12/schema",
        +              "additionalProperties": false,
        +              "properties": {
        +                "message": {
        +                  "type": "string"
        +                },
        +                "retryable": {
        +                  "type": "boolean"
        +                },
        +                "status": {
        +                  "type": "integer"
        +                },
        +                "type": {
        +                  "enum": [
        +                    "validation",
        +                    "authentication",
        +                    "payment",
        +                    "permission",
        +                    "rate_limit",
        +                    "upstream",
        +                    "timeout",
        +                    "internal"
        +                  ],
        +                  "type": "string"
        +                }
        +              },
        +              "required": [
        +                "type",
        +                "status",
        +                "retryable"
        +              ],
        +              "type": "object"
        +            },
        +            {
        +              "type": "null"
        +            }
        +          ]
        +        },
        +        "request_id": {
        +          "type": "string"
        +        },
        +        "successful": {
        +          "type": "boolean"
        +        },
        +        "tool": {
        +          "type": "string"
        +        },
        +        "upstream_status": {
        +          "description": "HTTP status returned by AIsaServices when a request was dispatched.",
        +          "type": "integer"
        +        }
        +      },
        +      "required": [
        +        "call_id",
        +        "tool",
        +        "successful",
        +        "request_id"
        +      ],
        +      "type": "object"
        +    },
        +    "type": "array"
        +  },
        +  "session_id": {
        +    "description": "Reuse the session_id returned by Search in all subsequent tool calls for this task. If omitted, a new session is created.",
        +    "maxLength": 128,
        +    "minLength": 1,
        +    "pattern": "^[A-Za-z0-9_-]*$",
        +    "type": "string"
        +  },
        +  "success_count": {
        +    "minimum": 0,
        +    "type": "integer"
        +  },
        +  "total_count": {
        +    "minimum": 1,
        +    "type": "integer"
        +  }
        +}
      • addedOutput schema / required
        Added value: +[
        +  "session_id",
        +  "batch_id",
        +  "total_count",
        +  "success_count",
        +  "error_count",
        +  "results",
        +  "next_steps_guidance"
        +]
    • Changedget_dataforseo_keywords_bing_audience_industries1 field changed
      • addedOutput schema / x-fastmcp-wrap-result
        Added value: +true
    • Changedget_dataforseo_keywords_bing_audience_job_functions1 field changed
      • addedOutput schema / x-fastmcp-wrap-result
        Added value: +true
    • Changedget_dataforseo_keywords_bing_kw_performance_locales1 field changed
      • addedOutput schema / x-fastmcp-wrap-result
        Added value: +true
    • Changedget_dataforseo_keywords_bing_languages1 field changed
      • addedOutput schema / x-fastmcp-wrap-result
        Added value: +true
    • Changedget_dataforseo_keywords_bing_locations1 field changed
      • addedOutput schema / x-fastmcp-wrap-result
        Added value: +true
    • Changedget_dataforseo_keywords_bing_volume_history_locales1 field changed
      • addedOutput schema / x-fastmcp-wrap-result
        Added value: +true
    • Changedget_dataforseo_keywords_clickstream_locales1 field changed
      • addedOutput schema / x-fastmcp-wrap-result
        Added value: +true
    • Changedget_dataforseo_keywords_gads_ad_traffic_fetch3 fields changed
      • changedInput schema / properties / id / description
        Previous value: -"task identifier unique task identifier in our system in the UUID format you will be able to use it within 30 days to request the results of the task at any time"New value: +"<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"
      • addedInput schema / properties / id / example
        Added value: +"00000000-0000-0000-0000-000000000000"
      • addedOutput schema / x-fastmcp-wrap-result
        Added value: +true
    • Changedget_dataforseo_keywords_gads_status1 field changed
      • addedOutput schema / x-fastmcp-wrap-result
        Added value: +true
    • Changedget_dataforseo_keywords_google_trends_categories1 field changed
      • addedOutput schema / x-fastmcp-wrap-result
        Added value: +true
    • Changedget_dataforseo_keywords_trends_locations1 field changed
      • addedOutput schema / x-fastmcp-wrap-result
        Added value: +true
    • Changedget_dataforseo_labs_google_categories_for_kw_languages1 field changed
      • addedOutput schema / x-fastmcp-wrap-result
        Added value: +true
    • Changedget_details13 fields changed
      • addedInput schema / $schema
        Added value: +"https://json-schema.org/draft/2020-12/schema"
      • removedInput schema / properties / arguments
        Removed value: -{
        -  "anyOf": [
        -    {
        -      "additionalProperties": true,
        -      "type": "object"
        -    },
        -    {
        -      "type": "null"
        -    }
        -  ],
        -  "default": null,
        -  "description": "The arguments the operation would be called with, for a price that reflects them. Keyed by operation_id for a batch, or passed flat for a single operation_id. Routes whose required parameters are validated before pricing have no price without them."
        -}
      • addedInput schema / properties / include_arguments_schema
        Added value: +{
        +  "default": true,
        +  "description": "Return the complete arguments_schema. Defaults to true.",
        +  "type": "boolean"
        +}
      • changedInput schema / properties / include_documentation / description
        Previous value: -"Include the complete native public OpenAPI document, reference closure and scoped completeness. Existing execution schemas remain unchanged."New value: +"Return the complete immutable public OpenAPI operation, referenced declarations, provenance and scoped completeness. Documentation does not change execution support."
      • addedInput schema / properties / include_response_schema
        Added value: +{
        +  "default": false,
        +  "description": "Return the complete response_schema. Defaults to false.",
        +  "type": "boolean"
        +}
      • removedInput schema / properties / operation_id
        Removed value: -{
        -  "anyOf": [
        -    {
        -      "type": "string"
        -    },
        -    {
        -      "type": "null"
        -    }
        -  ],
        -  "default": null,
        -  "description": "One operation_id from search"
        -}
      • removedInput schema / properties / operation_ids
        Removed value: -{
        -  "anyOf": [
        -    {
        -      "items": {
        -        "type": "string"
        -      },
        -      "type": "array"
        -    },
        -    {
        -      "type": "null"
        -    }
        -  ],
        -  "default": null,
        -  "description": "Up to 20 operation_ids, for a batch"
        -}
      • addedInput schema / properties / session_id
        Added value: +{
        +  "description": "Reuse the session_id returned by Search in all subsequent tool calls for this task. If omitted, a new session is created.",
        +  "maxLength": 128,
        +  "pattern": "^[A-Za-z0-9_-]*$",
        +  "type": "string"
        +}
      • addedInput schema / properties / tools
        Added value: +{
        +  "description": "Exact tool names returned by search whose complete contracts are needed. Never invent tool names.",
        +  "items": {
        +    "minLength": 1,
        +    "pattern": "^\\S(?:.*\\S)?$",
        +    "type": "string"
        +  },
        +  "maxItems": 20,
        +  "minItems": 1,
        +  "type": "array",
        +  "uniqueItems": true
        +}
      • removedInput schema / properties / with_quote
        Removed value: -{
        -  "default": true,
        -  "description": "Whether each operation is priced for this account before the answer. One round trip per operation; spends nothing.",
        -  "type": "boolean"
        -}
      • addedInput schema / required
        Added value: +[
        +  "tools"
        +]
      • addedOutput schema / properties
        Added value: +{
        +  "error_count": {
        +    "type": "integer"
        +  },
        +  "next_steps_guidance": {
        +    "anyOf": [
        +      {
        +        "type": "null"
        +      },
        +      {
        +        "type": "array"
        +      }
        +    ],
        +    "items": {
        +      "type": "string"
        +    }
        +  },
        +  "session_id": {
        +    "description": "Reuse the session_id returned by Search in all subsequent tool calls for this task. If omitted, a new session is created.",
        +    "maxLength": 128,
        +    "minLength": 1,
        +    "pattern": "^[A-Za-z0-9_-]{1,128}$",
        +    "type": "string"
        +  },
        +  "success_count": {
        +    "type": "integer"
        +  },
        +  "tools": {
        +    "additionalProperties": {
        +      "additionalProperties": false,
        +      "properties": {
        +        "arguments_schema": {
        +          "additionalProperties": true,
        +          "anyOf": [
        +            {
        +              "type": "null"
        +            },
        +            {
        +              "type": "object"
        +            }
        +          ]
        +        },
        +        "canonical_operation_id": {
        +          "type": "string"
        +        },
        +        "documentation": {
        +          "additionalProperties": true,
        +          "type": "object"
        +        },
        +        "error": {
        +          "additionalProperties": false,
        +          "anyOf": [
        +            {
        +              "type": "null"
        +            },
        +            {
        +              "type": "object"
        +            }
        +          ],
        +          "properties": {
        +            "code": {
        +              "type": "string"
        +            },
        +            "message": {
        +              "type": "string"
        +            }
        +          },
        +          "required": [
        +            "code",
        +            "message"
        +          ]
        +        },
        +        "execution_supported": {
        +          "description": "Whether this router can execute and quote the operation; false retains documentation and discovery only.",
        +          "type": "boolean"
        +        },
        +        "execution_unsupported_reason": {
        +          "description": "Why execution and quoting remain unavailable through this router.",
        +          "type": "string"
        +        },
        +        "idempotent": {
        +          "anyOf": [
        +            {
        +              "type": "null"
        +            },
        +            {
        +              "type": "boolean"
        +            }
        +          ]
        +        },
        +        "known_pitfalls": {
        +          "anyOf": [
        +            {
        +              "type": "null"
        +            },
        +            {
        +              "type": "array"
        +            }
        +          ],
        +          "items": {
        +            "type": "string"
        +          }
        +        },
        +        "read_only": {
        +          "anyOf": [
        +            {
        +              "type": "null"
        +            },
        +            {
        +              "type": "boolean"
        +            }
        +          ]
        +        },
        +        "response_schema": {
        +          "additionalProperties": true,
        +          "anyOf": [
        +            {
        +              "type": "null"
        +            },
        +            {
        +              "type": "object"
        +            }
        +          ]
        +        },
        +        "side_effects": {
        +          "anyOf": [
        +            {
        +              "type": "null"
        +            },
        +            {
        +              "type": "array"
        +            }
        +          ],
        +          "items": {
        +            "type": "string"
        +          }
        +        },
        +        "successful": {
        +          "type": "boolean"
        +        }
        +      },
        +      "required": [
        +        "successful"
        +      ],
        +      "type": "object"
        +    },
        +    "type": "object"
        +  },
        +  "total_count": {
        +    "type": "integer"
        +  }
        +}
      • addedOutput schema / required
        Added value: +[
        +  "error_count",
        +  "next_steps_guidance",
        +  "session_id",
        +  "success_count",
        +  "tools",
        +  "total_count"
        +]
    • Changedget_semrush_broad_match_keywords4 fields changed
      • removedInput schema / properties / database / default
        Removed value: -"us"
      • removedInput schema / properties / database / description
        Removed value: -"Regional database / country code. Defaults to `us`."
      • removedInput schema / properties / phrase / description
        Removed value: -"Keyword phrase. URL-encode spaces as `%20` or `+`."
      • removedInput schema / properties / phrase / example
        Removed value: -"seo tools"
    • Changedget_semrush_domain_organic_keywords5 fields changed
      • removedInput schema / properties / database / description
        Removed value: -"Regional database / country code, e.g. `us`."
      • removedInput schema / properties / database / example
        Removed value: -"us"
      • removedInput schema / properties / domain / description
        Removed value: -"Target domain, e.g. `ahrefs.com`."
      • removedInput schema / properties / domain / example
        Removed value: -"ahrefs.com"
      • changedInput schema / required
        Previous value: -[
        -  "domain",
        -  "database"
        -]New value: +[
        +  "database",
        +  "domain"
        +]
    • Changedget_semrush_domain_paid_keywords5 fields changed
      • removedInput schema / properties / database / description
        Removed value: -"Regional database / country code, e.g. `us`."
      • removedInput schema / properties / database / example
        Removed value: -"us"
      • removedInput schema / properties / domain / description
        Removed value: -"Target domain, e.g. `ahrefs.com`."
      • removedInput schema / properties / domain / example
        Removed value: -"ahrefs.com"
      • changedInput schema / required
        Previous value: -[
        -  "domain",
        -  "database"
        -]New value: +[
        +  "database",
        +  "domain"
        +]
    • Changedget_semrush_keyword_difficulty7 fields changed
      • removedInput schema / properties / database / default
        Removed value: -"us"
      • removedInput schema / properties / database / description
        Removed value: -"Regional database / country code. Defaults to `us`."
      • removedInput schema / properties / phrase / description
        Removed value: -"One or more keywords separated by `;` (up to 20)."
      • removedInput schema / properties / phrase / example
        Removed value: -"seo tools;ahrefs"
      • addedInput schema / properties / phrase / x-aisa-delimiter
        Added value: +";"
      • addedInput schema / properties / phrase / x-aisa-maxItems
        Added value: +20
      • addedInput schema / properties / phrase / x-aisa-minItems
        Added value: +1
    • Changedget_semrush_keyword_overview3 fields changed
      • removedInput schema / properties / database / description
        Removed value: -"Regional database / country code. Defaults to `us`."
      • removedInput schema / properties / phrase / description
        Removed value: -"Keyword phrase. URL-encode spaces as `%20` or `+`."
      • removedInput schema / properties / phrase / example
        Removed value: -"seo tools"
    • Changedget_semrush_question_keywords4 fields changed
      • removedInput schema / properties / database / default
        Removed value: -"us"
      • removedInput schema / properties / database / description
        Removed value: -"Regional database / country code. Defaults to `us`."
      • removedInput schema / properties / phrase / description
        Removed value: -"Keyword phrase. URL-encode spaces as `%20` or `+`."
      • removedInput schema / properties / phrase / example
        Removed value: -"seo tools"
    • Changedget_semrush_url_organic_keywords5 fields changed
      • removedInput schema / properties / database / description
        Removed value: -"Regional database / country code, e.g. `us`."
      • removedInput schema / properties / database / example
        Removed value: -"us"
      • removedInput schema / properties / url / description
        Removed value: -"Target URL (landing page)."
      • removedInput schema / properties / url / example
        Removed value: -"https://ahrefs.com/blog/"
      • changedInput schema / required
        Previous value: -[
        -  "url",
        -  "database"
        -]New value: +[
        +  "database",
        +  "url"
        +]
    • Changedget_similarweb_keywords15 fields changed
      • changedInput schema / properties / country / description
        Previous value: -"Two-letter country code. Allowed: us, ww. Default: ww. Coverage is limited to ww and us on the current plan."New value: +"Worldwide data only; values are case-insensitive."
      • changedInput schema / properties / country / enum
        Previous value: -[
        -  "us",
        -  "ww"
        -]New value: +[
        +  "ww"
        +]
      • removedInput schema / properties / domain / description
        Removed value: -"Target domain, e.g. example.com."
      • addedInput schema / properties / domain / maxLength
        Added value: +2048
      • addedInput schema / properties / domain / minLength
        Added value: +1
      • removedInput schema / properties / end_date / description
        Removed value: -"End month, format YYYY-MM."
      • removedInput schema / properties / format / description
        Removed value: -"Response format. Allowed: json."
      • removedInput schema / properties / granularity / description
        Removed value: -"Time granularity. Allowed: monthly."
      • removedInput schema / properties / limit / default
        Removed value: -20
      • removedInput schema / properties / limit / description
        Removed value: -"Number of rows to return; max 20, billed as 20 if exceeded."
      • addedInput schema / properties / limit / minimum
        Added value: +1
      • removedInput schema / properties / main_domain_only / description
        Removed value: -"Restrict to the main domain only (true/false)."
      • removedInput schema / properties / start_date / description
        Removed value: -"Start month, format YYYY-MM."
      • removedInput schema / properties / web_source / description
        Removed value: -"Traffic source device split. Allowed: total."
      • changedInput schema / required
        Previous value: -[
        -  "domain",
        -  "start_date",
        -  "end_date",
        -  "granularity",
        -  "limit"
        -]New value: +[
        +  "domain",
        +  "end_date",
        +  "granularity",
        +  "limit",
        +  "start_date"
        +]
    • Changedget_similarweb_landing_pages18 fields changed
      • changedInput schema / properties / country / description
        Previous value: -"Two-letter country code. Allowed: us, ww. Default: ww. Coverage is limited to ww and us on the current plan."New value: +"Worldwide data only; values are case-insensitive."
      • changedInput schema / properties / country / enum
        Previous value: -[
        -  "us",
        -  "ww"
        -]New value: +[
        +  "ww"
        +]
      • removedInput schema / properties / domain / description
        Removed value: -"Target domain, e.g. example.com."
      • addedInput schema / properties / domain / maxLength
        Added value: +253
      • addedInput schema / properties / domain / minLength
        Added value: +1
      • removedInput schema / properties / end_date / description
        Removed value: -"End month, format YYYY-MM."
      • removedInput schema / properties / granularity / description
        Removed value: -"Time granularity. Allowed: monthly."
      • removedInput schema / properties / limit / default
        Removed value: -20
      • removedInput schema / properties / limit / description
        Removed value: -"Number of rows to return; max 20, billed as 20 if exceeded."
      • addedInput schema / properties / limit / minimum
        Added value: +1
      • removedInput schema / properties / main_domain_only / description
        Removed value: -"Restrict to the main domain only (true/false)."
      • removedInput schema / properties / offset / description
        Removed value: -"Row offset for pagination."
      • addedInput schema / properties / offset / maximum
        Added value: +100000
      • addedInput schema / properties / offset / minimum
        Added value: +0
      • removedInput schema / properties / start_date / description
        Removed value: -"Start month, format YYYY-MM."
      • removedInput schema / properties / traffic_source / description
        Removed value: -"Traffic-source filter."
      • removedInput schema / properties / web_source / description
        Removed value: -"Traffic source device split. Allowed: desktop, mobile_web, total."
      • changedInput schema / required
        Previous value: -[
        -  "domain",
        -  "start_date",
        -  "end_date",
        -  "limit"
        -]New value: +[
        +  "domain",
        +  "end_date",
        +  "limit",
        +  "start_date"
        +]
    • Changedpost_dataforseo_keywords_bing_audience_live7 fields changed
      • addedInput schema / properties / body / example
        Added value: +[
        +  {
        +    "age": [
        +      "twenty_five_to_thirty_four",
        +      "eighteen_to_twenty_four",
        +      "unknown"
        +    ],
        +    "bid": 1,
        +    "daily_budget": 24,
        +    "gender": [
        +      "male"
        +    ],
        +    "industry": [
        +      "806303407",
        +      "806301758"
        +    ],
        +    "job_function": [
        +      "806298607"
        +    ],
        +    "location_coordinate": "29.6821525,-82.4098881,100"
        +  }
        +]
      • removedInput schema / properties / body / items / allOf
        Removed value: -[
        -  {
        -    "anyOf": [
        -      {
        -        "required": [
        -          "location_name"
        -        ]
        -      },
        -      {
        -        "required": [
        -          "location_code"
        -        ]
        -      },
        -      {
        -        "required": [
        -          "location_coordinate"
        -        ]
        -      }
        -    ]
        -  }
        -]
      • addedInput schema / properties / body / items / anyOf
        Added value: +[
        +  {
        +    "example": [
        +      {
        +        "age": [
        +          "twenty_five_to_thirty_four",
        +          "eighteen_to_twenty_four",
        +          "unknown"
        +        ],
        +        "bid": 1,
        +        "daily_budget": 24,
        +        "gender": [
        +          "male"
        +        ],
        +        "industry": [
        +          "806303407",
        +          "806301758"
        +        ],
        +        "job_function": [
        +          "806298607"
        +        ],
        +        "location_coordinate": "29.6821525,-82.4098881,100"
        +      }
        +    ],
        +    "properties": {
        +      "age": {
        +        "description": "<em>selection of age ranges for targeting</em><br>possible values: <code>eighteen_to_twenty_four</code>, <code>fifty_to_sixty_four</code>, <code>sixty_five_and_above</code>, <code>thirteen_to_seventeen</code>, <code>thirty_five_to_forty_nine</code>, <code>twenty_five_to_thirty_four</code>, <code>unknown</code>, <code>zero_to_twelve</code>",
        +        "items": {
        +          "type": "string"
        +        },
        +        "type": [
        +          "array",
        +          "null"
        +        ]
        +      },
        +      "bid": {
        +        "description": "<em>desired bid setting value in USD</em><br>maximum value: 1000",
        +        "type": [
        +          "number",
        +          "null"
        +        ]
        +      },
        +      "daily_budget": {
        +        "description": "<em>daily campaign budget value in USD</em><br>maximum value: 10000",
        +        "type": [
        +          "number",
        +          "null"
        +        ]
        +      },
        +      "gender": {
        +        "description": "<em>gender to target</em><br>possible values: <code>male</code>, <code>female</code>, <code>unknown</code>",
        +        "items": {
        +          "type": "string"
        +        },
        +        "type": [
        +          "array",
        +          "null"
        +        ]
        +      },
        +      "industry": {
        +        "description": "<em>industry of LinkedIn profile targeting</em><p>if you use this field, you can receive the list of available industry names  with industry_id by making a separate request to the https://api.dataforseo.com/v3/keywords_data/bing/audience_estimation/industries<p>example: <code>806301758</code>",
        +        "items": {
        +          "type": "string"
        +        },
        +        "type": [
        +          "array",
        +          "null"
        +        ]
        +      },
        +      "job_function": {
        +        "description": "<em>job function of LinkedIn profile targeting</em><p>if you use this field, you can receive the list of available job function names  with job_function_id by making a separate request to the https://api.dataforseo.com/v3/keywords_data/bing/audience_estimation/job_functions<p>example: <code>806300451</code>",
        +        "items": {
        +          "type": "string"
        +        },
        +        "type": [
        +          "array",
        +          "null"
        +        ]
        +      },
        +      "location_code": {
        +        "description": "<em>search engine location code</em><br><strong>required field if you don't specify</strong> <code>location_name</code> or <code>location_coordinate</code><br><strong>if you use this field, you don't need to specify <code>location_name</code> or <code>location_coordinate</code></strong><br>you can receive the list of available locations of the search engines with their <code>location_code</code> by making a separate request to <code>https://api.dataforseo.com/v3/keywords_data/bing/locations</code><br>example:<br><code class=\"long-string\">2840</code>",
        +        "type": "integer"
        +      },
        +      "location_coordinate": {
        +        "description": "<em>GPS coordinates of a location</em><br><strong>required field if you don't specify</strong> <code>location_name</code> or <code>location_code</code><br><strong>if you use this field, you don't need to specify <code>location_name</code> or <code>location_code</code></strong><br><code>location_coordinate</code> parameter should be specified in the <em>\"latitude,longitude,radius (in km)\"</em> format<br><strong>the data will be provided for the country the specified coordinates belong to</strong><br>example:<br><code class=\"long-string\">29.6821525,-82.4098881,100</code>",
        +        "type": "string"
        +      },
        +      "location_name": {
        +        "description": "<em>full name of search engine location</em><br><strong>required field if you don't specify</strong> <code>location_code</code> or <code>location_coordinate</code><br><strong>if you use this field, you don't need to specify <code>location_code</code> or <code>location_coordinate</code></strong><br>you can receive the list of available locations of the search engine with their <code>location_name</code> by making a separate request to <code>https://api.dataforseo.com/v3/keywords_data/bing/locations</code><br>example:<br><code class=\"long-string\">London,England,United Kingdom</code>",
        +        "type": "string"
        +      }
        +    },
        +    "type": "object"
        +  }
        +]
      • removedInput schema / properties / body / items / properties
        Removed value: -{
        -  "age": {
        -    "description": "selection of age ranges for targeting possible values: eighteen_to_twenty_four, fifty_to_sixty_four, sixty_five_and_above, thirteen_to_seventeen, thirty_five_to_forty_nine, twenty_five_to_thirty_four, unknown, zero_to_twelve",
        -    "items": {
        -      "type": "string"
        -    },
        -    "type": "array"
        -  },
        -  "bid": {
        -    "description": "desired bid setting value in USD maximum value: 1000",
        -    "type": "number"
        -  },
        -  "daily_budget": {
        -    "description": "daily campaign budget value in USD maximum value: 10000",
        -    "type": "number"
        -  },
        -  "gender": {
        -    "description": "gender to target possible values: male, female, unknown",
        -    "items": {
        -      "type": "string"
        -    },
        -    "type": "array"
        -  },
        -  "industry": {
        -    "description": "industry of LinkedIn profile targeting if you use this field, you can receive the list of available industry names with industry_id by making a separate request to the https://api.dataforseo.com/v3/keywords_data/bing/audience_estimation/industries example: 806301758",
        -    "items": {
        -      "type": "integer"
        -    },
        -    "type": "array"
        -  },
        -  "job_function": {
        -    "description": "job function of LinkedIn profile targeting if you use this field, you can receive the list of available job function names with job_function_id by making a separate request to the https://api.dataforseo.com/v3/keywords_data/bing/audience_estimation/job_functions example: 806300451",
        -    "items": {
        -      "type": "integer"
        -    },
        -    "type": "array"
        -  },
        -  "location_code": {
        -    "description": "search engine location code required field if you don’t specify location_name or location_coordinate if you use this field, you don’t need to specify location_name or location_coordinate you can receive the list of available locations of the search engines with their location_code by making a separate request to https://api.dataforseo.com/v3/keywords_data/bing/locations example: 2840",
        -    "type": "integer"
        -  },
        -  "location_coordinate": {
        -    "description": "GPS coordinates of a location required field if you don’t specify location_name or location_code if you use this field, you don’t need to specify location_name or location_code location_coordinate parameter should be specified in the “latitude,longitude,radius (in km)” format the data will be provided for the country the specified coordinates belong to example: 29.6821525,-82.4098881,100",
        -    "type": "string"
        -  },
        -  "location_name": {
        -    "description": "full name of search engine location required field if you don’t specify location_code or location_coordinate if you use this field, you don’t need to specify location_code or location_coordinate you can receive the list of available locations of the search engine with their location_name by making a separate request to https://api.dataforseo.com/v3/keywords_data/bing/locations example: London,England,United Kingdom",
        -    "type": "string"
        -  }
        -}
      • changedInput schema / properties / body / items / type
        Previous value: -"object"New value: +[
        +  "object",
        +  "null"
        +]
      • changedInput schema / required
        Previous value: -[
        -  "body"
        -]New value: +[]
      • addedOutput schema / x-fastmcp-wrap-result
        Added value: +true
    • Changedpost_dataforseo_keywords_bing_kw_for_keywords_live8 fields changed
      • addedInput schema / properties / body / example
        Added value: +[
        +  {
        +    "keywords": [
        +      "average page rpm adsense",
        +      "adsense blank ads how long",
        +      "leads and prospects"
        +    ],
        +    "language_name": "English",
        +    "location_name": "United States"
        +  }
        +]
      • removedInput schema / properties / body / items / allOf
        Removed value: -[
        -  {
        -    "anyOf": [
        -      {
        -        "required": [
        -          "location_name"
        -        ]
        -      },
        -      {
        -        "required": [
        -          "location_code"
        -        ]
        -      },
        -      {
        -        "required": [
        -          "location_coordinate"
        -        ]
        -      }
        -    ]
        -  },
        -  {
        -    "anyOf": [
        -      {
        -        "required": [
        -          "language_name"
        -        ]
        -      },
        -      {
        -        "required": [
        -          "language_code"
        -        ]
        -      }
        -    ]
        -  }
        -]
      • addedInput schema / properties / body / items / anyOf
        Added value: +[
        +  {
        +    "example": [
        +      {
        +        "keywords": [
        +          "average page rpm adsense",
        +          "adsense blank ads how long",
        +          "leads and prospects"
        +        ],
        +        "language_name": "English",
        +        "location_name": "United States"
        +      }
        +    ],
        +    "properties": {
        +      "date_from": {
        +        "description": "<em>starting date of the time range</em><br>optional field<br>minimal value: 24 months from today's date;<br>if you don't specify this field, data will be provided for the last 12 months;<br>if <a href=\"/v3/keywords_data/bing/status/\" target=\"_blank\" rel=\"noopener noreferrer\">Status endpoint</a> returns <code>false</code> in the <code>actual_data</code> field, <code>date_from</code> can be set to the month before last and prior;<br>if <a href=\"/v3/keywords_data/bing/status/\" target=\"_blank\" rel=\"noopener noreferrer\">Status endpoint</a> returns <code>true</code> in the <code>actual_data</code> field, <code>date_from</code> can be set to the last month and prior;<br>date format: <code>\"yyyy-mm-dd\"</code><br>example:<br><code>\"2020-01-01\"</code><p><strong>Note:</strong> we do not recommend using a custom time range for the past year's dates",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "date_to": {
        +        "description": "<em>ending date of the time range</em><br>optional field<br>if you don't specify this field, data will be provided for the last 12 months;<br>minimum value: two years back from today’s date;<br>maximum value: one month from today's date;<br>date format: <code>\"yyyy-mm-dd\"</code><br>example:<br><code>\"2020-03-15\"</code><p><strong>Note:</strong> we do not recommend using a custom time range for the past year's dates",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "device": {
        +        "description": "<em>device type</em><br>optional field<br>specify this field if you want to get the data for a particular device type;<br>possible values: <code>all</code>, <code>mobile</code>, <code>desktop</code>, <code>tablet</code><br>default value: <code>all</code>",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "keywords": {
        +        "description": "<em>keywords</em><br><strong>required field</strong><br>you can specify <strong>the maximum of 200 keywords</strong> with each keyword containing no more than <strong>100 characters</strong>;<br>the specified keywords will be converted to lowercase, data will be provided in a separate array<p>learn more about rules and limitations of <code>keyword</code> and <code>keywords</code> fields in DataForSEO APIs in this <a href=\"https://dataforseo.com/help-center/rules-and-limitations-of-keyword-and-keywords-fields-in-dataforseo-apis\" rel=\"noopener noreferrer\" target=\"_blank\">Help Center article</a>",
        +        "items": {
        +          "type": "string"
        +        },
        +        "type": "array"
        +      },
        +      "keywords_negative": {
        +        "description": "<em>keywords negative array</em><br>optional field<br>These keywords will be ignored in the results array;<br>You can specify <strong>a maximum of 200 terms</strong> that you want to exclude from the results;<br>the specified keywords will be converted to lowercase format",
        +        "items": {
        +          "type": "string"
        +        },
        +        "type": [
        +          "array",
        +          "null"
        +        ]
        +      },
        +      "language_code": {
        +        "description": "<em>search engine language code</em><br><strong>required field if you don't specify</strong> <code>language_name</code><br>if you use this field, you don't need to specify <code>language_name</code><br>supported languages:<br><code class=\"long-string\">en</code>, <code>fr</code>, <code>de</code>",
        +        "type": "string"
        +      },
        +      "language_name": {
        +        "description": "<em>full name of search engine language</em><br><strong>required field if you don't specify</strong> <code>language_code</code><br>if you use this field, you don't need to specify <code>language_code</code><br>supported languages:<br><code>English</code>, <code>French</code>, <code>German</code>",
        +        "type": "string"
        +      },
        +      "location_code": {
        +        "description": "<em>search engine location code</em><br><strong>required field if you don't specify</strong> <code>location_name</code> or <code>location_coordinate</code><br><strong>if you use this field, you don't need to specify <code>location_name</code> or <code>location_coordinate</code></strong><br>you can receive the list of available locations of the search engines with their <code>location_code</code> by making a separate request to <code>https://api.dataforseo.com/v3/keywords_data/bing/locations</code><br>example:<br><code class=\"long-string\">2840</code>",
        +        "type": "integer"
        +      },
        +      "location_coordinate": {
        +        "description": "<em>GPS coordinates of a location</em><br><strong>required field if you don't specify</strong> <code>location_name</code> or <code>location_code</code><br><strong>if you use this field, you don't need to specify <code>location_name</code> or <code>location_code</code></strong><br><code>location_coordinate</code> parameter should be specified in the <em>\"latitude,longitude\"</em> format<br><strong>the data will be provided for the country the specified coordinates belong to</strong><br>example:<br><code class=\"long-string\">52.6178549,-155.352142</code>",
        +        "type": "string"
        +      },
        +      "location_name": {
        +        "description": "<em>full name of search engine location</em><br><strong>required field if you don't specify</strong> <code>location_code</code> or <code>location_coordinate</code><br><strong>if you use this field, you don't need to specify <code>location_code</code> or <code>location_coordinate</code></strong><br>you can receive the list of available locations of the search engine with their <code>location_name</code> by making a separate request to <code>https://api.dataforseo.com/v3/keywords_data/bing/locations</code><br>example:<br><code class=\"long-string\">London,England,United Kingdom</code>",
        +        "type": "string"
        +      },
        +      "search_partners": {
        +        "description": "<em>Bing search partners type</em><br>optional field<br>if you specify <code class=\"prettyprint\">true</code>, the results will be delivered for owned, operated, and syndicated networks across Bing, Yahoo, AOL and partner sites that host Bing, AOL, and Yahoo search.<br>default value: <code>false</code> - results are returned for Bing, AOL, and Yahoo search networks",
        +        "type": [
        +          "boolean",
        +          "null"
        +        ]
        +      },
        +      "sort_by": {
        +        "description": "<em>results sorting parameters</em><br>optional field<br>Use these parameters to sort the results by <code>search_volume</code>, <code>cpc</code>, <code>competition</code> or <code>relevance</code> in the descending order<br>default value: <code>relevance</code>",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "tag": {
        +        "description": "<em>user-defined task identifier</em><br>optional field<br><em>the character limit is 255</em><br>you can use this parameter to identify the task and match it with the result<br>you will find the specified <code>tag</code> value in the <code>data</code> object of the response",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      }
        +    },
        +    "type": "object"
        +  }
        +]
      • removedInput schema / properties / body / items / properties
        Removed value: -{
        -  "date_from": {
        -    "description": "starting date of the time range optional field minimal value: 24 months from today's date; if you don't specify this field, data will be provided for the last 12 months; if Status endpoint returns false in the actual_data field, date_from can be set to the month before last and prior; if Status endpoint returns true in the actual_data field, date_from can be set to the last month and prior; date format: \"yyyy-mm-dd\" example: \"2020-01-01\" Note: we do not recommend using a custom time range for the past year's dates",
        -    "type": "string"
        -  },
        -  "date_to": {
        -    "description": "ending date of the time range optional field if you don’t specify this field, data will be provided for the last 12 months; minimum value: two years back from today’s date; maximum value: one month from today’s date; date format: \"yyyy-mm-dd\" example: \"2020-03-15\" Note: we do not recommend using a custom time range for the past year’s dates",
        -    "type": "string"
        -  },
        -  "device": {
        -    "description": "device type optional field specify this field if you want to get the data for a particular device type; possible values: all, mobile, desktop, tablet default value: all",
        -    "type": "string"
        -  },
        -  "keywords": {
        -    "description": "keywords required field you can specify the maximum of 200 keywords with each keyword containing no more than 100 characters; the specified keywords will be converted to lowercase, data will be provided in a separate array learn more about rules and limitations of keyword and keywords fields in DataForSEO APIs in this Help Center article",
        -    "items": {
        -      "type": "string"
        -    },
        -    "type": "array"
        -  },
        -  "keywords_negative": {
        -    "description": "keywords negative array optional field These keywords will be ignored in the results array; You can specify a maximum of 200 terms that you want to exclude from the results; the specified keywords will be converted to lowercase format",
        -    "items": {
        -      "type": "string"
        -    },
        -    "type": "array"
        -  },
        -  "language_code": {
        -    "description": "search engine language code required field if you don’t specify language_name if you use this field, you don’t need to specify language_name supported languages: en, fr, de",
        -    "type": "string"
        -  },
        -  "language_name": {
        -    "description": "full name of search engine language required field if you don’t specify language_code if you use this field, you don’t need to specify language_code supported languages: English, French, German",
        -    "type": "string"
        -  },
        -  "location_code": {
        -    "description": "search engine location code required field if you don’t specify location_name or location_coordinate if you use this field, you don’t need to specify location_name or location_coordinate you can receive the list of available locations of the search engines with their location_code by making a separate request to https://api.dataforseo.com/v3/keywords_data/bing/locations example: 2840",
        -    "type": "integer"
        -  },
        -  "location_coordinate": {
        -    "description": "GPS coordinates of a location required field if you don’t specify location_name or location_code if you use this field, you don’t need to specify location_name or location_code location_coordinate parameter should be specified in the “latitude,longitude” format the data will be provided for the country the specified coordinates belong to example: 52.6178549,-155.352142",
        -    "type": "string"
        -  },
        -  "location_name": {
        -    "description": "full name of search engine location required field if you don’t specify location_code or location_coordinate if you use this field, you don’t need to specify location_code or location_coordinate you can receive the list of available locations of the search engine with their location_name by making a separate request to https://api.dataforseo.com/v3/keywords_data/bing/locations example: London,England,United Kingdom",
        -    "type": "string"
        -  },
        -  "search_partners": {
        -    "description": "Bing search partners type optional field if you specify true, the results will be delivered for owned, operated, and syndicated networks across Bing, Yahoo, AOL and partner sites that host Bing, AOL, and Yahoo search. default value: false – results are returned for Bing, AOL, and Yahoo search networks",
        -    "type": "boolean"
        -  },
        -  "sort_by": {
        -    "description": "results sorting parameters optional field Use these parameters to sort the results by search_volume, cpc, competition or relevance in the descending order default value: relevance",
        -    "type": "string"
        -  },
        -  "tag": {
        -    "description": "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",
        -    "type": "string"
        -  }
        -}
      • removedInput schema / properties / body / items / required
        Removed value: -[
        -  "keywords"
        -]
      • changedInput schema / properties / body / items / type
        Previous value: -"object"New value: +[
        +  "object",
        +  "null"
        +]
      • changedInput schema / required
        Previous value: -[
        -  "body"
        -]New value: +[]
      • addedOutput schema / x-fastmcp-wrap-result
        Added value: +true
    • Changedpost_dataforseo_keywords_bing_kw_for_site_live8 fields changed
      • addedInput schema / properties / body / example
        Added value: +[
        +  {
        +    "language_code": "en",
        +    "location_code": 2840,
        +    "target": "dataforseo.com"
        +  }
        +]
      • removedInput schema / properties / body / items / allOf
        Removed value: -[
        -  {
        -    "anyOf": [
        -      {
        -        "required": [
        -          "location_name"
        -        ]
        -      },
        -      {
        -        "required": [
        -          "location_code"
        -        ]
        -      },
        -      {
        -        "required": [
        -          "location_coordinate"
        -        ]
        -      }
        -    ]
        -  },
        -  {
        -    "anyOf": [
        -      {
        -        "required": [
        -          "language_name"
        -        ]
        -      },
        -      {
        -        "required": [
        -          "language_code"
        -        ]
        -      }
        -    ]
        -  }
        -]
      • addedInput schema / properties / body / items / anyOf
        Added value: +[
        +  {
        +    "example": [
        +      {
        +        "language_code": "en",
        +        "location_code": 2840,
        +        "target": "dataforseo.com"
        +      }
        +    ],
        +    "properties": {
        +      "date_from": {
        +        "description": "<em>starting date of the time range</em><br>optional field<br>minimal value: 24 months from today's date;<br>if you don't specify this field, data will be provided for the last 12 months;<br>if <a href=\"/v3/keywords_data/bing/status/\" target=\"_blank\" rel=\"noopener noreferrer\">Status endpoint</a> returns <code>false</code> in the <code>actual_data</code> field, <code>date_from</code> can be set to the month before last and prior;<br>if <a href=\"/v3/keywords_data/bing/status/\" target=\"_blank\" rel=\"noopener noreferrer\">Status endpoint</a> returns <code>true</code> in the <code>actual_data</code> field, <code>date_from</code> can be set to the last month and prior;<br>date format: <code>\"yyyy-mm-dd\"</code><br>example:<br><code>\"2020-01-01\"</code><p><strong>Note:</strong> we do not recommend using a custom time range for the past year's dates",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "date_to": {
        +        "description": "<em>ending date of the time range</em><br>optional field<br>if you don't specify this field, data will be provided for the last 12 months;<br>minimum value: two years back from today’s date;<br>maximum value: one month from today's date;<br><strong>note:</strong> we do not recommend using a custom time range for the past year's dates;<br>date format: <code>\"yyyy-mm-dd\"</code><br>example:<br><code>\"2020-03-15\"</code><p><strong>Note:</strong> we do not recommend using a custom time range for the past year's dates",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "device": {
        +        "description": "<em>device type</em><br>optional field<br>specify this field if you want to get the data for a particular device typepossible values: <code>all</code>, <code>mobile</code>, <code>desktop</code>, <code>tablet</code><br>default value: <code>all</code>",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "keywords_negative": {
        +        "description": "<em>keywords negative array</em><br>optional field<br>These keywords will be ignored in the results array;<br>You can specify <strong>a maximum of 200 terms</strong> that you want to exclude from the results;<br>the specified keywords will be converted to lowercase format",
        +        "items": {
        +          "type": "string"
        +        },
        +        "type": [
        +          "array",
        +          "null"
        +        ]
        +      },
        +      "language_code": {
        +        "description": "<em>search engine language code</em><br><strong>required field if you don't specify</strong> <code>language_name</code><br>if you use this field, you don't need to specify <code>language_name</code><br>supported languages:<br><code class=\"long-string\">en</code>, <code>fr</code>, <code>de</code>",
        +        "type": "string"
        +      },
        +      "language_name": {
        +        "description": "<em>full name of search engine language</em><br><strong>required field if you don't specify</strong> <code>language_code</code><br>if you use this field, you don't need to specify <code>language_code</code><br>supported languages:<br><code>English</code>, <code>French</code>, <code>German</code>",
        +        "type": "string"
        +      },
        +      "location_code": {
        +        "description": "<em>search engine location code</em><br><strong>required field if you don't specify</strong> <code>location_name</code> or <code>location_coordinate</code><br><strong>if you use this field, you don't need to specify <code>location_name</code> or <code>location_coordinate</code></strong><br>you can receive the list of available locations of the search engines with their <code>location_code</code> by making a separate request to <code>https://api.dataforseo.com/v3/keywords_data/bing/locations</code><br>example:<br><code class=\"long-string\">2840</code>",
        +        "type": "integer"
        +      },
        +      "location_coordinate": {
        +        "description": "<em>GPS coordinates of a location</em><br><strong>required field if you don't specify</strong> <code>location_name</code> or <code>location_code</code><br><strong>if you use this field, you don't need to specify <code>location_name</code> or <code>location_code</code></strong><br><code>location_coordinate</code> parameter should be specified in the <em>\"latitude,longitude\"</em> format<br><strong>the data will be provided for the country the specified coordinates belong to</strong><br>example:<br><code class=\"long-string\">52.6178549,-155.352142</code>",
        +        "type": "string"
        +      },
        +      "location_name": {
        +        "description": "<em>full name of search engine location</em><br><strong>required field if you don't specify</strong> <code>location_code</code> or <code>location_coordinate</code><br><strong>if you use this field, you don't need to specify <code>location_code</code> or <code>location_coordinate</code></strong><br>you can receive the list of available locations of the search engine with their <code>location_name</code> by making a separate request to <code>https://api.dataforseo.com/v3/keywords_data/bing/locations</code><br>example:<br><code class=\"long-string\">London,England,United Kingdom</code>",
        +        "type": "string"
        +      },
        +      "search_partners": {
        +        "description": "<em>Bing search partners type</em><br>optional field<br>if you specify <code class=\"prettyprint\">true</code>, the results will be delivered for owned, operated, and syndicated networks across Bing, Yahoo, AOL and partner sites that host Bing, AOL, and Yahoo search.<br>default value: <code>false</code> - results are returned for Bing, AOL, and Yahoo search networks",
        +        "type": [
        +          "boolean",
        +          "null"
        +        ]
        +      },
        +      "sort_by": {
        +        "description": "<em>results sorting parameters</em><br>optional field<br>Use these parameters to sort the results by <code>search_volume</code>, <code>cpc</code>, <code>competition</code> or <code>relevance</code> in the descending order<br>default value: <code>relevance</code>",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "tag": {
        +        "description": "<em>user-defined task identifier</em><br>optional field<br><em>the character limit is 255</em><br>you can use this parameter to identify the task and match it with the result<br>you will find the specified <code>tag</code> value in the <code>data</code> object of the response",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "target": {
        +        "description": "<em>domain or URL</em><br><strong>required field</strong><br>the domain name or URL of the target website",
        +        "type": "string"
        +      }
        +    },
        +    "type": "object"
        +  }
        +]
      • removedInput schema / properties / body / items / properties
        Removed value: -{
        -  "date_from": {
        -    "description": "starting date of the time range optional field minimal value: 24 months from today's date; if you don't specify this field, data will be provided for the last 12 months; if Status endpoint returns false in the actual_data field, date_from can be set to the month before last and prior; if Status endpoint returns true in the actual_data field, date_from can be set to the last month and prior; date format: \"yyyy-mm-dd\" example: \"2020-01-01\" Note: we do not recommend using a custom time range for the past year's dates",
        -    "type": "string"
        -  },
        -  "date_to": {
        -    "description": "ending date of the time range optional field if you don’t specify this field, data will be provided for the last 12 months; minimum value: two years back from today’s date; maximum value: one month from today’s date; note: we do not recommend using a custom time range for the past year’s dates; date format: \"yyyy-mm-dd\" example: \"2020-03-15\" Note: we do not recommend using a custom time range for the past year’s dates",
        -    "type": "string"
        -  },
        -  "device": {
        -    "description": "device type optional field specify this field if you want to get the data for a particular device typepossible values: all, mobile, desktop, tablet default value: all",
        -    "type": "string"
        -  },
        -  "keywords_negative": {
        -    "description": "keywords negative array optional field These keywords will be ignored in the results array; You can specify a maximum of 200 terms that you want to exclude from the results; the specified keywords will be converted to lowercase format",
        -    "items": {
        -      "type": "string"
        -    },
        -    "type": "array"
        -  },
        -  "language_code": {
        -    "description": "search engine language code required field if you don’t specify language_name if you use this field, you don’t need to specify language_name supported languages: en, fr, de",
        -    "type": "string"
        -  },
        -  "language_name": {
        -    "description": "full name of search engine language required field if you don’t specify language_code if you use this field, you don’t need to specify language_code supported languages: English, French, German",
        -    "type": "string"
        -  },
        -  "location_code": {
        -    "description": "search engine location code required field if you don’t specify location_name or location_coordinate if you use this field, you don’t need to specify location_name or location_coordinate you can receive the list of available locations of the search engines with their location_code by making a separate request to https://api.dataforseo.com/v3/keywords_data/bing/locations example: 2840",
        -    "type": "integer"
        -  },
        -  "location_coordinate": {
        -    "description": "GPS coordinates of a location required field if you don’t specify location_name or location_code if you use this field, you don’t need to specify location_name or location_code location_coordinate parameter should be specified in the “latitude,longitude” format the data will be provided for the country the specified coordinates belong to example: 52.6178549,-155.352142",
        -    "type": "string"
        -  },
        -  "location_name": {
        -    "description": "full name of search engine location required field if you don’t specify location_code or location_coordinate if you use this field, you don’t need to specify location_code or location_coordinate you can receive the list of available locations of the search engine with their location_name by making a separate request to https://api.dataforseo.com/v3/keywords_data/bing/locations example: London,England,United Kingdom",
        -    "type": "string"
        -  },
        -  "search_partners": {
        -    "description": "Bing search partners type optional field if you specify true, the results will be delivered for owned, operated, and syndicated networks across Bing, Yahoo, AOL and partner sites that host Bing, AOL, and Yahoo search. default value: false – results are returned for Bing, AOL, and Yahoo search networks",
        -    "type": "boolean"
        -  },
        -  "sort_by": {
        -    "description": "results sorting parameters optional field Use these parameters to sort the results by search_volume, cpc, competition or relevance in the descending order default value: relevance",
        -    "type": "string"
        -  },
        -  "tag": {
        -    "description": "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",
        -    "type": "string"
        -  },
        -  "target": {
        -    "description": "domain or URL required field the domain name or URL of the target website",
        -    "type": "string"
        -  }
        -}
      • removedInput schema / properties / body / items / required
        Removed value: -[
        -  "target"
        -]
      • changedInput schema / properties / body / items / type
        Previous value: -"object"New value: +[
        +  "object",
        +  "null"
        +]
      • changedInput schema / required
        Previous value: -[
        -  "body"
        -]New value: +[]
      • addedOutput schema / x-fastmcp-wrap-result
        Added value: +true
    • Changedpost_dataforseo_keywords_bing_kw_performance_live8 fields changed
      • addedInput schema / properties / body / example
        Added value: +[
        +  {
        +    "keywords": [
        +      "dataforseo",
        +      "seo",
        +      "ranking"
        +    ],
        +    "language_code": "en",
        +    "location_code": 2840
        +  }
        +]
      • removedInput schema / properties / body / items / allOf
        Removed value: -[
        -  {
        -    "anyOf": [
        -      {
        -        "required": [
        -          "location_name"
        -        ]
        -      },
        -      {
        -        "required": [
        -          "location_code"
        -        ]
        -      },
        -      {
        -        "required": [
        -          "location_coordinate"
        -        ]
        -      }
        -    ]
        -  },
        -  {
        -    "anyOf": [
        -      {
        -        "required": [
        -          "language_name"
        -        ]
        -      },
        -      {
        -        "required": [
        -          "language_code"
        -        ]
        -      }
        -    ]
        -  }
        -]
      • addedInput schema / properties / body / items / anyOf
        Added value: +[
        +  {
        +    "example": [
        +      {
        +        "keywords": [
        +          "dataforseo",
        +          "seo",
        +          "ranking"
        +        ],
        +        "language_code": "en",
        +        "location_code": 2840
        +      }
        +    ],
        +    "properties": {
        +      "device": {
        +        "description": "<em>device type</em><br>optional field<br>specify this field if you want to get the data for a particular device typepossible values: <code>desktop</code>, <code>mobile</code>, <code>tablet</code>, <code>all</code><br>default value: <code>all</code>",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "keywords": {
        +        "description": "<em>keywords</em><br><strong>required field</strong><br>The maximum number of keywords you can specify: 1000<br>The maximum number of characters for each keyword: 80<br>The maximum number of words for each keyword phrase: 10<br>the specified keywords will be converted to lowercase, data will be provided in a separate array<p>learn more about rules and limitations of <code>keyword</code> and <code>keywords</code> fields in DataForSEO APIs in this <a href=\"https://dataforseo.com/help-center/rules-and-limitations-of-keyword-and-keywords-fields-in-dataforseo-apis\" rel=\"noopener noreferrer\" target=\"_blank\">Help Center article</a>",
        +        "items": {
        +          "type": "string"
        +        },
        +        "type": "array"
        +      },
        +      "language_code": {
        +        "description": "<em>search engine language code</em><br><strong>required field if you don't specify</strong> <code>language_name</code><br>you can receive the list of available locations and languages by making a separate request to <code>https://api.dataforseo.com/v3/keywords_data/bing/keyword_performance/locations_and_languages</code><br>example:<br><code>\"en\"</code>",
        +        "type": "string"
        +      },
        +      "language_name": {
        +        "description": "<em>full name of search engine language</em><br><strong>required field if you don't specify</strong> <code>language_code</code><br><strong>if you use this field, you don't need to specify <code>language_code</code></strong><br>you can receive the list of available locations and languages by making a separate request to <code>https://api.dataforseo.com/v3/keywords_data/bing/keyword_performance/locations_and_languages</code><br>example:<br><code class=\"long-string\">English</code>",
        +        "type": "string"
        +      },
        +      "location_code": {
        +        "description": "<em>search engine location code</em><br><strong>required field if you don't specify</strong> <code>location_name</code> or <code>location_coordinate</code><br><strong>if you use this field, you don't need to specify <code>location_name</code> or <code>location_coordinate</code></strong><br>you can receive the list of available locations and languages by making a separate request to <code>https://api.dataforseo.com/v3/keywords_data/bing/keyword_performance/locations_and_languages</code><br>example:<br><code>2840</code>",
        +        "type": "integer"
        +      },
        +      "location_coordinate": {
        +        "description": "<em>GPS coordinates of a location</em><br><strong>required field if you don't specify</strong> <code>location_name</code> or <code>location_code</code><br><strong>if you use this field, you don't need to specify <code>location_name</code> or <code>location_code</code></strong><br><code>location_coordinate</code> parameter should be specified in the <em>\"latitude,longitude\"</em> format<br><strong>the data will be provided for the country the specified coordinates belong to</strong><br>example:<br><code class=\"long-string\">52.6178549,-155.352142</code>",
        +        "type": "string"
        +      },
        +      "location_name": {
        +        "description": "<em>full name of search engine location</em><br><strong>required field if you don't specify</strong> <code>location_code</code> or <code>location_coordinate</code><br><strong>if you use this field, you don't need to specify <code>location_code</code> or <code>location_coordinate</code></strong><br>you can receive the list of available locations and languages by making a separate request to <code>https://api.dataforseo.com/v3/keywords_data/bing/keyword_performance/locations_and_languages</code><br>example:<br><code>\"United States\"</code>",
        +        "type": "string"
        +      },
        +      "match": {
        +        "description": "<em>keywords match type</em><br>optional field<br>can take the following values:<br><code>aggregate</code> returns data across all match types;<br><code>broad</code> returns data for all user queries containing the specified keyword with varying word order;<br><code>phrase</code> returns data for all user queries containing the specified keyword with identical word order;<br><code>exact</code> returns data for user query that matches the specified keyword;<strong>Note:</strong> the <code>aggregate</code> match type is applied by default",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "tag": {
        +        "description": "<em>user-defined task identifier</em><br>optional field<br><em>the character limit is 255</em><br>you can use this parameter to identify the task and match it with the result<br>you will find the specified <code>tag</code> value in the <code>data</code> object of the response",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      }
        +    },
        +    "type": "object"
        +  }
        +]
      • removedInput schema / properties / body / items / properties
        Removed value: -{
        -  "device": {
        -    "description": "device type optional field specify this field if you want to get the data for a particular device typepossible values: desktop, mobile, tablet, all default value: all",
        -    "type": "string"
        -  },
        -  "keywords": {
        -    "description": "keywords required field The maximum number of keywords you can specify: 1000 The maximum number of characters for each keyword: 80 The maximum number of words for each keyword phrase: 10 the specified keywords will be converted to lowercase, data will be provided in a separate array learn more about rules and limitations of keyword and keywords fields in DataForSEO APIs in this Help Center article",
        -    "items": {
        -      "type": "string"
        -    },
        -    "type": "array"
        -  },
        -  "language_code": {
        -    "description": "search engine language code required field if you don’t specify language_name you can receive the list of available locations and languages by making a separate request to https://api.dataforseo.com/v3/keywords_data/bing/keyword_performance/locations_and_languages example: \"en\"",
        -    "type": "string"
        -  },
        -  "language_name": {
        -    "description": "full name of search engine language required field if you don’t specify language_code if you use this field, you don’t need to specify language_code you can receive the list of available locations and languages by making a separate request to https://api.dataforseo.com/v3/keywords_data/bing/keyword_performance/locations_and_languages example: English",
        -    "type": "string"
        -  },
        -  "location_code": {
        -    "description": "search engine location code required field if you don’t specify location_name or location_coordinate if you use this field, you don’t need to specify location_name or location_coordinate you can receive the list of available locations and languages by making a separate request to https://api.dataforseo.com/v3/keywords_data/bing/keyword_performance/locations_and_languages example: 2840",
        -    "type": "integer"
        -  },
        -  "location_coordinate": {
        -    "description": "GPS coordinates of a location required field if you don’t specify location_name or location_code if you use this field, you don’t need to specify location_name or location_code location_coordinate parameter should be specified in the “latitude,longitude” format the data will be provided for the country the specified coordinates belong to example: 52.6178549,-155.352142",
        -    "type": "string"
        -  },
        -  "location_name": {
        -    "description": "full name of search engine location required field if you don’t specify location_code or location_coordinate if you use this field, you don’t need to specify location_code or location_coordinate you can receive the list of available locations and languages by making a separate request to https://api.dataforseo.com/v3/keywords_data/bing/keyword_performance/locations_and_languages example: \"United States\"",
        -    "type": "string"
        -  },
        -  "match": {
        -    "description": "keywords match type optional field can take the following values: aggregate returns data across all match types; broad returns data for all user queries containing the specified keyword with varying word order; phrase returns data for all user queries containing the specified keyword with identical word order; exact returns data for user query that matches the specified keyword;Note: the aggregate match type is applied by default",
        -    "type": "string"
        -  },
        -  "tag": {
        -    "description": "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",
        -    "type": "string"
        -  }
        -}
      • removedInput schema / properties / body / items / required
        Removed value: -[
        -  "keywords"
        -]
      • changedInput schema / properties / body / items / type
        Previous value: -"object"New value: +[
        +  "object",
        +  "null"
        +]
      • changedInput schema / required
        Previous value: -[
        -  "body"
        -]New value: +[]
      • addedOutput schema / x-fastmcp-wrap-result
        Added value: +true
    • Changedpost_dataforseo_keywords_bing_search_volume_live8 fields changed
      • addedInput schema / properties / body / example
        Added value: +[
        +  {
        +    "keywords": [
        +      "tom and jerry",
        +      "silicon valley",
        +      "spider man"
        +    ],
        +    "language_code": "en",
        +    "location_name": "United States"
        +  }
        +]
      • removedInput schema / properties / body / items / allOf
        Removed value: -[
        -  {
        -    "anyOf": [
        -      {
        -        "required": [
        -          "location_name"
        -        ]
        -      },
        -      {
        -        "required": [
        -          "location_code"
        -        ]
        -      },
        -      {
        -        "required": [
        -          "location_coordinate"
        -        ]
        -      }
        -    ]
        -  },
        -  {
        -    "anyOf": [
        -      {
        -        "required": [
        -          "language_name"
        -        ]
        -      },
        -      {
        -        "required": [
        -          "language_code"
        -        ]
        -      }
        -    ]
        -  }
        -]
      • addedInput schema / properties / body / items / anyOf
        Added value: +[
        +  {
        +    "example": [
        +      {
        +        "keywords": [
        +          "tom and jerry",
        +          "silicon valley",
        +          "spider man"
        +        ],
        +        "language_code": "en",
        +        "location_name": "United States"
        +      }
        +    ],
        +    "properties": {
        +      "date_from": {
        +        "description": "<em>starting date of the time range</em><br>optional field<br>minimal value: 24 months from today's date;<br>if you don't specify this field, data will be provided for the last 12 months;<br>minimum value: two years back from today’s date;<br>if <a href=\"/v3/keywords_data/bing/status/\" target=\"_blank\" rel=\"noopener noreferrer\">Status endpoint</a> returns <code>false</code> in the <code>actual_data</code> field, <code>date_from</code> can be set to the month before last and prior;<br>if <a href=\"/v3/keywords_data/bing/status/\" target=\"_blank\" rel=\"noopener noreferrer\">Status endpoint</a> returns <code>true</code> in the <code>actual_data</code> field, <code>date_from</code> can be set to the last month and prior;<br>date format: <code>\"yyyy-mm-dd\"</code><br>example:<br><code>\"2020-01-01\"</code><strong>Note:</strong> we do not recommend using a custom time range for the past year's dates",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "date_to": {
        +        "description": "<em>ending date of the time range</em><br>optional field<br>if you don't specify this field, data will be provided for the last 12 months;<br>minimum value: two years back from today’s date;<br>maximum value: one month from today's date;<br><strong>note:</strong> we do not recommend using a custom time range for the past year's dates;<br>date format: <code>\"yyyy-mm-dd\"</code><br>example:<br><code>\"2020-03-15\"</code><strong>Note:</strong> we do not recommend using a custom time range for the past year's dates",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "device": {
        +        "description": "<em>device type</em><br>optional field<br>specify this field if you want to get the data for a particular device type;<br>possible values: <code>all</code>, <code>mobile</code>, <code>desktop</code>, <code>tablet</code><br>default value: <code>all</code>",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "keywords": {
        +        "description": "<em>keywords</em><br><strong>required field</strong><br>The maximum number of keywords you can specify: 1000<br>The maximum number of characters for each keyword: 100<br>the specified keywords will be converted to lowercase, data will be provided in a separate arraylearn more about rules and limitations of <code>keyword</code> and <code>keywords</code> fields in DataForSEO APIs in this <a href=\"https://dataforseo.com/help-center/rules-and-limitations-of-keyword-and-keywords-fields-in-dataforseo-apis\" target=\"_blank\" rel=\"noopener noreferrer\">Help Center article</a>",
        +        "items": {
        +          "type": "string"
        +        },
        +        "type": "array"
        +      },
        +      "language_code": {
        +        "description": "<em>search engine language code</em><br><strong>required field if you don't specify</strong> <code>language_name</code><br>if you use this field, you don't need to specify <code>language_name</code><br>supported languages:<br><code class=\"long-string\">en</code>, <code>fr</code>, <code>de</code>",
        +        "type": "string"
        +      },
        +      "language_name": {
        +        "description": "<em>full name of search engine language</em><br><strong>required field if you don't specify</strong> <code>language_code</code><br>if you use this field, you don't need to specify <code>language_code</code><br>supported languages:<br><code>English</code>, <code>French</code>, <code>German</code>",
        +        "type": "string"
        +      },
        +      "location_code": {
        +        "description": "<em>search engine location code</em><br><strong>required field if you don't specify</strong> <code>location_name</code> or <code>location_coordinate</code><br><strong>if you use this field, you don't need to specify <code>location_name</code> or <code>location_coordinate</code></strong><br>you can receive the list of available locations of the search engines with their <code>location_code</code> by making a separate request to <code>https://api.dataforseo.com/v3/keywords_data/bing/locations</code><br>example:<br><code class=\"long-string\">2840</code>",
        +        "type": "integer"
        +      },
        +      "location_coordinate": {
        +        "description": "<em>GPS coordinates of a location</em><br><strong>required field if you don't specify</strong> <code>location_name</code> or <code>location_code</code><br><strong>if you use this field, you don't need to specify <code>location_name</code> or <code>location_code</code></strong><br><code>location_coordinate</code> parameter should be specified in the <em>\"latitude,longitude\"</em> format<br><strong>the data will be provided for the country the specified coordinates belong to</strong><br>example:<br><code class=\"long-string\">52.6178549,-155.352142</code>",
        +        "type": "string"
        +      },
        +      "location_name": {
        +        "description": "<em>full name of search engine location</em><br><strong>required field if you don't specify</strong> <code>location_code</code> or <code>location_coordinate</code><br><strong>if you use this field, you don't need to specify <code>location_code</code> or <code>location_coordinate</code></strong><br>you can receive the list of available locations of the search engine with their <code>location_name</code> by making a separate request to <code>https://api.dataforseo.com/v3/keywords_data/bing/locations</code><br>example:<br><code class=\"long-string\">London,England,United Kingdom</code>",
        +        "type": "string"
        +      },
        +      "search_partners": {
        +        "description": "<em>Bing search partners type</em><br>optional field<br>if you specify <code class=\"prettyprint\">true</code>, the results will be delivered for owned, operated, and syndicated networks across Bing, Yahoo, AOL and partner sites that host Bing, AOL, and Yahoo search.<br>default value: <code>false</code> - results are returned for Bing, AOL, and Yahoo search networks",
        +        "type": [
        +          "boolean",
        +          "null"
        +        ]
        +      },
        +      "sort_by": {
        +        "description": "<em>results sorting parameters</em><br>optional field<br>Use these parameters to sort the results by <code>search_volume</code>, <code>cpc</code>, <code>competition</code> or <code>relevance</code> in the descending order<br>default value: <code>relevance</code>",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "tag": {
        +        "description": "<em>user-defined task identifier</em><br>optional field<br><em>the character limit is 255</em><br>you can use this parameter to identify the task and match it with the result<br>you will find the specified <code>tag</code> value in the <code>data</code> object of the response",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      }
        +    },
        +    "type": "object"
        +  }
        +]
      • removedInput schema / properties / body / items / properties
        Removed value: -{
        -  "date_from": {
        -    "description": "starting date of the time range optional field minimal value: 24 months from today's date; if you don't specify this field, data will be provided for the last 12 months; minimum value: two years back from today’s date; if Status endpoint returns false in the actual_data field, date_from can be set to the month before last and prior; if Status endpoint returns true in the actual_data field, date_from can be set to the last month and prior; date format: \"yyyy-mm-dd\" example: \"2020-01-01\"Note: we do not recommend using a custom time range for the past year's dates",
        -    "type": "string"
        -  },
        -  "date_to": {
        -    "description": "ending date of the time range optional field if you don’t specify this field, data will be provided for the last 12 months; minimum value: two years back from today’s date; maximum value: one month from today’s date; note: we do not recommend using a custom time range for the past year’s dates; date format: \"yyyy-mm-dd\" example: \"2020-03-15\" Note: we do not recommend using a custom time range for the past year’s dates",
        -    "type": "string"
        -  },
        -  "device": {
        -    "description": "device type optional field specify this field if you want to get the data for a particular device type; possible values: all, mobile, desktop, tablet default value: all",
        -    "type": "string"
        -  },
        -  "keywords": {
        -    "description": "keywords required field The maximum number of keywords you can specify: 1000 The maximum number of characters for each keyword: 100 the specified keywords will be converted to lowercase, data will be provided in a separate array learn more about rules and limitations of keyword and keywords fields in DataForSEO APIs in this Help Center article",
        -    "items": {
        -      "type": "string"
        -    },
        -    "type": "array"
        -  },
        -  "language_code": {
        -    "description": "search engine language code required field if you don’t specify language_name if you use this field, you don’t need to specify language_name supported languages: en, fr, de",
        -    "type": "string"
        -  },
        -  "language_name": {
        -    "description": "full name of search engine language required field if you don’t specify language_code if you use this field, you don’t need to specify language_code supported languages: English, French, German",
        -    "type": "string"
        -  },
        -  "location_code": {
        -    "description": "search engine location code required field if you don’t specify location_name or location_coordinate if you use this field, you don’t need to specify location_name or location_coordinate you can receive the list of available locations of the search engines with their location_code by making a separate request to https://api.dataforseo.com/v3/keywords_data/bing/locations example: 2840",
        -    "type": "integer"
        -  },
        -  "location_coordinate": {
        -    "description": "GPS coordinates of a location required field if you don’t specify location_name or location_code if you use this field, you don’t need to specify location_name or location_code location_coordinate parameter should be specified in the “latitude,longitude” format the data will be provided for the country the specified coordinates belong to example: 52.6178549,-155.352142",
        -    "type": "string"
        -  },
        -  "location_name": {
        -    "description": "full name of search engine location required field if you don’t specify location_code or location_coordinate if you use this field, you don’t need to specify location_code or location_coordinate you can receive the list of available locations of the search engine with their location_name by making a separate request to https://api.dataforseo.com/v3/keywords_data/bing/locations example: London,England,United Kingdom",
        -    "type": "string"
        -  },
        -  "search_partners": {
        -    "description": "Bing search partners type optional field if you specify true, the results will be delivered for owned, operated, and syndicated networks across Bing, Yahoo, AOL and partner sites that host Bing, AOL, and Yahoo search. default value: false – results are returned for Bing, AOL, and Yahoo search networks",
        -    "type": "boolean"
        -  },
        -  "sort_by": {
        -    "description": "results sorting parameters optional field Use these parameters to sort the results by search_volume, cpc, competition or relevance in the descending order default value: relevance",
        -    "type": "string"
        -  },
        -  "tag": {
        -    "description": "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",
        -    "type": "string"
        -  }
        -}
      • removedInput schema / properties / body / items / required
        Removed value: -[
        -  "keywords"
        -]
      • changedInput schema / properties / body / items / type
        Previous value: -"object"New value: +[
        +  "object",
        +  "null"
        +]
      • changedInput schema / required
        Previous value: -[
        -  "body"
        -]New value: +[]
      • addedOutput schema / x-fastmcp-wrap-result
        Added value: +true
    • Changedpost_dataforseo_keywords_clickstream_bulk_volume_live8 fields changed
      • addedInput schema / properties / body / example
        Added value: +[
        +  {
        +    "keywords": [
        +      "you tube",
        +      "youtube",
        +      "youtub"
        +    ],
        +    "location_code": 2840,
        +    "tag": "test-tag"
        +  }
        +]
      • removedInput schema / properties / body / items / allOf
        Removed value: -[
        -  {
        -    "anyOf": [
        -      {
        -        "required": [
        -          "location_name"
        -        ]
        -      },
        -      {
        -        "required": [
        -          "location_code"
        -        ]
        -      }
        -    ]
        -  }
        -]
      • addedInput schema / properties / body / items / anyOf
        Added value: +[
        +  {
        +    "example": [
        +      {
        +        "keywords": [
        +          "you tube",
        +          "youtube",
        +          "youtub"
        +        ],
        +        "location_code": 2840,
        +        "tag": "test-tag"
        +      }
        +    ],
        +    "properties": {
        +      "keywords": {
        +        "description": "<em>target keywords</em><br><strong>required field</strong><br>UTF-8 encoding<br>maximum number of keywords you can specify in this array: 1000;<br>each keyword should be at least 3 characters long;<br>the keywords will be converted to lowercase format;<br><strong>Note:</strong> certain symbols and characters (e.g., UTF symbols, emojis) are not allowed<br>to learn more about which symbols and characters can be used, please refer to <a href=\"https://dataforseo.com/help-center/using-symbols-in-keywords-when-setting-a-google-ads-task\" target=\"_blank\" rel=\"noopener noreferrer\">this article</a><p>learn more about rules and limitations of <code>keyword</code> and <code>keywords</code> fields in DataForSEO APIs in this <a href=\"https://dataforseo.com/help-center/rules-and-limitations-of-keyword-and-keywords-fields-in-dataforseo-apis\" rel=\"noopener noreferrer\" target=\"_blank\">Help Center article</a>",
        +        "items": {
        +          "type": "string"
        +        },
        +        "type": "array"
        +      },
        +      "location_code": {
        +        "description": "<em>location code</em><br><strong>required field if you don't specify</strong> <code>location_name</code><br><strong>Note:</strong> it is required to specify either <code>location_name</code> or <code>location_code</code><br>you can receive the list of available locations with their <code>location_code</code> by making a separate request to the <br><code>https://api.dataforseo.com/v3/keywords_data/clickstream_data/locations_and_languages</code><br>example:<br><code class=\"long-string\">2840</code>",
        +        "type": "integer"
        +      },
        +      "location_name": {
        +        "description": "<em>full name of the location</em><br><strong>required field if you don't specify</strong> <code>location_code</code><br><strong>Note:</strong> it is required to specify either <code>location_name</code> or <code>location_code</code><br>you can receive the list of available locations with their <code>location_name</code> by making a separate request to the <br><code>https://api.dataforseo.com/v3/keywords_data/clickstream_data/locations_and_languages</code><br>example:<br><code class=\"long-string\">United Kingdom</code>",
        +        "type": "string"
        +      },
        +      "tag": {
        +        "description": "<em>user-defined task identifier</em><br>optional field<br><em>the character limit is 255</em><br>you can use this parameter to identify the task and match it with the result<br>you will find the specified <code>tag</code> value in the <code>data</code> object of the response",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      }
        +    },
        +    "type": "object"
        +  }
        +]
      • removedInput schema / properties / body / items / properties
        Removed value: -{
        -  "keywords": {
        -    "description": "target keywords required field UTF-8 encoding maximum number of keywords you can specify in this array: 1000; each keyword should be at least 3 characters long; the keywords will be converted to lowercase format; Note: certain symbols and characters (e.g., UTF symbols, emojis) are not allowed to learn more about which symbols and characters can be used, please refer to this article learn more about rules and limitations of keyword and keywords fields in DataForSEO APIs in this Help Center article",
        -    "items": {
        -      "type": "string"
        -    },
        -    "type": "array"
        -  },
        -  "location_code": {
        -    "description": "location code required field if you don’t specify location_name Note: it is required to specify either location_name or location_code you can receive the list of available locations with their location_code by making a separate request to the https://api.dataforseo.com/v3/keywords_data/clickstream_data/locations_and_languages example: 2840",
        -    "type": "integer"
        -  },
        -  "location_name": {
        -    "description": "full name of the location required field if you don’t specify location_code Note: it is required to specify either location_name or location_code you can receive the list of available locations with their location_name by making a separate request to the https://api.dataforseo.com/v3/keywords_data/clickstream_data/locations_and_languages example: United Kingdom",
        -    "type": "string"
        -  },
        -  "tag": {
        -    "description": "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",
        -    "type": "string"
        -  }
        -}
      • removedInput schema / properties / body / items / required
        Removed value: -[
        -  "keywords"
        -]
      • changedInput schema / properties / body / items / type
        Previous value: -"object"New value: +[
        +  "object",
        +  "null"
        +]
      • changedInput schema / required
        Previous value: -[
        -  "body"
        -]New value: +[]
      • addedOutput schema / x-fastmcp-wrap-result
        Added value: +true
    • Changedpost_dataforseo_keywords_clickstream_global_volume_live7 fields changed
      • addedInput schema / properties / body / example
        Added value: +[
        +  {
        +    "keywords": [
        +      "you tube",
        +      "youtube",
        +      "youtub"
        +    ],
        +    "tag": "test-tag"
        +  }
        +]
      • addedInput schema / properties / body / items / anyOf
        Added value: +[
        +  {
        +    "example": [
        +      {
        +        "keywords": [
        +          "you tube",
        +          "youtube",
        +          "youtub"
        +        ],
        +        "tag": "test-tag"
        +      }
        +    ],
        +    "properties": {
        +      "keywords": {
        +        "description": "<em>target keywords</em><br><strong>required field</strong><br>UTF-8 encoding<br>maximum number of keywords you can specify in this array: 1000;<br>each keyword should be at least 3 characters long;<br>the keywords will be converted to lowercase format;<br><strong>Note:</strong> certain symbols and characters (e.g., UTF symbols, emojis) are not allowed<br>to learn more about which symbols and characters can be used, please refer to <a href=\"https://dataforseo.com/help-center/using-symbols-in-keywords-when-setting-a-google-ads-task\" target=\"_blank\" rel=\"noopener noreferrer\">this article</a><p>learn more about rules and limitations of <code>keyword</code> and <code>keywords</code> fields in DataForSEO APIs in this <a href=\"https://dataforseo.com/help-center/rules-and-limitations-of-keyword-and-keywords-fields-in-dataforseo-apis\" rel=\"noopener noreferrer\" target=\"_blank\">Help Center article</a>",
        +        "items": {
        +          "type": "string"
        +        },
        +        "type": "array"
        +      },
        +      "tag": {
        +        "description": "<em>user-defined task identifier</em><br>optional field<br><em>the character limit is 255</em><br>you can use this parameter to identify the task and match it with the result<br>you will find the specified <code>tag</code> value in the <code>data</code> object of the response",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      }
        +    },
        +    "type": "object"
        +  }
        +]
      • removedInput schema / properties / body / items / properties
        Removed value: -{
        -  "keywords": {
        -    "description": "target keywords required field UTF-8 encoding maximum number of keywords you can specify in this array: 1000; each keyword should be at least 3 characters long; the keywords will be converted to lowercase format; Note: certain symbols and characters (e.g., UTF symbols, emojis) are not allowed to learn more about which symbols and characters can be used, please refer to this article learn more about rules and limitations of keyword and keywords fields in DataForSEO APIs in this Help Center article",
        -    "items": {
        -      "type": "string"
        -    },
        -    "type": "array"
        -  },
        -  "tag": {
        -    "description": "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",
        -    "type": "string"
        -  }
        -}
      • removedInput schema / properties / body / items / required
        Removed value: -[
        -  "keywords"
        -]
      • changedInput schema / properties / body / items / type
        Previous value: -"object"New value: +[
        +  "object",
        +  "null"
        +]
      • changedInput schema / required
        Previous value: -[
        -  "body"
        -]New value: +[]
      • addedOutput schema / x-fastmcp-wrap-result
        Added value: +true
    • Changedpost_dataforseo_keywords_clickstream_search_volume_live8 fields changed
      • addedInput schema / properties / body / example
        Added value: +[
        +  {
        +    "keywords": [
        +      "you tube",
        +      "youtube",
        +      "youtub"
        +    ],
        +    "language_code": "en",
        +    "location_code": 2840,
        +    "tag": "test-tag"
        +  }
        +]
      • removedInput schema / properties / body / items / allOf
        Removed value: -[
        -  {
        -    "anyOf": [
        -      {
        -        "required": [
        -          "location_name"
        -        ]
        -      },
        -      {
        -        "required": [
        -          "location_code"
        -        ]
        -      }
        -    ]
        -  },
        -  {
        -    "anyOf": [
        -      {
        -        "required": [
        -          "language_name"
        -        ]
        -      },
        -      {
        -        "required": [
        -          "language_code"
        -        ]
        -      }
        -    ]
        -  }
        -]
      • addedInput schema / properties / body / items / anyOf
        Added value: +[
        +  {
        +    "example": [
        +      {
        +        "keywords": [
        +          "you tube",
        +          "youtube",
        +          "youtub"
        +        ],
        +        "language_code": "en",
        +        "location_code": 2840,
        +        "tag": "test-tag"
        +      }
        +    ],
        +    "properties": {
        +      "keywords": {
        +        "description": "<em>target keywords</em><br><strong>required field</strong><br>UTF-8 encoding<br>maximum number of keywords you can specify in this array: 1000<br>the keywords will be converted to lowercase format<p><strong>Note:</strong> certain symbols and characters (e.g., UTF symbols, emojis) are not allowed<br>to learn more about which symbols and characters can be used, please refer to <a href=\"https://dataforseo.com/help-center/using-symbols-in-keywords-when-setting-a-google-ads-task\" target=\"_blank\" rel=\"noopener noreferrer\">this article</a><p>learn more about rules and limitations of <code>keyword</code> and <code>keywords</code> fields in DataForSEO APIs in this <a href=\"https://dataforseo.com/help-center/rules-and-limitations-of-keyword-and-keywords-fields-in-dataforseo-apis\" rel=\"noopener noreferrer\" target=\"_blank\">Help Center article</a>",
        +        "items": {
        +          "type": "string"
        +        },
        +        "type": "array"
        +      },
        +      "language_code": {
        +        "description": "<em>search engine language code</em><br><strong>required field if don’t specify <code>language_name</code></strong><br>you can receive the list of available languages with their <code>language_code</code> by making a separate request to the <code>https://api.dataforseo.com/v3/keywords_data/clickstream_data/locations_and_languages</code><br>example:<br><code class=\"long-string\">en</code>",
        +        "type": "string"
        +      },
        +      "language_name": {
        +        "description": "<em>full name of search engine language</em><br><strong>required field if don’t specify <code>language_code</code></strong><br>you can receive the list of available languages with their <code>language_name</code> by making a separate request to the <code>https://api.dataforseo.com/v3/keywords_data/clickstream_data/locations_and_languages</code><br>example:<br><code class=\"long-string\">English</code>",
        +        "type": "string"
        +      },
        +      "location_code": {
        +        "description": "<em>search engine location code</em><br><strong>required field if you don’t specify <code>location_name</code></strong><br>if you use this field, you can receive the list of available locations with <code>location_code</code> by making a separate request to the <code>https://api.dataforseo.com/v3/keywords_data/clickstream_data/locations_and_languages</code><br>example:<br><code class=\"long-string\">2826</code>",
        +        "type": "integer"
        +      },
        +      "location_name": {
        +        "description": "<em>full name of search engine location</em><br><strong>required field if you don’t specify <code>location_code </code></strong><br>you can receive the list of available locations with <code>location_name</code> by making a separate request to <code>https://api.dataforseo.com/v3/keywords_data/clickstream_data/locations_and_languages</code><br>example:<br><code class=\"long-string\">United Kingdom</code>",
        +        "type": "string"
        +      },
        +      "tag": {
        +        "description": "<em>user-defined task identifier</em><br>optional field<br><em>the character limit is 255</em><br>you can use this parameter to identify the task and match it with the result<br>you will find the specified <code>tag</code> value in the <code>data</code> object of the response",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "use_clickstream": {
        +        "description": "<em>use clickstream data to provide results</em><br>optional field<br>if set to <code>true</code>, you will get DataForSEO search volume values based on clickstream data;<br>if set to <code>false</code>, Bing search volume data will be used to calculate DataForSEO search volume;<br>default value: <code>true</code>;<br><strong>Note:</strong> Bing search volume is available for locations provided in <a href=\"https://docs.dataforseo.com/v3/keywords_data/bing/search_volume_history/locations_and_languages/?bash\" rel=\"noopener noreferrer\" target=\"_blank\">Bing Search Volume History Locations</a> and <a href=\"https://docs.dataforseo.com/v3/keywords_data/bing/locations/?bash\" rel=\"noopener noreferrer\" target=\"_blank\">Bing Ads Locations</a> endpoints; search volume values for any other location are calculated based on clickstream data even if you set this parameter to <code>false</code>",
        +        "type": [
        +          "boolean",
        +          "null"
        +        ]
        +      }
        +    },
        +    "type": "object"
        +  }
        +]
      • removedInput schema / properties / body / items / properties
        Removed value: -{
        -  "keywords": {
        -    "description": "target keywords required field UTF-8 encoding maximum number of keywords you can specify in this array: 1000 the keywords will be converted to lowercase format Note: certain symbols and characters (e.g., UTF symbols, emojis) are not allowed to learn more about which symbols and characters can be used, please refer to this article learn more about rules and limitations of keyword and keywords fields in DataForSEO APIs in this Help Center article",
        -    "items": {
        -      "type": "string"
        -    },
        -    "type": "array"
        -  },
        -  "language_code": {
        -    "description": "search engine language code required field if don’t specify language_name you can receive the list of available languages with their language_code by making a separate request to the https://api.dataforseo.com/v3/keywords_data/clickstream_data/locations_and_languages example: en",
        -    "type": "string"
        -  },
        -  "language_name": {
        -    "description": "full name of search engine language required field if don’t specify language_code you can receive the list of available languages with their language_name by making a separate request to the https://api.dataforseo.com/v3/keywords_data/clickstream_data/locations_and_languages example: English",
        -    "type": "string"
        -  },
        -  "location_code": {
        -    "description": "search engine location code required field if you don’t specify location_name if you use this field, you can receive the list of available locations with location_code by making a separate request to the https://api.dataforseo.com/v3/keywords_data/clickstream_data/locations_and_languages example: 2826",
        -    "type": "integer"
        -  },
        -  "location_name": {
        -    "description": "full name of search engine location required field if you don’t specify location_code you can receive the list of available locations with location_name by making a separate request to https://api.dataforseo.com/v3/keywords_data/clickstream_data/locations_and_languages example: United Kingdom",
        -    "type": "string"
        -  },
        -  "tag": {
        -    "description": "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",
        -    "type": "string"
        -  },
        -  "use_clickstream": {
        -    "description": "use clickstream data to provide results optional field if set to true, you will get DataForSEO search volume values based on clickstream data; if set to false, Bing search volume data will be used to calculate DataForSEO search volume; default value: true; Note: Bing search volume is available for locations provided in Bing Search Volume History Locations and Bing Ads Locations endpoints; search volume values for any other location are calculated based on clickstream data even if you set this parameter to false",
        -    "type": "boolean"
        -  }
        -}
      • removedInput schema / properties / body / items / required
        Removed value: -[
        -  "keywords"
        -]
      • changedInput schema / properties / body / items / type
        Previous value: -"object"New value: +[
        +  "object",
        +  "null"
        +]
      • changedInput schema / required
        Previous value: -[
        -  "body"
        -]New value: +[]
      • addedOutput schema / x-fastmcp-wrap-result
        Added value: +true
    • Changedpost_dataforseo_keywords_gads_ad_traffic_submit8 fields changed
      • addedInput schema / properties / body / example
        Added value: +[
        +  {
        +    "bid": 999,
        +    "keywords": [
        +      "seo marketing"
        +    ],
        +    "language_code": "en",
        +    "location_code": 2840,
        +    "match": "exact"
        +  }
        +]
      • removedInput schema / properties / body / items / allOf
        Removed value: -[
        -  {
        -    "anyOf": [
        -      {
        -        "required": [
        -          "date_from",
        -          "date_to"
        -        ]
        -      },
        -      {
        -        "not": {
        -          "anyOf": [
        -            {
        -              "required": [
        -                "date_from"
        -              ]
        -            },
        -            {
        -              "required": [
        -                "date_to"
        -              ]
        -            }
        -          ]
        -        }
        -      }
        -    ]
        -  }
        -]
      • addedInput schema / properties / body / items / anyOf
        Added value: +[
        +  {
        +    "example": [
        +      {
        +        "bid": 999,
        +        "keywords": [
        +          "seo marketing"
        +        ],
        +        "language_code": "en",
        +        "location_code": 2840,
        +        "match": "exact"
        +      }
        +    ],
        +    "properties": {
        +      "bid": {
        +        "description": "<em>the maximum custom bid</em><br><strong>required field</strong><br>the collected data will be based on this value<br>it stands for the price you are willing to pay for an ad; the higher value you specify here, the higher values you will get in the returned metrics<br>learn more in <a href=\"https://dataforseo.com/help-center/configuring-bid\">this help center article</a>",
        +        "type": "number"
        +      },
        +      "date_from": {
        +        "description": "<em>starting date of the forecasting time range</em><br>required field if you specify <code>date_to</code><br><strong>if you indicate <code>date_from</code> and <code>date_to</code>, you don't need to specify <code>date_interval</code></strong><br>minimum value is tomorrow's date<br>the value you specify in <code>date_from</code> shouldn't be further than <code>date_to</code><br>date format: <code>\"yyyy-mm-dd\"</code><br>example:<br><code>\"2021-10-30\"</code>if <a href=\"/v3/keywords_data/google_ads/status/\" target=\"_blank\" rel=\"noopener noreferrer\">Status endpoint</a> returns <code>false</code> in the <code>actual_data</code> field, <code>date_from</code> can be set to the month before last and prior;<br>if <a href=\"/v3/keywords_data/google_ads/status/\" target=\"_blank\" rel=\"noopener noreferrer\">Status endpoint</a> returns <code>true</code> in the <code>actual_data</code> field, <code>date_from</code> can be set to the last month and prior",
        +        "type": "string"
        +      },
        +      "date_interval": {
        +        "description": "<em>forecasting date interval</em><br>optional field<br><strong>if you specify <code>date_interval</code>, you don't need to indicate <code>date_from</code> and <code>date_to</code></strong><br>possible values: <code>next_week</code>, <code>next_month</code>, <code>next_quarter</code><br>default value: <code>next_month</code>",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "date_to": {
        +        "description": "<em>ending date of the forecasting time range</em><br>required field if you specify <code>date_from</code><br><strong>if you indicate <code>date_from</code> and <code>date_to</code>, you don't need to specify <code>date_interval</code></strong><br>minimum value is <code>date_from</code> +1 day<br>maximum value is current day and month of the next year<br>date format: <code>\"yyyy-mm-dd\"</code><br>example:<br><code>\"2022-10-30\"</code>",
        +        "type": "string"
        +      },
        +      "keywords": {
        +        "description": "<em>keywords</em><br><strong>required field</strong><br>The maximum number of keywords you can specify: 1000<br>The maximum number of characters for each keyword: 80<br>The maximum number of words for each keyword phrase: 10<br>the keywords you specify will be converted to a lowercase format<br><strong>Note #1:</strong> <a href=\"https://dataforseo.com/help-center/no-search-volume-data-for-some-keywords\" target=\"_blank\" rel=\"noopener noreferrer\">Google Ads may return no data for certain groups of keywords</a>;<br><strong>Note #2:</strong> <a href=\"https://dataforseo.com/help-center/sv-broad-exact-phrase-match\" target=\"_blank\" rel=\"noopener noreferrer\">Google Ads provides combined search volume values for groups of similar keywords</a><br>to obtain search volume for similar keywords, we recommend submitting such keywords in separate requests;<br><strong>Note #3:</strong> Google Ads doesn't allow using certain symbols and characters (e.g., UTF symbols, emojis), so you can't use them when setting a task;<br>to learn more about which symbols and characters can be used, please refer to <a href=\"https://dataforseo.com/help-center/using-symbols-in-keywords-when-setting-a-google-ads-task\" target=\"_blank\" rel=\"noopener noreferrer\">this article</a><p>learn more about rules and limitations of <code>keyword</code> and <code>keywords</code> fields in DataForSEO APIs in this <a href=\"https://dataforseo.com/help-center/rules-and-limitations-of-keyword-and-keywords-fields-in-dataforseo-apis\" rel=\"noopener noreferrer\" target=\"_blank\">Help Center article</a>",
        +        "items": {
        +          "type": "string"
        +        },
        +        "type": "array"
        +      },
        +      "language_code": {
        +        "description": "<em>search engine language code</em><br>optional field<br>you can receive the list of available languages of the search engine with their <code>language_code</code> by making a separate request to <code>https://api.dataforseo.com/v3/keywords_data/google_ads/languages</code><br>example:<br><code class=\"long-string\">en</code>",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "language_name": {
        +        "description": "<em>full name of search engine language</em><br>optional field<br>you can receive the list of available languages of the search engine with their <code>language_name</code> by making a separate request to <code>https://api.dataforseo.com/v3/keywords_data/google_ads/languages</code><br>example:<br><code class=\"long-string\">English</code>",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "location_code": {
        +        "description": "<em>search engine location code</em><br>optional field<br>if you do not indicate the location, you will receive worldwide results, i.e., for all available locations;<br><strong>if you use this field, you don't need to specify <code>location_name</code> or <code>location_coordinate</code></strong>;<br>you can receive the list of available locations of the search engines with their <code>location_code</code> by making a separate request to <code>https://api.dataforseo.com/v3/keywords_data/google_ads/locations</code><br>example:<br><code class=\"long-string\">2840</code>",
        +        "type": [
        +          "integer",
        +          "null"
        +        ]
        +      },
        +      "location_coordinate": {
        +        "description": "<em>GPS coordinates of a location</em><br>optional field<br>if you do not indicate the location, you will receive worldwide results, i.e., for all available locations;<br><strong>if you use this field, you don't need to specify <code>location_name</code> or <code>location_code</code></strong>;<br><code>location_coordinate</code> parameter should be specified in the <em>\"latitude,longitude\"</em> format;<br><strong>the data will be provided for the country the specified coordinates belong to</strong>;<br>example:<br><code class=\"long-string\">52.6178549,-155.352142</code>",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "location_name": {
        +        "description": "<em>full name of search engine location</em><br>optional field<br>if you do not indicate the location, you will receive worldwide results, i.e., for all available locations;<br><strong>if you use this field, you don't need to specify <code>location_code</code> or <code>location_coordinate</code></strong><br>you can receive the list of available locations of the search engine with their <code>location_name</code> by making a separate request to <code>https://api.dataforseo.com/v3/keywords_data/google_ads/locations</code><br>example:<br><code class=\"long-string\">London,England,United Kingdom</code>",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "match": {
        +        "description": "<em>keywords match-type</em><br><strong>required field</strong><br>can take the following values: <code>exact</code>, <code>broad</code>, <code>phrase</code>",
        +        "type": "string"
        +      },
        +      "pingback_url": {
        +        "description": "<em>notification URL of a completed task</em><br>optional field<br>when a task is completed we will notify you by GET request sent to the URL you have specified<br>you can use the ‘$id’ string as a <code>$id</code> variable and ‘$tag’ as urlencoded <code>$tag</code> variable. We will set the necessary values before sending the request.<br>example:<br><code>http://your-server.com/pingscript?id=$id</code><br><code>http://your-server.com/pingscript?id=$id&amp;tag=$tag</code><br><strong>Note:</strong> special characters in <code>pingback_url</code> will be urlencoded;<br>i.a., the <code>#</code> character will be encoded into <code>%23</code><p>learn more on our <a href=\"https://dataforseo.com/help-center/pingbacks-postbacks-with-dataforseo-api\" target=\"_blank\" rel=\"noopener noreferrer\">Help Center</a>",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "postback_url": {
        +        "description": "<em>URL for sending task results</em><br>optional field<br>once the task is completed, we will send a POST request with its results compressed in the <code>gzip</code> format to the <code>postback_url</code> you specified<br>you can use the ‘$id’ string as a <code>$id</code> variable and ‘$tag’ as urlencoded <code>$tag</code> variable. We will set the necessary values before sending the request.<br>example:<br><code>http://your-server.com/postbackscript?id=$id</code><br><code>http://your-server.com/postbackscript?id=$id&amp;tag=$tag</code><br><strong>Note:</strong> special characters in <code>postback_url</code> will be urlencoded;<br>i.a., the <code>#</code> character will be encoded into <code>%23</code><p>learn more on our <a href=\"https://dataforseo.com/help-center/pingbacks-postbacks-with-dataforseo-api\" target=\"_blank\" rel=\"noopener noreferrer\">Help Center</a>",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "sort_by": {
        +        "description": "<em>results sorting parameters</em><br>optional field<br>Use these parameters to sort the results by <code>relevance</code>, <code>average_cpc</code>, <code>cost</code>, or <code>clicks</code> in the descending order<br>default value: <code>relevance</code>",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "tag": {
        +        "description": "<em>user-defined task identifier</em><br>optional field<br><em>the character limit is 255</em><br>you can use this parameter to identify the task and match it with the result<br>you will find the specified <code>tag</code> value in the <code>data</code> object of the response",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      }
        +    },
        +    "type": "object"
        +  }
        +]
      • removedInput schema / properties / body / items / properties
        Removed value: -{
        -  "bid": {
        -    "description": "the maximum custom bid required field the collected data will be based on this value it stands for the price you are willing to pay for an ad; the higher value you specify here, the higher values you will get in the returned metrics learn more in this help center article",
        -    "type": "number"
        -  },
        -  "date_from": {
        -    "description": "starting date of the forecasting time range required field if you specify date_to if you indicate date_from and date_to, you don’t need to specify date_interval minimum value is tomorrow’s date the value you specify in date_from shouldn’t be further than date_to date format: \"yyyy-mm-dd\" example: \"2021-10-30\"if Status endpoint returns false in the actual_data field, date_from can be set to the month before last and prior; if Status endpoint returns true in the actual_data field, date_from can be set to the last month and prior",
        -    "type": "string"
        -  },
        -  "date_interval": {
        -    "description": "forecasting date interval optional field if you specify date_interval, you don’t need to indicate date_from and date_to possible values: next_week, next_month, next_quarter default value: next_month",
        -    "type": "string"
        -  },
        -  "date_to": {
        -    "description": "ending date of the forecasting time range required field if you specify date_from if you indicate date_from and date_to, you don’t need to specify date_interval minimum value is date_from +1 day maximum value is current day and month of the next year date format: \"yyyy-mm-dd\" example: \"2022-10-30\"",
        -    "type": "string"
        -  },
        -  "keywords": {
        -    "description": "keywords required field The maximum number of keywords you can specify: 1000 The maximum number of characters for each keyword: 80 The maximum number of words for each keyword phrase: 10 the keywords you specify will be converted to a lowercase format Note #1: Google Ads may return no data for certain groups of keywords; Note #2: Google Ads provides combined search volume values for groups of similar keywords to obtain search volume for similar keywords, we recommend submitting such keywords in separate requests; Note #3: Google Ads doesn’t allow using certain symbols and characters (e.g., UTF symbols, emojis), so you can’t use them when setting a task; to learn more about which symbols and characters can be used, please refer to this article learn more about rules and limitations of keyword and keywords fields in DataForSEO APIs in this Help Center article",
        -    "items": {
        -      "type": "string"
        -    },
        -    "type": "array"
        -  },
        -  "language_code": {
        -    "description": "search engine language code optional field you can receive the list of available languages of the search engine with their language_code by making a separate request to https://api.dataforseo.com/v3/keywords_data/google_ads/languages example: en",
        -    "type": "string"
        -  },
        -  "language_name": {
        -    "description": "full name of search engine language optional field you can receive the list of available languages of the search engine with their language_name by making a separate request to https://api.dataforseo.com/v3/keywords_data/google_ads/languages example: English",
        -    "type": "string"
        -  },
        -  "location_code": {
        -    "description": "search engine location code optional field if you do not indicate the location, you will receive worldwide results, i.e., for all available locations; if you use this field, you don’t need to specify location_name or location_coordinate; you can receive the list of available locations of the search engines with their location_code by making a separate request to https://api.dataforseo.com/v3/keywords_data/google_ads/locations example: 2840",
        -    "type": "integer"
        -  },
        -  "location_coordinate": {
        -    "description": "GPS coordinates of a location optional field if you do not indicate the location, you will receive worldwide results, i.e., for all available locations; if you use this field, you don’t need to specify location_name or location_code; location_coordinate parameter should be specified in the “latitude,longitude” format; the data will be provided for the country the specified coordinates belong to; example: 52.6178549,-155.352142",
        -    "type": "string"
        -  },
        -  "location_name": {
        -    "description": "full name of search engine location optional field if you do not indicate the location, you will receive worldwide results, i.e., for all available locations; if you use this field, you don’t need to specify location_code or location_coordinate you can receive the list of available locations of the search engine with their location_name by making a separate request to https://api.dataforseo.com/v3/keywords_data/google_ads/locations example: London,England,United Kingdom",
        -    "type": "string"
        -  },
        -  "match": {
        -    "description": "keywords match-type required field can take the following values: exact, broad, phrase",
        -    "type": "string"
        -  },
        -  "pingback_url": {
        -    "description": "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 characters in pingback_url will be urlencoded; i.a., the # character will be encoded into %23 learn more on our Help Center",
        -    "type": "string"
        -  },
        -  "postback_url": {
        -    "description": "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 characters in postback_url will be urlencoded; i.a., the # character will be encoded into %23 learn more on our Help Center",
        -    "type": "string"
        -  },
        -  "search_partners": {
        -    "description": "include Google search partners optional field if you specify true, the results will be delivered for owned, operated, and syndicated networks across Google and partner sites that host Google search; default value: false – results are returned for Google search sites",
        -    "type": "boolean"
        -  },
        -  "sort_by": {
        -    "description": "results sorting parameters optional field Use these parameters to sort the results by relevance, average_cpc, cost, or clicks in the descending order default value: relevance",
        -    "type": "string"
        -  },
        -  "tag": {
        -    "description": "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",
        -    "type": "string"
        -  }
        -}
      • removedInput schema / properties / body / items / required
        Removed value: -[
        -  "keywords",
        -  "bid",
        -  "match"
        -]
      • changedInput schema / properties / body / items / type
        Previous value: -"object"New value: +[
        +  "object",
        +  "null"
        +]
      • changedInput schema / required
        Previous value: -[
        -  "body"
        -]New value: +[]
      • addedOutput schema / x-fastmcp-wrap-result
        Added value: +true
    • Changedpost_dataforseo_keywords_gads_kw_for_keywords_live7 fields changed
      • addedInput schema / properties / body / example
        Added value: +[
        +  {
        +    "keywords": [
        +      "phone",
        +      "cellphone"
        +    ],
        +    "location_code": 2840
        +  }
        +]
      • addedInput schema / properties / body / items / anyOf
        Added value: +[
        +  {
        +    "example": [
        +      {
        +        "keywords": [
        +          "phone",
        +          "cellphone"
        +        ],
        +        "location_code": 2840
        +      }
        +    ],
        +    "properties": {
        +      "date_from": {
        +        "description": "<em>starting date of the time range</em><br>optional field<br>date format: <code>\"yyyy-mm-dd\"</code><br>minimal value: 4 years from the current date<br>by default, data is returned for the past 12 months;<br><strong>Note</strong>: the indicated date cannot be greater than that specified in <code>date_to</code> and/or yesterday's date;if <a href=\"/v3/keywords_data/google_ads/status/\" target=\"_blank\" rel=\"noopener noreferrer\">Status endpoint</a> returns <code>false</code> in the <code>actual_data</code> field, <code>date_from</code> can be set to the month before last and prior;<br>if <a href=\"/v3/keywords_data/google_ads/status/\" target=\"_blank\" rel=\"noopener noreferrer\">Status endpoint</a> returns <code>true</code> in the <code>actual_data</code> field, <code>date_from</code> can be set to the last month and prior",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "date_to": {
        +        "description": "<em>ending date of the time range</em><br>optional field<br><strong>Note:</strong> the indicated date cannot be greater than yesterday's date;<br>if you don't specify this field, yesterday's date will be used by default<br>date format: <code>\"yyyy-mm-dd\"</code><br>example:<br><code>\"2022-11-30\"</code>",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "include_adult_keywords": {
        +        "description": "<em>include keywords associated with adult content</em><br>optional field<br>if set to <code>true</code>, adult keywords will be included in the response<br>default value: <code>false</code><br><strong>note</strong> that the API may return no data for such keywords due to <a href=\"https://support.google.com/adspolicy/answer/6008942?hl=en\" target=\"_blank\" rel=\"noopener noreferrer\">Google Ads restrictions</a>",
        +        "type": [
        +          "boolean",
        +          "null"
        +        ]
        +      },
        +      "keywords": {
        +        "description": "<em>keywords</em><br><strong>required field</strong><br>The maximum number of keywords you can specify: 20<br>The maximum number of characters for each keyword: 80<br>the keywords you specify will be converted to a lowercase format<br><strong>Note:</strong> Google Ads may return no data for certain groups of keywords<br><a href=\"https://dataforseo.com/help-center/no-search-volume-data-for-some-keywords\" target=\"_blank\" rel=\"noopener noreferrer\">visit our Help Center to learn more</a><br><strong>Also note</strong> that Google Ads doesn't allow using certain symbols and characters (e.g., UTF symbols, emojis), so you can't use them when setting a task;<br>to learn more about which symbols and characters can be used, please refer to <a href=\"https://dataforseo.com/help-center/using-symbols-in-keywords-when-setting-a-google-ads-task\" target=\"_blank\" rel=\"noopener noreferrer\">this article</a><p>learn more about rules and limitations of <code>keyword</code> and <code>keywords</code> fields in DataForSEO APIs in this <a href=\"https://dataforseo.com/help-center/rules-and-limitations-of-keyword-and-keywords-fields-in-dataforseo-apis\" rel=\"noopener noreferrer\" target=\"_blank\">Help Center article</a>",
        +        "items": {
        +          "type": "string"
        +        },
        +        "type": "array"
        +      },
        +      "language_code": {
        +        "description": "<em>search engine language code</em><br>optional field<br>you can receive the list of available languages of the search engine with their <code>language_code</code> by making a separate request to <code>https://api.dataforseo.com/v3/keywords_data/google_ads/languages</code><br>example:<br><code class=\"long-string\">en</code>",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "language_name": {
        +        "description": "<em>full name of search engine language</em><br>optional field<br>you can receive the list of available languages of the search engine with their <code>language_name</code> by making a separate request to <code>https://api.dataforseo.com/v3/keywords_data/google_ads/languages</code><br>example:<br><code class=\"long-string\">English</code>",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "location_code": {
        +        "description": "<em>search engine location code</em><br>optional field<br>if you do not indicate the location, you will receive worldwide results, i.e., for all available locations;<br><strong>if you use this field, you don't need to specify <code>location_name</code> or <code>location_coordinate</code></strong>;<br>you can receive the list of available locations of the search engines with their <code>location_code</code> by making a separate request to <code>https://api.dataforseo.com/v3/keywords_data/google_ads/locations</code><br>example:<br><code class=\"long-string\">2840</code>",
        +        "type": [
        +          "integer",
        +          "null"
        +        ]
        +      },
        +      "location_coordinate": {
        +        "description": "<em>GPS coordinates of a location</em><br>optional field<br>if you do not indicate the location, you will receive worldwide results, i.e., for all available locations;<br><strong>if you use this field, you don't need to specify <code>location_name</code> or <code>location_code</code></strong>;<br><code>location_coordinate</code> parameter should be specified in the <em>\"latitude,longitude\"</em> format;<br><strong>the data will be provided for the country the specified coordinates belong to</strong>;<br>example:<br><code class=\"long-string\">52.6178549,-155.352142</code>",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "location_name": {
        +        "description": "<em>full name of search engine location</em><br>optional field<br>if you do not indicate the location, you will receive worldwide results, i.e., for all available locations;<br><strong>if you use this field, you don't need to specify <code>location_code</code> or <code>location_coordinate</code></strong><br>you can receive the list of available locations of the search engine with their <code>location_name</code> by making a separate request to <code>https://api.dataforseo.com/v3/keywords_data/google_ads/locations</code><br>example:<br><code class=\"long-string\">London,England,United Kingdom</code>",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "search_partners": {
        +        "description": "<em>include Google search partners</em><br>optional field<br>if you specify <code class=\"prettyprint\">true</code>, the results will be delivered for owned, operated, and syndicated networks across <a href=\"https://support.google.com/google-ads/answer/1722047?hl=en\" target=\"_blank\" rel=\"noopener noreferrer\">Google and partner sites</a> that host Google search;<br>default value: <code>false</code> - results are returned for Google search sites",
        +        "type": [
        +          "boolean",
        +          "null"
        +        ]
        +      },
        +      "sort_by": {
        +        "description": "<em>results sorting parameters</em><br>optional field<br>Use these parameters to sort the results by <code>relevance</code>, <code>search_volume</code>, <code>competition_index</code>, <code>low_top_of_page_bid</code>, or <code>high_top_of_page_bid</code> in descending order<br>default value: <code>relevance</code>",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "tag": {
        +        "description": "<em>user-defined task identifier</em><br>optional field<br><em>the character limit is 255</em><br>you can use this parameter to identify the task and match it with the result<br>you will find the specified <code>tag</code> value in the <code>data</code> object of the response",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      }
        +    },
        +    "type": "object"
        +  }
        +]
      • removedInput schema / properties / body / items / properties
        Removed value: -{
        -  "date_from": {
        -    "description": "starting date of the time range optional field date format: \"yyyy-mm-dd\" minimal value: 4 years from the current date by default, data is returned for the past 12 months; Note: the indicated date cannot be greater than that specified in date_to and/or yesterday’s date;if Status endpoint returns false in the actual_data field, date_from can be set to the month before last and prior; if Status endpoint returns true in the actual_data field, date_from can be set to the last month and prior",
        -    "type": "string"
        -  },
        -  "date_to": {
        -    "description": "ending date of the time range optional field Note: the indicated date cannot be greater than yesterday’s date; if you don’t specify this field, yesterday’s date will be used by default date format: \"yyyy-mm-dd\" example: \"2022-11-30\"",
        -    "type": "string"
        -  },
        -  "include_adult_keywords": {
        -    "description": "include keywords associated with adult content optional field if set to true, adult keywords will be included in the response default value: false note that the API may return no data for such keywords due to Google Ads restrictions",
        -    "type": "boolean"
        -  },
        -  "keywords": {
        -    "description": "keywords required field The maximum number of keywords you can specify: 20 The maximum number of characters for each keyword: 80 the keywords you specify will be converted to a lowercase format Note: Google Ads may return no data for certain groups of keywords visit our Help Center to learn more Also note that Google Ads doesn’t allow using certain symbols and characters (e.g., UTF symbols, emojis), so you can’t use them when setting a task; to learn more about which symbols and characters can be used, please refer to this article learn more about rules and limitations of keyword and keywords fields in DataForSEO APIs in this Help Center article",
        -    "items": {
        -      "type": "string"
        -    },
        -    "type": "array"
        -  },
        -  "language_code": {
        -    "description": "search engine language code optional field you can receive the list of available languages of the search engine with their language_code by making a separate request to https://api.dataforseo.com/v3/keywords_data/google_ads/languages example: en",
        -    "type": "string"
        -  },
        -  "language_name": {
        -    "description": "full name of search engine language optional field you can receive the list of available languages of the search engine with their language_name by making a separate request to https://api.dataforseo.com/v3/keywords_data/google_ads/languages example: English",
        -    "type": "string"
        -  },
        -  "location_code": {
        -    "description": "search engine location code optional field if you do not indicate the location, you will receive worldwide results, i.e., for all available locations; if you use this field, you don’t need to specify location_name or location_coordinate; you can receive the list of available locations of the search engines with their location_code by making a separate request to https://api.dataforseo.com/v3/keywords_data/google_ads/locations example: 2840",
        -    "type": "integer"
        -  },
        -  "location_coordinate": {
        -    "description": "GPS coordinates of a location optional field if you do not indicate the location, you will receive worldwide results, i.e., for all available locations; if you use this field, you don’t need to specify location_name or location_code; location_coordinate parameter should be specified in the “latitude,longitude” format; the data will be provided for the country the specified coordinates belong to; example: 52.6178549,-155.352142",
        -    "type": "string"
        -  },
        -  "location_name": {
        -    "description": "full name of search engine location optional field if you do not indicate the location, you will receive worldwide results, i.e., for all available locations; if you use this field, you don’t need to specify location_code or location_coordinate you can receive the list of available locations of the search engine with their location_name by making a separate request to https://api.dataforseo.com/v3/keywords_data/google_ads/locations example: London,England,United Kingdom",
        -    "type": "string"
        -  },
        -  "search_partners": {
        -    "description": "include Google search partners optional field if you specify true, the results will be delivered for owned, operated, and syndicated networks across Google and partner sites that host Google search; default value: false – results are returned for Google search sites",
        -    "type": "boolean"
        -  },
        -  "sort_by": {
        -    "description": "results sorting parameters optional field Use these parameters to sort the results by relevance, search_volume, competition_index, low_top_of_page_bid, or high_top_of_page_bid in descending order default value: relevance",
        -    "type": "string"
        -  },
        -  "tag": {
        -    "description": "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",
        -    "type": "string"
        -  }
        -}
      • removedInput schema / properties / body / items / required
        Removed value: -[
        -  "keywords"
        -]
      • changedInput schema / properties / body / items / type
        Previous value: -"object"New value: +[
        +  "object",
        +  "null"
        +]
      • changedInput schema / required
        Previous value: -[
        -  "body"
        -]New value: +[]
      • addedOutput schema / x-fastmcp-wrap-result
        Added value: +true
    • Changedpost_dataforseo_keywords_gads_kw_for_site_live7 fields changed
      • addedInput schema / properties / body / example
        Added value: +[
        +  {
        +    "location_code": 2840,
        +    "target": "dataforseo.com"
        +  }
        +]
      • addedInput schema / properties / body / items / anyOf
        Added value: +[
        +  {
        +    "example": [
        +      {
        +        "location_code": 2840,
        +        "target": "dataforseo.com"
        +      }
        +    ],
        +    "properties": {
        +      "date_from": {
        +        "description": "<em>starting date of the time range</em><br>optional field<br>date format: <code>\"yyyy-mm-dd\"</code><br>minimal value: 4 years from the current date<br>by default, data is returned for the past 12 months;<br><strong>Note</strong>: the indicated date cannot be greater than that specified in <code>date_to</code> and/or yesterday's date;if <a href=\"/v3/keywords_data/google_ads/status/\" target=\"_blank\" rel=\"noopener noreferrer\">Status endpoint</a> returns <code>false</code> in the <code>actual_data</code> field, <code>date_from</code> can be set to the month before last and prior;<br>if <a href=\"/v3/keywords_data/google_ads/status/\" target=\"_blank\" rel=\"noopener noreferrer\">Status endpoint</a> returns <code>true</code> in the <code>actual_data</code> field, <code>date_from</code> can be set to the last month and prior",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "date_to": {
        +        "description": "<em>ending date of the time range</em><br>optional field<br><strong>Note:</strong> the indicated date cannot be greater than yesterday's date;<br>if you don't specify this field, yesterday's date will be used by default<br>date format: <code>\"yyyy-mm-dd\"</code><br>example:<br><code>\"2022-11-30\"</code>",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "include_adult_keywords": {
        +        "description": "<em>include keywords associated with adult content</em><br>optional field<br>if set to <code>true</code>, adult keywords will be included in the response<br>default value: <code>false</code><br><strong>note</strong> that the API may return no data for such keywords due to <a href=\"https://support.google.com/adspolicy/answer/6008942?hl=en\" target=\"_blank\" rel=\"noopener noreferrer\">Google Ads restrictions</a>",
        +        "type": [
        +          "boolean",
        +          "null"
        +        ]
        +      },
        +      "language_code": {
        +        "description": "<em>search engine language code</em><br>optional field<br>you can receive the list of available languages of the search engine with their <code>language_code</code> by making a separate request to <code>https://api.dataforseo.com/v3/keywords_data/google_ads/languages</code><br>example:<br><code class=\"long-string\">en</code>",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "language_name": {
        +        "description": "<em>full name of search engine language</em><br>optional field<br>you can receive the list of available languages of the search engine with their <code>language_name</code> by making a separate request to <code>https://api.dataforseo.com/v3/keywords_data/google_ads/languages</code><br>example:<br><code class=\"long-string\">English</code>",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "location_code": {
        +        "description": "<em>search engine location code</em><br>optional field<br>if you do not indicate the location, you will receive worldwide results, i.e., for all available locations;<br><strong>if you use this field, you don't need to specify <code>location_name</code> or <code>location_coordinate</code></strong>;<br>you can receive the list of available locations of the search engines with their <code>location_code</code> by making a separate request to <code>https://api.dataforseo.com/v3/keywords_data/google_ads/locations</code><br>example:<br><code class=\"long-string\">2840</code>",
        +        "type": [
        +          "integer",
        +          "null"
        +        ]
        +      },
        +      "location_coordinate": {
        +        "description": "<em>GPS coordinates of a location</em><br>optional field<br>if you do not indicate the location, you will receive worldwide results, i.e., for all available locations;<br><strong>if you use this field, you don't need to specify <code>location_name</code> or <code>location_code</code></strong>;<br><code>location_coordinate</code> parameter should be specified in the <em>\"latitude,longitude\"</em> format;<br><strong>the data will be provided for the country the specified coordinates belong to</strong>;<br>example:<br><code class=\"long-string\">52.6178549,-155.352142</code>",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "location_name": {
        +        "description": "<em>full name of search engine location</em><br>optional field<br>if you do not indicate the location, you will receive worldwide results, i.e., for all available locations;<br><strong>if you use this field, you don't need to specify <code>location_code</code> or <code>location_coordinate</code></strong><br>you can receive the list of available locations of the search engine with their <code>location_name</code> by making a separate request to <code>https://api.dataforseo.com/v3/keywords_data/google_ads/locations</code><br>example:<br><code class=\"long-string\">London,England,United Kingdom</code>",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "search_partners": {
        +        "description": "<em>include Google search partners</em><br>optional field<br>if you specify <code class=\"prettyprint\">true</code>, the results will be delivered for owned, operated, and syndicated networks across <a href=\"https://support.google.com/google-ads/answer/1722047?hl=en\" target=\"_blank\" rel=\"noopener noreferrer\">Google and partner sites</a> that host Google search;<br>default value: <code>false</code> - results are returned for Google search sites",
        +        "type": [
        +          "boolean",
        +          "null"
        +        ]
        +      },
        +      "sort_by": {
        +        "description": "<em>results sorting parameters</em><br>optional field<br>Use these parameters to sort the results by <code>relevance</code>, <code>search_volume</code>, <code>competition_index</code>, <code>low_top_of_page_bid</code>, or <code>high_top_of_page_bid</code> in descending order<br>default value: <code>relevance</code>",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "tag": {
        +        "description": "<em>user-defined task identifier</em><br>optional field<br><em>the character limit is 255</em><br>you can use this parameter to identify the task and match it with the result<br>you will find the specified <code>tag</code> value in the <code>data</code> object of the response",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "target": {
        +        "description": "<em>domain or page</em><br><strong>required field</strong><br>the domain name of the target website or the url of the target page;<br><strong>note:</strong> to obtain keywords for the target website, use the <code>target_type</code> parameter",
        +        "type": "string"
        +      },
        +      "target_type": {
        +        "description": "<em>search keywords for site or for url</em><br>optional field<br>possible values: <code>site</code>, <code>page</code>;<br>default value: <code>page</code>;<br>if set to <code>site</code>, keywords will be provided for the entire site;<br>if set to <code>page</code>, keywords will be provided for the specified webpage",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      }
        +    },
        +    "type": "object"
        +  }
        +]
      • removedInput schema / properties / body / items / properties
        Removed value: -{
        -  "date_from": {
        -    "description": "starting date of the time range optional field date format: \"yyyy-mm-dd\" minimal value: 4 years from the current date by default, data is returned for the past 12 months; Note: the indicated date cannot be greater than that specified in date_to and/or yesterday’s date;if Status endpoint returns false in the actual_data field, date_from can be set to the month before last and prior; if Status endpoint returns true in the actual_data field, date_from can be set to the last month and prior",
        -    "type": "string"
        -  },
        -  "date_to": {
        -    "description": "ending date of the time range optional field Note: the indicated date cannot be greater than yesterday’s date; if you don’t specify this field, yesterday’s date will be used by default date format: \"yyyy-mm-dd\" example: \"2022-11-30\"",
        -    "type": "string"
        -  },
        -  "include_adult_keywords": {
        -    "description": "include keywords associated with adult content optional field if set to true, adult keywords will be included in the response default value: false note that the API may return no data for such keywords due to Google Ads restrictions",
        -    "type": "boolean"
        -  },
        -  "language_code": {
        -    "description": "search engine language code optional field you can receive the list of available languages of the search engine with their language_code by making a separate request to https://api.dataforseo.com/v3/keywords_data/google_ads/languages example: en",
        -    "type": "string"
        -  },
        -  "language_name": {
        -    "description": "full name of search engine language optional field you can receive the list of available languages of the search engine with their language_name by making a separate request to https://api.dataforseo.com/v3/keywords_data/google_ads/languages example: English",
        -    "type": "string"
        -  },
        -  "location_code": {
        -    "description": "search engine location code optional field if you do not indicate the location, you will receive worldwide results, i.e., for all available locations; if you use this field, you don’t need to specify location_name or location_coordinate; you can receive the list of available locations of the search engines with their location_code by making a separate request to https://api.dataforseo.com/v3/keywords_data/google_ads/locations example: 2840",
        -    "type": "integer"
        -  },
        -  "location_coordinate": {
        -    "description": "GPS coordinates of a location optional field if you do not indicate the location, you will receive worldwide results, i.e., for all available locations; if you use this field, you don’t need to specify location_name or location_code; location_coordinate parameter should be specified in the “latitude,longitude” format; the data will be provided for the country the specified coordinates belong to; example: 52.6178549,-155.352142",
        -    "type": "string"
        -  },
        -  "location_name": {
        -    "description": "full name of search engine location optional field if you do not indicate the location, you will receive worldwide results, i.e., for all available locations; if you use this field, you don’t need to specify location_code or location_coordinate you can receive the list of available locations of the search engine with their location_name by making a separate request to https://api.dataforseo.com/v3/keywords_data/google_ads/locations example: London,England,United Kingdom",
        -    "type": "string"
        -  },
        -  "search_partners": {
        -    "description": "include Google search partners optional field if you specify true, the results will be delivered for owned, operated, and syndicated networks across Google and partner sites that host Google search; default value: false – results are returned for Google search sites",
        -    "type": "boolean"
        -  },
        -  "sort_by": {
        -    "description": "results sorting parameters optional field Use these parameters to sort the results by relevance, search_volume, competition_index, low_top_of_page_bid, or high_top_of_page_bid in descending order default value: relevance",
        -    "type": "string"
        -  },
        -  "tag": {
        -    "description": "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",
        -    "type": "string"
        -  },
        -  "target": {
        -    "description": "domain or page required field the domain name of the target website or the url of the target page; note: to obtain keywords for the target website, use the target_type parameter",
        -    "type": "string"
        -  },
        -  "target_type": {
        -    "description": "search keywords for site or for url optional field possible values: site, page; default value: page; if set to site, keywords will be provided for the entire site; if set to page, keywords will be provided for the specified webpage",
        -    "type": "string"
        -  }
        -}
      • removedInput schema / properties / body / items / required
        Removed value: -[
        -  "target"
        -]
      • changedInput schema / properties / body / items / type
        Previous value: -"object"New value: +[
        +  "object",
        +  "null"
        +]
      • changedInput schema / required
        Previous value: -[
        -  "body"
        -]New value: +[]
      • addedOutput schema / x-fastmcp-wrap-result
        Added value: +true
    • Changedpost_dataforseo_keywords_gads_search_volume_live7 fields changed
      • addedInput schema / properties / body / example
        Added value: +[
        +  {
        +    "date_from": "2021-08-01",
        +    "keywords": [
        +      "buy laptop",
        +      "cheap laptops for sale",
        +      "purchase laptop"
        +    ],
        +    "location_code": 2840,
        +    "search_partners": true
        +  }
        +]
      • addedInput schema / properties / body / items / anyOf
        Added value: +[
        +  {
        +    "example": [
        +      {
        +        "date_from": "2021-08-01",
        +        "keywords": [
        +          "buy laptop",
        +          "cheap laptops for sale",
        +          "purchase laptop"
        +        ],
        +        "location_code": 2840,
        +        "search_partners": true
        +      }
        +    ],
        +    "properties": {
        +      "date_from": {
        +        "description": "<em>starting date of the time range</em><br>optional field<br>date format: <code>\"yyyy-mm-dd\"</code><br>minimal value: 4 years from the current date<br>by default, data is returned for the past 12 months;<br><strong>Note</strong>: the indicated date cannot be greater than that specified in <code>date_to</code> and/or yesterday's date;if <a href=\"/v3/keywords_data/google_ads/status/\" target=\"_blank\" rel=\"noopener noreferrer\">Status endpoint</a> returns <code>false</code> in the <code>actual_data</code> field, <code>date_from</code> can be set to the month before last and prior;<br>if <a href=\"/v3/keywords_data/google_ads/status/\" target=\"_blank\" rel=\"noopener noreferrer\">Status endpoint</a> returns <code>true</code> in the <code>actual_data</code> field, <code>date_from</code> can be set to the last month and prior",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "date_to": {
        +        "description": "<em>ending date of the time range</em><br>optional field<br><strong>Note:</strong> the indicated date cannot be greater than the past month, Google Ads does not return data on the current month;<br>if you don't specify this field, yesterday's date will be used by default<br>date format: <code>\"yyyy-mm-dd\"</code><br>example:<br><code>\"2022-11-30\"</code>",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "include_adult_keywords": {
        +        "description": "<em>include keywords associated with adult content<br></em>optional field<br>if set to_<code>true</code>, adult keywords will be included in the response<br>default value:_<code>false</code><br><strong>note</strong>_that the API may return no data for such keywords due to_<a href=\"https://support.google.com/adspolicy/answer/6008942?hl=en\" target=\"_blank\" rel=\"noopener noreferrer\">Google Ads restrictions</a>n",
        +        "type": [
        +          "boolean",
        +          "null"
        +        ]
        +      },
        +      "keywords": {
        +        "description": "<em>keywords</em><br><strong>required field</strong><br>The maximum number of keywords you can specify: 1000<br>The maximum number of characters for each keyword: 80<br>The maximum number of words for each keyword phrase: 10<br>the keywords you specify will be converted to a lowercase format<br><strong>Note #1:</strong> <a href=\"https://dataforseo.com/help-center/no-search-volume-data-for-some-keywords\" target=\"_blank\" rel=\"noopener noreferrer\">Google Ads may return no data for certain groups of keywords</a>;<br><strong>Note #2:</strong> <a href=\"https://dataforseo.com/help-center/sv-broad-exact-phrase-match\" target=\"_blank\" rel=\"noopener noreferrer\">Google Ads provides combined search volume values for groups of similar keywords</a><br>to obtain search volume for similar keywords, we recommend submitting such keywords in separate requests;<br><strong>Note #3:</strong> Google Ads doesn't allow using certain symbols and characters (e.g., UTF symbols, emojis), so you can't use them when setting a task;<br>to learn more about which symbols and characters can be used, please refer to <a href=\"https://dataforseo.com/help-center/using-symbols-in-keywords-when-setting-a-google-ads-task\" target=\"_blank\" rel=\"noopener noreferrer\">this article</a><p>learn more about rules and limitations of <code>keyword</code> and <code>keywords</code> fields in DataForSEO APIs in this <a href=\"https://dataforseo.com/help-center/rules-and-limitations-of-keyword-and-keywords-fields-in-dataforseo-apis\" rel=\"noopener noreferrer\" target=\"_blank\">Help Center article</a>",
        +        "items": {
        +          "type": "string"
        +        },
        +        "type": "array"
        +      },
        +      "language_code": {
        +        "description": "<em>search engine language code</em><br>optional field<br>you can receive the list of available languages of the search engine with their <code>language_code</code> by making a separate request to <code>https://api.dataforseo.com/v3/keywords_data/google_ads/languages</code><br>example:<br><code class=\"long-string\">en</code>",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "language_name": {
        +        "description": "<em>full name of search engine language</em><br>optional field<br>you can receive the list of available languages of the search engine with their <code>language_name</code> by making a separate request to <code>https://api.dataforseo.com/v3/keywords_data/google_ads/languages</code><br>example:<br><code class=\"long-string\">English</code>",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "location_code": {
        +        "description": "<em>search engine location code</em><br>optional field<br>if you do not indicate the location, you will receive worldwide results, i.e., for all available locations;<br><strong>if you use this field, you don't need to specify <code>location_name</code> or <code>location_coordinate</code></strong>;<br>you can receive the list of available locations of the search engines with their <code>location_code</code> by making a separate request to <code>https://api.dataforseo.com/v3/keywords_data/google_ads/locations</code><br>example:<br><code class=\"long-string\">2840</code>",
        +        "type": [
        +          "integer",
        +          "null"
        +        ]
        +      },
        +      "location_coordinate": {
        +        "description": "<em>GPS coordinates of a location</em><br>optional field<br>if you do not indicate the location, you will receive worldwide results, i.e., for all available locations;<br><strong>if you use this field, you don't need to specify <code>location_name</code> or <code>location_code</code></strong>;<br><code>location_coordinate</code> parameter should be specified in the <em>\"latitude,longitude\"</em> format;<br><strong>the data will be provided for the country the specified coordinates belong to</strong>;<br>example:<br><code class=\"long-string\">52.6178549,-155.352142</code>",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "location_name": {
        +        "description": "<em>full name of search engine location</em><br>optional field<br>if you do not indicate the location, you will receive worldwide results, i.e., for all available locations;<br><strong>if you use this field, you don't need to specify <code>location_code</code> or <code>location_coordinate</code></strong><br>you can receive the list of available locations of the search engine with their <code>location_name</code> by making a separate request to <code>https://api.dataforseo.com/v3/keywords_data/google_ads/locations</code><br>example:<br><code class=\"long-string\">London,England,United Kingdom</code>",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "search_partners": {
        +        "description": "<em>include Google search partners</em><br>optional field<br>if you specify <code class=\"prettyprint\">true</code>, the results will be delivered for owned, operated, and syndicated networks across <a href=\"https://support.google.com/google-ads/answer/1722047?hl=en\" target=\"_blank\" rel=\"noopener noreferrer\">Google and partner sites</a> that host Google search;<br>default value: <code>false</code> - results are returned for Google search sites",
        +        "type": [
        +          "boolean",
        +          "null"
        +        ]
        +      },
        +      "sort_by": {
        +        "description": "<em>results sorting parameters</em><br>optional field<br>use these parameters to sort the results by <code>relevance</code>, <code>search_volume</code>, <code>competition_index</code>, <code>low_top_of_page_bid</code>, or <code>high_top_of_page_bid</code> in the descending order<br>default value: <code>relevance</code>",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "tag": {
        +        "description": "<em>user-defined task identifier</em><br>optional field<br><em>the character limit is 255</em><br>you can use this parameter to identify the task and match it with the result<br>you will find the specified <code>tag</code> value in the <code>data</code> array of the response",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      }
        +    },
        +    "type": "object"
        +  }
        +]
      • removedInput schema / properties / body / items / properties
        Removed value: -{
        -  "date_from": {
        -    "description": "starting date of the time range optional field date format: \"yyyy-mm-dd\" minimal value: 4 years from the current date by default, data is returned for the past 12 months; Note: the indicated date cannot be greater than that specified in date_to and/or yesterday’s date;if Status endpoint returns false in the actual_data field, date_from can be set to the month before last and prior; if Status endpoint returns true in the actual_data field, date_from can be set to the last month and prior",
        -    "type": "string"
        -  },
        -  "date_to": {
        -    "description": "ending date of the time range optional field Note: the indicated date cannot be greater than the past month, Google Ads does not return data on the current month; if you don’t specify this field, yesterday’s date will be used by default date format: \"yyyy-mm-dd\" example: \"2022-11-30\"",
        -    "type": "string"
        -  },
        -  "include_adult_keywords": {
        -    "description": "include keywords associated with adult content optional field if set to_true, adult keywords will be included in the response default value:_false note_that the API may return no data for such keywords due to_Google Ads restrictions n",
        -    "type": "boolean"
        -  },
        -  "keywords": {
        -    "description": "keywords required field The maximum number of keywords you can specify: 1000 The maximum number of characters for each keyword: 80 The maximum number of words for each keyword phrase: 10 the keywords you specify will be converted to a lowercase format Note #1: Google Ads may return no data for certain groups of keywords; Note #2: Google Ads provides combined search volume values for groups of similar keywords to obtain search volume for similar keywords, we recommend submitting such keywords in separate requests; Note #3: Google Ads doesn’t allow using certain symbols and characters (e.g., UTF symbols, emojis), so you can’t use them when setting a task; to learn more about which symbols and characters can be used, please refer to this article learn more about rules and limitations of keyword and keywords fields in DataForSEO APIs in this Help Center article",
        -    "items": {
        -      "type": "string"
        -    },
        -    "type": "array"
        -  },
        -  "language_code": {
        -    "description": "search engine language code optional field you can receive the list of available languages of the search engine with their language_code by making a separate request to https://api.dataforseo.com/v3/keywords_data/google_ads/languages example: en",
        -    "type": "string"
        -  },
        -  "language_name": {
        -    "description": "full name of search engine language optional field you can receive the list of available languages of the search engine with their language_name by making a separate request to https://api.dataforseo.com/v3/keywords_data/google_ads/languages example: English",
        -    "type": "string"
        -  },
        -  "location_code": {
        -    "description": "search engine location code optional field if you do not indicate the location, you will receive worldwide results, i.e., for all available locations; if you use this field, you don’t need to specify location_name or location_coordinate; you can receive the list of available locations of the search engines with their location_code by making a separate request to https://api.dataforseo.com/v3/keywords_data/google_ads/locations example: 2840",
        -    "type": "integer"
        -  },
        -  "location_coordinate": {
        -    "description": "GPS coordinates of a location optional field if you do not indicate the location, you will receive worldwide results, i.e., for all available locations; if you use this field, you don’t need to specify location_name or location_code; location_coordinate parameter should be specified in the “latitude,longitude” format; the data will be provided for the country the specified coordinates belong to; example: 52.6178549,-155.352142",
        -    "type": "string"
        -  },
        -  "location_name": {
        -    "description": "full name of search engine location optional field if you do not indicate the location, you will receive worldwide results, i.e., for all available locations; if you use this field, you don’t need to specify location_code or location_coordinate you can receive the list of available locations of the search engine with their location_name by making a separate request to https://api.dataforseo.com/v3/keywords_data/google_ads/locations example: London,England,United Kingdom",
        -    "type": "string"
        -  },
        -  "search_partners": {
        -    "description": "include Google search partners optional field if you specify true, the results will be delivered for owned, operated, and syndicated networks across Google and partner sites that host Google search; default value: false – results are returned for Google search sites",
        -    "type": "boolean"
        -  },
        -  "sort_by": {
        -    "description": "results sorting parameters optional field use these parameters to sort the results by relevance, search_volume, competition_index, low_top_of_page_bid, or high_top_of_page_bid in the descending order default value: relevance",
        -    "type": "string"
        -  },
        -  "tag": {
        -    "description": "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 array of the response",
        -    "type": "string"
        -  }
        -}
      • removedInput schema / properties / body / items / required
        Removed value: -[
        -  "keywords"
        -]
      • changedInput schema / properties / body / items / type
        Previous value: -"object"New value: +[
        +  "object",
        +  "null"
        +]
      • changedInput schema / required
        Previous value: -[
        -  "body"
        -]New value: +[]
      • addedOutput schema / x-fastmcp-wrap-result
        Added value: +true
    • Changedpost_dataforseo_keywords_trends_demography_live7 fields changed
      • addedInput schema / properties / body / example
        Added value: +[
        +  {
        +    "date_from": "2023-01-01",
        +    "date_to": "2024-01-01",
        +    "keywords": [
        +      "rugby",
        +      "cricket"
        +    ],
        +    "location_name": "United States",
        +    "type": "web"
        +  }
        +]
      • addedInput schema / properties / body / items / anyOf
        Added value: +[
        +  {
        +    "example": [
        +      {
        +        "date_from": "2023-01-01",
        +        "date_to": "2024-01-01",
        +        "keywords": [
        +          "rugby",
        +          "cricket"
        +        ],
        +        "location_name": "United States",
        +        "type": "web"
        +      }
        +    ],
        +    "properties": {
        +      "date_from": {
        +        "description": "<em>starting date of the time range</em><br>optional field<br>if you don't specify this field, the current day and month of the preceding year will be used by default<br>minimal value for the <code>web</code> type: <code>2004-01-01</code><br>minimal value for other types: <code>2008-01-01</code><br>date format: <code>\"yyyy-mm-dd\"</code><br>example:<br><code>\"2019-01-15\"</code>",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "date_to": {
        +        "description": "<em>ending date of the time range</em><br>optional field<br>if you don't specify this field, the today's date will be used by default<br>date format: <code>\"yyyy-mm-dd\"</code><br>example:<br><code>\"2019-01-15\"</code>",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "keywords": {
        +        "description": "<em>keywords</em><br><strong>required field</strong><br>the maximum number of keywords you can specify: 5<br>avoid symbols and special characters (e.g., UTF symbols, emojis);<br>specifying non-Latin characters, you’ll get data for the countries where they are used<p>learn more about rules and limitations of <code>keyword</code> and <code>keywords</code> fields in DataForSEO APIs in this <a href=\"https://dataforseo.com/help-center/rules-and-limitations-of-keyword-and-keywords-fields-in-dataforseo-apis\" rel=\"noopener noreferrer\" target=\"_blank\">Help Center article</a>",
        +        "items": {
        +          "type": "string"
        +        },
        +        "type": "array"
        +      },
        +      "location_code": {
        +        "description": "<em>search engine location code</em><br>optional field<br>if you don't use this field, you will recieve global results<br><strong>if you use this field, you don't need to specify <code>location_name</code></strong><br>you can receive the list of available locations of the search engines with their <code>location_code</code> by making a separate request to <code>https://api.dataforseo.com/v3/keywords_data/dataforseo_trends/locations</code><br><strong>note that the data will be provided for the country the specified <code>location_code</code> belongs to;</strong><br>example:<br><code class=\"long-string\">2840</code>",
        +        "type": [
        +          "integer",
        +          "null"
        +        ]
        +      },
        +      "location_name": {
        +        "description": "<em>full name of search engine location</em><br>optional field<br>if you don't use this field, you will recieve global results<br><strong>if you use this field, you don't need to specify <code>location_code</code></strong><br>you can receive the list of available locations of the search engine with their <code>location_name</code> by making a separate request to <code>https://api.dataforseo.com/v3/keywords_data/dataforseo_trends/locations</code><br><strong>note that the data will be provided for the country the specified <code>location_name</code> belongs to;</strong><br>example:<br><code class=\"long-string\">United Kingdom</code>",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "tag": {
        +        "description": "<em>user-defined task identifier</em><br>optional field<br><em>the character limit is 255</em><br>you can use this parameter to identify the task and match it with the result<br>you will find the specified <code>tag</code> value in the <code>data</code> object of the response",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "time_range": {
        +        "description": "<em>preset time ranges</em><br>optional field<br>if you specify <code>date_from</code> or <code>date_to</code> parameters, this field will be ignored when setting a task<br><em>possible values for all <code>type</code> parameters:</em><br><code>past_4_hours</code>, <code>past_day</code>, <code>past_7_days</code>, <code>past_30_days</code>, <code>past_90_days</code>, <code>past_12_months</code>, <code>past_5_years</code>",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "type": {
        +        "description": "type of element",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      }
        +    },
        +    "type": "object"
        +  }
        +]
      • removedInput schema / properties / body / items / properties
        Removed value: -{
        -  "date_from": {
        -    "description": "starting date of the time range optional field if you don’t specify this field, the current day and month of the preceding year will be used by default minimal value for the web type: 2004-01-01 minimal value for other types: 2008-01-01 date format: \"yyyy-mm-dd\" example: \"2019-01-15\"",
        -    "type": "string"
        -  },
        -  "date_to": {
        -    "description": "ending date of the time range optional field if you don’t specify this field, the today’s date will be used by default date format: \"yyyy-mm-dd\" example: \"2019-01-15\"",
        -    "type": "string"
        -  },
        -  "keywords": {
        -    "description": "keywords required field the maximum number of keywords you can specify: 5 avoid symbols and special characters (e.g., UTF symbols, emojis); specifying non-Latin characters, you’ll get data for the countries where they are used learn more about rules and limitations of keyword and keywords fields in DataForSEO APIs in this Help Center article",
        -    "items": {
        -      "type": "string"
        -    },
        -    "type": "array"
        -  },
        -  "location_code": {
        -    "description": "search engine location code optional field if you don’t use this field, you will recieve global results if you use this field, you don’t need to specify location_name you can receive the list of available locations of the search engines with their location_code by making a separate request to https://api.dataforseo.com/v3/keywords_data/dataforseo_trends/locations note that the data will be provided for the country the specified location_code belongs to; example: 2840",
        -    "type": "integer"
        -  },
        -  "location_name": {
        -    "description": "full name of search engine location optional field if you don’t use this field, you will recieve global results if you use this field, you don’t need to specify location_code you can receive the list of available locations of the search engine with their location_name by making a separate request to https://api.dataforseo.com/v3/keywords_data/dataforseo_trends/locations note that the data will be provided for the country the specified location_name belongs to; example: United Kingdom",
        -    "type": "string"
        -  },
        -  "tag": {
        -    "description": "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",
        -    "type": "string"
        -  },
        -  "time_range": {
        -    "description": "preset time ranges optional field if you specify date_from or date_to parameters, this field will be ignored when setting a task possible values for all type parameters: past_4_hours, past_day, past_7_days, past_30_days, past_90_days, past_12_months, past_5_years",
        -    "type": "string"
        -  },
        -  "type": {
        -    "description": "type of element",
        -    "type": "string"
        -  }
        -}
      • removedInput schema / properties / body / items / required
        Removed value: -[
        -  "keywords"
        -]
      • changedInput schema / properties / body / items / type
        Previous value: -"object"New value: +[
        +  "object",
        +  "null"
        +]
      • changedInput schema / required
        Previous value: -[
        -  "body"
        -]New value: +[]
      • addedOutput schema / x-fastmcp-wrap-result
        Added value: +true
    • Changedpost_dataforseo_keywords_trends_explore_live7 fields changed
      • addedInput schema / properties / body / example
        Added value: +[
        +  {
        +    "keywords": [
        +      "iphone 14",
        +      "samsung s23"
        +    ],
        +    "location_code": 2840
        +  }
        +]
      • addedInput schema / properties / body / items / anyOf
        Added value: +[
        +  {
        +    "example": [
        +      {
        +        "keywords": [
        +          "iphone 14",
        +          "samsung s23"
        +        ],
        +        "location_code": 2840
        +      }
        +    ],
        +    "properties": {
        +      "date_from": {
        +        "description": "<em>starting date of the time range</em><br>optional field<br>if you don't specify this field, the current day and month of the preceding year will be used by default<br>minimal value for the <code>web</code> type: <code>2004-01-01</code><br>minimal value for other types: <code>2008-01-01</code><br>date format: <code>\"yyyy-mm-dd\"</code><br>example:<br><code>\"2019-01-15\"</code>",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "date_to": {
        +        "description": "<em>ending date of the time range</em><br>optional field<br>if you don't specify this field, the today's date will be used by default<br>date format: <code>\"yyyy-mm-dd\"</code><br>example:<br><code>\"2019-01-15\"</code>",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "keywords": {
        +        "description": "<em>keywords</em><br><strong>required field</strong><br>the maximum number of keywords you can specify: 5<p>learn more about rules and limitations of <code>keyword</code> and <code>keywords</code> fields in DataForSEO APIs in this <a href=\"https://dataforseo.com/help-center/rules-and-limitations-of-keyword-and-keywords-fields-in-dataforseo-apis\" rel=\"noopener noreferrer\" target=\"_blank\">Help Center article</a>",
        +        "items": {
        +          "type": "string"
        +        },
        +        "type": "array"
        +      },
        +      "location_code": {
        +        "description": "<em>search engine location code</em><br>optional field<br>if you don't use this field, you will recieve global results<br><strong>if you use this field, you don't need to specify <code>location_name</code></strong><br>you can receive the list of available locations of the search engines with their <code>location_code</code> by making a separate request to <code>https://api.dataforseo.com/v3/keywords_data/dataforseo_trends/locations</code><br><strong>note that the data will be provided for the country the specified <code>location_code</code> belongs to;</strong><br>example:<br><code class=\"long-string\">2840</code>",
        +        "type": [
        +          "integer",
        +          "null"
        +        ]
        +      },
        +      "location_name": {
        +        "description": "<em>full name of search engine location</em><br>optional field<br>if you don't use this field, you will recieve global results<br><strong>if you use this field, you don't need to specify <code>location_code</code></strong><br>you can receive the list of available locations of the search engine with their <code>location_name</code> by making a separate request to <code>https://api.dataforseo.com/v3/keywords_data/dataforseo_trends/locations</code><br><strong>note that the data will be provided for the country the specified <code>location_name</code> belongs to;</strong><br>example:<br><code class=\"long-string\">United Kingdom</code>",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "tag": {
        +        "description": "<em>user-defined task identifier</em><br>optional field<br><em>the character limit is 255</em><br>you can use this parameter to identify the task and match it with the result<br>you will find the specified <code>tag</code> value in the <code>data</code> object of the response",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "time_range": {
        +        "description": "<em>preset time ranges</em><br>optional field<br>if you specify <code>date_from</code> or <code>date_to</code> parameters, this field will be ignored when setting a task<br><em>possible values for all <code>type</code> parameters:</em><br><code>past_4_hours</code>, <code>past_day</code>, <code>past_7_days</code>, <code>past_30_days</code>, <code>past_90_days</code>, <code>past_12_months</code>, <code>past_5_years</code>",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "type": {
        +        "description": "type of element",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      }
        +    },
        +    "type": "object"
        +  }
        +]
      • removedInput schema / properties / body / items / properties
        Removed value: -{
        -  "date_from": {
        -    "description": "starting date of the time range optional field if you don’t specify this field, the current day and month of the preceding year will be used by default minimal value for the web type: 2004-01-01 minimal value for other types: 2008-01-01 date format: \"yyyy-mm-dd\" example: \"2019-01-15\"",
        -    "type": "string"
        -  },
        -  "date_to": {
        -    "description": "ending date of the time range optional field if you don’t specify this field, the today’s date will be used by default date format: \"yyyy-mm-dd\" example: \"2019-01-15\"",
        -    "type": "string"
        -  },
        -  "keywords": {
        -    "description": "keywords required field the maximum number of keywords you can specify: 5 learn more about rules and limitations of keyword and keywords fields in DataForSEO APIs in this Help Center article",
        -    "items": {
        -      "type": "string"
        -    },
        -    "type": "array"
        -  },
        -  "location_code": {
        -    "description": "search engine location code optional field if you don’t use this field, you will recieve global results if you use this field, you don’t need to specify location_name you can receive the list of available locations of the search engines with their location_code by making a separate request to https://api.dataforseo.com/v3/keywords_data/dataforseo_trends/locations note that the data will be provided for the country the specified location_code belongs to; example: 2840",
        -    "type": "integer"
        -  },
        -  "location_name": {
        -    "description": "full name of search engine location optional field if you don’t use this field, you will recieve global results if you use this field, you don’t need to specify location_code you can receive the list of available locations of the search engine with their location_name by making a separate request to https://api.dataforseo.com/v3/keywords_data/dataforseo_trends/locations note that the data will be provided for the country the specified location_name belongs to; example: United Kingdom",
        -    "type": "string"
        -  },
        -  "tag": {
        -    "description": "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",
        -    "type": "string"
        -  },
        -  "time_range": {
        -    "description": "preset time ranges optional field if you specify date_from or date_to parameters, this field will be ignored when setting a task possible values for all type parameters: past_4_hours, past_day, past_7_days, past_30_days, past_90_days, past_12_months, past_5_years",
        -    "type": "string"
        -  },
        -  "type": {
        -    "description": "type of element",
        -    "type": "string"
        -  }
        -}
      • removedInput schema / properties / body / items / required
        Removed value: -[
        -  "keywords"
        -]
      • changedInput schema / properties / body / items / type
        Previous value: -"object"New value: +[
        +  "object",
        +  "null"
        +]
      • changedInput schema / required
        Previous value: -[
        -  "body"
        -]New value: +[]
      • addedOutput schema / x-fastmcp-wrap-result
        Added value: +true
    • Changedpost_dataforseo_keywords_trends_merged_data_live7 fields changed
      • addedInput schema / properties / body / example
        Added value: +[
        +  {
        +    "date_from": "2023-01-01",
        +    "date_to": "2024-01-01",
        +    "keywords": [
        +      "rugby",
        +      "cricket"
        +    ],
        +    "location_name": "United States",
        +    "type": "web"
        +  }
        +]
      • addedInput schema / properties / body / items / anyOf
        Added value: +[
        +  {
        +    "example": [
        +      {
        +        "date_from": "2023-01-01",
        +        "date_to": "2024-01-01",
        +        "keywords": [
        +          "rugby",
        +          "cricket"
        +        ],
        +        "location_name": "United States",
        +        "type": "web"
        +      }
        +    ],
        +    "properties": {
        +      "date_from": {
        +        "description": "<em>starting date of the time range</em><br>optional field<br>if you don't specify this field, the current day and month of the preceding year will be used by default<br>minimal value for the <code>web</code> type: <code>2004-01-01</code><br>minimal value for other types: <code>2008-01-01</code><br>date format: <code>\"yyyy-mm-dd\"</code><br>example:<br><code>\"2019-01-15\"</code>",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "date_to": {
        +        "description": "<em>ending date of the time range</em><br>optional field<br>if you don't specify this field, the today's date will be used by default<br>date format: <code>\"yyyy-mm-dd\"</code><br>example:<br><code>\"2019-01-15\"</code>",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "keywords": {
        +        "description": "<em>keywords</em><br><strong>required field</strong><br>the maximum number of keywords you can specify: 5<br>avoid symbols and special characters (e.g., UTF symbols, emojis);<br>specifying non-Latin characters, you’ll get data for the countries where they are used<p>learn more about rules and limitations of <code>keyword</code> and <code>keywords</code> fields in DataForSEO APIs in this <a href=\"https://dataforseo.com/help-center/rules-and-limitations-of-keyword-and-keywords-fields-in-dataforseo-apis\" rel=\"noopener noreferrer\" target=\"_blank\">Help Center article</a>",
        +        "items": {
        +          "type": "string"
        +        },
        +        "type": "array"
        +      },
        +      "location_code": {
        +        "description": "<em>search engine location code</em><br>optional field<br>if you don't use this field, you will recieve global results<br><strong>if you use this field, you don't need to specify <code>location_name</code></strong><br>you can receive the list of available locations of the search engines with their <code>location_code</code> by making a separate request to <code>https://api.dataforseo.com/v3/keywords_data/dataforseo_trends/locations</code><br><strong>note that the data will be provided for the country the specified <code>location_code</code> belongs to;</strong><br>example:<br><code class=\"long-string\">2840</code>",
        +        "type": [
        +          "integer",
        +          "null"
        +        ]
        +      },
        +      "location_name": {
        +        "description": "<em>full name of search engine location</em><br>optional field<br>if you don't use this field, you will recieve global results<br><strong>if you use this field, you don't need to specify <code>location_code</code></strong><br>you can receive the list of available locations of the search engine with their <code>location_name</code> by making a separate request to <code>https://api.dataforseo.com/v3/keywords_data/dataforseo_trends/locations</code><br><strong>note that the data will be provided for the country the specified <code>location_name</code> belongs to;</strong><br>example:<br><code class=\"long-string\">United Kingdom</code>",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "tag": {
        +        "description": "<em>user-defined task identifier</em><br>optional field<br><em>the character limit is 255</em><br>you can use this parameter to identify the task and match it with the result<br>you will find the specified <code>tag</code> value in the <code>data</code> object of the response",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "time_range": {
        +        "description": "<em>preset time ranges</em><br>optional field<br>if you specify <code>date_from</code> or <code>date_to</code> parameters, this field will be ignored when setting a task<br><em>possible values for all <code>type</code> parameters:</em><br><code>past_4_hours</code>, <code>past_day</code>, <code>past_7_days</code>, <code>past_30_days</code>, <code>past_90_days</code>, <code>past_12_months</code>, <code>past_5_years</code>",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "type": {
        +        "description": "type of element",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      }
        +    },
        +    "type": "object"
        +  }
        +]
      • removedInput schema / properties / body / items / properties
        Removed value: -{
        -  "date_from": {
        -    "description": "starting date of the time range optional field if you don’t specify this field, the current day and month of the preceding year will be used by default minimal value for the web type: 2004-01-01 minimal value for other types: 2008-01-01 date format: \"yyyy-mm-dd\" example: \"2019-01-15\"",
        -    "type": "string"
        -  },
        -  "date_to": {
        -    "description": "ending date of the time range optional field if you don’t specify this field, the today’s date will be used by default date format: \"yyyy-mm-dd\" example: \"2019-01-15\"",
        -    "type": "string"
        -  },
        -  "keywords": {
        -    "description": "keywords required field the maximum number of keywords you can specify: 5 avoid symbols and special characters (e.g., UTF symbols, emojis); specifying non-Latin characters, you’ll get data for the countries where they are used learn more about rules and limitations of keyword and keywords fields in DataForSEO APIs in this Help Center article",
        -    "items": {
        -      "type": "string"
        -    },
        -    "type": "array"
        -  },
        -  "location_code": {
        -    "description": "search engine location code optional field if you don’t use this field, you will recieve global results if you use this field, you don’t need to specify location_name you can receive the list of available locations of the search engines with their location_code by making a separate request to https://api.dataforseo.com/v3/keywords_data/dataforseo_trends/locations note that the data will be provided for the country the specified location_code belongs to; example: 2840",
        -    "type": "integer"
        -  },
        -  "location_name": {
        -    "description": "full name of search engine location optional field if you don’t use this field, you will recieve global results if you use this field, you don’t need to specify location_code you can receive the list of available locations of the search engine with their location_name by making a separate request to https://api.dataforseo.com/v3/keywords_data/dataforseo_trends/locations note that the data will be provided for the country the specified location_name belongs to; example: United Kingdom",
        -    "type": "string"
        -  },
        -  "tag": {
        -    "description": "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",
        -    "type": "string"
        -  },
        -  "time_range": {
        -    "description": "preset time ranges optional field if you specify date_from or date_to parameters, this field will be ignored when setting a task possible values for all type parameters: past_4_hours, past_day, past_7_days, past_30_days, past_90_days, past_12_months, past_5_years",
        -    "type": "string"
        -  },
        -  "type": {
        -    "description": "type of element",
        -    "type": "string"
        -  }
        -}
      • removedInput schema / properties / body / items / required
        Removed value: -[
        -  "keywords"
        -]
      • changedInput schema / properties / body / items / type
        Previous value: -"object"New value: +[
        +  "object",
        +  "null"
        +]
      • changedInput schema / required
        Previous value: -[
        -  "body"
        -]New value: +[]
      • addedOutput schema / x-fastmcp-wrap-result
        Added value: +true
    • Changedpost_dataforseo_keywords_trends_subregion_interests_live7 fields changed
      • addedInput schema / properties / body / example
        Added value: +[
        +  {
        +    "date_from": "2023-01-01",
        +    "date_to": "2024-01-01",
        +    "keywords": [
        +      "rugby",
        +      "cricket"
        +    ],
        +    "location_name": "United States",
        +    "type": "web"
        +  }
        +]
      • addedInput schema / properties / body / items / anyOf
        Added value: +[
        +  {
        +    "example": [
        +      {
        +        "date_from": "2023-01-01",
        +        "date_to": "2024-01-01",
        +        "keywords": [
        +          "rugby",
        +          "cricket"
        +        ],
        +        "location_name": "United States",
        +        "type": "web"
        +      }
        +    ],
        +    "properties": {
        +      "date_from": {
        +        "description": "<em>starting date of the time range</em><br>optional field<br>if you don't specify this field, the current day and month of the preceding year will be used by default<br>minimal value for the <code>web</code> type: <code>2004-01-01</code><br>minimal value for other types: <code>2008-01-01</code><br>date format: <code>\"yyyy-mm-dd\"</code><br>example:<br><code>\"2019-01-15\"</code>",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "date_to": {
        +        "description": "<em>ending date of the time range</em><br>optional field<br>if you don't specify this field, the today's date will be used by default<br>date format: <code>\"yyyy-mm-dd\"</code><br>example:<br><code>\"2019-01-15\"</code>",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "keywords": {
        +        "description": "<em>keywords</em><br><strong>required field</strong><br>the maximum number of keywords you can specify: 5<br>avoid symbols and special characters (e.g., UTF symbols, emojis);<br>specifying non-Latin characters, you’ll get data for the countries where they are used<p>learn more about rules and limitations of <code>keyword</code> and <code>keywords</code> fields in DataForSEO APIs in this <a href=\"https://dataforseo.com/help-center/rules-and-limitations-of-keyword-and-keywords-fields-in-dataforseo-apis\" rel=\"noopener noreferrer\" target=\"_blank\">Help Center article</a>",
        +        "items": {
        +          "type": "string"
        +        },
        +        "type": "array"
        +      },
        +      "location_code": {
        +        "description": "<em>search engine location code</em><br>optional field<br>if you don't use this field, you will recieve global results<br><strong>if you use this field, you don't need to specify <code>location_name</code></strong><br>you can receive the list of available locations of the search engines with their <code>location_code</code> by making a separate request to <code>https://api.dataforseo.com/v3/keywords_data/dataforseo_trends/locations</code><br><strong>note that the data will be provided for the country the specified <code>location_code</code> belongs to;</strong><br>example:<br><code class=\"long-string\">2840</code>",
        +        "type": [
        +          "integer",
        +          "null"
        +        ]
        +      },
        +      "location_name": {
        +        "description": "<em>full name of search engine location</em><br>optional field<br>if you don't use this field, you will recieve global results<br><strong>if you use this field, you don't need to specify <code>location_code</code></strong><br>you can receive the list of available locations of the search engine with their <code>location_name</code> by making a separate request to <code>https://api.dataforseo.com/v3/keywords_data/dataforseo_trends/locations</code><br><strong>note that the data will be provided for the country the specified <code>location_name</code> belongs to;</strong><br>example:<br><code class=\"long-string\">United Kingdom</code>",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "tag": {
        +        "description": "<em>user-defined task identifier</em><br>optional field<br><em>the character limit is 255</em><br>you can use this parameter to identify the task and match it with the result<br>you will find the specified <code>tag</code> value in the <code>data</code> object of the response",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "time_range": {
        +        "description": "<em>preset time ranges</em><br>optional field<br>if you specify <code>date_from</code> or <code>date_to</code> parameters, this field will be ignored when setting a task<br><em>possible values for all <code>type</code> parameters:</em><br><code>past_4_hours</code>, <code>past_day</code>, <code>past_7_days</code>, <code>past_30_days</code>, <code>past_90_days</code>, <code>past_12_months</code>, <code>past_5_years</code>",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "type": {
        +        "description": "type of element",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      }
        +    },
        +    "type": "object"
        +  }
        +]
      • removedInput schema / properties / body / items / properties
        Removed value: -{
        -  "date_from": {
        -    "description": "starting date of the time range optional field if you don’t specify this field, the current day and month of the preceding year will be used by default minimal value for the web type: 2004-01-01 minimal value for other types: 2008-01-01 date format: \"yyyy-mm-dd\" example: \"2019-01-15\"",
        -    "type": "string"
        -  },
        -  "date_to": {
        -    "description": "ending date of the time range optional field if you don’t specify this field, the today’s date will be used by default date format: \"yyyy-mm-dd\" example: \"2019-01-15\"",
        -    "type": "string"
        -  },
        -  "keywords": {
        -    "description": "keywords required field the maximum number of keywords you can specify: 5 avoid symbols and special characters (e.g., UTF symbols, emojis); specifying non-Latin characters, you’ll get data for the countries where they are used learn more about rules and limitations of keyword and keywords fields in DataForSEO APIs in this Help Center article",
        -    "items": {
        -      "type": "string"
        -    },
        -    "type": "array"
        -  },
        -  "location_code": {
        -    "description": "search engine location code optional field if you don’t use this field, you will recieve global results if you use this field, you don’t need to specify location_name you can receive the list of available locations of the search engines with their location_code by making a separate request to https://api.dataforseo.com/v3/keywords_data/dataforseo_trends/locations note that the data will be provided for the country the specified location_code belongs to; example: 2840",
        -    "type": "integer"
        -  },
        -  "location_name": {
        -    "description": "full name of search engine location optional field if you don’t use this field, you will recieve global results if you use this field, you don’t need to specify location_code you can receive the list of available locations of the search engine with their location_name by making a separate request to https://api.dataforseo.com/v3/keywords_data/dataforseo_trends/locations note that the data will be provided for the country the specified location_name belongs to; example: United Kingdom",
        -    "type": "string"
        -  },
        -  "tag": {
        -    "description": "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",
        -    "type": "string"
        -  },
        -  "time_range": {
        -    "description": "preset time ranges optional field if you specify date_from or date_to parameters, this field will be ignored when setting a task possible values for all type parameters: past_4_hours, past_day, past_7_days, past_30_days, past_90_days, past_12_months, past_5_years",
        -    "type": "string"
        -  },
        -  "type": {
        -    "description": "type of element",
        -    "type": "string"
        -  }
        -}
      • removedInput schema / properties / body / items / required
        Removed value: -[
        -  "keywords"
        -]
      • changedInput schema / properties / body / items / type
        Previous value: -"object"New value: +[
        +  "object",
        +  "null"
        +]
      • changedInput schema / required
        Previous value: -[
        -  "body"
        -]New value: +[]
      • addedOutput schema / x-fastmcp-wrap-result
        Added value: +true
    • Changedpost_dataforseo_labs_google_bulk_keyword_difficulty_live8 fields changed
      • addedInput schema / properties / body / example
        Added value: +[
        +  {
        +    "keywords": [
        +      "dentist new york",
        +      "pizza brooklyn",
        +      "car dealer los angeles"
        +    ],
        +    "language_code": "en",
        +    "location_code": 2840
        +  }
        +]
      • removedInput schema / properties / body / items / allOf
        Removed value: -[
        -  {
        -    "anyOf": [
        -      {
        -        "required": [
        -          "location_name"
        -        ]
        -      },
        -      {
        -        "required": [
        -          "location_code"
        -        ]
        -      }
        -    ]
        -  },
        -  {
        -    "anyOf": [
        -      {
        -        "required": [
        -          "language_name"
        -        ]
        -      },
        -      {
        -        "required": [
        -          "language_code"
        -        ]
        -      }
        -    ]
        -  }
        -]
      • addedInput schema / properties / body / items / anyOf
        Added value: +[
        +  {
        +    "example": [
        +      {
        +        "keywords": [
        +          "dentist new york",
        +          "pizza brooklyn",
        +          "car dealer los angeles"
        +        ],
        +        "language_code": "en",
        +        "location_code": 2840
        +      }
        +    ],
        +    "properties": {
        +      "keywords": {
        +        "description": "<em>target keywords</em><br><strong>required field</strong><br>UTF-8 encoding<br>maximum number of keywords you can specify in this array: 1000<br>the keywords will be converted to lowercase format<p>learn more about rules and limitations of <code>keyword</code> and <code>keywords</code> fields in DataForSEO APIs in this <a href=\"https://dataforseo.com/help-center/rules-and-limitations-of-keyword-and-keywords-fields-in-dataforseo-apis\" rel=\"noopener noreferrer\" target=\"_blank\">Help Center article</a>",
        +        "items": {
        +          "type": "string"
        +        },
        +        "type": "array"
        +      },
        +      "language_code": {
        +        "description": "<em>language code</em><br><strong>required field if don't specify <code>language_name</code></strong><br>you can receive the list of available languages with their <code>language_code</code> by making a separate request to the <br><code>https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages</code><br>example:<br><code class=\"long-string\">en</code>",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "language_name": {
        +        "description": "<em>full name of the language</em><br><strong>required field if don't specify <code>language_code</code></strong><br>you can receive the list of available languages with their <code>language_name</code> by making a separate request to the <br><code>https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages</code><br>example:<br><code class=\"long-string\">English</code>",
        +        "type": "string"
        +      },
        +      "location_code": {
        +        "description": "<em>location code</em><br><strong>required field if don't specify <code>location_name</code></strong><br>you can receive the list of available locations with their <code>location_code</code> by making a separate request to the <br><code>https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages</code><br>example:<br><code class=\"long-string\">2840</code>",
        +        "type": "integer"
        +      },
        +      "location_name": {
        +        "description": "<em>full name of the location</em><br><strong>required field if don't specify <code>location_code</code></strong><br>you can receive the list of available locations with their <code>location_name</code> by making a separate request to the <br><code>https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages</code><br>example:<br><code class=\"long-string\">United Kingdom</code>",
        +        "type": "string"
        +      },
        +      "tag": {
        +        "description": "<em>user-defined task identifier</em><br>optional field<br><em>the character limit is 255</em><br>you can use this parameter to identify the task and match it with the result<br>you will find the specified <code>tag</code> value in the <code>data</code> object of the response",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      }
        +    },
        +    "type": "object"
        +  }
        +]
      • removedInput schema / properties / body / items / properties
        Removed value: -{
        -  "keywords": {
        -    "description": "target keywords required field UTF-8 encoding maximum number of keywords you can specify in this array: 1000 the keywords will be converted to lowercase format learn more about rules and limitations of keyword and keywords fields in DataForSEO APIs in this Help Center article",
        -    "items": {
        -      "type": "string"
        -    },
        -    "type": "array"
        -  },
        -  "language_code": {
        -    "description": "language code required field if don’t specify language_name you can receive the list of available languages with their language_code by making a separate request to the https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages example: en",
        -    "type": "string"
        -  },
        -  "language_name": {
        -    "description": "full name of the language required field if don’t specify language_code you can receive the list of available languages with their language_name by making a separate request to the https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages example: English",
        -    "type": "string"
        -  },
        -  "location_code": {
        -    "description": "location code required field if don’t specify location_name you can receive the list of available locations with their location_code by making a separate request to the https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages example: 2840",
        -    "type": "integer"
        -  },
        -  "location_name": {
        -    "description": "full name of the location required field if don’t specify location_code you can receive the list of available locations with their location_name by making a separate request to the https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages example: United Kingdom",
        -    "type": "string"
        -  },
        -  "tag": {
        -    "description": "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",
        -    "type": "string"
        -  }
        -}
      • removedInput schema / properties / body / items / required
        Removed value: -[
        -  "keywords"
        -]
      • changedInput schema / properties / body / items / type
        Previous value: -"object"New value: +[
        +  "object",
        +  "null"
        +]
      • changedInput schema / required
        Previous value: -[
        -  "body"
        -]New value: +[]
      • addedOutput schema / x-fastmcp-wrap-result
        Added value: +true
    • Changedpost_dataforseo_labs_google_categories_for_kw_live8 fields changed
      • addedInput schema / properties / body / example
        Added value: +[
        +  {
        +    "keywords": [
        +      "dentist new york",
        +      "pizza brooklyn",
        +      "car dealer los angeles"
        +    ],
        +    "language_code": "en"
        +  }
        +]
      • removedInput schema / properties / body / items / allOf
        Removed value: -[
        -  {
        -    "anyOf": [
        -      {
        -        "required": [
        -          "language_name"
        -        ]
        -      },
        -      {
        -        "required": [
        -          "language_code"
        -        ]
        -      }
        -    ]
        -  }
        -]
      • addedInput schema / properties / body / items / anyOf
        Added value: +[
        +  {
        +    "example": [
        +      {
        +        "keywords": [
        +          "dentist new york",
        +          "pizza brooklyn",
        +          "car dealer los angeles"
        +        ],
        +        "language_code": "en"
        +      }
        +    ],
        +    "properties": {
        +      "keywords": {
        +        "description": "<em>target keywords</em><br><strong>required field</strong><br>UTF-8 encoding<br>maximum number of keywords you can specify in this array: 1000<br>the keywords will be converted to lowercase format<p>learn more about rules and limitations of <code>keyword</code> and <code>keywords</code> fields in DataForSEO APIs in this <a href=\"https://dataforseo.com/help-center/rules-and-limitations-of-keyword-and-keywords-fields-in-dataforseo-apis\" rel=\"noopener noreferrer\" target=\"_blank\">Help Center article</a>",
        +        "items": {
        +          "type": "string"
        +        },
        +        "type": "array"
        +      },
        +      "language_code": {
        +        "description": "<em>language code</em><br><strong>required field if don't specify <code>language_name</code></strong><br>you can receive the list of available languages with their <code>language_code</code> by making a separate request to the <br><code>https://api.dataforseo.com/v3/dataforseo_labs/google/categories_for_keywords/languages</code><br>example:<br><code class=\"long-string\">en</code>",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "language_name": {
        +        "description": "<em>full name of the language</em><br><strong>required field if don't specify <code>language_code</code></strong><br>you can receive the list of available languages with their <code>language_name</code> by making a separate request to the <br><code>https://api.dataforseo.com/v3/dataforseo_labs/google/categories_for_keywords/languages</code><br>example:<br><code class=\"long-string\">English</code>",
        +        "type": "string"
        +      },
        +      "tag": {
        +        "description": "<em>user-defined task identifier</em><br>optional field<br><em>the character limit is 255</em><br>you can use this parameter to identify the task and match it with the result<br>you will find the specified <code>tag</code> value in the <code>data</code> object of the response",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      }
        +    },
        +    "type": "object"
        +  }
        +]
      • removedInput schema / properties / body / items / properties
        Removed value: -{
        -  "keywords": {
        -    "description": "target keywords required field UTF-8 encoding maximum number of keywords you can specify in this array: 1000 the keywords will be converted to lowercase format learn more about rules and limitations of keyword and keywords fields in DataForSEO APIs in this Help Center article",
        -    "items": {
        -      "type": "string"
        -    },
        -    "type": "array"
        -  },
        -  "language_code": {
        -    "description": "language code required field if don’t specify language_name you can receive the list of available languages with their language_code by making a separate request to the https://api.dataforseo.com/v3/dataforseo_labs/google/categories_for_keywords/languages example: en",
        -    "type": "string"
        -  },
        -  "language_name": {
        -    "description": "full name of the language required field if don’t specify language_code you can receive the list of available languages with their language_name by making a separate request to the https://api.dataforseo.com/v3/dataforseo_labs/google/categories_for_keywords/languages example: English",
        -    "type": "string"
        -  },
        -  "tag": {
        -    "description": "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",
        -    "type": "string"
        -  }
        -}
      • removedInput schema / properties / body / items / required
        Removed value: -[
        -  "keywords"
        -]
      • changedInput schema / properties / body / items / type
        Previous value: -"object"New value: +[
        +  "object",
        +  "null"
        +]
      • changedInput schema / required
        Previous value: -[
        -  "body"
        -]New value: +[]
      • addedOutput schema / x-fastmcp-wrap-result
        Added value: +true
    • Changedpost_dataforseo_labs_google_historical_keyword_data_live8 fields changed
      • addedInput schema / properties / body / example
        Added value: +[
        +  {
        +    "keywords": [
        +      "iphone"
        +    ],
        +    "language_code": "en",
        +    "location_code": 2840
        +  }
        +]
      • removedInput schema / properties / body / items / allOf
        Removed value: -[
        -  {
        -    "anyOf": [
        -      {
        -        "required": [
        -          "location_name"
        -        ]
        -      },
        -      {
        -        "required": [
        -          "location_code"
        -        ]
        -      }
        -    ]
        -  },
        -  {
        -    "anyOf": [
        -      {
        -        "required": [
        -          "language_name"
        -        ]
        -      },
        -      {
        -        "required": [
        -          "language_code"
        -        ]
        -      }
        -    ]
        -  }
        -]
      • addedInput schema / properties / body / items / anyOf
        Added value: +[
        +  {
        +    "example": [
        +      {
        +        "keywords": [
        +          "iphone"
        +        ],
        +        "language_code": "en",
        +        "location_code": 2840
        +      }
        +    ],
        +    "properties": {
        +      "keywords": {
        +        "description": "<em>keywords</em><br><strong>required field</strong><br>The maximum number of keywords you can specify: 700<br>The maximum number of characters for each keyword: 80<br>The maximum number of words for each keyword phrase: 10<br>the specified keywords will be converted to lowercase format, data will be provided in a separate array<p><strong>note</strong> that if some of the keywords specified in this array are omitted in the results you receive, then our database doesn't contain such keywords and cannot return data on them<br>you will not be charged for the keywords omitted in the results<p>learn more about rules and limitations of <code>keyword</code> and <code>keywords</code> fields in DataForSEO APIs in this <a href=\"https://dataforseo.com/help-center/rules-and-limitations-of-keyword-and-keywords-fields-in-dataforseo-apis\" rel=\"noopener noreferrer\" target=\"_blank\">Help Center article</a>",
        +        "items": {
        +          "type": "string"
        +        },
        +        "type": "array"
        +      },
        +      "language_code": {
        +        "description": "<em>language code</em><br><strong>required field if you don't specify</strong> <code>language_name</code><br><strong>Note:</strong> it is required to specify either <code>language_name</code> or <code>language_code</code><br>you can receive the list of available locations with their <code>language_code</code> by making a separate request to the <br><code>https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages</code><br>example:<br><code class=\"long-string\">en</code>",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "language_name": {
        +        "description": "<em>full name of the language</em><br><strong>required field if you don't specify</strong> <code>language_code</code><br><strong>Note:</strong> it is required to specify either <code>language_name</code> or <code>language_code</code><br>you can receive the list of available locations with their <code>language_name</code> by making a separate request to the <br><code>https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages</code><br>example:<br><code class=\"long-string\">English</code>",
        +        "type": "string"
        +      },
        +      "location_code": {
        +        "description": "<em>location code</em><br><strong>required field if you don't specify</strong> <code>location_name</code><br><strong>Note:</strong> it is required to specify either <code>location_name</code> or <code>location_code</code><br>you can receive the list of available locations with their <code>location_code</code> by making a separate request to the <br><code>https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages</code><br>example:<br><code class=\"long-string\">2840</code>",
        +        "type": "integer"
        +      },
        +      "location_name": {
        +        "description": "<em>full name of the location</em><br><strong>required field if you don't specify</strong> <code>location_code</code><br><strong>Note:</strong> it is required to specify either <code>location_name</code> or <code>location_code</code><br>you can receive the list of available locations with their <code>location_name</code> by making a separate request to the <br><code>https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages</code><br>example:<br><code class=\"long-string\">United Kingdom</code>",
        +        "type": "string"
        +      },
        +      "tag": {
        +        "description": "<em>user-defined task identifier</em><br>optional field<br><em>the character limit is 255</em><br>you can use this parameter to identify the task and match it with the result<br>you will find the specified <code>tag</code> value in the <code>data</code> object of the response",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      }
        +    },
        +    "type": "object"
        +  }
        +]
      • removedInput schema / properties / body / items / properties
        Removed value: -{
        -  "keywords": {
        -    "description": "keywords required field The maximum number of keywords you can specify: 700 The maximum number of characters for each keyword: 80 The maximum number of words for each keyword phrase: 10 the specified keywords will be converted to lowercase format, data will be provided in a separate array note that if some of the keywords specified in this array are omitted in the results you receive, then our database doesn’t contain such keywords and cannot return data on them you will not be charged for the keywords omitted in the results learn more about rules and limitations of keyword and keywords fields in DataForSEO APIs in this Help Center article",
        -    "items": {
        -      "type": "string"
        -    },
        -    "type": "array"
        -  },
        -  "language_code": {
        -    "description": "language code required field if you don’t specify language_name Note: it is required to specify either language_name or language_code you can receive the list of available locations with their language_code by making a separate request to the https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages example: en",
        -    "type": "string"
        -  },
        -  "language_name": {
        -    "description": "full name of the language required field if you don’t specify language_code Note: it is required to specify either language_name or language_code you can receive the list of available locations with their language_name by making a separate request to the https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages example: English",
        -    "type": "string"
        -  },
        -  "location_code": {
        -    "description": "location code required field if you don’t specify location_name Note: it is required to specify either location_name or location_code you can receive the list of available locations with their location_code by making a separate request to the https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages example: 2840",
        -    "type": "integer"
        -  },
        -  "location_name": {
        -    "description": "full name of the location required field if you don’t specify location_code Note: it is required to specify either location_name or location_code you can receive the list of available locations with their location_name by making a separate request to the https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages example: United Kingdom",
        -    "type": "string"
        -  },
        -  "tag": {
        -    "description": "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",
        -    "type": "string"
        -  }
        -}
      • removedInput schema / properties / body / items / required
        Removed value: -[
        -  "keywords"
        -]
      • changedInput schema / properties / body / items / type
        Previous value: -"object"New value: +[
        +  "object",
        +  "null"
        +]
      • changedInput schema / required
        Previous value: -[
        -  "body"
        -]New value: +[]
      • addedOutput schema / x-fastmcp-wrap-result
        Added value: +true
    • Changedpost_dataforseo_labs_google_keyword_ideas_live6 fields changed
      • addedInput schema / properties / body / example
        Added value: +[
        +  {
        +    "include_serp_info": true,
        +    "keywords": [
        +      "phone",
        +      "watch"
        +    ],
        +    "language_code": "en",
        +    "limit": 3,
        +    "location_code": 2840
        +  }
        +]
      • changedInput schema / properties / body / items / anyOf
        Previous value: -[
        -  {
        -    "allOf": [
        -      {
        -        "anyOf": [
        -          {
        -            "required": [
        -              "location_name"
        -            ]
        -          },
        -          {
        -            "required": [
        -              "location_code"
        -            ]
        -          }
        -        ]
        -      }
        -    ],
        -    "required": [
        -      "keywords"
        -    ]
        -  },
        -  {
        -    "required": [
        -      "offset_token"
        -    ]
        -  }
        -]New value: +[
        +  {
        +    "example": [
        +      {
        +        "include_serp_info": true,
        +        "keywords": [
        +          "phone",
        +          "watch"
        +        ],
        +        "language_code": "en",
        +        "limit": 3,
        +        "location_code": 2840
        +      }
        +    ],
        +    "properties": {
        +      "closely_variants": {
        +        "description": "<em>search mode</em><br>optional field<br>if set to_<code class=\"prettyprint\">true</code> the results will be based on the phrase-match search algorithm<br>if set to <code class=\"prettyprint\">false</code> the results will be based on the broad-match search algorithm<br>default value: <code>false</code>n",
        +        "type": [
        +          "boolean",
        +          "null"
        +        ]
        +      },
        +      "filters": {
        +        "description": "<em>array of results filtering parameters</em><br>optional field<br><strong>you can add several filters at once (8 filters maximum)</strong><br>you should set a logical operator <code>and</code>, <code>or</code> between the conditions<br>the following operators are supported:<br><code>regex</code>, <code>not_regex</code>, <code>&lt;</code>, <code>&lt;=</code>, <code>&gt;</code>, <code>&gt;=</code>, <code>=</code>, <code>&lt;&gt;</code>, <code>in</code>, <code>not_in</code>, <code>match</code>, <code>not_match</code>, <code>ilike</code>, <code>not_ilike</code>, <code>like</code>, <code>not_like</code><br>you can use the <code>%</code> operator with <code>like</code> and <code>not_like</code>,as well as <code>ilike</code>, <code>not_ilike</code> to match any string of zero or more characters<br><strong>note that you can not filter the results by <code>relevance</code></strong><br>example:<br><code>[\"keyword_info.search_volume\",\"&gt;\",0]</code><p><code>[[\"keyword_info.search_volume\",\"in\",[0,1000]],<br>\"and\",<br>[\"keyword_info.competition_level\",\"=\",\"LOW\"]]</code><p><code>[[\"keyword_info.search_volume\",\"&gt;\",100],<br>\"and\",<br>[[\"keyword_info.cpc\",\"&lt;\",0.5],<br>\"or\",<p>[\"keyword_info.high_top_of_page_bid\",\"&lt;=\",0.5]]]</code><br>for more information about filters, please refer to <a href=\"/v3/dataforseo_labs/filters\" target=\"_blank\" rel=\"noopener noreferrer\">Dataforseo Labs - Filters</a> or this <a href=\"https://dataforseo.com/help-center/how-to-use-filters-in-dataforseo-labs-api\" rel=\"noopener noreferrer\" target=\"_blank\">help center guide</a>",
        +        "items": {
        +          "type": [
        +            "object",
        +            "null"
        +          ]
        +        },
        +        "type": [
        +          "array",
        +          "null"
        +        ]
        +      },
        +      "ignore_synonyms": {
        +        "description": "<em>ignore highly similar keywords</em><br>optional field<br>if set to_<code class=\"prettyprint\">true</code> only core keywords will be returned, all highly similar keywords will be excluded;  <br>default value: <code>false</code>n",
        +        "type": [
        +          "boolean",
        +          "null"
        +        ]
        +      },
        +      "include_clickstream_data": {
        +        "description": "<em>include or exclude data from clickstream-based metrics in the result</em><br>optional field<br>if the parameter is set to <code>true</code>, you will receive <code>clickstream_keyword_info</code>, <code>keyword_info_normalized_with_clickstream</code>, and <code>keyword_info_normalized_with_bing</code> fields in the response<br>default value: <code>false</code><br>with this parameter enabled, you will be charged double the price for the request<p>learn more about how clickstream-based metrics are calculated in this <a href=\"https://dataforseo.com/help-center/what-are-clickstream-based-metrics-and-how-do-we-calculate-them\" rel=\"noopener noreferrer\" target=\"_blank\">help center article</a>",
        +        "type": [
        +          "boolean",
        +          "null"
        +        ]
        +      },
        +      "include_serp_info": {
        +        "description": "<em>include data from SERP for each keyword</em><br>optional field<br>if set to <code>true</code>, we will return a <code>serp_info</code> array containing SERP data (number of search results, relevant URL, and SERP features) for every keyword in the response<br>default value: <code>false</code>",
        +        "type": [
        +          "boolean",
        +          "null"
        +        ]
        +      },
        +      "keywords": {
        +        "description": "<em>keywords</em><br><strong>required field</strong><br>UTF-8 encoding<br>The maximum number of keywords you can specify: 200.<br>The keywords will be converted to lowercase format<p>learn more about rules and limitations of <code>keyword</code> and <code>keywords</code> fields in DataForSEO APIs in this <a href=\"https://dataforseo.com/help-center/rules-and-limitations-of-keyword-and-keywords-fields-in-dataforseo-apis\" rel=\"noopener noreferrer\" target=\"_blank\">Help Center article</a>",
        +        "items": {
        +          "type": "string"
        +        },
        +        "type": "array"
        +      },
        +      "language_code": {
        +        "description": "<em>language code</em><br>optional field<br>if you use this field, you don't need to specify <code>language_name</code><br>you can receive the list of available languages with their <code>language_code</code> by making a separate request to the<br><code>https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages</code><br>example:<br><code class=\"long-string\">en</code><br><strong>Note:</strong> if omitted, results default to the language with the most keyword records in the specified location;<br>refer to the <code>available_languages.keywords</code> field of the <a href=\"https://docs.dataforseo.com/v3/dataforseo_labs/locations_and_languages\" target=\"_blank\">Locations and Languages endpoint</a> to determine the default language",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "language_name": {
        +        "description": "<em>full name of the language</em><br>optional field<br>if you use this field, you don't need to specify <code>language_code</code><br>you can receive the list of available languages with their <code>language_name</code> by making a separate request to the<br><code>https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages</code><br>example:<br><code class=\"long-string\">English</code><br><strong>Note:</strong> if omitted, results default to the language with the most keyword records in the specified location;<br>refer to the <code>available_languages.keywords</code> field of the <a href=\"https://docs.dataforseo.com/v3/dataforseo_labs/locations_and_languages\" target=\"_blank\">Locations and Languages endpoint</a> to determine the default language",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "limit": {
        +        "description": "<em>the maximum number of keywords in the results array</em><br>optional field<br>default value: <code>700</code><br>maximum value: <code>1000</code>",
        +        "type": [
        +          "integer",
        +          "null"
        +        ]
        +      },
        +      "location_code": {
        +        "description": "<em>unique location identifier</em><br><strong>required field if you don't specify</strong> <code>location_name</code><br><strong>Note:</strong> it is required to specify either <code>location_name</code> or <code>location_code</code><br>you can receive the list of available locations with their <code>location_code</code> by making a separate request to the <br><code>https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages</code><br>example:<br><code class=\"long-string\">2840</code>",
        +        "type": "integer"
        +      },
        +      "location_name": {
        +        "description": "<em>full name of the location</em><br><strong>required field if you don't specify</strong> <code>location_code</code><br><strong>Note:</strong> it is required to specify either <code>location_name</code> or <code>location_code</code><br>you can receive the list of available locations with their <code>location_name</code> by making a separate request to the<br><code>https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages</code><br>example:<br><code class=\"long-string\">United Kingdom</code>",
        +        "type": "string"
        +      },
        +      "offset": {
        +        "description": "<em>offset in the results array of returned keywords</em><br>optional field<br>default value: <code>0</code><br>if you specify the <code>10</code> value, the first ten keywords in the results array will be omitted and the data will be provided for the successive keywords<br><strong>Note:</strong> we recommend using this parameter only when retrieving up to 10,000 results<br>for retrieving over 10,000 results, use the <code>offset_token</code> instead.",
        +        "type": [
        +          "integer",
        +          "null"
        +        ]
        +      },
        +      "offset_token": {
        +        "description": "<em>offset token for subsequent requests</em><br>optional field<br>provided in the identical filed of the response to each request;<br>use this parameter to avoid timeouts while trying to obtain over 10,000 results in a single request;<br>by specifying the unique <code>offset_token</code> value from the response array, you will get the subsequent results of the initial task;<br><code>offset_token</code> values are unique for each subsequent task <br><strong>Note:</strong> if the <code>offset_token</code> is specified in the request, all other parameters except <code>limit</code> will not be taken into account when processing a task.<br>learn more about this parameter on our <a href=\"https://dataforseo.com/help-center/what-is-the-difference-between-the-offset-and-offset_token-parameters#offset_token\" target=\"_blank\">Help Center</a>",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "order_by": {
        +        "description": "<em>results sorting rules</em><br>optional field<br>you can use the same values as in the <code>filters</code> array to sort the results<br>possible sorting types:<br><code>asc</code> - results will be sorted in the ascending order<br><code>desc</code> - results will be sorted in the descending order<br>you should use a comma to set up a sorting parameter<p>default rule:<br><code>[\"relevance,desc\"]</code><br>relevance is used as the default sorting rule to provide you with the closest keyword ideas. We recommend using this sorting rule to get highly-relevant search terms. <strong>Note</strong> that <code>relevance</code> is only our internal system identifier, so <strong>it can not be used as a filter</strong>, and you will not find this field in the <code>result</code> array. The relevance score is based on a similar principle as used in <a href=\"/v3/keywords_data/google/keywords_for_keywords/live/?php\">the Keywords For Keywords</a> endpoint.<p><strong>note that you can set no more than three sorting rules in a single request</strong><br>you should use a comma to separate several sorting rules<br>example:<br><code>[\"relevance,desc\",\"keyword_info.search_volume,desc\"]</code>",
        +        "items": {
        +          "type": "string"
        +        },
        +        "type": [
        +          "array",
        +          "null"
        +        ]
        +      },
        +      "tag": {
        +        "description": "<em>user-defined task identifier</em><br>optional field<br><em>the character limit is 255</em><br>you can use this parameter to identify the task and match it with the result<br>you will find the specified <code>tag</code> value in the <code>data</code> object of the response",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      }
        +    },
        +    "type": "object"
        +  }
        +]
      • removedInput schema / properties / body / items / properties
        Removed value: -{
        -  "closely_variants": {
        -    "description": "search mode optional field if set to_true the results will be based on the phrase-match search algorithm if set to false the results will be based on the broad-match search algorithm default value: falsen",
        -    "type": "boolean"
        -  },
        -  "filters": {
        -    "description": "array of results filtering parameters optional field you can add several filters at once (8 filters maximum) you should set a logical operator and, or between the conditions the following operators are supported: regex, not_regex, <, <=, >, >=, =, <>, in, not_in, match, not_match, ilike, not_ilike, like, not_like you can use the % operator with like and not_like,as well as ilike, not_ilike to match any string of zero or more characters note that you can not filter the results by relevance example: [\"keyword_info.search_volume\",\">\",0] [[\"keyword_info.search_volume\",\"in\",[0,1000]], \"and\", [\"keyword_info.competition_level\",\"=\",\"LOW\"]] [[\"keyword_info.search_volume\",\">\",100], \"and\", [[\"keyword_info.cpc\",\"<\",0.5], \"or\", [\"keyword_info.high_top_of_page_bid\",\"<=\",0.5]]] for more information about filters, please refer to Dataforseo Labs - Filters or this help center guide",
        -    "items": {},
        -    "type": "array"
        -  },
        -  "ignore_synonyms": {
        -    "description": "ignore highly similar keywords optional field if set to_true only core keywords will be returned, all highly similar keywords will be excluded; default value: falsen",
        -    "type": "boolean"
        -  },
        -  "include_clickstream_data": {
        -    "description": "include or exclude data from clickstream-based metrics in the result optional field if the parameter is set to true, you will receive clickstream_keyword_info, keyword_info_normalized_with_clickstream, and keyword_info_normalized_with_bing fields in the response default value: false with this parameter enabled, you will be charged double the price for the request learn more about how clickstream-based metrics are calculated in this help center article",
        -    "type": "boolean"
        -  },
        -  "include_serp_info": {
        -    "description": "include data from SERP for each keyword optional field if set to true, we will return a serp_info array containing SERP data (number of search results, relevant URL, and SERP features) for every keyword in the response default value: false",
        -    "type": "boolean"
        -  },
        -  "keywords": {
        -    "description": "keywords required field UTF-8 encoding The maximum number of keywords you can specify: 200. The keywords will be converted to lowercase format learn more about rules and limitations of keyword and keywords fields in DataForSEO APIs in this Help Center article",
        -    "items": {
        -      "type": "string"
        -    },
        -    "type": "array"
        -  },
        -  "language_code": {
        -    "description": "language code optional field if you use this field, you don’t need to specify language_name you can receive the list of available languages with their language_code by making a separate request to the https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages example: en Note: if omitted, results default to the language with the most keyword records in the specified location; refer to the available_languages.keywords field of the Locations and Languages endpoint to determine the default language",
        -    "type": "string"
        -  },
        -  "language_name": {
        -    "description": "full name of the language optional field if you use this field, you don’t need to specify language_code you can receive the list of available languages with their language_name by making a separate request to the https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages example: English Note: if omitted, results default to the language with the most keyword records in the specified location; refer to the available_languages.keywords field of the Locations and Languages endpoint to determine the default language",
        -    "type": "string"
        -  },
        -  "limit": {
        -    "description": "the maximum number of keywords in the results array optional field default value: 700 maximum value: 1000",
        -    "type": "integer"
        -  },
        -  "location_code": {
        -    "description": "unique location identifier required field if you don’t specify location_name Note: it is required to specify either location_name or location_code you can receive the list of available locations with their location_code by making a separate request to the https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages example: 2840",
        -    "type": "integer"
        -  },
        -  "location_name": {
        -    "description": "full name of the location required field if you don’t specify location_code Note: it is required to specify either location_name or location_code you can receive the list of available locations with their location_name by making a separate request to the https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages example: United Kingdom",
        -    "type": "string"
        -  },
        -  "offset": {
        -    "description": "offset in the results array of returned keywords optional field default value: 0 if you specify the 10 value, the first ten keywords in the results array will be omitted and the data will be provided for the successive keywords Note: we recommend using this parameter only when retrieving up to 10,000 results for retrieving over 10,000 results, use the offset_token instead.",
        -    "type": "integer"
        -  },
        -  "offset_token": {
        -    "description": "offset token for subsequent requests optional field provided in the identical filed of the response to each request; use this parameter to avoid timeouts while trying to obtain over 10,000 results in a single request; by specifying the unique offset_token value from the response array, you will get the subsequent results of the initial task; offset_token values are unique for each subsequent task Note: if the offset_token is specified in the request, all other parameters except limit will not be taken into account when processing a task. learn more about this parameter on our Help Center",
        -    "type": "string"
        -  },
        -  "order_by": {
        -    "description": "results sorting rules optional field you can use the same values as in the filters array to sort the results possible sorting types: asc – results will be sorted in the ascending order desc – results will be sorted in the descending order you should use a comma to set up a sorting parameter default rule: [\"relevance,desc\"] relevance is used as the default sorting rule to provide you with the closest keyword ideas. We recommend using this sorting rule to get highly-relevant search terms. Note that relevance is only our internal system identifier, so it can not be used as a filter, and you will not find this field in the result array. The relevance score is based on a similar principle as used in the Keywords For Keywords endpoint. note that you can set no more than three sorting rules in a single request you should use a comma to separate several sorting rules example: [\"relevance,desc\",\"keyword_info.search_volume,desc\"]",
        -    "items": {
        -      "type": "string"
        -    },
        -    "type": "array"
        -  },
        -  "tag": {
        -    "description": "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",
        -    "type": "string"
        -  }
        -}
      • changedInput schema / properties / body / items / type
        Previous value: -"object"New value: +[
        +  "object",
        +  "null"
        +]
      • changedInput schema / required
        Previous value: -[
        -  "body"
        -]New value: +[]
      • addedOutput schema / x-fastmcp-wrap-result
        Added value: +true
    • Changedpost_dataforseo_labs_google_keyword_overview_live8 fields changed
      • addedInput schema / properties / body / example
        Added value: +[
        +  {
        +    "include_clickstream_data": true,
        +    "include_serp_info": true,
        +    "keywords": [
        +      "iphone"
        +    ],
        +    "language_code": "en",
        +    "location_code": 2840
        +  }
        +]
      • removedInput schema / properties / body / items / allOf
        Removed value: -[
        -  {
        -    "anyOf": [
        -      {
        -        "required": [
        -          "location_name"
        -        ]
        -      },
        -      {
        -        "required": [
        -          "location_code"
        -        ]
        -      }
        -    ]
        -  },
        -  {
        -    "anyOf": [
        -      {
        -        "required": [
        -          "language_name"
        -        ]
        -      },
        -      {
        -        "required": [
        -          "language_code"
        -        ]
        -      }
        -    ]
        -  }
        -]
      • addedInput schema / properties / body / items / anyOf
        Added value: +[
        +  {
        +    "example": [
        +      {
        +        "include_clickstream_data": true,
        +        "include_serp_info": true,
        +        "keywords": [
        +          "iphone"
        +        ],
        +        "language_code": "en",
        +        "location_code": 2840
        +      }
        +    ],
        +    "properties": {
        +      "include_clickstream_data": {
        +        "description": "<em>include or exclude data from clickstream-based metrics in the result</em><br>optional field<br>if the parameter is set to <code>true</code>, you will receive <code>clickstream_keyword_info</code>, <code>keyword_info_normalized_with_clickstream</code>, and <code>keyword_info_normalized_with_bing</code> fields in the response<br>default value: <code>false</code><br>with this parameter enabled, you will be charged double the price for the request<p>learn more about how clickstream-based metrics are calculated in this <a href=\"https://dataforseo.com/help-center/what-are-clickstream-based-metrics-and-how-do-we-calculate-them\" rel=\"noopener noreferrer\" target=\"_blank\">help center article</a>",
        +        "type": [
        +          "boolean",
        +          "null"
        +        ]
        +      },
        +      "include_serp_info": {
        +        "description": "<em>include data from SERP for each keyword</em><br>optional field<br>if set to <code>true</code>, we will return a <code>serp_info</code> array containing SERP data (number of search results, relevant URL, and SERP features) for every keyword in the response<br>default value: <code>false</code>",
        +        "type": [
        +          "boolean",
        +          "null"
        +        ]
        +      },
        +      "keywords": {
        +        "description": "<em>keywords</em><br><strong>required field</strong><br>The maximum number of keywords you can specify: 700<br>The maximum number of characters for each keyword: 80<br>The maximum number of words for each keyword phrase: 10<br>the specified keywords will be converted to lowercase format, data will be provided in a separate array<p><strong>note</strong> that if some of the keywords specified in this array are omitted in the results you receive, then our database doesn't contain such keywords and cannot return data on them<br>you will not be charged for the keywords omitted in the results<p>learn more about rules and limitations of <code>keyword</code> and <code>keywords</code> fields in DataForSEO APIs in this <a href=\"https://dataforseo.com/help-center/rules-and-limitations-of-keyword-and-keywords-fields-in-dataforseo-apis\" rel=\"noopener noreferrer\" target=\"_blank\">Help Center article</a>",
        +        "items": {
        +          "type": "string"
        +        },
        +        "type": "array"
        +      },
        +      "language_code": {
        +        "description": "<em>language code</em><br><strong>required field if you don't specify</strong> <code>language_name</code><br><strong>Note:</strong> it is required to specify either <code>language_name</code> or <code>language_code</code><br>you can receive the list of available locations with their <code>language_code</code> by making a separate request to the <br><code>https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages</code><br>example:<br><code class=\"long-string\">en</code>",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "language_name": {
        +        "description": "<em>full name of the language</em><br><strong>required field if you don't specify</strong> <code>language_code</code><br><strong>Note:</strong> it is required to specify either <code>language_name</code> or <code>language_code</code><br>you can receive the list of available locations with their <code>language_name</code> by making a separate request to the <br><code>https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages</code><br>example:<br><code class=\"long-string\">English</code>",
        +        "type": "string"
        +      },
        +      "location_code": {
        +        "description": "<em>location code</em><br><strong>required field if you don't specify</strong> <code>location_name</code><br><strong>Note:</strong> it is required to specify either <code>location_name</code> or <code>location_code</code><br>you can receive the list of available locations with their <code>location_code</code> by making a separate request to the <br><code>https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages</code><br>example:<br><code class=\"long-string\">2840</code>",
        +        "type": "integer"
        +      },
        +      "location_name": {
        +        "description": "<em>full name of the location</em><br><strong>required field if you don't specify</strong> <code>location_code</code><br><strong>Note:</strong> it is required to specify either <code>location_name</code> or <code>location_code</code><br>you can receive the list of available locations with their <code>location_name</code> by making a separate request to the <br><code>https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages</code><br>example:<br><code class=\"long-string\">United Kingdom</code>",
        +        "type": "string"
        +      },
        +      "tag": {
        +        "description": "<em>user-defined task identifier</em><br>optional field<br><em>the character limit is 255</em><br>you can use this parameter to identify the task and match it with the result<br>you will find the specified <code>tag</code> value in the <code>data</code> object of the response",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      }
        +    },
        +    "type": "object"
        +  }
        +]
      • removedInput schema / properties / body / items / properties
        Removed value: -{
        -  "include_clickstream_data": {
        -    "description": "include or exclude data from clickstream-based metrics in the result optional field if the parameter is set to true, you will receive clickstream_keyword_info, keyword_info_normalized_with_clickstream, and keyword_info_normalized_with_bing fields in the response default value: false with this parameter enabled, you will be charged double the price for the request learn more about how clickstream-based metrics are calculated in this help center article",
        -    "type": "boolean"
        -  },
        -  "include_serp_info": {
        -    "description": "include data from SERP for each keyword optional field if set to true, we will return a serp_info array containing SERP data (number of search results, relevant URL, and SERP features) for every keyword in the response default value: false",
        -    "type": "boolean"
        -  },
        -  "keywords": {
        -    "description": "keywords required field The maximum number of keywords you can specify: 700 The maximum number of characters for each keyword: 80 The maximum number of words for each keyword phrase: 10 the specified keywords will be converted to lowercase format, data will be provided in a separate array note that if some of the keywords specified in this array are omitted in the results you receive, then our database doesn’t contain such keywords and cannot return data on them you will not be charged for the keywords omitted in the results learn more about rules and limitations of keyword and keywords fields in DataForSEO APIs in this Help Center article",
        -    "items": {
        -      "type": "string"
        -    },
        -    "type": "array"
        -  },
        -  "language_code": {
        -    "description": "language code required field if you don’t specify language_name Note: it is required to specify either language_name or language_code you can receive the list of available locations with their language_code by making a separate request to the https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages example: en",
        -    "type": "string"
        -  },
        -  "language_name": {
        -    "description": "full name of the language required field if you don’t specify language_code Note: it is required to specify either language_name or language_code you can receive the list of available locations with their language_name by making a separate request to the https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages example: English",
        -    "type": "string"
        -  },
        -  "location_code": {
        -    "description": "location code required field if you don’t specify location_name Note: it is required to specify either location_name or location_code you can receive the list of available locations with their location_code by making a separate request to the https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages example: 2840",
        -    "type": "integer"
        -  },
        -  "location_name": {
        -    "description": "full name of the location required field if you don’t specify location_code Note: it is required to specify either location_name or location_code you can receive the list of available locations with their location_name by making a separate request to the https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages example: United Kingdom",
        -    "type": "string"
        -  },
        -  "tag": {
        -    "description": "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",
        -    "type": "string"
        -  }
        -}
      • removedInput schema / properties / body / items / required
        Removed value: -[
        -  "keywords"
        -]
      • changedInput schema / properties / body / items / type
        Previous value: -"object"New value: +[
        +  "object",
        +  "null"
        +]
      • changedInput schema / required
        Previous value: -[
        -  "body"
        -]New value: +[]
      • addedOutput schema / x-fastmcp-wrap-result
        Added value: +true
    • Changedpost_dataforseo_labs_google_keyword_suggestions_live6 fields changed
      • addedInput schema / properties / body / example
        Added value: +[
        +  {
        +    "include_seed_keyword": true,
        +    "include_serp_info": true,
        +    "keyword": "phone",
        +    "language_code": "en",
        +    "limit": 1,
        +    "location_code": 2840
        +  }
        +]
      • changedInput schema / properties / body / items / anyOf
        Previous value: -[
        -  {
        -    "required": [
        -      "keyword"
        -    ]
        -  },
        -  {
        -    "required": [
        -      "offset_token"
        -    ]
        -  }
        -]New value: +[
        +  {
        +    "example": [
        +      {
        +        "include_seed_keyword": true,
        +        "include_serp_info": true,
        +        "keyword": "phone",
        +        "language_code": "en",
        +        "limit": 1,
        +        "location_code": 2840
        +      }
        +    ],
        +    "properties": {
        +      "exact_match": {
        +        "description": "<em>search for the exact phrase</em><br>optional field<br>if set to <code>true</code>, the returned keywords will include the exact keyword phrase you specified, with potentially other words before or after that phrase<br>default value: <code>false</code>",
        +        "type": [
        +          "boolean",
        +          "null"
        +        ]
        +      },
        +      "filters": {
        +        "description": "<em>array of results filtering parameters</em><br>optional field<br><strong>you can add several filters at once (8 filters maximum)</strong><br>you should set a logical operator <code>and</code>, <code>or</code> between the conditions<br>the following operators are supported:<br><code>regex</code>, <code>not_regex</code>, <code>&lt;</code>, <code>&lt;=</code>, <code>&gt;</code>, <code>&gt;=</code>, <code>=</code>, <code>&lt;&gt;</code>, <code>in</code>, <code>not_in</code>, <code>match</code>, <code>not_match</code>, <code>ilike</code>, <code>not_ilike</code>, <code>like</code>, <code>not_like</code><br>you can use the <code>%</code> operator with <code>like</code> and <code>not_like</code>, as well as <code>ilike</code> and <code>not_ilike</code> to match any string of zero or more characters<br>example:<br><code>[\"keyword_info.search_volume\",\"&gt;\",0]</code><br><code>[[\"keyword_info.search_volume\",\"in\",[0,1000]],<br>\"and\",<br>[\"keyword_info.competition_level\",\"=\",\"LOW\"]]</code><code>[[\"keyword_info.search_volume\",\"&gt;\",100],<br>\"and\",<br>[[\"keyword_info.cpc\",\"&lt;\",0.5],<br>\"or\",<br>[\"keyword_info.high_top_of_page_bid\",\"&lt;=\",0.5]]]</code><br>for more information about filters, please refer to <a href=\"/v3/dataforseo_labs/filters\" target=\"_blank\" rel=\"noopener noreferrer\">Dataforseo Labs - Filters</a> or this <a href=\"https://dataforseo.com/help-center/how-to-use-filters-in-dataforseo-labs-api\" target=\"_blank\" rel=\"noopener noreferrer\">help center guide</a>",
        +        "items": {
        +          "type": [
        +            "object",
        +            "null"
        +          ]
        +        },
        +        "type": [
        +          "array",
        +          "null"
        +        ]
        +      },
        +      "ignore_synonyms": {
        +        "description": "<em>ignore highly similar keywords</em><br>optional field<br>if set to <code class=\"prettyprint\">true</code> only core keywords will be returned, all highly similar keywords will be excluded;<br>default value: <code>false</code>",
        +        "type": [
        +          "boolean",
        +          "null"
        +        ]
        +      },
        +      "include_clickstream_data": {
        +        "description": "<em>include or exclude data from clickstream-based metrics in the result</em><br>optional field<br>if the parameter is set to <code>true</code>, you will receive <code>clickstream_keyword_info</code>, <code>keyword_info_normalized_with_clickstream</code>, and <code>keyword_info_normalized_with_bing</code> fields in the response<br>default value: <code>false</code><br>with this parameter enabled, you will be charged double the price for the request<p>learn more about how clickstream-based metrics are calculated in this <a href=\"https://dataforseo.com/help-center/what-are-clickstream-based-metrics-and-how-do-we-calculate-them\" rel=\"noopener noreferrer\" target=\"_blank\">help center article</a>",
        +        "type": [
        +          "boolean",
        +          "null"
        +        ]
        +      },
        +      "include_seed_keyword": {
        +        "description": "<em>include data for the seed keyword</em><br>optional field<br>if set to <code>true</code>, data for the seed keyword specified in the <code>keyword</code> field will be provided in the <code>seed_keyword_data</code> array of the response<br>default value: <code>false</code>",
        +        "type": [
        +          "boolean",
        +          "null"
        +        ]
        +      },
        +      "include_serp_info": {
        +        "description": "<em>include data from SERP for each keyword</em><br>optional field<br>if set to <code>true</code>, we will return a <code>serp_info</code> array containing SERP data (number of search results, relevant URL, and SERP features) for every keyword in the response<br>default value: <code>false</code>",
        +        "type": [
        +          "boolean",
        +          "null"
        +        ]
        +      },
        +      "keyword": {
        +        "description": "<em>keyword</em><br><strong>required field</strong><br>UTF-8 encoding<br>the keywords will be converted to lowercase format;<p>learn more about rules and limitations of <code>keyword</code> and <code>keywords</code> fields in DataForSEO APIs in this <a href=\"https://dataforseo.com/help-center/rules-and-limitations-of-keyword-and-keywords-fields-in-dataforseo-apis\" rel=\"noopener noreferrer\" target=\"_blank\">Help Center article</a>",
        +        "type": "string"
        +      },
        +      "language_code": {
        +        "description": "<em>language code</em><br>optional field<br>if you use this field, you don't need to specify <code>language_name</code><br>you can receive the list of available languages with their <code>language_code</code> by making a separate request to the<br><code>https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages</code><br>example:<br><code class=\"long-string\">en</code><br><strong>Note:</strong> if omitted, results default to the language with the most keyword records in the specified location;<br>refer to the <code>available_languages.keywords</code> field of the <a href=\"https://docs.dataforseo.com/v3/dataforseo_labs/locations_and_languages\" target=\"_blank\">Locations and Languages endpoint</a> to determine the default language",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "language_name": {
        +        "description": "<em>full name of the language</em><br>optional field<br>if you use this field, you don't need to specify <code>language_code</code><br>you can receive the list of available languages with their <code>language_name</code> by making a separate request to the<br><code>https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages</code><br>example:<br><code class=\"long-string\">English</code><br><strong>Note:</strong> if omitted, results default to the language with the most keyword records in the specified location;<br>refer to the <code>available_languages.keywords</code> field of the <a href=\"https://docs.dataforseo.com/v3/dataforseo_labs/locations_and_languages\" target=\"_blank\">Locations and Languages endpoint</a> to determine the default language",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "limit": {
        +        "description": "<em>the maximum number of returned keywords</em><br>optional field<br>default value: <code>100</code><br>maximum value: <code>1000</code>",
        +        "type": [
        +          "integer",
        +          "null"
        +        ]
        +      },
        +      "location_code": {
        +        "description": "<em>location code</em><br>optional field<br>if you use this field, you don't need to specify <code>location_name</code><br>you can receive the list of available locations with their <code>location_code</code> by making a separate request to the<br><code>https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages</code><br>ignore this field to get the results for all available locations<br>example:<br><code class=\"long-string\">2840</code>",
        +        "type": [
        +          "integer",
        +          "null"
        +        ]
        +      },
        +      "location_name": {
        +        "description": "<em>full name of the location</em><br>optional field<br>if you use this field, you don't need to specify <code>location_code</code><br>you can receive the list of available locations with their <code>location_name</code> by making a separate request to the<br><code>https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages</code><br>ignore this field to get the results for all available locations<br>example:<br><code class=\"long-string\">United Kingdom</code>",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "offset": {
        +        "description": "<em>offset in the results array of returned keywords</em><br>optional field<br>default value: <code>0</code><br>if you specify the <code>10</code> value, the first ten keywords in the results array will be omitted and the data will be provided for the successive keywords<br><strong>Note:</strong> we recommend using this parameter only when retrieving up to 10,000 results<br>for retrieving over 10,000 results, use the <code>offset_token</code> instead.",
        +        "type": [
        +          "integer",
        +          "null"
        +        ]
        +      },
        +      "offset_token": {
        +        "description": "<em>offset token for subsequent requests</em><br>optional field<br>provided in the identical filed of the response to each request;<br>use this parameter to avoid timeouts while trying to obtain over 10,000 results in a single request;<br>by specifying the unique <code>offset_token</code> value from the response array, you will get the subsequent results of the initial task;<br><code>offset_token</code> values are unique for each subsequent task<br><strong>Note:</strong> if the <code>offset_token</code> is specified in the request, all other parameters except <code>limit</code> will not be taken into account when processing a task.<br>learn more about this parameter on our <a href=\"https://dataforseo.com/help-center/what-is-the-difference-between-the-offset-and-offset_token-parameters#offset_token\" target=\"_blank\">Help Center</a>",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "order_by": {
        +        "description": "<em>results sorting rules</em><br>optional field<br>you can use the same values as in the <code>filters</code> array to sort the results<br>possible sorting types:<br><code>asc</code> - results will be sorted in the ascending order<br><code>desc</code> - results will be sorted in the descending order<br>a comma is used as a separator<br>example:<br><code>[\"keyword_info.competition,desc\"]</code><br>default rule:<br><code>[\"keyword_info.search_volume,desc\"]</code><br><strong>note that you can set no more than three sorting rules in a single request</strong><br>you should use a comma to separate several sorting rules<br>example:<br><code>[\"keyword_info.search_volume,desc\",\"keyword_info.cpc,desc\"]</code>",
        +        "items": {
        +          "type": "string"
        +        },
        +        "type": [
        +          "array",
        +          "null"
        +        ]
        +      },
        +      "tag": {
        +        "description": "<em>user-defined task identifier</em><br>optional field<br><em>the character limit is 255</em><br>you can use this parameter to identify the task and match it with the result<br>you will find the specified <code>tag</code> value in the <code>data</code> object of the response",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      }
        +    },
        +    "type": "object"
        +  }
        +]
      • removedInput schema / properties / body / items / properties
        Removed value: -{
        -  "exact_match": {
        -    "description": "search for the exact phrase optional field if set to true, the returned keywords will include the exact keyword phrase you specified, with potentially other words before or after that phrase default value: false",
        -    "type": "boolean"
        -  },
        -  "filters": {
        -    "description": "array of results filtering parameters optional field you can add several filters at once (8 filters maximum) you should set a logical operator and, or between the conditions the following operators are supported: regex, not_regex, <, <=, >, >=, =, <>, in, not_in, match, not_match, ilike, not_ilike, like, not_like you can use the % operator with like and not_like, as well as ilike and not_ilike to match any string of zero or more characters example: [\"keyword_info.search_volume\",\">\",0] [[\"keyword_info.search_volume\",\"in\",[0,1000]], \"and\", [\"keyword_info.competition_level\",\"=\",\"LOW\"]][[\"keyword_info.search_volume\",\">\",100], \"and\", [[\"keyword_info.cpc\",\"<\",0.5], \"or\", [\"keyword_info.high_top_of_page_bid\",\"<=\",0.5]]] for more information about filters, please refer to Dataforseo Labs - Filters or this help center guide",
        -    "items": {},
        -    "type": "array"
        -  },
        -  "ignore_synonyms": {
        -    "description": "ignore highly similar keywords optional field if set to true only core keywords will be returned, all highly similar keywords will be excluded; default value: false",
        -    "type": "boolean"
        -  },
        -  "include_clickstream_data": {
        -    "description": "include or exclude data from clickstream-based metrics in the result optional field if the parameter is set to true, you will receive clickstream_keyword_info, keyword_info_normalized_with_clickstream, and keyword_info_normalized_with_bing fields in the response default value: false with this parameter enabled, you will be charged double the price for the request learn more about how clickstream-based metrics are calculated in this help center article",
        -    "type": "boolean"
        -  },
        -  "include_seed_keyword": {
        -    "description": "include data for the seed keyword optional field if set to true, data for the seed keyword specified in the keyword field will be provided in the seed_keyword_data array of the response default value: false",
        -    "type": "boolean"
        -  },
        -  "include_serp_info": {
        -    "description": "include data from SERP for each keyword optional field if set to true, we will return a serp_info array containing SERP data (number of search results, relevant URL, and SERP features) for every keyword in the response default value: false",
        -    "type": "boolean"
        -  },
        -  "keyword": {
        -    "description": "keyword required field UTF-8 encoding the keywords will be converted to lowercase format; learn more about rules and limitations of keyword and keywords fields in DataForSEO APIs in this Help Center article",
        -    "type": "string"
        -  },
        -  "language_code": {
        -    "description": "language code optional field if you use this field, you don’t need to specify language_name you can receive the list of available languages with their language_code by making a separate request to the https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages example: en Note: if omitted, results default to the language with the most keyword records in the specified location; refer to the available_languages.keywords field of the Locations and Languages endpoint to determine the default language",
        -    "type": "string"
        -  },
        -  "language_name": {
        -    "description": "full name of the language optional field if you use this field, you don’t need to specify language_code you can receive the list of available languages with their language_name by making a separate request to the https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages example: English Note: if omitted, results default to the language with the most keyword records in the specified location; refer to the available_languages.keywords field of the Locations and Languages endpoint to determine the default language",
        -    "type": "string"
        -  },
        -  "limit": {
        -    "description": "the maximum number of returned keywords optional field default value: 100 maximum value: 1000",
        -    "type": "integer"
        -  },
        -  "location_code": {
        -    "description": "location code optional field if you use this field, you don’t need to specify location_name you can receive the list of available locations with their location_code by making a separate request to the https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages ignore this field to get the results for all available locations example: 2840",
        -    "type": "integer"
        -  },
        -  "location_name": {
        -    "description": "full name of the location optional field if you use this field, you don’t need to specify location_code you can receive the list of available locations with their location_name by making a separate request to the https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages ignore this field to get the results for all available locations example: United Kingdom",
        -    "type": "string"
        -  },
        -  "offset": {
        -    "description": "offset in the results array of returned keywords optional field default value: 0 if you specify the 10 value, the first ten keywords in the results array will be omitted and the data will be provided for the successive keywords Note: we recommend using this parameter only when retrieving up to 10,000 results for retrieving over 10,000 results, use the offset_token instead.",
        -    "type": "integer"
        -  },
        -  "offset_token": {
        -    "description": "offset token for subsequent requests optional field provided in the identical filed of the response to each request; use this parameter to avoid timeouts while trying to obtain over 10,000 results in a single request; by specifying the unique offset_token value from the response array, you will get the subsequent results of the initial task; offset_token values are unique for each subsequent task Note: if the offset_token is specified in the request, all other parameters except limit will not be taken into account when processing a task. learn more about this parameter on our Help Center",
        -    "type": "string"
        -  },
        -  "order_by": {
        -    "description": "results sorting rules optional field you can use the same values as in the filters array to sort the results possible sorting types: asc – results will be sorted in the ascending order desc – results will be sorted in the descending order a comma is used as a separator example: [\"keyword_info.competition,desc\"] default rule: [\"keyword_info.search_volume,desc\"] note that you can set no more than three sorting rules in a single request you should use a comma to separate several sorting rules example: [\"keyword_info.search_volume,desc\",\"keyword_info.cpc,desc\"]",
        -    "items": {
        -      "type": "string"
        -    },
        -    "type": "array"
        -  },
        -  "tag": {
        -    "description": "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",
        -    "type": "string"
        -  }
        -}
      • changedInput schema / properties / body / items / type
        Previous value: -"object"New value: +[
        +  "object",
        +  "null"
        +]
      • changedInput schema / required
        Previous value: -[
        -  "body"
        -]New value: +[]
      • addedOutput schema / x-fastmcp-wrap-result
        Added value: +true
    • Changedpost_dataforseo_labs_google_keywords_for_categories_live6 fields changed
      • addedInput schema / properties / body / example
        Added value: +[
        +  {
        +    "category_codes": [
        +      "12191",
        +      "12193"
        +    ],
        +    "include_serp_info": true,
        +    "language_name": "English",
        +    "limit": 3,
        +    "location_code": 2840
        +  }
        +]
      • changedInput schema / properties / body / items / anyOf
        Previous value: -[
        -  {
        -    "allOf": [
        -      {
        -        "anyOf": [
        -          {
        -            "required": [
        -              "location_name"
        -            ]
        -          },
        -          {
        -            "required": [
        -              "location_code"
        -            ]
        -          }
        -        ]
        -      },
        -      {
        -        "anyOf": [
        -          {
        -            "required": [
        -              "language_name"
        -            ]
        -          },
        -          {
        -            "required": [
        -              "language_code"
        -            ]
        -          }
        -        ]
        -      }
        -    ],
        -    "required": [
        -      "category_codes"
        -    ]
        -  },
        -  {
        -    "required": [
        -      "offset_token"
        -    ]
        -  }
        -]New value: +[
        +  {
        +    "example": [
        +      {
        +        "category_codes": [
        +          "12191",
        +          "12193"
        +        ],
        +        "include_serp_info": true,
        +        "language_name": "English",
        +        "limit": 3,
        +        "location_code": 2840
        +      }
        +    ],
        +    "properties": {
        +      "category_codes": {
        +        "description": "<em>product and service categories</em><br><strong>required field</strong><br>The maximum number of categories you can specify: 20<br>you can download <a href=\"https://cdn.dataforseo.com/v3/categories/categories_dataforseo_labs_2023_10_25.csv\">the full list of possible categories</a>",
        +        "items": {
        +          "type": "string"
        +        },
        +        "type": "array"
        +      },
        +      "category_intersection": {
        +        "description": "<em>category intersections</em><br>optional field<br>if set to <code class=\"prettyprint\">true</code>, you will get keywords featured in all specified categories;<br>if set to <code class=\"prettyprint\">false</code>, you will keywords that are specified in any of the specified categories;<br>default value: <code>true</code>",
        +        "type": [
        +          "boolean",
        +          "null"
        +        ]
        +      },
        +      "filters": {
        +        "description": "<em>array of results filtering parameters</em><br>optional field<br><strong>you can add several filters at once (8 filters maximum)</strong><br>you should set a logical operator <code>and</code>, <code>or</code> between the conditions<br>the following operators are supported:<br><code>regex</code>, <code>not_regex</code>, <code>&lt;</code>, <code>&lt;=</code>, <code>&gt;</code>, <code>&gt;=</code>, <code>=</code>, <code>&lt;&gt;</code>, <code>in</code>, <code>not_in</code>, <code>match</code>, <code>not_match</code>, <code>ilike</code>, <code>not_ilike</code>, <code>like</code>, <code>not_like</code><br>you can use the <code>%</code> operator with <code>like</code> and <code>not_like</code>,as well as <code>ilike</code>, <code>not_ilike</code> to match any string of zero or more characters<br>example:<br><code>[\"keyword_info.search_volume\",\"&gt;\",0]</code><br><code>[[\"keyword_info.search_volume\",\"in\",[0,1000]],<br>\"and\",<br>[\"keyword_info.competition_level\",\"=\",\"LOW\"]]</code><p><code>[[\"keyword_info.search_volume\",\"&gt;\",100],<br>\"and\",<br>[[\"keyword_info.cpc\",\"&lt;\",0.5],<br>\"or\",<br>[\"keyword_info.high_top_of_page_bid\",\"&lt;=\",0.5]]]</code><br>for more information about filters, please refer to <a href=\"/v3/dataforseo_labs/filters\" target=\"_blank\" rel=\"noopener noreferrer\">Dataforseo Labs - Filters</a> or this <a href=\"https://dataforseo.com/help-center/how-to-use-filters-in-dataforseo-labs-api\" target=\"_blank\" rel=\"noopener noreferrer\">help center guide</a>",
        +        "items": {
        +          "type": [
        +            "object",
        +            "null"
        +          ]
        +        },
        +        "type": [
        +          "array",
        +          "null"
        +        ]
        +      },
        +      "ignore_synonyms": {
        +        "description": "<em>ignore highly similar keywords</em><br>optional field<br>if set to <code class=\"prettyprint\">true</code> only core keywords will be returned, all highly similar keywords will be excluded;<br>default value: <code>false</code>",
        +        "type": [
        +          "boolean",
        +          "null"
        +        ]
        +      },
        +      "include_clickstream_data": {
        +        "description": "<em>include or exclude data from clickstream-based metrics in the result</em><br>optional field<br>if the parameter is set to <code>true</code>, you will receive <code>clickstream_keyword_info</code>, <code>keyword_info_normalized_with_clickstream</code>, and <code>keyword_info_normalized_with_bing</code> fields in the response<br>default value: <code>false</code><br>with this parameter enabled, you will be charged double the price for the request<p>learn more about how clickstream-based metrics are calculated in this <a href=\"https://dataforseo.com/help-center/what-are-clickstream-based-metrics-and-how-do-we-calculate-them\" rel=\"noopener noreferrer\" target=\"_blank\">help center article</a>",
        +        "type": [
        +          "boolean",
        +          "null"
        +        ]
        +      },
        +      "include_serp_info": {
        +        "description": "<em>include data from SERP for each keyword</em><br>optional field<br>if set to <code>true</code>, we will return a <code>serp_info</code> array containing SERP data (number of search results, relevant URL, and SERP features) for every keyword in the response<br>default value: <code>false</code>",
        +        "type": [
        +          "boolean",
        +          "null"
        +        ]
        +      },
        +      "language_code": {
        +        "description": "<em>unique language identifier</em><br><strong>required field if you don't specify</strong> <code>language_name</code><br><strong>Note:</strong> it is required to specify either <code>language_name</code> or <code>language_code</code><br>you can receive the list of available languages with their <code>language_code</code> by making a separate request to the<br><code>https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages</code><br>example:<br><code class=\"long-string\">en</code>",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "language_name": {
        +        "description": "<em>full name of the language</em><br><strong>required field if you don't specify</strong> <code>language_code</code><br><strong>Note:</strong> it is required to specify either <code>language_name</code> or <code>language_code</code><br>you can receive the list of available languages with their <code>language_name</code> by making a separate request to the<br><code>https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages</code><br>example:<br><code class=\"long-string\">English</code>",
        +        "type": "string"
        +      },
        +      "limit": {
        +        "description": "<em>the maximum number of keywords in the results array</em><br>optional field<br>default value: <code>100</code><br>maximum value: <code>1000</code>",
        +        "type": [
        +          "integer",
        +          "null"
        +        ]
        +      },
        +      "location_code": {
        +        "description": "<em>unique location identifier</em><br><strong>required field if you don't specify</strong> <code>location_name</code><br><strong>Note:</strong> it is required to specify either <code>location_name</code> or <code>location_code</code><br>you can receive the list of available locations with their <code>location_code</code> by making a separate request to the<br><code>https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages</code><br>example:<br><code class=\"long-string\">2840</code>",
        +        "type": "integer"
        +      },
        +      "location_name": {
        +        "description": "<em>full name of the location</em><br><strong>required field if you don't specify</strong> <code>location_code</code><br><strong>Note:</strong> it is required to specify either <code>location_name</code> or <code>location_code</code><br>you can receive the list of available locations with their <code>location_name</code> by making a separate request to the<br><code>https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages</code><br>example:<br><code class=\"long-string\">United Kingdom</code>",
        +        "type": "string"
        +      },
        +      "offset": {
        +        "description": "<em>offset in the results array of returned keywords</em><br>optional field<br>default value: <code>0</code><br>if you specify the <code>10</code> value, the first ten keywords in the results array will be omitted and the data will be provided for the successive keywords<br><strong>Note:</strong> we recommend using this parameter only when retrieving up to 10,000 results<br>for retrieving over 10,000 results, use the <code>offset_token</code> instead.",
        +        "type": [
        +          "integer",
        +          "null"
        +        ]
        +      },
        +      "offset_token": {
        +        "description": "<em>offset token for subsequent requests</em><br>optional field<br>provided in the identical filed of the response to each request;<br>use this parameter to avoid timeouts while trying to obtain over 10,000 results in a single request;<br>by specifying the unique <code>offset_token</code> value from the response array, you will get the subsequent results of the initial task;<br><code>offset_token</code> values are unique for each subsequent task<br><strong>Note:</strong> if the <code>offset_token</code> is specified in the request, all other parameters except <code>limit</code> will not be taken into account when processing a task.<br>learn more about this parameter on our <a href=\"https://dataforseo.com/help-center/what-is-the-difference-between-the-offset-and-offset_token-parameters#offset_token\" target=\"_blank\">Help Center</a>",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "order_by": {
        +        "description": "<em>results sorting rules</em><br>optional field<br>you can use the same values as in the <code>filters</code> array to sort the results<br>possible sorting types:<br><code>asc</code> - results will be sorted in the ascending order<br><code>desc</code> - results will be sorted in the descending order<br>you should use a comma to set up a sorting type<br>example:<br><code>[\"keyword_info.competition,desc\"]</code><br>default rule:<br><code>[\"keyword_info.search_volume,desc\"]</code><br><strong>note that you can set no more than three sorting rules in a single request</strong><br>you should use a comma to separate several sorting rules<br>example:<br><code>[\"keyword_info.search_volume,desc\",\"keyword_info.competition,asc\"]</code>",
        +        "items": {
        +          "type": "string"
        +        },
        +        "type": [
        +          "array",
        +          "null"
        +        ]
        +      },
        +      "tag": {
        +        "description": "<em>user-defined task identifier</em><br>optional field<br><em>the character limit is 255</em><br>you can use this parameter to identify the task and match it with the result<br>you will find the specified <code>tag</code> value in the <code>data</code> object of the response",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      }
        +    },
        +    "type": "object"
        +  }
        +]
      • removedInput schema / properties / body / items / properties
        Removed value: -{
        -  "category_codes": {
        -    "description": "product and service categories required field The maximum number of categories you can specify: 20 you can download the full list of possible categories",
        -    "items": {
        -      "type": "integer"
        -    },
        -    "type": "array"
        -  },
        -  "category_intersection": {
        -    "description": "category intersections optional field if set to true, you will get keywords featured in all specified categories; if set to false, you will keywords that are specified in any of the specified categories; default value: true",
        -    "type": "boolean"
        -  },
        -  "filters": {
        -    "description": "array of results filtering parameters optional field you can add several filters at once (8 filters maximum) you should set a logical operator and, or between the conditions the following operators are supported: regex, not_regex, <, <=, >, >=, =, <>, in, not_in, match, not_match, ilike, not_ilike, like, not_like you can use the % operator with like and not_like,as well as ilike, not_ilike to match any string of zero or more characters example: [\"keyword_info.search_volume\",\">\",0] [[\"keyword_info.search_volume\",\"in\",[0,1000]], \"and\", [\"keyword_info.competition_level\",\"=\",\"LOW\"]] [[\"keyword_info.search_volume\",\">\",100], \"and\", [[\"keyword_info.cpc\",\"<\",0.5], \"or\", [\"keyword_info.high_top_of_page_bid\",\"<=\",0.5]]] for more information about filters, please refer to Dataforseo Labs - Filters or this help center guide",
        -    "items": {},
        -    "type": "array"
        -  },
        -  "ignore_synonyms": {
        -    "description": "ignore highly similar keywords optional field if set to true only core keywords will be returned, all highly similar keywords will be excluded; default value: false",
        -    "type": "boolean"
        -  },
        -  "include_clickstream_data": {
        -    "description": "include or exclude data from clickstream-based metrics in the result optional field if the parameter is set to true, you will receive clickstream_keyword_info, keyword_info_normalized_with_clickstream, and keyword_info_normalized_with_bing fields in the response default value: false with this parameter enabled, you will be charged double the price for the request learn more about how clickstream-based metrics are calculated in this help center article",
        -    "type": "boolean"
        -  },
        -  "include_serp_info": {
        -    "description": "include data from SERP for each keyword optional field if set to true, we will return a serp_info array containing SERP data (number of search results, relevant URL, and SERP features) for every keyword in the response default value: false",
        -    "type": "boolean"
        -  },
        -  "language_code": {
        -    "description": "unique language identifier required field if you don’t specify language_name Note: it is required to specify either language_name or language_code you can receive the list of available languages with their language_code by making a separate request to the https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages example: en",
        -    "type": "string"
        -  },
        -  "language_name": {
        -    "description": "full name of the language required field if you don’t specify language_code Note: it is required to specify either language_name or language_code you can receive the list of available languages with their language_name by making a separate request to the https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages example: English",
        -    "type": "string"
        -  },
        -  "limit": {
        -    "description": "the maximum number of keywords in the results array optional field default value: 100 maximum value: 1000",
        -    "type": "integer"
        -  },
        -  "location_code": {
        -    "description": "unique location identifier required field if you don’t specify location_name Note: it is required to specify either location_name or location_code you can receive the list of available locations with their location_code by making a separate request to the https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages example: 2840",
        -    "type": "integer"
        -  },
        -  "location_name": {
        -    "description": "full name of the location required field if you don’t specify location_code Note: it is required to specify either location_name or location_code you can receive the list of available locations with their location_name by making a separate request to the https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages example: United Kingdom",
        -    "type": "string"
        -  },
        -  "offset": {
        -    "description": "offset in the results array of returned keywords optional field default value: 0 if you specify the 10 value, the first ten keywords in the results array will be omitted and the data will be provided for the successive keywords Note: we recommend using this parameter only when retrieving up to 10,000 results for retrieving over 10,000 results, use the offset_token instead.",
        -    "type": "integer"
        -  },
        -  "offset_token": {
        -    "description": "offset token for subsequent requests optional field provided in the identical filed of the response to each request; use this parameter to avoid timeouts while trying to obtain over 10,000 results in a single request; by specifying the unique offset_token value from the response array, you will get the subsequent results of the initial task; offset_token values are unique for each subsequent task Note: if the offset_token is specified in the request, all other parameters except limit will not be taken into account when processing a task. learn more about this parameter on our Help Center",
        -    "type": "string"
        -  },
        -  "order_by": {
        -    "description": "results sorting rules optional field you can use the same values as in the filters array to sort the results possible sorting types: asc – results will be sorted in the ascending order desc – results will be sorted in the descending order you should use a comma to set up a sorting type example: [\"keyword_info.competition,desc\"] default rule: [\"keyword_info.search_volume,desc\"] note that you can set no more than three sorting rules in a single request you should use a comma to separate several sorting rules example: [\"keyword_info.search_volume,desc\",\"keyword_info.competition,asc\"]",
        -    "items": {
        -      "type": "string"
        -    },
        -    "type": "array"
        -  },
        -  "tag": {
        -    "description": "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",
        -    "type": "string"
        -  }
        -}
      • changedInput schema / properties / body / items / type
        Previous value: -"object"New value: +[
        +  "object",
        +  "null"
        +]
      • changedInput schema / required
        Previous value: -[
        -  "body"
        -]New value: +[]
      • addedOutput schema / x-fastmcp-wrap-result
        Added value: +true
    • Changedpost_dataforseo_labs_google_related_keywords_live8 fields changed
      • addedInput schema / properties / body / example
        Added value: +[
        +  {
        +    "keyword": "phone",
        +    "language_name": "English",
        +    "limit": 3,
        +    "location_code": 2840
        +  }
        +]
      • removedInput schema / properties / body / items / allOf
        Removed value: -[
        -  {
        -    "anyOf": [
        -      {
        -        "required": [
        -          "location_name"
        -        ]
        -      },
        -      {
        -        "required": [
        -          "location_code"
        -        ]
        -      }
        -    ]
        -  },
        -  {
        -    "anyOf": [
        -      {
        -        "required": [
        -          "language_name"
        -        ]
        -      },
        -      {
        -        "required": [
        -          "language_code"
        -        ]
        -      }
        -    ]
        -  }
        -]
      • addedInput schema / properties / body / items / anyOf
        Added value: +[
        +  {
        +    "example": [
        +      {
        +        "keyword": "phone",
        +        "language_name": "English",
        +        "limit": 3,
        +        "location_code": 2840
        +      }
        +    ],
        +    "properties": {
        +      "depth": {
        +        "description": "<em>keyword search depth</em><br>optional field<br>default value: <code>1</code><p>number of the returned results depends on the value you set in this field<br>you can specify a level from 0 to 4<br>estimated number of keywords for each level (maximum):<br>0 - the keyword set in the <code>keyword</code> field<br>1 – 8 keywords<br>2 – 72 keywords<br>3 – 584 keywords<br>4 – 4680 keywords",
        +        "type": [
        +          "integer",
        +          "null"
        +        ]
        +      },
        +      "filters": {
        +        "description": "<em>array of results filtering parameters</em><br>optional field<br><strong>you can add several filters at once (8 filters maximum)</strong><br>you should set a logical operator <code>and</code>, <code>or</code> between the conditions<br>the following operators are supported:<br><code>regex</code>, <code>not_regex</code>, <code>&lt;</code>, <code>&lt;=</code>, <code>&gt;</code>, <code>&gt;=</code>, <code>=</code>, <code>&lt;&gt;</code>, <code>in</code>, <code>not_in</code>, <code>match</code>, <code>not_match</code>, <code>ilike</code>, <code>not_ilike</code>, <code>like</code>,<code>not_like</code><br>you can use the <code>%</code> operator with <code>like</code> and <code>not_like</code>, as well as <code>ilike</code> and <code>not_ilike</code> to match any string of zero or more characters<br>example:<br><code>[\"keyword_data.keyword_info.search_volume\",\"&gt;\",0]</code><p><code>[[\"keyword_info.search_volume\",\"in\",[0,1000]],<br>\"and\",<br>[\"keyword_data.keyword_info.competition_level\",\"=\",\"LOW\"]]</code><p><code>[[\"keyword_data.keyword_info.search_volume\",\"&gt;\",100],<br>\"and\",<br>[[\"keyword_data.keyword_info.cpc\",\"&lt;\",0.5],<br>\"or\",<p>[\"keyword_info.high_top_of_page_bid\",\"&lt;=\",0.5]]]</code><br>for more information about filters, please refer to <a href=\"/v3/dataforseo_labs/filters\" target=\"_blank\" rel=\"noopener noreferrer\">Dataforseo Labs - Filters</a> or this <a href=\"https://dataforseo.com/help-center/how-to-use-filters-in-dataforseo-labs-api\" rel=\"noopener noreferrer\" target=\"_blank\">help center guide</a>",
        +        "items": {
        +          "type": [
        +            "object",
        +            "null"
        +          ]
        +        },
        +        "type": [
        +          "array",
        +          "null"
        +        ]
        +      },
        +      "ignore_synonyms": {
        +        "description": "",
        +        "type": [
        +          "boolean",
        +          "null"
        +        ]
        +      },
        +      "include_clickstream_data": {
        +        "description": "",
        +        "type": [
        +          "boolean",
        +          "null"
        +        ]
        +      },
        +      "include_seed_keyword": {
        +        "description": "<em>include data for the seed keyword</em><br>optional field<br>if set to <code>true</code>, data for the seed keyword specified in the <code>keyword</code> field will be provided in the <code>seed_keyword_data</code> array of the response<br>default value: <code>false</code>",
        +        "type": [
        +          "boolean",
        +          "null"
        +        ]
        +      },
        +      "include_serp_info": {
        +        "description": "<em>include data from SERP for each keyword</em><br>optional field<br>if set to <code>true</code>, we will return a <code>serp_info</code> array containing SERP data (number of search results, relevant URL, and SERP features) for every keyword in the response<br>default value: <code>false</code>",
        +        "type": [
        +          "boolean",
        +          "null"
        +        ]
        +      },
        +      "keyword": {
        +        "description": "<em>keyword</em><br><strong>required field</strong><br>UTF-8 encoding<br>the keywords will be converted to lowercase format<p>learn more about rules and limitations of <code>keyword</code> and <code>keywords</code> fields in DataForSEO APIs in this <a href=\"https://dataforseo.com/help-center/rules-and-limitations-of-keyword-and-keywords-fields-in-dataforseo-apis\" rel=\"noopener noreferrer\" target=\"_blank\">Help Center article</a>",
        +        "type": "string"
        +      },
        +      "language_code": {
        +        "description": "<em>language code</em><br><strong>required field if you don't specify</strong> <code>language_name</code><br><strong>Note:</strong> it is required to specify either <code>language_name</code> or <code>language_code</code><br>you can receive the list of available locations with their <code>language_code</code> by making a separate request to the <br><code>https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages</code><br>example:<br><code class=\"long-string\">en</code>",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "language_name": {
        +        "description": "<em>full name of the language</em><br><strong>required field if you don't specify</strong> <code>language_code</code><br><strong>Note:</strong> it is required to specify either <code>language_name</code> or <code>language_code</code><br>you can receive the list of available locations with their <code>language_name</code> by making a separate request to the <br><code>https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages</code><br>example:<br><code class=\"long-string\">English</code>",
        +        "type": "string"
        +      },
        +      "limit": {
        +        "description": "<em>the maximum number of returned keywords</em><br>optional field<br>default value: <code>100</code><br>maximum value: <code>1000</code>",
        +        "type": [
        +          "integer",
        +          "null"
        +        ]
        +      },
        +      "location_code": {
        +        "description": "<em>location code</em><br><strong>required field if you don't specify</strong> <code>location_name</code><br><strong>Note:</strong> it is required to specify either <code>location_name</code> or <code>location_code</code><br>you can receive the list of available locations with their <code>location_code</code> by making a separate request to the <br><code>https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages</code><br>example:<br><code class=\"long-string\">2840</code>",
        +        "type": "integer"
        +      },
        +      "location_name": {
        +        "description": "<em>full name of the location</em><br><strong>required field if you don't specify</strong> <code>location_code</code><br><strong>Note:</strong> it is required to specify either <code>location_name</code> or <code>location_code</code><br>you can receive the list of available locations with their <code>location_name</code> by making a separate request to the <br><code>https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages</code><br>example:<br><code class=\"long-string\">United Kingdom</code>",
        +        "type": "string"
        +      },
        +      "offset": {
        +        "description": "<em>offset in the results array of returned keywords</em><br>optional field<br>default value: <code>0</code><br>if you specify the <code>10</code> value, the first ten keywords in the results array will be omitted and the data will be provided for the successive keywords",
        +        "type": [
        +          "integer",
        +          "null"
        +        ]
        +      },
        +      "order_by": {
        +        "description": "<em>results sorting rules</em><br>optional field<br>you can use the same values as in the <code>filters</code> array to sort the results<br>possible sorting types:<br><code>asc</code> - results will be sorted in the ascending order<br><code>desc</code> - results will be sorted in the descending order<br>you should use a comma to set up a sorting type<br>example:<br><code>[\"keyword_data.keyword_info.competition,desc\"]</code><br>default rule:<br><code>[\"keyword_data.keyword_info.search_volume,desc\"]</code><br><strong>note that you can set no more than three sorting rules in a single request</strong><br>you should use a comma to separate several sorting rules<br>example:<br><code>[\"keyword_data.keyword_info.search_volume,desc\",\"keyword_data.keyword_info.cpc,desc\"]</code>",
        +        "items": {
        +          "type": "string"
        +        },
        +        "type": [
        +          "array",
        +          "null"
        +        ]
        +      },
        +      "replace_with_core_keyword": {
        +        "description": "<em>return data for core keyword</em><br>optional field<br>if <code>true</code>, <code>serp_info</code> and <code>related_keywords</code> will be returned for the main keyword in the group that the specified <code>keyword</code> belongs to;<br>if <code>false</code>, <code>serp_info</code> and <code>related_keywords</code> will be returned for the specified <code>keyword</code> (if available);<br>refer to <a href=\"https://dataforseo.com/help-center/replace_with_core_keyword\" rel=\"noopener noreferrer\" target=\"_blank\">this help center article</a> for more details;<br>default value: <code>false</code>",
        +        "type": [
        +          "boolean",
        +          "null"
        +        ]
        +      },
        +      "tag": {
        +        "description": "<em>user-defined task identifier</em><br>optional field<br><em>the character limit is 255</em><br>you can use this parameter to identify the task and match it with the result<br>you will find the specified <code>tag</code> value in the <code>data</code> object of the response",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      }
        +    },
        +    "type": "object"
        +  }
        +]
      • removedInput schema / properties / body / items / properties
        Removed value: -{
        -  "depth": {
        -    "description": "keyword search depth optional field default value: 1 number of the returned results depends on the value you set in this field you can specify a level from 0 to 4 estimated number of keywords for each level (maximum): 0 – the keyword set in the keyword field 1 – 8 keywords 2 – 72 keywords 3 – 584 keywords 4 – 4680 keywords",
        -    "type": "integer"
        -  },
        -  "filters": {
        -    "description": "array of results filtering parameters optional field you can add several filters at once (8 filters maximum) you should set a logical operator and, or between the conditions the following operators are supported: regex, not_regex, <, <=, >, >=, =, <>, in, not_in, match, not_match, ilike, not_ilike, like,not_like you can use the % operator with like and not_like, as well as ilike and not_ilike to match any string of zero or more characters example: [\"keyword_data.keyword_info.search_volume\",\">\",0] [[\"keyword_info.search_volume\",\"in\",[0,1000]], \"and\", [\"keyword_data.keyword_info.competition_level\",\"=\",\"LOW\"]] [[\"keyword_data.keyword_info.search_volume\",\">\",100], \"and\", [[\"keyword_data.keyword_info.cpc\",\"<\",0.5], \"or\", [\"keyword_info.high_top_of_page_bid\",\"<=\",0.5]]] for more information about filters, please refer to Dataforseo Labs - Filters or this help center guide",
        -    "items": {},
        -    "type": "array"
        -  },
        -  "ignore_synonyms": {
        -    "description": "ignore highly similar keywords optional field if set to true only core keywords will be returned, all highly similar keywords will be excluded; default value: false",
        -    "type": "boolean"
        -  },
        -  "include_clickstream_data": {
        -    "description": "include or exclude data from clickstream-based metrics in the result optional field if the parameter is set to true, you will receive clickstream_keyword_info, keyword_info_normalized_with_clickstream, and keyword_info_normalized_with_bing fields in the response default value: false with this parameter enabled, you will be charged double the price for the request learn more about how clickstream-based metrics are calculated in this help center article",
        -    "type": "boolean"
        -  },
        -  "include_seed_keyword": {
        -    "description": "include data for the seed keyword optional field if set to true, data for the seed keyword specified in the keyword field will be provided in the seed_keyword_data array of the response default value: false",
        -    "type": "boolean"
        -  },
        -  "include_serp_info": {
        -    "description": "include data from SERP for each keyword optional field if set to true, we will return a serp_info array containing SERP data (number of search results, relevant URL, and SERP features) for every keyword in the response default value: false",
        -    "type": "boolean"
        -  },
        -  "keyword": {
        -    "description": "keyword required field UTF-8 encoding the keywords will be converted to lowercase format learn more about rules and limitations of keyword and keywords fields in DataForSEO APIs in this Help Center article",
        -    "type": "string"
        -  },
        -  "language_code": {
        -    "description": "language code required field if you don’t specify language_name Note: it is required to specify either language_name or language_code you can receive the list of available locations with their language_code by making a separate request to the https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages example: en",
        -    "type": "string"
        -  },
        -  "language_name": {
        -    "description": "full name of the language required field if you don’t specify language_code Note: it is required to specify either language_name or language_code you can receive the list of available locations with their language_name by making a separate request to the https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages example: English",
        -    "type": "string"
        -  },
        -  "limit": {
        -    "description": "the maximum number of returned keywords optional field default value: 100 maximum value: 1000",
        -    "type": "integer"
        -  },
        -  "location_code": {
        -    "description": "location code required field if you don’t specify location_name Note: it is required to specify either location_name or location_code you can receive the list of available locations with their location_code by making a separate request to the https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages example: 2840",
        -    "type": "integer"
        -  },
        -  "location_name": {
        -    "description": "full name of the location required field if you don’t specify location_code Note: it is required to specify either location_name or location_code you can receive the list of available locations with their location_name by making a separate request to the https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages example: United Kingdom",
        -    "type": "string"
        -  },
        -  "offset": {
        -    "description": "offset in the results array of returned keywords optional field default value: 0 if you specify the 10 value, the first ten keywords in the results array will be omitted and the data will be provided for the successive keywords",
        -    "type": "integer"
        -  },
        -  "order_by": {
        -    "description": "results sorting rules optional field you can use the same values as in the filters array to sort the results possible sorting types: asc – results will be sorted in the ascending order desc – results will be sorted in the descending order you should use a comma to set up a sorting type example: [\"keyword_data.keyword_info.competition,desc\"] default rule: [\"keyword_data.keyword_info.search_volume,desc\"] note that you can set no more than three sorting rules in a single request you should use a comma to separate several sorting rules example: [\"keyword_data.keyword_info.search_volume,desc\",\"keyword_data.keyword_info.cpc,desc\"]",
        -    "items": {
        -      "type": "string"
        -    },
        -    "type": "array"
        -  },
        -  "replace_with_core_keyword": {
        -    "description": "return data for core keyword optional field if true, serp_info and related_keywords will be returned for the main keyword in the group that the specified keyword belongs to; if false, serp_info and related_keywords will be returned for the specified keyword (if available); refer to this help center article for more details; default value: false",
        -    "type": "boolean"
        -  },
        -  "tag": {
        -    "description": "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",
        -    "type": "string"
        -  }
        -}
      • removedInput schema / properties / body / items / required
        Removed value: -[
        -  "keyword"
        -]
      • changedInput schema / properties / body / items / type
        Previous value: -"object"New value: +[
        +  "object",
        +  "null"
        +]
      • changedInput schema / required
        Previous value: -[
        -  "body"
        -]New value: +[]
      • addedOutput schema / x-fastmcp-wrap-result
        Added value: +true
    • Changedpost_dataforseo_labs_google_search_intent_live8 fields changed
      • addedInput schema / properties / body / example
        Added value: +[
        +  {
        +    "keywords": [
        +      "login page",
        +      "audi a7",
        +      "elon musk",
        +      "milk store new york"
        +    ]
        +  }
        +]
      • removedInput schema / properties / body / items / allOf
        Removed value: -[
        -  {
        -    "anyOf": [
        -      {
        -        "required": [
        -          "language_name"
        -        ]
        -      },
        -      {
        -        "required": [
        -          "language_code"
        -        ]
        -      }
        -    ]
        -  }
        -]
      • addedInput schema / properties / body / items / anyOf
        Added value: +[
        +  {
        +    "example": [
        +      {
        +        "keywords": [
        +          "login page",
        +          "audi a7",
        +          "elon musk",
        +          "milk store new york"
        +        ]
        +      }
        +    ],
        +    "properties": {
        +      "keywords": {
        +        "description": "<em>target keywords</em><br><strong>required field</strong><br>UTF-8 encoding<br>maximum number of keywords you can specify in this array: 1000;<br>the keywords will be converted to lowercase format<p>learn more about rules and limitations of <code>keyword</code> and <code>keywords</code> fields in DataForSEO APIs in this <a href=\"https://dataforseo.com/help-center/rules-and-limitations-of-keyword-and-keywords-fields-in-dataforseo-apis\" rel=\"noopener noreferrer\" target=\"_blank\">Help Center article</a>",
        +        "items": {
        +          "type": "string"
        +        },
        +        "type": "array"
        +      },
        +      "tag": {
        +        "description": "<em>user-defined task identifier</em><br>optional field<br><em>the character limit is 255</em><br>you can use this parameter to identify the task and match it with the result<br>you will find the specified <code>tag</code> value in the <code>data</code> object of the response",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      }
        +    },
        +    "type": "object"
        +  }
        +]
      • removedInput schema / properties / body / items / properties
        Removed value: -{
        -  "keywords": {
        -    "description": "target keywords required field UTF-8 encoding maximum number of keywords you can specify in this array: 1000; the keywords will be converted to lowercase format learn more about rules and limitations of keyword and keywords fields in DataForSEO APIs in this Help Center article",
        -    "items": {
        -      "type": "string"
        -    },
        -    "type": "array"
        -  },
        -  "language_code": {
        -    "description": "language code required field if don’t specify language_name you can receive the list of available languages with their language_code by making a separate request to https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages Note: this endpoint currently supports these languages only; example: en",
        -    "type": "string"
        -  },
        -  "language_name": {
        -    "description": "full name of the language required field if don’t specify language_code you can receive the list of available languages with their language_name by making a separate request to https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages Note: this endpoint currently supports the following languages only: Arabic, ar, Chinese(Traditional), zh-TW, Czech, cs, Danish, da, Dutch, nl, English, en, Finnish, fi, French, fr, German, de, Hebrew, he, Hindi, hi, Italian, it, Japanese, ja, Korean, ko, Malay, ms, Norwegian(Bokmål), nb, Polish, pl, Portuguese, pt, Romanian, ro, Russian, ru, Spanish, es, Swedish, sv, Thai, th, Ukrainian, uk, Vietnamese, vi, Bulgarian, bg, Croatian, hr, Serbian, sr, Slovenian, sl, Bosnian, bs, Greek, el, Hungarian, hu, Slovak, sk, Turkish, tr example: English",
        -    "type": "string"
        -  },
        -  "tag": {
        -    "description": "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",
        -    "type": "string"
        -  }
        -}
      • removedInput schema / properties / body / items / required
        Removed value: -[
        -  "keywords"
        -]
      • changedInput schema / properties / body / items / type
        Previous value: -"object"New value: +[
        +  "object",
        +  "null"
        +]
      • changedInput schema / required
        Previous value: -[
        -  "body"
        -]New value: +[]
      • addedOutput schema / x-fastmcp-wrap-result
        Added value: +true
    • Changedpost_dataforseo_labs_google_top_searches_live6 fields changed
      • addedInput schema / properties / body / example
        Added value: +[
        +  {
        +    "language_name": "English",
        +    "limit": 3,
        +    "location_code": 2840
        +  }
        +]
      • changedInput schema / properties / body / items / anyOf
        Previous value: -[
        -  {
        -    "allOf": [
        -      {
        -        "anyOf": [
        -          {
        -            "required": [
        -              "location_name"
        -            ]
        -          },
        -          {
        -            "required": [
        -              "location_code"
        -            ]
        -          }
        -        ]
        -      },
        -      {
        -        "anyOf": [
        -          {
        -            "required": [
        -              "language_name"
        -            ]
        -          },
        -          {
        -            "required": [
        -              "language_code"
        -            ]
        -          }
        -        ]
        -      }
        -    ]
        -  },
        -  {
        -    "required": [
        -      "offset_token"
        -    ]
        -  }
        -]New value: +[
        +  {
        +    "example": [
        +      {
        +        "language_name": "English",
        +        "limit": 3,
        +        "location_code": 2840
        +      }
        +    ],
        +    "properties": {
        +      "filters": {
        +        "description": "<em>array of results filtering parameters</em><br>optional field<br><strong>you can add several filters at once (8 filters maximum)</strong><br>you should set a logical operator <code>and</code>, <code>or</code> between the conditions<br>the following operators are supported:<br><code>regex</code>, <code>not_regex</code>, <code>&lt;</code>, <code>&lt;=</code>, <code>&gt;</code>, <code>&gt;=</code>, <code>=</code>, <code>&lt;&gt;</code>, <code>in</code>, <code>not_in</code>, <code>match</code>, <code>not_match</code>, <code>ilike</code>, <code>not_ilike</code>, <code>like</code>,<code>not_like</code><br>you can use the <code>%</code> operator with <code>like</code> and <code>not_like</code>,as well as <code>ilike</code> and <code>not_ilike</code> to match any string of zero or more characters<br>example:<br><code>[\"keyword_info.search_volume\",\"&gt;\",0]</code><p><code>[[\"keyword_info.search_volume\",\"in\",[0,1000]],<br>\"and\",<br>[\"keyword_info.competition_level\",\"=\",\"LOW\"]]</code><p><code>[[\"keyword_info.search_volume\",\"&gt;\",100],<br>\"and\",<br>[[\"keyword_info.cpc\",\"&lt;\",0.5],<br>\"or\",<p>[\"keyword_info.high_top_of_page_bid\",\"&lt;=\",0.5]]]</code><br>for more information about filters, please refer to <a href=\"/v3/dataforseo_labs/filters\" target=\"_blank\" rel=\"noopener noreferrer\">Dataforseo Labs - Filters</a> or this <a href=\"https://dataforseo.com/help-center/how-to-use-filters-in-dataforseo-labs-api\" rel=\"noopener noreferrer\" target=\"_blank\">help center guide</a>",
        +        "items": {
        +          "type": [
        +            "object",
        +            "null"
        +          ]
        +        },
        +        "type": [
        +          "array",
        +          "null"
        +        ]
        +      },
        +      "ignore_synonyms": {
        +        "description": "<em>ignore highly similar keywords</em><br>optional field<br>if set to <code class=\"prettyprint\">true</code> only core keywords will be returned, all highly similar keywords will be excluded;  <br>default value: <code>false</code>",
        +        "type": [
        +          "boolean",
        +          "null"
        +        ]
        +      },
        +      "include_clickstream_data": {
        +        "description": "<em>include or exclude data from clickstream-based metrics in the result</em><br>optional field<br>if the parameter is set to <code>true</code>, you will receive <code>clickstream_keyword_info</code>, <code>keyword_info_normalized_with_clickstream</code>, and <code>keyword_info_normalized_with_bing</code> fields in the response<br>default value: <code>false</code><br>with this parameter enabled, you will be charged double the price for the request<p>learn more about how clickstream-based metrics are calculated in this <a href=\"https://dataforseo.com/help-center/what-are-clickstream-based-metrics-and-how-do-we-calculate-them\" rel=\"noopener noreferrer\" target=\"_blank\">help center article</a>",
        +        "type": [
        +          "boolean",
        +          "null"
        +        ]
        +      },
        +      "include_serp_info": {
        +        "description": "<em>include data from SERP for each keyword</em><br>optional field<br>if set to <code>true</code>, we will return a <code>serp_info</code> array containing SERP data (number of search results, relevant URL, and SERP features) for every keyword in the response<br>default value: <code>false</code>",
        +        "type": [
        +          "boolean",
        +          "null"
        +        ]
        +      },
        +      "language_code": {
        +        "description": "<em>language code</em><br><strong>required field if you don't specify</strong> <code>language_name</code><br><strong>Note:</strong> it is required to specify either <code>language_name</code> or <code>language_code</code><br>you can receive the list of available locations with their <code>language_code</code> by making a separate request to the <br><code>https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages</code><br>example:<br><code class=\"long-string\">en</code>",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "language_name": {
        +        "description": "<em>full name of the language</em><br><strong>required field if you don't specify</strong> <code>language_code</code><br><strong>Note:</strong> it is required to specify either <code>language_name</code> or <code>language_code</code><br>you can receive the list of available locations with their <code>language_name</code> by making a separate request to the <br><code>https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages</code><br>example:<br><code class=\"long-string\">English</code>",
        +        "type": "string"
        +      },
        +      "limit": {
        +        "description": "<em>the maximum number of returned keywords</em><br>optional field<br></strong>note:</strong> you can get more than 1000 results by using the <code>offset_token</code> provided in the response to each subsequent request<br>default value: <code>1000</code><br>maximum value: <code>1000</code>",
        +        "type": [
        +          "integer",
        +          "null"
        +        ]
        +      },
        +      "location_code": {
        +        "description": "<em>location code</em><br><strong>required field if you don't specify</strong> <code>location_name</code><br><strong>Note:</strong> it is required to specify either <code>location_name</code> or <code>location_code</code><br>you can receive the list of available locations with their <code>location_code</code> by making a separate request to the <br><code>https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages</code><br>example:<br><code class=\"long-string\">2840</code>",
        +        "type": "integer"
        +      },
        +      "location_name": {
        +        "description": "<em>full name of the location</em><br><strong>required field if you don't specify</strong> <code>location_code</code><br><strong>Note:</strong> it is required to specify either <code>location_name</code> or <code>location_code</code><br>you can receive the list of available locations with their <code>location_name</code> by making a separate request to the <br><code>https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages</code><br>example:<br><code class=\"long-string\">United Kingdom</code>",
        +        "type": "string"
        +      },
        +      "offset": {
        +        "description": "<em>offset in the results array of returned keywords</em><br>optional field<br>default value: <code>0</code><br>if you specify the <code>10</code> value, the first ten keywords in the results array will be omitted and the data will be provided for the successive keywords<br><strong>Note:</strong> we recommend using this parameter only when retrieving up to 10,000 results<br>for retrieving over 10,000 results, use the <code>offset_token</code> instead.",
        +        "type": [
        +          "integer",
        +          "null"
        +        ]
        +      },
        +      "offset_token": {
        +        "description": "<em>offset token for subsequent requests</em><br>optional field<br>provided in the identical filed of the response to each request;<br>use this parameter to avoid timeouts while trying to obtain over 10,000 results in a single request;<br>by specifying the unique <code>offset_token</code> value from the response array, you will get the subsequent results of the initial task;<br><code>offset_token</code> values are unique for each subsequent task <br><strong>Note:</strong> if the <code>offset_token</code> is specified in the request, all other parameters except <code>limit</code> will not be taken into account when processing a task.<br>learn more about this parameter on our <a href=\"https://dataforseo.com/help-center/what-is-the-difference-between-the-offset-and-offset_token-parameters#offset_token\" target=\"_blank\">Help Center</a>",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "order_by": {
        +        "description": "<em>results sorting rules</em><br>optional field<br>you can use the same values as in the <code>filters</code> array to sort the results<br>possible sorting types:<br><code>asc</code> - results will be sorted in the ascending order<br><code>desc</code> - results will be sorted in the descending order<br>you should use a comma to set up a sorting type<br>example:<br><code>[\"keyword_info.competition,desc\"]</code><br>default rule:<br><code>[\"keyword_info.search_volume,desc\"]</code><br><strong>note that you can set no more than three sorting rules in a single request</strong><br>you should use a comma to separate several sorting rules<br>example:<br><code>[\"keyword_info.search_volume,desc\",\"keyword_info.cpc,desc\"]</code>",
        +        "items": {
        +          "type": "string"
        +        },
        +        "type": [
        +          "array",
        +          "null"
        +        ]
        +      },
        +      "tag": {
        +        "description": "<em>user-defined task identifier</em><br>optional field<br><em>the character limit is 255</em><br>you can use this parameter to identify the task and match it with the result<br>you will find the specified <code>tag</code> value in the <code>data</code> object of the response",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      }
        +    },
        +    "type": "object"
        +  }
        +]
      • removedInput schema / properties / body / items / properties
        Removed value: -{
        -  "filters": {
        -    "description": "array of results filtering parameters optional field you can add several filters at once (8 filters maximum) you should set a logical operator and, or between the conditions the following operators are supported: regex, not_regex, <, <=, >, >=, =, <>, in, not_in, match, not_match, ilike, not_ilike, like,not_like you can use the % operator with like and not_like,as well as ilike and not_ilike to match any string of zero or more characters example: [\"keyword_info.search_volume\",\">\",0] [[\"keyword_info.search_volume\",\"in\",[0,1000]], \"and\", [\"keyword_info.competition_level\",\"=\",\"LOW\"]] [[\"keyword_info.search_volume\",\">\",100], \"and\", [[\"keyword_info.cpc\",\"<\",0.5], \"or\", [\"keyword_info.high_top_of_page_bid\",\"<=\",0.5]]] for more information about filters, please refer to Dataforseo Labs - Filters or this help center guide",
        -    "items": {},
        -    "type": "array"
        -  },
        -  "ignore_synonyms": {
        -    "description": "ignore highly similar keywords optional field if set to true only core keywords will be returned, all highly similar keywords will be excluded; default value: false",
        -    "type": "boolean"
        -  },
        -  "include_clickstream_data": {
        -    "description": "include or exclude data from clickstream-based metrics in the result optional field if the parameter is set to true, you will receive clickstream_keyword_info, keyword_info_normalized_with_clickstream, and keyword_info_normalized_with_bing fields in the response default value: false with this parameter enabled, you will be charged double the price for the request learn more about how clickstream-based metrics are calculated in this help center article",
        -    "type": "boolean"
        -  },
        -  "include_serp_info": {
        -    "description": "include data from SERP for each keyword optional field if set to true, we will return a serp_info array containing SERP data (number of search results, relevant URL, and SERP features) for every keyword in the response default value: false",
        -    "type": "boolean"
        -  },
        -  "language_code": {
        -    "description": "language code required field if you don’t specify language_name Note: it is required to specify either language_name or language_code you can receive the list of available locations with their language_code by making a separate request to the https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages example: en",
        -    "type": "string"
        -  },
        -  "language_name": {
        -    "description": "full name of the language required field if you don’t specify language_code Note: it is required to specify either language_name or language_code you can receive the list of available locations with their language_name by making a separate request to the https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages example: English",
        -    "type": "string"
        -  },
        -  "limit": {
        -    "description": "the maximum number of returned keywords optional field note: you can get more than 1000 results by using the offset_token provided in the response to each subsequent request default value: 1000 maximum value: 1000",
        -    "type": "integer"
        -  },
        -  "location_code": {
        -    "description": "location code required field if you don’t specify location_name Note: it is required to specify either location_name or location_code you can receive the list of available locations with their location_code by making a separate request to the https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages example: 2840",
        -    "type": "integer"
        -  },
        -  "location_name": {
        -    "description": "full name of the location required field if you don’t specify location_code Note: it is required to specify either location_name or location_code you can receive the list of available locations with their location_name by making a separate request to the https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages example: United Kingdom",
        -    "type": "string"
        -  },
        -  "offset": {
        -    "description": "offset in the results array of returned keywords optional field default value: 0 if you specify the 10 value, the first ten keywords in the results array will be omitted and the data will be provided for the successive keywords Note: we recommend using this parameter only when retrieving up to 10,000 results for retrieving over 10,000 results, use the offset_token instead.",
        -    "type": "integer"
        -  },
        -  "offset_token": {
        -    "description": "offset token for subsequent requests optional field provided in the identical filed of the response to each request; use this parameter to avoid timeouts while trying to obtain over 10,000 results in a single request; by specifying the unique offset_token value from the response array, you will get the subsequent results of the initial task; offset_token values are unique for each subsequent task Note: if the offset_token is specified in the request, all other parameters except limit will not be taken into account when processing a task. learn more about this parameter on our Help Center",
        -    "type": "string"
        -  },
        -  "order_by": {
        -    "description": "results sorting rules optional field you can use the same values as in the filters array to sort the results possible sorting types: asc – results will be sorted in the ascending order desc – results will be sorted in the descending order you should use a comma to set up a sorting type example: [\"keyword_info.competition,desc\"] default rule: [\"keyword_info.search_volume,desc\"] note that you can set no more than three sorting rules in a single request you should use a comma to separate several sorting rules example: [\"keyword_info.search_volume,desc\",\"keyword_info.cpc,desc\"]",
        -    "items": {
        -      "type": "string"
        -    },
        -    "type": "array"
        -  },
        -  "tag": {
        -    "description": "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",
        -    "type": "string"
        -  }
        -}
      • changedInput schema / properties / body / items / type
        Previous value: -"object"New value: +[
        +  "object",
        +  "null"
        +]
      • changedInput schema / required
        Previous value: -[
        -  "body"
        -]New value: +[]
      • addedOutput schema / x-fastmcp-wrap-result
        Added value: +true
    • Changedsearch17 fields changed
      • addedInput schema / $schema
        Added value: +"https://json-schema.org/draft/2020-12/schema"
      • removedInput schema / properties / category / anyOf
        Removed value: -[
        -  {
        -    "enum": [
        -      "seo",
        -      "finance",
        -      "social",
        -      "search",
        -      "sales",
        -      "mail"
        -    ],
        -    "type": "string"
        -  },
        -  {
        -    "type": "null"
        -  }
        -]
      • removedInput schema / properties / category / default
        Removed value: -null
      • changedInput schema / properties / category / description
        Previous value: -"Restrict to one category (seo, finance, social, search, sales, mail). Omit to search everything."New value: +"Restrict retrieval to one category. Omit to search everything. (AIsa-only: tool-router has no equivalent.)"
      • addedInput schema / properties / category / enum
        Added value: +[
        +  "seo",
        +  "finance",
        +  "social",
        +  "search",
        +  "sales",
        +  "mail"
        +]
      • addedInput schema / properties / category / type
        Added value: +"string"
      • addedInput schema / properties / known_fields
        Added value: +{
        +  "additionalProperties": true,
        +  "default": {},
        +  "description": "Known values such as ticker, URL, provider, or identifier that improve retrieval.",
        +  "type": "object"
        +}
      • changedInput schema / properties / limit / description
        Previous value: -"Maximum candidates, 1-10"New value: +"Maximum number of additional direct tool candidates."
      • addedInput schema / properties / limit / maximum
        Added value: +20
      • addedInput schema / properties / limit / minimum
        Added value: +1
      • addedInput schema / properties / provider_filters
        Added value: +{
        +  "default": [],
        +  "description": "Optional exact catalog provider keys used to narrow retrieval (for example similarweb). Do not use display brands. Omit this field if the exact key is unknown.",
        +  "items": {
        +    "type": "string"
        +  },
        +  "maxItems": 50,
        +  "type": "array",
        +  "uniqueItems": true
        +}
      • changedInput schema / properties / query / description
        Previous value: -"What you need, in plain language, e.g. 'backlinks of a domain', 'recent tweets by a user', 'insider trades for AAPL'. English works best."New value: +"Natural-language capability or task to discover."
      • addedInput schema / properties / query / maxLength
        Added value: +2000
      • addedInput schema / properties / query / minLength
        Added value: +1
      • addedInput schema / properties / session_id
        Added value: +{
        +  "description": "Reuse the session_id returned by Search in all subsequent tool calls for this task. If omitted, a new session is created.",
        +  "maxLength": 128,
        +  "pattern": "^[A-Za-z0-9_-]*$",
        +  "type": "string"
        +}
      • addedOutput schema / properties
        Added value: +{
        +  "next_steps_guidance": {
        +    "anyOf": [
        +      {
        +        "type": "null"
        +      },
        +      {
        +        "type": "array"
        +      }
        +    ],
        +    "items": {
        +      "type": "string"
        +    }
        +  },
        +  "plan": {
        +    "additionalProperties": false,
        +    "anyOf": [
        +      {
        +        "type": "null"
        +      },
        +      {
        +        "type": "object"
        +      }
        +    ],
        +    "properties": {
        +      "canonical_use_case": {
        +        "type": "string"
        +      },
        +      "description": {
        +        "type": "string"
        +      },
        +      "known_pitfalls": {
        +        "anyOf": [
        +          {
        +            "type": "null"
        +          },
        +          {
        +            "type": "array"
        +          }
        +        ],
        +        "items": {
        +          "type": "string"
        +        }
        +      },
        +      "plan_ref": {
        +        "type": "string"
        +      },
        +      "primary_tools": {
        +        "anyOf": [
        +          {
        +            "type": "null"
        +          },
        +          {
        +            "type": "array"
        +          }
        +        ],
        +        "items": {
        +          "type": "string"
        +        }
        +      },
        +      "recommended_steps": {
        +        "anyOf": [
        +          {
        +            "type": "null"
        +          },
        +          {
        +            "type": "array"
        +          }
        +        ],
        +        "items": {
        +          "type": "string"
        +        }
        +      },
        +      "related_tools": {
        +        "anyOf": [
        +          {
        +            "type": "null"
        +          },
        +          {
        +            "type": "array"
        +          }
        +        ],
        +        "items": {
        +          "type": "string"
        +        }
        +      }
        +    },
        +    "required": [
        +      "canonical_use_case",
        +      "description",
        +      "known_pitfalls",
        +      "plan_ref",
        +      "primary_tools",
        +      "recommended_steps",
        +      "related_tools"
        +    ]
        +  },
        +  "retrieval_mode": {
        +    "anyOf": [
        +      {
        +        "type": "null"
        +      },
        +      {
        +        "type": "string"
        +      }
        +    ]
        +  },
        +  "search_id": {
        +    "type": "string"
        +  },
        +  "session_id": {
        +    "description": "Reuse the session_id returned by Search in all subsequent tool calls for this task. If omitted, a new session is created.",
        +    "maxLength": 128,
        +    "minLength": 1,
        +    "pattern": "^[A-Za-z0-9_-]{1,128}$",
        +    "type": "string"
        +  },
        +  "tools": {
        +    "anyOf": [
        +      {
        +        "type": "null"
        +      },
        +      {
        +        "type": "array"
        +      }
        +    ],
        +    "items": {
        +      "additionalProperties": false,
        +      "properties": {
        +        "arguments_schema": {
        +          "additionalProperties": true,
        +          "anyOf": [
        +            {
        +              "type": "null"
        +            },
        +            {
        +              "type": "object"
        +            }
        +          ]
        +        },
        +        "description": {
        +          "type": "string"
        +        },
        +        "execution_supported": {
        +          "description": "Whether this router can execute and quote the operation; false retains documentation and discovery only.",
        +          "type": "boolean"
        +        },
        +        "execution_unsupported_reason": {
        +          "description": "Why execution and quoting remain unavailable through this router.",
        +          "type": "string"
        +        },
        +        "has_full_schema": {
        +          "type": "boolean"
        +        },
        +        "match_reasons": {
        +          "anyOf": [
        +            {
        +              "type": "null"
        +            },
        +            {
        +              "type": "array"
        +            }
        +          ],
        +          "items": {
        +            "type": "string"
        +          }
        +        },
        +        "price": {
        +          "additionalProperties": true,
        +          "type": "object"
        +        },
        +        "retrieval_debug": {
        +          "additionalProperties": false,
        +          "anyOf": [
        +            {
        +              "type": "null"
        +            },
        +            {
        +              "type": "object"
        +            }
        +          ],
        +          "properties": {
        +            "fused_rank": {
        +              "type": "integer"
        +            },
        +            "fused_score": {
        +              "type": "number"
        +            },
        +            "lexical_rank": {
        +              "type": "integer"
        +            },
        +            "lexical_score": {
        +              "type": "number"
        +            },
        +            "rerank_admission_rank": {
        +              "type": "integer"
        +            },
        +            "rerank_rank": {
        +              "type": "integer"
        +            },
        +            "rerank_score": {
        +              "anyOf": [
        +                {
        +                  "type": "null"
        +                },
        +                {
        +                  "type": "number"
        +                }
        +              ]
        +            },
        +            "runtime_availability": {
        +              "type": "string"
        +            },
        +            "vector_view_ranks": {
        +              "additionalProperties": {
        +                "type": "integer"
        +              },
        +              "type": "object"
        +            },
        +            "vector_view_scores": {
        +              "additionalProperties": {
        +                "type": "number"
        +              },
        +              "type": "object"
        +            }
        +          },
        +          "required": [
        +            "fused_rank",
        +            "fused_score",
        +            "lexical_rank",
        +            "lexical_score",
        +            "rerank_admission_rank",
        +            "rerank_rank",
        +            "runtime_availability",
        +            "vector_view_ranks",
        +            "vector_view_scores"
        +          ]
        +        },
        +        "summary": {
        +          "type": "string"
        +        },
        +        "tool": {
        +          "type": "string"
        +        }
        +      },
        +      "required": [
        +        "description",
        +        "has_full_schema",
        +        "price",
        +        "summary",
        +        "tool"
        +      ],
        +      "type": "object"
        +    }
        +  }
        +}
      • addedOutput schema / required
        Added value: +[
        +  "next_steps_guidance",
        +  "search_id",
        +  "session_id",
        +  "tools"
        +]
    • Changeduse1 field changed
      • changedInput schema / properties / max_price_usd / description
        Previous value: -"Refuse the call before any spend if it would cost more than this many USD"New value: +"Refuse the call before any spend if its quoted price is above this many USD"
  4. 53 tool updates
    • Removedbatch_get_schema
    • Removedbatch_quote
    • Changedbatch_use18 fields changed
      • removedInput schema / $schema
        Removed value: -"https://json-schema.org/draft/2020-12/schema"
      • addedInput schema / properties / calls / description
        Added value: +"Up to 20 items of {call_id, operation_id, arguments}; steps at the same execution_level of a plan go in one batch"
      • removedInput schema / properties / calls / items / $schema
        Removed value: -"https://json-schema.org/draft/2020-12/schema"
      • changedInput schema / properties / calls / items / additionalProperties
        Previous value: -falseNew value: +true
      • removedInput schema / properties / calls / items / properties
        Removed value: -{
        -  "arguments": {
        -    "additionalProperties": true,
        -    "description": "Strictly schema-compliant arguments using the exact field names and types from this tool's arguments_schema.",
        -    "type": "object"
        -  },
        -  "call_id": {
        -    "description": "Caller-chosen identifier unique within this batch.",
        -    "maxLength": 128,
        -    "minLength": 1,
        -    "type": "string"
        -  },
        -  "tool": {
        -    "description": "Exact tool name returned by search or batch_get_schema. Never invent a name.",
        -    "minLength": 1,
        -    "type": "string"
        -  }
        -}
      • removedInput schema / properties / calls / items / required
        Removed value: -[
        -  "call_id",
        -  "tool",
        -  "arguments"
        -]
      • removedInput schema / properties / calls / maxItems
        Removed value: -20
      • removedInput schema / properties / calls / minItems
        Removed value: -1
      • addedInput schema / properties / max_price_usd
        Added value: +{
        +  "anyOf": [
        +    {
        +      "type": "number"
        +    },
        +    {
        +      "type": "null"
        +    }
        +  ],
        +  "default": null,
        +  "description": "Per-call price cap applied to every item"
        +}
      • addedInput schema / properties / search_id / anyOf
        Added value: +[
        +  {
        +    "type": "string"
        +  },
        +  {
        +    "type": "null"
        +  }
        +]
      • addedInput schema / properties / search_id / default
        Added value: +null
      • changedInput schema / properties / search_id / description
        Previous value: -"Optional search correlation identifier returned by search."New value: +"search_id from the search that found these operations"
      • removedInput schema / properties / search_id / type
        Removed value: -"string"
      • removedInput schema / properties / session_id
        Removed value: -{
        -  "description": "Reuse the session_id returned by Search in all subsequent tool calls for this task. If omitted, a new session is created.",
        -  "maxLength": 128,
        -  "pattern": "^[A-Za-z0-9_-]*$",
        -  "type": "string"
        -}
      • removedOutput schema / $defs
        Removed value: -{
        -  "jsonValue": {
        -    "anyOf": [
        -      {
        -        "additionalProperties": {
        -          "$ref": "#/$defs/jsonValue"
        -        },
        -        "type": "object"
        -      },
        -      {
        -        "items": {
        -          "$ref": "#/$defs/jsonValue"
        -        },
        -        "type": "array"
        -      },
        -      {
        -        "type": "string"
        -      },
        -      {
        -        "type": "number"
        -      },
        -      {
        -        "type": "boolean"
        -      },
        -      {
        -        "type": "null"
        -      }
        -    ],
        -    "description": "JSON value returned by the upstream tool."
        -  }
        -}
      • removedOutput schema / $schema
        Removed value: -"https://json-schema.org/draft/2020-12/schema"
      • removedOutput schema / properties
        Removed value: -{
        -  "batch_id": {
        -    "type": "string"
        -  },
        -  "error_count": {
        -    "minimum": 0,
        -    "type": "integer"
        -  },
        -  "next_steps_guidance": {
        -    "description": "Deterministic next-step instructions derived from this result. Not an authorization grant.",
        -    "items": {
        -      "type": "string"
        -    },
        -    "type": "array"
        -  },
        -  "results": {
        -    "items": {
        -      "$schema": "https://json-schema.org/draft/2020-12/schema",
        -      "additionalProperties": false,
        -      "properties": {
        -        "call_id": {
        -          "type": "string"
        -        },
        -        "customer_cost_micros_usd": {
        -          "description": "Actual customer charge settled by AIsaServices, in micro-USD. Omitted when the upstream response does not report it.",
        -          "minimum": 0,
        -          "type": "integer"
        -        },
        -        "data": {
        -          "$ref": "#/$defs/jsonValue"
        -        },
        -        "error": {
        -          "anyOf": [
        -            {
        -              "$schema": "https://json-schema.org/draft/2020-12/schema",
        -              "additionalProperties": false,
        -              "properties": {
        -                "message": {
        -                  "type": "string"
        -                },
        -                "retryable": {
        -                  "type": "boolean"
        -                },
        -                "status": {
        -                  "type": "integer"
        -                },
        -                "type": {
        -                  "enum": [
        -                    "validation",
        -                    "authentication",
        -                    "payment",
        -                    "permission",
        -                    "rate_limit",
        -                    "upstream",
        -                    "timeout",
        -                    "internal"
        -                  ],
        -                  "type": "string"
        -                }
        -              },
        -              "required": [
        -                "type",
        -                "status",
        -                "retryable"
        -              ],
        -              "type": "object"
        -            },
        -            {
        -              "type": "null"
        -            }
        -          ]
        -        },
        -        "request_id": {
        -          "type": "string"
        -        },
        -        "successful": {
        -          "type": "boolean"
        -        },
        -        "tool": {
        -          "type": "string"
        -        },
        -        "upstream_status": {
        -          "description": "HTTP status returned by AIsaServices when a request was dispatched.",
        -          "type": "integer"
        -        }
        -      },
        -      "required": [
        -        "call_id",
        -        "tool",
        -        "successful",
        -        "request_id"
        -      ],
        -      "type": "object"
        -    },
        -    "type": "array"
        -  },
        -  "session_id": {
        -    "description": "Reuse the session_id returned by Search in all subsequent tool calls for this task. If omitted, a new session is created.",
        -    "maxLength": 128,
        -    "minLength": 1,
        -    "pattern": "^[A-Za-z0-9_-]*$",
        -    "type": "string"
        -  },
        -  "success_count": {
        -    "minimum": 0,
        -    "type": "integer"
        -  },
        -  "total_count": {
        -    "minimum": 1,
        -    "type": "integer"
        -  }
        -}
      • removedOutput schema / required
        Removed value: -[
        -  "session_id",
        -  "batch_id",
        -  "total_count",
        -  "success_count",
        -  "error_count",
        -  "results",
        -  "next_steps_guidance"
        -]
    • Changedget_dataforseo_keywords_bing_audience_industries1 field changed
      • removedOutput schema / x-fastmcp-wrap-result
        Removed value: -true
    • Changedget_dataforseo_keywords_bing_audience_job_functions1 field changed
      • removedOutput schema / x-fastmcp-wrap-result
        Removed value: -true
    • Changedget_dataforseo_keywords_bing_kw_performance_locales1 field changed
      • removedOutput schema / x-fastmcp-wrap-result
        Removed value: -true
    • Changedget_dataforseo_keywords_bing_languages1 field changed
      • removedOutput schema / x-fastmcp-wrap-result
        Removed value: -true
    • Changedget_dataforseo_keywords_bing_locations1 field changed
      • removedOutput schema / x-fastmcp-wrap-result
        Removed value: -true
    • Changedget_dataforseo_keywords_bing_volume_history_locales1 field changed
      • removedOutput schema / x-fastmcp-wrap-result
        Removed value: -true
    • Changedget_dataforseo_keywords_clickstream_locales1 field changed
      • removedOutput schema / x-fastmcp-wrap-result
        Removed value: -true
    • Changedget_dataforseo_keywords_gads_ad_traffic_fetch3 fields changed
      • changedInput schema / properties / id / description
        Previous value: -"<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"New value: +"task identifier unique task identifier in our system in the UUID format you will be able to use it within 30 days to request the results of the task at any time"
      • removedInput schema / properties / id / example
        Removed value: -"00000000-0000-0000-0000-000000000000"
      • removedOutput schema / x-fastmcp-wrap-result
        Removed value: -true
    • Changedget_dataforseo_keywords_gads_status1 field changed
      • removedOutput schema / x-fastmcp-wrap-result
        Removed value: -true
    • Changedget_dataforseo_keywords_google_trends_categories1 field changed
      • removedOutput schema / x-fastmcp-wrap-result
        Removed value: -true
    • Changedget_dataforseo_keywords_trends_locations1 field changed
      • removedOutput schema / x-fastmcp-wrap-result
        Removed value: -true
    • Changedget_dataforseo_labs_google_categories_for_kw_languages1 field changed
      • removedOutput schema / x-fastmcp-wrap-result
        Removed value: -true
    • Changedget_details13 fields changed
      • removedInput schema / $schema
        Removed value: -"https://json-schema.org/draft/2020-12/schema"
      • addedInput schema / properties / arguments
        Added value: +{
        +  "anyOf": [
        +    {
        +      "additionalProperties": true,
        +      "type": "object"
        +    },
        +    {
        +      "type": "null"
        +    }
        +  ],
        +  "default": null,
        +  "description": "The arguments the operation would be called with, for a price that reflects them. Keyed by operation_id for a batch, or passed flat for a single operation_id. Routes whose required parameters are validated before pricing have no price without them."
        +}
      • removedInput schema / properties / include_arguments_schema
        Removed value: -{
        -  "default": true,
        -  "description": "Return the complete arguments_schema. Defaults to true.",
        -  "type": "boolean"
        -}
      • changedInput schema / properties / include_documentation / description
        Previous value: -"Return the complete immutable public OpenAPI operation, referenced declarations, provenance and scoped completeness. Documentation does not change execution support."New value: +"Include the complete native public OpenAPI document, reference closure and scoped completeness. Existing execution schemas remain unchanged."
      • removedInput schema / properties / include_response_schema
        Removed value: -{
        -  "default": false,
        -  "description": "Return the complete response_schema. Defaults to false.",
        -  "type": "boolean"
        -}
      • addedInput schema / properties / operation_id
        Added value: +{
        +  "anyOf": [
        +    {
        +      "type": "string"
        +    },
        +    {
        +      "type": "null"
        +    }
        +  ],
        +  "default": null,
        +  "description": "One operation_id from search"
        +}
      • addedInput schema / properties / operation_ids
        Added value: +{
        +  "anyOf": [
        +    {
        +      "items": {
        +        "type": "string"
        +      },
        +      "type": "array"
        +    },
        +    {
        +      "type": "null"
        +    }
        +  ],
        +  "default": null,
        +  "description": "Up to 20 operation_ids, for a batch"
        +}
      • removedInput schema / properties / session_id
        Removed value: -{
        -  "description": "Reuse the session_id returned by Search in all subsequent tool calls for this task. If omitted, a new session is created.",
        -  "maxLength": 128,
        -  "pattern": "^[A-Za-z0-9_-]*$",
        -  "type": "string"
        -}
      • removedInput schema / properties / tools
        Removed value: -{
        -  "description": "Exact tool names returned by search whose complete contracts are needed. Never invent tool names.",
        -  "items": {
        -    "minLength": 1,
        -    "pattern": "^\\S(?:.*\\S)?$",
        -    "type": "string"
        -  },
        -  "maxItems": 20,
        -  "minItems": 1,
        -  "type": "array",
        -  "uniqueItems": true
        -}
      • addedInput schema / properties / with_quote
        Added value: +{
        +  "default": true,
        +  "description": "Whether each operation is priced for this account before the answer. One round trip per operation; spends nothing.",
        +  "type": "boolean"
        +}
      • removedInput schema / required
        Removed value: -[
        -  "tools"
        -]
      • removedOutput schema / properties
        Removed value: -{
        -  "error_count": {
        -    "type": "integer"
        -  },
        -  "next_steps_guidance": {
        -    "anyOf": [
        -      {
        -        "type": "null"
        -      },
        -      {
        -        "type": "array"
        -      }
        -    ],
        -    "items": {
        -      "type": "string"
        -    }
        -  },
        -  "session_id": {
        -    "description": "Reuse the session_id returned by Search in all subsequent tool calls for this task. If omitted, a new session is created.",
        -    "maxLength": 128,
        -    "minLength": 1,
        -    "pattern": "^[A-Za-z0-9_-]{1,128}$",
        -    "type": "string"
        -  },
        -  "success_count": {
        -    "type": "integer"
        -  },
        -  "tools": {
        -    "additionalProperties": {
        -      "additionalProperties": false,
        -      "properties": {
        -        "arguments_schema": {
        -          "additionalProperties": true,
        -          "anyOf": [
        -            {
        -              "type": "null"
        -            },
        -            {
        -              "type": "object"
        -            }
        -          ]
        -        },
        -        "canonical_operation_id": {
        -          "type": "string"
        -        },
        -        "documentation": {
        -          "additionalProperties": true,
        -          "type": "object"
        -        },
        -        "error": {
        -          "additionalProperties": false,
        -          "anyOf": [
        -            {
        -              "type": "null"
        -            },
        -            {
        -              "type": "object"
        -            }
        -          ],
        -          "properties": {
        -            "code": {
        -              "type": "string"
        -            },
        -            "message": {
        -              "type": "string"
        -            }
        -          },
        -          "required": [
        -            "code",
        -            "message"
        -          ]
        -        },
        -        "execution_supported": {
        -          "description": "Whether this router can execute and quote the operation; false retains documentation and discovery only.",
        -          "type": "boolean"
        -        },
        -        "execution_unsupported_reason": {
        -          "description": "Why execution and quoting remain unavailable through this router.",
        -          "type": "string"
        -        },
        -        "idempotent": {
        -          "anyOf": [
        -            {
        -              "type": "null"
        -            },
        -            {
        -              "type": "boolean"
        -            }
        -          ]
        -        },
        -        "known_pitfalls": {
        -          "anyOf": [
        -            {
        -              "type": "null"
        -            },
        -            {
        -              "type": "array"
        -            }
        -          ],
        -          "items": {
        -            "type": "string"
        -          }
        -        },
        -        "read_only": {
        -          "anyOf": [
        -            {
        -              "type": "null"
        -            },
        -            {
        -              "type": "boolean"
        -            }
        -          ]
        -        },
        -        "response_schema": {
        -          "additionalProperties": true,
        -          "anyOf": [
        -            {
        -              "type": "null"
        -            },
        -            {
        -              "type": "object"
        -            }
        -          ]
        -        },
        -        "side_effects": {
        -          "anyOf": [
        -            {
        -              "type": "null"
        -            },
        -            {
        -              "type": "array"
        -            }
        -          ],
        -          "items": {
        -            "type": "string"
        -          }
        -        },
        -        "successful": {
        -          "type": "boolean"
        -        }
        -      },
        -      "required": [
        -        "successful"
        -      ],
        -      "type": "object"
        -    },
        -    "type": "object"
        -  },
        -  "total_count": {
        -    "type": "integer"
        -  }
        -}
      • removedOutput schema / required
        Removed value: -[
        -  "error_count",
        -  "next_steps_guidance",
        -  "session_id",
        -  "success_count",
        -  "tools",
        -  "total_count"
        -]
    • Changedget_semrush_broad_match_keywords4 fields changed
      • addedInput schema / properties / database / default
        Added value: +"us"
      • addedInput schema / properties / database / description
        Added value: +"Regional database / country code. Defaults to `us`."
      • addedInput schema / properties / phrase / description
        Added value: +"Keyword phrase. URL-encode spaces as `%20` or `+`."
      • addedInput schema / properties / phrase / example
        Added value: +"seo tools"
    • Changedget_semrush_domain_organic_keywords5 fields changed
      • addedInput schema / properties / database / description
        Added value: +"Regional database / country code, e.g. `us`."
      • addedInput schema / properties / database / example
        Added value: +"us"
      • addedInput schema / properties / domain / description
        Added value: +"Target domain, e.g. `ahrefs.com`."
      • addedInput schema / properties / domain / example
        Added value: +"ahrefs.com"
      • changedInput schema / required
        Previous value: -[
        -  "database",
        -  "domain"
        -]New value: +[
        +  "domain",
        +  "database"
        +]
    • Changedget_semrush_domain_paid_keywords5 fields changed
      • addedInput schema / properties / database / description
        Added value: +"Regional database / country code, e.g. `us`."
      • addedInput schema / properties / database / example
        Added value: +"us"
      • addedInput schema / properties / domain / description
        Added value: +"Target domain, e.g. `ahrefs.com`."
      • addedInput schema / properties / domain / example
        Added value: +"ahrefs.com"
      • changedInput schema / required
        Previous value: -[
        -  "database",
        -  "domain"
        -]New value: +[
        +  "domain",
        +  "database"
        +]
    • Changedget_semrush_keyword_difficulty7 fields changed
      • addedInput schema / properties / database / default
        Added value: +"us"
      • addedInput schema / properties / database / description
        Added value: +"Regional database / country code. Defaults to `us`."
      • addedInput schema / properties / phrase / description
        Added value: +"One or more keywords separated by `;` (up to 20)."
      • addedInput schema / properties / phrase / example
        Added value: +"seo tools;ahrefs"
      • removedInput schema / properties / phrase / x-aisa-delimiter
        Removed value: -";"
      • removedInput schema / properties / phrase / x-aisa-maxItems
        Removed value: -20
      • removedInput schema / properties / phrase / x-aisa-minItems
        Removed value: -1
    • Changedget_semrush_keyword_overview3 fields changed
      • addedInput schema / properties / database / description
        Added value: +"Regional database / country code. Defaults to `us`."
      • addedInput schema / properties / phrase / description
        Added value: +"Keyword phrase. URL-encode spaces as `%20` or `+`."
      • addedInput schema / properties / phrase / example
        Added value: +"seo tools"
    • Changedget_semrush_question_keywords4 fields changed
      • addedInput schema / properties / database / default
        Added value: +"us"
      • addedInput schema / properties / database / description
        Added value: +"Regional database / country code. Defaults to `us`."
      • addedInput schema / properties / phrase / description
        Added value: +"Keyword phrase. URL-encode spaces as `%20` or `+`."
      • addedInput schema / properties / phrase / example
        Added value: +"seo tools"
    • Changedget_semrush_url_organic_keywords5 fields changed
      • addedInput schema / properties / database / description
        Added value: +"Regional database / country code, e.g. `us`."
      • addedInput schema / properties / database / example
        Added value: +"us"
      • addedInput schema / properties / url / description
        Added value: +"Target URL (landing page)."
      • addedInput schema / properties / url / example
        Added value: +"https://ahrefs.com/blog/"
      • changedInput schema / required
        Previous value: -[
        -  "database",
        -  "url"
        -]New value: +[
        +  "url",
        +  "database"
        +]
    • Changedget_similarweb_keywords15 fields changed
      • changedInput schema / properties / country / description
        Previous value: -"Worldwide data only; values are case-insensitive."New value: +"Two-letter country code. Allowed: us, ww. Default: ww. Coverage is limited to ww and us on the current plan."
      • changedInput schema / properties / country / enum
        Previous value: -[
        -  "ww"
        -]New value: +[
        +  "us",
        +  "ww"
        +]
      • addedInput schema / properties / domain / description
        Added value: +"Target domain, e.g. example.com."
      • removedInput schema / properties / domain / maxLength
        Removed value: -2048
      • removedInput schema / properties / domain / minLength
        Removed value: -1
      • addedInput schema / properties / end_date / description
        Added value: +"End month, format YYYY-MM."
      • addedInput schema / properties / format / description
        Added value: +"Response format. Allowed: json."
      • addedInput schema / properties / granularity / description
        Added value: +"Time granularity. Allowed: monthly."
      • addedInput schema / properties / limit / default
        Added value: +20
      • addedInput schema / properties / limit / description
        Added value: +"Number of rows to return; max 20, billed as 20 if exceeded."
      • removedInput schema / properties / limit / minimum
        Removed value: -1
      • addedInput schema / properties / main_domain_only / description
        Added value: +"Restrict to the main domain only (true/false)."
      • addedInput schema / properties / start_date / description
        Added value: +"Start month, format YYYY-MM."
      • addedInput schema / properties / web_source / description
        Added value: +"Traffic source device split. Allowed: total."
      • changedInput schema / required
        Previous value: -[
        -  "domain",
        -  "end_date",
        -  "granularity",
        -  "limit",
        -  "start_date"
        -]New value: +[
        +  "domain",
        +  "start_date",
        +  "end_date",
        +  "granularity",
        +  "limit"
        +]
    • Changedget_similarweb_landing_pages18 fields changed
      • changedInput schema / properties / country / description
        Previous value: -"Worldwide data only; values are case-insensitive."New value: +"Two-letter country code. Allowed: us, ww. Default: ww. Coverage is limited to ww and us on the current plan."
      • changedInput schema / properties / country / enum
        Previous value: -[
        -  "ww"
        -]New value: +[
        +  "us",
        +  "ww"
        +]
      • addedInput schema / properties / domain / description
        Added value: +"Target domain, e.g. example.com."
      • removedInput schema / properties / domain / maxLength
        Removed value: -253
      • removedInput schema / properties / domain / minLength
        Removed value: -1
      • addedInput schema / properties / end_date / description
        Added value: +"End month, format YYYY-MM."
      • addedInput schema / properties / granularity / description
        Added value: +"Time granularity. Allowed: monthly."
      • addedInput schema / properties / limit / default
        Added value: +20
      • addedInput schema / properties / limit / description
        Added value: +"Number of rows to return; max 20, billed as 20 if exceeded."
      • removedInput schema / properties / limit / minimum
        Removed value: -1
      • addedInput schema / properties / main_domain_only / description
        Added value: +"Restrict to the main domain only (true/false)."
      • addedInput schema / properties / offset / description
        Added value: +"Row offset for pagination."
      • removedInput schema / properties / offset / maximum
        Removed value: -100000
      • removedInput schema / properties / offset / minimum
        Removed value: -0
      • addedInput schema / properties / start_date / description
        Added value: +"Start month, format YYYY-MM."
      • addedInput schema / properties / traffic_source / description
        Added value: +"Traffic-source filter."
      • addedInput schema / properties / web_source / description
        Added value: +"Traffic source device split. Allowed: desktop, mobile_web, total."
      • changedInput schema / required
        Previous value: -[
        -  "domain",
        -  "end_date",
        -  "limit",
        -  "start_date"
        -]New value: +[
        +  "domain",
        +  "start_date",
        +  "end_date",
        +  "limit"
        +]
    • Changedpost_dataforseo_keywords_bing_audience_live7 fields changed
      • removedInput schema / properties / body / example
        Removed value: -[
        -  {
        -    "age": [
        -      "twenty_five_to_thirty_four",
        -      "eighteen_to_twenty_four",
        -      "unknown"
        -    ],
        -    "bid": 1,
        -    "daily_budget": 24,
        -    "gender": [
        -      "male"
        -    ],
        -    "industry": [
        -      "806303407",
        -      "806301758"
        -    ],
        -    "job_function": [
        -      "806298607"
        -    ],
        -    "location_coordinate": "29.6821525,-82.4098881,100"
        -  }
        -]
      • addedInput schema / properties / body / items / allOf
        Added value: +[
        +  {
        +    "anyOf": [
        +      {
        +        "required": [
        +          "location_name"
        +        ]
        +      },
        +      {
        +        "required": [
        +          "location_code"
        +        ]
        +      },
        +      {
        +        "required": [
        +          "location_coordinate"
        +        ]
        +      }
        +    ]
        +  }
        +]
      • removedInput schema / properties / body / items / anyOf
        Removed value: -[
        -  {
        -    "example": [
        -      {
        -        "age": [
        -          "twenty_five_to_thirty_four",
        -          "eighteen_to_twenty_four",
        -          "unknown"
        -        ],
        -        "bid": 1,
        -        "daily_budget": 24,
        -        "gender": [
        -          "male"
        -        ],
        -        "industry": [
        -          "806303407",
        -          "806301758"
        -        ],
        -        "job_function": [
        -          "806298607"
        -        ],
        -        "location_coordinate": "29.6821525,-82.4098881,100"
        -      }
        -    ],
        -    "properties": {
        -      "age": {
        -        "description": "<em>selection of age ranges for targeting</em><br>possible values: <code>eighteen_to_twenty_four</code>, <code>fifty_to_sixty_four</code>, <code>sixty_five_and_above</code>, <code>thirteen_to_seventeen</code>, <code>thirty_five_to_forty_nine</code>, <code>twenty_five_to_thirty_four</code>, <code>unknown</code>, <code>zero_to_twelve</code>",
        -        "items": {
        -          "type": "string"
        -        },
        -        "type": [
        -          "array",
        -          "null"
        -        ]
        -      },
        -      "bid": {
        -        "description": "<em>desired bid setting value in USD</em><br>maximum value: 1000",
        -        "type": [
        -          "number",
        -          "null"
        -        ]
        -      },
        -      "daily_budget": {
        -        "description": "<em>daily campaign budget value in USD</em><br>maximum value: 10000",
        -        "type": [
        -          "number",
        -          "null"
        -        ]
        -      },
        -      "gender": {
        -        "description": "<em>gender to target</em><br>possible values: <code>male</code>, <code>female</code>, <code>unknown</code>",
        -        "items": {
        -          "type": "string"
        -        },
        -        "type": [
        -          "array",
        -          "null"
        -        ]
        -      },
        -      "industry": {
        -        "description": "<em>industry of LinkedIn profile targeting</em><p>if you use this field, you can receive the list of available industry names  with industry_id by making a separate request to the https://api.dataforseo.com/v3/keywords_data/bing/audience_estimation/industries<p>example: <code>806301758</code>",
        -        "items": {
        -          "type": "string"
        -        },
        -        "type": [
        -          "array",
        -          "null"
        -        ]
        -      },
        -      "job_function": {
        -        "description": "<em>job function of LinkedIn profile targeting</em><p>if you use this field, you can receive the list of available job function names  with job_function_id by making a separate request to the https://api.dataforseo.com/v3/keywords_data/bing/audience_estimation/job_functions<p>example: <code>806300451</code>",
        -        "items": {
        -          "type": "string"
        -        },
        -        "type": [
        -          "array",
        -          "null"
        -        ]
        -      },
        -      "location_code": {
        -        "description": "<em>search engine location code</em><br><strong>required field if you don't specify</strong> <code>location_name</code> or <code>location_coordinate</code><br><strong>if you use this field, you don't need to specify <code>location_name</code> or <code>location_coordinate</code></strong><br>you can receive the list of available locations of the search engines with their <code>location_code</code> by making a separate request to <code>https://api.dataforseo.com/v3/keywords_data/bing/locations</code><br>example:<br><code class=\"long-string\">2840</code>",
        -        "type": "integer"
        -      },
        -      "location_coordinate": {
        -        "description": "<em>GPS coordinates of a location</em><br><strong>required field if you don't specify</strong> <code>location_name</code> or <code>location_code</code><br><strong>if you use this field, you don't need to specify <code>location_name</code> or <code>location_code</code></strong><br><code>location_coordinate</code> parameter should be specified in the <em>\"latitude,longitude,radius (in km)\"</em> format<br><strong>the data will be provided for the country the specified coordinates belong to</strong><br>example:<br><code class=\"long-string\">29.6821525,-82.4098881,100</code>",
        -        "type": "string"
        -      },
        -      "location_name": {
        -        "description": "<em>full name of search engine location</em><br><strong>required field if you don't specify</strong> <code>location_code</code> or <code>location_coordinate</code><br><strong>if you use this field, you don't need to specify <code>location_code</code> or <code>location_coordinate</code></strong><br>you can receive the list of available locations of the search engine with their <code>location_name</code> by making a separate request to <code>https://api.dataforseo.com/v3/keywords_data/bing/locations</code><br>example:<br><code class=\"long-string\">London,England,United Kingdom</code>",
        -        "type": "string"
        -      }
        -    },
        -    "type": "object"
        -  }
        -]
      • addedInput schema / properties / body / items / properties
        Added value: +{
        +  "age": {
        +    "description": "selection of age ranges for targeting possible values: eighteen_to_twenty_four, fifty_to_sixty_four, sixty_five_and_above, thirteen_to_seventeen, thirty_five_to_forty_nine, twenty_five_to_thirty_four, unknown, zero_to_twelve",
        +    "items": {
        +      "type": "string"
        +    },
        +    "type": "array"
        +  },
        +  "bid": {
        +    "description": "desired bid setting value in USD maximum value: 1000",
        +    "type": "number"
        +  },
        +  "daily_budget": {
        +    "description": "daily campaign budget value in USD maximum value: 10000",
        +    "type": "number"
        +  },
        +  "gender": {
        +    "description": "gender to target possible values: male, female, unknown",
        +    "items": {
        +      "type": "string"
        +    },
        +    "type": "array"
        +  },
        +  "industry": {
        +    "description": "industry of LinkedIn profile targeting if you use this field, you can receive the list of available industry names with industry_id by making a separate request to the https://api.dataforseo.com/v3/keywords_data/bing/audience_estimation/industries example: 806301758",
        +    "items": {
        +      "type": "integer"
        +    },
        +    "type": "array"
        +  },
        +  "job_function": {
        +    "description": "job function of LinkedIn profile targeting if you use this field, you can receive the list of available job function names with job_function_id by making a separate request to the https://api.dataforseo.com/v3/keywords_data/bing/audience_estimation/job_functions example: 806300451",
        +    "items": {
        +      "type": "integer"
        +    },
        +    "type": "array"
        +  },
        +  "location_code": {
        +    "description": "search engine location code required field if you don’t specify location_name or location_coordinate if you use this field, you don’t need to specify location_name or location_coordinate you can receive the list of available locations of the search engines with their location_code by making a separate request to https://api.dataforseo.com/v3/keywords_data/bing/locations example: 2840",
        +    "type": "integer"
        +  },
        +  "location_coordinate": {
        +    "description": "GPS coordinates of a location required field if you don’t specify location_name or location_code if you use this field, you don’t need to specify location_name or location_code location_coordinate parameter should be specified in the “latitude,longitude,radius (in km)” format the data will be provided for the country the specified coordinates belong to example: 29.6821525,-82.4098881,100",
        +    "type": "string"
        +  },
        +  "location_name": {
        +    "description": "full name of search engine location required field if you don’t specify location_code or location_coordinate if you use this field, you don’t need to specify location_code or location_coordinate you can receive the list of available locations of the search engine with their location_name by making a separate request to https://api.dataforseo.com/v3/keywords_data/bing/locations example: London,England,United Kingdom",
        +    "type": "string"
        +  }
        +}
      • changedInput schema / properties / body / items / type
        Previous value: -[
        -  "object",
        -  "null"
        -]New value: +"object"
      • changedInput schema / required
        Previous value: -[]New value: +[
        +  "body"
        +]
      • removedOutput schema / x-fastmcp-wrap-result
        Removed value: -true
    • Changedpost_dataforseo_keywords_bing_kw_for_keywords_live8 fields changed
      • removedInput schema / properties / body / example
        Removed value: -[
        -  {
        -    "keywords": [
        -      "average page rpm adsense",
        -      "adsense blank ads how long",
        -      "leads and prospects"
        -    ],
        -    "language_name": "English",
        -    "location_name": "United States"
        -  }
        -]
      • addedInput schema / properties / body / items / allOf
        Added value: +[
        +  {
        +    "anyOf": [
        +      {
        +        "required": [
        +          "location_name"
        +        ]
        +      },
        +      {
        +        "required": [
        +          "location_code"
        +        ]
        +      },
        +      {
        +        "required": [
        +          "location_coordinate"
        +        ]
        +      }
        +    ]
        +  },
        +  {
        +    "anyOf": [
        +      {
        +        "required": [
        +          "language_name"
        +        ]
        +      },
        +      {
        +        "required": [
        +          "language_code"
        +        ]
        +      }
        +    ]
        +  }
        +]
      • removedInput schema / properties / body / items / anyOf
        Removed value: -[
        -  {
        -    "example": [
        -      {
        -        "keywords": [
        -          "average page rpm adsense",
        -          "adsense blank ads how long",
        -          "leads and prospects"
        -        ],
        -        "language_name": "English",
        -        "location_name": "United States"
        -      }
        -    ],
        -    "properties": {
        -      "date_from": {
        -        "description": "<em>starting date of the time range</em><br>optional field<br>minimal value: 24 months from today's date;<br>if you don't specify this field, data will be provided for the last 12 months;<br>if <a href=\"/v3/keywords_data/bing/status/\" target=\"_blank\" rel=\"noopener noreferrer\">Status endpoint</a> returns <code>false</code> in the <code>actual_data</code> field, <code>date_from</code> can be set to the month before last and prior;<br>if <a href=\"/v3/keywords_data/bing/status/\" target=\"_blank\" rel=\"noopener noreferrer\">Status endpoint</a> returns <code>true</code> in the <code>actual_data</code> field, <code>date_from</code> can be set to the last month and prior;<br>date format: <code>\"yyyy-mm-dd\"</code><br>example:<br><code>\"2020-01-01\"</code><p><strong>Note:</strong> we do not recommend using a custom time range for the past year's dates",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      },
        -      "date_to": {
        -        "description": "<em>ending date of the time range</em><br>optional field<br>if you don't specify this field, data will be provided for the last 12 months;<br>minimum value: two years back from today’s date;<br>maximum value: one month from today's date;<br>date format: <code>\"yyyy-mm-dd\"</code><br>example:<br><code>\"2020-03-15\"</code><p><strong>Note:</strong> we do not recommend using a custom time range for the past year's dates",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      },
        -      "device": {
        -        "description": "<em>device type</em><br>optional field<br>specify this field if you want to get the data for a particular device type;<br>possible values: <code>all</code>, <code>mobile</code>, <code>desktop</code>, <code>tablet</code><br>default value: <code>all</code>",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      },
        -      "keywords": {
        -        "description": "<em>keywords</em><br><strong>required field</strong><br>you can specify <strong>the maximum of 200 keywords</strong> with each keyword containing no more than <strong>100 characters</strong>;<br>the specified keywords will be converted to lowercase, data will be provided in a separate array<p>learn more about rules and limitations of <code>keyword</code> and <code>keywords</code> fields in DataForSEO APIs in this <a href=\"https://dataforseo.com/help-center/rules-and-limitations-of-keyword-and-keywords-fields-in-dataforseo-apis\" rel=\"noopener noreferrer\" target=\"_blank\">Help Center article</a>",
        -        "items": {
        -          "type": "string"
        -        },
        -        "type": "array"
        -      },
        -      "keywords_negative": {
        -        "description": "<em>keywords negative array</em><br>optional field<br>These keywords will be ignored in the results array;<br>You can specify <strong>a maximum of 200 terms</strong> that you want to exclude from the results;<br>the specified keywords will be converted to lowercase format",
        -        "items": {
        -          "type": "string"
        -        },
        -        "type": [
        -          "array",
        -          "null"
        -        ]
        -      },
        -      "language_code": {
        -        "description": "<em>search engine language code</em><br><strong>required field if you don't specify</strong> <code>language_name</code><br>if you use this field, you don't need to specify <code>language_name</code><br>supported languages:<br><code class=\"long-string\">en</code>, <code>fr</code>, <code>de</code>",
        -        "type": "string"
        -      },
        -      "language_name": {
        -        "description": "<em>full name of search engine language</em><br><strong>required field if you don't specify</strong> <code>language_code</code><br>if you use this field, you don't need to specify <code>language_code</code><br>supported languages:<br><code>English</code>, <code>French</code>, <code>German</code>",
        -        "type": "string"
        -      },
        -      "location_code": {
        -        "description": "<em>search engine location code</em><br><strong>required field if you don't specify</strong> <code>location_name</code> or <code>location_coordinate</code><br><strong>if you use this field, you don't need to specify <code>location_name</code> or <code>location_coordinate</code></strong><br>you can receive the list of available locations of the search engines with their <code>location_code</code> by making a separate request to <code>https://api.dataforseo.com/v3/keywords_data/bing/locations</code><br>example:<br><code class=\"long-string\">2840</code>",
        -        "type": "integer"
        -      },
        -      "location_coordinate": {
        -        "description": "<em>GPS coordinates of a location</em><br><strong>required field if you don't specify</strong> <code>location_name</code> or <code>location_code</code><br><strong>if you use this field, you don't need to specify <code>location_name</code> or <code>location_code</code></strong><br><code>location_coordinate</code> parameter should be specified in the <em>\"latitude,longitude\"</em> format<br><strong>the data will be provided for the country the specified coordinates belong to</strong><br>example:<br><code class=\"long-string\">52.6178549,-155.352142</code>",
        -        "type": "string"
        -      },
        -      "location_name": {
        -        "description": "<em>full name of search engine location</em><br><strong>required field if you don't specify</strong> <code>location_code</code> or <code>location_coordinate</code><br><strong>if you use this field, you don't need to specify <code>location_code</code> or <code>location_coordinate</code></strong><br>you can receive the list of available locations of the search engine with their <code>location_name</code> by making a separate request to <code>https://api.dataforseo.com/v3/keywords_data/bing/locations</code><br>example:<br><code class=\"long-string\">London,England,United Kingdom</code>",
        -        "type": "string"
        -      },
        -      "search_partners": {
        -        "description": "<em>Bing search partners type</em><br>optional field<br>if you specify <code class=\"prettyprint\">true</code>, the results will be delivered for owned, operated, and syndicated networks across Bing, Yahoo, AOL and partner sites that host Bing, AOL, and Yahoo search.<br>default value: <code>false</code> - results are returned for Bing, AOL, and Yahoo search networks",
        -        "type": [
        -          "boolean",
        -          "null"
        -        ]
        -      },
        -      "sort_by": {
        -        "description": "<em>results sorting parameters</em><br>optional field<br>Use these parameters to sort the results by <code>search_volume</code>, <code>cpc</code>, <code>competition</code> or <code>relevance</code> in the descending order<br>default value: <code>relevance</code>",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      },
        -      "tag": {
        -        "description": "<em>user-defined task identifier</em><br>optional field<br><em>the character limit is 255</em><br>you can use this parameter to identify the task and match it with the result<br>you will find the specified <code>tag</code> value in the <code>data</code> object of the response",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      }
        -    },
        -    "type": "object"
        -  }
        -]
      • addedInput schema / properties / body / items / properties
        Added value: +{
        +  "date_from": {
        +    "description": "starting date of the time range optional field minimal value: 24 months from today's date; if you don't specify this field, data will be provided for the last 12 months; if Status endpoint returns false in the actual_data field, date_from can be set to the month before last and prior; if Status endpoint returns true in the actual_data field, date_from can be set to the last month and prior; date format: \"yyyy-mm-dd\" example: \"2020-01-01\" Note: we do not recommend using a custom time range for the past year's dates",
        +    "type": "string"
        +  },
        +  "date_to": {
        +    "description": "ending date of the time range optional field if you don’t specify this field, data will be provided for the last 12 months; minimum value: two years back from today’s date; maximum value: one month from today’s date; date format: \"yyyy-mm-dd\" example: \"2020-03-15\" Note: we do not recommend using a custom time range for the past year’s dates",
        +    "type": "string"
        +  },
        +  "device": {
        +    "description": "device type optional field specify this field if you want to get the data for a particular device type; possible values: all, mobile, desktop, tablet default value: all",
        +    "type": "string"
        +  },
        +  "keywords": {
        +    "description": "keywords required field you can specify the maximum of 200 keywords with each keyword containing no more than 100 characters; the specified keywords will be converted to lowercase, data will be provided in a separate array learn more about rules and limitations of keyword and keywords fields in DataForSEO APIs in this Help Center article",
        +    "items": {
        +      "type": "string"
        +    },
        +    "type": "array"
        +  },
        +  "keywords_negative": {
        +    "description": "keywords negative array optional field These keywords will be ignored in the results array; You can specify a maximum of 200 terms that you want to exclude from the results; the specified keywords will be converted to lowercase format",
        +    "items": {
        +      "type": "string"
        +    },
        +    "type": "array"
        +  },
        +  "language_code": {
        +    "description": "search engine language code required field if you don’t specify language_name if you use this field, you don’t need to specify language_name supported languages: en, fr, de",
        +    "type": "string"
        +  },
        +  "language_name": {
        +    "description": "full name of search engine language required field if you don’t specify language_code if you use this field, you don’t need to specify language_code supported languages: English, French, German",
        +    "type": "string"
        +  },
        +  "location_code": {
        +    "description": "search engine location code required field if you don’t specify location_name or location_coordinate if you use this field, you don’t need to specify location_name or location_coordinate you can receive the list of available locations of the search engines with their location_code by making a separate request to https://api.dataforseo.com/v3/keywords_data/bing/locations example: 2840",
        +    "type": "integer"
        +  },
        +  "location_coordinate": {
        +    "description": "GPS coordinates of a location required field if you don’t specify location_name or location_code if you use this field, you don’t need to specify location_name or location_code location_coordinate parameter should be specified in the “latitude,longitude” format the data will be provided for the country the specified coordinates belong to example: 52.6178549,-155.352142",
        +    "type": "string"
        +  },
        +  "location_name": {
        +    "description": "full name of search engine location required field if you don’t specify location_code or location_coordinate if you use this field, you don’t need to specify location_code or location_coordinate you can receive the list of available locations of the search engine with their location_name by making a separate request to https://api.dataforseo.com/v3/keywords_data/bing/locations example: London,England,United Kingdom",
        +    "type": "string"
        +  },
        +  "search_partners": {
        +    "description": "Bing search partners type optional field if you specify true, the results will be delivered for owned, operated, and syndicated networks across Bing, Yahoo, AOL and partner sites that host Bing, AOL, and Yahoo search. default value: false – results are returned for Bing, AOL, and Yahoo search networks",
        +    "type": "boolean"
        +  },
        +  "sort_by": {
        +    "description": "results sorting parameters optional field Use these parameters to sort the results by search_volume, cpc, competition or relevance in the descending order default value: relevance",
        +    "type": "string"
        +  },
        +  "tag": {
        +    "description": "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",
        +    "type": "string"
        +  }
        +}
      • addedInput schema / properties / body / items / required
        Added value: +[
        +  "keywords"
        +]
      • changedInput schema / properties / body / items / type
        Previous value: -[
        -  "object",
        -  "null"
        -]New value: +"object"
      • changedInput schema / required
        Previous value: -[]New value: +[
        +  "body"
        +]
      • removedOutput schema / x-fastmcp-wrap-result
        Removed value: -true
    • Changedpost_dataforseo_keywords_bing_kw_for_site_live8 fields changed
      • removedInput schema / properties / body / example
        Removed value: -[
        -  {
        -    "language_code": "en",
        -    "location_code": 2840,
        -    "target": "dataforseo.com"
        -  }
        -]
      • addedInput schema / properties / body / items / allOf
        Added value: +[
        +  {
        +    "anyOf": [
        +      {
        +        "required": [
        +          "location_name"
        +        ]
        +      },
        +      {
        +        "required": [
        +          "location_code"
        +        ]
        +      },
        +      {
        +        "required": [
        +          "location_coordinate"
        +        ]
        +      }
        +    ]
        +  },
        +  {
        +    "anyOf": [
        +      {
        +        "required": [
        +          "language_name"
        +        ]
        +      },
        +      {
        +        "required": [
        +          "language_code"
        +        ]
        +      }
        +    ]
        +  }
        +]
      • removedInput schema / properties / body / items / anyOf
        Removed value: -[
        -  {
        -    "example": [
        -      {
        -        "language_code": "en",
        -        "location_code": 2840,
        -        "target": "dataforseo.com"
        -      }
        -    ],
        -    "properties": {
        -      "date_from": {
        -        "description": "<em>starting date of the time range</em><br>optional field<br>minimal value: 24 months from today's date;<br>if you don't specify this field, data will be provided for the last 12 months;<br>if <a href=\"/v3/keywords_data/bing/status/\" target=\"_blank\" rel=\"noopener noreferrer\">Status endpoint</a> returns <code>false</code> in the <code>actual_data</code> field, <code>date_from</code> can be set to the month before last and prior;<br>if <a href=\"/v3/keywords_data/bing/status/\" target=\"_blank\" rel=\"noopener noreferrer\">Status endpoint</a> returns <code>true</code> in the <code>actual_data</code> field, <code>date_from</code> can be set to the last month and prior;<br>date format: <code>\"yyyy-mm-dd\"</code><br>example:<br><code>\"2020-01-01\"</code><p><strong>Note:</strong> we do not recommend using a custom time range for the past year's dates",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      },
        -      "date_to": {
        -        "description": "<em>ending date of the time range</em><br>optional field<br>if you don't specify this field, data will be provided for the last 12 months;<br>minimum value: two years back from today’s date;<br>maximum value: one month from today's date;<br><strong>note:</strong> we do not recommend using a custom time range for the past year's dates;<br>date format: <code>\"yyyy-mm-dd\"</code><br>example:<br><code>\"2020-03-15\"</code><p><strong>Note:</strong> we do not recommend using a custom time range for the past year's dates",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      },
        -      "device": {
        -        "description": "<em>device type</em><br>optional field<br>specify this field if you want to get the data for a particular device typepossible values: <code>all</code>, <code>mobile</code>, <code>desktop</code>, <code>tablet</code><br>default value: <code>all</code>",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      },
        -      "keywords_negative": {
        -        "description": "<em>keywords negative array</em><br>optional field<br>These keywords will be ignored in the results array;<br>You can specify <strong>a maximum of 200 terms</strong> that you want to exclude from the results;<br>the specified keywords will be converted to lowercase format",
        -        "items": {
        -          "type": "string"
        -        },
        -        "type": [
        -          "array",
        -          "null"
        -        ]
        -      },
        -      "language_code": {
        -        "description": "<em>search engine language code</em><br><strong>required field if you don't specify</strong> <code>language_name</code><br>if you use this field, you don't need to specify <code>language_name</code><br>supported languages:<br><code class=\"long-string\">en</code>, <code>fr</code>, <code>de</code>",
        -        "type": "string"
        -      },
        -      "language_name": {
        -        "description": "<em>full name of search engine language</em><br><strong>required field if you don't specify</strong> <code>language_code</code><br>if you use this field, you don't need to specify <code>language_code</code><br>supported languages:<br><code>English</code>, <code>French</code>, <code>German</code>",
        -        "type": "string"
        -      },
        -      "location_code": {
        -        "description": "<em>search engine location code</em><br><strong>required field if you don't specify</strong> <code>location_name</code> or <code>location_coordinate</code><br><strong>if you use this field, you don't need to specify <code>location_name</code> or <code>location_coordinate</code></strong><br>you can receive the list of available locations of the search engines with their <code>location_code</code> by making a separate request to <code>https://api.dataforseo.com/v3/keywords_data/bing/locations</code><br>example:<br><code class=\"long-string\">2840</code>",
        -        "type": "integer"
        -      },
        -      "location_coordinate": {
        -        "description": "<em>GPS coordinates of a location</em><br><strong>required field if you don't specify</strong> <code>location_name</code> or <code>location_code</code><br><strong>if you use this field, you don't need to specify <code>location_name</code> or <code>location_code</code></strong><br><code>location_coordinate</code> parameter should be specified in the <em>\"latitude,longitude\"</em> format<br><strong>the data will be provided for the country the specified coordinates belong to</strong><br>example:<br><code class=\"long-string\">52.6178549,-155.352142</code>",
        -        "type": "string"
        -      },
        -      "location_name": {
        -        "description": "<em>full name of search engine location</em><br><strong>required field if you don't specify</strong> <code>location_code</code> or <code>location_coordinate</code><br><strong>if you use this field, you don't need to specify <code>location_code</code> or <code>location_coordinate</code></strong><br>you can receive the list of available locations of the search engine with their <code>location_name</code> by making a separate request to <code>https://api.dataforseo.com/v3/keywords_data/bing/locations</code><br>example:<br><code class=\"long-string\">London,England,United Kingdom</code>",
        -        "type": "string"
        -      },
        -      "search_partners": {
        -        "description": "<em>Bing search partners type</em><br>optional field<br>if you specify <code class=\"prettyprint\">true</code>, the results will be delivered for owned, operated, and syndicated networks across Bing, Yahoo, AOL and partner sites that host Bing, AOL, and Yahoo search.<br>default value: <code>false</code> - results are returned for Bing, AOL, and Yahoo search networks",
        -        "type": [
        -          "boolean",
        -          "null"
        -        ]
        -      },
        -      "sort_by": {
        -        "description": "<em>results sorting parameters</em><br>optional field<br>Use these parameters to sort the results by <code>search_volume</code>, <code>cpc</code>, <code>competition</code> or <code>relevance</code> in the descending order<br>default value: <code>relevance</code>",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      },
        -      "tag": {
        -        "description": "<em>user-defined task identifier</em><br>optional field<br><em>the character limit is 255</em><br>you can use this parameter to identify the task and match it with the result<br>you will find the specified <code>tag</code> value in the <code>data</code> object of the response",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      },
        -      "target": {
        -        "description": "<em>domain or URL</em><br><strong>required field</strong><br>the domain name or URL of the target website",
        -        "type": "string"
        -      }
        -    },
        -    "type": "object"
        -  }
        -]
      • addedInput schema / properties / body / items / properties
        Added value: +{
        +  "date_from": {
        +    "description": "starting date of the time range optional field minimal value: 24 months from today's date; if you don't specify this field, data will be provided for the last 12 months; if Status endpoint returns false in the actual_data field, date_from can be set to the month before last and prior; if Status endpoint returns true in the actual_data field, date_from can be set to the last month and prior; date format: \"yyyy-mm-dd\" example: \"2020-01-01\" Note: we do not recommend using a custom time range for the past year's dates",
        +    "type": "string"
        +  },
        +  "date_to": {
        +    "description": "ending date of the time range optional field if you don’t specify this field, data will be provided for the last 12 months; minimum value: two years back from today’s date; maximum value: one month from today’s date; note: we do not recommend using a custom time range for the past year’s dates; date format: \"yyyy-mm-dd\" example: \"2020-03-15\" Note: we do not recommend using a custom time range for the past year’s dates",
        +    "type": "string"
        +  },
        +  "device": {
        +    "description": "device type optional field specify this field if you want to get the data for a particular device typepossible values: all, mobile, desktop, tablet default value: all",
        +    "type": "string"
        +  },
        +  "keywords_negative": {
        +    "description": "keywords negative array optional field These keywords will be ignored in the results array; You can specify a maximum of 200 terms that you want to exclude from the results; the specified keywords will be converted to lowercase format",
        +    "items": {
        +      "type": "string"
        +    },
        +    "type": "array"
        +  },
        +  "language_code": {
        +    "description": "search engine language code required field if you don’t specify language_name if you use this field, you don’t need to specify language_name supported languages: en, fr, de",
        +    "type": "string"
        +  },
        +  "language_name": {
        +    "description": "full name of search engine language required field if you don’t specify language_code if you use this field, you don’t need to specify language_code supported languages: English, French, German",
        +    "type": "string"
        +  },
        +  "location_code": {
        +    "description": "search engine location code required field if you don’t specify location_name or location_coordinate if you use this field, you don’t need to specify location_name or location_coordinate you can receive the list of available locations of the search engines with their location_code by making a separate request to https://api.dataforseo.com/v3/keywords_data/bing/locations example: 2840",
        +    "type": "integer"
        +  },
        +  "location_coordinate": {
        +    "description": "GPS coordinates of a location required field if you don’t specify location_name or location_code if you use this field, you don’t need to specify location_name or location_code location_coordinate parameter should be specified in the “latitude,longitude” format the data will be provided for the country the specified coordinates belong to example: 52.6178549,-155.352142",
        +    "type": "string"
        +  },
        +  "location_name": {
        +    "description": "full name of search engine location required field if you don’t specify location_code or location_coordinate if you use this field, you don’t need to specify location_code or location_coordinate you can receive the list of available locations of the search engine with their location_name by making a separate request to https://api.dataforseo.com/v3/keywords_data/bing/locations example: London,England,United Kingdom",
        +    "type": "string"
        +  },
        +  "search_partners": {
        +    "description": "Bing search partners type optional field if you specify true, the results will be delivered for owned, operated, and syndicated networks across Bing, Yahoo, AOL and partner sites that host Bing, AOL, and Yahoo search. default value: false – results are returned for Bing, AOL, and Yahoo search networks",
        +    "type": "boolean"
        +  },
        +  "sort_by": {
        +    "description": "results sorting parameters optional field Use these parameters to sort the results by search_volume, cpc, competition or relevance in the descending order default value: relevance",
        +    "type": "string"
        +  },
        +  "tag": {
        +    "description": "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",
        +    "type": "string"
        +  },
        +  "target": {
        +    "description": "domain or URL required field the domain name or URL of the target website",
        +    "type": "string"
        +  }
        +}
      • addedInput schema / properties / body / items / required
        Added value: +[
        +  "target"
        +]
      • changedInput schema / properties / body / items / type
        Previous value: -[
        -  "object",
        -  "null"
        -]New value: +"object"
      • changedInput schema / required
        Previous value: -[]New value: +[
        +  "body"
        +]
      • removedOutput schema / x-fastmcp-wrap-result
        Removed value: -true
    • Changedpost_dataforseo_keywords_bing_kw_performance_live8 fields changed
      • removedInput schema / properties / body / example
        Removed value: -[
        -  {
        -    "keywords": [
        -      "dataforseo",
        -      "seo",
        -      "ranking"
        -    ],
        -    "language_code": "en",
        -    "location_code": 2840
        -  }
        -]
      • addedInput schema / properties / body / items / allOf
        Added value: +[
        +  {
        +    "anyOf": [
        +      {
        +        "required": [
        +          "location_name"
        +        ]
        +      },
        +      {
        +        "required": [
        +          "location_code"
        +        ]
        +      },
        +      {
        +        "required": [
        +          "location_coordinate"
        +        ]
        +      }
        +    ]
        +  },
        +  {
        +    "anyOf": [
        +      {
        +        "required": [
        +          "language_name"
        +        ]
        +      },
        +      {
        +        "required": [
        +          "language_code"
        +        ]
        +      }
        +    ]
        +  }
        +]
      • removedInput schema / properties / body / items / anyOf
        Removed value: -[
        -  {
        -    "example": [
        -      {
        -        "keywords": [
        -          "dataforseo",
        -          "seo",
        -          "ranking"
        -        ],
        -        "language_code": "en",
        -        "location_code": 2840
        -      }
        -    ],
        -    "properties": {
        -      "device": {
        -        "description": "<em>device type</em><br>optional field<br>specify this field if you want to get the data for a particular device typepossible values: <code>desktop</code>, <code>mobile</code>, <code>tablet</code>, <code>all</code><br>default value: <code>all</code>",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      },
        -      "keywords": {
        -        "description": "<em>keywords</em><br><strong>required field</strong><br>The maximum number of keywords you can specify: 1000<br>The maximum number of characters for each keyword: 80<br>The maximum number of words for each keyword phrase: 10<br>the specified keywords will be converted to lowercase, data will be provided in a separate array<p>learn more about rules and limitations of <code>keyword</code> and <code>keywords</code> fields in DataForSEO APIs in this <a href=\"https://dataforseo.com/help-center/rules-and-limitations-of-keyword-and-keywords-fields-in-dataforseo-apis\" rel=\"noopener noreferrer\" target=\"_blank\">Help Center article</a>",
        -        "items": {
        -          "type": "string"
        -        },
        -        "type": "array"
        -      },
        -      "language_code": {
        -        "description": "<em>search engine language code</em><br><strong>required field if you don't specify</strong> <code>language_name</code><br>you can receive the list of available locations and languages by making a separate request to <code>https://api.dataforseo.com/v3/keywords_data/bing/keyword_performance/locations_and_languages</code><br>example:<br><code>\"en\"</code>",
        -        "type": "string"
        -      },
        -      "language_name": {
        -        "description": "<em>full name of search engine language</em><br><strong>required field if you don't specify</strong> <code>language_code</code><br><strong>if you use this field, you don't need to specify <code>language_code</code></strong><br>you can receive the list of available locations and languages by making a separate request to <code>https://api.dataforseo.com/v3/keywords_data/bing/keyword_performance/locations_and_languages</code><br>example:<br><code class=\"long-string\">English</code>",
        -        "type": "string"
        -      },
        -      "location_code": {
        -        "description": "<em>search engine location code</em><br><strong>required field if you don't specify</strong> <code>location_name</code> or <code>location_coordinate</code><br><strong>if you use this field, you don't need to specify <code>location_name</code> or <code>location_coordinate</code></strong><br>you can receive the list of available locations and languages by making a separate request to <code>https://api.dataforseo.com/v3/keywords_data/bing/keyword_performance/locations_and_languages</code><br>example:<br><code>2840</code>",
        -        "type": "integer"
        -      },
        -      "location_coordinate": {
        -        "description": "<em>GPS coordinates of a location</em><br><strong>required field if you don't specify</strong> <code>location_name</code> or <code>location_code</code><br><strong>if you use this field, you don't need to specify <code>location_name</code> or <code>location_code</code></strong><br><code>location_coordinate</code> parameter should be specified in the <em>\"latitude,longitude\"</em> format<br><strong>the data will be provided for the country the specified coordinates belong to</strong><br>example:<br><code class=\"long-string\">52.6178549,-155.352142</code>",
        -        "type": "string"
        -      },
        -      "location_name": {
        -        "description": "<em>full name of search engine location</em><br><strong>required field if you don't specify</strong> <code>location_code</code> or <code>location_coordinate</code><br><strong>if you use this field, you don't need to specify <code>location_code</code> or <code>location_coordinate</code></strong><br>you can receive the list of available locations and languages by making a separate request to <code>https://api.dataforseo.com/v3/keywords_data/bing/keyword_performance/locations_and_languages</code><br>example:<br><code>\"United States\"</code>",
        -        "type": "string"
        -      },
        -      "match": {
        -        "description": "<em>keywords match type</em><br>optional field<br>can take the following values:<br><code>aggregate</code> returns data across all match types;<br><code>broad</code> returns data for all user queries containing the specified keyword with varying word order;<br><code>phrase</code> returns data for all user queries containing the specified keyword with identical word order;<br><code>exact</code> returns data for user query that matches the specified keyword;<strong>Note:</strong> the <code>aggregate</code> match type is applied by default",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      },
        -      "tag": {
        -        "description": "<em>user-defined task identifier</em><br>optional field<br><em>the character limit is 255</em><br>you can use this parameter to identify the task and match it with the result<br>you will find the specified <code>tag</code> value in the <code>data</code> object of the response",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      }
        -    },
        -    "type": "object"
        -  }
        -]
      • addedInput schema / properties / body / items / properties
        Added value: +{
        +  "device": {
        +    "description": "device type optional field specify this field if you want to get the data for a particular device typepossible values: desktop, mobile, tablet, all default value: all",
        +    "type": "string"
        +  },
        +  "keywords": {
        +    "description": "keywords required field The maximum number of keywords you can specify: 1000 The maximum number of characters for each keyword: 80 The maximum number of words for each keyword phrase: 10 the specified keywords will be converted to lowercase, data will be provided in a separate array learn more about rules and limitations of keyword and keywords fields in DataForSEO APIs in this Help Center article",
        +    "items": {
        +      "type": "string"
        +    },
        +    "type": "array"
        +  },
        +  "language_code": {
        +    "description": "search engine language code required field if you don’t specify language_name you can receive the list of available locations and languages by making a separate request to https://api.dataforseo.com/v3/keywords_data/bing/keyword_performance/locations_and_languages example: \"en\"",
        +    "type": "string"
        +  },
        +  "language_name": {
        +    "description": "full name of search engine language required field if you don’t specify language_code if you use this field, you don’t need to specify language_code you can receive the list of available locations and languages by making a separate request to https://api.dataforseo.com/v3/keywords_data/bing/keyword_performance/locations_and_languages example: English",
        +    "type": "string"
        +  },
        +  "location_code": {
        +    "description": "search engine location code required field if you don’t specify location_name or location_coordinate if you use this field, you don’t need to specify location_name or location_coordinate you can receive the list of available locations and languages by making a separate request to https://api.dataforseo.com/v3/keywords_data/bing/keyword_performance/locations_and_languages example: 2840",
        +    "type": "integer"
        +  },
        +  "location_coordinate": {
        +    "description": "GPS coordinates of a location required field if you don’t specify location_name or location_code if you use this field, you don’t need to specify location_name or location_code location_coordinate parameter should be specified in the “latitude,longitude” format the data will be provided for the country the specified coordinates belong to example: 52.6178549,-155.352142",
        +    "type": "string"
        +  },
        +  "location_name": {
        +    "description": "full name of search engine location required field if you don’t specify location_code or location_coordinate if you use this field, you don’t need to specify location_code or location_coordinate you can receive the list of available locations and languages by making a separate request to https://api.dataforseo.com/v3/keywords_data/bing/keyword_performance/locations_and_languages example: \"United States\"",
        +    "type": "string"
        +  },
        +  "match": {
        +    "description": "keywords match type optional field can take the following values: aggregate returns data across all match types; broad returns data for all user queries containing the specified keyword with varying word order; phrase returns data for all user queries containing the specified keyword with identical word order; exact returns data for user query that matches the specified keyword;Note: the aggregate match type is applied by default",
        +    "type": "string"
        +  },
        +  "tag": {
        +    "description": "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",
        +    "type": "string"
        +  }
        +}
      • addedInput schema / properties / body / items / required
        Added value: +[
        +  "keywords"
        +]
      • changedInput schema / properties / body / items / type
        Previous value: -[
        -  "object",
        -  "null"
        -]New value: +"object"
      • changedInput schema / required
        Previous value: -[]New value: +[
        +  "body"
        +]
      • removedOutput schema / x-fastmcp-wrap-result
        Removed value: -true
    • Changedpost_dataforseo_keywords_bing_search_volume_live8 fields changed
      • removedInput schema / properties / body / example
        Removed value: -[
        -  {
        -    "keywords": [
        -      "tom and jerry",
        -      "silicon valley",
        -      "spider man"
        -    ],
        -    "language_code": "en",
        -    "location_name": "United States"
        -  }
        -]
      • addedInput schema / properties / body / items / allOf
        Added value: +[
        +  {
        +    "anyOf": [
        +      {
        +        "required": [
        +          "location_name"
        +        ]
        +      },
        +      {
        +        "required": [
        +          "location_code"
        +        ]
        +      },
        +      {
        +        "required": [
        +          "location_coordinate"
        +        ]
        +      }
        +    ]
        +  },
        +  {
        +    "anyOf": [
        +      {
        +        "required": [
        +          "language_name"
        +        ]
        +      },
        +      {
        +        "required": [
        +          "language_code"
        +        ]
        +      }
        +    ]
        +  }
        +]
      • removedInput schema / properties / body / items / anyOf
        Removed value: -[
        -  {
        -    "example": [
        -      {
        -        "keywords": [
        -          "tom and jerry",
        -          "silicon valley",
        -          "spider man"
        -        ],
        -        "language_code": "en",
        -        "location_name": "United States"
        -      }
        -    ],
        -    "properties": {
        -      "date_from": {
        -        "description": "<em>starting date of the time range</em><br>optional field<br>minimal value: 24 months from today's date;<br>if you don't specify this field, data will be provided for the last 12 months;<br>minimum value: two years back from today’s date;<br>if <a href=\"/v3/keywords_data/bing/status/\" target=\"_blank\" rel=\"noopener noreferrer\">Status endpoint</a> returns <code>false</code> in the <code>actual_data</code> field, <code>date_from</code> can be set to the month before last and prior;<br>if <a href=\"/v3/keywords_data/bing/status/\" target=\"_blank\" rel=\"noopener noreferrer\">Status endpoint</a> returns <code>true</code> in the <code>actual_data</code> field, <code>date_from</code> can be set to the last month and prior;<br>date format: <code>\"yyyy-mm-dd\"</code><br>example:<br><code>\"2020-01-01\"</code><strong>Note:</strong> we do not recommend using a custom time range for the past year's dates",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      },
        -      "date_to": {
        -        "description": "<em>ending date of the time range</em><br>optional field<br>if you don't specify this field, data will be provided for the last 12 months;<br>minimum value: two years back from today’s date;<br>maximum value: one month from today's date;<br><strong>note:</strong> we do not recommend using a custom time range for the past year's dates;<br>date format: <code>\"yyyy-mm-dd\"</code><br>example:<br><code>\"2020-03-15\"</code><strong>Note:</strong> we do not recommend using a custom time range for the past year's dates",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      },
        -      "device": {
        -        "description": "<em>device type</em><br>optional field<br>specify this field if you want to get the data for a particular device type;<br>possible values: <code>all</code>, <code>mobile</code>, <code>desktop</code>, <code>tablet</code><br>default value: <code>all</code>",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      },
        -      "keywords": {
        -        "description": "<em>keywords</em><br><strong>required field</strong><br>The maximum number of keywords you can specify: 1000<br>The maximum number of characters for each keyword: 100<br>the specified keywords will be converted to lowercase, data will be provided in a separate arraylearn more about rules and limitations of <code>keyword</code> and <code>keywords</code> fields in DataForSEO APIs in this <a href=\"https://dataforseo.com/help-center/rules-and-limitations-of-keyword-and-keywords-fields-in-dataforseo-apis\" target=\"_blank\" rel=\"noopener noreferrer\">Help Center article</a>",
        -        "items": {
        -          "type": "string"
        -        },
        -        "type": "array"
        -      },
        -      "language_code": {
        -        "description": "<em>search engine language code</em><br><strong>required field if you don't specify</strong> <code>language_name</code><br>if you use this field, you don't need to specify <code>language_name</code><br>supported languages:<br><code class=\"long-string\">en</code>, <code>fr</code>, <code>de</code>",
        -        "type": "string"
        -      },
        -      "language_name": {
        -        "description": "<em>full name of search engine language</em><br><strong>required field if you don't specify</strong> <code>language_code</code><br>if you use this field, you don't need to specify <code>language_code</code><br>supported languages:<br><code>English</code>, <code>French</code>, <code>German</code>",
        -        "type": "string"
        -      },
        -      "location_code": {
        -        "description": "<em>search engine location code</em><br><strong>required field if you don't specify</strong> <code>location_name</code> or <code>location_coordinate</code><br><strong>if you use this field, you don't need to specify <code>location_name</code> or <code>location_coordinate</code></strong><br>you can receive the list of available locations of the search engines with their <code>location_code</code> by making a separate request to <code>https://api.dataforseo.com/v3/keywords_data/bing/locations</code><br>example:<br><code class=\"long-string\">2840</code>",
        -        "type": "integer"
        -      },
        -      "location_coordinate": {
        -        "description": "<em>GPS coordinates of a location</em><br><strong>required field if you don't specify</strong> <code>location_name</code> or <code>location_code</code><br><strong>if you use this field, you don't need to specify <code>location_name</code> or <code>location_code</code></strong><br><code>location_coordinate</code> parameter should be specified in the <em>\"latitude,longitude\"</em> format<br><strong>the data will be provided for the country the specified coordinates belong to</strong><br>example:<br><code class=\"long-string\">52.6178549,-155.352142</code>",
        -        "type": "string"
        -      },
        -      "location_name": {
        -        "description": "<em>full name of search engine location</em><br><strong>required field if you don't specify</strong> <code>location_code</code> or <code>location_coordinate</code><br><strong>if you use this field, you don't need to specify <code>location_code</code> or <code>location_coordinate</code></strong><br>you can receive the list of available locations of the search engine with their <code>location_name</code> by making a separate request to <code>https://api.dataforseo.com/v3/keywords_data/bing/locations</code><br>example:<br><code class=\"long-string\">London,England,United Kingdom</code>",
        -        "type": "string"
        -      },
        -      "search_partners": {
        -        "description": "<em>Bing search partners type</em><br>optional field<br>if you specify <code class=\"prettyprint\">true</code>, the results will be delivered for owned, operated, and syndicated networks across Bing, Yahoo, AOL and partner sites that host Bing, AOL, and Yahoo search.<br>default value: <code>false</code> - results are returned for Bing, AOL, and Yahoo search networks",
        -        "type": [
        -          "boolean",
        -          "null"
        -        ]
        -      },
        -      "sort_by": {
        -        "description": "<em>results sorting parameters</em><br>optional field<br>Use these parameters to sort the results by <code>search_volume</code>, <code>cpc</code>, <code>competition</code> or <code>relevance</code> in the descending order<br>default value: <code>relevance</code>",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      },
        -      "tag": {
        -        "description": "<em>user-defined task identifier</em><br>optional field<br><em>the character limit is 255</em><br>you can use this parameter to identify the task and match it with the result<br>you will find the specified <code>tag</code> value in the <code>data</code> object of the response",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      }
        -    },
        -    "type": "object"
        -  }
        -]
      • addedInput schema / properties / body / items / properties
        Added value: +{
        +  "date_from": {
        +    "description": "starting date of the time range optional field minimal value: 24 months from today's date; if you don't specify this field, data will be provided for the last 12 months; minimum value: two years back from today’s date; if Status endpoint returns false in the actual_data field, date_from can be set to the month before last and prior; if Status endpoint returns true in the actual_data field, date_from can be set to the last month and prior; date format: \"yyyy-mm-dd\" example: \"2020-01-01\"Note: we do not recommend using a custom time range for the past year's dates",
        +    "type": "string"
        +  },
        +  "date_to": {
        +    "description": "ending date of the time range optional field if you don’t specify this field, data will be provided for the last 12 months; minimum value: two years back from today’s date; maximum value: one month from today’s date; note: we do not recommend using a custom time range for the past year’s dates; date format: \"yyyy-mm-dd\" example: \"2020-03-15\" Note: we do not recommend using a custom time range for the past year’s dates",
        +    "type": "string"
        +  },
        +  "device": {
        +    "description": "device type optional field specify this field if you want to get the data for a particular device type; possible values: all, mobile, desktop, tablet default value: all",
        +    "type": "string"
        +  },
        +  "keywords": {
        +    "description": "keywords required field The maximum number of keywords you can specify: 1000 The maximum number of characters for each keyword: 100 the specified keywords will be converted to lowercase, data will be provided in a separate array learn more about rules and limitations of keyword and keywords fields in DataForSEO APIs in this Help Center article",
        +    "items": {
        +      "type": "string"
        +    },
        +    "type": "array"
        +  },
        +  "language_code": {
        +    "description": "search engine language code required field if you don’t specify language_name if you use this field, you don’t need to specify language_name supported languages: en, fr, de",
        +    "type": "string"
        +  },
        +  "language_name": {
        +    "description": "full name of search engine language required field if you don’t specify language_code if you use this field, you don’t need to specify language_code supported languages: English, French, German",
        +    "type": "string"
        +  },
        +  "location_code": {
        +    "description": "search engine location code required field if you don’t specify location_name or location_coordinate if you use this field, you don’t need to specify location_name or location_coordinate you can receive the list of available locations of the search engines with their location_code by making a separate request to https://api.dataforseo.com/v3/keywords_data/bing/locations example: 2840",
        +    "type": "integer"
        +  },
        +  "location_coordinate": {
        +    "description": "GPS coordinates of a location required field if you don’t specify location_name or location_code if you use this field, you don’t need to specify location_name or location_code location_coordinate parameter should be specified in the “latitude,longitude” format the data will be provided for the country the specified coordinates belong to example: 52.6178549,-155.352142",
        +    "type": "string"
        +  },
        +  "location_name": {
        +    "description": "full name of search engine location required field if you don’t specify location_code or location_coordinate if you use this field, you don’t need to specify location_code or location_coordinate you can receive the list of available locations of the search engine with their location_name by making a separate request to https://api.dataforseo.com/v3/keywords_data/bing/locations example: London,England,United Kingdom",
        +    "type": "string"
        +  },
        +  "search_partners": {
        +    "description": "Bing search partners type optional field if you specify true, the results will be delivered for owned, operated, and syndicated networks across Bing, Yahoo, AOL and partner sites that host Bing, AOL, and Yahoo search. default value: false – results are returned for Bing, AOL, and Yahoo search networks",
        +    "type": "boolean"
        +  },
        +  "sort_by": {
        +    "description": "results sorting parameters optional field Use these parameters to sort the results by search_volume, cpc, competition or relevance in the descending order default value: relevance",
        +    "type": "string"
        +  },
        +  "tag": {
        +    "description": "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",
        +    "type": "string"
        +  }
        +}
      • addedInput schema / properties / body / items / required
        Added value: +[
        +  "keywords"
        +]
      • changedInput schema / properties / body / items / type
        Previous value: -[
        -  "object",
        -  "null"
        -]New value: +"object"
      • changedInput schema / required
        Previous value: -[]New value: +[
        +  "body"
        +]
      • removedOutput schema / x-fastmcp-wrap-result
        Removed value: -true
    • Changedpost_dataforseo_keywords_clickstream_bulk_volume_live8 fields changed
      • removedInput schema / properties / body / example
        Removed value: -[
        -  {
        -    "keywords": [
        -      "you tube",
        -      "youtube",
        -      "youtub"
        -    ],
        -    "location_code": 2840,
        -    "tag": "test-tag"
        -  }
        -]
      • addedInput schema / properties / body / items / allOf
        Added value: +[
        +  {
        +    "anyOf": [
        +      {
        +        "required": [
        +          "location_name"
        +        ]
        +      },
        +      {
        +        "required": [
        +          "location_code"
        +        ]
        +      }
        +    ]
        +  }
        +]
      • removedInput schema / properties / body / items / anyOf
        Removed value: -[
        -  {
        -    "example": [
        -      {
        -        "keywords": [
        -          "you tube",
        -          "youtube",
        -          "youtub"
        -        ],
        -        "location_code": 2840,
        -        "tag": "test-tag"
        -      }
        -    ],
        -    "properties": {
        -      "keywords": {
        -        "description": "<em>target keywords</em><br><strong>required field</strong><br>UTF-8 encoding<br>maximum number of keywords you can specify in this array: 1000;<br>each keyword should be at least 3 characters long;<br>the keywords will be converted to lowercase format;<br><strong>Note:</strong> certain symbols and characters (e.g., UTF symbols, emojis) are not allowed<br>to learn more about which symbols and characters can be used, please refer to <a href=\"https://dataforseo.com/help-center/using-symbols-in-keywords-when-setting-a-google-ads-task\" target=\"_blank\" rel=\"noopener noreferrer\">this article</a><p>learn more about rules and limitations of <code>keyword</code> and <code>keywords</code> fields in DataForSEO APIs in this <a href=\"https://dataforseo.com/help-center/rules-and-limitations-of-keyword-and-keywords-fields-in-dataforseo-apis\" rel=\"noopener noreferrer\" target=\"_blank\">Help Center article</a>",
        -        "items": {
        -          "type": "string"
        -        },
        -        "type": "array"
        -      },
        -      "location_code": {
        -        "description": "<em>location code</em><br><strong>required field if you don't specify</strong> <code>location_name</code><br><strong>Note:</strong> it is required to specify either <code>location_name</code> or <code>location_code</code><br>you can receive the list of available locations with their <code>location_code</code> by making a separate request to the <br><code>https://api.dataforseo.com/v3/keywords_data/clickstream_data/locations_and_languages</code><br>example:<br><code class=\"long-string\">2840</code>",
        -        "type": "integer"
        -      },
        -      "location_name": {
        -        "description": "<em>full name of the location</em><br><strong>required field if you don't specify</strong> <code>location_code</code><br><strong>Note:</strong> it is required to specify either <code>location_name</code> or <code>location_code</code><br>you can receive the list of available locations with their <code>location_name</code> by making a separate request to the <br><code>https://api.dataforseo.com/v3/keywords_data/clickstream_data/locations_and_languages</code><br>example:<br><code class=\"long-string\">United Kingdom</code>",
        -        "type": "string"
        -      },
        -      "tag": {
        -        "description": "<em>user-defined task identifier</em><br>optional field<br><em>the character limit is 255</em><br>you can use this parameter to identify the task and match it with the result<br>you will find the specified <code>tag</code> value in the <code>data</code> object of the response",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      }
        -    },
        -    "type": "object"
        -  }
        -]
      • addedInput schema / properties / body / items / properties
        Added value: +{
        +  "keywords": {
        +    "description": "target keywords required field UTF-8 encoding maximum number of keywords you can specify in this array: 1000; each keyword should be at least 3 characters long; the keywords will be converted to lowercase format; Note: certain symbols and characters (e.g., UTF symbols, emojis) are not allowed to learn more about which symbols and characters can be used, please refer to this article learn more about rules and limitations of keyword and keywords fields in DataForSEO APIs in this Help Center article",
        +    "items": {
        +      "type": "string"
        +    },
        +    "type": "array"
        +  },
        +  "location_code": {
        +    "description": "location code required field if you don’t specify location_name Note: it is required to specify either location_name or location_code you can receive the list of available locations with their location_code by making a separate request to the https://api.dataforseo.com/v3/keywords_data/clickstream_data/locations_and_languages example: 2840",
        +    "type": "integer"
        +  },
        +  "location_name": {
        +    "description": "full name of the location required field if you don’t specify location_code Note: it is required to specify either location_name or location_code you can receive the list of available locations with their location_name by making a separate request to the https://api.dataforseo.com/v3/keywords_data/clickstream_data/locations_and_languages example: United Kingdom",
        +    "type": "string"
        +  },
        +  "tag": {
        +    "description": "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",
        +    "type": "string"
        +  }
        +}
      • addedInput schema / properties / body / items / required
        Added value: +[
        +  "keywords"
        +]
      • changedInput schema / properties / body / items / type
        Previous value: -[
        -  "object",
        -  "null"
        -]New value: +"object"
      • changedInput schema / required
        Previous value: -[]New value: +[
        +  "body"
        +]
      • removedOutput schema / x-fastmcp-wrap-result
        Removed value: -true
    • Changedpost_dataforseo_keywords_clickstream_global_volume_live7 fields changed
      • removedInput schema / properties / body / example
        Removed value: -[
        -  {
        -    "keywords": [
        -      "you tube",
        -      "youtube",
        -      "youtub"
        -    ],
        -    "tag": "test-tag"
        -  }
        -]
      • removedInput schema / properties / body / items / anyOf
        Removed value: -[
        -  {
        -    "example": [
        -      {
        -        "keywords": [
        -          "you tube",
        -          "youtube",
        -          "youtub"
        -        ],
        -        "tag": "test-tag"
        -      }
        -    ],
        -    "properties": {
        -      "keywords": {
        -        "description": "<em>target keywords</em><br><strong>required field</strong><br>UTF-8 encoding<br>maximum number of keywords you can specify in this array: 1000;<br>each keyword should be at least 3 characters long;<br>the keywords will be converted to lowercase format;<br><strong>Note:</strong> certain symbols and characters (e.g., UTF symbols, emojis) are not allowed<br>to learn more about which symbols and characters can be used, please refer to <a href=\"https://dataforseo.com/help-center/using-symbols-in-keywords-when-setting-a-google-ads-task\" target=\"_blank\" rel=\"noopener noreferrer\">this article</a><p>learn more about rules and limitations of <code>keyword</code> and <code>keywords</code> fields in DataForSEO APIs in this <a href=\"https://dataforseo.com/help-center/rules-and-limitations-of-keyword-and-keywords-fields-in-dataforseo-apis\" rel=\"noopener noreferrer\" target=\"_blank\">Help Center article</a>",
        -        "items": {
        -          "type": "string"
        -        },
        -        "type": "array"
        -      },
        -      "tag": {
        -        "description": "<em>user-defined task identifier</em><br>optional field<br><em>the character limit is 255</em><br>you can use this parameter to identify the task and match it with the result<br>you will find the specified <code>tag</code> value in the <code>data</code> object of the response",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      }
        -    },
        -    "type": "object"
        -  }
        -]
      • addedInput schema / properties / body / items / properties
        Added value: +{
        +  "keywords": {
        +    "description": "target keywords required field UTF-8 encoding maximum number of keywords you can specify in this array: 1000; each keyword should be at least 3 characters long; the keywords will be converted to lowercase format; Note: certain symbols and characters (e.g., UTF symbols, emojis) are not allowed to learn more about which symbols and characters can be used, please refer to this article learn more about rules and limitations of keyword and keywords fields in DataForSEO APIs in this Help Center article",
        +    "items": {
        +      "type": "string"
        +    },
        +    "type": "array"
        +  },
        +  "tag": {
        +    "description": "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",
        +    "type": "string"
        +  }
        +}
      • addedInput schema / properties / body / items / required
        Added value: +[
        +  "keywords"
        +]
      • changedInput schema / properties / body / items / type
        Previous value: -[
        -  "object",
        -  "null"
        -]New value: +"object"
      • changedInput schema / required
        Previous value: -[]New value: +[
        +  "body"
        +]
      • removedOutput schema / x-fastmcp-wrap-result
        Removed value: -true
    • Changedpost_dataforseo_keywords_clickstream_search_volume_live8 fields changed
      • removedInput schema / properties / body / example
        Removed value: -[
        -  {
        -    "keywords": [
        -      "you tube",
        -      "youtube",
        -      "youtub"
        -    ],
        -    "language_code": "en",
        -    "location_code": 2840,
        -    "tag": "test-tag"
        -  }
        -]
      • addedInput schema / properties / body / items / allOf
        Added value: +[
        +  {
        +    "anyOf": [
        +      {
        +        "required": [
        +          "location_name"
        +        ]
        +      },
        +      {
        +        "required": [
        +          "location_code"
        +        ]
        +      }
        +    ]
        +  },
        +  {
        +    "anyOf": [
        +      {
        +        "required": [
        +          "language_name"
        +        ]
        +      },
        +      {
        +        "required": [
        +          "language_code"
        +        ]
        +      }
        +    ]
        +  }
        +]
      • removedInput schema / properties / body / items / anyOf
        Removed value: -[
        -  {
        -    "example": [
        -      {
        -        "keywords": [
        -          "you tube",
        -          "youtube",
        -          "youtub"
        -        ],
        -        "language_code": "en",
        -        "location_code": 2840,
        -        "tag": "test-tag"
        -      }
        -    ],
        -    "properties": {
        -      "keywords": {
        -        "description": "<em>target keywords</em><br><strong>required field</strong><br>UTF-8 encoding<br>maximum number of keywords you can specify in this array: 1000<br>the keywords will be converted to lowercase format<p><strong>Note:</strong> certain symbols and characters (e.g., UTF symbols, emojis) are not allowed<br>to learn more about which symbols and characters can be used, please refer to <a href=\"https://dataforseo.com/help-center/using-symbols-in-keywords-when-setting-a-google-ads-task\" target=\"_blank\" rel=\"noopener noreferrer\">this article</a><p>learn more about rules and limitations of <code>keyword</code> and <code>keywords</code> fields in DataForSEO APIs in this <a href=\"https://dataforseo.com/help-center/rules-and-limitations-of-keyword-and-keywords-fields-in-dataforseo-apis\" rel=\"noopener noreferrer\" target=\"_blank\">Help Center article</a>",
        -        "items": {
        -          "type": "string"
        -        },
        -        "type": "array"
        -      },
        -      "language_code": {
        -        "description": "<em>search engine language code</em><br><strong>required field if don’t specify <code>language_name</code></strong><br>you can receive the list of available languages with their <code>language_code</code> by making a separate request to the <code>https://api.dataforseo.com/v3/keywords_data/clickstream_data/locations_and_languages</code><br>example:<br><code class=\"long-string\">en</code>",
        -        "type": "string"
        -      },
        -      "language_name": {
        -        "description": "<em>full name of search engine language</em><br><strong>required field if don’t specify <code>language_code</code></strong><br>you can receive the list of available languages with their <code>language_name</code> by making a separate request to the <code>https://api.dataforseo.com/v3/keywords_data/clickstream_data/locations_and_languages</code><br>example:<br><code class=\"long-string\">English</code>",
        -        "type": "string"
        -      },
        -      "location_code": {
        -        "description": "<em>search engine location code</em><br><strong>required field if you don’t specify <code>location_name</code></strong><br>if you use this field, you can receive the list of available locations with <code>location_code</code> by making a separate request to the <code>https://api.dataforseo.com/v3/keywords_data/clickstream_data/locations_and_languages</code><br>example:<br><code class=\"long-string\">2826</code>",
        -        "type": "integer"
        -      },
        -      "location_name": {
        -        "description": "<em>full name of search engine location</em><br><strong>required field if you don’t specify <code>location_code </code></strong><br>you can receive the list of available locations with <code>location_name</code> by making a separate request to <code>https://api.dataforseo.com/v3/keywords_data/clickstream_data/locations_and_languages</code><br>example:<br><code class=\"long-string\">United Kingdom</code>",
        -        "type": "string"
        -      },
        -      "tag": {
        -        "description": "<em>user-defined task identifier</em><br>optional field<br><em>the character limit is 255</em><br>you can use this parameter to identify the task and match it with the result<br>you will find the specified <code>tag</code> value in the <code>data</code> object of the response",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      },
        -      "use_clickstream": {
        -        "description": "<em>use clickstream data to provide results</em><br>optional field<br>if set to <code>true</code>, you will get DataForSEO search volume values based on clickstream data;<br>if set to <code>false</code>, Bing search volume data will be used to calculate DataForSEO search volume;<br>default value: <code>true</code>;<br><strong>Note:</strong> Bing search volume is available for locations provided in <a href=\"https://docs.dataforseo.com/v3/keywords_data/bing/search_volume_history/locations_and_languages/?bash\" rel=\"noopener noreferrer\" target=\"_blank\">Bing Search Volume History Locations</a> and <a href=\"https://docs.dataforseo.com/v3/keywords_data/bing/locations/?bash\" rel=\"noopener noreferrer\" target=\"_blank\">Bing Ads Locations</a> endpoints; search volume values for any other location are calculated based on clickstream data even if you set this parameter to <code>false</code>",
        -        "type": [
        -          "boolean",
        -          "null"
        -        ]
        -      }
        -    },
        -    "type": "object"
        -  }
        -]
      • addedInput schema / properties / body / items / properties
        Added value: +{
        +  "keywords": {
        +    "description": "target keywords required field UTF-8 encoding maximum number of keywords you can specify in this array: 1000 the keywords will be converted to lowercase format Note: certain symbols and characters (e.g., UTF symbols, emojis) are not allowed to learn more about which symbols and characters can be used, please refer to this article learn more about rules and limitations of keyword and keywords fields in DataForSEO APIs in this Help Center article",
        +    "items": {
        +      "type": "string"
        +    },
        +    "type": "array"
        +  },
        +  "language_code": {
        +    "description": "search engine language code required field if don’t specify language_name you can receive the list of available languages with their language_code by making a separate request to the https://api.dataforseo.com/v3/keywords_data/clickstream_data/locations_and_languages example: en",
        +    "type": "string"
        +  },
        +  "language_name": {
        +    "description": "full name of search engine language required field if don’t specify language_code you can receive the list of available languages with their language_name by making a separate request to the https://api.dataforseo.com/v3/keywords_data/clickstream_data/locations_and_languages example: English",
        +    "type": "string"
        +  },
        +  "location_code": {
        +    "description": "search engine location code required field if you don’t specify location_name if you use this field, you can receive the list of available locations with location_code by making a separate request to the https://api.dataforseo.com/v3/keywords_data/clickstream_data/locations_and_languages example: 2826",
        +    "type": "integer"
        +  },
        +  "location_name": {
        +    "description": "full name of search engine location required field if you don’t specify location_code you can receive the list of available locations with location_name by making a separate request to https://api.dataforseo.com/v3/keywords_data/clickstream_data/locations_and_languages example: United Kingdom",
        +    "type": "string"
        +  },
        +  "tag": {
        +    "description": "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",
        +    "type": "string"
        +  },
        +  "use_clickstream": {
        +    "description": "use clickstream data to provide results optional field if set to true, you will get DataForSEO search volume values based on clickstream data; if set to false, Bing search volume data will be used to calculate DataForSEO search volume; default value: true; Note: Bing search volume is available for locations provided in Bing Search Volume History Locations and Bing Ads Locations endpoints; search volume values for any other location are calculated based on clickstream data even if you set this parameter to false",
        +    "type": "boolean"
        +  }
        +}
      • addedInput schema / properties / body / items / required
        Added value: +[
        +  "keywords"
        +]
      • changedInput schema / properties / body / items / type
        Previous value: -[
        -  "object",
        -  "null"
        -]New value: +"object"
      • changedInput schema / required
        Previous value: -[]New value: +[
        +  "body"
        +]
      • removedOutput schema / x-fastmcp-wrap-result
        Removed value: -true
    • Changedpost_dataforseo_keywords_gads_ad_traffic_submit8 fields changed
      • removedInput schema / properties / body / example
        Removed value: -[
        -  {
        -    "bid": 999,
        -    "keywords": [
        -      "seo marketing"
        -    ],
        -    "language_code": "en",
        -    "location_code": 2840,
        -    "match": "exact"
        -  }
        -]
      • addedInput schema / properties / body / items / allOf
        Added value: +[
        +  {
        +    "anyOf": [
        +      {
        +        "required": [
        +          "date_from",
        +          "date_to"
        +        ]
        +      },
        +      {
        +        "not": {
        +          "anyOf": [
        +            {
        +              "required": [
        +                "date_from"
        +              ]
        +            },
        +            {
        +              "required": [
        +                "date_to"
        +              ]
        +            }
        +          ]
        +        }
        +      }
        +    ]
        +  }
        +]
      • removedInput schema / properties / body / items / anyOf
        Removed value: -[
        -  {
        -    "example": [
        -      {
        -        "bid": 999,
        -        "keywords": [
        -          "seo marketing"
        -        ],
        -        "language_code": "en",
        -        "location_code": 2840,
        -        "match": "exact"
        -      }
        -    ],
        -    "properties": {
        -      "bid": {
        -        "description": "<em>the maximum custom bid</em><br><strong>required field</strong><br>the collected data will be based on this value<br>it stands for the price you are willing to pay for an ad; the higher value you specify here, the higher values you will get in the returned metrics<br>learn more in <a href=\"https://dataforseo.com/help-center/configuring-bid\">this help center article</a>",
        -        "type": "number"
        -      },
        -      "date_from": {
        -        "description": "<em>starting date of the forecasting time range</em><br>required field if you specify <code>date_to</code><br><strong>if you indicate <code>date_from</code> and <code>date_to</code>, you don't need to specify <code>date_interval</code></strong><br>minimum value is tomorrow's date<br>the value you specify in <code>date_from</code> shouldn't be further than <code>date_to</code><br>date format: <code>\"yyyy-mm-dd\"</code><br>example:<br><code>\"2021-10-30\"</code>if <a href=\"/v3/keywords_data/google_ads/status/\" target=\"_blank\" rel=\"noopener noreferrer\">Status endpoint</a> returns <code>false</code> in the <code>actual_data</code> field, <code>date_from</code> can be set to the month before last and prior;<br>if <a href=\"/v3/keywords_data/google_ads/status/\" target=\"_blank\" rel=\"noopener noreferrer\">Status endpoint</a> returns <code>true</code> in the <code>actual_data</code> field, <code>date_from</code> can be set to the last month and prior",
        -        "type": "string"
        -      },
        -      "date_interval": {
        -        "description": "<em>forecasting date interval</em><br>optional field<br><strong>if you specify <code>date_interval</code>, you don't need to indicate <code>date_from</code> and <code>date_to</code></strong><br>possible values: <code>next_week</code>, <code>next_month</code>, <code>next_quarter</code><br>default value: <code>next_month</code>",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      },
        -      "date_to": {
        -        "description": "<em>ending date of the forecasting time range</em><br>required field if you specify <code>date_from</code><br><strong>if you indicate <code>date_from</code> and <code>date_to</code>, you don't need to specify <code>date_interval</code></strong><br>minimum value is <code>date_from</code> +1 day<br>maximum value is current day and month of the next year<br>date format: <code>\"yyyy-mm-dd\"</code><br>example:<br><code>\"2022-10-30\"</code>",
        -        "type": "string"
        -      },
        -      "keywords": {
        -        "description": "<em>keywords</em><br><strong>required field</strong><br>The maximum number of keywords you can specify: 1000<br>The maximum number of characters for each keyword: 80<br>The maximum number of words for each keyword phrase: 10<br>the keywords you specify will be converted to a lowercase format<br><strong>Note #1:</strong> <a href=\"https://dataforseo.com/help-center/no-search-volume-data-for-some-keywords\" target=\"_blank\" rel=\"noopener noreferrer\">Google Ads may return no data for certain groups of keywords</a>;<br><strong>Note #2:</strong> <a href=\"https://dataforseo.com/help-center/sv-broad-exact-phrase-match\" target=\"_blank\" rel=\"noopener noreferrer\">Google Ads provides combined search volume values for groups of similar keywords</a><br>to obtain search volume for similar keywords, we recommend submitting such keywords in separate requests;<br><strong>Note #3:</strong> Google Ads doesn't allow using certain symbols and characters (e.g., UTF symbols, emojis), so you can't use them when setting a task;<br>to learn more about which symbols and characters can be used, please refer to <a href=\"https://dataforseo.com/help-center/using-symbols-in-keywords-when-setting-a-google-ads-task\" target=\"_blank\" rel=\"noopener noreferrer\">this article</a><p>learn more about rules and limitations of <code>keyword</code> and <code>keywords</code> fields in DataForSEO APIs in this <a href=\"https://dataforseo.com/help-center/rules-and-limitations-of-keyword-and-keywords-fields-in-dataforseo-apis\" rel=\"noopener noreferrer\" target=\"_blank\">Help Center article</a>",
        -        "items": {
        -          "type": "string"
        -        },
        -        "type": "array"
        -      },
        -      "language_code": {
        -        "description": "<em>search engine language code</em><br>optional field<br>you can receive the list of available languages of the search engine with their <code>language_code</code> by making a separate request to <code>https://api.dataforseo.com/v3/keywords_data/google_ads/languages</code><br>example:<br><code class=\"long-string\">en</code>",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      },
        -      "language_name": {
        -        "description": "<em>full name of search engine language</em><br>optional field<br>you can receive the list of available languages of the search engine with their <code>language_name</code> by making a separate request to <code>https://api.dataforseo.com/v3/keywords_data/google_ads/languages</code><br>example:<br><code class=\"long-string\">English</code>",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      },
        -      "location_code": {
        -        "description": "<em>search engine location code</em><br>optional field<br>if you do not indicate the location, you will receive worldwide results, i.e., for all available locations;<br><strong>if you use this field, you don't need to specify <code>location_name</code> or <code>location_coordinate</code></strong>;<br>you can receive the list of available locations of the search engines with their <code>location_code</code> by making a separate request to <code>https://api.dataforseo.com/v3/keywords_data/google_ads/locations</code><br>example:<br><code class=\"long-string\">2840</code>",
        -        "type": [
        -          "integer",
        -          "null"
        -        ]
        -      },
        -      "location_coordinate": {
        -        "description": "<em>GPS coordinates of a location</em><br>optional field<br>if you do not indicate the location, you will receive worldwide results, i.e., for all available locations;<br><strong>if you use this field, you don't need to specify <code>location_name</code> or <code>location_code</code></strong>;<br><code>location_coordinate</code> parameter should be specified in the <em>\"latitude,longitude\"</em> format;<br><strong>the data will be provided for the country the specified coordinates belong to</strong>;<br>example:<br><code class=\"long-string\">52.6178549,-155.352142</code>",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      },
        -      "location_name": {
        -        "description": "<em>full name of search engine location</em><br>optional field<br>if you do not indicate the location, you will receive worldwide results, i.e., for all available locations;<br><strong>if you use this field, you don't need to specify <code>location_code</code> or <code>location_coordinate</code></strong><br>you can receive the list of available locations of the search engine with their <code>location_name</code> by making a separate request to <code>https://api.dataforseo.com/v3/keywords_data/google_ads/locations</code><br>example:<br><code class=\"long-string\">London,England,United Kingdom</code>",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      },
        -      "match": {
        -        "description": "<em>keywords match-type</em><br><strong>required field</strong><br>can take the following values: <code>exact</code>, <code>broad</code>, <code>phrase</code>",
        -        "type": "string"
        -      },
        -      "pingback_url": {
        -        "description": "<em>notification URL of a completed task</em><br>optional field<br>when a task is completed we will notify you by GET request sent to the URL you have specified<br>you can use the ‘$id’ string as a <code>$id</code> variable and ‘$tag’ as urlencoded <code>$tag</code> variable. We will set the necessary values before sending the request.<br>example:<br><code>http://your-server.com/pingscript?id=$id</code><br><code>http://your-server.com/pingscript?id=$id&amp;tag=$tag</code><br><strong>Note:</strong> special characters in <code>pingback_url</code> will be urlencoded;<br>i.a., the <code>#</code> character will be encoded into <code>%23</code><p>learn more on our <a href=\"https://dataforseo.com/help-center/pingbacks-postbacks-with-dataforseo-api\" target=\"_blank\" rel=\"noopener noreferrer\">Help Center</a>",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      },
        -      "postback_url": {
        -        "description": "<em>URL for sending task results</em><br>optional field<br>once the task is completed, we will send a POST request with its results compressed in the <code>gzip</code> format to the <code>postback_url</code> you specified<br>you can use the ‘$id’ string as a <code>$id</code> variable and ‘$tag’ as urlencoded <code>$tag</code> variable. We will set the necessary values before sending the request.<br>example:<br><code>http://your-server.com/postbackscript?id=$id</code><br><code>http://your-server.com/postbackscript?id=$id&amp;tag=$tag</code><br><strong>Note:</strong> special characters in <code>postback_url</code> will be urlencoded;<br>i.a., the <code>#</code> character will be encoded into <code>%23</code><p>learn more on our <a href=\"https://dataforseo.com/help-center/pingbacks-postbacks-with-dataforseo-api\" target=\"_blank\" rel=\"noopener noreferrer\">Help Center</a>",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      },
        -      "sort_by": {
        -        "description": "<em>results sorting parameters</em><br>optional field<br>Use these parameters to sort the results by <code>relevance</code>, <code>average_cpc</code>, <code>cost</code>, or <code>clicks</code> in the descending order<br>default value: <code>relevance</code>",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      },
        -      "tag": {
        -        "description": "<em>user-defined task identifier</em><br>optional field<br><em>the character limit is 255</em><br>you can use this parameter to identify the task and match it with the result<br>you will find the specified <code>tag</code> value in the <code>data</code> object of the response",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      }
        -    },
        -    "type": "object"
        -  }
        -]
      • addedInput schema / properties / body / items / properties
        Added value: +{
        +  "bid": {
        +    "description": "the maximum custom bid required field the collected data will be based on this value it stands for the price you are willing to pay for an ad; the higher value you specify here, the higher values you will get in the returned metrics learn more in this help center article",
        +    "type": "number"
        +  },
        +  "date_from": {
        +    "description": "starting date of the forecasting time range required field if you specify date_to if you indicate date_from and date_to, you don’t need to specify date_interval minimum value is tomorrow’s date the value you specify in date_from shouldn’t be further than date_to date format: \"yyyy-mm-dd\" example: \"2021-10-30\"if Status endpoint returns false in the actual_data field, date_from can be set to the month before last and prior; if Status endpoint returns true in the actual_data field, date_from can be set to the last month and prior",
        +    "type": "string"
        +  },
        +  "date_interval": {
        +    "description": "forecasting date interval optional field if you specify date_interval, you don’t need to indicate date_from and date_to possible values: next_week, next_month, next_quarter default value: next_month",
        +    "type": "string"
        +  },
        +  "date_to": {
        +    "description": "ending date of the forecasting time range required field if you specify date_from if you indicate date_from and date_to, you don’t need to specify date_interval minimum value is date_from +1 day maximum value is current day and month of the next year date format: \"yyyy-mm-dd\" example: \"2022-10-30\"",
        +    "type": "string"
        +  },
        +  "keywords": {
        +    "description": "keywords required field The maximum number of keywords you can specify: 1000 The maximum number of characters for each keyword: 80 The maximum number of words for each keyword phrase: 10 the keywords you specify will be converted to a lowercase format Note #1: Google Ads may return no data for certain groups of keywords; Note #2: Google Ads provides combined search volume values for groups of similar keywords to obtain search volume for similar keywords, we recommend submitting such keywords in separate requests; Note #3: Google Ads doesn’t allow using certain symbols and characters (e.g., UTF symbols, emojis), so you can’t use them when setting a task; to learn more about which symbols and characters can be used, please refer to this article learn more about rules and limitations of keyword and keywords fields in DataForSEO APIs in this Help Center article",
        +    "items": {
        +      "type": "string"
        +    },
        +    "type": "array"
        +  },
        +  "language_code": {
        +    "description": "search engine language code optional field you can receive the list of available languages of the search engine with their language_code by making a separate request to https://api.dataforseo.com/v3/keywords_data/google_ads/languages example: en",
        +    "type": "string"
        +  },
        +  "language_name": {
        +    "description": "full name of search engine language optional field you can receive the list of available languages of the search engine with their language_name by making a separate request to https://api.dataforseo.com/v3/keywords_data/google_ads/languages example: English",
        +    "type": "string"
        +  },
        +  "location_code": {
        +    "description": "search engine location code optional field if you do not indicate the location, you will receive worldwide results, i.e., for all available locations; if you use this field, you don’t need to specify location_name or location_coordinate; you can receive the list of available locations of the search engines with their location_code by making a separate request to https://api.dataforseo.com/v3/keywords_data/google_ads/locations example: 2840",
        +    "type": "integer"
        +  },
        +  "location_coordinate": {
        +    "description": "GPS coordinates of a location optional field if you do not indicate the location, you will receive worldwide results, i.e., for all available locations; if you use this field, you don’t need to specify location_name or location_code; location_coordinate parameter should be specified in the “latitude,longitude” format; the data will be provided for the country the specified coordinates belong to; example: 52.6178549,-155.352142",
        +    "type": "string"
        +  },
        +  "location_name": {
        +    "description": "full name of search engine location optional field if you do not indicate the location, you will receive worldwide results, i.e., for all available locations; if you use this field, you don’t need to specify location_code or location_coordinate you can receive the list of available locations of the search engine with their location_name by making a separate request to https://api.dataforseo.com/v3/keywords_data/google_ads/locations example: London,England,United Kingdom",
        +    "type": "string"
        +  },
        +  "match": {
        +    "description": "keywords match-type required field can take the following values: exact, broad, phrase",
        +    "type": "string"
        +  },
        +  "pingback_url": {
        +    "description": "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 characters in pingback_url will be urlencoded; i.a., the # character will be encoded into %23 learn more on our Help Center",
        +    "type": "string"
        +  },
        +  "postback_url": {
        +    "description": "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 characters in postback_url will be urlencoded; i.a., the # character will be encoded into %23 learn more on our Help Center",
        +    "type": "string"
        +  },
        +  "search_partners": {
        +    "description": "include Google search partners optional field if you specify true, the results will be delivered for owned, operated, and syndicated networks across Google and partner sites that host Google search; default value: false – results are returned for Google search sites",
        +    "type": "boolean"
        +  },
        +  "sort_by": {
        +    "description": "results sorting parameters optional field Use these parameters to sort the results by relevance, average_cpc, cost, or clicks in the descending order default value: relevance",
        +    "type": "string"
        +  },
        +  "tag": {
        +    "description": "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",
        +    "type": "string"
        +  }
        +}
      • addedInput schema / properties / body / items / required
        Added value: +[
        +  "keywords",
        +  "bid",
        +  "match"
        +]
      • changedInput schema / properties / body / items / type
        Previous value: -[
        -  "object",
        -  "null"
        -]New value: +"object"
      • changedInput schema / required
        Previous value: -[]New value: +[
        +  "body"
        +]
      • removedOutput schema / x-fastmcp-wrap-result
        Removed value: -true
    • Changedpost_dataforseo_keywords_gads_kw_for_keywords_live7 fields changed
      • removedInput schema / properties / body / example
        Removed value: -[
        -  {
        -    "keywords": [
        -      "phone",
        -      "cellphone"
        -    ],
        -    "location_code": 2840
        -  }
        -]
      • removedInput schema / properties / body / items / anyOf
        Removed value: -[
        -  {
        -    "example": [
        -      {
        -        "keywords": [
        -          "phone",
        -          "cellphone"
        -        ],
        -        "location_code": 2840
        -      }
        -    ],
        -    "properties": {
        -      "date_from": {
        -        "description": "<em>starting date of the time range</em><br>optional field<br>date format: <code>\"yyyy-mm-dd\"</code><br>minimal value: 4 years from the current date<br>by default, data is returned for the past 12 months;<br><strong>Note</strong>: the indicated date cannot be greater than that specified in <code>date_to</code> and/or yesterday's date;if <a href=\"/v3/keywords_data/google_ads/status/\" target=\"_blank\" rel=\"noopener noreferrer\">Status endpoint</a> returns <code>false</code> in the <code>actual_data</code> field, <code>date_from</code> can be set to the month before last and prior;<br>if <a href=\"/v3/keywords_data/google_ads/status/\" target=\"_blank\" rel=\"noopener noreferrer\">Status endpoint</a> returns <code>true</code> in the <code>actual_data</code> field, <code>date_from</code> can be set to the last month and prior",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      },
        -      "date_to": {
        -        "description": "<em>ending date of the time range</em><br>optional field<br><strong>Note:</strong> the indicated date cannot be greater than yesterday's date;<br>if you don't specify this field, yesterday's date will be used by default<br>date format: <code>\"yyyy-mm-dd\"</code><br>example:<br><code>\"2022-11-30\"</code>",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      },
        -      "include_adult_keywords": {
        -        "description": "<em>include keywords associated with adult content</em><br>optional field<br>if set to <code>true</code>, adult keywords will be included in the response<br>default value: <code>false</code><br><strong>note</strong> that the API may return no data for such keywords due to <a href=\"https://support.google.com/adspolicy/answer/6008942?hl=en\" target=\"_blank\" rel=\"noopener noreferrer\">Google Ads restrictions</a>",
        -        "type": [
        -          "boolean",
        -          "null"
        -        ]
        -      },
        -      "keywords": {
        -        "description": "<em>keywords</em><br><strong>required field</strong><br>The maximum number of keywords you can specify: 20<br>The maximum number of characters for each keyword: 80<br>the keywords you specify will be converted to a lowercase format<br><strong>Note:</strong> Google Ads may return no data for certain groups of keywords<br><a href=\"https://dataforseo.com/help-center/no-search-volume-data-for-some-keywords\" target=\"_blank\" rel=\"noopener noreferrer\">visit our Help Center to learn more</a><br><strong>Also note</strong> that Google Ads doesn't allow using certain symbols and characters (e.g., UTF symbols, emojis), so you can't use them when setting a task;<br>to learn more about which symbols and characters can be used, please refer to <a href=\"https://dataforseo.com/help-center/using-symbols-in-keywords-when-setting-a-google-ads-task\" target=\"_blank\" rel=\"noopener noreferrer\">this article</a><p>learn more about rules and limitations of <code>keyword</code> and <code>keywords</code> fields in DataForSEO APIs in this <a href=\"https://dataforseo.com/help-center/rules-and-limitations-of-keyword-and-keywords-fields-in-dataforseo-apis\" rel=\"noopener noreferrer\" target=\"_blank\">Help Center article</a>",
        -        "items": {
        -          "type": "string"
        -        },
        -        "type": "array"
        -      },
        -      "language_code": {
        -        "description": "<em>search engine language code</em><br>optional field<br>you can receive the list of available languages of the search engine with their <code>language_code</code> by making a separate request to <code>https://api.dataforseo.com/v3/keywords_data/google_ads/languages</code><br>example:<br><code class=\"long-string\">en</code>",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      },
        -      "language_name": {
        -        "description": "<em>full name of search engine language</em><br>optional field<br>you can receive the list of available languages of the search engine with their <code>language_name</code> by making a separate request to <code>https://api.dataforseo.com/v3/keywords_data/google_ads/languages</code><br>example:<br><code class=\"long-string\">English</code>",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      },
        -      "location_code": {
        -        "description": "<em>search engine location code</em><br>optional field<br>if you do not indicate the location, you will receive worldwide results, i.e., for all available locations;<br><strong>if you use this field, you don't need to specify <code>location_name</code> or <code>location_coordinate</code></strong>;<br>you can receive the list of available locations of the search engines with their <code>location_code</code> by making a separate request to <code>https://api.dataforseo.com/v3/keywords_data/google_ads/locations</code><br>example:<br><code class=\"long-string\">2840</code>",
        -        "type": [
        -          "integer",
        -          "null"
        -        ]
        -      },
        -      "location_coordinate": {
        -        "description": "<em>GPS coordinates of a location</em><br>optional field<br>if you do not indicate the location, you will receive worldwide results, i.e., for all available locations;<br><strong>if you use this field, you don't need to specify <code>location_name</code> or <code>location_code</code></strong>;<br><code>location_coordinate</code> parameter should be specified in the <em>\"latitude,longitude\"</em> format;<br><strong>the data will be provided for the country the specified coordinates belong to</strong>;<br>example:<br><code class=\"long-string\">52.6178549,-155.352142</code>",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      },
        -      "location_name": {
        -        "description": "<em>full name of search engine location</em><br>optional field<br>if you do not indicate the location, you will receive worldwide results, i.e., for all available locations;<br><strong>if you use this field, you don't need to specify <code>location_code</code> or <code>location_coordinate</code></strong><br>you can receive the list of available locations of the search engine with their <code>location_name</code> by making a separate request to <code>https://api.dataforseo.com/v3/keywords_data/google_ads/locations</code><br>example:<br><code class=\"long-string\">London,England,United Kingdom</code>",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      },
        -      "search_partners": {
        -        "description": "<em>include Google search partners</em><br>optional field<br>if you specify <code class=\"prettyprint\">true</code>, the results will be delivered for owned, operated, and syndicated networks across <a href=\"https://support.google.com/google-ads/answer/1722047?hl=en\" target=\"_blank\" rel=\"noopener noreferrer\">Google and partner sites</a> that host Google search;<br>default value: <code>false</code> - results are returned for Google search sites",
        -        "type": [
        -          "boolean",
        -          "null"
        -        ]
        -      },
        -      "sort_by": {
        -        "description": "<em>results sorting parameters</em><br>optional field<br>Use these parameters to sort the results by <code>relevance</code>, <code>search_volume</code>, <code>competition_index</code>, <code>low_top_of_page_bid</code>, or <code>high_top_of_page_bid</code> in descending order<br>default value: <code>relevance</code>",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      },
        -      "tag": {
        -        "description": "<em>user-defined task identifier</em><br>optional field<br><em>the character limit is 255</em><br>you can use this parameter to identify the task and match it with the result<br>you will find the specified <code>tag</code> value in the <code>data</code> object of the response",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      }
        -    },
        -    "type": "object"
        -  }
        -]
      • addedInput schema / properties / body / items / properties
        Added value: +{
        +  "date_from": {
        +    "description": "starting date of the time range optional field date format: \"yyyy-mm-dd\" minimal value: 4 years from the current date by default, data is returned for the past 12 months; Note: the indicated date cannot be greater than that specified in date_to and/or yesterday’s date;if Status endpoint returns false in the actual_data field, date_from can be set to the month before last and prior; if Status endpoint returns true in the actual_data field, date_from can be set to the last month and prior",
        +    "type": "string"
        +  },
        +  "date_to": {
        +    "description": "ending date of the time range optional field Note: the indicated date cannot be greater than yesterday’s date; if you don’t specify this field, yesterday’s date will be used by default date format: \"yyyy-mm-dd\" example: \"2022-11-30\"",
        +    "type": "string"
        +  },
        +  "include_adult_keywords": {
        +    "description": "include keywords associated with adult content optional field if set to true, adult keywords will be included in the response default value: false note that the API may return no data for such keywords due to Google Ads restrictions",
        +    "type": "boolean"
        +  },
        +  "keywords": {
        +    "description": "keywords required field The maximum number of keywords you can specify: 20 The maximum number of characters for each keyword: 80 the keywords you specify will be converted to a lowercase format Note: Google Ads may return no data for certain groups of keywords visit our Help Center to learn more Also note that Google Ads doesn’t allow using certain symbols and characters (e.g., UTF symbols, emojis), so you can’t use them when setting a task; to learn more about which symbols and characters can be used, please refer to this article learn more about rules and limitations of keyword and keywords fields in DataForSEO APIs in this Help Center article",
        +    "items": {
        +      "type": "string"
        +    },
        +    "type": "array"
        +  },
        +  "language_code": {
        +    "description": "search engine language code optional field you can receive the list of available languages of the search engine with their language_code by making a separate request to https://api.dataforseo.com/v3/keywords_data/google_ads/languages example: en",
        +    "type": "string"
        +  },
        +  "language_name": {
        +    "description": "full name of search engine language optional field you can receive the list of available languages of the search engine with their language_name by making a separate request to https://api.dataforseo.com/v3/keywords_data/google_ads/languages example: English",
        +    "type": "string"
        +  },
        +  "location_code": {
        +    "description": "search engine location code optional field if you do not indicate the location, you will receive worldwide results, i.e., for all available locations; if you use this field, you don’t need to specify location_name or location_coordinate; you can receive the list of available locations of the search engines with their location_code by making a separate request to https://api.dataforseo.com/v3/keywords_data/google_ads/locations example: 2840",
        +    "type": "integer"
        +  },
        +  "location_coordinate": {
        +    "description": "GPS coordinates of a location optional field if you do not indicate the location, you will receive worldwide results, i.e., for all available locations; if you use this field, you don’t need to specify location_name or location_code; location_coordinate parameter should be specified in the “latitude,longitude” format; the data will be provided for the country the specified coordinates belong to; example: 52.6178549,-155.352142",
        +    "type": "string"
        +  },
        +  "location_name": {
        +    "description": "full name of search engine location optional field if you do not indicate the location, you will receive worldwide results, i.e., for all available locations; if you use this field, you don’t need to specify location_code or location_coordinate you can receive the list of available locations of the search engine with their location_name by making a separate request to https://api.dataforseo.com/v3/keywords_data/google_ads/locations example: London,England,United Kingdom",
        +    "type": "string"
        +  },
        +  "search_partners": {
        +    "description": "include Google search partners optional field if you specify true, the results will be delivered for owned, operated, and syndicated networks across Google and partner sites that host Google search; default value: false – results are returned for Google search sites",
        +    "type": "boolean"
        +  },
        +  "sort_by": {
        +    "description": "results sorting parameters optional field Use these parameters to sort the results by relevance, search_volume, competition_index, low_top_of_page_bid, or high_top_of_page_bid in descending order default value: relevance",
        +    "type": "string"
        +  },
        +  "tag": {
        +    "description": "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",
        +    "type": "string"
        +  }
        +}
      • addedInput schema / properties / body / items / required
        Added value: +[
        +  "keywords"
        +]
      • changedInput schema / properties / body / items / type
        Previous value: -[
        -  "object",
        -  "null"
        -]New value: +"object"
      • changedInput schema / required
        Previous value: -[]New value: +[
        +  "body"
        +]
      • removedOutput schema / x-fastmcp-wrap-result
        Removed value: -true
    • Changedpost_dataforseo_keywords_gads_kw_for_site_live7 fields changed
      • removedInput schema / properties / body / example
        Removed value: -[
        -  {
        -    "location_code": 2840,
        -    "target": "dataforseo.com"
        -  }
        -]
      • removedInput schema / properties / body / items / anyOf
        Removed value: -[
        -  {
        -    "example": [
        -      {
        -        "location_code": 2840,
        -        "target": "dataforseo.com"
        -      }
        -    ],
        -    "properties": {
        -      "date_from": {
        -        "description": "<em>starting date of the time range</em><br>optional field<br>date format: <code>\"yyyy-mm-dd\"</code><br>minimal value: 4 years from the current date<br>by default, data is returned for the past 12 months;<br><strong>Note</strong>: the indicated date cannot be greater than that specified in <code>date_to</code> and/or yesterday's date;if <a href=\"/v3/keywords_data/google_ads/status/\" target=\"_blank\" rel=\"noopener noreferrer\">Status endpoint</a> returns <code>false</code> in the <code>actual_data</code> field, <code>date_from</code> can be set to the month before last and prior;<br>if <a href=\"/v3/keywords_data/google_ads/status/\" target=\"_blank\" rel=\"noopener noreferrer\">Status endpoint</a> returns <code>true</code> in the <code>actual_data</code> field, <code>date_from</code> can be set to the last month and prior",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      },
        -      "date_to": {
        -        "description": "<em>ending date of the time range</em><br>optional field<br><strong>Note:</strong> the indicated date cannot be greater than yesterday's date;<br>if you don't specify this field, yesterday's date will be used by default<br>date format: <code>\"yyyy-mm-dd\"</code><br>example:<br><code>\"2022-11-30\"</code>",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      },
        -      "include_adult_keywords": {
        -        "description": "<em>include keywords associated with adult content</em><br>optional field<br>if set to <code>true</code>, adult keywords will be included in the response<br>default value: <code>false</code><br><strong>note</strong> that the API may return no data for such keywords due to <a href=\"https://support.google.com/adspolicy/answer/6008942?hl=en\" target=\"_blank\" rel=\"noopener noreferrer\">Google Ads restrictions</a>",
        -        "type": [
        -          "boolean",
        -          "null"
        -        ]
        -      },
        -      "language_code": {
        -        "description": "<em>search engine language code</em><br>optional field<br>you can receive the list of available languages of the search engine with their <code>language_code</code> by making a separate request to <code>https://api.dataforseo.com/v3/keywords_data/google_ads/languages</code><br>example:<br><code class=\"long-string\">en</code>",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      },
        -      "language_name": {
        -        "description": "<em>full name of search engine language</em><br>optional field<br>you can receive the list of available languages of the search engine with their <code>language_name</code> by making a separate request to <code>https://api.dataforseo.com/v3/keywords_data/google_ads/languages</code><br>example:<br><code class=\"long-string\">English</code>",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      },
        -      "location_code": {
        -        "description": "<em>search engine location code</em><br>optional field<br>if you do not indicate the location, you will receive worldwide results, i.e., for all available locations;<br><strong>if you use this field, you don't need to specify <code>location_name</code> or <code>location_coordinate</code></strong>;<br>you can receive the list of available locations of the search engines with their <code>location_code</code> by making a separate request to <code>https://api.dataforseo.com/v3/keywords_data/google_ads/locations</code><br>example:<br><code class=\"long-string\">2840</code>",
        -        "type": [
        -          "integer",
        -          "null"
        -        ]
        -      },
        -      "location_coordinate": {
        -        "description": "<em>GPS coordinates of a location</em><br>optional field<br>if you do not indicate the location, you will receive worldwide results, i.e., for all available locations;<br><strong>if you use this field, you don't need to specify <code>location_name</code> or <code>location_code</code></strong>;<br><code>location_coordinate</code> parameter should be specified in the <em>\"latitude,longitude\"</em> format;<br><strong>the data will be provided for the country the specified coordinates belong to</strong>;<br>example:<br><code class=\"long-string\">52.6178549,-155.352142</code>",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      },
        -      "location_name": {
        -        "description": "<em>full name of search engine location</em><br>optional field<br>if you do not indicate the location, you will receive worldwide results, i.e., for all available locations;<br><strong>if you use this field, you don't need to specify <code>location_code</code> or <code>location_coordinate</code></strong><br>you can receive the list of available locations of the search engine with their <code>location_name</code> by making a separate request to <code>https://api.dataforseo.com/v3/keywords_data/google_ads/locations</code><br>example:<br><code class=\"long-string\">London,England,United Kingdom</code>",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      },
        -      "search_partners": {
        -        "description": "<em>include Google search partners</em><br>optional field<br>if you specify <code class=\"prettyprint\">true</code>, the results will be delivered for owned, operated, and syndicated networks across <a href=\"https://support.google.com/google-ads/answer/1722047?hl=en\" target=\"_blank\" rel=\"noopener noreferrer\">Google and partner sites</a> that host Google search;<br>default value: <code>false</code> - results are returned for Google search sites",
        -        "type": [
        -          "boolean",
        -          "null"
        -        ]
        -      },
        -      "sort_by": {
        -        "description": "<em>results sorting parameters</em><br>optional field<br>Use these parameters to sort the results by <code>relevance</code>, <code>search_volume</code>, <code>competition_index</code>, <code>low_top_of_page_bid</code>, or <code>high_top_of_page_bid</code> in descending order<br>default value: <code>relevance</code>",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      },
        -      "tag": {
        -        "description": "<em>user-defined task identifier</em><br>optional field<br><em>the character limit is 255</em><br>you can use this parameter to identify the task and match it with the result<br>you will find the specified <code>tag</code> value in the <code>data</code> object of the response",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      },
        -      "target": {
        -        "description": "<em>domain or page</em><br><strong>required field</strong><br>the domain name of the target website or the url of the target page;<br><strong>note:</strong> to obtain keywords for the target website, use the <code>target_type</code> parameter",
        -        "type": "string"
        -      },
        -      "target_type": {
        -        "description": "<em>search keywords for site or for url</em><br>optional field<br>possible values: <code>site</code>, <code>page</code>;<br>default value: <code>page</code>;<br>if set to <code>site</code>, keywords will be provided for the entire site;<br>if set to <code>page</code>, keywords will be provided for the specified webpage",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      }
        -    },
        -    "type": "object"
        -  }
        -]
      • addedInput schema / properties / body / items / properties
        Added value: +{
        +  "date_from": {
        +    "description": "starting date of the time range optional field date format: \"yyyy-mm-dd\" minimal value: 4 years from the current date by default, data is returned for the past 12 months; Note: the indicated date cannot be greater than that specified in date_to and/or yesterday’s date;if Status endpoint returns false in the actual_data field, date_from can be set to the month before last and prior; if Status endpoint returns true in the actual_data field, date_from can be set to the last month and prior",
        +    "type": "string"
        +  },
        +  "date_to": {
        +    "description": "ending date of the time range optional field Note: the indicated date cannot be greater than yesterday’s date; if you don’t specify this field, yesterday’s date will be used by default date format: \"yyyy-mm-dd\" example: \"2022-11-30\"",
        +    "type": "string"
        +  },
        +  "include_adult_keywords": {
        +    "description": "include keywords associated with adult content optional field if set to true, adult keywords will be included in the response default value: false note that the API may return no data for such keywords due to Google Ads restrictions",
        +    "type": "boolean"
        +  },
        +  "language_code": {
        +    "description": "search engine language code optional field you can receive the list of available languages of the search engine with their language_code by making a separate request to https://api.dataforseo.com/v3/keywords_data/google_ads/languages example: en",
        +    "type": "string"
        +  },
        +  "language_name": {
        +    "description": "full name of search engine language optional field you can receive the list of available languages of the search engine with their language_name by making a separate request to https://api.dataforseo.com/v3/keywords_data/google_ads/languages example: English",
        +    "type": "string"
        +  },
        +  "location_code": {
        +    "description": "search engine location code optional field if you do not indicate the location, you will receive worldwide results, i.e., for all available locations; if you use this field, you don’t need to specify location_name or location_coordinate; you can receive the list of available locations of the search engines with their location_code by making a separate request to https://api.dataforseo.com/v3/keywords_data/google_ads/locations example: 2840",
        +    "type": "integer"
        +  },
        +  "location_coordinate": {
        +    "description": "GPS coordinates of a location optional field if you do not indicate the location, you will receive worldwide results, i.e., for all available locations; if you use this field, you don’t need to specify location_name or location_code; location_coordinate parameter should be specified in the “latitude,longitude” format; the data will be provided for the country the specified coordinates belong to; example: 52.6178549,-155.352142",
        +    "type": "string"
        +  },
        +  "location_name": {
        +    "description": "full name of search engine location optional field if you do not indicate the location, you will receive worldwide results, i.e., for all available locations; if you use this field, you don’t need to specify location_code or location_coordinate you can receive the list of available locations of the search engine with their location_name by making a separate request to https://api.dataforseo.com/v3/keywords_data/google_ads/locations example: London,England,United Kingdom",
        +    "type": "string"
        +  },
        +  "search_partners": {
        +    "description": "include Google search partners optional field if you specify true, the results will be delivered for owned, operated, and syndicated networks across Google and partner sites that host Google search; default value: false – results are returned for Google search sites",
        +    "type": "boolean"
        +  },
        +  "sort_by": {
        +    "description": "results sorting parameters optional field Use these parameters to sort the results by relevance, search_volume, competition_index, low_top_of_page_bid, or high_top_of_page_bid in descending order default value: relevance",
        +    "type": "string"
        +  },
        +  "tag": {
        +    "description": "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",
        +    "type": "string"
        +  },
        +  "target": {
        +    "description": "domain or page required field the domain name of the target website or the url of the target page; note: to obtain keywords for the target website, use the target_type parameter",
        +    "type": "string"
        +  },
        +  "target_type": {
        +    "description": "search keywords for site or for url optional field possible values: site, page; default value: page; if set to site, keywords will be provided for the entire site; if set to page, keywords will be provided for the specified webpage",
        +    "type": "string"
        +  }
        +}
      • addedInput schema / properties / body / items / required
        Added value: +[
        +  "target"
        +]
      • changedInput schema / properties / body / items / type
        Previous value: -[
        -  "object",
        -  "null"
        -]New value: +"object"
      • changedInput schema / required
        Previous value: -[]New value: +[
        +  "body"
        +]
      • removedOutput schema / x-fastmcp-wrap-result
        Removed value: -true
    • Changedpost_dataforseo_keywords_gads_search_volume_live7 fields changed
      • removedInput schema / properties / body / example
        Removed value: -[
        -  {
        -    "date_from": "2021-08-01",
        -    "keywords": [
        -      "buy laptop",
        -      "cheap laptops for sale",
        -      "purchase laptop"
        -    ],
        -    "location_code": 2840,
        -    "search_partners": true
        -  }
        -]
      • removedInput schema / properties / body / items / anyOf
        Removed value: -[
        -  {
        -    "example": [
        -      {
        -        "date_from": "2021-08-01",
        -        "keywords": [
        -          "buy laptop",
        -          "cheap laptops for sale",
        -          "purchase laptop"
        -        ],
        -        "location_code": 2840,
        -        "search_partners": true
        -      }
        -    ],
        -    "properties": {
        -      "date_from": {
        -        "description": "<em>starting date of the time range</em><br>optional field<br>date format: <code>\"yyyy-mm-dd\"</code><br>minimal value: 4 years from the current date<br>by default, data is returned for the past 12 months;<br><strong>Note</strong>: the indicated date cannot be greater than that specified in <code>date_to</code> and/or yesterday's date;if <a href=\"/v3/keywords_data/google_ads/status/\" target=\"_blank\" rel=\"noopener noreferrer\">Status endpoint</a> returns <code>false</code> in the <code>actual_data</code> field, <code>date_from</code> can be set to the month before last and prior;<br>if <a href=\"/v3/keywords_data/google_ads/status/\" target=\"_blank\" rel=\"noopener noreferrer\">Status endpoint</a> returns <code>true</code> in the <code>actual_data</code> field, <code>date_from</code> can be set to the last month and prior",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      },
        -      "date_to": {
        -        "description": "<em>ending date of the time range</em><br>optional field<br><strong>Note:</strong> the indicated date cannot be greater than the past month, Google Ads does not return data on the current month;<br>if you don't specify this field, yesterday's date will be used by default<br>date format: <code>\"yyyy-mm-dd\"</code><br>example:<br><code>\"2022-11-30\"</code>",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      },
        -      "include_adult_keywords": {
        -        "description": "<em>include keywords associated with adult content<br></em>optional field<br>if set to_<code>true</code>, adult keywords will be included in the response<br>default value:_<code>false</code><br><strong>note</strong>_that the API may return no data for such keywords due to_<a href=\"https://support.google.com/adspolicy/answer/6008942?hl=en\" target=\"_blank\" rel=\"noopener noreferrer\">Google Ads restrictions</a>n",
        -        "type": [
        -          "boolean",
        -          "null"
        -        ]
        -      },
        -      "keywords": {
        -        "description": "<em>keywords</em><br><strong>required field</strong><br>The maximum number of keywords you can specify: 1000<br>The maximum number of characters for each keyword: 80<br>The maximum number of words for each keyword phrase: 10<br>the keywords you specify will be converted to a lowercase format<br><strong>Note #1:</strong> <a href=\"https://dataforseo.com/help-center/no-search-volume-data-for-some-keywords\" target=\"_blank\" rel=\"noopener noreferrer\">Google Ads may return no data for certain groups of keywords</a>;<br><strong>Note #2:</strong> <a href=\"https://dataforseo.com/help-center/sv-broad-exact-phrase-match\" target=\"_blank\" rel=\"noopener noreferrer\">Google Ads provides combined search volume values for groups of similar keywords</a><br>to obtain search volume for similar keywords, we recommend submitting such keywords in separate requests;<br><strong>Note #3:</strong> Google Ads doesn't allow using certain symbols and characters (e.g., UTF symbols, emojis), so you can't use them when setting a task;<br>to learn more about which symbols and characters can be used, please refer to <a href=\"https://dataforseo.com/help-center/using-symbols-in-keywords-when-setting-a-google-ads-task\" target=\"_blank\" rel=\"noopener noreferrer\">this article</a><p>learn more about rules and limitations of <code>keyword</code> and <code>keywords</code> fields in DataForSEO APIs in this <a href=\"https://dataforseo.com/help-center/rules-and-limitations-of-keyword-and-keywords-fields-in-dataforseo-apis\" rel=\"noopener noreferrer\" target=\"_blank\">Help Center article</a>",
        -        "items": {
        -          "type": "string"
        -        },
        -        "type": "array"
        -      },
        -      "language_code": {
        -        "description": "<em>search engine language code</em><br>optional field<br>you can receive the list of available languages of the search engine with their <code>language_code</code> by making a separate request to <code>https://api.dataforseo.com/v3/keywords_data/google_ads/languages</code><br>example:<br><code class=\"long-string\">en</code>",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      },
        -      "language_name": {
        -        "description": "<em>full name of search engine language</em><br>optional field<br>you can receive the list of available languages of the search engine with their <code>language_name</code> by making a separate request to <code>https://api.dataforseo.com/v3/keywords_data/google_ads/languages</code><br>example:<br><code class=\"long-string\">English</code>",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      },
        -      "location_code": {
        -        "description": "<em>search engine location code</em><br>optional field<br>if you do not indicate the location, you will receive worldwide results, i.e., for all available locations;<br><strong>if you use this field, you don't need to specify <code>location_name</code> or <code>location_coordinate</code></strong>;<br>you can receive the list of available locations of the search engines with their <code>location_code</code> by making a separate request to <code>https://api.dataforseo.com/v3/keywords_data/google_ads/locations</code><br>example:<br><code class=\"long-string\">2840</code>",
        -        "type": [
        -          "integer",
        -          "null"
        -        ]
        -      },
        -      "location_coordinate": {
        -        "description": "<em>GPS coordinates of a location</em><br>optional field<br>if you do not indicate the location, you will receive worldwide results, i.e., for all available locations;<br><strong>if you use this field, you don't need to specify <code>location_name</code> or <code>location_code</code></strong>;<br><code>location_coordinate</code> parameter should be specified in the <em>\"latitude,longitude\"</em> format;<br><strong>the data will be provided for the country the specified coordinates belong to</strong>;<br>example:<br><code class=\"long-string\">52.6178549,-155.352142</code>",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      },
        -      "location_name": {
        -        "description": "<em>full name of search engine location</em><br>optional field<br>if you do not indicate the location, you will receive worldwide results, i.e., for all available locations;<br><strong>if you use this field, you don't need to specify <code>location_code</code> or <code>location_coordinate</code></strong><br>you can receive the list of available locations of the search engine with their <code>location_name</code> by making a separate request to <code>https://api.dataforseo.com/v3/keywords_data/google_ads/locations</code><br>example:<br><code class=\"long-string\">London,England,United Kingdom</code>",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      },
        -      "search_partners": {
        -        "description": "<em>include Google search partners</em><br>optional field<br>if you specify <code class=\"prettyprint\">true</code>, the results will be delivered for owned, operated, and syndicated networks across <a href=\"https://support.google.com/google-ads/answer/1722047?hl=en\" target=\"_blank\" rel=\"noopener noreferrer\">Google and partner sites</a> that host Google search;<br>default value: <code>false</code> - results are returned for Google search sites",
        -        "type": [
        -          "boolean",
        -          "null"
        -        ]
        -      },
        -      "sort_by": {
        -        "description": "<em>results sorting parameters</em><br>optional field<br>use these parameters to sort the results by <code>relevance</code>, <code>search_volume</code>, <code>competition_index</code>, <code>low_top_of_page_bid</code>, or <code>high_top_of_page_bid</code> in the descending order<br>default value: <code>relevance</code>",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      },
        -      "tag": {
        -        "description": "<em>user-defined task identifier</em><br>optional field<br><em>the character limit is 255</em><br>you can use this parameter to identify the task and match it with the result<br>you will find the specified <code>tag</code> value in the <code>data</code> array of the response",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      }
        -    },
        -    "type": "object"
        -  }
        -]
      • addedInput schema / properties / body / items / properties
        Added value: +{
        +  "date_from": {
        +    "description": "starting date of the time range optional field date format: \"yyyy-mm-dd\" minimal value: 4 years from the current date by default, data is returned for the past 12 months; Note: the indicated date cannot be greater than that specified in date_to and/or yesterday’s date;if Status endpoint returns false in the actual_data field, date_from can be set to the month before last and prior; if Status endpoint returns true in the actual_data field, date_from can be set to the last month and prior",
        +    "type": "string"
        +  },
        +  "date_to": {
        +    "description": "ending date of the time range optional field Note: the indicated date cannot be greater than the past month, Google Ads does not return data on the current month; if you don’t specify this field, yesterday’s date will be used by default date format: \"yyyy-mm-dd\" example: \"2022-11-30\"",
        +    "type": "string"
        +  },
        +  "include_adult_keywords": {
        +    "description": "include keywords associated with adult content optional field if set to_true, adult keywords will be included in the response default value:_false note_that the API may return no data for such keywords due to_Google Ads restrictions n",
        +    "type": "boolean"
        +  },
        +  "keywords": {
        +    "description": "keywords required field The maximum number of keywords you can specify: 1000 The maximum number of characters for each keyword: 80 The maximum number of words for each keyword phrase: 10 the keywords you specify will be converted to a lowercase format Note #1: Google Ads may return no data for certain groups of keywords; Note #2: Google Ads provides combined search volume values for groups of similar keywords to obtain search volume for similar keywords, we recommend submitting such keywords in separate requests; Note #3: Google Ads doesn’t allow using certain symbols and characters (e.g., UTF symbols, emojis), so you can’t use them when setting a task; to learn more about which symbols and characters can be used, please refer to this article learn more about rules and limitations of keyword and keywords fields in DataForSEO APIs in this Help Center article",
        +    "items": {
        +      "type": "string"
        +    },
        +    "type": "array"
        +  },
        +  "language_code": {
        +    "description": "search engine language code optional field you can receive the list of available languages of the search engine with their language_code by making a separate request to https://api.dataforseo.com/v3/keywords_data/google_ads/languages example: en",
        +    "type": "string"
        +  },
        +  "language_name": {
        +    "description": "full name of search engine language optional field you can receive the list of available languages of the search engine with their language_name by making a separate request to https://api.dataforseo.com/v3/keywords_data/google_ads/languages example: English",
        +    "type": "string"
        +  },
        +  "location_code": {
        +    "description": "search engine location code optional field if you do not indicate the location, you will receive worldwide results, i.e., for all available locations; if you use this field, you don’t need to specify location_name or location_coordinate; you can receive the list of available locations of the search engines with their location_code by making a separate request to https://api.dataforseo.com/v3/keywords_data/google_ads/locations example: 2840",
        +    "type": "integer"
        +  },
        +  "location_coordinate": {
        +    "description": "GPS coordinates of a location optional field if you do not indicate the location, you will receive worldwide results, i.e., for all available locations; if you use this field, you don’t need to specify location_name or location_code; location_coordinate parameter should be specified in the “latitude,longitude” format; the data will be provided for the country the specified coordinates belong to; example: 52.6178549,-155.352142",
        +    "type": "string"
        +  },
        +  "location_name": {
        +    "description": "full name of search engine location optional field if you do not indicate the location, you will receive worldwide results, i.e., for all available locations; if you use this field, you don’t need to specify location_code or location_coordinate you can receive the list of available locations of the search engine with their location_name by making a separate request to https://api.dataforseo.com/v3/keywords_data/google_ads/locations example: London,England,United Kingdom",
        +    "type": "string"
        +  },
        +  "search_partners": {
        +    "description": "include Google search partners optional field if you specify true, the results will be delivered for owned, operated, and syndicated networks across Google and partner sites that host Google search; default value: false – results are returned for Google search sites",
        +    "type": "boolean"
        +  },
        +  "sort_by": {
        +    "description": "results sorting parameters optional field use these parameters to sort the results by relevance, search_volume, competition_index, low_top_of_page_bid, or high_top_of_page_bid in the descending order default value: relevance",
        +    "type": "string"
        +  },
        +  "tag": {
        +    "description": "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 array of the response",
        +    "type": "string"
        +  }
        +}
      • addedInput schema / properties / body / items / required
        Added value: +[
        +  "keywords"
        +]
      • changedInput schema / properties / body / items / type
        Previous value: -[
        -  "object",
        -  "null"
        -]New value: +"object"
      • changedInput schema / required
        Previous value: -[]New value: +[
        +  "body"
        +]
      • removedOutput schema / x-fastmcp-wrap-result
        Removed value: -true
    • Changedpost_dataforseo_keywords_trends_demography_live7 fields changed
      • removedInput schema / properties / body / example
        Removed value: -[
        -  {
        -    "date_from": "2023-01-01",
        -    "date_to": "2024-01-01",
        -    "keywords": [
        -      "rugby",
        -      "cricket"
        -    ],
        -    "location_name": "United States",
        -    "type": "web"
        -  }
        -]
      • removedInput schema / properties / body / items / anyOf
        Removed value: -[
        -  {
        -    "example": [
        -      {
        -        "date_from": "2023-01-01",
        -        "date_to": "2024-01-01",
        -        "keywords": [
        -          "rugby",
        -          "cricket"
        -        ],
        -        "location_name": "United States",
        -        "type": "web"
        -      }
        -    ],
        -    "properties": {
        -      "date_from": {
        -        "description": "<em>starting date of the time range</em><br>optional field<br>if you don't specify this field, the current day and month of the preceding year will be used by default<br>minimal value for the <code>web</code> type: <code>2004-01-01</code><br>minimal value for other types: <code>2008-01-01</code><br>date format: <code>\"yyyy-mm-dd\"</code><br>example:<br><code>\"2019-01-15\"</code>",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      },
        -      "date_to": {
        -        "description": "<em>ending date of the time range</em><br>optional field<br>if you don't specify this field, the today's date will be used by default<br>date format: <code>\"yyyy-mm-dd\"</code><br>example:<br><code>\"2019-01-15\"</code>",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      },
        -      "keywords": {
        -        "description": "<em>keywords</em><br><strong>required field</strong><br>the maximum number of keywords you can specify: 5<br>avoid symbols and special characters (e.g., UTF symbols, emojis);<br>specifying non-Latin characters, you’ll get data for the countries where they are used<p>learn more about rules and limitations of <code>keyword</code> and <code>keywords</code> fields in DataForSEO APIs in this <a href=\"https://dataforseo.com/help-center/rules-and-limitations-of-keyword-and-keywords-fields-in-dataforseo-apis\" rel=\"noopener noreferrer\" target=\"_blank\">Help Center article</a>",
        -        "items": {
        -          "type": "string"
        -        },
        -        "type": "array"
        -      },
        -      "location_code": {
        -        "description": "<em>search engine location code</em><br>optional field<br>if you don't use this field, you will recieve global results<br><strong>if you use this field, you don't need to specify <code>location_name</code></strong><br>you can receive the list of available locations of the search engines with their <code>location_code</code> by making a separate request to <code>https://api.dataforseo.com/v3/keywords_data/dataforseo_trends/locations</code><br><strong>note that the data will be provided for the country the specified <code>location_code</code> belongs to;</strong><br>example:<br><code class=\"long-string\">2840</code>",
        -        "type": [
        -          "integer",
        -          "null"
        -        ]
        -      },
        -      "location_name": {
        -        "description": "<em>full name of search engine location</em><br>optional field<br>if you don't use this field, you will recieve global results<br><strong>if you use this field, you don't need to specify <code>location_code</code></strong><br>you can receive the list of available locations of the search engine with their <code>location_name</code> by making a separate request to <code>https://api.dataforseo.com/v3/keywords_data/dataforseo_trends/locations</code><br><strong>note that the data will be provided for the country the specified <code>location_name</code> belongs to;</strong><br>example:<br><code class=\"long-string\">United Kingdom</code>",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      },
        -      "tag": {
        -        "description": "<em>user-defined task identifier</em><br>optional field<br><em>the character limit is 255</em><br>you can use this parameter to identify the task and match it with the result<br>you will find the specified <code>tag</code> value in the <code>data</code> object of the response",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      },
        -      "time_range": {
        -        "description": "<em>preset time ranges</em><br>optional field<br>if you specify <code>date_from</code> or <code>date_to</code> parameters, this field will be ignored when setting a task<br><em>possible values for all <code>type</code> parameters:</em><br><code>past_4_hours</code>, <code>past_day</code>, <code>past_7_days</code>, <code>past_30_days</code>, <code>past_90_days</code>, <code>past_12_months</code>, <code>past_5_years</code>",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      },
        -      "type": {
        -        "description": "type of element",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      }
        -    },
        -    "type": "object"
        -  }
        -]
      • addedInput schema / properties / body / items / properties
        Added value: +{
        +  "date_from": {
        +    "description": "starting date of the time range optional field if you don’t specify this field, the current day and month of the preceding year will be used by default minimal value for the web type: 2004-01-01 minimal value for other types: 2008-01-01 date format: \"yyyy-mm-dd\" example: \"2019-01-15\"",
        +    "type": "string"
        +  },
        +  "date_to": {
        +    "description": "ending date of the time range optional field if you don’t specify this field, the today’s date will be used by default date format: \"yyyy-mm-dd\" example: \"2019-01-15\"",
        +    "type": "string"
        +  },
        +  "keywords": {
        +    "description": "keywords required field the maximum number of keywords you can specify: 5 avoid symbols and special characters (e.g., UTF symbols, emojis); specifying non-Latin characters, you’ll get data for the countries where they are used learn more about rules and limitations of keyword and keywords fields in DataForSEO APIs in this Help Center article",
        +    "items": {
        +      "type": "string"
        +    },
        +    "type": "array"
        +  },
        +  "location_code": {
        +    "description": "search engine location code optional field if you don’t use this field, you will recieve global results if you use this field, you don’t need to specify location_name you can receive the list of available locations of the search engines with their location_code by making a separate request to https://api.dataforseo.com/v3/keywords_data/dataforseo_trends/locations note that the data will be provided for the country the specified location_code belongs to; example: 2840",
        +    "type": "integer"
        +  },
        +  "location_name": {
        +    "description": "full name of search engine location optional field if you don’t use this field, you will recieve global results if you use this field, you don’t need to specify location_code you can receive the list of available locations of the search engine with their location_name by making a separate request to https://api.dataforseo.com/v3/keywords_data/dataforseo_trends/locations note that the data will be provided for the country the specified location_name belongs to; example: United Kingdom",
        +    "type": "string"
        +  },
        +  "tag": {
        +    "description": "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",
        +    "type": "string"
        +  },
        +  "time_range": {
        +    "description": "preset time ranges optional field if you specify date_from or date_to parameters, this field will be ignored when setting a task possible values for all type parameters: past_4_hours, past_day, past_7_days, past_30_days, past_90_days, past_12_months, past_5_years",
        +    "type": "string"
        +  },
        +  "type": {
        +    "description": "type of element",
        +    "type": "string"
        +  }
        +}
      • addedInput schema / properties / body / items / required
        Added value: +[
        +  "keywords"
        +]
      • changedInput schema / properties / body / items / type
        Previous value: -[
        -  "object",
        -  "null"
        -]New value: +"object"
      • changedInput schema / required
        Previous value: -[]New value: +[
        +  "body"
        +]
      • removedOutput schema / x-fastmcp-wrap-result
        Removed value: -true
    • Changedpost_dataforseo_keywords_trends_explore_live7 fields changed
      • removedInput schema / properties / body / example
        Removed value: -[
        -  {
        -    "keywords": [
        -      "iphone 14",
        -      "samsung s23"
        -    ],
        -    "location_code": 2840
        -  }
        -]
      • removedInput schema / properties / body / items / anyOf
        Removed value: -[
        -  {
        -    "example": [
        -      {
        -        "keywords": [
        -          "iphone 14",
        -          "samsung s23"
        -        ],
        -        "location_code": 2840
        -      }
        -    ],
        -    "properties": {
        -      "date_from": {
        -        "description": "<em>starting date of the time range</em><br>optional field<br>if you don't specify this field, the current day and month of the preceding year will be used by default<br>minimal value for the <code>web</code> type: <code>2004-01-01</code><br>minimal value for other types: <code>2008-01-01</code><br>date format: <code>\"yyyy-mm-dd\"</code><br>example:<br><code>\"2019-01-15\"</code>",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      },
        -      "date_to": {
        -        "description": "<em>ending date of the time range</em><br>optional field<br>if you don't specify this field, the today's date will be used by default<br>date format: <code>\"yyyy-mm-dd\"</code><br>example:<br><code>\"2019-01-15\"</code>",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      },
        -      "keywords": {
        -        "description": "<em>keywords</em><br><strong>required field</strong><br>the maximum number of keywords you can specify: 5<p>learn more about rules and limitations of <code>keyword</code> and <code>keywords</code> fields in DataForSEO APIs in this <a href=\"https://dataforseo.com/help-center/rules-and-limitations-of-keyword-and-keywords-fields-in-dataforseo-apis\" rel=\"noopener noreferrer\" target=\"_blank\">Help Center article</a>",
        -        "items": {
        -          "type": "string"
        -        },
        -        "type": "array"
        -      },
        -      "location_code": {
        -        "description": "<em>search engine location code</em><br>optional field<br>if you don't use this field, you will recieve global results<br><strong>if you use this field, you don't need to specify <code>location_name</code></strong><br>you can receive the list of available locations of the search engines with their <code>location_code</code> by making a separate request to <code>https://api.dataforseo.com/v3/keywords_data/dataforseo_trends/locations</code><br><strong>note that the data will be provided for the country the specified <code>location_code</code> belongs to;</strong><br>example:<br><code class=\"long-string\">2840</code>",
        -        "type": [
        -          "integer",
        -          "null"
        -        ]
        -      },
        -      "location_name": {
        -        "description": "<em>full name of search engine location</em><br>optional field<br>if you don't use this field, you will recieve global results<br><strong>if you use this field, you don't need to specify <code>location_code</code></strong><br>you can receive the list of available locations of the search engine with their <code>location_name</code> by making a separate request to <code>https://api.dataforseo.com/v3/keywords_data/dataforseo_trends/locations</code><br><strong>note that the data will be provided for the country the specified <code>location_name</code> belongs to;</strong><br>example:<br><code class=\"long-string\">United Kingdom</code>",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      },
        -      "tag": {
        -        "description": "<em>user-defined task identifier</em><br>optional field<br><em>the character limit is 255</em><br>you can use this parameter to identify the task and match it with the result<br>you will find the specified <code>tag</code> value in the <code>data</code> object of the response",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      },
        -      "time_range": {
        -        "description": "<em>preset time ranges</em><br>optional field<br>if you specify <code>date_from</code> or <code>date_to</code> parameters, this field will be ignored when setting a task<br><em>possible values for all <code>type</code> parameters:</em><br><code>past_4_hours</code>, <code>past_day</code>, <code>past_7_days</code>, <code>past_30_days</code>, <code>past_90_days</code>, <code>past_12_months</code>, <code>past_5_years</code>",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      },
        -      "type": {
        -        "description": "type of element",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      }
        -    },
        -    "type": "object"
        -  }
        -]
      • addedInput schema / properties / body / items / properties
        Added value: +{
        +  "date_from": {
        +    "description": "starting date of the time range optional field if you don’t specify this field, the current day and month of the preceding year will be used by default minimal value for the web type: 2004-01-01 minimal value for other types: 2008-01-01 date format: \"yyyy-mm-dd\" example: \"2019-01-15\"",
        +    "type": "string"
        +  },
        +  "date_to": {
        +    "description": "ending date of the time range optional field if you don’t specify this field, the today’s date will be used by default date format: \"yyyy-mm-dd\" example: \"2019-01-15\"",
        +    "type": "string"
        +  },
        +  "keywords": {
        +    "description": "keywords required field the maximum number of keywords you can specify: 5 learn more about rules and limitations of keyword and keywords fields in DataForSEO APIs in this Help Center article",
        +    "items": {
        +      "type": "string"
        +    },
        +    "type": "array"
        +  },
        +  "location_code": {
        +    "description": "search engine location code optional field if you don’t use this field, you will recieve global results if you use this field, you don’t need to specify location_name you can receive the list of available locations of the search engines with their location_code by making a separate request to https://api.dataforseo.com/v3/keywords_data/dataforseo_trends/locations note that the data will be provided for the country the specified location_code belongs to; example: 2840",
        +    "type": "integer"
        +  },
        +  "location_name": {
        +    "description": "full name of search engine location optional field if you don’t use this field, you will recieve global results if you use this field, you don’t need to specify location_code you can receive the list of available locations of the search engine with their location_name by making a separate request to https://api.dataforseo.com/v3/keywords_data/dataforseo_trends/locations note that the data will be provided for the country the specified location_name belongs to; example: United Kingdom",
        +    "type": "string"
        +  },
        +  "tag": {
        +    "description": "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",
        +    "type": "string"
        +  },
        +  "time_range": {
        +    "description": "preset time ranges optional field if you specify date_from or date_to parameters, this field will be ignored when setting a task possible values for all type parameters: past_4_hours, past_day, past_7_days, past_30_days, past_90_days, past_12_months, past_5_years",
        +    "type": "string"
        +  },
        +  "type": {
        +    "description": "type of element",
        +    "type": "string"
        +  }
        +}
      • addedInput schema / properties / body / items / required
        Added value: +[
        +  "keywords"
        +]
      • changedInput schema / properties / body / items / type
        Previous value: -[
        -  "object",
        -  "null"
        -]New value: +"object"
      • changedInput schema / required
        Previous value: -[]New value: +[
        +  "body"
        +]
      • removedOutput schema / x-fastmcp-wrap-result
        Removed value: -true
    • Changedpost_dataforseo_keywords_trends_merged_data_live7 fields changed
      • removedInput schema / properties / body / example
        Removed value: -[
        -  {
        -    "date_from": "2023-01-01",
        -    "date_to": "2024-01-01",
        -    "keywords": [
        -      "rugby",
        -      "cricket"
        -    ],
        -    "location_name": "United States",
        -    "type": "web"
        -  }
        -]
      • removedInput schema / properties / body / items / anyOf
        Removed value: -[
        -  {
        -    "example": [
        -      {
        -        "date_from": "2023-01-01",
        -        "date_to": "2024-01-01",
        -        "keywords": [
        -          "rugby",
        -          "cricket"
        -        ],
        -        "location_name": "United States",
        -        "type": "web"
        -      }
        -    ],
        -    "properties": {
        -      "date_from": {
        -        "description": "<em>starting date of the time range</em><br>optional field<br>if you don't specify this field, the current day and month of the preceding year will be used by default<br>minimal value for the <code>web</code> type: <code>2004-01-01</code><br>minimal value for other types: <code>2008-01-01</code><br>date format: <code>\"yyyy-mm-dd\"</code><br>example:<br><code>\"2019-01-15\"</code>",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      },
        -      "date_to": {
        -        "description": "<em>ending date of the time range</em><br>optional field<br>if you don't specify this field, the today's date will be used by default<br>date format: <code>\"yyyy-mm-dd\"</code><br>example:<br><code>\"2019-01-15\"</code>",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      },
        -      "keywords": {
        -        "description": "<em>keywords</em><br><strong>required field</strong><br>the maximum number of keywords you can specify: 5<br>avoid symbols and special characters (e.g., UTF symbols, emojis);<br>specifying non-Latin characters, you’ll get data for the countries where they are used<p>learn more about rules and limitations of <code>keyword</code> and <code>keywords</code> fields in DataForSEO APIs in this <a href=\"https://dataforseo.com/help-center/rules-and-limitations-of-keyword-and-keywords-fields-in-dataforseo-apis\" rel=\"noopener noreferrer\" target=\"_blank\">Help Center article</a>",
        -        "items": {
        -          "type": "string"
        -        },
        -        "type": "array"
        -      },
        -      "location_code": {
        -        "description": "<em>search engine location code</em><br>optional field<br>if you don't use this field, you will recieve global results<br><strong>if you use this field, you don't need to specify <code>location_name</code></strong><br>you can receive the list of available locations of the search engines with their <code>location_code</code> by making a separate request to <code>https://api.dataforseo.com/v3/keywords_data/dataforseo_trends/locations</code><br><strong>note that the data will be provided for the country the specified <code>location_code</code> belongs to;</strong><br>example:<br><code class=\"long-string\">2840</code>",
        -        "type": [
        -          "integer",
        -          "null"
        -        ]
        -      },
        -      "location_name": {
        -        "description": "<em>full name of search engine location</em><br>optional field<br>if you don't use this field, you will recieve global results<br><strong>if you use this field, you don't need to specify <code>location_code</code></strong><br>you can receive the list of available locations of the search engine with their <code>location_name</code> by making a separate request to <code>https://api.dataforseo.com/v3/keywords_data/dataforseo_trends/locations</code><br><strong>note that the data will be provided for the country the specified <code>location_name</code> belongs to;</strong><br>example:<br><code class=\"long-string\">United Kingdom</code>",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      },
        -      "tag": {
        -        "description": "<em>user-defined task identifier</em><br>optional field<br><em>the character limit is 255</em><br>you can use this parameter to identify the task and match it with the result<br>you will find the specified <code>tag</code> value in the <code>data</code> object of the response",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      },
        -      "time_range": {
        -        "description": "<em>preset time ranges</em><br>optional field<br>if you specify <code>date_from</code> or <code>date_to</code> parameters, this field will be ignored when setting a task<br><em>possible values for all <code>type</code> parameters:</em><br><code>past_4_hours</code>, <code>past_day</code>, <code>past_7_days</code>, <code>past_30_days</code>, <code>past_90_days</code>, <code>past_12_months</code>, <code>past_5_years</code>",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      },
        -      "type": {
        -        "description": "type of element",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      }
        -    },
        -    "type": "object"
        -  }
        -]
      • addedInput schema / properties / body / items / properties
        Added value: +{
        +  "date_from": {
        +    "description": "starting date of the time range optional field if you don’t specify this field, the current day and month of the preceding year will be used by default minimal value for the web type: 2004-01-01 minimal value for other types: 2008-01-01 date format: \"yyyy-mm-dd\" example: \"2019-01-15\"",
        +    "type": "string"
        +  },
        +  "date_to": {
        +    "description": "ending date of the time range optional field if you don’t specify this field, the today’s date will be used by default date format: \"yyyy-mm-dd\" example: \"2019-01-15\"",
        +    "type": "string"
        +  },
        +  "keywords": {
        +    "description": "keywords required field the maximum number of keywords you can specify: 5 avoid symbols and special characters (e.g., UTF symbols, emojis); specifying non-Latin characters, you’ll get data for the countries where they are used learn more about rules and limitations of keyword and keywords fields in DataForSEO APIs in this Help Center article",
        +    "items": {
        +      "type": "string"
        +    },
        +    "type": "array"
        +  },
        +  "location_code": {
        +    "description": "search engine location code optional field if you don’t use this field, you will recieve global results if you use this field, you don’t need to specify location_name you can receive the list of available locations of the search engines with their location_code by making a separate request to https://api.dataforseo.com/v3/keywords_data/dataforseo_trends/locations note that the data will be provided for the country the specified location_code belongs to; example: 2840",
        +    "type": "integer"
        +  },
        +  "location_name": {
        +    "description": "full name of search engine location optional field if you don’t use this field, you will recieve global results if you use this field, you don’t need to specify location_code you can receive the list of available locations of the search engine with their location_name by making a separate request to https://api.dataforseo.com/v3/keywords_data/dataforseo_trends/locations note that the data will be provided for the country the specified location_name belongs to; example: United Kingdom",
        +    "type": "string"
        +  },
        +  "tag": {
        +    "description": "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",
        +    "type": "string"
        +  },
        +  "time_range": {
        +    "description": "preset time ranges optional field if you specify date_from or date_to parameters, this field will be ignored when setting a task possible values for all type parameters: past_4_hours, past_day, past_7_days, past_30_days, past_90_days, past_12_months, past_5_years",
        +    "type": "string"
        +  },
        +  "type": {
        +    "description": "type of element",
        +    "type": "string"
        +  }
        +}
      • addedInput schema / properties / body / items / required
        Added value: +[
        +  "keywords"
        +]
      • changedInput schema / properties / body / items / type
        Previous value: -[
        -  "object",
        -  "null"
        -]New value: +"object"
      • changedInput schema / required
        Previous value: -[]New value: +[
        +  "body"
        +]
      • removedOutput schema / x-fastmcp-wrap-result
        Removed value: -true
    • Changedpost_dataforseo_keywords_trends_subregion_interests_live7 fields changed
      • removedInput schema / properties / body / example
        Removed value: -[
        -  {
        -    "date_from": "2023-01-01",
        -    "date_to": "2024-01-01",
        -    "keywords": [
        -      "rugby",
        -      "cricket"
        -    ],
        -    "location_name": "United States",
        -    "type": "web"
        -  }
        -]
      • removedInput schema / properties / body / items / anyOf
        Removed value: -[
        -  {
        -    "example": [
        -      {
        -        "date_from": "2023-01-01",
        -        "date_to": "2024-01-01",
        -        "keywords": [
        -          "rugby",
        -          "cricket"
        -        ],
        -        "location_name": "United States",
        -        "type": "web"
        -      }
        -    ],
        -    "properties": {
        -      "date_from": {
        -        "description": "<em>starting date of the time range</em><br>optional field<br>if you don't specify this field, the current day and month of the preceding year will be used by default<br>minimal value for the <code>web</code> type: <code>2004-01-01</code><br>minimal value for other types: <code>2008-01-01</code><br>date format: <code>\"yyyy-mm-dd\"</code><br>example:<br><code>\"2019-01-15\"</code>",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      },
        -      "date_to": {
        -        "description": "<em>ending date of the time range</em><br>optional field<br>if you don't specify this field, the today's date will be used by default<br>date format: <code>\"yyyy-mm-dd\"</code><br>example:<br><code>\"2019-01-15\"</code>",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      },
        -      "keywords": {
        -        "description": "<em>keywords</em><br><strong>required field</strong><br>the maximum number of keywords you can specify: 5<br>avoid symbols and special characters (e.g., UTF symbols, emojis);<br>specifying non-Latin characters, you’ll get data for the countries where they are used<p>learn more about rules and limitations of <code>keyword</code> and <code>keywords</code> fields in DataForSEO APIs in this <a href=\"https://dataforseo.com/help-center/rules-and-limitations-of-keyword-and-keywords-fields-in-dataforseo-apis\" rel=\"noopener noreferrer\" target=\"_blank\">Help Center article</a>",
        -        "items": {
        -          "type": "string"
        -        },
        -        "type": "array"
        -      },
        -      "location_code": {
        -        "description": "<em>search engine location code</em><br>optional field<br>if you don't use this field, you will recieve global results<br><strong>if you use this field, you don't need to specify <code>location_name</code></strong><br>you can receive the list of available locations of the search engines with their <code>location_code</code> by making a separate request to <code>https://api.dataforseo.com/v3/keywords_data/dataforseo_trends/locations</code><br><strong>note that the data will be provided for the country the specified <code>location_code</code> belongs to;</strong><br>example:<br><code class=\"long-string\">2840</code>",
        -        "type": [
        -          "integer",
        -          "null"
        -        ]
        -      },
        -      "location_name": {
        -        "description": "<em>full name of search engine location</em><br>optional field<br>if you don't use this field, you will recieve global results<br><strong>if you use this field, you don't need to specify <code>location_code</code></strong><br>you can receive the list of available locations of the search engine with their <code>location_name</code> by making a separate request to <code>https://api.dataforseo.com/v3/keywords_data/dataforseo_trends/locations</code><br><strong>note that the data will be provided for the country the specified <code>location_name</code> belongs to;</strong><br>example:<br><code class=\"long-string\">United Kingdom</code>",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      },
        -      "tag": {
        -        "description": "<em>user-defined task identifier</em><br>optional field<br><em>the character limit is 255</em><br>you can use this parameter to identify the task and match it with the result<br>you will find the specified <code>tag</code> value in the <code>data</code> object of the response",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      },
        -      "time_range": {
        -        "description": "<em>preset time ranges</em><br>optional field<br>if you specify <code>date_from</code> or <code>date_to</code> parameters, this field will be ignored when setting a task<br><em>possible values for all <code>type</code> parameters:</em><br><code>past_4_hours</code>, <code>past_day</code>, <code>past_7_days</code>, <code>past_30_days</code>, <code>past_90_days</code>, <code>past_12_months</code>, <code>past_5_years</code>",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      },
        -      "type": {
        -        "description": "type of element",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      }
        -    },
        -    "type": "object"
        -  }
        -]
      • addedInput schema / properties / body / items / properties
        Added value: +{
        +  "date_from": {
        +    "description": "starting date of the time range optional field if you don’t specify this field, the current day and month of the preceding year will be used by default minimal value for the web type: 2004-01-01 minimal value for other types: 2008-01-01 date format: \"yyyy-mm-dd\" example: \"2019-01-15\"",
        +    "type": "string"
        +  },
        +  "date_to": {
        +    "description": "ending date of the time range optional field if you don’t specify this field, the today’s date will be used by default date format: \"yyyy-mm-dd\" example: \"2019-01-15\"",
        +    "type": "string"
        +  },
        +  "keywords": {
        +    "description": "keywords required field the maximum number of keywords you can specify: 5 avoid symbols and special characters (e.g., UTF symbols, emojis); specifying non-Latin characters, you’ll get data for the countries where they are used learn more about rules and limitations of keyword and keywords fields in DataForSEO APIs in this Help Center article",
        +    "items": {
        +      "type": "string"
        +    },
        +    "type": "array"
        +  },
        +  "location_code": {
        +    "description": "search engine location code optional field if you don’t use this field, you will recieve global results if you use this field, you don’t need to specify location_name you can receive the list of available locations of the search engines with their location_code by making a separate request to https://api.dataforseo.com/v3/keywords_data/dataforseo_trends/locations note that the data will be provided for the country the specified location_code belongs to; example: 2840",
        +    "type": "integer"
        +  },
        +  "location_name": {
        +    "description": "full name of search engine location optional field if you don’t use this field, you will recieve global results if you use this field, you don’t need to specify location_code you can receive the list of available locations of the search engine with their location_name by making a separate request to https://api.dataforseo.com/v3/keywords_data/dataforseo_trends/locations note that the data will be provided for the country the specified location_name belongs to; example: United Kingdom",
        +    "type": "string"
        +  },
        +  "tag": {
        +    "description": "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",
        +    "type": "string"
        +  },
        +  "time_range": {
        +    "description": "preset time ranges optional field if you specify date_from or date_to parameters, this field will be ignored when setting a task possible values for all type parameters: past_4_hours, past_day, past_7_days, past_30_days, past_90_days, past_12_months, past_5_years",
        +    "type": "string"
        +  },
        +  "type": {
        +    "description": "type of element",
        +    "type": "string"
        +  }
        +}
      • addedInput schema / properties / body / items / required
        Added value: +[
        +  "keywords"
        +]
      • changedInput schema / properties / body / items / type
        Previous value: -[
        -  "object",
        -  "null"
        -]New value: +"object"
      • changedInput schema / required
        Previous value: -[]New value: +[
        +  "body"
        +]
      • removedOutput schema / x-fastmcp-wrap-result
        Removed value: -true
    • Changedpost_dataforseo_labs_google_bulk_keyword_difficulty_live8 fields changed
      • removedInput schema / properties / body / example
        Removed value: -[
        -  {
        -    "keywords": [
        -      "dentist new york",
        -      "pizza brooklyn",
        -      "car dealer los angeles"
        -    ],
        -    "language_code": "en",
        -    "location_code": 2840
        -  }
        -]
      • addedInput schema / properties / body / items / allOf
        Added value: +[
        +  {
        +    "anyOf": [
        +      {
        +        "required": [
        +          "location_name"
        +        ]
        +      },
        +      {
        +        "required": [
        +          "location_code"
        +        ]
        +      }
        +    ]
        +  },
        +  {
        +    "anyOf": [
        +      {
        +        "required": [
        +          "language_name"
        +        ]
        +      },
        +      {
        +        "required": [
        +          "language_code"
        +        ]
        +      }
        +    ]
        +  }
        +]
      • removedInput schema / properties / body / items / anyOf
        Removed value: -[
        -  {
        -    "example": [
        -      {
        -        "keywords": [
        -          "dentist new york",
        -          "pizza brooklyn",
        -          "car dealer los angeles"
        -        ],
        -        "language_code": "en",
        -        "location_code": 2840
        -      }
        -    ],
        -    "properties": {
        -      "keywords": {
        -        "description": "<em>target keywords</em><br><strong>required field</strong><br>UTF-8 encoding<br>maximum number of keywords you can specify in this array: 1000<br>the keywords will be converted to lowercase format<p>learn more about rules and limitations of <code>keyword</code> and <code>keywords</code> fields in DataForSEO APIs in this <a href=\"https://dataforseo.com/help-center/rules-and-limitations-of-keyword-and-keywords-fields-in-dataforseo-apis\" rel=\"noopener noreferrer\" target=\"_blank\">Help Center article</a>",
        -        "items": {
        -          "type": "string"
        -        },
        -        "type": "array"
        -      },
        -      "language_code": {
        -        "description": "<em>language code</em><br><strong>required field if don't specify <code>language_name</code></strong><br>you can receive the list of available languages with their <code>language_code</code> by making a separate request to the <br><code>https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages</code><br>example:<br><code class=\"long-string\">en</code>",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      },
        -      "language_name": {
        -        "description": "<em>full name of the language</em><br><strong>required field if don't specify <code>language_code</code></strong><br>you can receive the list of available languages with their <code>language_name</code> by making a separate request to the <br><code>https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages</code><br>example:<br><code class=\"long-string\">English</code>",
        -        "type": "string"
        -      },
        -      "location_code": {
        -        "description": "<em>location code</em><br><strong>required field if don't specify <code>location_name</code></strong><br>you can receive the list of available locations with their <code>location_code</code> by making a separate request to the <br><code>https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages</code><br>example:<br><code class=\"long-string\">2840</code>",
        -        "type": "integer"
        -      },
        -      "location_name": {
        -        "description": "<em>full name of the location</em><br><strong>required field if don't specify <code>location_code</code></strong><br>you can receive the list of available locations with their <code>location_name</code> by making a separate request to the <br><code>https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages</code><br>example:<br><code class=\"long-string\">United Kingdom</code>",
        -        "type": "string"
        -      },
        -      "tag": {
        -        "description": "<em>user-defined task identifier</em><br>optional field<br><em>the character limit is 255</em><br>you can use this parameter to identify the task and match it with the result<br>you will find the specified <code>tag</code> value in the <code>data</code> object of the response",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      }
        -    },
        -    "type": "object"
        -  }
        -]
      • addedInput schema / properties / body / items / properties
        Added value: +{
        +  "keywords": {
        +    "description": "target keywords required field UTF-8 encoding maximum number of keywords you can specify in this array: 1000 the keywords will be converted to lowercase format learn more about rules and limitations of keyword and keywords fields in DataForSEO APIs in this Help Center article",
        +    "items": {
        +      "type": "string"
        +    },
        +    "type": "array"
        +  },
        +  "language_code": {
        +    "description": "language code required field if don’t specify language_name you can receive the list of available languages with their language_code by making a separate request to the https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages example: en",
        +    "type": "string"
        +  },
        +  "language_name": {
        +    "description": "full name of the language required field if don’t specify language_code you can receive the list of available languages with their language_name by making a separate request to the https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages example: English",
        +    "type": "string"
        +  },
        +  "location_code": {
        +    "description": "location code required field if don’t specify location_name you can receive the list of available locations with their location_code by making a separate request to the https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages example: 2840",
        +    "type": "integer"
        +  },
        +  "location_name": {
        +    "description": "full name of the location required field if don’t specify location_code you can receive the list of available locations with their location_name by making a separate request to the https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages example: United Kingdom",
        +    "type": "string"
        +  },
        +  "tag": {
        +    "description": "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",
        +    "type": "string"
        +  }
        +}
      • addedInput schema / properties / body / items / required
        Added value: +[
        +  "keywords"
        +]
      • changedInput schema / properties / body / items / type
        Previous value: -[
        -  "object",
        -  "null"
        -]New value: +"object"
      • changedInput schema / required
        Previous value: -[]New value: +[
        +  "body"
        +]
      • removedOutput schema / x-fastmcp-wrap-result
        Removed value: -true
    • Changedpost_dataforseo_labs_google_categories_for_kw_live8 fields changed
      • removedInput schema / properties / body / example
        Removed value: -[
        -  {
        -    "keywords": [
        -      "dentist new york",
        -      "pizza brooklyn",
        -      "car dealer los angeles"
        -    ],
        -    "language_code": "en"
        -  }
        -]
      • addedInput schema / properties / body / items / allOf
        Added value: +[
        +  {
        +    "anyOf": [
        +      {
        +        "required": [
        +          "language_name"
        +        ]
        +      },
        +      {
        +        "required": [
        +          "language_code"
        +        ]
        +      }
        +    ]
        +  }
        +]
      • removedInput schema / properties / body / items / anyOf
        Removed value: -[
        -  {
        -    "example": [
        -      {
        -        "keywords": [
        -          "dentist new york",
        -          "pizza brooklyn",
        -          "car dealer los angeles"
        -        ],
        -        "language_code": "en"
        -      }
        -    ],
        -    "properties": {
        -      "keywords": {
        -        "description": "<em>target keywords</em><br><strong>required field</strong><br>UTF-8 encoding<br>maximum number of keywords you can specify in this array: 1000<br>the keywords will be converted to lowercase format<p>learn more about rules and limitations of <code>keyword</code> and <code>keywords</code> fields in DataForSEO APIs in this <a href=\"https://dataforseo.com/help-center/rules-and-limitations-of-keyword-and-keywords-fields-in-dataforseo-apis\" rel=\"noopener noreferrer\" target=\"_blank\">Help Center article</a>",
        -        "items": {
        -          "type": "string"
        -        },
        -        "type": "array"
        -      },
        -      "language_code": {
        -        "description": "<em>language code</em><br><strong>required field if don't specify <code>language_name</code></strong><br>you can receive the list of available languages with their <code>language_code</code> by making a separate request to the <br><code>https://api.dataforseo.com/v3/dataforseo_labs/google/categories_for_keywords/languages</code><br>example:<br><code class=\"long-string\">en</code>",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      },
        -      "language_name": {
        -        "description": "<em>full name of the language</em><br><strong>required field if don't specify <code>language_code</code></strong><br>you can receive the list of available languages with their <code>language_name</code> by making a separate request to the <br><code>https://api.dataforseo.com/v3/dataforseo_labs/google/categories_for_keywords/languages</code><br>example:<br><code class=\"long-string\">English</code>",
        -        "type": "string"
        -      },
        -      "tag": {
        -        "description": "<em>user-defined task identifier</em><br>optional field<br><em>the character limit is 255</em><br>you can use this parameter to identify the task and match it with the result<br>you will find the specified <code>tag</code> value in the <code>data</code> object of the response",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      }
        -    },
        -    "type": "object"
        -  }
        -]
      • addedInput schema / properties / body / items / properties
        Added value: +{
        +  "keywords": {
        +    "description": "target keywords required field UTF-8 encoding maximum number of keywords you can specify in this array: 1000 the keywords will be converted to lowercase format learn more about rules and limitations of keyword and keywords fields in DataForSEO APIs in this Help Center article",
        +    "items": {
        +      "type": "string"
        +    },
        +    "type": "array"
        +  },
        +  "language_code": {
        +    "description": "language code required field if don’t specify language_name you can receive the list of available languages with their language_code by making a separate request to the https://api.dataforseo.com/v3/dataforseo_labs/google/categories_for_keywords/languages example: en",
        +    "type": "string"
        +  },
        +  "language_name": {
        +    "description": "full name of the language required field if don’t specify language_code you can receive the list of available languages with their language_name by making a separate request to the https://api.dataforseo.com/v3/dataforseo_labs/google/categories_for_keywords/languages example: English",
        +    "type": "string"
        +  },
        +  "tag": {
        +    "description": "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",
        +    "type": "string"
        +  }
        +}
      • addedInput schema / properties / body / items / required
        Added value: +[
        +  "keywords"
        +]
      • changedInput schema / properties / body / items / type
        Previous value: -[
        -  "object",
        -  "null"
        -]New value: +"object"
      • changedInput schema / required
        Previous value: -[]New value: +[
        +  "body"
        +]
      • removedOutput schema / x-fastmcp-wrap-result
        Removed value: -true
    • Changedpost_dataforseo_labs_google_historical_keyword_data_live8 fields changed
      • removedInput schema / properties / body / example
        Removed value: -[
        -  {
        -    "keywords": [
        -      "iphone"
        -    ],
        -    "language_code": "en",
        -    "location_code": 2840
        -  }
        -]
      • addedInput schema / properties / body / items / allOf
        Added value: +[
        +  {
        +    "anyOf": [
        +      {
        +        "required": [
        +          "location_name"
        +        ]
        +      },
        +      {
        +        "required": [
        +          "location_code"
        +        ]
        +      }
        +    ]
        +  },
        +  {
        +    "anyOf": [
        +      {
        +        "required": [
        +          "language_name"
        +        ]
        +      },
        +      {
        +        "required": [
        +          "language_code"
        +        ]
        +      }
        +    ]
        +  }
        +]
      • removedInput schema / properties / body / items / anyOf
        Removed value: -[
        -  {
        -    "example": [
        -      {
        -        "keywords": [
        -          "iphone"
        -        ],
        -        "language_code": "en",
        -        "location_code": 2840
        -      }
        -    ],
        -    "properties": {
        -      "keywords": {
        -        "description": "<em>keywords</em><br><strong>required field</strong><br>The maximum number of keywords you can specify: 700<br>The maximum number of characters for each keyword: 80<br>The maximum number of words for each keyword phrase: 10<br>the specified keywords will be converted to lowercase format, data will be provided in a separate array<p><strong>note</strong> that if some of the keywords specified in this array are omitted in the results you receive, then our database doesn't contain such keywords and cannot return data on them<br>you will not be charged for the keywords omitted in the results<p>learn more about rules and limitations of <code>keyword</code> and <code>keywords</code> fields in DataForSEO APIs in this <a href=\"https://dataforseo.com/help-center/rules-and-limitations-of-keyword-and-keywords-fields-in-dataforseo-apis\" rel=\"noopener noreferrer\" target=\"_blank\">Help Center article</a>",
        -        "items": {
        -          "type": "string"
        -        },
        -        "type": "array"
        -      },
        -      "language_code": {
        -        "description": "<em>language code</em><br><strong>required field if you don't specify</strong> <code>language_name</code><br><strong>Note:</strong> it is required to specify either <code>language_name</code> or <code>language_code</code><br>you can receive the list of available locations with their <code>language_code</code> by making a separate request to the <br><code>https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages</code><br>example:<br><code class=\"long-string\">en</code>",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      },
        -      "language_name": {
        -        "description": "<em>full name of the language</em><br><strong>required field if you don't specify</strong> <code>language_code</code><br><strong>Note:</strong> it is required to specify either <code>language_name</code> or <code>language_code</code><br>you can receive the list of available locations with their <code>language_name</code> by making a separate request to the <br><code>https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages</code><br>example:<br><code class=\"long-string\">English</code>",
        -        "type": "string"
        -      },
        -      "location_code": {
        -        "description": "<em>location code</em><br><strong>required field if you don't specify</strong> <code>location_name</code><br><strong>Note:</strong> it is required to specify either <code>location_name</code> or <code>location_code</code><br>you can receive the list of available locations with their <code>location_code</code> by making a separate request to the <br><code>https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages</code><br>example:<br><code class=\"long-string\">2840</code>",
        -        "type": "integer"
        -      },
        -      "location_name": {
        -        "description": "<em>full name of the location</em><br><strong>required field if you don't specify</strong> <code>location_code</code><br><strong>Note:</strong> it is required to specify either <code>location_name</code> or <code>location_code</code><br>you can receive the list of available locations with their <code>location_name</code> by making a separate request to the <br><code>https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages</code><br>example:<br><code class=\"long-string\">United Kingdom</code>",
        -        "type": "string"
        -      },
        -      "tag": {
        -        "description": "<em>user-defined task identifier</em><br>optional field<br><em>the character limit is 255</em><br>you can use this parameter to identify the task and match it with the result<br>you will find the specified <code>tag</code> value in the <code>data</code> object of the response",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      }
        -    },
        -    "type": "object"
        -  }
        -]
      • addedInput schema / properties / body / items / properties
        Added value: +{
        +  "keywords": {
        +    "description": "keywords required field The maximum number of keywords you can specify: 700 The maximum number of characters for each keyword: 80 The maximum number of words for each keyword phrase: 10 the specified keywords will be converted to lowercase format, data will be provided in a separate array note that if some of the keywords specified in this array are omitted in the results you receive, then our database doesn’t contain such keywords and cannot return data on them you will not be charged for the keywords omitted in the results learn more about rules and limitations of keyword and keywords fields in DataForSEO APIs in this Help Center article",
        +    "items": {
        +      "type": "string"
        +    },
        +    "type": "array"
        +  },
        +  "language_code": {
        +    "description": "language code required field if you don’t specify language_name Note: it is required to specify either language_name or language_code you can receive the list of available locations with their language_code by making a separate request to the https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages example: en",
        +    "type": "string"
        +  },
        +  "language_name": {
        +    "description": "full name of the language required field if you don’t specify language_code Note: it is required to specify either language_name or language_code you can receive the list of available locations with their language_name by making a separate request to the https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages example: English",
        +    "type": "string"
        +  },
        +  "location_code": {
        +    "description": "location code required field if you don’t specify location_name Note: it is required to specify either location_name or location_code you can receive the list of available locations with their location_code by making a separate request to the https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages example: 2840",
        +    "type": "integer"
        +  },
        +  "location_name": {
        +    "description": "full name of the location required field if you don’t specify location_code Note: it is required to specify either location_name or location_code you can receive the list of available locations with their location_name by making a separate request to the https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages example: United Kingdom",
        +    "type": "string"
        +  },
        +  "tag": {
        +    "description": "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",
        +    "type": "string"
        +  }
        +}
      • addedInput schema / properties / body / items / required
        Added value: +[
        +  "keywords"
        +]
      • changedInput schema / properties / body / items / type
        Previous value: -[
        -  "object",
        -  "null"
        -]New value: +"object"
      • changedInput schema / required
        Previous value: -[]New value: +[
        +  "body"
        +]
      • removedOutput schema / x-fastmcp-wrap-result
        Removed value: -true
    • Changedpost_dataforseo_labs_google_keyword_ideas_live6 fields changed
      • removedInput schema / properties / body / example
        Removed value: -[
        -  {
        -    "include_serp_info": true,
        -    "keywords": [
        -      "phone",
        -      "watch"
        -    ],
        -    "language_code": "en",
        -    "limit": 3,
        -    "location_code": 2840
        -  }
        -]
      • changedInput schema / properties / body / items / anyOf
        Previous value: -[
        -  {
        -    "example": [
        -      {
        -        "include_serp_info": true,
        -        "keywords": [
        -          "phone",
        -          "watch"
        -        ],
        -        "language_code": "en",
        -        "limit": 3,
        -        "location_code": 2840
        -      }
        -    ],
        -    "properties": {
        -      "closely_variants": {
        -        "description": "<em>search mode</em><br>optional field<br>if set to_<code class=\"prettyprint\">true</code> the results will be based on the phrase-match search algorithm<br>if set to <code class=\"prettyprint\">false</code> the results will be based on the broad-match search algorithm<br>default value: <code>false</code>n",
        -        "type": [
        -          "boolean",
        -          "null"
        -        ]
        -      },
        -      "filters": {
        -        "description": "<em>array of results filtering parameters</em><br>optional field<br><strong>you can add several filters at once (8 filters maximum)</strong><br>you should set a logical operator <code>and</code>, <code>or</code> between the conditions<br>the following operators are supported:<br><code>regex</code>, <code>not_regex</code>, <code>&lt;</code>, <code>&lt;=</code>, <code>&gt;</code>, <code>&gt;=</code>, <code>=</code>, <code>&lt;&gt;</code>, <code>in</code>, <code>not_in</code>, <code>match</code>, <code>not_match</code>, <code>ilike</code>, <code>not_ilike</code>, <code>like</code>, <code>not_like</code><br>you can use the <code>%</code> operator with <code>like</code> and <code>not_like</code>,as well as <code>ilike</code>, <code>not_ilike</code> to match any string of zero or more characters<br><strong>note that you can not filter the results by <code>relevance</code></strong><br>example:<br><code>[\"keyword_info.search_volume\",\"&gt;\",0]</code><p><code>[[\"keyword_info.search_volume\",\"in\",[0,1000]],<br>\"and\",<br>[\"keyword_info.competition_level\",\"=\",\"LOW\"]]</code><p><code>[[\"keyword_info.search_volume\",\"&gt;\",100],<br>\"and\",<br>[[\"keyword_info.cpc\",\"&lt;\",0.5],<br>\"or\",<p>[\"keyword_info.high_top_of_page_bid\",\"&lt;=\",0.5]]]</code><br>for more information about filters, please refer to <a href=\"/v3/dataforseo_labs/filters\" target=\"_blank\" rel=\"noopener noreferrer\">Dataforseo Labs - Filters</a> or this <a href=\"https://dataforseo.com/help-center/how-to-use-filters-in-dataforseo-labs-api\" rel=\"noopener noreferrer\" target=\"_blank\">help center guide</a>",
        -        "items": {
        -          "type": [
        -            "object",
        -            "null"
        -          ]
        -        },
        -        "type": [
        -          "array",
        -          "null"
        -        ]
        -      },
        -      "ignore_synonyms": {
        -        "description": "<em>ignore highly similar keywords</em><br>optional field<br>if set to_<code class=\"prettyprint\">true</code> only core keywords will be returned, all highly similar keywords will be excluded;  <br>default value: <code>false</code>n",
        -        "type": [
        -          "boolean",
        -          "null"
        -        ]
        -      },
        -      "include_clickstream_data": {
        -        "description": "<em>include or exclude data from clickstream-based metrics in the result</em><br>optional field<br>if the parameter is set to <code>true</code>, you will receive <code>clickstream_keyword_info</code>, <code>keyword_info_normalized_with_clickstream</code>, and <code>keyword_info_normalized_with_bing</code> fields in the response<br>default value: <code>false</code><br>with this parameter enabled, you will be charged double the price for the request<p>learn more about how clickstream-based metrics are calculated in this <a href=\"https://dataforseo.com/help-center/what-are-clickstream-based-metrics-and-how-do-we-calculate-them\" rel=\"noopener noreferrer\" target=\"_blank\">help center article</a>",
        -        "type": [
        -          "boolean",
        -          "null"
        -        ]
        -      },
        -      "include_serp_info": {
        -        "description": "<em>include data from SERP for each keyword</em><br>optional field<br>if set to <code>true</code>, we will return a <code>serp_info</code> array containing SERP data (number of search results, relevant URL, and SERP features) for every keyword in the response<br>default value: <code>false</code>",
        -        "type": [
        -          "boolean",
        -          "null"
        -        ]
        -      },
        -      "keywords": {
        -        "description": "<em>keywords</em><br><strong>required field</strong><br>UTF-8 encoding<br>The maximum number of keywords you can specify: 200.<br>The keywords will be converted to lowercase format<p>learn more about rules and limitations of <code>keyword</code> and <code>keywords</code> fields in DataForSEO APIs in this <a href=\"https://dataforseo.com/help-center/rules-and-limitations-of-keyword-and-keywords-fields-in-dataforseo-apis\" rel=\"noopener noreferrer\" target=\"_blank\">Help Center article</a>",
        -        "items": {
        -          "type": "string"
        -        },
        -        "type": "array"
        -      },
        -      "language_code": {
        -        "description": "<em>language code</em><br>optional field<br>if you use this field, you don't need to specify <code>language_name</code><br>you can receive the list of available languages with their <code>language_code</code> by making a separate request to the<br><code>https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages</code><br>example:<br><code class=\"long-string\">en</code><br><strong>Note:</strong> if omitted, results default to the language with the most keyword records in the specified location;<br>refer to the <code>available_languages.keywords</code> field of the <a href=\"https://docs.dataforseo.com/v3/dataforseo_labs/locations_and_languages\" target=\"_blank\">Locations and Languages endpoint</a> to determine the default language",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      },
        -      "language_name": {
        -        "description": "<em>full name of the language</em><br>optional field<br>if you use this field, you don't need to specify <code>language_code</code><br>you can receive the list of available languages with their <code>language_name</code> by making a separate request to the<br><code>https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages</code><br>example:<br><code class=\"long-string\">English</code><br><strong>Note:</strong> if omitted, results default to the language with the most keyword records in the specified location;<br>refer to the <code>available_languages.keywords</code> field of the <a href=\"https://docs.dataforseo.com/v3/dataforseo_labs/locations_and_languages\" target=\"_blank\">Locations and Languages endpoint</a> to determine the default language",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      },
        -      "limit": {
        -        "description": "<em>the maximum number of keywords in the results array</em><br>optional field<br>default value: <code>700</code><br>maximum value: <code>1000</code>",
        -        "type": [
        -          "integer",
        -          "null"
        -        ]
        -      },
        -      "location_code": {
        -        "description": "<em>unique location identifier</em><br><strong>required field if you don't specify</strong> <code>location_name</code><br><strong>Note:</strong> it is required to specify either <code>location_name</code> or <code>location_code</code><br>you can receive the list of available locations with their <code>location_code</code> by making a separate request to the <br><code>https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages</code><br>example:<br><code class=\"long-string\">2840</code>",
        -        "type": "integer"
        -      },
        -      "location_name": {
        -        "description": "<em>full name of the location</em><br><strong>required field if you don't specify</strong> <code>location_code</code><br><strong>Note:</strong> it is required to specify either <code>location_name</code> or <code>location_code</code><br>you can receive the list of available locations with their <code>location_name</code> by making a separate request to the<br><code>https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages</code><br>example:<br><code class=\"long-string\">United Kingdom</code>",
        -        "type": "string"
        -      },
        -      "offset": {
        -        "description": "<em>offset in the results array of returned keywords</em><br>optional field<br>default value: <code>0</code><br>if you specify the <code>10</code> value, the first ten keywords in the results array will be omitted and the data will be provided for the successive keywords<br><strong>Note:</strong> we recommend using this parameter only when retrieving up to 10,000 results<br>for retrieving over 10,000 results, use the <code>offset_token</code> instead.",
        -        "type": [
        -          "integer",
        -          "null"
        -        ]
        -      },
        -      "offset_token": {
        -        "description": "<em>offset token for subsequent requests</em><br>optional field<br>provided in the identical filed of the response to each request;<br>use this parameter to avoid timeouts while trying to obtain over 10,000 results in a single request;<br>by specifying the unique <code>offset_token</code> value from the response array, you will get the subsequent results of the initial task;<br><code>offset_token</code> values are unique for each subsequent task <br><strong>Note:</strong> if the <code>offset_token</code> is specified in the request, all other parameters except <code>limit</code> will not be taken into account when processing a task.<br>learn more about this parameter on our <a href=\"https://dataforseo.com/help-center/what-is-the-difference-between-the-offset-and-offset_token-parameters#offset_token\" target=\"_blank\">Help Center</a>",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      },
        -      "order_by": {
        -        "description": "<em>results sorting rules</em><br>optional field<br>you can use the same values as in the <code>filters</code> array to sort the results<br>possible sorting types:<br><code>asc</code> - results will be sorted in the ascending order<br><code>desc</code> - results will be sorted in the descending order<br>you should use a comma to set up a sorting parameter<p>default rule:<br><code>[\"relevance,desc\"]</code><br>relevance is used as the default sorting rule to provide you with the closest keyword ideas. We recommend using this sorting rule to get highly-relevant search terms. <strong>Note</strong> that <code>relevance</code> is only our internal system identifier, so <strong>it can not be used as a filter</strong>, and you will not find this field in the <code>result</code> array. The relevance score is based on a similar principle as used in <a href=\"/v3/keywords_data/google/keywords_for_keywords/live/?php\">the Keywords For Keywords</a> endpoint.<p><strong>note that you can set no more than three sorting rules in a single request</strong><br>you should use a comma to separate several sorting rules<br>example:<br><code>[\"relevance,desc\",\"keyword_info.search_volume,desc\"]</code>",
        -        "items": {
        -          "type": "string"
        -        },
        -        "type": [
        -          "array",
        -          "null"
        -        ]
        -      },
        -      "tag": {
        -        "description": "<em>user-defined task identifier</em><br>optional field<br><em>the character limit is 255</em><br>you can use this parameter to identify the task and match it with the result<br>you will find the specified <code>tag</code> value in the <code>data</code> object of the response",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      }
        -    },
        -    "type": "object"
        -  }
        -]New value: +[
        +  {
        +    "allOf": [
        +      {
        +        "anyOf": [
        +          {
        +            "required": [
        +              "location_name"
        +            ]
        +          },
        +          {
        +            "required": [
        +              "location_code"
        +            ]
        +          }
        +        ]
        +      }
        +    ],
        +    "required": [
        +      "keywords"
        +    ]
        +  },
        +  {
        +    "required": [
        +      "offset_token"
        +    ]
        +  }
        +]
      • addedInput schema / properties / body / items / properties
        Added value: +{
        +  "closely_variants": {
        +    "description": "search mode optional field if set to_true the results will be based on the phrase-match search algorithm if set to false the results will be based on the broad-match search algorithm default value: falsen",
        +    "type": "boolean"
        +  },
        +  "filters": {
        +    "description": "array of results filtering parameters optional field you can add several filters at once (8 filters maximum) you should set a logical operator and, or between the conditions the following operators are supported: regex, not_regex, <, <=, >, >=, =, <>, in, not_in, match, not_match, ilike, not_ilike, like, not_like you can use the % operator with like and not_like,as well as ilike, not_ilike to match any string of zero or more characters note that you can not filter the results by relevance example: [\"keyword_info.search_volume\",\">\",0] [[\"keyword_info.search_volume\",\"in\",[0,1000]], \"and\", [\"keyword_info.competition_level\",\"=\",\"LOW\"]] [[\"keyword_info.search_volume\",\">\",100], \"and\", [[\"keyword_info.cpc\",\"<\",0.5], \"or\", [\"keyword_info.high_top_of_page_bid\",\"<=\",0.5]]] for more information about filters, please refer to Dataforseo Labs - Filters or this help center guide",
        +    "items": {},
        +    "type": "array"
        +  },
        +  "ignore_synonyms": {
        +    "description": "ignore highly similar keywords optional field if set to_true only core keywords will be returned, all highly similar keywords will be excluded; default value: falsen",
        +    "type": "boolean"
        +  },
        +  "include_clickstream_data": {
        +    "description": "include or exclude data from clickstream-based metrics in the result optional field if the parameter is set to true, you will receive clickstream_keyword_info, keyword_info_normalized_with_clickstream, and keyword_info_normalized_with_bing fields in the response default value: false with this parameter enabled, you will be charged double the price for the request learn more about how clickstream-based metrics are calculated in this help center article",
        +    "type": "boolean"
        +  },
        +  "include_serp_info": {
        +    "description": "include data from SERP for each keyword optional field if set to true, we will return a serp_info array containing SERP data (number of search results, relevant URL, and SERP features) for every keyword in the response default value: false",
        +    "type": "boolean"
        +  },
        +  "keywords": {
        +    "description": "keywords required field UTF-8 encoding The maximum number of keywords you can specify: 200. The keywords will be converted to lowercase format learn more about rules and limitations of keyword and keywords fields in DataForSEO APIs in this Help Center article",
        +    "items": {
        +      "type": "string"
        +    },
        +    "type": "array"
        +  },
        +  "language_code": {
        +    "description": "language code optional field if you use this field, you don’t need to specify language_name you can receive the list of available languages with their language_code by making a separate request to the https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages example: en Note: if omitted, results default to the language with the most keyword records in the specified location; refer to the available_languages.keywords field of the Locations and Languages endpoint to determine the default language",
        +    "type": "string"
        +  },
        +  "language_name": {
        +    "description": "full name of the language optional field if you use this field, you don’t need to specify language_code you can receive the list of available languages with their language_name by making a separate request to the https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages example: English Note: if omitted, results default to the language with the most keyword records in the specified location; refer to the available_languages.keywords field of the Locations and Languages endpoint to determine the default language",
        +    "type": "string"
        +  },
        +  "limit": {
        +    "description": "the maximum number of keywords in the results array optional field default value: 700 maximum value: 1000",
        +    "type": "integer"
        +  },
        +  "location_code": {
        +    "description": "unique location identifier required field if you don’t specify location_name Note: it is required to specify either location_name or location_code you can receive the list of available locations with their location_code by making a separate request to the https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages example: 2840",
        +    "type": "integer"
        +  },
        +  "location_name": {
        +    "description": "full name of the location required field if you don’t specify location_code Note: it is required to specify either location_name or location_code you can receive the list of available locations with their location_name by making a separate request to the https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages example: United Kingdom",
        +    "type": "string"
        +  },
        +  "offset": {
        +    "description": "offset in the results array of returned keywords optional field default value: 0 if you specify the 10 value, the first ten keywords in the results array will be omitted and the data will be provided for the successive keywords Note: we recommend using this parameter only when retrieving up to 10,000 results for retrieving over 10,000 results, use the offset_token instead.",
        +    "type": "integer"
        +  },
        +  "offset_token": {
        +    "description": "offset token for subsequent requests optional field provided in the identical filed of the response to each request; use this parameter to avoid timeouts while trying to obtain over 10,000 results in a single request; by specifying the unique offset_token value from the response array, you will get the subsequent results of the initial task; offset_token values are unique for each subsequent task Note: if the offset_token is specified in the request, all other parameters except limit will not be taken into account when processing a task. learn more about this parameter on our Help Center",
        +    "type": "string"
        +  },
        +  "order_by": {
        +    "description": "results sorting rules optional field you can use the same values as in the filters array to sort the results possible sorting types: asc – results will be sorted in the ascending order desc – results will be sorted in the descending order you should use a comma to set up a sorting parameter default rule: [\"relevance,desc\"] relevance is used as the default sorting rule to provide you with the closest keyword ideas. We recommend using this sorting rule to get highly-relevant search terms. Note that relevance is only our internal system identifier, so it can not be used as a filter, and you will not find this field in the result array. The relevance score is based on a similar principle as used in the Keywords For Keywords endpoint. note that you can set no more than three sorting rules in a single request you should use a comma to separate several sorting rules example: [\"relevance,desc\",\"keyword_info.search_volume,desc\"]",
        +    "items": {
        +      "type": "string"
        +    },
        +    "type": "array"
        +  },
        +  "tag": {
        +    "description": "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",
        +    "type": "string"
        +  }
        +}
      • changedInput schema / properties / body / items / type
        Previous value: -[
        -  "object",
        -  "null"
        -]New value: +"object"
      • changedInput schema / required
        Previous value: -[]New value: +[
        +  "body"
        +]
      • removedOutput schema / x-fastmcp-wrap-result
        Removed value: -true
    • Changedpost_dataforseo_labs_google_keyword_overview_live8 fields changed
      • removedInput schema / properties / body / example
        Removed value: -[
        -  {
        -    "include_clickstream_data": true,
        -    "include_serp_info": true,
        -    "keywords": [
        -      "iphone"
        -    ],
        -    "language_code": "en",
        -    "location_code": 2840
        -  }
        -]
      • addedInput schema / properties / body / items / allOf
        Added value: +[
        +  {
        +    "anyOf": [
        +      {
        +        "required": [
        +          "location_name"
        +        ]
        +      },
        +      {
        +        "required": [
        +          "location_code"
        +        ]
        +      }
        +    ]
        +  },
        +  {
        +    "anyOf": [
        +      {
        +        "required": [
        +          "language_name"
        +        ]
        +      },
        +      {
        +        "required": [
        +          "language_code"
        +        ]
        +      }
        +    ]
        +  }
        +]
      • removedInput schema / properties / body / items / anyOf
        Removed value: -[
        -  {
        -    "example": [
        -      {
        -        "include_clickstream_data": true,
        -        "include_serp_info": true,
        -        "keywords": [
        -          "iphone"
        -        ],
        -        "language_code": "en",
        -        "location_code": 2840
        -      }
        -    ],
        -    "properties": {
        -      "include_clickstream_data": {
        -        "description": "<em>include or exclude data from clickstream-based metrics in the result</em><br>optional field<br>if the parameter is set to <code>true</code>, you will receive <code>clickstream_keyword_info</code>, <code>keyword_info_normalized_with_clickstream</code>, and <code>keyword_info_normalized_with_bing</code> fields in the response<br>default value: <code>false</code><br>with this parameter enabled, you will be charged double the price for the request<p>learn more about how clickstream-based metrics are calculated in this <a href=\"https://dataforseo.com/help-center/what-are-clickstream-based-metrics-and-how-do-we-calculate-them\" rel=\"noopener noreferrer\" target=\"_blank\">help center article</a>",
        -        "type": [
        -          "boolean",
        -          "null"
        -        ]
        -      },
        -      "include_serp_info": {
        -        "description": "<em>include data from SERP for each keyword</em><br>optional field<br>if set to <code>true</code>, we will return a <code>serp_info</code> array containing SERP data (number of search results, relevant URL, and SERP features) for every keyword in the response<br>default value: <code>false</code>",
        -        "type": [
        -          "boolean",
        -          "null"
        -        ]
        -      },
        -      "keywords": {
        -        "description": "<em>keywords</em><br><strong>required field</strong><br>The maximum number of keywords you can specify: 700<br>The maximum number of characters for each keyword: 80<br>The maximum number of words for each keyword phrase: 10<br>the specified keywords will be converted to lowercase format, data will be provided in a separate array<p><strong>note</strong> that if some of the keywords specified in this array are omitted in the results you receive, then our database doesn't contain such keywords and cannot return data on them<br>you will not be charged for the keywords omitted in the results<p>learn more about rules and limitations of <code>keyword</code> and <code>keywords</code> fields in DataForSEO APIs in this <a href=\"https://dataforseo.com/help-center/rules-and-limitations-of-keyword-and-keywords-fields-in-dataforseo-apis\" rel=\"noopener noreferrer\" target=\"_blank\">Help Center article</a>",
        -        "items": {
        -          "type": "string"
        -        },
        -        "type": "array"
        -      },
        -      "language_code": {
        -        "description": "<em>language code</em><br><strong>required field if you don't specify</strong> <code>language_name</code><br><strong>Note:</strong> it is required to specify either <code>language_name</code> or <code>language_code</code><br>you can receive the list of available locations with their <code>language_code</code> by making a separate request to the <br><code>https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages</code><br>example:<br><code class=\"long-string\">en</code>",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      },
        -      "language_name": {
        -        "description": "<em>full name of the language</em><br><strong>required field if you don't specify</strong> <code>language_code</code><br><strong>Note:</strong> it is required to specify either <code>language_name</code> or <code>language_code</code><br>you can receive the list of available locations with their <code>language_name</code> by making a separate request to the <br><code>https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages</code><br>example:<br><code class=\"long-string\">English</code>",
        -        "type": "string"
        -      },
        -      "location_code": {
        -        "description": "<em>location code</em><br><strong>required field if you don't specify</strong> <code>location_name</code><br><strong>Note:</strong> it is required to specify either <code>location_name</code> or <code>location_code</code><br>you can receive the list of available locations with their <code>location_code</code> by making a separate request to the <br><code>https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages</code><br>example:<br><code class=\"long-string\">2840</code>",
        -        "type": "integer"
        -      },
        -      "location_name": {
        -        "description": "<em>full name of the location</em><br><strong>required field if you don't specify</strong> <code>location_code</code><br><strong>Note:</strong> it is required to specify either <code>location_name</code> or <code>location_code</code><br>you can receive the list of available locations with their <code>location_name</code> by making a separate request to the <br><code>https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages</code><br>example:<br><code class=\"long-string\">United Kingdom</code>",
        -        "type": "string"
        -      },
        -      "tag": {
        -        "description": "<em>user-defined task identifier</em><br>optional field<br><em>the character limit is 255</em><br>you can use this parameter to identify the task and match it with the result<br>you will find the specified <code>tag</code> value in the <code>data</code> object of the response",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      }
        -    },
        -    "type": "object"
        -  }
        -]
      • addedInput schema / properties / body / items / properties
        Added value: +{
        +  "include_clickstream_data": {
        +    "description": "include or exclude data from clickstream-based metrics in the result optional field if the parameter is set to true, you will receive clickstream_keyword_info, keyword_info_normalized_with_clickstream, and keyword_info_normalized_with_bing fields in the response default value: false with this parameter enabled, you will be charged double the price for the request learn more about how clickstream-based metrics are calculated in this help center article",
        +    "type": "boolean"
        +  },
        +  "include_serp_info": {
        +    "description": "include data from SERP for each keyword optional field if set to true, we will return a serp_info array containing SERP data (number of search results, relevant URL, and SERP features) for every keyword in the response default value: false",
        +    "type": "boolean"
        +  },
        +  "keywords": {
        +    "description": "keywords required field The maximum number of keywords you can specify: 700 The maximum number of characters for each keyword: 80 The maximum number of words for each keyword phrase: 10 the specified keywords will be converted to lowercase format, data will be provided in a separate array note that if some of the keywords specified in this array are omitted in the results you receive, then our database doesn’t contain such keywords and cannot return data on them you will not be charged for the keywords omitted in the results learn more about rules and limitations of keyword and keywords fields in DataForSEO APIs in this Help Center article",
        +    "items": {
        +      "type": "string"
        +    },
        +    "type": "array"
        +  },
        +  "language_code": {
        +    "description": "language code required field if you don’t specify language_name Note: it is required to specify either language_name or language_code you can receive the list of available locations with their language_code by making a separate request to the https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages example: en",
        +    "type": "string"
        +  },
        +  "language_name": {
        +    "description": "full name of the language required field if you don’t specify language_code Note: it is required to specify either language_name or language_code you can receive the list of available locations with their language_name by making a separate request to the https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages example: English",
        +    "type": "string"
        +  },
        +  "location_code": {
        +    "description": "location code required field if you don’t specify location_name Note: it is required to specify either location_name or location_code you can receive the list of available locations with their location_code by making a separate request to the https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages example: 2840",
        +    "type": "integer"
        +  },
        +  "location_name": {
        +    "description": "full name of the location required field if you don’t specify location_code Note: it is required to specify either location_name or location_code you can receive the list of available locations with their location_name by making a separate request to the https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages example: United Kingdom",
        +    "type": "string"
        +  },
        +  "tag": {
        +    "description": "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",
        +    "type": "string"
        +  }
        +}
      • addedInput schema / properties / body / items / required
        Added value: +[
        +  "keywords"
        +]
      • changedInput schema / properties / body / items / type
        Previous value: -[
        -  "object",
        -  "null"
        -]New value: +"object"
      • changedInput schema / required
        Previous value: -[]New value: +[
        +  "body"
        +]
      • removedOutput schema / x-fastmcp-wrap-result
        Removed value: -true
    • Changedpost_dataforseo_labs_google_keyword_suggestions_live6 fields changed
      • removedInput schema / properties / body / example
        Removed value: -[
        -  {
        -    "include_seed_keyword": true,
        -    "include_serp_info": true,
        -    "keyword": "phone",
        -    "language_code": "en",
        -    "limit": 1,
        -    "location_code": 2840
        -  }
        -]
      • changedInput schema / properties / body / items / anyOf
        Previous value: -[
        -  {
        -    "example": [
        -      {
        -        "include_seed_keyword": true,
        -        "include_serp_info": true,
        -        "keyword": "phone",
        -        "language_code": "en",
        -        "limit": 1,
        -        "location_code": 2840
        -      }
        -    ],
        -    "properties": {
        -      "exact_match": {
        -        "description": "<em>search for the exact phrase</em><br>optional field<br>if set to <code>true</code>, the returned keywords will include the exact keyword phrase you specified, with potentially other words before or after that phrase<br>default value: <code>false</code>",
        -        "type": [
        -          "boolean",
        -          "null"
        -        ]
        -      },
        -      "filters": {
        -        "description": "<em>array of results filtering parameters</em><br>optional field<br><strong>you can add several filters at once (8 filters maximum)</strong><br>you should set a logical operator <code>and</code>, <code>or</code> between the conditions<br>the following operators are supported:<br><code>regex</code>, <code>not_regex</code>, <code>&lt;</code>, <code>&lt;=</code>, <code>&gt;</code>, <code>&gt;=</code>, <code>=</code>, <code>&lt;&gt;</code>, <code>in</code>, <code>not_in</code>, <code>match</code>, <code>not_match</code>, <code>ilike</code>, <code>not_ilike</code>, <code>like</code>, <code>not_like</code><br>you can use the <code>%</code> operator with <code>like</code> and <code>not_like</code>, as well as <code>ilike</code> and <code>not_ilike</code> to match any string of zero or more characters<br>example:<br><code>[\"keyword_info.search_volume\",\"&gt;\",0]</code><br><code>[[\"keyword_info.search_volume\",\"in\",[0,1000]],<br>\"and\",<br>[\"keyword_info.competition_level\",\"=\",\"LOW\"]]</code><code>[[\"keyword_info.search_volume\",\"&gt;\",100],<br>\"and\",<br>[[\"keyword_info.cpc\",\"&lt;\",0.5],<br>\"or\",<br>[\"keyword_info.high_top_of_page_bid\",\"&lt;=\",0.5]]]</code><br>for more information about filters, please refer to <a href=\"/v3/dataforseo_labs/filters\" target=\"_blank\" rel=\"noopener noreferrer\">Dataforseo Labs - Filters</a> or this <a href=\"https://dataforseo.com/help-center/how-to-use-filters-in-dataforseo-labs-api\" target=\"_blank\" rel=\"noopener noreferrer\">help center guide</a>",
        -        "items": {
        -          "type": [
        -            "object",
        -            "null"
        -          ]
        -        },
        -        "type": [
        -          "array",
        -          "null"
        -        ]
        -      },
        -      "ignore_synonyms": {
        -        "description": "<em>ignore highly similar keywords</em><br>optional field<br>if set to <code class=\"prettyprint\">true</code> only core keywords will be returned, all highly similar keywords will be excluded;<br>default value: <code>false</code>",
        -        "type": [
        -          "boolean",
        -          "null"
        -        ]
        -      },
        -      "include_clickstream_data": {
        -        "description": "<em>include or exclude data from clickstream-based metrics in the result</em><br>optional field<br>if the parameter is set to <code>true</code>, you will receive <code>clickstream_keyword_info</code>, <code>keyword_info_normalized_with_clickstream</code>, and <code>keyword_info_normalized_with_bing</code> fields in the response<br>default value: <code>false</code><br>with this parameter enabled, you will be charged double the price for the request<p>learn more about how clickstream-based metrics are calculated in this <a href=\"https://dataforseo.com/help-center/what-are-clickstream-based-metrics-and-how-do-we-calculate-them\" rel=\"noopener noreferrer\" target=\"_blank\">help center article</a>",
        -        "type": [
        -          "boolean",
        -          "null"
        -        ]
        -      },
        -      "include_seed_keyword": {
        -        "description": "<em>include data for the seed keyword</em><br>optional field<br>if set to <code>true</code>, data for the seed keyword specified in the <code>keyword</code> field will be provided in the <code>seed_keyword_data</code> array of the response<br>default value: <code>false</code>",
        -        "type": [
        -          "boolean",
        -          "null"
        -        ]
        -      },
        -      "include_serp_info": {
        -        "description": "<em>include data from SERP for each keyword</em><br>optional field<br>if set to <code>true</code>, we will return a <code>serp_info</code> array containing SERP data (number of search results, relevant URL, and SERP features) for every keyword in the response<br>default value: <code>false</code>",
        -        "type": [
        -          "boolean",
        -          "null"
        -        ]
        -      },
        -      "keyword": {
        -        "description": "<em>keyword</em><br><strong>required field</strong><br>UTF-8 encoding<br>the keywords will be converted to lowercase format;<p>learn more about rules and limitations of <code>keyword</code> and <code>keywords</code> fields in DataForSEO APIs in this <a href=\"https://dataforseo.com/help-center/rules-and-limitations-of-keyword-and-keywords-fields-in-dataforseo-apis\" rel=\"noopener noreferrer\" target=\"_blank\">Help Center article</a>",
        -        "type": "string"
        -      },
        -      "language_code": {
        -        "description": "<em>language code</em><br>optional field<br>if you use this field, you don't need to specify <code>language_name</code><br>you can receive the list of available languages with their <code>language_code</code> by making a separate request to the<br><code>https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages</code><br>example:<br><code class=\"long-string\">en</code><br><strong>Note:</strong> if omitted, results default to the language with the most keyword records in the specified location;<br>refer to the <code>available_languages.keywords</code> field of the <a href=\"https://docs.dataforseo.com/v3/dataforseo_labs/locations_and_languages\" target=\"_blank\">Locations and Languages endpoint</a> to determine the default language",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      },
        -      "language_name": {
        -        "description": "<em>full name of the language</em><br>optional field<br>if you use this field, you don't need to specify <code>language_code</code><br>you can receive the list of available languages with their <code>language_name</code> by making a separate request to the<br><code>https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages</code><br>example:<br><code class=\"long-string\">English</code><br><strong>Note:</strong> if omitted, results default to the language with the most keyword records in the specified location;<br>refer to the <code>available_languages.keywords</code> field of the <a href=\"https://docs.dataforseo.com/v3/dataforseo_labs/locations_and_languages\" target=\"_blank\">Locations and Languages endpoint</a> to determine the default language",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      },
        -      "limit": {
        -        "description": "<em>the maximum number of returned keywords</em><br>optional field<br>default value: <code>100</code><br>maximum value: <code>1000</code>",
        -        "type": [
        -          "integer",
        -          "null"
        -        ]
        -      },
        -      "location_code": {
        -        "description": "<em>location code</em><br>optional field<br>if you use this field, you don't need to specify <code>location_name</code><br>you can receive the list of available locations with their <code>location_code</code> by making a separate request to the<br><code>https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages</code><br>ignore this field to get the results for all available locations<br>example:<br><code class=\"long-string\">2840</code>",
        -        "type": [
        -          "integer",
        -          "null"
        -        ]
        -      },
        -      "location_name": {
        -        "description": "<em>full name of the location</em><br>optional field<br>if you use this field, you don't need to specify <code>location_code</code><br>you can receive the list of available locations with their <code>location_name</code> by making a separate request to the<br><code>https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages</code><br>ignore this field to get the results for all available locations<br>example:<br><code class=\"long-string\">United Kingdom</code>",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      },
        -      "offset": {
        -        "description": "<em>offset in the results array of returned keywords</em><br>optional field<br>default value: <code>0</code><br>if you specify the <code>10</code> value, the first ten keywords in the results array will be omitted and the data will be provided for the successive keywords<br><strong>Note:</strong> we recommend using this parameter only when retrieving up to 10,000 results<br>for retrieving over 10,000 results, use the <code>offset_token</code> instead.",
        -        "type": [
        -          "integer",
        -          "null"
        -        ]
        -      },
        -      "offset_token": {
        -        "description": "<em>offset token for subsequent requests</em><br>optional field<br>provided in the identical filed of the response to each request;<br>use this parameter to avoid timeouts while trying to obtain over 10,000 results in a single request;<br>by specifying the unique <code>offset_token</code> value from the response array, you will get the subsequent results of the initial task;<br><code>offset_token</code> values are unique for each subsequent task<br><strong>Note:</strong> if the <code>offset_token</code> is specified in the request, all other parameters except <code>limit</code> will not be taken into account when processing a task.<br>learn more about this parameter on our <a href=\"https://dataforseo.com/help-center/what-is-the-difference-between-the-offset-and-offset_token-parameters#offset_token\" target=\"_blank\">Help Center</a>",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      },
        -      "order_by": {
        -        "description": "<em>results sorting rules</em><br>optional field<br>you can use the same values as in the <code>filters</code> array to sort the results<br>possible sorting types:<br><code>asc</code> - results will be sorted in the ascending order<br><code>desc</code> - results will be sorted in the descending order<br>a comma is used as a separator<br>example:<br><code>[\"keyword_info.competition,desc\"]</code><br>default rule:<br><code>[\"keyword_info.search_volume,desc\"]</code><br><strong>note that you can set no more than three sorting rules in a single request</strong><br>you should use a comma to separate several sorting rules<br>example:<br><code>[\"keyword_info.search_volume,desc\",\"keyword_info.cpc,desc\"]</code>",
        -        "items": {
        -          "type": "string"
        -        },
        -        "type": [
        -          "array",
        -          "null"
        -        ]
        -      },
        -      "tag": {
        -        "description": "<em>user-defined task identifier</em><br>optional field<br><em>the character limit is 255</em><br>you can use this parameter to identify the task and match it with the result<br>you will find the specified <code>tag</code> value in the <code>data</code> object of the response",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      }
        -    },
        -    "type": "object"
        -  }
        -]New value: +[
        +  {
        +    "required": [
        +      "keyword"
        +    ]
        +  },
        +  {
        +    "required": [
        +      "offset_token"
        +    ]
        +  }
        +]
      • addedInput schema / properties / body / items / properties
        Added value: +{
        +  "exact_match": {
        +    "description": "search for the exact phrase optional field if set to true, the returned keywords will include the exact keyword phrase you specified, with potentially other words before or after that phrase default value: false",
        +    "type": "boolean"
        +  },
        +  "filters": {
        +    "description": "array of results filtering parameters optional field you can add several filters at once (8 filters maximum) you should set a logical operator and, or between the conditions the following operators are supported: regex, not_regex, <, <=, >, >=, =, <>, in, not_in, match, not_match, ilike, not_ilike, like, not_like you can use the % operator with like and not_like, as well as ilike and not_ilike to match any string of zero or more characters example: [\"keyword_info.search_volume\",\">\",0] [[\"keyword_info.search_volume\",\"in\",[0,1000]], \"and\", [\"keyword_info.competition_level\",\"=\",\"LOW\"]][[\"keyword_info.search_volume\",\">\",100], \"and\", [[\"keyword_info.cpc\",\"<\",0.5], \"or\", [\"keyword_info.high_top_of_page_bid\",\"<=\",0.5]]] for more information about filters, please refer to Dataforseo Labs - Filters or this help center guide",
        +    "items": {},
        +    "type": "array"
        +  },
        +  "ignore_synonyms": {
        +    "description": "ignore highly similar keywords optional field if set to true only core keywords will be returned, all highly similar keywords will be excluded; default value: false",
        +    "type": "boolean"
        +  },
        +  "include_clickstream_data": {
        +    "description": "include or exclude data from clickstream-based metrics in the result optional field if the parameter is set to true, you will receive clickstream_keyword_info, keyword_info_normalized_with_clickstream, and keyword_info_normalized_with_bing fields in the response default value: false with this parameter enabled, you will be charged double the price for the request learn more about how clickstream-based metrics are calculated in this help center article",
        +    "type": "boolean"
        +  },
        +  "include_seed_keyword": {
        +    "description": "include data for the seed keyword optional field if set to true, data for the seed keyword specified in the keyword field will be provided in the seed_keyword_data array of the response default value: false",
        +    "type": "boolean"
        +  },
        +  "include_serp_info": {
        +    "description": "include data from SERP for each keyword optional field if set to true, we will return a serp_info array containing SERP data (number of search results, relevant URL, and SERP features) for every keyword in the response default value: false",
        +    "type": "boolean"
        +  },
        +  "keyword": {
        +    "description": "keyword required field UTF-8 encoding the keywords will be converted to lowercase format; learn more about rules and limitations of keyword and keywords fields in DataForSEO APIs in this Help Center article",
        +    "type": "string"
        +  },
        +  "language_code": {
        +    "description": "language code optional field if you use this field, you don’t need to specify language_name you can receive the list of available languages with their language_code by making a separate request to the https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages example: en Note: if omitted, results default to the language with the most keyword records in the specified location; refer to the available_languages.keywords field of the Locations and Languages endpoint to determine the default language",
        +    "type": "string"
        +  },
        +  "language_name": {
        +    "description": "full name of the language optional field if you use this field, you don’t need to specify language_code you can receive the list of available languages with their language_name by making a separate request to the https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages example: English Note: if omitted, results default to the language with the most keyword records in the specified location; refer to the available_languages.keywords field of the Locations and Languages endpoint to determine the default language",
        +    "type": "string"
        +  },
        +  "limit": {
        +    "description": "the maximum number of returned keywords optional field default value: 100 maximum value: 1000",
        +    "type": "integer"
        +  },
        +  "location_code": {
        +    "description": "location code optional field if you use this field, you don’t need to specify location_name you can receive the list of available locations with their location_code by making a separate request to the https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages ignore this field to get the results for all available locations example: 2840",
        +    "type": "integer"
        +  },
        +  "location_name": {
        +    "description": "full name of the location optional field if you use this field, you don’t need to specify location_code you can receive the list of available locations with their location_name by making a separate request to the https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages ignore this field to get the results for all available locations example: United Kingdom",
        +    "type": "string"
        +  },
        +  "offset": {
        +    "description": "offset in the results array of returned keywords optional field default value: 0 if you specify the 10 value, the first ten keywords in the results array will be omitted and the data will be provided for the successive keywords Note: we recommend using this parameter only when retrieving up to 10,000 results for retrieving over 10,000 results, use the offset_token instead.",
        +    "type": "integer"
        +  },
        +  "offset_token": {
        +    "description": "offset token for subsequent requests optional field provided in the identical filed of the response to each request; use this parameter to avoid timeouts while trying to obtain over 10,000 results in a single request; by specifying the unique offset_token value from the response array, you will get the subsequent results of the initial task; offset_token values are unique for each subsequent task Note: if the offset_token is specified in the request, all other parameters except limit will not be taken into account when processing a task. learn more about this parameter on our Help Center",
        +    "type": "string"
        +  },
        +  "order_by": {
        +    "description": "results sorting rules optional field you can use the same values as in the filters array to sort the results possible sorting types: asc – results will be sorted in the ascending order desc – results will be sorted in the descending order a comma is used as a separator example: [\"keyword_info.competition,desc\"] default rule: [\"keyword_info.search_volume,desc\"] note that you can set no more than three sorting rules in a single request you should use a comma to separate several sorting rules example: [\"keyword_info.search_volume,desc\",\"keyword_info.cpc,desc\"]",
        +    "items": {
        +      "type": "string"
        +    },
        +    "type": "array"
        +  },
        +  "tag": {
        +    "description": "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",
        +    "type": "string"
        +  }
        +}
      • changedInput schema / properties / body / items / type
        Previous value: -[
        -  "object",
        -  "null"
        -]New value: +"object"
      • changedInput schema / required
        Previous value: -[]New value: +[
        +  "body"
        +]
      • removedOutput schema / x-fastmcp-wrap-result
        Removed value: -true
    • Changedpost_dataforseo_labs_google_keywords_for_categories_live6 fields changed
      • removedInput schema / properties / body / example
        Removed value: -[
        -  {
        -    "category_codes": [
        -      "12191",
        -      "12193"
        -    ],
        -    "include_serp_info": true,
        -    "language_name": "English",
        -    "limit": 3,
        -    "location_code": 2840
        -  }
        -]
      • changedInput schema / properties / body / items / anyOf
        Previous value: -[
        -  {
        -    "example": [
        -      {
        -        "category_codes": [
        -          "12191",
        -          "12193"
        -        ],
        -        "include_serp_info": true,
        -        "language_name": "English",
        -        "limit": 3,
        -        "location_code": 2840
        -      }
        -    ],
        -    "properties": {
        -      "category_codes": {
        -        "description": "<em>product and service categories</em><br><strong>required field</strong><br>The maximum number of categories you can specify: 20<br>you can download <a href=\"https://cdn.dataforseo.com/v3/categories/categories_dataforseo_labs_2023_10_25.csv\">the full list of possible categories</a>",
        -        "items": {
        -          "type": "string"
        -        },
        -        "type": "array"
        -      },
        -      "category_intersection": {
        -        "description": "<em>category intersections</em><br>optional field<br>if set to <code class=\"prettyprint\">true</code>, you will get keywords featured in all specified categories;<br>if set to <code class=\"prettyprint\">false</code>, you will keywords that are specified in any of the specified categories;<br>default value: <code>true</code>",
        -        "type": [
        -          "boolean",
        -          "null"
        -        ]
        -      },
        -      "filters": {
        -        "description": "<em>array of results filtering parameters</em><br>optional field<br><strong>you can add several filters at once (8 filters maximum)</strong><br>you should set a logical operator <code>and</code>, <code>or</code> between the conditions<br>the following operators are supported:<br><code>regex</code>, <code>not_regex</code>, <code>&lt;</code>, <code>&lt;=</code>, <code>&gt;</code>, <code>&gt;=</code>, <code>=</code>, <code>&lt;&gt;</code>, <code>in</code>, <code>not_in</code>, <code>match</code>, <code>not_match</code>, <code>ilike</code>, <code>not_ilike</code>, <code>like</code>, <code>not_like</code><br>you can use the <code>%</code> operator with <code>like</code> and <code>not_like</code>,as well as <code>ilike</code>, <code>not_ilike</code> to match any string of zero or more characters<br>example:<br><code>[\"keyword_info.search_volume\",\"&gt;\",0]</code><br><code>[[\"keyword_info.search_volume\",\"in\",[0,1000]],<br>\"and\",<br>[\"keyword_info.competition_level\",\"=\",\"LOW\"]]</code><p><code>[[\"keyword_info.search_volume\",\"&gt;\",100],<br>\"and\",<br>[[\"keyword_info.cpc\",\"&lt;\",0.5],<br>\"or\",<br>[\"keyword_info.high_top_of_page_bid\",\"&lt;=\",0.5]]]</code><br>for more information about filters, please refer to <a href=\"/v3/dataforseo_labs/filters\" target=\"_blank\" rel=\"noopener noreferrer\">Dataforseo Labs - Filters</a> or this <a href=\"https://dataforseo.com/help-center/how-to-use-filters-in-dataforseo-labs-api\" target=\"_blank\" rel=\"noopener noreferrer\">help center guide</a>",
        -        "items": {
        -          "type": [
        -            "object",
        -            "null"
        -          ]
        -        },
        -        "type": [
        -          "array",
        -          "null"
        -        ]
        -      },
        -      "ignore_synonyms": {
        -        "description": "<em>ignore highly similar keywords</em><br>optional field<br>if set to <code class=\"prettyprint\">true</code> only core keywords will be returned, all highly similar keywords will be excluded;<br>default value: <code>false</code>",
        -        "type": [
        -          "boolean",
        -          "null"
        -        ]
        -      },
        -      "include_clickstream_data": {
        -        "description": "<em>include or exclude data from clickstream-based metrics in the result</em><br>optional field<br>if the parameter is set to <code>true</code>, you will receive <code>clickstream_keyword_info</code>, <code>keyword_info_normalized_with_clickstream</code>, and <code>keyword_info_normalized_with_bing</code> fields in the response<br>default value: <code>false</code><br>with this parameter enabled, you will be charged double the price for the request<p>learn more about how clickstream-based metrics are calculated in this <a href=\"https://dataforseo.com/help-center/what-are-clickstream-based-metrics-and-how-do-we-calculate-them\" rel=\"noopener noreferrer\" target=\"_blank\">help center article</a>",
        -        "type": [
        -          "boolean",
        -          "null"
        -        ]
        -      },
        -      "include_serp_info": {
        -        "description": "<em>include data from SERP for each keyword</em><br>optional field<br>if set to <code>true</code>, we will return a <code>serp_info</code> array containing SERP data (number of search results, relevant URL, and SERP features) for every keyword in the response<br>default value: <code>false</code>",
        -        "type": [
        -          "boolean",
        -          "null"
        -        ]
        -      },
        -      "language_code": {
        -        "description": "<em>unique language identifier</em><br><strong>required field if you don't specify</strong> <code>language_name</code><br><strong>Note:</strong> it is required to specify either <code>language_name</code> or <code>language_code</code><br>you can receive the list of available languages with their <code>language_code</code> by making a separate request to the<br><code>https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages</code><br>example:<br><code class=\"long-string\">en</code>",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      },
        -      "language_name": {
        -        "description": "<em>full name of the language</em><br><strong>required field if you don't specify</strong> <code>language_code</code><br><strong>Note:</strong> it is required to specify either <code>language_name</code> or <code>language_code</code><br>you can receive the list of available languages with their <code>language_name</code> by making a separate request to the<br><code>https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages</code><br>example:<br><code class=\"long-string\">English</code>",
        -        "type": "string"
        -      },
        -      "limit": {
        -        "description": "<em>the maximum number of keywords in the results array</em><br>optional field<br>default value: <code>100</code><br>maximum value: <code>1000</code>",
        -        "type": [
        -          "integer",
        -          "null"
        -        ]
        -      },
        -      "location_code": {
        -        "description": "<em>unique location identifier</em><br><strong>required field if you don't specify</strong> <code>location_name</code><br><strong>Note:</strong> it is required to specify either <code>location_name</code> or <code>location_code</code><br>you can receive the list of available locations with their <code>location_code</code> by making a separate request to the<br><code>https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages</code><br>example:<br><code class=\"long-string\">2840</code>",
        -        "type": "integer"
        -      },
        -      "location_name": {
        -        "description": "<em>full name of the location</em><br><strong>required field if you don't specify</strong> <code>location_code</code><br><strong>Note:</strong> it is required to specify either <code>location_name</code> or <code>location_code</code><br>you can receive the list of available locations with their <code>location_name</code> by making a separate request to the<br><code>https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages</code><br>example:<br><code class=\"long-string\">United Kingdom</code>",
        -        "type": "string"
        -      },
        -      "offset": {
        -        "description": "<em>offset in the results array of returned keywords</em><br>optional field<br>default value: <code>0</code><br>if you specify the <code>10</code> value, the first ten keywords in the results array will be omitted and the data will be provided for the successive keywords<br><strong>Note:</strong> we recommend using this parameter only when retrieving up to 10,000 results<br>for retrieving over 10,000 results, use the <code>offset_token</code> instead.",
        -        "type": [
        -          "integer",
        -          "null"
        -        ]
        -      },
        -      "offset_token": {
        -        "description": "<em>offset token for subsequent requests</em><br>optional field<br>provided in the identical filed of the response to each request;<br>use this parameter to avoid timeouts while trying to obtain over 10,000 results in a single request;<br>by specifying the unique <code>offset_token</code> value from the response array, you will get the subsequent results of the initial task;<br><code>offset_token</code> values are unique for each subsequent task<br><strong>Note:</strong> if the <code>offset_token</code> is specified in the request, all other parameters except <code>limit</code> will not be taken into account when processing a task.<br>learn more about this parameter on our <a href=\"https://dataforseo.com/help-center/what-is-the-difference-between-the-offset-and-offset_token-parameters#offset_token\" target=\"_blank\">Help Center</a>",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      },
        -      "order_by": {
        -        "description": "<em>results sorting rules</em><br>optional field<br>you can use the same values as in the <code>filters</code> array to sort the results<br>possible sorting types:<br><code>asc</code> - results will be sorted in the ascending order<br><code>desc</code> - results will be sorted in the descending order<br>you should use a comma to set up a sorting type<br>example:<br><code>[\"keyword_info.competition,desc\"]</code><br>default rule:<br><code>[\"keyword_info.search_volume,desc\"]</code><br><strong>note that you can set no more than three sorting rules in a single request</strong><br>you should use a comma to separate several sorting rules<br>example:<br><code>[\"keyword_info.search_volume,desc\",\"keyword_info.competition,asc\"]</code>",
        -        "items": {
        -          "type": "string"
        -        },
        -        "type": [
        -          "array",
        -          "null"
        -        ]
        -      },
        -      "tag": {
        -        "description": "<em>user-defined task identifier</em><br>optional field<br><em>the character limit is 255</em><br>you can use this parameter to identify the task and match it with the result<br>you will find the specified <code>tag</code> value in the <code>data</code> object of the response",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      }
        -    },
        -    "type": "object"
        -  }
        -]New value: +[
        +  {
        +    "allOf": [
        +      {
        +        "anyOf": [
        +          {
        +            "required": [
        +              "location_name"
        +            ]
        +          },
        +          {
        +            "required": [
        +              "location_code"
        +            ]
        +          }
        +        ]
        +      },
        +      {
        +        "anyOf": [
        +          {
        +            "required": [
        +              "language_name"
        +            ]
        +          },
        +          {
        +            "required": [
        +              "language_code"
        +            ]
        +          }
        +        ]
        +      }
        +    ],
        +    "required": [
        +      "category_codes"
        +    ]
        +  },
        +  {
        +    "required": [
        +      "offset_token"
        +    ]
        +  }
        +]
      • addedInput schema / properties / body / items / properties
        Added value: +{
        +  "category_codes": {
        +    "description": "product and service categories required field The maximum number of categories you can specify: 20 you can download the full list of possible categories",
        +    "items": {
        +      "type": "integer"
        +    },
        +    "type": "array"
        +  },
        +  "category_intersection": {
        +    "description": "category intersections optional field if set to true, you will get keywords featured in all specified categories; if set to false, you will keywords that are specified in any of the specified categories; default value: true",
        +    "type": "boolean"
        +  },
        +  "filters": {
        +    "description": "array of results filtering parameters optional field you can add several filters at once (8 filters maximum) you should set a logical operator and, or between the conditions the following operators are supported: regex, not_regex, <, <=, >, >=, =, <>, in, not_in, match, not_match, ilike, not_ilike, like, not_like you can use the % operator with like and not_like,as well as ilike, not_ilike to match any string of zero or more characters example: [\"keyword_info.search_volume\",\">\",0] [[\"keyword_info.search_volume\",\"in\",[0,1000]], \"and\", [\"keyword_info.competition_level\",\"=\",\"LOW\"]] [[\"keyword_info.search_volume\",\">\",100], \"and\", [[\"keyword_info.cpc\",\"<\",0.5], \"or\", [\"keyword_info.high_top_of_page_bid\",\"<=\",0.5]]] for more information about filters, please refer to Dataforseo Labs - Filters or this help center guide",
        +    "items": {},
        +    "type": "array"
        +  },
        +  "ignore_synonyms": {
        +    "description": "ignore highly similar keywords optional field if set to true only core keywords will be returned, all highly similar keywords will be excluded; default value: false",
        +    "type": "boolean"
        +  },
        +  "include_clickstream_data": {
        +    "description": "include or exclude data from clickstream-based metrics in the result optional field if the parameter is set to true, you will receive clickstream_keyword_info, keyword_info_normalized_with_clickstream, and keyword_info_normalized_with_bing fields in the response default value: false with this parameter enabled, you will be charged double the price for the request learn more about how clickstream-based metrics are calculated in this help center article",
        +    "type": "boolean"
        +  },
        +  "include_serp_info": {
        +    "description": "include data from SERP for each keyword optional field if set to true, we will return a serp_info array containing SERP data (number of search results, relevant URL, and SERP features) for every keyword in the response default value: false",
        +    "type": "boolean"
        +  },
        +  "language_code": {
        +    "description": "unique language identifier required field if you don’t specify language_name Note: it is required to specify either language_name or language_code you can receive the list of available languages with their language_code by making a separate request to the https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages example: en",
        +    "type": "string"
        +  },
        +  "language_name": {
        +    "description": "full name of the language required field if you don’t specify language_code Note: it is required to specify either language_name or language_code you can receive the list of available languages with their language_name by making a separate request to the https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages example: English",
        +    "type": "string"
        +  },
        +  "limit": {
        +    "description": "the maximum number of keywords in the results array optional field default value: 100 maximum value: 1000",
        +    "type": "integer"
        +  },
        +  "location_code": {
        +    "description": "unique location identifier required field if you don’t specify location_name Note: it is required to specify either location_name or location_code you can receive the list of available locations with their location_code by making a separate request to the https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages example: 2840",
        +    "type": "integer"
        +  },
        +  "location_name": {
        +    "description": "full name of the location required field if you don’t specify location_code Note: it is required to specify either location_name or location_code you can receive the list of available locations with their location_name by making a separate request to the https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages example: United Kingdom",
        +    "type": "string"
        +  },
        +  "offset": {
        +    "description": "offset in the results array of returned keywords optional field default value: 0 if you specify the 10 value, the first ten keywords in the results array will be omitted and the data will be provided for the successive keywords Note: we recommend using this parameter only when retrieving up to 10,000 results for retrieving over 10,000 results, use the offset_token instead.",
        +    "type": "integer"
        +  },
        +  "offset_token": {
        +    "description": "offset token for subsequent requests optional field provided in the identical filed of the response to each request; use this parameter to avoid timeouts while trying to obtain over 10,000 results in a single request; by specifying the unique offset_token value from the response array, you will get the subsequent results of the initial task; offset_token values are unique for each subsequent task Note: if the offset_token is specified in the request, all other parameters except limit will not be taken into account when processing a task. learn more about this parameter on our Help Center",
        +    "type": "string"
        +  },
        +  "order_by": {
        +    "description": "results sorting rules optional field you can use the same values as in the filters array to sort the results possible sorting types: asc – results will be sorted in the ascending order desc – results will be sorted in the descending order you should use a comma to set up a sorting type example: [\"keyword_info.competition,desc\"] default rule: [\"keyword_info.search_volume,desc\"] note that you can set no more than three sorting rules in a single request you should use a comma to separate several sorting rules example: [\"keyword_info.search_volume,desc\",\"keyword_info.competition,asc\"]",
        +    "items": {
        +      "type": "string"
        +    },
        +    "type": "array"
        +  },
        +  "tag": {
        +    "description": "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",
        +    "type": "string"
        +  }
        +}
      • changedInput schema / properties / body / items / type
        Previous value: -[
        -  "object",
        -  "null"
        -]New value: +"object"
      • changedInput schema / required
        Previous value: -[]New value: +[
        +  "body"
        +]
      • removedOutput schema / x-fastmcp-wrap-result
        Removed value: -true
    • Changedpost_dataforseo_labs_google_related_keywords_live8 fields changed
      • removedInput schema / properties / body / example
        Removed value: -[
        -  {
        -    "keyword": "phone",
        -    "language_name": "English",
        -    "limit": 3,
        -    "location_code": 2840
        -  }
        -]
      • addedInput schema / properties / body / items / allOf
        Added value: +[
        +  {
        +    "anyOf": [
        +      {
        +        "required": [
        +          "location_name"
        +        ]
        +      },
        +      {
        +        "required": [
        +          "location_code"
        +        ]
        +      }
        +    ]
        +  },
        +  {
        +    "anyOf": [
        +      {
        +        "required": [
        +          "language_name"
        +        ]
        +      },
        +      {
        +        "required": [
        +          "language_code"
        +        ]
        +      }
        +    ]
        +  }
        +]
      • removedInput schema / properties / body / items / anyOf
        Removed value: -[
        -  {
        -    "example": [
        -      {
        -        "keyword": "phone",
        -        "language_name": "English",
        -        "limit": 3,
        -        "location_code": 2840
        -      }
        -    ],
        -    "properties": {
        -      "depth": {
        -        "description": "<em>keyword search depth</em><br>optional field<br>default value: <code>1</code><p>number of the returned results depends on the value you set in this field<br>you can specify a level from 0 to 4<br>estimated number of keywords for each level (maximum):<br>0 - the keyword set in the <code>keyword</code> field<br>1 – 8 keywords<br>2 – 72 keywords<br>3 – 584 keywords<br>4 – 4680 keywords",
        -        "type": [
        -          "integer",
        -          "null"
        -        ]
        -      },
        -      "filters": {
        -        "description": "<em>array of results filtering parameters</em><br>optional field<br><strong>you can add several filters at once (8 filters maximum)</strong><br>you should set a logical operator <code>and</code>, <code>or</code> between the conditions<br>the following operators are supported:<br><code>regex</code>, <code>not_regex</code>, <code>&lt;</code>, <code>&lt;=</code>, <code>&gt;</code>, <code>&gt;=</code>, <code>=</code>, <code>&lt;&gt;</code>, <code>in</code>, <code>not_in</code>, <code>match</code>, <code>not_match</code>, <code>ilike</code>, <code>not_ilike</code>, <code>like</code>,<code>not_like</code><br>you can use the <code>%</code> operator with <code>like</code> and <code>not_like</code>, as well as <code>ilike</code> and <code>not_ilike</code> to match any string of zero or more characters<br>example:<br><code>[\"keyword_data.keyword_info.search_volume\",\"&gt;\",0]</code><p><code>[[\"keyword_info.search_volume\",\"in\",[0,1000]],<br>\"and\",<br>[\"keyword_data.keyword_info.competition_level\",\"=\",\"LOW\"]]</code><p><code>[[\"keyword_data.keyword_info.search_volume\",\"&gt;\",100],<br>\"and\",<br>[[\"keyword_data.keyword_info.cpc\",\"&lt;\",0.5],<br>\"or\",<p>[\"keyword_info.high_top_of_page_bid\",\"&lt;=\",0.5]]]</code><br>for more information about filters, please refer to <a href=\"/v3/dataforseo_labs/filters\" target=\"_blank\" rel=\"noopener noreferrer\">Dataforseo Labs - Filters</a> or this <a href=\"https://dataforseo.com/help-center/how-to-use-filters-in-dataforseo-labs-api\" rel=\"noopener noreferrer\" target=\"_blank\">help center guide</a>",
        -        "items": {
        -          "type": [
        -            "object",
        -            "null"
        -          ]
        -        },
        -        "type": [
        -          "array",
        -          "null"
        -        ]
        -      },
        -      "ignore_synonyms": {
        -        "description": "",
        -        "type": [
        -          "boolean",
        -          "null"
        -        ]
        -      },
        -      "include_clickstream_data": {
        -        "description": "",
        -        "type": [
        -          "boolean",
        -          "null"
        -        ]
        -      },
        -      "include_seed_keyword": {
        -        "description": "<em>include data for the seed keyword</em><br>optional field<br>if set to <code>true</code>, data for the seed keyword specified in the <code>keyword</code> field will be provided in the <code>seed_keyword_data</code> array of the response<br>default value: <code>false</code>",
        -        "type": [
        -          "boolean",
        -          "null"
        -        ]
        -      },
        -      "include_serp_info": {
        -        "description": "<em>include data from SERP for each keyword</em><br>optional field<br>if set to <code>true</code>, we will return a <code>serp_info</code> array containing SERP data (number of search results, relevant URL, and SERP features) for every keyword in the response<br>default value: <code>false</code>",
        -        "type": [
        -          "boolean",
        -          "null"
        -        ]
        -      },
        -      "keyword": {
        -        "description": "<em>keyword</em><br><strong>required field</strong><br>UTF-8 encoding<br>the keywords will be converted to lowercase format<p>learn more about rules and limitations of <code>keyword</code> and <code>keywords</code> fields in DataForSEO APIs in this <a href=\"https://dataforseo.com/help-center/rules-and-limitations-of-keyword-and-keywords-fields-in-dataforseo-apis\" rel=\"noopener noreferrer\" target=\"_blank\">Help Center article</a>",
        -        "type": "string"
        -      },
        -      "language_code": {
        -        "description": "<em>language code</em><br><strong>required field if you don't specify</strong> <code>language_name</code><br><strong>Note:</strong> it is required to specify either <code>language_name</code> or <code>language_code</code><br>you can receive the list of available locations with their <code>language_code</code> by making a separate request to the <br><code>https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages</code><br>example:<br><code class=\"long-string\">en</code>",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      },
        -      "language_name": {
        -        "description": "<em>full name of the language</em><br><strong>required field if you don't specify</strong> <code>language_code</code><br><strong>Note:</strong> it is required to specify either <code>language_name</code> or <code>language_code</code><br>you can receive the list of available locations with their <code>language_name</code> by making a separate request to the <br><code>https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages</code><br>example:<br><code class=\"long-string\">English</code>",
        -        "type": "string"
        -      },
        -      "limit": {
        -        "description": "<em>the maximum number of returned keywords</em><br>optional field<br>default value: <code>100</code><br>maximum value: <code>1000</code>",
        -        "type": [
        -          "integer",
        -          "null"
        -        ]
        -      },
        -      "location_code": {
        -        "description": "<em>location code</em><br><strong>required field if you don't specify</strong> <code>location_name</code><br><strong>Note:</strong> it is required to specify either <code>location_name</code> or <code>location_code</code><br>you can receive the list of available locations with their <code>location_code</code> by making a separate request to the <br><code>https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages</code><br>example:<br><code class=\"long-string\">2840</code>",
        -        "type": "integer"
        -      },
        -      "location_name": {
        -        "description": "<em>full name of the location</em><br><strong>required field if you don't specify</strong> <code>location_code</code><br><strong>Note:</strong> it is required to specify either <code>location_name</code> or <code>location_code</code><br>you can receive the list of available locations with their <code>location_name</code> by making a separate request to the <br><code>https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages</code><br>example:<br><code class=\"long-string\">United Kingdom</code>",
        -        "type": "string"
        -      },
        -      "offset": {
        -        "description": "<em>offset in the results array of returned keywords</em><br>optional field<br>default value: <code>0</code><br>if you specify the <code>10</code> value, the first ten keywords in the results array will be omitted and the data will be provided for the successive keywords",
        -        "type": [
        -          "integer",
        -          "null"
        -        ]
        -      },
        -      "order_by": {
        -        "description": "<em>results sorting rules</em><br>optional field<br>you can use the same values as in the <code>filters</code> array to sort the results<br>possible sorting types:<br><code>asc</code> - results will be sorted in the ascending order<br><code>desc</code> - results will be sorted in the descending order<br>you should use a comma to set up a sorting type<br>example:<br><code>[\"keyword_data.keyword_info.competition,desc\"]</code><br>default rule:<br><code>[\"keyword_data.keyword_info.search_volume,desc\"]</code><br><strong>note that you can set no more than three sorting rules in a single request</strong><br>you should use a comma to separate several sorting rules<br>example:<br><code>[\"keyword_data.keyword_info.search_volume,desc\",\"keyword_data.keyword_info.cpc,desc\"]</code>",
        -        "items": {
        -          "type": "string"
        -        },
        -        "type": [
        -          "array",
        -          "null"
        -        ]
        -      },
        -      "replace_with_core_keyword": {
        -        "description": "<em>return data for core keyword</em><br>optional field<br>if <code>true</code>, <code>serp_info</code> and <code>related_keywords</code> will be returned for the main keyword in the group that the specified <code>keyword</code> belongs to;<br>if <code>false</code>, <code>serp_info</code> and <code>related_keywords</code> will be returned for the specified <code>keyword</code> (if available);<br>refer to <a href=\"https://dataforseo.com/help-center/replace_with_core_keyword\" rel=\"noopener noreferrer\" target=\"_blank\">this help center article</a> for more details;<br>default value: <code>false</code>",
        -        "type": [
        -          "boolean",
        -          "null"
        -        ]
        -      },
        -      "tag": {
        -        "description": "<em>user-defined task identifier</em><br>optional field<br><em>the character limit is 255</em><br>you can use this parameter to identify the task and match it with the result<br>you will find the specified <code>tag</code> value in the <code>data</code> object of the response",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      }
        -    },
        -    "type": "object"
        -  }
        -]
      • addedInput schema / properties / body / items / properties
        Added value: +{
        +  "depth": {
        +    "description": "keyword search depth optional field default value: 1 number of the returned results depends on the value you set in this field you can specify a level from 0 to 4 estimated number of keywords for each level (maximum): 0 – the keyword set in the keyword field 1 – 8 keywords 2 – 72 keywords 3 – 584 keywords 4 – 4680 keywords",
        +    "type": "integer"
        +  },
        +  "filters": {
        +    "description": "array of results filtering parameters optional field you can add several filters at once (8 filters maximum) you should set a logical operator and, or between the conditions the following operators are supported: regex, not_regex, <, <=, >, >=, =, <>, in, not_in, match, not_match, ilike, not_ilike, like,not_like you can use the % operator with like and not_like, as well as ilike and not_ilike to match any string of zero or more characters example: [\"keyword_data.keyword_info.search_volume\",\">\",0] [[\"keyword_info.search_volume\",\"in\",[0,1000]], \"and\", [\"keyword_data.keyword_info.competition_level\",\"=\",\"LOW\"]] [[\"keyword_data.keyword_info.search_volume\",\">\",100], \"and\", [[\"keyword_data.keyword_info.cpc\",\"<\",0.5], \"or\", [\"keyword_info.high_top_of_page_bid\",\"<=\",0.5]]] for more information about filters, please refer to Dataforseo Labs - Filters or this help center guide",
        +    "items": {},
        +    "type": "array"
        +  },
        +  "ignore_synonyms": {
        +    "description": "ignore highly similar keywords optional field if set to true only core keywords will be returned, all highly similar keywords will be excluded; default value: false",
        +    "type": "boolean"
        +  },
        +  "include_clickstream_data": {
        +    "description": "include or exclude data from clickstream-based metrics in the result optional field if the parameter is set to true, you will receive clickstream_keyword_info, keyword_info_normalized_with_clickstream, and keyword_info_normalized_with_bing fields in the response default value: false with this parameter enabled, you will be charged double the price for the request learn more about how clickstream-based metrics are calculated in this help center article",
        +    "type": "boolean"
        +  },
        +  "include_seed_keyword": {
        +    "description": "include data for the seed keyword optional field if set to true, data for the seed keyword specified in the keyword field will be provided in the seed_keyword_data array of the response default value: false",
        +    "type": "boolean"
        +  },
        +  "include_serp_info": {
        +    "description": "include data from SERP for each keyword optional field if set to true, we will return a serp_info array containing SERP data (number of search results, relevant URL, and SERP features) for every keyword in the response default value: false",
        +    "type": "boolean"
        +  },
        +  "keyword": {
        +    "description": "keyword required field UTF-8 encoding the keywords will be converted to lowercase format learn more about rules and limitations of keyword and keywords fields in DataForSEO APIs in this Help Center article",
        +    "type": "string"
        +  },
        +  "language_code": {
        +    "description": "language code required field if you don’t specify language_name Note: it is required to specify either language_name or language_code you can receive the list of available locations with their language_code by making a separate request to the https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages example: en",
        +    "type": "string"
        +  },
        +  "language_name": {
        +    "description": "full name of the language required field if you don’t specify language_code Note: it is required to specify either language_name or language_code you can receive the list of available locations with their language_name by making a separate request to the https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages example: English",
        +    "type": "string"
        +  },
        +  "limit": {
        +    "description": "the maximum number of returned keywords optional field default value: 100 maximum value: 1000",
        +    "type": "integer"
        +  },
        +  "location_code": {
        +    "description": "location code required field if you don’t specify location_name Note: it is required to specify either location_name or location_code you can receive the list of available locations with their location_code by making a separate request to the https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages example: 2840",
        +    "type": "integer"
        +  },
        +  "location_name": {
        +    "description": "full name of the location required field if you don’t specify location_code Note: it is required to specify either location_name or location_code you can receive the list of available locations with their location_name by making a separate request to the https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages example: United Kingdom",
        +    "type": "string"
        +  },
        +  "offset": {
        +    "description": "offset in the results array of returned keywords optional field default value: 0 if you specify the 10 value, the first ten keywords in the results array will be omitted and the data will be provided for the successive keywords",
        +    "type": "integer"
        +  },
        +  "order_by": {
        +    "description": "results sorting rules optional field you can use the same values as in the filters array to sort the results possible sorting types: asc – results will be sorted in the ascending order desc – results will be sorted in the descending order you should use a comma to set up a sorting type example: [\"keyword_data.keyword_info.competition,desc\"] default rule: [\"keyword_data.keyword_info.search_volume,desc\"] note that you can set no more than three sorting rules in a single request you should use a comma to separate several sorting rules example: [\"keyword_data.keyword_info.search_volume,desc\",\"keyword_data.keyword_info.cpc,desc\"]",
        +    "items": {
        +      "type": "string"
        +    },
        +    "type": "array"
        +  },
        +  "replace_with_core_keyword": {
        +    "description": "return data for core keyword optional field if true, serp_info and related_keywords will be returned for the main keyword in the group that the specified keyword belongs to; if false, serp_info and related_keywords will be returned for the specified keyword (if available); refer to this help center article for more details; default value: false",
        +    "type": "boolean"
        +  },
        +  "tag": {
        +    "description": "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",
        +    "type": "string"
        +  }
        +}
      • addedInput schema / properties / body / items / required
        Added value: +[
        +  "keyword"
        +]
      • changedInput schema / properties / body / items / type
        Previous value: -[
        -  "object",
        -  "null"
        -]New value: +"object"
      • changedInput schema / required
        Previous value: -[]New value: +[
        +  "body"
        +]
      • removedOutput schema / x-fastmcp-wrap-result
        Removed value: -true
    • Changedpost_dataforseo_labs_google_search_intent_live8 fields changed
      • removedInput schema / properties / body / example
        Removed value: -[
        -  {
        -    "keywords": [
        -      "login page",
        -      "audi a7",
        -      "elon musk",
        -      "milk store new york"
        -    ]
        -  }
        -]
      • addedInput schema / properties / body / items / allOf
        Added value: +[
        +  {
        +    "anyOf": [
        +      {
        +        "required": [
        +          "language_name"
        +        ]
        +      },
        +      {
        +        "required": [
        +          "language_code"
        +        ]
        +      }
        +    ]
        +  }
        +]
      • removedInput schema / properties / body / items / anyOf
        Removed value: -[
        -  {
        -    "example": [
        -      {
        -        "keywords": [
        -          "login page",
        -          "audi a7",
        -          "elon musk",
        -          "milk store new york"
        -        ]
        -      }
        -    ],
        -    "properties": {
        -      "keywords": {
        -        "description": "<em>target keywords</em><br><strong>required field</strong><br>UTF-8 encoding<br>maximum number of keywords you can specify in this array: 1000;<br>the keywords will be converted to lowercase format<p>learn more about rules and limitations of <code>keyword</code> and <code>keywords</code> fields in DataForSEO APIs in this <a href=\"https://dataforseo.com/help-center/rules-and-limitations-of-keyword-and-keywords-fields-in-dataforseo-apis\" rel=\"noopener noreferrer\" target=\"_blank\">Help Center article</a>",
        -        "items": {
        -          "type": "string"
        -        },
        -        "type": "array"
        -      },
        -      "tag": {
        -        "description": "<em>user-defined task identifier</em><br>optional field<br><em>the character limit is 255</em><br>you can use this parameter to identify the task and match it with the result<br>you will find the specified <code>tag</code> value in the <code>data</code> object of the response",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      }
        -    },
        -    "type": "object"
        -  }
        -]
      • addedInput schema / properties / body / items / properties
        Added value: +{
        +  "keywords": {
        +    "description": "target keywords required field UTF-8 encoding maximum number of keywords you can specify in this array: 1000; the keywords will be converted to lowercase format learn more about rules and limitations of keyword and keywords fields in DataForSEO APIs in this Help Center article",
        +    "items": {
        +      "type": "string"
        +    },
        +    "type": "array"
        +  },
        +  "language_code": {
        +    "description": "language code required field if don’t specify language_name you can receive the list of available languages with their language_code by making a separate request to https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages Note: this endpoint currently supports these languages only; example: en",
        +    "type": "string"
        +  },
        +  "language_name": {
        +    "description": "full name of the language required field if don’t specify language_code you can receive the list of available languages with their language_name by making a separate request to https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages Note: this endpoint currently supports the following languages only: Arabic, ar, Chinese(Traditional), zh-TW, Czech, cs, Danish, da, Dutch, nl, English, en, Finnish, fi, French, fr, German, de, Hebrew, he, Hindi, hi, Italian, it, Japanese, ja, Korean, ko, Malay, ms, Norwegian(Bokmål), nb, Polish, pl, Portuguese, pt, Romanian, ro, Russian, ru, Spanish, es, Swedish, sv, Thai, th, Ukrainian, uk, Vietnamese, vi, Bulgarian, bg, Croatian, hr, Serbian, sr, Slovenian, sl, Bosnian, bs, Greek, el, Hungarian, hu, Slovak, sk, Turkish, tr example: English",
        +    "type": "string"
        +  },
        +  "tag": {
        +    "description": "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",
        +    "type": "string"
        +  }
        +}
      • addedInput schema / properties / body / items / required
        Added value: +[
        +  "keywords"
        +]
      • changedInput schema / properties / body / items / type
        Previous value: -[
        -  "object",
        -  "null"
        -]New value: +"object"
      • changedInput schema / required
        Previous value: -[]New value: +[
        +  "body"
        +]
      • removedOutput schema / x-fastmcp-wrap-result
        Removed value: -true
    • Changedpost_dataforseo_labs_google_top_searches_live6 fields changed
      • removedInput schema / properties / body / example
        Removed value: -[
        -  {
        -    "language_name": "English",
        -    "limit": 3,
        -    "location_code": 2840
        -  }
        -]
      • changedInput schema / properties / body / items / anyOf
        Previous value: -[
        -  {
        -    "example": [
        -      {
        -        "language_name": "English",
        -        "limit": 3,
        -        "location_code": 2840
        -      }
        -    ],
        -    "properties": {
        -      "filters": {
        -        "description": "<em>array of results filtering parameters</em><br>optional field<br><strong>you can add several filters at once (8 filters maximum)</strong><br>you should set a logical operator <code>and</code>, <code>or</code> between the conditions<br>the following operators are supported:<br><code>regex</code>, <code>not_regex</code>, <code>&lt;</code>, <code>&lt;=</code>, <code>&gt;</code>, <code>&gt;=</code>, <code>=</code>, <code>&lt;&gt;</code>, <code>in</code>, <code>not_in</code>, <code>match</code>, <code>not_match</code>, <code>ilike</code>, <code>not_ilike</code>, <code>like</code>,<code>not_like</code><br>you can use the <code>%</code> operator with <code>like</code> and <code>not_like</code>,as well as <code>ilike</code> and <code>not_ilike</code> to match any string of zero or more characters<br>example:<br><code>[\"keyword_info.search_volume\",\"&gt;\",0]</code><p><code>[[\"keyword_info.search_volume\",\"in\",[0,1000]],<br>\"and\",<br>[\"keyword_info.competition_level\",\"=\",\"LOW\"]]</code><p><code>[[\"keyword_info.search_volume\",\"&gt;\",100],<br>\"and\",<br>[[\"keyword_info.cpc\",\"&lt;\",0.5],<br>\"or\",<p>[\"keyword_info.high_top_of_page_bid\",\"&lt;=\",0.5]]]</code><br>for more information about filters, please refer to <a href=\"/v3/dataforseo_labs/filters\" target=\"_blank\" rel=\"noopener noreferrer\">Dataforseo Labs - Filters</a> or this <a href=\"https://dataforseo.com/help-center/how-to-use-filters-in-dataforseo-labs-api\" rel=\"noopener noreferrer\" target=\"_blank\">help center guide</a>",
        -        "items": {
        -          "type": [
        -            "object",
        -            "null"
        -          ]
        -        },
        -        "type": [
        -          "array",
        -          "null"
        -        ]
        -      },
        -      "ignore_synonyms": {
        -        "description": "<em>ignore highly similar keywords</em><br>optional field<br>if set to <code class=\"prettyprint\">true</code> only core keywords will be returned, all highly similar keywords will be excluded;  <br>default value: <code>false</code>",
        -        "type": [
        -          "boolean",
        -          "null"
        -        ]
        -      },
        -      "include_clickstream_data": {
        -        "description": "<em>include or exclude data from clickstream-based metrics in the result</em><br>optional field<br>if the parameter is set to <code>true</code>, you will receive <code>clickstream_keyword_info</code>, <code>keyword_info_normalized_with_clickstream</code>, and <code>keyword_info_normalized_with_bing</code> fields in the response<br>default value: <code>false</code><br>with this parameter enabled, you will be charged double the price for the request<p>learn more about how clickstream-based metrics are calculated in this <a href=\"https://dataforseo.com/help-center/what-are-clickstream-based-metrics-and-how-do-we-calculate-them\" rel=\"noopener noreferrer\" target=\"_blank\">help center article</a>",
        -        "type": [
        -          "boolean",
        -          "null"
        -        ]
        -      },
        -      "include_serp_info": {
        -        "description": "<em>include data from SERP for each keyword</em><br>optional field<br>if set to <code>true</code>, we will return a <code>serp_info</code> array containing SERP data (number of search results, relevant URL, and SERP features) for every keyword in the response<br>default value: <code>false</code>",
        -        "type": [
        -          "boolean",
        -          "null"
        -        ]
        -      },
        -      "language_code": {
        -        "description": "<em>language code</em><br><strong>required field if you don't specify</strong> <code>language_name</code><br><strong>Note:</strong> it is required to specify either <code>language_name</code> or <code>language_code</code><br>you can receive the list of available locations with their <code>language_code</code> by making a separate request to the <br><code>https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages</code><br>example:<br><code class=\"long-string\">en</code>",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      },
        -      "language_name": {
        -        "description": "<em>full name of the language</em><br><strong>required field if you don't specify</strong> <code>language_code</code><br><strong>Note:</strong> it is required to specify either <code>language_name</code> or <code>language_code</code><br>you can receive the list of available locations with their <code>language_name</code> by making a separate request to the <br><code>https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages</code><br>example:<br><code class=\"long-string\">English</code>",
        -        "type": "string"
        -      },
        -      "limit": {
        -        "description": "<em>the maximum number of returned keywords</em><br>optional field<br></strong>note:</strong> you can get more than 1000 results by using the <code>offset_token</code> provided in the response to each subsequent request<br>default value: <code>1000</code><br>maximum value: <code>1000</code>",
        -        "type": [
        -          "integer",
        -          "null"
        -        ]
        -      },
        -      "location_code": {
        -        "description": "<em>location code</em><br><strong>required field if you don't specify</strong> <code>location_name</code><br><strong>Note:</strong> it is required to specify either <code>location_name</code> or <code>location_code</code><br>you can receive the list of available locations with their <code>location_code</code> by making a separate request to the <br><code>https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages</code><br>example:<br><code class=\"long-string\">2840</code>",
        -        "type": "integer"
        -      },
        -      "location_name": {
        -        "description": "<em>full name of the location</em><br><strong>required field if you don't specify</strong> <code>location_code</code><br><strong>Note:</strong> it is required to specify either <code>location_name</code> or <code>location_code</code><br>you can receive the list of available locations with their <code>location_name</code> by making a separate request to the <br><code>https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages</code><br>example:<br><code class=\"long-string\">United Kingdom</code>",
        -        "type": "string"
        -      },
        -      "offset": {
        -        "description": "<em>offset in the results array of returned keywords</em><br>optional field<br>default value: <code>0</code><br>if you specify the <code>10</code> value, the first ten keywords in the results array will be omitted and the data will be provided for the successive keywords<br><strong>Note:</strong> we recommend using this parameter only when retrieving up to 10,000 results<br>for retrieving over 10,000 results, use the <code>offset_token</code> instead.",
        -        "type": [
        -          "integer",
        -          "null"
        -        ]
        -      },
        -      "offset_token": {
        -        "description": "<em>offset token for subsequent requests</em><br>optional field<br>provided in the identical filed of the response to each request;<br>use this parameter to avoid timeouts while trying to obtain over 10,000 results in a single request;<br>by specifying the unique <code>offset_token</code> value from the response array, you will get the subsequent results of the initial task;<br><code>offset_token</code> values are unique for each subsequent task <br><strong>Note:</strong> if the <code>offset_token</code> is specified in the request, all other parameters except <code>limit</code> will not be taken into account when processing a task.<br>learn more about this parameter on our <a href=\"https://dataforseo.com/help-center/what-is-the-difference-between-the-offset-and-offset_token-parameters#offset_token\" target=\"_blank\">Help Center</a>",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      },
        -      "order_by": {
        -        "description": "<em>results sorting rules</em><br>optional field<br>you can use the same values as in the <code>filters</code> array to sort the results<br>possible sorting types:<br><code>asc</code> - results will be sorted in the ascending order<br><code>desc</code> - results will be sorted in the descending order<br>you should use a comma to set up a sorting type<br>example:<br><code>[\"keyword_info.competition,desc\"]</code><br>default rule:<br><code>[\"keyword_info.search_volume,desc\"]</code><br><strong>note that you can set no more than three sorting rules in a single request</strong><br>you should use a comma to separate several sorting rules<br>example:<br><code>[\"keyword_info.search_volume,desc\",\"keyword_info.cpc,desc\"]</code>",
        -        "items": {
        -          "type": "string"
        -        },
        -        "type": [
        -          "array",
        -          "null"
        -        ]
        -      },
        -      "tag": {
        -        "description": "<em>user-defined task identifier</em><br>optional field<br><em>the character limit is 255</em><br>you can use this parameter to identify the task and match it with the result<br>you will find the specified <code>tag</code> value in the <code>data</code> object of the response",
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      }
        -    },
        -    "type": "object"
        -  }
        -]New value: +[
        +  {
        +    "allOf": [
        +      {
        +        "anyOf": [
        +          {
        +            "required": [
        +              "location_name"
        +            ]
        +          },
        +          {
        +            "required": [
        +              "location_code"
        +            ]
        +          }
        +        ]
        +      },
        +      {
        +        "anyOf": [
        +          {
        +            "required": [
        +              "language_name"
        +            ]
        +          },
        +          {
        +            "required": [
        +              "language_code"
        +            ]
        +          }
        +        ]
        +      }
        +    ]
        +  },
        +  {
        +    "required": [
        +      "offset_token"
        +    ]
        +  }
        +]
      • addedInput schema / properties / body / items / properties
        Added value: +{
        +  "filters": {
        +    "description": "array of results filtering parameters optional field you can add several filters at once (8 filters maximum) you should set a logical operator and, or between the conditions the following operators are supported: regex, not_regex, <, <=, >, >=, =, <>, in, not_in, match, not_match, ilike, not_ilike, like,not_like you can use the % operator with like and not_like,as well as ilike and not_ilike to match any string of zero or more characters example: [\"keyword_info.search_volume\",\">\",0] [[\"keyword_info.search_volume\",\"in\",[0,1000]], \"and\", [\"keyword_info.competition_level\",\"=\",\"LOW\"]] [[\"keyword_info.search_volume\",\">\",100], \"and\", [[\"keyword_info.cpc\",\"<\",0.5], \"or\", [\"keyword_info.high_top_of_page_bid\",\"<=\",0.5]]] for more information about filters, please refer to Dataforseo Labs - Filters or this help center guide",
        +    "items": {},
        +    "type": "array"
        +  },
        +  "ignore_synonyms": {
        +    "description": "ignore highly similar keywords optional field if set to true only core keywords will be returned, all highly similar keywords will be excluded; default value: false",
        +    "type": "boolean"
        +  },
        +  "include_clickstream_data": {
        +    "description": "include or exclude data from clickstream-based metrics in the result optional field if the parameter is set to true, you will receive clickstream_keyword_info, keyword_info_normalized_with_clickstream, and keyword_info_normalized_with_bing fields in the response default value: false with this parameter enabled, you will be charged double the price for the request learn more about how clickstream-based metrics are calculated in this help center article",
        +    "type": "boolean"
        +  },
        +  "include_serp_info": {
        +    "description": "include data from SERP for each keyword optional field if set to true, we will return a serp_info array containing SERP data (number of search results, relevant URL, and SERP features) for every keyword in the response default value: false",
        +    "type": "boolean"
        +  },
        +  "language_code": {
        +    "description": "language code required field if you don’t specify language_name Note: it is required to specify either language_name or language_code you can receive the list of available locations with their language_code by making a separate request to the https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages example: en",
        +    "type": "string"
        +  },
        +  "language_name": {
        +    "description": "full name of the language required field if you don’t specify language_code Note: it is required to specify either language_name or language_code you can receive the list of available locations with their language_name by making a separate request to the https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages example: English",
        +    "type": "string"
        +  },
        +  "limit": {
        +    "description": "the maximum number of returned keywords optional field note: you can get more than 1000 results by using the offset_token provided in the response to each subsequent request default value: 1000 maximum value: 1000",
        +    "type": "integer"
        +  },
        +  "location_code": {
        +    "description": "location code required field if you don’t specify location_name Note: it is required to specify either location_name or location_code you can receive the list of available locations with their location_code by making a separate request to the https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages example: 2840",
        +    "type": "integer"
        +  },
        +  "location_name": {
        +    "description": "full name of the location required field if you don’t specify location_code Note: it is required to specify either location_name or location_code you can receive the list of available locations with their location_name by making a separate request to the https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages example: United Kingdom",
        +    "type": "string"
        +  },
        +  "offset": {
        +    "description": "offset in the results array of returned keywords optional field default value: 0 if you specify the 10 value, the first ten keywords in the results array will be omitted and the data will be provided for the successive keywords Note: we recommend using this parameter only when retrieving up to 10,000 results for retrieving over 10,000 results, use the offset_token instead.",
        +    "type": "integer"
        +  },
        +  "offset_token": {
        +    "description": "offset token for subsequent requests optional field provided in the identical filed of the response to each request; use this parameter to avoid timeouts while trying to obtain over 10,000 results in a single request; by specifying the unique offset_token value from the response array, you will get the subsequent results of the initial task; offset_token values are unique for each subsequent task Note: if the offset_token is specified in the request, all other parameters except limit will not be taken into account when processing a task. learn more about this parameter on our Help Center",
        +    "type": "string"
        +  },
        +  "order_by": {
        +    "description": "results sorting rules optional field you can use the same values as in the filters array to sort the results possible sorting types: asc – results will be sorted in the ascending order desc – results will be sorted in the descending order you should use a comma to set up a sorting type example: [\"keyword_info.competition,desc\"] default rule: [\"keyword_info.search_volume,desc\"] note that you can set no more than three sorting rules in a single request you should use a comma to separate several sorting rules example: [\"keyword_info.search_volume,desc\",\"keyword_info.cpc,desc\"]",
        +    "items": {
        +      "type": "string"
        +    },
        +    "type": "array"
        +  },
        +  "tag": {
        +    "description": "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",
        +    "type": "string"
        +  }
        +}
      • changedInput schema / properties / body / items / type
        Previous value: -[
        -  "object",
        -  "null"
        -]New value: +"object"
      • changedInput schema / required
        Previous value: -[]New value: +[
        +  "body"
        +]
      • removedOutput schema / x-fastmcp-wrap-result
        Removed value: -true
    • Changedsearch17 fields changed
      • removedInput schema / $schema
        Removed value: -"https://json-schema.org/draft/2020-12/schema"
      • addedInput schema / properties / category / anyOf
        Added value: +[
        +  {
        +    "enum": [
        +      "seo",
        +      "finance",
        +      "social",
        +      "search",
        +      "sales",
        +      "mail"
        +    ],
        +    "type": "string"
        +  },
        +  {
        +    "type": "null"
        +  }
        +]
      • addedInput schema / properties / category / default
        Added value: +null
      • changedInput schema / properties / category / description
        Previous value: -"Restrict retrieval to one category. Omit to search everything. (AIsa-only: tool-router has no equivalent.)"New value: +"Restrict to one category (seo, finance, social, search, sales, mail). Omit to search everything."
      • removedInput schema / properties / category / enum
        Removed value: -[
        -  "seo",
        -  "finance",
        -  "social",
        -  "search",
        -  "sales",
        -  "mail"
        -]
      • removedInput schema / properties / category / type
        Removed value: -"string"
      • removedInput schema / properties / known_fields
        Removed value: -{
        -  "additionalProperties": true,
        -  "default": {},
        -  "description": "Known values such as ticker, URL, provider, or identifier that improve retrieval.",
        -  "type": "object"
        -}
      • changedInput schema / properties / limit / description
        Previous value: -"Maximum number of additional direct tool candidates."New value: +"Maximum candidates, 1-10"
      • removedInput schema / properties / limit / maximum
        Removed value: -20
      • removedInput schema / properties / limit / minimum
        Removed value: -1
      • removedInput schema / properties / provider_filters
        Removed value: -{
        -  "default": [],
        -  "description": "Optional exact catalog provider keys used to narrow retrieval (for example similarweb). Do not use display brands. Omit this field if the exact key is unknown.",
        -  "items": {
        -    "type": "string"
        -  },
        -  "maxItems": 50,
        -  "type": "array",
        -  "uniqueItems": true
        -}
      • changedInput schema / properties / query / description
        Previous value: -"Natural-language capability or task to discover."New value: +"What you need, in plain language, e.g. 'backlinks of a domain', 'recent tweets by a user', 'insider trades for AAPL'. English works best."
      • removedInput schema / properties / query / maxLength
        Removed value: -2000
      • removedInput schema / properties / query / minLength
        Removed value: -1
      • removedInput schema / properties / session_id
        Removed value: -{
        -  "description": "Reuse the session_id returned by Search in all subsequent tool calls for this task. If omitted, a new session is created.",
        -  "maxLength": 128,
        -  "pattern": "^[A-Za-z0-9_-]*$",
        -  "type": "string"
        -}
      • removedOutput schema / properties
        Removed value: -{
        -  "next_steps_guidance": {
        -    "anyOf": [
        -      {
        -        "type": "null"
        -      },
        -      {
        -        "type": "array"
        -      }
        -    ],
        -    "items": {
        -      "type": "string"
        -    }
        -  },
        -  "plan": {
        -    "additionalProperties": false,
        -    "anyOf": [
        -      {
        -        "type": "null"
        -      },
        -      {
        -        "type": "object"
        -      }
        -    ],
        -    "properties": {
        -      "canonical_use_case": {
        -        "type": "string"
        -      },
        -      "description": {
        -        "type": "string"
        -      },
        -      "known_pitfalls": {
        -        "anyOf": [
        -          {
        -            "type": "null"
        -          },
        -          {
        -            "type": "array"
        -          }
        -        ],
        -        "items": {
        -          "type": "string"
        -        }
        -      },
        -      "plan_ref": {
        -        "type": "string"
        -      },
        -      "primary_tools": {
        -        "anyOf": [
        -          {
        -            "type": "null"
        -          },
        -          {
        -            "type": "array"
        -          }
        -        ],
        -        "items": {
        -          "type": "string"
        -        }
        -      },
        -      "recommended_steps": {
        -        "anyOf": [
        -          {
        -            "type": "null"
        -          },
        -          {
        -            "type": "array"
        -          }
        -        ],
        -        "items": {
        -          "type": "string"
        -        }
        -      },
        -      "related_tools": {
        -        "anyOf": [
        -          {
        -            "type": "null"
        -          },
        -          {
        -            "type": "array"
        -          }
        -        ],
        -        "items": {
        -          "type": "string"
        -        }
        -      }
        -    },
        -    "required": [
        -      "canonical_use_case",
        -      "description",
        -      "known_pitfalls",
        -      "plan_ref",
        -      "primary_tools",
        -      "recommended_steps",
        -      "related_tools"
        -    ]
        -  },
        -  "retrieval_mode": {
        -    "anyOf": [
        -      {
        -        "type": "null"
        -      },
        -      {
        -        "type": "string"
        -      }
        -    ]
        -  },
        -  "search_id": {
        -    "type": "string"
        -  },
        -  "session_id": {
        -    "description": "Reuse the session_id returned by Search in all subsequent tool calls for this task. If omitted, a new session is created.",
        -    "maxLength": 128,
        -    "minLength": 1,
        -    "pattern": "^[A-Za-z0-9_-]{1,128}$",
        -    "type": "string"
        -  },
        -  "tools": {
        -    "anyOf": [
        -      {
        -        "type": "null"
        -      },
        -      {
        -        "type": "array"
        -      }
        -    ],
        -    "items": {
        -      "additionalProperties": false,
        -      "properties": {
        -        "arguments_schema": {
        -          "additionalProperties": true,
        -          "anyOf": [
        -            {
        -              "type": "null"
        -            },
        -            {
        -              "type": "object"
        -            }
        -          ]
        -        },
        -        "description": {
        -          "type": "string"
        -        },
        -        "execution_supported": {
        -          "description": "Whether this router can execute and quote the operation; false retains documentation and discovery only.",
        -          "type": "boolean"
        -        },
        -        "execution_unsupported_reason": {
        -          "description": "Why execution and quoting remain unavailable through this router.",
        -          "type": "string"
        -        },
        -        "has_full_schema": {
        -          "type": "boolean"
        -        },
        -        "match_reasons": {
        -          "anyOf": [
        -            {
        -              "type": "null"
        -            },
        -            {
        -              "type": "array"
        -            }
        -          ],
        -          "items": {
        -            "type": "string"
        -          }
        -        },
        -        "price": {
        -          "additionalProperties": true,
        -          "type": "object"
        -        },
        -        "retrieval_debug": {
        -          "additionalProperties": false,
        -          "anyOf": [
        -            {
        -              "type": "null"
        -            },
        -            {
        -              "type": "object"
        -            }
        -          ],
        -          "properties": {
        -            "fused_rank": {
        -              "type": "integer"
        -            },
        -            "fused_score": {
        -              "type": "number"
        -            },
        -            "lexical_rank": {
        -              "type": "integer"
        -            },
        -            "lexical_score": {
        -              "type": "number"
        -            },
        -            "rerank_admission_rank": {
        -              "type": "integer"
        -            },
        -            "rerank_rank": {
        -              "type": "integer"
        -            },
        -            "rerank_score": {
        -              "anyOf": [
        -                {
        -                  "type": "null"
        -                },
        -                {
        -                  "type": "number"
        -                }
        -              ]
        -            },
        -            "runtime_availability": {
        -              "type": "string"
        -            },
        -            "vector_view_ranks": {
        -              "additionalProperties": {
        -                "type": "integer"
        -              },
        -              "type": "object"
        -            },
        -            "vector_view_scores": {
        -              "additionalProperties": {
        -                "type": "number"
        -              },
        -              "type": "object"
        -            }
        -          },
        -          "required": [
        -            "fused_rank",
        -            "fused_score",
        -            "lexical_rank",
        -            "lexical_score",
        -            "rerank_admission_rank",
        -            "rerank_rank",
        -            "runtime_availability",
        -            "vector_view_ranks",
        -            "vector_view_scores"
        -          ]
        -        },
        -        "summary": {
        -          "type": "string"
        -        },
        -        "tool": {
        -          "type": "string"
        -        }
        -      },
        -      "required": [
        -        "description",
        -        "has_full_schema",
        -        "price",
        -        "summary",
        -        "tool"
        -      ],
        -      "type": "object"
        -    }
        -  }
        -}
      • removedOutput schema / required
        Removed value: -[
        -  "next_steps_guidance",
        -  "search_id",
        -  "session_id",
        -  "tools"
        -]
    • Changeduse1 field changed
      • changedInput schema / properties / max_price_usd / description
        Previous value: -"Refuse the call before any spend if its quoted price is above this many USD"New value: +"Refuse the call before any spend if it would cost more than this many USD"
  5. 53 tool updates
    • Addedbatch_get_schema
    • Addedbatch_quote
    • Changedbatch_use18 fields changed
      • addedInput schema / $schema
        Added value: +"https://json-schema.org/draft/2020-12/schema"
      • removedInput schema / properties / calls / description
        Removed value: -"Up to 20 items of {call_id, operation_id, arguments}; steps at the same execution_level of a plan go in one batch"
      • addedInput schema / properties / calls / items / $schema
        Added value: +"https://json-schema.org/draft/2020-12/schema"
      • changedInput schema / properties / calls / items / additionalProperties
        Previous value: -trueNew value: +false
      • addedInput schema / properties / calls / items / properties
        Added value: +{
        +  "arguments": {
        +    "additionalProperties": true,
        +    "description": "Strictly schema-compliant arguments using the exact field names and types from this tool's arguments_schema.",
        +    "type": "object"
        +  },
        +  "call_id": {
        +    "description": "Caller-chosen identifier unique within this batch.",
        +    "maxLength": 128,
        +    "minLength": 1,
        +    "type": "string"
        +  },
        +  "tool": {
        +    "description": "Exact tool name returned by search or batch_get_schema. Never invent a name.",
        +    "minLength": 1,
        +    "type": "string"
        +  }
        +}
      • addedInput schema / properties / calls / items / required
        Added value: +[
        +  "call_id",
        +  "tool",
        +  "arguments"
        +]
      • addedInput schema / properties / calls / maxItems
        Added value: +20
      • addedInput schema / properties / calls / minItems
        Added value: +1
      • removedInput schema / properties / max_price_usd
        Removed value: -{
        -  "anyOf": [
        -    {
        -      "type": "number"
        -    },
        -    {
        -      "type": "null"
        -    }
        -  ],
        -  "default": null,
        -  "description": "Per-call price cap applied to every item"
        -}
      • removedInput schema / properties / search_id / anyOf
        Removed value: -[
        -  {
        -    "type": "string"
        -  },
        -  {
        -    "type": "null"
        -  }
        -]
      • removedInput schema / properties / search_id / default
        Removed value: -null
      • changedInput schema / properties / search_id / description
        Previous value: -"search_id from the search that found these operations"New value: +"Optional search correlation identifier returned by search."
      • addedInput schema / properties / search_id / type
        Added value: +"string"
      • addedInput schema / properties / session_id
        Added value: +{
        +  "description": "Reuse the session_id returned by Search in all subsequent tool calls for this task. If omitted, a new session is created.",
        +  "maxLength": 128,
        +  "pattern": "^[A-Za-z0-9_-]*$",
        +  "type": "string"
        +}
      • addedOutput schema / $defs
        Added value: +{
        +  "jsonValue": {
        +    "anyOf": [
        +      {
        +        "additionalProperties": {
        +          "$ref": "#/$defs/jsonValue"
        +        },
        +        "type": "object"
        +      },
        +      {
        +        "items": {
        +          "$ref": "#/$defs/jsonValue"
        +        },
        +        "type": "array"
        +      },
        +      {
        +        "type": "string"
        +      },
        +      {
        +        "type": "number"
        +      },
        +      {
        +        "type": "boolean"
        +      },
        +      {
        +        "type": "null"
        +      }
        +    ],
        +    "description": "JSON value returned by the upstream tool."
        +  }
        +}
      • addedOutput schema / $schema
        Added value: +"https://json-schema.org/draft/2020-12/schema"
      • addedOutput schema / properties
        Added value: +{
        +  "batch_id": {
        +    "type": "string"
        +  },
        +  "error_count": {
        +    "minimum": 0,
        +    "type": "integer"
        +  },
        +  "next_steps_guidance": {
        +    "description": "Deterministic next-step instructions derived from this result. Not an authorization grant.",
        +    "items": {
        +      "type": "string"
        +    },
        +    "type": "array"
        +  },
        +  "results": {
        +    "items": {
        +      "$schema": "https://json-schema.org/draft/2020-12/schema",
        +      "additionalProperties": false,
        +      "properties": {
        +        "call_id": {
        +          "type": "string"
        +        },
        +        "customer_cost_micros_usd": {
        +          "description": "Actual customer charge settled by AIsaServices, in micro-USD. Omitted when the upstream response does not report it.",
        +          "minimum": 0,
        +          "type": "integer"
        +        },
        +        "data": {
        +          "$ref": "#/$defs/jsonValue"
        +        },
        +        "error": {
        +          "anyOf": [
        +            {
        +              "$schema": "https://json-schema.org/draft/2020-12/schema",
        +              "additionalProperties": false,
        +              "properties": {
        +                "message": {
        +                  "type": "string"
        +                },
        +                "retryable": {
        +                  "type": "boolean"
        +                },
        +                "status": {
        +                  "type": "integer"
        +                },
        +                "type": {
        +                  "enum": [
        +                    "validation",
        +                    "authentication",
        +                    "payment",
        +                    "permission",
        +                    "rate_limit",
        +                    "upstream",
        +                    "timeout",
        +                    "internal"
        +                  ],
        +                  "type": "string"
        +                }
        +              },
        +              "required": [
        +                "type",
        +                "status",
        +                "retryable"
        +              ],
        +              "type": "object"
        +            },
        +            {
        +              "type": "null"
        +            }
        +          ]
        +        },
        +        "request_id": {
        +          "type": "string"
        +        },
        +        "successful": {
        +          "type": "boolean"
        +        },
        +        "tool": {
        +          "type": "string"
        +        },
        +        "upstream_status": {
        +          "description": "HTTP status returned by AIsaServices when a request was dispatched.",
        +          "type": "integer"
        +        }
        +      },
        +      "required": [
        +        "call_id",
        +        "tool",
        +        "successful",
        +        "request_id"
        +      ],
        +      "type": "object"
        +    },
        +    "type": "array"
        +  },
        +  "session_id": {
        +    "description": "Reuse the session_id returned by Search in all subsequent tool calls for this task. If omitted, a new session is created.",
        +    "maxLength": 128,
        +    "minLength": 1,
        +    "pattern": "^[A-Za-z0-9_-]*$",
        +    "type": "string"
        +  },
        +  "success_count": {
        +    "minimum": 0,
        +    "type": "integer"
        +  },
        +  "total_count": {
        +    "minimum": 1,
        +    "type": "integer"
        +  }
        +}
      • addedOutput schema / required
        Added value: +[
        +  "session_id",
        +  "batch_id",
        +  "total_count",
        +  "success_count",
        +  "error_count",
        +  "results",
        +  "next_steps_guidance"
        +]
    • Changedget_dataforseo_keywords_bing_audience_industries1 field changed
      • addedOutput schema / x-fastmcp-wrap-result
        Added value: +true
    • Changedget_dataforseo_keywords_bing_audience_job_functions1 field changed
      • addedOutput schema / x-fastmcp-wrap-result
        Added value: +true
    • Changedget_dataforseo_keywords_bing_kw_performance_locales1 field changed
      • addedOutput schema / x-fastmcp-wrap-result
        Added value: +true
    • Changedget_dataforseo_keywords_bing_languages1 field changed
      • addedOutput schema / x-fastmcp-wrap-result
        Added value: +true
    • Changedget_dataforseo_keywords_bing_locations1 field changed
      • addedOutput schema / x-fastmcp-wrap-result
        Added value: +true
    • Changedget_dataforseo_keywords_bing_volume_history_locales1 field changed
      • addedOutput schema / x-fastmcp-wrap-result
        Added value: +true
    • Changedget_dataforseo_keywords_clickstream_locales1 field changed
      • addedOutput schema / x-fastmcp-wrap-result
        Added value: +true
    • Changedget_dataforseo_keywords_gads_ad_traffic_fetch3 fields changed
      • changedInput schema / properties / id / description
        Previous value: -"task identifier unique task identifier in our system in the UUID format you will be able to use it within 30 days to request the results of the task at any time"New value: +"<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"
      • addedInput schema / properties / id / example
        Added value: +"00000000-0000-0000-0000-000000000000"
      • addedOutput schema / x-fastmcp-wrap-result
        Added value: +true
    • Changedget_dataforseo_keywords_gads_status1 field changed
      • addedOutput schema / x-fastmcp-wrap-result
        Added value: +true
    • Changedget_dataforseo_keywords_google_trends_categories1 field changed
      • addedOutput schema / x-fastmcp-wrap-result
        Added value: +true
    • Changedget_dataforseo_keywords_trends_locations1 field changed
      • addedOutput schema / x-fastmcp-wrap-result
        Added value: +true
    • Changedget_dataforseo_labs_google_categories_for_kw_languages1 field changed
      • addedOutput schema / x-fastmcp-wrap-result
        Added value: +true
    • Changedget_details13 fields changed
      • addedInput schema / $schema
        Added value: +"https://json-schema.org/draft/2020-12/schema"
      • removedInput schema / properties / arguments
        Removed value: -{
        -  "anyOf": [
        -    {
        -      "additionalProperties": true,
        -      "type": "object"
        -    },
        -    {
        -      "type": "null"
        -    }
        -  ],
        -  "default": null,
        -  "description": "The arguments the operation would be called with, for a price that reflects them. Keyed by operation_id for a batch, or passed flat for a single operation_id. Routes whose required parameters are validated before pricing have no price without them."
        -}
      • addedInput schema / properties / include_arguments_schema
        Added value: +{
        +  "default": true,
        +  "description": "Return the complete arguments_schema. Defaults to true.",
        +  "type": "boolean"
        +}
      • changedInput schema / properties / include_documentation / description
        Previous value: -"Include the complete native public OpenAPI document, reference closure and scoped completeness. Existing execution schemas remain unchanged."New value: +"Return the complete immutable public OpenAPI operation, referenced declarations, provenance and scoped completeness. Documentation does not change execution support."
      • addedInput schema / properties / include_response_schema
        Added value: +{
        +  "default": false,
        +  "description": "Return the complete response_schema. Defaults to false.",
        +  "type": "boolean"
        +}
      • removedInput schema / properties / operation_id
        Removed value: -{
        -  "anyOf": [
        -    {
        -      "type": "string"
        -    },
        -    {
        -      "type": "null"
        -    }
        -  ],
        -  "default": null,
        -  "description": "One operation_id from search"
        -}
      • removedInput schema / properties / operation_ids
        Removed value: -{
        -  "anyOf": [
        -    {
        -      "items": {
        -        "type": "string"
        -      },
        -      "type": "array"
        -    },
        -    {
        -      "type": "null"
        -    }
        -  ],
        -  "default": null,
        -  "description": "Up to 20 operation_ids, for a batch"
        -}
      • addedInput schema / properties / session_id
        Added value: +{
        +  "description": "Reuse the session_id returned by Search in all subsequent tool calls for this task. If omitted, a new session is created.",
        +  "maxLength": 128,
        +  "pattern": "^[A-Za-z0-9_-]*$",
        +  "type": "string"
        +}
      • addedInput schema / properties / tools
        Added value: +{
        +  "description": "Exact tool names returned by search whose complete contracts are needed. Never invent tool names.",
        +  "items": {
        +    "minLength": 1,
        +    "pattern": "^\\S(?:.*\\S)?$",
        +    "type": "string"
        +  },
        +  "maxItems": 20,
        +  "minItems": 1,
        +  "type": "array",
        +  "uniqueItems": true
        +}
      • removedInput schema / properties / with_quote
        Removed value: -{
        -  "default": true,
        -  "description": "Whether each operation is priced for this account before the answer. One round trip per operation; spends nothing.",
        -  "type": "boolean"
        -}
      • addedInput schema / required
        Added value: +[
        +  "tools"
        +]
      • addedOutput schema / properties
        Added value: +{
        +  "error_count": {
        +    "type": "integer"
        +  },
        +  "next_steps_guidance": {
        +    "anyOf": [
        +      {
        +        "type": "null"
        +      },
        +      {
        +        "type": "array"
        +      }
        +    ],
        +    "items": {
        +      "type": "string"
        +    }
        +  },
        +  "session_id": {
        +    "description": "Reuse the session_id returned by Search in all subsequent tool calls for this task. If omitted, a new session is created.",
        +    "maxLength": 128,
        +    "minLength": 1,
        +    "pattern": "^[A-Za-z0-9_-]{1,128}$",
        +    "type": "string"
        +  },
        +  "success_count": {
        +    "type": "integer"
        +  },
        +  "tools": {
        +    "additionalProperties": {
        +      "additionalProperties": false,
        +      "properties": {
        +        "arguments_schema": {
        +          "additionalProperties": true,
        +          "anyOf": [
        +            {
        +              "type": "null"
        +            },
        +            {
        +              "type": "object"
        +            }
        +          ]
        +        },
        +        "canonical_operation_id": {
        +          "type": "string"
        +        },
        +        "documentation": {
        +          "additionalProperties": true,
        +          "type": "object"
        +        },
        +        "error": {
        +          "additionalProperties": false,
        +          "anyOf": [
        +            {
        +              "type": "null"
        +            },
        +            {
        +              "type": "object"
        +            }
        +          ],
        +          "properties": {
        +            "code": {
        +              "type": "string"
        +            },
        +            "message": {
        +              "type": "string"
        +            }
        +          },
        +          "required": [
        +            "code",
        +            "message"
        +          ]
        +        },
        +        "execution_supported": {
        +          "description": "Whether this router can execute and quote the operation; false retains documentation and discovery only.",
        +          "type": "boolean"
        +        },
        +        "execution_unsupported_reason": {
        +          "description": "Why execution and quoting remain unavailable through this router.",
        +          "type": "string"
        +        },
        +        "idempotent": {
        +          "anyOf": [
        +            {
        +              "type": "null"
        +            },
        +            {
        +              "type": "boolean"
        +            }
        +          ]
        +        },
        +        "known_pitfalls": {
        +          "anyOf": [
        +            {
        +              "type": "null"
        +            },
        +            {
        +              "type": "array"
        +            }
        +          ],
        +          "items": {
        +            "type": "string"
        +          }
        +        },
        +        "read_only": {
        +          "anyOf": [
        +            {
        +              "type": "null"
        +            },
        +            {
        +              "type": "boolean"
        +            }
        +          ]
        +        },
        +        "response_schema": {
        +          "additionalProperties": true,
        +          "anyOf": [
        +            {
        +              "type": "null"
        +            },
        +            {
        +              "type": "object"
        +            }
        +          ]
        +        },
        +        "side_effects": {
        +          "anyOf": [
        +            {
        +              "type": "null"
        +            },
        +            {
        +              "type": "array"
        +            }
        +          ],
        +          "items": {
        +            "type": "string"
        +          }
        +        },
        +        "successful": {
        +          "type": "boolean"
        +        }
        +      },
        +      "required": [
        +        "successful"
        +      ],
        +      "type": "object"
        +    },
        +    "type": "object"
        +  },
        +  "total_count": {
        +    "type": "integer"
        +  }
        +}
      • addedOutput schema / required
        Added value: +[
        +  "error_count",
        +  "next_steps_guidance",
        +  "session_id",
        +  "success_count",
        +  "tools",
        +  "total_count"
        +]
    • Changedget_semrush_broad_match_keywords4 fields changed
      • removedInput schema / properties / database / default
        Removed value: -"us"
      • removedInput schema / properties / database / description
        Removed value: -"Regional database / country code. Defaults to `us`."
      • removedInput schema / properties / phrase / description
        Removed value: -"Keyword phrase. URL-encode spaces as `%20` or `+`."
      • removedInput schema / properties / phrase / example
        Removed value: -"seo tools"
    • Changedget_semrush_domain_organic_keywords5 fields changed
      • removedInput schema / properties / database / description
        Removed value: -"Regional database / country code, e.g. `us`."
      • removedInput schema / properties / database / example
        Removed value: -"us"
      • removedInput schema / properties / domain / description
        Removed value: -"Target domain, e.g. `ahrefs.com`."
      • removedInput schema / properties / domain / example
        Removed value: -"ahrefs.com"
      • changedInput schema / required
        Previous value: -[
        -  "domain",
        -  "database"
        -]New value: +[
        +  "database",
        +  "domain"
        +]
    • Changedget_semrush_domain_paid_keywords5 fields changed
      • removedInput schema / properties / database / description
        Removed value: -"Regional database / country code, e.g. `us`."
      • removedInput schema / properties / database / example
        Removed value: -"us"
      • removedInput schema / properties / domain / description
        Removed value: -"Target domain, e.g. `ahrefs.com`."
      • removedInput schema / properties / domain / example
        Removed value: -"ahrefs.com"
      • changedInput schema / required
        Previous value: -[
        -  "domain",
        -  "database"
        -]New value: +[
        +  "database",
        +  "domain"
        +]
    • Changedget_semrush_keyword_difficulty7 fields changed
      • removedInput schema / properties / database / default
        Removed value: -"us"
      • removedInput schema / properties / database / description
        Removed value: -"Regional database / country code. Defaults to `us`."
      • removedInput schema / properties / phrase / description
        Removed value: -"One or more keywords separated by `;` (up to 20)."
      • removedInput schema / properties / phrase / example
        Removed value: -"seo tools;ahrefs"
      • addedInput schema / properties / phrase / x-aisa-delimiter
        Added value: +";"
      • addedInput schema / properties / phrase / x-aisa-maxItems
        Added value: +20
      • addedInput schema / properties / phrase / x-aisa-minItems
        Added value: +1
    • Changedget_semrush_keyword_overview3 fields changed
      • removedInput schema / properties / database / description
        Removed value: -"Regional database / country code. Defaults to `us`."
      • removedInput schema / properties / phrase / description
        Removed value: -"Keyword phrase. URL-encode spaces as `%20` or `+`."
      • removedInput schema / properties / phrase / example
        Removed value: -"seo tools"
    • Changedget_semrush_question_keywords4 fields changed
      • removedInput schema / properties / database / default
        Removed value: -"us"
      • removedInput schema / properties / database / description
        Removed value: -"Regional database / country code. Defaults to `us`."
      • removedInput schema / properties / phrase / description
        Removed value: -"Keyword phrase. URL-encode spaces as `%20` or `+`."
      • removedInput schema / properties / phrase / example
        Removed value: -"seo tools"
    • Changedget_semrush_url_organic_keywords5 fields changed
      • removedInput schema / properties / database / description
        Removed value: -"Regional database / country code, e.g. `us`."
      • removedInput schema / properties / database / example
        Removed value: -"us"
      • removedInput schema / properties / url / description
        Removed value: -"Target URL (landing page)."
      • removedInput schema / properties / url / example
        Removed value: -"https://ahrefs.com/blog/"
      • changedInput schema / required
        Previous value: -[
        -  "url",
        -  "database"
        -]New value: +[
        +  "database",
        +  "url"
        +]
    • Changedget_similarweb_keywords15 fields changed
      • changedInput schema / properties / country / description
        Previous value: -"Two-letter country code. Allowed: us, ww. Default: ww. Coverage is limited to ww and us on the current plan."New value: +"Worldwide data only; values are case-insensitive."
      • changedInput schema / properties / country / enum
        Previous value: -[
        -  "us",
        -  "ww"
        -]New value: +[
        +  "ww"
        +]
      • removedInput schema / properties / domain / description
        Removed value: -"Target domain, e.g. example.com."
      • addedInput schema / properties / domain / maxLength
        Added value: +2048
      • addedInput schema / properties / domain / minLength
        Added value: +1
      • removedInput schema / properties / end_date / description
        Removed value: -"End month, format YYYY-MM."
      • removedInput schema / properties / format / description
        Removed value: -"Response format. Allowed: json."
      • removedInput schema / properties / granularity / description
        Removed value: -"Time granularity. Allowed: monthly."
      • removedInput schema / properties / limit / default
        Removed value: -20
      • removedInput schema / properties / limit / description
        Removed value: -"Number of rows to return; max 20, billed as 20 if exceeded."
      • addedInput schema / properties / limit / minimum
        Added value: +1
      • removedInput schema / properties / main_domain_only / description
        Removed value: -"Restrict to the main domain only (true/false)."
      • removedInput schema / properties / start_date / description
        Removed value: -"Start month, format YYYY-MM."
      • removedInput schema / properties / web_source / description
        Removed value: -"Traffic source device split. Allowed: total."
      • changedInput schema / required
        Previous value: -[
        -  "domain",
        -  "start_date",
        -  "end_date",
        -  "granularity",
        -  "limit"
        -]New value: +[
        +  "domain",
        +  "end_date",
        +  "granularity",
        +  "limit",
        +  "start_date"
        +]
    • Changedget_similarweb_landing_pages18 fields changed
      • changedInput schema / properties / country / description
        Previous value: -"Two-letter country code. Allowed: us, ww. Default: ww. Coverage is limited to ww and us on the current plan."New value: +"Worldwide data only; values are case-insensitive."
      • changedInput schema / properties / country / enum
        Previous value: -[
        -  "us",
        -  "ww"
        -]New value: +[
        +  "ww"
        +]
      • removedInput schema / properties / domain / description
        Removed value: -"Target domain, e.g. example.com."
      • addedInput schema / properties / domain / maxLength
        Added value: +253
      • addedInput schema / properties / domain / minLength
        Added value: +1
      • removedInput schema / properties / end_date / description
        Removed value: -"End month, format YYYY-MM."
      • removedInput schema / properties / granularity / description
        Removed value: -"Time granularity. Allowed: monthly."
      • removedInput schema / properties / limit / default
        Removed value: -20
      • removedInput schema / properties / limit / description
        Removed value: -"Number of rows to return; max 20, billed as 20 if exceeded."
      • addedInput schema / properties / limit / minimum
        Added value: +1
      • removedInput schema / properties / main_domain_only / description
        Removed value: -"Restrict to the main domain only (true/false)."
      • removedInput schema / properties / offset / description
        Removed value: -"Row offset for pagination."
      • addedInput schema / properties / offset / maximum
        Added value: +100000
      • addedInput schema / properties / offset / minimum
        Added value: +0
      • removedInput schema / properties / start_date / description
        Removed value: -"Start month, format YYYY-MM."
      • removedInput schema / properties / traffic_source / description
        Removed value: -"Traffic-source filter."
      • removedInput schema / properties / web_source / description
        Removed value: -"Traffic source device split. Allowed: desktop, mobile_web, total."
      • changedInput schema / required
        Previous value: -[
        -  "domain",
        -  "start_date",
        -  "end_date",
        -  "limit"
        -]New value: +[
        +  "domain",
        +  "end_date",
        +  "limit",
        +  "start_date"
        +]
    • Changedpost_dataforseo_keywords_bing_audience_live7 fields changed
      • addedInput schema / properties / body / example
        Added value: +[
        +  {
        +    "age": [
        +      "twenty_five_to_thirty_four",
        +      "eighteen_to_twenty_four",
        +      "unknown"
        +    ],
        +    "bid": 1,
        +    "daily_budget": 24,
        +    "gender": [
        +      "male"
        +    ],
        +    "industry": [
        +      "806303407",
        +      "806301758"
        +    ],
        +    "job_function": [
        +      "806298607"
        +    ],
        +    "location_coordinate": "29.6821525,-82.4098881,100"
        +  }
        +]
      • removedInput schema / properties / body / items / allOf
        Removed value: -[
        -  {
        -    "anyOf": [
        -      {
        -        "required": [
        -          "location_name"
        -        ]
        -      },
        -      {
        -        "required": [
        -          "location_code"
        -        ]
        -      },
        -      {
        -        "required": [
        -          "location_coordinate"
        -        ]
        -      }
        -    ]
        -  }
        -]
      • addedInput schema / properties / body / items / anyOf
        Added value: +[
        +  {
        +    "example": [
        +      {
        +        "age": [
        +          "twenty_five_to_thirty_four",
        +          "eighteen_to_twenty_four",
        +          "unknown"
        +        ],
        +        "bid": 1,
        +        "daily_budget": 24,
        +        "gender": [
        +          "male"
        +        ],
        +        "industry": [
        +          "806303407",
        +          "806301758"
        +        ],
        +        "job_function": [
        +          "806298607"
        +        ],
        +        "location_coordinate": "29.6821525,-82.4098881,100"
        +      }
        +    ],
        +    "properties": {
        +      "age": {
        +        "description": "<em>selection of age ranges for targeting</em><br>possible values: <code>eighteen_to_twenty_four</code>, <code>fifty_to_sixty_four</code>, <code>sixty_five_and_above</code>, <code>thirteen_to_seventeen</code>, <code>thirty_five_to_forty_nine</code>, <code>twenty_five_to_thirty_four</code>, <code>unknown</code>, <code>zero_to_twelve</code>",
        +        "items": {
        +          "type": "string"
        +        },
        +        "type": [
        +          "array",
        +          "null"
        +        ]
        +      },
        +      "bid": {
        +        "description": "<em>desired bid setting value in USD</em><br>maximum value: 1000",
        +        "type": [
        +          "number",
        +          "null"
        +        ]
        +      },
        +      "daily_budget": {
        +        "description": "<em>daily campaign budget value in USD</em><br>maximum value: 10000",
        +        "type": [
        +          "number",
        +          "null"
        +        ]
        +      },
        +      "gender": {
        +        "description": "<em>gender to target</em><br>possible values: <code>male</code>, <code>female</code>, <code>unknown</code>",
        +        "items": {
        +          "type": "string"
        +        },
        +        "type": [
        +          "array",
        +          "null"
        +        ]
        +      },
        +      "industry": {
        +        "description": "<em>industry of LinkedIn profile targeting</em><p>if you use this field, you can receive the list of available industry names  with industry_id by making a separate request to the https://api.dataforseo.com/v3/keywords_data/bing/audience_estimation/industries<p>example: <code>806301758</code>",
        +        "items": {
        +          "type": "string"
        +        },
        +        "type": [
        +          "array",
        +          "null"
        +        ]
        +      },
        +      "job_function": {
        +        "description": "<em>job function of LinkedIn profile targeting</em><p>if you use this field, you can receive the list of available job function names  with job_function_id by making a separate request to the https://api.dataforseo.com/v3/keywords_data/bing/audience_estimation/job_functions<p>example: <code>806300451</code>",
        +        "items": {
        +          "type": "string"
        +        },
        +        "type": [
        +          "array",
        +          "null"
        +        ]
        +      },
        +      "location_code": {
        +        "description": "<em>search engine location code</em><br><strong>required field if you don't specify</strong> <code>location_name</code> or <code>location_coordinate</code><br><strong>if you use this field, you don't need to specify <code>location_name</code> or <code>location_coordinate</code></strong><br>you can receive the list of available locations of the search engines with their <code>location_code</code> by making a separate request to <code>https://api.dataforseo.com/v3/keywords_data/bing/locations</code><br>example:<br><code class=\"long-string\">2840</code>",
        +        "type": "integer"
        +      },
        +      "location_coordinate": {
        +        "description": "<em>GPS coordinates of a location</em><br><strong>required field if you don't specify</strong> <code>location_name</code> or <code>location_code</code><br><strong>if you use this field, you don't need to specify <code>location_name</code> or <code>location_code</code></strong><br><code>location_coordinate</code> parameter should be specified in the <em>\"latitude,longitude,radius (in km)\"</em> format<br><strong>the data will be provided for the country the specified coordinates belong to</strong><br>example:<br><code class=\"long-string\">29.6821525,-82.4098881,100</code>",
        +        "type": "string"
        +      },
        +      "location_name": {
        +        "description": "<em>full name of search engine location</em><br><strong>required field if you don't specify</strong> <code>location_code</code> or <code>location_coordinate</code><br><strong>if you use this field, you don't need to specify <code>location_code</code> or <code>location_coordinate</code></strong><br>you can receive the list of available locations of the search engine with their <code>location_name</code> by making a separate request to <code>https://api.dataforseo.com/v3/keywords_data/bing/locations</code><br>example:<br><code class=\"long-string\">London,England,United Kingdom</code>",
        +        "type": "string"
        +      }
        +    },
        +    "type": "object"
        +  }
        +]
      • removedInput schema / properties / body / items / properties
        Removed value: -{
        -  "age": {
        -    "description": "selection of age ranges for targeting possible values: eighteen_to_twenty_four, fifty_to_sixty_four, sixty_five_and_above, thirteen_to_seventeen, thirty_five_to_forty_nine, twenty_five_to_thirty_four, unknown, zero_to_twelve",
        -    "items": {
        -      "type": "string"
        -    },
        -    "type": "array"
        -  },
        -  "bid": {
        -    "description": "desired bid setting value in USD maximum value: 1000",
        -    "type": "number"
        -  },
        -  "daily_budget": {
        -    "description": "daily campaign budget value in USD maximum value: 10000",
        -    "type": "number"
        -  },
        -  "gender": {
        -    "description": "gender to target possible values: male, female, unknown",
        -    "items": {
        -      "type": "string"
        -    },
        -    "type": "array"
        -  },
        -  "industry": {
        -    "description": "industry of LinkedIn profile targeting if you use this field, you can receive the list of available industry names with industry_id by making a separate request to the https://api.dataforseo.com/v3/keywords_data/bing/audience_estimation/industries example: 806301758",
        -    "items": {
        -      "type": "integer"
        -    },
        -    "type": "array"
        -  },
        -  "job_function": {
        -    "description": "job function of LinkedIn profile targeting if you use this field, you can receive the list of available job function names with job_function_id by making a separate request to the https://api.dataforseo.com/v3/keywords_data/bing/audience_estimation/job_functions example: 806300451",
        -    "items": {
        -      "type": "integer"
        -    },
        -    "type": "array"
        -  },
        -  "location_code": {
        -    "description": "search engine location code required field if you don’t specify location_name or location_coordinate if you use this field, you don’t need to specify location_name or location_coordinate you can receive the list of available locations of the search engines with their location_code by making a separate request to https://api.dataforseo.com/v3/keywords_data/bing/locations example: 2840",
        -    "type": "integer"
        -  },
        -  "location_coordinate": {
        -    "description": "GPS coordinates of a location required field if you don’t specify location_name or location_code if you use this field, you don’t need to specify location_name or location_code location_coordinate parameter should be specified in the “latitude,longitude,radius (in km)” format the data will be provided for the country the specified coordinates belong to example: 29.6821525,-82.4098881,100",
        -    "type": "string"
        -  },
        -  "location_name": {
        -    "description": "full name of search engine location required field if you don’t specify location_code or location_coordinate if you use this field, you don’t need to specify location_code or location_coordinate you can receive the list of available locations of the search engine with their location_name by making a separate request to https://api.dataforseo.com/v3/keywords_data/bing/locations example: London,England,United Kingdom",
        -    "type": "string"
        -  }
        -}
      • changedInput schema / properties / body / items / type
        Previous value: -"object"New value: +[
        +  "object",
        +  "null"
        +]
      • changedInput schema / required
        Previous value: -[
        -  "body"
        -]New value: +[]
      • addedOutput schema / x-fastmcp-wrap-result
        Added value: +true
    • Changedpost_dataforseo_keywords_bing_kw_for_keywords_live8 fields changed
      • addedInput schema / properties / body / example
        Added value: +[
        +  {
        +    "keywords": [
        +      "average page rpm adsense",
        +      "adsense blank ads how long",
        +      "leads and prospects"
        +    ],
        +    "language_name": "English",
        +    "location_name": "United States"
        +  }
        +]
      • removedInput schema / properties / body / items / allOf
        Removed value: -[
        -  {
        -    "anyOf": [
        -      {
        -        "required": [
        -          "location_name"
        -        ]
        -      },
        -      {
        -        "required": [
        -          "location_code"
        -        ]
        -      },
        -      {
        -        "required": [
        -          "location_coordinate"
        -        ]
        -      }
        -    ]
        -  },
        -  {
        -    "anyOf": [
        -      {
        -        "required": [
        -          "language_name"
        -        ]
        -      },
        -      {
        -        "required": [
        -          "language_code"
        -        ]
        -      }
        -    ]
        -  }
        -]
      • addedInput schema / properties / body / items / anyOf
        Added value: +[
        +  {
        +    "example": [
        +      {
        +        "keywords": [
        +          "average page rpm adsense",
        +          "adsense blank ads how long",
        +          "leads and prospects"
        +        ],
        +        "language_name": "English",
        +        "location_name": "United States"
        +      }
        +    ],
        +    "properties": {
        +      "date_from": {
        +        "description": "<em>starting date of the time range</em><br>optional field<br>minimal value: 24 months from today's date;<br>if you don't specify this field, data will be provided for the last 12 months;<br>if <a href=\"/v3/keywords_data/bing/status/\" target=\"_blank\" rel=\"noopener noreferrer\">Status endpoint</a> returns <code>false</code> in the <code>actual_data</code> field, <code>date_from</code> can be set to the month before last and prior;<br>if <a href=\"/v3/keywords_data/bing/status/\" target=\"_blank\" rel=\"noopener noreferrer\">Status endpoint</a> returns <code>true</code> in the <code>actual_data</code> field, <code>date_from</code> can be set to the last month and prior;<br>date format: <code>\"yyyy-mm-dd\"</code><br>example:<br><code>\"2020-01-01\"</code><p><strong>Note:</strong> we do not recommend using a custom time range for the past year's dates",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "date_to": {
        +        "description": "<em>ending date of the time range</em><br>optional field<br>if you don't specify this field, data will be provided for the last 12 months;<br>minimum value: two years back from today’s date;<br>maximum value: one month from today's date;<br>date format: <code>\"yyyy-mm-dd\"</code><br>example:<br><code>\"2020-03-15\"</code><p><strong>Note:</strong> we do not recommend using a custom time range for the past year's dates",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "device": {
        +        "description": "<em>device type</em><br>optional field<br>specify this field if you want to get the data for a particular device type;<br>possible values: <code>all</code>, <code>mobile</code>, <code>desktop</code>, <code>tablet</code><br>default value: <code>all</code>",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "keywords": {
        +        "description": "<em>keywords</em><br><strong>required field</strong><br>you can specify <strong>the maximum of 200 keywords</strong> with each keyword containing no more than <strong>100 characters</strong>;<br>the specified keywords will be converted to lowercase, data will be provided in a separate array<p>learn more about rules and limitations of <code>keyword</code> and <code>keywords</code> fields in DataForSEO APIs in this <a href=\"https://dataforseo.com/help-center/rules-and-limitations-of-keyword-and-keywords-fields-in-dataforseo-apis\" rel=\"noopener noreferrer\" target=\"_blank\">Help Center article</a>",
        +        "items": {
        +          "type": "string"
        +        },
        +        "type": "array"
        +      },
        +      "keywords_negative": {
        +        "description": "<em>keywords negative array</em><br>optional field<br>These keywords will be ignored in the results array;<br>You can specify <strong>a maximum of 200 terms</strong> that you want to exclude from the results;<br>the specified keywords will be converted to lowercase format",
        +        "items": {
        +          "type": "string"
        +        },
        +        "type": [
        +          "array",
        +          "null"
        +        ]
        +      },
        +      "language_code": {
        +        "description": "<em>search engine language code</em><br><strong>required field if you don't specify</strong> <code>language_name</code><br>if you use this field, you don't need to specify <code>language_name</code><br>supported languages:<br><code class=\"long-string\">en</code>, <code>fr</code>, <code>de</code>",
        +        "type": "string"
        +      },
        +      "language_name": {
        +        "description": "<em>full name of search engine language</em><br><strong>required field if you don't specify</strong> <code>language_code</code><br>if you use this field, you don't need to specify <code>language_code</code><br>supported languages:<br><code>English</code>, <code>French</code>, <code>German</code>",
        +        "type": "string"
        +      },
        +      "location_code": {
        +        "description": "<em>search engine location code</em><br><strong>required field if you don't specify</strong> <code>location_name</code> or <code>location_coordinate</code><br><strong>if you use this field, you don't need to specify <code>location_name</code> or <code>location_coordinate</code></strong><br>you can receive the list of available locations of the search engines with their <code>location_code</code> by making a separate request to <code>https://api.dataforseo.com/v3/keywords_data/bing/locations</code><br>example:<br><code class=\"long-string\">2840</code>",
        +        "type": "integer"
        +      },
        +      "location_coordinate": {
        +        "description": "<em>GPS coordinates of a location</em><br><strong>required field if you don't specify</strong> <code>location_name</code> or <code>location_code</code><br><strong>if you use this field, you don't need to specify <code>location_name</code> or <code>location_code</code></strong><br><code>location_coordinate</code> parameter should be specified in the <em>\"latitude,longitude\"</em> format<br><strong>the data will be provided for the country the specified coordinates belong to</strong><br>example:<br><code class=\"long-string\">52.6178549,-155.352142</code>",
        +        "type": "string"
        +      },
        +      "location_name": {
        +        "description": "<em>full name of search engine location</em><br><strong>required field if you don't specify</strong> <code>location_code</code> or <code>location_coordinate</code><br><strong>if you use this field, you don't need to specify <code>location_code</code> or <code>location_coordinate</code></strong><br>you can receive the list of available locations of the search engine with their <code>location_name</code> by making a separate request to <code>https://api.dataforseo.com/v3/keywords_data/bing/locations</code><br>example:<br><code class=\"long-string\">London,England,United Kingdom</code>",
        +        "type": "string"
        +      },
        +      "search_partners": {
        +        "description": "<em>Bing search partners type</em><br>optional field<br>if you specify <code class=\"prettyprint\">true</code>, the results will be delivered for owned, operated, and syndicated networks across Bing, Yahoo, AOL and partner sites that host Bing, AOL, and Yahoo search.<br>default value: <code>false</code> - results are returned for Bing, AOL, and Yahoo search networks",
        +        "type": [
        +          "boolean",
        +          "null"
        +        ]
        +      },
        +      "sort_by": {
        +        "description": "<em>results sorting parameters</em><br>optional field<br>Use these parameters to sort the results by <code>search_volume</code>, <code>cpc</code>, <code>competition</code> or <code>relevance</code> in the descending order<br>default value: <code>relevance</code>",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "tag": {
        +        "description": "<em>user-defined task identifier</em><br>optional field<br><em>the character limit is 255</em><br>you can use this parameter to identify the task and match it with the result<br>you will find the specified <code>tag</code> value in the <code>data</code> object of the response",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      }
        +    },
        +    "type": "object"
        +  }
        +]
      • removedInput schema / properties / body / items / properties
        Removed value: -{
        -  "date_from": {
        -    "description": "starting date of the time range optional field minimal value: 24 months from today's date; if you don't specify this field, data will be provided for the last 12 months; if Status endpoint returns false in the actual_data field, date_from can be set to the month before last and prior; if Status endpoint returns true in the actual_data field, date_from can be set to the last month and prior; date format: \"yyyy-mm-dd\" example: \"2020-01-01\" Note: we do not recommend using a custom time range for the past year's dates",
        -    "type": "string"
        -  },
        -  "date_to": {
        -    "description": "ending date of the time range optional field if you don’t specify this field, data will be provided for the last 12 months; minimum value: two years back from today’s date; maximum value: one month from today’s date; date format: \"yyyy-mm-dd\" example: \"2020-03-15\" Note: we do not recommend using a custom time range for the past year’s dates",
        -    "type": "string"
        -  },
        -  "device": {
        -    "description": "device type optional field specify this field if you want to get the data for a particular device type; possible values: all, mobile, desktop, tablet default value: all",
        -    "type": "string"
        -  },
        -  "keywords": {
        -    "description": "keywords required field you can specify the maximum of 200 keywords with each keyword containing no more than 100 characters; the specified keywords will be converted to lowercase, data will be provided in a separate array learn more about rules and limitations of keyword and keywords fields in DataForSEO APIs in this Help Center article",
        -    "items": {
        -      "type": "string"
        -    },
        -    "type": "array"
        -  },
        -  "keywords_negative": {
        -    "description": "keywords negative array optional field These keywords will be ignored in the results array; You can specify a maximum of 200 terms that you want to exclude from the results; the specified keywords will be converted to lowercase format",
        -    "items": {
        -      "type": "string"
        -    },
        -    "type": "array"
        -  },
        -  "language_code": {
        -    "description": "search engine language code required field if you don’t specify language_name if you use this field, you don’t need to specify language_name supported languages: en, fr, de",
        -    "type": "string"
        -  },
        -  "language_name": {
        -    "description": "full name of search engine language required field if you don’t specify language_code if you use this field, you don’t need to specify language_code supported languages: English, French, German",
        -    "type": "string"
        -  },
        -  "location_code": {
        -    "description": "search engine location code required field if you don’t specify location_name or location_coordinate if you use this field, you don’t need to specify location_name or location_coordinate you can receive the list of available locations of the search engines with their location_code by making a separate request to https://api.dataforseo.com/v3/keywords_data/bing/locations example: 2840",
        -    "type": "integer"
        -  },
        -  "location_coordinate": {
        -    "description": "GPS coordinates of a location required field if you don’t specify location_name or location_code if you use this field, you don’t need to specify location_name or location_code location_coordinate parameter should be specified in the “latitude,longitude” format the data will be provided for the country the specified coordinates belong to example: 52.6178549,-155.352142",
        -    "type": "string"
        -  },
        -  "location_name": {
        -    "description": "full name of search engine location required field if you don’t specify location_code or location_coordinate if you use this field, you don’t need to specify location_code or location_coordinate you can receive the list of available locations of the search engine with their location_name by making a separate request to https://api.dataforseo.com/v3/keywords_data/bing/locations example: London,England,United Kingdom",
        -    "type": "string"
        -  },
        -  "search_partners": {
        -    "description": "Bing search partners type optional field if you specify true, the results will be delivered for owned, operated, and syndicated networks across Bing, Yahoo, AOL and partner sites that host Bing, AOL, and Yahoo search. default value: false – results are returned for Bing, AOL, and Yahoo search networks",
        -    "type": "boolean"
        -  },
        -  "sort_by": {
        -    "description": "results sorting parameters optional field Use these parameters to sort the results by search_volume, cpc, competition or relevance in the descending order default value: relevance",
        -    "type": "string"
        -  },
        -  "tag": {
        -    "description": "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",
        -    "type": "string"
        -  }
        -}
      • removedInput schema / properties / body / items / required
        Removed value: -[
        -  "keywords"
        -]
      • changedInput schema / properties / body / items / type
        Previous value: -"object"New value: +[
        +  "object",
        +  "null"
        +]
      • changedInput schema / required
        Previous value: -[
        -  "body"
        -]New value: +[]
      • addedOutput schema / x-fastmcp-wrap-result
        Added value: +true
    • Changedpost_dataforseo_keywords_bing_kw_for_site_live8 fields changed
      • addedInput schema / properties / body / example
        Added value: +[
        +  {
        +    "language_code": "en",
        +    "location_code": 2840,
        +    "target": "dataforseo.com"
        +  }
        +]
      • removedInput schema / properties / body / items / allOf
        Removed value: -[
        -  {
        -    "anyOf": [
        -      {
        -        "required": [
        -          "location_name"
        -        ]
        -      },
        -      {
        -        "required": [
        -          "location_code"
        -        ]
        -      },
        -      {
        -        "required": [
        -          "location_coordinate"
        -        ]
        -      }
        -    ]
        -  },
        -  {
        -    "anyOf": [
        -      {
        -        "required": [
        -          "language_name"
        -        ]
        -      },
        -      {
        -        "required": [
        -          "language_code"
        -        ]
        -      }
        -    ]
        -  }
        -]
      • addedInput schema / properties / body / items / anyOf
        Added value: +[
        +  {
        +    "example": [
        +      {
        +        "language_code": "en",
        +        "location_code": 2840,
        +        "target": "dataforseo.com"
        +      }
        +    ],
        +    "properties": {
        +      "date_from": {
        +        "description": "<em>starting date of the time range</em><br>optional field<br>minimal value: 24 months from today's date;<br>if you don't specify this field, data will be provided for the last 12 months;<br>if <a href=\"/v3/keywords_data/bing/status/\" target=\"_blank\" rel=\"noopener noreferrer\">Status endpoint</a> returns <code>false</code> in the <code>actual_data</code> field, <code>date_from</code> can be set to the month before last and prior;<br>if <a href=\"/v3/keywords_data/bing/status/\" target=\"_blank\" rel=\"noopener noreferrer\">Status endpoint</a> returns <code>true</code> in the <code>actual_data</code> field, <code>date_from</code> can be set to the last month and prior;<br>date format: <code>\"yyyy-mm-dd\"</code><br>example:<br><code>\"2020-01-01\"</code><p><strong>Note:</strong> we do not recommend using a custom time range for the past year's dates",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "date_to": {
        +        "description": "<em>ending date of the time range</em><br>optional field<br>if you don't specify this field, data will be provided for the last 12 months;<br>minimum value: two years back from today’s date;<br>maximum value: one month from today's date;<br><strong>note:</strong> we do not recommend using a custom time range for the past year's dates;<br>date format: <code>\"yyyy-mm-dd\"</code><br>example:<br><code>\"2020-03-15\"</code><p><strong>Note:</strong> we do not recommend using a custom time range for the past year's dates",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "device": {
        +        "description": "<em>device type</em><br>optional field<br>specify this field if you want to get the data for a particular device typepossible values: <code>all</code>, <code>mobile</code>, <code>desktop</code>, <code>tablet</code><br>default value: <code>all</code>",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "keywords_negative": {
        +        "description": "<em>keywords negative array</em><br>optional field<br>These keywords will be ignored in the results array;<br>You can specify <strong>a maximum of 200 terms</strong> that you want to exclude from the results;<br>the specified keywords will be converted to lowercase format",
        +        "items": {
        +          "type": "string"
        +        },
        +        "type": [
        +          "array",
        +          "null"
        +        ]
        +      },
        +      "language_code": {
        +        "description": "<em>search engine language code</em><br><strong>required field if you don't specify</strong> <code>language_name</code><br>if you use this field, you don't need to specify <code>language_name</code><br>supported languages:<br><code class=\"long-string\">en</code>, <code>fr</code>, <code>de</code>",
        +        "type": "string"
        +      },
        +      "language_name": {
        +        "description": "<em>full name of search engine language</em><br><strong>required field if you don't specify</strong> <code>language_code</code><br>if you use this field, you don't need to specify <code>language_code</code><br>supported languages:<br><code>English</code>, <code>French</code>, <code>German</code>",
        +        "type": "string"
        +      },
        +      "location_code": {
        +        "description": "<em>search engine location code</em><br><strong>required field if you don't specify</strong> <code>location_name</code> or <code>location_coordinate</code><br><strong>if you use this field, you don't need to specify <code>location_name</code> or <code>location_coordinate</code></strong><br>you can receive the list of available locations of the search engines with their <code>location_code</code> by making a separate request to <code>https://api.dataforseo.com/v3/keywords_data/bing/locations</code><br>example:<br><code class=\"long-string\">2840</code>",
        +        "type": "integer"
        +      },
        +      "location_coordinate": {
        +        "description": "<em>GPS coordinates of a location</em><br><strong>required field if you don't specify</strong> <code>location_name</code> or <code>location_code</code><br><strong>if you use this field, you don't need to specify <code>location_name</code> or <code>location_code</code></strong><br><code>location_coordinate</code> parameter should be specified in the <em>\"latitude,longitude\"</em> format<br><strong>the data will be provided for the country the specified coordinates belong to</strong><br>example:<br><code class=\"long-string\">52.6178549,-155.352142</code>",
        +        "type": "string"
        +      },
        +      "location_name": {
        +        "description": "<em>full name of search engine location</em><br><strong>required field if you don't specify</strong> <code>location_code</code> or <code>location_coordinate</code><br><strong>if you use this field, you don't need to specify <code>location_code</code> or <code>location_coordinate</code></strong><br>you can receive the list of available locations of the search engine with their <code>location_name</code> by making a separate request to <code>https://api.dataforseo.com/v3/keywords_data/bing/locations</code><br>example:<br><code class=\"long-string\">London,England,United Kingdom</code>",
        +        "type": "string"
        +      },
        +      "search_partners": {
        +        "description": "<em>Bing search partners type</em><br>optional field<br>if you specify <code class=\"prettyprint\">true</code>, the results will be delivered for owned, operated, and syndicated networks across Bing, Yahoo, AOL and partner sites that host Bing, AOL, and Yahoo search.<br>default value: <code>false</code> - results are returned for Bing, AOL, and Yahoo search networks",
        +        "type": [
        +          "boolean",
        +          "null"
        +        ]
        +      },
        +      "sort_by": {
        +        "description": "<em>results sorting parameters</em><br>optional field<br>Use these parameters to sort the results by <code>search_volume</code>, <code>cpc</code>, <code>competition</code> or <code>relevance</code> in the descending order<br>default value: <code>relevance</code>",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "tag": {
        +        "description": "<em>user-defined task identifier</em><br>optional field<br><em>the character limit is 255</em><br>you can use this parameter to identify the task and match it with the result<br>you will find the specified <code>tag</code> value in the <code>data</code> object of the response",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "target": {
        +        "description": "<em>domain or URL</em><br><strong>required field</strong><br>the domain name or URL of the target website",
        +        "type": "string"
        +      }
        +    },
        +    "type": "object"
        +  }
        +]
      • removedInput schema / properties / body / items / properties
        Removed value: -{
        -  "date_from": {
        -    "description": "starting date of the time range optional field minimal value: 24 months from today's date; if you don't specify this field, data will be provided for the last 12 months; if Status endpoint returns false in the actual_data field, date_from can be set to the month before last and prior; if Status endpoint returns true in the actual_data field, date_from can be set to the last month and prior; date format: \"yyyy-mm-dd\" example: \"2020-01-01\" Note: we do not recommend using a custom time range for the past year's dates",
        -    "type": "string"
        -  },
        -  "date_to": {
        -    "description": "ending date of the time range optional field if you don’t specify this field, data will be provided for the last 12 months; minimum value: two years back from today’s date; maximum value: one month from today’s date; note: we do not recommend using a custom time range for the past year’s dates; date format: \"yyyy-mm-dd\" example: \"2020-03-15\" Note: we do not recommend using a custom time range for the past year’s dates",
        -    "type": "string"
        -  },
        -  "device": {
        -    "description": "device type optional field specify this field if you want to get the data for a particular device typepossible values: all, mobile, desktop, tablet default value: all",
        -    "type": "string"
        -  },
        -  "keywords_negative": {
        -    "description": "keywords negative array optional field These keywords will be ignored in the results array; You can specify a maximum of 200 terms that you want to exclude from the results; the specified keywords will be converted to lowercase format",
        -    "items": {
        -      "type": "string"
        -    },
        -    "type": "array"
        -  },
        -  "language_code": {
        -    "description": "search engine language code required field if you don’t specify language_name if you use this field, you don’t need to specify language_name supported languages: en, fr, de",
        -    "type": "string"
        -  },
        -  "language_name": {
        -    "description": "full name of search engine language required field if you don’t specify language_code if you use this field, you don’t need to specify language_code supported languages: English, French, German",
        -    "type": "string"
        -  },
        -  "location_code": {
        -    "description": "search engine location code required field if you don’t specify location_name or location_coordinate if you use this field, you don’t need to specify location_name or location_coordinate you can receive the list of available locations of the search engines with their location_code by making a separate request to https://api.dataforseo.com/v3/keywords_data/bing/locations example: 2840",
        -    "type": "integer"
        -  },
        -  "location_coordinate": {
        -    "description": "GPS coordinates of a location required field if you don’t specify location_name or location_code if you use this field, you don’t need to specify location_name or location_code location_coordinate parameter should be specified in the “latitude,longitude” format the data will be provided for the country the specified coordinates belong to example: 52.6178549,-155.352142",
        -    "type": "string"
        -  },
        -  "location_name": {
        -    "description": "full name of search engine location required field if you don’t specify location_code or location_coordinate if you use this field, you don’t need to specify location_code or location_coordinate you can receive the list of available locations of the search engine with their location_name by making a separate request to https://api.dataforseo.com/v3/keywords_data/bing/locations example: London,England,United Kingdom",
        -    "type": "string"
        -  },
        -  "search_partners": {
        -    "description": "Bing search partners type optional field if you specify true, the results will be delivered for owned, operated, and syndicated networks across Bing, Yahoo, AOL and partner sites that host Bing, AOL, and Yahoo search. default value: false – results are returned for Bing, AOL, and Yahoo search networks",
        -    "type": "boolean"
        -  },
        -  "sort_by": {
        -    "description": "results sorting parameters optional field Use these parameters to sort the results by search_volume, cpc, competition or relevance in the descending order default value: relevance",
        -    "type": "string"
        -  },
        -  "tag": {
        -    "description": "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",
        -    "type": "string"
        -  },
        -  "target": {
        -    "description": "domain or URL required field the domain name or URL of the target website",
        -    "type": "string"
        -  }
        -}
      • removedInput schema / properties / body / items / required
        Removed value: -[
        -  "target"
        -]
      • changedInput schema / properties / body / items / type
        Previous value: -"object"New value: +[
        +  "object",
        +  "null"
        +]
      • changedInput schema / required
        Previous value: -[
        -  "body"
        -]New value: +[]
      • addedOutput schema / x-fastmcp-wrap-result
        Added value: +true
    • Changedpost_dataforseo_keywords_bing_kw_performance_live8 fields changed
      • addedInput schema / properties / body / example
        Added value: +[
        +  {
        +    "keywords": [
        +      "dataforseo",
        +      "seo",
        +      "ranking"
        +    ],
        +    "language_code": "en",
        +    "location_code": 2840
        +  }
        +]
      • removedInput schema / properties / body / items / allOf
        Removed value: -[
        -  {
        -    "anyOf": [
        -      {
        -        "required": [
        -          "location_name"
        -        ]
        -      },
        -      {
        -        "required": [
        -          "location_code"
        -        ]
        -      },
        -      {
        -        "required": [
        -          "location_coordinate"
        -        ]
        -      }
        -    ]
        -  },
        -  {
        -    "anyOf": [
        -      {
        -        "required": [
        -          "language_name"
        -        ]
        -      },
        -      {
        -        "required": [
        -          "language_code"
        -        ]
        -      }
        -    ]
        -  }
        -]
      • addedInput schema / properties / body / items / anyOf
        Added value: +[
        +  {
        +    "example": [
        +      {
        +        "keywords": [
        +          "dataforseo",
        +          "seo",
        +          "ranking"
        +        ],
        +        "language_code": "en",
        +        "location_code": 2840
        +      }
        +    ],
        +    "properties": {
        +      "device": {
        +        "description": "<em>device type</em><br>optional field<br>specify this field if you want to get the data for a particular device typepossible values: <code>desktop</code>, <code>mobile</code>, <code>tablet</code>, <code>all</code><br>default value: <code>all</code>",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "keywords": {
        +        "description": "<em>keywords</em><br><strong>required field</strong><br>The maximum number of keywords you can specify: 1000<br>The maximum number of characters for each keyword: 80<br>The maximum number of words for each keyword phrase: 10<br>the specified keywords will be converted to lowercase, data will be provided in a separate array<p>learn more about rules and limitations of <code>keyword</code> and <code>keywords</code> fields in DataForSEO APIs in this <a href=\"https://dataforseo.com/help-center/rules-and-limitations-of-keyword-and-keywords-fields-in-dataforseo-apis\" rel=\"noopener noreferrer\" target=\"_blank\">Help Center article</a>",
        +        "items": {
        +          "type": "string"
        +        },
        +        "type": "array"
        +      },
        +      "language_code": {
        +        "description": "<em>search engine language code</em><br><strong>required field if you don't specify</strong> <code>language_name</code><br>you can receive the list of available locations and languages by making a separate request to <code>https://api.dataforseo.com/v3/keywords_data/bing/keyword_performance/locations_and_languages</code><br>example:<br><code>\"en\"</code>",
        +        "type": "string"
        +      },
        +      "language_name": {
        +        "description": "<em>full name of search engine language</em><br><strong>required field if you don't specify</strong> <code>language_code</code><br><strong>if you use this field, you don't need to specify <code>language_code</code></strong><br>you can receive the list of available locations and languages by making a separate request to <code>https://api.dataforseo.com/v3/keywords_data/bing/keyword_performance/locations_and_languages</code><br>example:<br><code class=\"long-string\">English</code>",
        +        "type": "string"
        +      },
        +      "location_code": {
        +        "description": "<em>search engine location code</em><br><strong>required field if you don't specify</strong> <code>location_name</code> or <code>location_coordinate</code><br><strong>if you use this field, you don't need to specify <code>location_name</code> or <code>location_coordinate</code></strong><br>you can receive the list of available locations and languages by making a separate request to <code>https://api.dataforseo.com/v3/keywords_data/bing/keyword_performance/locations_and_languages</code><br>example:<br><code>2840</code>",
        +        "type": "integer"
        +      },
        +      "location_coordinate": {
        +        "description": "<em>GPS coordinates of a location</em><br><strong>required field if you don't specify</strong> <code>location_name</code> or <code>location_code</code><br><strong>if you use this field, you don't need to specify <code>location_name</code> or <code>location_code</code></strong><br><code>location_coordinate</code> parameter should be specified in the <em>\"latitude,longitude\"</em> format<br><strong>the data will be provided for the country the specified coordinates belong to</strong><br>example:<br><code class=\"long-string\">52.6178549,-155.352142</code>",
        +        "type": "string"
        +      },
        +      "location_name": {
        +        "description": "<em>full name of search engine location</em><br><strong>required field if you don't specify</strong> <code>location_code</code> or <code>location_coordinate</code><br><strong>if you use this field, you don't need to specify <code>location_code</code> or <code>location_coordinate</code></strong><br>you can receive the list of available locations and languages by making a separate request to <code>https://api.dataforseo.com/v3/keywords_data/bing/keyword_performance/locations_and_languages</code><br>example:<br><code>\"United States\"</code>",
        +        "type": "string"
        +      },
        +      "match": {
        +        "description": "<em>keywords match type</em><br>optional field<br>can take the following values:<br><code>aggregate</code> returns data across all match types;<br><code>broad</code> returns data for all user queries containing the specified keyword with varying word order;<br><code>phrase</code> returns data for all user queries containing the specified keyword with identical word order;<br><code>exact</code> returns data for user query that matches the specified keyword;<strong>Note:</strong> the <code>aggregate</code> match type is applied by default",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "tag": {
        +        "description": "<em>user-defined task identifier</em><br>optional field<br><em>the character limit is 255</em><br>you can use this parameter to identify the task and match it with the result<br>you will find the specified <code>tag</code> value in the <code>data</code> object of the response",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      }
        +    },
        +    "type": "object"
        +  }
        +]
      • removedInput schema / properties / body / items / properties
        Removed value: -{
        -  "device": {
        -    "description": "device type optional field specify this field if you want to get the data for a particular device typepossible values: desktop, mobile, tablet, all default value: all",
        -    "type": "string"
        -  },
        -  "keywords": {
        -    "description": "keywords required field The maximum number of keywords you can specify: 1000 The maximum number of characters for each keyword: 80 The maximum number of words for each keyword phrase: 10 the specified keywords will be converted to lowercase, data will be provided in a separate array learn more about rules and limitations of keyword and keywords fields in DataForSEO APIs in this Help Center article",
        -    "items": {
        -      "type": "string"
        -    },
        -    "type": "array"
        -  },
        -  "language_code": {
        -    "description": "search engine language code required field if you don’t specify language_name you can receive the list of available locations and languages by making a separate request to https://api.dataforseo.com/v3/keywords_data/bing/keyword_performance/locations_and_languages example: \"en\"",
        -    "type": "string"
        -  },
        -  "language_name": {
        -    "description": "full name of search engine language required field if you don’t specify language_code if you use this field, you don’t need to specify language_code you can receive the list of available locations and languages by making a separate request to https://api.dataforseo.com/v3/keywords_data/bing/keyword_performance/locations_and_languages example: English",
        -    "type": "string"
        -  },
        -  "location_code": {
        -    "description": "search engine location code required field if you don’t specify location_name or location_coordinate if you use this field, you don’t need to specify location_name or location_coordinate you can receive the list of available locations and languages by making a separate request to https://api.dataforseo.com/v3/keywords_data/bing/keyword_performance/locations_and_languages example: 2840",
        -    "type": "integer"
        -  },
        -  "location_coordinate": {
        -    "description": "GPS coordinates of a location required field if you don’t specify location_name or location_code if you use this field, you don’t need to specify location_name or location_code location_coordinate parameter should be specified in the “latitude,longitude” format the data will be provided for the country the specified coordinates belong to example: 52.6178549,-155.352142",
        -    "type": "string"
        -  },
        -  "location_name": {
        -    "description": "full name of search engine location required field if you don’t specify location_code or location_coordinate if you use this field, you don’t need to specify location_code or location_coordinate you can receive the list of available locations and languages by making a separate request to https://api.dataforseo.com/v3/keywords_data/bing/keyword_performance/locations_and_languages example: \"United States\"",
        -    "type": "string"
        -  },
        -  "match": {
        -    "description": "keywords match type optional field can take the following values: aggregate returns data across all match types; broad returns data for all user queries containing the specified keyword with varying word order; phrase returns data for all user queries containing the specified keyword with identical word order; exact returns data for user query that matches the specified keyword;Note: the aggregate match type is applied by default",
        -    "type": "string"
        -  },
        -  "tag": {
        -    "description": "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",
        -    "type": "string"
        -  }
        -}
      • removedInput schema / properties / body / items / required
        Removed value: -[
        -  "keywords"
        -]
      • changedInput schema / properties / body / items / type
        Previous value: -"object"New value: +[
        +  "object",
        +  "null"
        +]
      • changedInput schema / required
        Previous value: -[
        -  "body"
        -]New value: +[]
      • addedOutput schema / x-fastmcp-wrap-result
        Added value: +true
    • Changedpost_dataforseo_keywords_bing_search_volume_live8 fields changed
      • addedInput schema / properties / body / example
        Added value: +[
        +  {
        +    "keywords": [
        +      "tom and jerry",
        +      "silicon valley",
        +      "spider man"
        +    ],
        +    "language_code": "en",
        +    "location_name": "United States"
        +  }
        +]
      • removedInput schema / properties / body / items / allOf
        Removed value: -[
        -  {
        -    "anyOf": [
        -      {
        -        "required": [
        -          "location_name"
        -        ]
        -      },
        -      {
        -        "required": [
        -          "location_code"
        -        ]
        -      },
        -      {
        -        "required": [
        -          "location_coordinate"
        -        ]
        -      }
        -    ]
        -  },
        -  {
        -    "anyOf": [
        -      {
        -        "required": [
        -          "language_name"
        -        ]
        -      },
        -      {
        -        "required": [
        -          "language_code"
        -        ]
        -      }
        -    ]
        -  }
        -]
      • addedInput schema / properties / body / items / anyOf
        Added value: +[
        +  {
        +    "example": [
        +      {
        +        "keywords": [
        +          "tom and jerry",
        +          "silicon valley",
        +          "spider man"
        +        ],
        +        "language_code": "en",
        +        "location_name": "United States"
        +      }
        +    ],
        +    "properties": {
        +      "date_from": {
        +        "description": "<em>starting date of the time range</em><br>optional field<br>minimal value: 24 months from today's date;<br>if you don't specify this field, data will be provided for the last 12 months;<br>minimum value: two years back from today’s date;<br>if <a href=\"/v3/keywords_data/bing/status/\" target=\"_blank\" rel=\"noopener noreferrer\">Status endpoint</a> returns <code>false</code> in the <code>actual_data</code> field, <code>date_from</code> can be set to the month before last and prior;<br>if <a href=\"/v3/keywords_data/bing/status/\" target=\"_blank\" rel=\"noopener noreferrer\">Status endpoint</a> returns <code>true</code> in the <code>actual_data</code> field, <code>date_from</code> can be set to the last month and prior;<br>date format: <code>\"yyyy-mm-dd\"</code><br>example:<br><code>\"2020-01-01\"</code><strong>Note:</strong> we do not recommend using a custom time range for the past year's dates",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "date_to": {
        +        "description": "<em>ending date of the time range</em><br>optional field<br>if you don't specify this field, data will be provided for the last 12 months;<br>minimum value: two years back from today’s date;<br>maximum value: one month from today's date;<br><strong>note:</strong> we do not recommend using a custom time range for the past year's dates;<br>date format: <code>\"yyyy-mm-dd\"</code><br>example:<br><code>\"2020-03-15\"</code><strong>Note:</strong> we do not recommend using a custom time range for the past year's dates",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "device": {
        +        "description": "<em>device type</em><br>optional field<br>specify this field if you want to get the data for a particular device type;<br>possible values: <code>all</code>, <code>mobile</code>, <code>desktop</code>, <code>tablet</code><br>default value: <code>all</code>",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "keywords": {
        +        "description": "<em>keywords</em><br><strong>required field</strong><br>The maximum number of keywords you can specify: 1000<br>The maximum number of characters for each keyword: 100<br>the specified keywords will be converted to lowercase, data will be provided in a separate arraylearn more about rules and limitations of <code>keyword</code> and <code>keywords</code> fields in DataForSEO APIs in this <a href=\"https://dataforseo.com/help-center/rules-and-limitations-of-keyword-and-keywords-fields-in-dataforseo-apis\" target=\"_blank\" rel=\"noopener noreferrer\">Help Center article</a>",
        +        "items": {
        +          "type": "string"
        +        },
        +        "type": "array"
        +      },
        +      "language_code": {
        +        "description": "<em>search engine language code</em><br><strong>required field if you don't specify</strong> <code>language_name</code><br>if you use this field, you don't need to specify <code>language_name</code><br>supported languages:<br><code class=\"long-string\">en</code>, <code>fr</code>, <code>de</code>",
        +        "type": "string"
        +      },
        +      "language_name": {
        +        "description": "<em>full name of search engine language</em><br><strong>required field if you don't specify</strong> <code>language_code</code><br>if you use this field, you don't need to specify <code>language_code</code><br>supported languages:<br><code>English</code>, <code>French</code>, <code>German</code>",
        +        "type": "string"
        +      },
        +      "location_code": {
        +        "description": "<em>search engine location code</em><br><strong>required field if you don't specify</strong> <code>location_name</code> or <code>location_coordinate</code><br><strong>if you use this field, you don't need to specify <code>location_name</code> or <code>location_coordinate</code></strong><br>you can receive the list of available locations of the search engines with their <code>location_code</code> by making a separate request to <code>https://api.dataforseo.com/v3/keywords_data/bing/locations</code><br>example:<br><code class=\"long-string\">2840</code>",
        +        "type": "integer"
        +      },
        +      "location_coordinate": {
        +        "description": "<em>GPS coordinates of a location</em><br><strong>required field if you don't specify</strong> <code>location_name</code> or <code>location_code</code><br><strong>if you use this field, you don't need to specify <code>location_name</code> or <code>location_code</code></strong><br><code>location_coordinate</code> parameter should be specified in the <em>\"latitude,longitude\"</em> format<br><strong>the data will be provided for the country the specified coordinates belong to</strong><br>example:<br><code class=\"long-string\">52.6178549,-155.352142</code>",
        +        "type": "string"
        +      },
        +      "location_name": {
        +        "description": "<em>full name of search engine location</em><br><strong>required field if you don't specify</strong> <code>location_code</code> or <code>location_coordinate</code><br><strong>if you use this field, you don't need to specify <code>location_code</code> or <code>location_coordinate</code></strong><br>you can receive the list of available locations of the search engine with their <code>location_name</code> by making a separate request to <code>https://api.dataforseo.com/v3/keywords_data/bing/locations</code><br>example:<br><code class=\"long-string\">London,England,United Kingdom</code>",
        +        "type": "string"
        +      },
        +      "search_partners": {
        +        "description": "<em>Bing search partners type</em><br>optional field<br>if you specify <code class=\"prettyprint\">true</code>, the results will be delivered for owned, operated, and syndicated networks across Bing, Yahoo, AOL and partner sites that host Bing, AOL, and Yahoo search.<br>default value: <code>false</code> - results are returned for Bing, AOL, and Yahoo search networks",
        +        "type": [
        +          "boolean",
        +          "null"
        +        ]
        +      },
        +      "sort_by": {
        +        "description": "<em>results sorting parameters</em><br>optional field<br>Use these parameters to sort the results by <code>search_volume</code>, <code>cpc</code>, <code>competition</code> or <code>relevance</code> in the descending order<br>default value: <code>relevance</code>",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "tag": {
        +        "description": "<em>user-defined task identifier</em><br>optional field<br><em>the character limit is 255</em><br>you can use this parameter to identify the task and match it with the result<br>you will find the specified <code>tag</code> value in the <code>data</code> object of the response",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      }
        +    },
        +    "type": "object"
        +  }
        +]
      • removedInput schema / properties / body / items / properties
        Removed value: -{
        -  "date_from": {
        -    "description": "starting date of the time range optional field minimal value: 24 months from today's date; if you don't specify this field, data will be provided for the last 12 months; minimum value: two years back from today’s date; if Status endpoint returns false in the actual_data field, date_from can be set to the month before last and prior; if Status endpoint returns true in the actual_data field, date_from can be set to the last month and prior; date format: \"yyyy-mm-dd\" example: \"2020-01-01\"Note: we do not recommend using a custom time range for the past year's dates",
        -    "type": "string"
        -  },
        -  "date_to": {
        -    "description": "ending date of the time range optional field if you don’t specify this field, data will be provided for the last 12 months; minimum value: two years back from today’s date; maximum value: one month from today’s date; note: we do not recommend using a custom time range for the past year’s dates; date format: \"yyyy-mm-dd\" example: \"2020-03-15\" Note: we do not recommend using a custom time range for the past year’s dates",
        -    "type": "string"
        -  },
        -  "device": {
        -    "description": "device type optional field specify this field if you want to get the data for a particular device type; possible values: all, mobile, desktop, tablet default value: all",
        -    "type": "string"
        -  },
        -  "keywords": {
        -    "description": "keywords required field The maximum number of keywords you can specify: 1000 The maximum number of characters for each keyword: 100 the specified keywords will be converted to lowercase, data will be provided in a separate array learn more about rules and limitations of keyword and keywords fields in DataForSEO APIs in this Help Center article",
        -    "items": {
        -      "type": "string"
        -    },
        -    "type": "array"
        -  },
        -  "language_code": {
        -    "description": "search engine language code required field if you don’t specify language_name if you use this field, you don’t need to specify language_name supported languages: en, fr, de",
        -    "type": "string"
        -  },
        -  "language_name": {
        -    "description": "full name of search engine language required field if you don’t specify language_code if you use this field, you don’t need to specify language_code supported languages: English, French, German",
        -    "type": "string"
        -  },
        -  "location_code": {
        -    "description": "search engine location code required field if you don’t specify location_name or location_coordinate if you use this field, you don’t need to specify location_name or location_coordinate you can receive the list of available locations of the search engines with their location_code by making a separate request to https://api.dataforseo.com/v3/keywords_data/bing/locations example: 2840",
        -    "type": "integer"
        -  },
        -  "location_coordinate": {
        -    "description": "GPS coordinates of a location required field if you don’t specify location_name or location_code if you use this field, you don’t need to specify location_name or location_code location_coordinate parameter should be specified in the “latitude,longitude” format the data will be provided for the country the specified coordinates belong to example: 52.6178549,-155.352142",
        -    "type": "string"
        -  },
        -  "location_name": {
        -    "description": "full name of search engine location required field if you don’t specify location_code or location_coordinate if you use this field, you don’t need to specify location_code or location_coordinate you can receive the list of available locations of the search engine with their location_name by making a separate request to https://api.dataforseo.com/v3/keywords_data/bing/locations example: London,England,United Kingdom",
        -    "type": "string"
        -  },
        -  "search_partners": {
        -    "description": "Bing search partners type optional field if you specify true, the results will be delivered for owned, operated, and syndicated networks across Bing, Yahoo, AOL and partner sites that host Bing, AOL, and Yahoo search. default value: false – results are returned for Bing, AOL, and Yahoo search networks",
        -    "type": "boolean"
        -  },
        -  "sort_by": {
        -    "description": "results sorting parameters optional field Use these parameters to sort the results by search_volume, cpc, competition or relevance in the descending order default value: relevance",
        -    "type": "string"
        -  },
        -  "tag": {
        -    "description": "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",
        -    "type": "string"
        -  }
        -}
      • removedInput schema / properties / body / items / required
        Removed value: -[
        -  "keywords"
        -]
      • changedInput schema / properties / body / items / type
        Previous value: -"object"New value: +[
        +  "object",
        +  "null"
        +]
      • changedInput schema / required
        Previous value: -[
        -  "body"
        -]New value: +[]
      • addedOutput schema / x-fastmcp-wrap-result
        Added value: +true
    • Changedpost_dataforseo_keywords_clickstream_bulk_volume_live8 fields changed
      • addedInput schema / properties / body / example
        Added value: +[
        +  {
        +    "keywords": [
        +      "you tube",
        +      "youtube",
        +      "youtub"
        +    ],
        +    "location_code": 2840,
        +    "tag": "test-tag"
        +  }
        +]
      • removedInput schema / properties / body / items / allOf
        Removed value: -[
        -  {
        -    "anyOf": [
        -      {
        -        "required": [
        -          "location_name"
        -        ]
        -      },
        -      {
        -        "required": [
        -          "location_code"
        -        ]
        -      }
        -    ]
        -  }
        -]
      • addedInput schema / properties / body / items / anyOf
        Added value: +[
        +  {
        +    "example": [
        +      {
        +        "keywords": [
        +          "you tube",
        +          "youtube",
        +          "youtub"
        +        ],
        +        "location_code": 2840,
        +        "tag": "test-tag"
        +      }
        +    ],
        +    "properties": {
        +      "keywords": {
        +        "description": "<em>target keywords</em><br><strong>required field</strong><br>UTF-8 encoding<br>maximum number of keywords you can specify in this array: 1000;<br>each keyword should be at least 3 characters long;<br>the keywords will be converted to lowercase format;<br><strong>Note:</strong> certain symbols and characters (e.g., UTF symbols, emojis) are not allowed<br>to learn more about which symbols and characters can be used, please refer to <a href=\"https://dataforseo.com/help-center/using-symbols-in-keywords-when-setting-a-google-ads-task\" target=\"_blank\" rel=\"noopener noreferrer\">this article</a><p>learn more about rules and limitations of <code>keyword</code> and <code>keywords</code> fields in DataForSEO APIs in this <a href=\"https://dataforseo.com/help-center/rules-and-limitations-of-keyword-and-keywords-fields-in-dataforseo-apis\" rel=\"noopener noreferrer\" target=\"_blank\">Help Center article</a>",
        +        "items": {
        +          "type": "string"
        +        },
        +        "type": "array"
        +      },
        +      "location_code": {
        +        "description": "<em>location code</em><br><strong>required field if you don't specify</strong> <code>location_name</code><br><strong>Note:</strong> it is required to specify either <code>location_name</code> or <code>location_code</code><br>you can receive the list of available locations with their <code>location_code</code> by making a separate request to the <br><code>https://api.dataforseo.com/v3/keywords_data/clickstream_data/locations_and_languages</code><br>example:<br><code class=\"long-string\">2840</code>",
        +        "type": "integer"
        +      },
        +      "location_name": {
        +        "description": "<em>full name of the location</em><br><strong>required field if you don't specify</strong> <code>location_code</code><br><strong>Note:</strong> it is required to specify either <code>location_name</code> or <code>location_code</code><br>you can receive the list of available locations with their <code>location_name</code> by making a separate request to the <br><code>https://api.dataforseo.com/v3/keywords_data/clickstream_data/locations_and_languages</code><br>example:<br><code class=\"long-string\">United Kingdom</code>",
        +        "type": "string"
        +      },
        +      "tag": {
        +        "description": "<em>user-defined task identifier</em><br>optional field<br><em>the character limit is 255</em><br>you can use this parameter to identify the task and match it with the result<br>you will find the specified <code>tag</code> value in the <code>data</code> object of the response",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      }
        +    },
        +    "type": "object"
        +  }
        +]
      • removedInput schema / properties / body / items / properties
        Removed value: -{
        -  "keywords": {
        -    "description": "target keywords required field UTF-8 encoding maximum number of keywords you can specify in this array: 1000; each keyword should be at least 3 characters long; the keywords will be converted to lowercase format; Note: certain symbols and characters (e.g., UTF symbols, emojis) are not allowed to learn more about which symbols and characters can be used, please refer to this article learn more about rules and limitations of keyword and keywords fields in DataForSEO APIs in this Help Center article",
        -    "items": {
        -      "type": "string"
        -    },
        -    "type": "array"
        -  },
        -  "location_code": {
        -    "description": "location code required field if you don’t specify location_name Note: it is required to specify either location_name or location_code you can receive the list of available locations with their location_code by making a separate request to the https://api.dataforseo.com/v3/keywords_data/clickstream_data/locations_and_languages example: 2840",
        -    "type": "integer"
        -  },
        -  "location_name": {
        -    "description": "full name of the location required field if you don’t specify location_code Note: it is required to specify either location_name or location_code you can receive the list of available locations with their location_name by making a separate request to the https://api.dataforseo.com/v3/keywords_data/clickstream_data/locations_and_languages example: United Kingdom",
        -    "type": "string"
        -  },
        -  "tag": {
        -    "description": "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",
        -    "type": "string"
        -  }
        -}
      • removedInput schema / properties / body / items / required
        Removed value: -[
        -  "keywords"
        -]
      • changedInput schema / properties / body / items / type
        Previous value: -"object"New value: +[
        +  "object",
        +  "null"
        +]
      • changedInput schema / required
        Previous value: -[
        -  "body"
        -]New value: +[]
      • addedOutput schema / x-fastmcp-wrap-result
        Added value: +true
    • Changedpost_dataforseo_keywords_clickstream_global_volume_live7 fields changed
      • addedInput schema / properties / body / example
        Added value: +[
        +  {
        +    "keywords": [
        +      "you tube",
        +      "youtube",
        +      "youtub"
        +    ],
        +    "tag": "test-tag"
        +  }
        +]
      • addedInput schema / properties / body / items / anyOf
        Added value: +[
        +  {
        +    "example": [
        +      {
        +        "keywords": [
        +          "you tube",
        +          "youtube",
        +          "youtub"
        +        ],
        +        "tag": "test-tag"
        +      }
        +    ],
        +    "properties": {
        +      "keywords": {
        +        "description": "<em>target keywords</em><br><strong>required field</strong><br>UTF-8 encoding<br>maximum number of keywords you can specify in this array: 1000;<br>each keyword should be at least 3 characters long;<br>the keywords will be converted to lowercase format;<br><strong>Note:</strong> certain symbols and characters (e.g., UTF symbols, emojis) are not allowed<br>to learn more about which symbols and characters can be used, please refer to <a href=\"https://dataforseo.com/help-center/using-symbols-in-keywords-when-setting-a-google-ads-task\" target=\"_blank\" rel=\"noopener noreferrer\">this article</a><p>learn more about rules and limitations of <code>keyword</code> and <code>keywords</code> fields in DataForSEO APIs in this <a href=\"https://dataforseo.com/help-center/rules-and-limitations-of-keyword-and-keywords-fields-in-dataforseo-apis\" rel=\"noopener noreferrer\" target=\"_blank\">Help Center article</a>",
        +        "items": {
        +          "type": "string"
        +        },
        +        "type": "array"
        +      },
        +      "tag": {
        +        "description": "<em>user-defined task identifier</em><br>optional field<br><em>the character limit is 255</em><br>you can use this parameter to identify the task and match it with the result<br>you will find the specified <code>tag</code> value in the <code>data</code> object of the response",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      }
        +    },
        +    "type": "object"
        +  }
        +]
      • removedInput schema / properties / body / items / properties
        Removed value: -{
        -  "keywords": {
        -    "description": "target keywords required field UTF-8 encoding maximum number of keywords you can specify in this array: 1000; each keyword should be at least 3 characters long; the keywords will be converted to lowercase format; Note: certain symbols and characters (e.g., UTF symbols, emojis) are not allowed to learn more about which symbols and characters can be used, please refer to this article learn more about rules and limitations of keyword and keywords fields in DataForSEO APIs in this Help Center article",
        -    "items": {
        -      "type": "string"
        -    },
        -    "type": "array"
        -  },
        -  "tag": {
        -    "description": "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",
        -    "type": "string"
        -  }
        -}
      • removedInput schema / properties / body / items / required
        Removed value: -[
        -  "keywords"
        -]
      • changedInput schema / properties / body / items / type
        Previous value: -"object"New value: +[
        +  "object",
        +  "null"
        +]
      • changedInput schema / required
        Previous value: -[
        -  "body"
        -]New value: +[]
      • addedOutput schema / x-fastmcp-wrap-result
        Added value: +true
    • Changedpost_dataforseo_keywords_clickstream_search_volume_live8 fields changed
      • addedInput schema / properties / body / example
        Added value: +[
        +  {
        +    "keywords": [
        +      "you tube",
        +      "youtube",
        +      "youtub"
        +    ],
        +    "language_code": "en",
        +    "location_code": 2840,
        +    "tag": "test-tag"
        +  }
        +]
      • removedInput schema / properties / body / items / allOf
        Removed value: -[
        -  {
        -    "anyOf": [
        -      {
        -        "required": [
        -          "location_name"
        -        ]
        -      },
        -      {
        -        "required": [
        -          "location_code"
        -        ]
        -      }
        -    ]
        -  },
        -  {
        -    "anyOf": [
        -      {
        -        "required": [
        -          "language_name"
        -        ]
        -      },
        -      {
        -        "required": [
        -          "language_code"
        -        ]
        -      }
        -    ]
        -  }
        -]
      • addedInput schema / properties / body / items / anyOf
        Added value: +[
        +  {
        +    "example": [
        +      {
        +        "keywords": [
        +          "you tube",
        +          "youtube",
        +          "youtub"
        +        ],
        +        "language_code": "en",
        +        "location_code": 2840,
        +        "tag": "test-tag"
        +      }
        +    ],
        +    "properties": {
        +      "keywords": {
        +        "description": "<em>target keywords</em><br><strong>required field</strong><br>UTF-8 encoding<br>maximum number of keywords you can specify in this array: 1000<br>the keywords will be converted to lowercase format<p><strong>Note:</strong> certain symbols and characters (e.g., UTF symbols, emojis) are not allowed<br>to learn more about which symbols and characters can be used, please refer to <a href=\"https://dataforseo.com/help-center/using-symbols-in-keywords-when-setting-a-google-ads-task\" target=\"_blank\" rel=\"noopener noreferrer\">this article</a><p>learn more about rules and limitations of <code>keyword</code> and <code>keywords</code> fields in DataForSEO APIs in this <a href=\"https://dataforseo.com/help-center/rules-and-limitations-of-keyword-and-keywords-fields-in-dataforseo-apis\" rel=\"noopener noreferrer\" target=\"_blank\">Help Center article</a>",
        +        "items": {
        +          "type": "string"
        +        },
        +        "type": "array"
        +      },
        +      "language_code": {
        +        "description": "<em>search engine language code</em><br><strong>required field if don’t specify <code>language_name</code></strong><br>you can receive the list of available languages with their <code>language_code</code> by making a separate request to the <code>https://api.dataforseo.com/v3/keywords_data/clickstream_data/locations_and_languages</code><br>example:<br><code class=\"long-string\">en</code>",
        +        "type": "string"
        +      },
        +      "language_name": {
        +        "description": "<em>full name of search engine language</em><br><strong>required field if don’t specify <code>language_code</code></strong><br>you can receive the list of available languages with their <code>language_name</code> by making a separate request to the <code>https://api.dataforseo.com/v3/keywords_data/clickstream_data/locations_and_languages</code><br>example:<br><code class=\"long-string\">English</code>",
        +        "type": "string"
        +      },
        +      "location_code": {
        +        "description": "<em>search engine location code</em><br><strong>required field if you don’t specify <code>location_name</code></strong><br>if you use this field, you can receive the list of available locations with <code>location_code</code> by making a separate request to the <code>https://api.dataforseo.com/v3/keywords_data/clickstream_data/locations_and_languages</code><br>example:<br><code class=\"long-string\">2826</code>",
        +        "type": "integer"
        +      },
        +      "location_name": {
        +        "description": "<em>full name of search engine location</em><br><strong>required field if you don’t specify <code>location_code </code></strong><br>you can receive the list of available locations with <code>location_name</code> by making a separate request to <code>https://api.dataforseo.com/v3/keywords_data/clickstream_data/locations_and_languages</code><br>example:<br><code class=\"long-string\">United Kingdom</code>",
        +        "type": "string"
        +      },
        +      "tag": {
        +        "description": "<em>user-defined task identifier</em><br>optional field<br><em>the character limit is 255</em><br>you can use this parameter to identify the task and match it with the result<br>you will find the specified <code>tag</code> value in the <code>data</code> object of the response",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "use_clickstream": {
        +        "description": "<em>use clickstream data to provide results</em><br>optional field<br>if set to <code>true</code>, you will get DataForSEO search volume values based on clickstream data;<br>if set to <code>false</code>, Bing search volume data will be used to calculate DataForSEO search volume;<br>default value: <code>true</code>;<br><strong>Note:</strong> Bing search volume is available for locations provided in <a href=\"https://docs.dataforseo.com/v3/keywords_data/bing/search_volume_history/locations_and_languages/?bash\" rel=\"noopener noreferrer\" target=\"_blank\">Bing Search Volume History Locations</a> and <a href=\"https://docs.dataforseo.com/v3/keywords_data/bing/locations/?bash\" rel=\"noopener noreferrer\" target=\"_blank\">Bing Ads Locations</a> endpoints; search volume values for any other location are calculated based on clickstream data even if you set this parameter to <code>false</code>",
        +        "type": [
        +          "boolean",
        +          "null"
        +        ]
        +      }
        +    },
        +    "type": "object"
        +  }
        +]
      • removedInput schema / properties / body / items / properties
        Removed value: -{
        -  "keywords": {
        -    "description": "target keywords required field UTF-8 encoding maximum number of keywords you can specify in this array: 1000 the keywords will be converted to lowercase format Note: certain symbols and characters (e.g., UTF symbols, emojis) are not allowed to learn more about which symbols and characters can be used, please refer to this article learn more about rules and limitations of keyword and keywords fields in DataForSEO APIs in this Help Center article",
        -    "items": {
        -      "type": "string"
        -    },
        -    "type": "array"
        -  },
        -  "language_code": {
        -    "description": "search engine language code required field if don’t specify language_name you can receive the list of available languages with their language_code by making a separate request to the https://api.dataforseo.com/v3/keywords_data/clickstream_data/locations_and_languages example: en",
        -    "type": "string"
        -  },
        -  "language_name": {
        -    "description": "full name of search engine language required field if don’t specify language_code you can receive the list of available languages with their language_name by making a separate request to the https://api.dataforseo.com/v3/keywords_data/clickstream_data/locations_and_languages example: English",
        -    "type": "string"
        -  },
        -  "location_code": {
        -    "description": "search engine location code required field if you don’t specify location_name if you use this field, you can receive the list of available locations with location_code by making a separate request to the https://api.dataforseo.com/v3/keywords_data/clickstream_data/locations_and_languages example: 2826",
        -    "type": "integer"
        -  },
        -  "location_name": {
        -    "description": "full name of search engine location required field if you don’t specify location_code you can receive the list of available locations with location_name by making a separate request to https://api.dataforseo.com/v3/keywords_data/clickstream_data/locations_and_languages example: United Kingdom",
        -    "type": "string"
        -  },
        -  "tag": {
        -    "description": "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",
        -    "type": "string"
        -  },
        -  "use_clickstream": {
        -    "description": "use clickstream data to provide results optional field if set to true, you will get DataForSEO search volume values based on clickstream data; if set to false, Bing search volume data will be used to calculate DataForSEO search volume; default value: true; Note: Bing search volume is available for locations provided in Bing Search Volume History Locations and Bing Ads Locations endpoints; search volume values for any other location are calculated based on clickstream data even if you set this parameter to false",
        -    "type": "boolean"
        -  }
        -}
      • removedInput schema / properties / body / items / required
        Removed value: -[
        -  "keywords"
        -]
      • changedInput schema / properties / body / items / type
        Previous value: -"object"New value: +[
        +  "object",
        +  "null"
        +]
      • changedInput schema / required
        Previous value: -[
        -  "body"
        -]New value: +[]
      • addedOutput schema / x-fastmcp-wrap-result
        Added value: +true
    • Changedpost_dataforseo_keywords_gads_ad_traffic_submit8 fields changed
      • addedInput schema / properties / body / example
        Added value: +[
        +  {
        +    "bid": 999,
        +    "keywords": [
        +      "seo marketing"
        +    ],
        +    "language_code": "en",
        +    "location_code": 2840,
        +    "match": "exact"
        +  }
        +]
      • removedInput schema / properties / body / items / allOf
        Removed value: -[
        -  {
        -    "anyOf": [
        -      {
        -        "required": [
        -          "date_from",
        -          "date_to"
        -        ]
        -      },
        -      {
        -        "not": {
        -          "anyOf": [
        -            {
        -              "required": [
        -                "date_from"
        -              ]
        -            },
        -            {
        -              "required": [
        -                "date_to"
        -              ]
        -            }
        -          ]
        -        }
        -      }
        -    ]
        -  }
        -]
      • addedInput schema / properties / body / items / anyOf
        Added value: +[
        +  {
        +    "example": [
        +      {
        +        "bid": 999,
        +        "keywords": [
        +          "seo marketing"
        +        ],
        +        "language_code": "en",
        +        "location_code": 2840,
        +        "match": "exact"
        +      }
        +    ],
        +    "properties": {
        +      "bid": {
        +        "description": "<em>the maximum custom bid</em><br><strong>required field</strong><br>the collected data will be based on this value<br>it stands for the price you are willing to pay for an ad; the higher value you specify here, the higher values you will get in the returned metrics<br>learn more in <a href=\"https://dataforseo.com/help-center/configuring-bid\">this help center article</a>",
        +        "type": "number"
        +      },
        +      "date_from": {
        +        "description": "<em>starting date of the forecasting time range</em><br>required field if you specify <code>date_to</code><br><strong>if you indicate <code>date_from</code> and <code>date_to</code>, you don't need to specify <code>date_interval</code></strong><br>minimum value is tomorrow's date<br>the value you specify in <code>date_from</code> shouldn't be further than <code>date_to</code><br>date format: <code>\"yyyy-mm-dd\"</code><br>example:<br><code>\"2021-10-30\"</code>if <a href=\"/v3/keywords_data/google_ads/status/\" target=\"_blank\" rel=\"noopener noreferrer\">Status endpoint</a> returns <code>false</code> in the <code>actual_data</code> field, <code>date_from</code> can be set to the month before last and prior;<br>if <a href=\"/v3/keywords_data/google_ads/status/\" target=\"_blank\" rel=\"noopener noreferrer\">Status endpoint</a> returns <code>true</code> in the <code>actual_data</code> field, <code>date_from</code> can be set to the last month and prior",
        +        "type": "string"
        +      },
        +      "date_interval": {
        +        "description": "<em>forecasting date interval</em><br>optional field<br><strong>if you specify <code>date_interval</code>, you don't need to indicate <code>date_from</code> and <code>date_to</code></strong><br>possible values: <code>next_week</code>, <code>next_month</code>, <code>next_quarter</code><br>default value: <code>next_month</code>",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "date_to": {
        +        "description": "<em>ending date of the forecasting time range</em><br>required field if you specify <code>date_from</code><br><strong>if you indicate <code>date_from</code> and <code>date_to</code>, you don't need to specify <code>date_interval</code></strong><br>minimum value is <code>date_from</code> +1 day<br>maximum value is current day and month of the next year<br>date format: <code>\"yyyy-mm-dd\"</code><br>example:<br><code>\"2022-10-30\"</code>",
        +        "type": "string"
        +      },
        +      "keywords": {
        +        "description": "<em>keywords</em><br><strong>required field</strong><br>The maximum number of keywords you can specify: 1000<br>The maximum number of characters for each keyword: 80<br>The maximum number of words for each keyword phrase: 10<br>the keywords you specify will be converted to a lowercase format<br><strong>Note #1:</strong> <a href=\"https://dataforseo.com/help-center/no-search-volume-data-for-some-keywords\" target=\"_blank\" rel=\"noopener noreferrer\">Google Ads may return no data for certain groups of keywords</a>;<br><strong>Note #2:</strong> <a href=\"https://dataforseo.com/help-center/sv-broad-exact-phrase-match\" target=\"_blank\" rel=\"noopener noreferrer\">Google Ads provides combined search volume values for groups of similar keywords</a><br>to obtain search volume for similar keywords, we recommend submitting such keywords in separate requests;<br><strong>Note #3:</strong> Google Ads doesn't allow using certain symbols and characters (e.g., UTF symbols, emojis), so you can't use them when setting a task;<br>to learn more about which symbols and characters can be used, please refer to <a href=\"https://dataforseo.com/help-center/using-symbols-in-keywords-when-setting-a-google-ads-task\" target=\"_blank\" rel=\"noopener noreferrer\">this article</a><p>learn more about rules and limitations of <code>keyword</code> and <code>keywords</code> fields in DataForSEO APIs in this <a href=\"https://dataforseo.com/help-center/rules-and-limitations-of-keyword-and-keywords-fields-in-dataforseo-apis\" rel=\"noopener noreferrer\" target=\"_blank\">Help Center article</a>",
        +        "items": {
        +          "type": "string"
        +        },
        +        "type": "array"
        +      },
        +      "language_code": {
        +        "description": "<em>search engine language code</em><br>optional field<br>you can receive the list of available languages of the search engine with their <code>language_code</code> by making a separate request to <code>https://api.dataforseo.com/v3/keywords_data/google_ads/languages</code><br>example:<br><code class=\"long-string\">en</code>",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "language_name": {
        +        "description": "<em>full name of search engine language</em><br>optional field<br>you can receive the list of available languages of the search engine with their <code>language_name</code> by making a separate request to <code>https://api.dataforseo.com/v3/keywords_data/google_ads/languages</code><br>example:<br><code class=\"long-string\">English</code>",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "location_code": {
        +        "description": "<em>search engine location code</em><br>optional field<br>if you do not indicate the location, you will receive worldwide results, i.e., for all available locations;<br><strong>if you use this field, you don't need to specify <code>location_name</code> or <code>location_coordinate</code></strong>;<br>you can receive the list of available locations of the search engines with their <code>location_code</code> by making a separate request to <code>https://api.dataforseo.com/v3/keywords_data/google_ads/locations</code><br>example:<br><code class=\"long-string\">2840</code>",
        +        "type": [
        +          "integer",
        +          "null"
        +        ]
        +      },
        +      "location_coordinate": {
        +        "description": "<em>GPS coordinates of a location</em><br>optional field<br>if you do not indicate the location, you will receive worldwide results, i.e., for all available locations;<br><strong>if you use this field, you don't need to specify <code>location_name</code> or <code>location_code</code></strong>;<br><code>location_coordinate</code> parameter should be specified in the <em>\"latitude,longitude\"</em> format;<br><strong>the data will be provided for the country the specified coordinates belong to</strong>;<br>example:<br><code class=\"long-string\">52.6178549,-155.352142</code>",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "location_name": {
        +        "description": "<em>full name of search engine location</em><br>optional field<br>if you do not indicate the location, you will receive worldwide results, i.e., for all available locations;<br><strong>if you use this field, you don't need to specify <code>location_code</code> or <code>location_coordinate</code></strong><br>you can receive the list of available locations of the search engine with their <code>location_name</code> by making a separate request to <code>https://api.dataforseo.com/v3/keywords_data/google_ads/locations</code><br>example:<br><code class=\"long-string\">London,England,United Kingdom</code>",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "match": {
        +        "description": "<em>keywords match-type</em><br><strong>required field</strong><br>can take the following values: <code>exact</code>, <code>broad</code>, <code>phrase</code>",
        +        "type": "string"
        +      },
        +      "pingback_url": {
        +        "description": "<em>notification URL of a completed task</em><br>optional field<br>when a task is completed we will notify you by GET request sent to the URL you have specified<br>you can use the ‘$id’ string as a <code>$id</code> variable and ‘$tag’ as urlencoded <code>$tag</code> variable. We will set the necessary values before sending the request.<br>example:<br><code>http://your-server.com/pingscript?id=$id</code><br><code>http://your-server.com/pingscript?id=$id&amp;tag=$tag</code><br><strong>Note:</strong> special characters in <code>pingback_url</code> will be urlencoded;<br>i.a., the <code>#</code> character will be encoded into <code>%23</code><p>learn more on our <a href=\"https://dataforseo.com/help-center/pingbacks-postbacks-with-dataforseo-api\" target=\"_blank\" rel=\"noopener noreferrer\">Help Center</a>",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "postback_url": {
        +        "description": "<em>URL for sending task results</em><br>optional field<br>once the task is completed, we will send a POST request with its results compressed in the <code>gzip</code> format to the <code>postback_url</code> you specified<br>you can use the ‘$id’ string as a <code>$id</code> variable and ‘$tag’ as urlencoded <code>$tag</code> variable. We will set the necessary values before sending the request.<br>example:<br><code>http://your-server.com/postbackscript?id=$id</code><br><code>http://your-server.com/postbackscript?id=$id&amp;tag=$tag</code><br><strong>Note:</strong> special characters in <code>postback_url</code> will be urlencoded;<br>i.a., the <code>#</code> character will be encoded into <code>%23</code><p>learn more on our <a href=\"https://dataforseo.com/help-center/pingbacks-postbacks-with-dataforseo-api\" target=\"_blank\" rel=\"noopener noreferrer\">Help Center</a>",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "sort_by": {
        +        "description": "<em>results sorting parameters</em><br>optional field<br>Use these parameters to sort the results by <code>relevance</code>, <code>average_cpc</code>, <code>cost</code>, or <code>clicks</code> in the descending order<br>default value: <code>relevance</code>",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "tag": {
        +        "description": "<em>user-defined task identifier</em><br>optional field<br><em>the character limit is 255</em><br>you can use this parameter to identify the task and match it with the result<br>you will find the specified <code>tag</code> value in the <code>data</code> object of the response",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      }
        +    },
        +    "type": "object"
        +  }
        +]
      • removedInput schema / properties / body / items / properties
        Removed value: -{
        -  "bid": {
        -    "description": "the maximum custom bid required field the collected data will be based on this value it stands for the price you are willing to pay for an ad; the higher value you specify here, the higher values you will get in the returned metrics learn more in this help center article",
        -    "type": "number"
        -  },
        -  "date_from": {
        -    "description": "starting date of the forecasting time range required field if you specify date_to if you indicate date_from and date_to, you don’t need to specify date_interval minimum value is tomorrow’s date the value you specify in date_from shouldn’t be further than date_to date format: \"yyyy-mm-dd\" example: \"2021-10-30\"if Status endpoint returns false in the actual_data field, date_from can be set to the month before last and prior; if Status endpoint returns true in the actual_data field, date_from can be set to the last month and prior",
        -    "type": "string"
        -  },
        -  "date_interval": {
        -    "description": "forecasting date interval optional field if you specify date_interval, you don’t need to indicate date_from and date_to possible values: next_week, next_month, next_quarter default value: next_month",
        -    "type": "string"
        -  },
        -  "date_to": {
        -    "description": "ending date of the forecasting time range required field if you specify date_from if you indicate date_from and date_to, you don’t need to specify date_interval minimum value is date_from +1 day maximum value is current day and month of the next year date format: \"yyyy-mm-dd\" example: \"2022-10-30\"",
        -    "type": "string"
        -  },
        -  "keywords": {
        -    "description": "keywords required field The maximum number of keywords you can specify: 1000 The maximum number of characters for each keyword: 80 The maximum number of words for each keyword phrase: 10 the keywords you specify will be converted to a lowercase format Note #1: Google Ads may return no data for certain groups of keywords; Note #2: Google Ads provides combined search volume values for groups of similar keywords to obtain search volume for similar keywords, we recommend submitting such keywords in separate requests; Note #3: Google Ads doesn’t allow using certain symbols and characters (e.g., UTF symbols, emojis), so you can’t use them when setting a task; to learn more about which symbols and characters can be used, please refer to this article learn more about rules and limitations of keyword and keywords fields in DataForSEO APIs in this Help Center article",
        -    "items": {
        -      "type": "string"
        -    },
        -    "type": "array"
        -  },
        -  "language_code": {
        -    "description": "search engine language code optional field you can receive the list of available languages of the search engine with their language_code by making a separate request to https://api.dataforseo.com/v3/keywords_data/google_ads/languages example: en",
        -    "type": "string"
        -  },
        -  "language_name": {
        -    "description": "full name of search engine language optional field you can receive the list of available languages of the search engine with their language_name by making a separate request to https://api.dataforseo.com/v3/keywords_data/google_ads/languages example: English",
        -    "type": "string"
        -  },
        -  "location_code": {
        -    "description": "search engine location code optional field if you do not indicate the location, you will receive worldwide results, i.e., for all available locations; if you use this field, you don’t need to specify location_name or location_coordinate; you can receive the list of available locations of the search engines with their location_code by making a separate request to https://api.dataforseo.com/v3/keywords_data/google_ads/locations example: 2840",
        -    "type": "integer"
        -  },
        -  "location_coordinate": {
        -    "description": "GPS coordinates of a location optional field if you do not indicate the location, you will receive worldwide results, i.e., for all available locations; if you use this field, you don’t need to specify location_name or location_code; location_coordinate parameter should be specified in the “latitude,longitude” format; the data will be provided for the country the specified coordinates belong to; example: 52.6178549,-155.352142",
        -    "type": "string"
        -  },
        -  "location_name": {
        -    "description": "full name of search engine location optional field if you do not indicate the location, you will receive worldwide results, i.e., for all available locations; if you use this field, you don’t need to specify location_code or location_coordinate you can receive the list of available locations of the search engine with their location_name by making a separate request to https://api.dataforseo.com/v3/keywords_data/google_ads/locations example: London,England,United Kingdom",
        -    "type": "string"
        -  },
        -  "match": {
        -    "description": "keywords match-type required field can take the following values: exact, broad, phrase",
        -    "type": "string"
        -  },
        -  "pingback_url": {
        -    "description": "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 characters in pingback_url will be urlencoded; i.a., the # character will be encoded into %23 learn more on our Help Center",
        -    "type": "string"
        -  },
        -  "postback_url": {
        -    "description": "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 characters in postback_url will be urlencoded; i.a., the # character will be encoded into %23 learn more on our Help Center",
        -    "type": "string"
        -  },
        -  "search_partners": {
        -    "description": "include Google search partners optional field if you specify true, the results will be delivered for owned, operated, and syndicated networks across Google and partner sites that host Google search; default value: false – results are returned for Google search sites",
        -    "type": "boolean"
        -  },
        -  "sort_by": {
        -    "description": "results sorting parameters optional field Use these parameters to sort the results by relevance, average_cpc, cost, or clicks in the descending order default value: relevance",
        -    "type": "string"
        -  },
        -  "tag": {
        -    "description": "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",
        -    "type": "string"
        -  }
        -}
      • removedInput schema / properties / body / items / required
        Removed value: -[
        -  "keywords",
        -  "bid",
        -  "match"
        -]
      • changedInput schema / properties / body / items / type
        Previous value: -"object"New value: +[
        +  "object",
        +  "null"
        +]
      • changedInput schema / required
        Previous value: -[
        -  "body"
        -]New value: +[]
      • addedOutput schema / x-fastmcp-wrap-result
        Added value: +true
    • Changedpost_dataforseo_keywords_gads_kw_for_keywords_live7 fields changed
      • addedInput schema / properties / body / example
        Added value: +[
        +  {
        +    "keywords": [
        +      "phone",
        +      "cellphone"
        +    ],
        +    "location_code": 2840
        +  }
        +]
      • addedInput schema / properties / body / items / anyOf
        Added value: +[
        +  {
        +    "example": [
        +      {
        +        "keywords": [
        +          "phone",
        +          "cellphone"
        +        ],
        +        "location_code": 2840
        +      }
        +    ],
        +    "properties": {
        +      "date_from": {
        +        "description": "<em>starting date of the time range</em><br>optional field<br>date format: <code>\"yyyy-mm-dd\"</code><br>minimal value: 4 years from the current date<br>by default, data is returned for the past 12 months;<br><strong>Note</strong>: the indicated date cannot be greater than that specified in <code>date_to</code> and/or yesterday's date;if <a href=\"/v3/keywords_data/google_ads/status/\" target=\"_blank\" rel=\"noopener noreferrer\">Status endpoint</a> returns <code>false</code> in the <code>actual_data</code> field, <code>date_from</code> can be set to the month before last and prior;<br>if <a href=\"/v3/keywords_data/google_ads/status/\" target=\"_blank\" rel=\"noopener noreferrer\">Status endpoint</a> returns <code>true</code> in the <code>actual_data</code> field, <code>date_from</code> can be set to the last month and prior",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "date_to": {
        +        "description": "<em>ending date of the time range</em><br>optional field<br><strong>Note:</strong> the indicated date cannot be greater than yesterday's date;<br>if you don't specify this field, yesterday's date will be used by default<br>date format: <code>\"yyyy-mm-dd\"</code><br>example:<br><code>\"2022-11-30\"</code>",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "include_adult_keywords": {
        +        "description": "<em>include keywords associated with adult content</em><br>optional field<br>if set to <code>true</code>, adult keywords will be included in the response<br>default value: <code>false</code><br><strong>note</strong> that the API may return no data for such keywords due to <a href=\"https://support.google.com/adspolicy/answer/6008942?hl=en\" target=\"_blank\" rel=\"noopener noreferrer\">Google Ads restrictions</a>",
        +        "type": [
        +          "boolean",
        +          "null"
        +        ]
        +      },
        +      "keywords": {
        +        "description": "<em>keywords</em><br><strong>required field</strong><br>The maximum number of keywords you can specify: 20<br>The maximum number of characters for each keyword: 80<br>the keywords you specify will be converted to a lowercase format<br><strong>Note:</strong> Google Ads may return no data for certain groups of keywords<br><a href=\"https://dataforseo.com/help-center/no-search-volume-data-for-some-keywords\" target=\"_blank\" rel=\"noopener noreferrer\">visit our Help Center to learn more</a><br><strong>Also note</strong> that Google Ads doesn't allow using certain symbols and characters (e.g., UTF symbols, emojis), so you can't use them when setting a task;<br>to learn more about which symbols and characters can be used, please refer to <a href=\"https://dataforseo.com/help-center/using-symbols-in-keywords-when-setting-a-google-ads-task\" target=\"_blank\" rel=\"noopener noreferrer\">this article</a><p>learn more about rules and limitations of <code>keyword</code> and <code>keywords</code> fields in DataForSEO APIs in this <a href=\"https://dataforseo.com/help-center/rules-and-limitations-of-keyword-and-keywords-fields-in-dataforseo-apis\" rel=\"noopener noreferrer\" target=\"_blank\">Help Center article</a>",
        +        "items": {
        +          "type": "string"
        +        },
        +        "type": "array"
        +      },
        +      "language_code": {
        +        "description": "<em>search engine language code</em><br>optional field<br>you can receive the list of available languages of the search engine with their <code>language_code</code> by making a separate request to <code>https://api.dataforseo.com/v3/keywords_data/google_ads/languages</code><br>example:<br><code class=\"long-string\">en</code>",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "language_name": {
        +        "description": "<em>full name of search engine language</em><br>optional field<br>you can receive the list of available languages of the search engine with their <code>language_name</code> by making a separate request to <code>https://api.dataforseo.com/v3/keywords_data/google_ads/languages</code><br>example:<br><code class=\"long-string\">English</code>",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "location_code": {
        +        "description": "<em>search engine location code</em><br>optional field<br>if you do not indicate the location, you will receive worldwide results, i.e., for all available locations;<br><strong>if you use this field, you don't need to specify <code>location_name</code> or <code>location_coordinate</code></strong>;<br>you can receive the list of available locations of the search engines with their <code>location_code</code> by making a separate request to <code>https://api.dataforseo.com/v3/keywords_data/google_ads/locations</code><br>example:<br><code class=\"long-string\">2840</code>",
        +        "type": [
        +          "integer",
        +          "null"
        +        ]
        +      },
        +      "location_coordinate": {
        +        "description": "<em>GPS coordinates of a location</em><br>optional field<br>if you do not indicate the location, you will receive worldwide results, i.e., for all available locations;<br><strong>if you use this field, you don't need to specify <code>location_name</code> or <code>location_code</code></strong>;<br><code>location_coordinate</code> parameter should be specified in the <em>\"latitude,longitude\"</em> format;<br><strong>the data will be provided for the country the specified coordinates belong to</strong>;<br>example:<br><code class=\"long-string\">52.6178549,-155.352142</code>",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "location_name": {
        +        "description": "<em>full name of search engine location</em><br>optional field<br>if you do not indicate the location, you will receive worldwide results, i.e., for all available locations;<br><strong>if you use this field, you don't need to specify <code>location_code</code> or <code>location_coordinate</code></strong><br>you can receive the list of available locations of the search engine with their <code>location_name</code> by making a separate request to <code>https://api.dataforseo.com/v3/keywords_data/google_ads/locations</code><br>example:<br><code class=\"long-string\">London,England,United Kingdom</code>",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "search_partners": {
        +        "description": "<em>include Google search partners</em><br>optional field<br>if you specify <code class=\"prettyprint\">true</code>, the results will be delivered for owned, operated, and syndicated networks across <a href=\"https://support.google.com/google-ads/answer/1722047?hl=en\" target=\"_blank\" rel=\"noopener noreferrer\">Google and partner sites</a> that host Google search;<br>default value: <code>false</code> - results are returned for Google search sites",
        +        "type": [
        +          "boolean",
        +          "null"
        +        ]
        +      },
        +      "sort_by": {
        +        "description": "<em>results sorting parameters</em><br>optional field<br>Use these parameters to sort the results by <code>relevance</code>, <code>search_volume</code>, <code>competition_index</code>, <code>low_top_of_page_bid</code>, or <code>high_top_of_page_bid</code> in descending order<br>default value: <code>relevance</code>",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "tag": {
        +        "description": "<em>user-defined task identifier</em><br>optional field<br><em>the character limit is 255</em><br>you can use this parameter to identify the task and match it with the result<br>you will find the specified <code>tag</code> value in the <code>data</code> object of the response",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      }
        +    },
        +    "type": "object"
        +  }
        +]
      • removedInput schema / properties / body / items / properties
        Removed value: -{
        -  "date_from": {
        -    "description": "starting date of the time range optional field date format: \"yyyy-mm-dd\" minimal value: 4 years from the current date by default, data is returned for the past 12 months; Note: the indicated date cannot be greater than that specified in date_to and/or yesterday’s date;if Status endpoint returns false in the actual_data field, date_from can be set to the month before last and prior; if Status endpoint returns true in the actual_data field, date_from can be set to the last month and prior",
        -    "type": "string"
        -  },
        -  "date_to": {
        -    "description": "ending date of the time range optional field Note: the indicated date cannot be greater than yesterday’s date; if you don’t specify this field, yesterday’s date will be used by default date format: \"yyyy-mm-dd\" example: \"2022-11-30\"",
        -    "type": "string"
        -  },
        -  "include_adult_keywords": {
        -    "description": "include keywords associated with adult content optional field if set to true, adult keywords will be included in the response default value: false note that the API may return no data for such keywords due to Google Ads restrictions",
        -    "type": "boolean"
        -  },
        -  "keywords": {
        -    "description": "keywords required field The maximum number of keywords you can specify: 20 The maximum number of characters for each keyword: 80 the keywords you specify will be converted to a lowercase format Note: Google Ads may return no data for certain groups of keywords visit our Help Center to learn more Also note that Google Ads doesn’t allow using certain symbols and characters (e.g., UTF symbols, emojis), so you can’t use them when setting a task; to learn more about which symbols and characters can be used, please refer to this article learn more about rules and limitations of keyword and keywords fields in DataForSEO APIs in this Help Center article",
        -    "items": {
        -      "type": "string"
        -    },
        -    "type": "array"
        -  },
        -  "language_code": {
        -    "description": "search engine language code optional field you can receive the list of available languages of the search engine with their language_code by making a separate request to https://api.dataforseo.com/v3/keywords_data/google_ads/languages example: en",
        -    "type": "string"
        -  },
        -  "language_name": {
        -    "description": "full name of search engine language optional field you can receive the list of available languages of the search engine with their language_name by making a separate request to https://api.dataforseo.com/v3/keywords_data/google_ads/languages example: English",
        -    "type": "string"
        -  },
        -  "location_code": {
        -    "description": "search engine location code optional field if you do not indicate the location, you will receive worldwide results, i.e., for all available locations; if you use this field, you don’t need to specify location_name or location_coordinate; you can receive the list of available locations of the search engines with their location_code by making a separate request to https://api.dataforseo.com/v3/keywords_data/google_ads/locations example: 2840",
        -    "type": "integer"
        -  },
        -  "location_coordinate": {
        -    "description": "GPS coordinates of a location optional field if you do not indicate the location, you will receive worldwide results, i.e., for all available locations; if you use this field, you don’t need to specify location_name or location_code; location_coordinate parameter should be specified in the “latitude,longitude” format; the data will be provided for the country the specified coordinates belong to; example: 52.6178549,-155.352142",
        -    "type": "string"
        -  },
        -  "location_name": {
        -    "description": "full name of search engine location optional field if you do not indicate the location, you will receive worldwide results, i.e., for all available locations; if you use this field, you don’t need to specify location_code or location_coordinate you can receive the list of available locations of the search engine with their location_name by making a separate request to https://api.dataforseo.com/v3/keywords_data/google_ads/locations example: London,England,United Kingdom",
        -    "type": "string"
        -  },
        -  "search_partners": {
        -    "description": "include Google search partners optional field if you specify true, the results will be delivered for owned, operated, and syndicated networks across Google and partner sites that host Google search; default value: false – results are returned for Google search sites",
        -    "type": "boolean"
        -  },
        -  "sort_by": {
        -    "description": "results sorting parameters optional field Use these parameters to sort the results by relevance, search_volume, competition_index, low_top_of_page_bid, or high_top_of_page_bid in descending order default value: relevance",
        -    "type": "string"
        -  },
        -  "tag": {
        -    "description": "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",
        -    "type": "string"
        -  }
        -}
      • removedInput schema / properties / body / items / required
        Removed value: -[
        -  "keywords"
        -]
      • changedInput schema / properties / body / items / type
        Previous value: -"object"New value: +[
        +  "object",
        +  "null"
        +]
      • changedInput schema / required
        Previous value: -[
        -  "body"
        -]New value: +[]
      • addedOutput schema / x-fastmcp-wrap-result
        Added value: +true
    • Changedpost_dataforseo_keywords_gads_kw_for_site_live7 fields changed
      • addedInput schema / properties / body / example
        Added value: +[
        +  {
        +    "location_code": 2840,
        +    "target": "dataforseo.com"
        +  }
        +]
      • addedInput schema / properties / body / items / anyOf
        Added value: +[
        +  {
        +    "example": [
        +      {
        +        "location_code": 2840,
        +        "target": "dataforseo.com"
        +      }
        +    ],
        +    "properties": {
        +      "date_from": {
        +        "description": "<em>starting date of the time range</em><br>optional field<br>date format: <code>\"yyyy-mm-dd\"</code><br>minimal value: 4 years from the current date<br>by default, data is returned for the past 12 months;<br><strong>Note</strong>: the indicated date cannot be greater than that specified in <code>date_to</code> and/or yesterday's date;if <a href=\"/v3/keywords_data/google_ads/status/\" target=\"_blank\" rel=\"noopener noreferrer\">Status endpoint</a> returns <code>false</code> in the <code>actual_data</code> field, <code>date_from</code> can be set to the month before last and prior;<br>if <a href=\"/v3/keywords_data/google_ads/status/\" target=\"_blank\" rel=\"noopener noreferrer\">Status endpoint</a> returns <code>true</code> in the <code>actual_data</code> field, <code>date_from</code> can be set to the last month and prior",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "date_to": {
        +        "description": "<em>ending date of the time range</em><br>optional field<br><strong>Note:</strong> the indicated date cannot be greater than yesterday's date;<br>if you don't specify this field, yesterday's date will be used by default<br>date format: <code>\"yyyy-mm-dd\"</code><br>example:<br><code>\"2022-11-30\"</code>",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "include_adult_keywords": {
        +        "description": "<em>include keywords associated with adult content</em><br>optional field<br>if set to <code>true</code>, adult keywords will be included in the response<br>default value: <code>false</code><br><strong>note</strong> that the API may return no data for such keywords due to <a href=\"https://support.google.com/adspolicy/answer/6008942?hl=en\" target=\"_blank\" rel=\"noopener noreferrer\">Google Ads restrictions</a>",
        +        "type": [
        +          "boolean",
        +          "null"
        +        ]
        +      },
        +      "language_code": {
        +        "description": "<em>search engine language code</em><br>optional field<br>you can receive the list of available languages of the search engine with their <code>language_code</code> by making a separate request to <code>https://api.dataforseo.com/v3/keywords_data/google_ads/languages</code><br>example:<br><code class=\"long-string\">en</code>",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "language_name": {
        +        "description": "<em>full name of search engine language</em><br>optional field<br>you can receive the list of available languages of the search engine with their <code>language_name</code> by making a separate request to <code>https://api.dataforseo.com/v3/keywords_data/google_ads/languages</code><br>example:<br><code class=\"long-string\">English</code>",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "location_code": {
        +        "description": "<em>search engine location code</em><br>optional field<br>if you do not indicate the location, you will receive worldwide results, i.e., for all available locations;<br><strong>if you use this field, you don't need to specify <code>location_name</code> or <code>location_coordinate</code></strong>;<br>you can receive the list of available locations of the search engines with their <code>location_code</code> by making a separate request to <code>https://api.dataforseo.com/v3/keywords_data/google_ads/locations</code><br>example:<br><code class=\"long-string\">2840</code>",
        +        "type": [
        +          "integer",
        +          "null"
        +        ]
        +      },
        +      "location_coordinate": {
        +        "description": "<em>GPS coordinates of a location</em><br>optional field<br>if you do not indicate the location, you will receive worldwide results, i.e., for all available locations;<br><strong>if you use this field, you don't need to specify <code>location_name</code> or <code>location_code</code></strong>;<br><code>location_coordinate</code> parameter should be specified in the <em>\"latitude,longitude\"</em> format;<br><strong>the data will be provided for the country the specified coordinates belong to</strong>;<br>example:<br><code class=\"long-string\">52.6178549,-155.352142</code>",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "location_name": {
        +        "description": "<em>full name of search engine location</em><br>optional field<br>if you do not indicate the location, you will receive worldwide results, i.e., for all available locations;<br><strong>if you use this field, you don't need to specify <code>location_code</code> or <code>location_coordinate</code></strong><br>you can receive the list of available locations of the search engine with their <code>location_name</code> by making a separate request to <code>https://api.dataforseo.com/v3/keywords_data/google_ads/locations</code><br>example:<br><code class=\"long-string\">London,England,United Kingdom</code>",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "search_partners": {
        +        "description": "<em>include Google search partners</em><br>optional field<br>if you specify <code class=\"prettyprint\">true</code>, the results will be delivered for owned, operated, and syndicated networks across <a href=\"https://support.google.com/google-ads/answer/1722047?hl=en\" target=\"_blank\" rel=\"noopener noreferrer\">Google and partner sites</a> that host Google search;<br>default value: <code>false</code> - results are returned for Google search sites",
        +        "type": [
        +          "boolean",
        +          "null"
        +        ]
        +      },
        +      "sort_by": {
        +        "description": "<em>results sorting parameters</em><br>optional field<br>Use these parameters to sort the results by <code>relevance</code>, <code>search_volume</code>, <code>competition_index</code>, <code>low_top_of_page_bid</code>, or <code>high_top_of_page_bid</code> in descending order<br>default value: <code>relevance</code>",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "tag": {
        +        "description": "<em>user-defined task identifier</em><br>optional field<br><em>the character limit is 255</em><br>you can use this parameter to identify the task and match it with the result<br>you will find the specified <code>tag</code> value in the <code>data</code> object of the response",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "target": {
        +        "description": "<em>domain or page</em><br><strong>required field</strong><br>the domain name of the target website or the url of the target page;<br><strong>note:</strong> to obtain keywords for the target website, use the <code>target_type</code> parameter",
        +        "type": "string"
        +      },
        +      "target_type": {
        +        "description": "<em>search keywords for site or for url</em><br>optional field<br>possible values: <code>site</code>, <code>page</code>;<br>default value: <code>page</code>;<br>if set to <code>site</code>, keywords will be provided for the entire site;<br>if set to <code>page</code>, keywords will be provided for the specified webpage",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      }
        +    },
        +    "type": "object"
        +  }
        +]
      • removedInput schema / properties / body / items / properties
        Removed value: -{
        -  "date_from": {
        -    "description": "starting date of the time range optional field date format: \"yyyy-mm-dd\" minimal value: 4 years from the current date by default, data is returned for the past 12 months; Note: the indicated date cannot be greater than that specified in date_to and/or yesterday’s date;if Status endpoint returns false in the actual_data field, date_from can be set to the month before last and prior; if Status endpoint returns true in the actual_data field, date_from can be set to the last month and prior",
        -    "type": "string"
        -  },
        -  "date_to": {
        -    "description": "ending date of the time range optional field Note: the indicated date cannot be greater than yesterday’s date; if you don’t specify this field, yesterday’s date will be used by default date format: \"yyyy-mm-dd\" example: \"2022-11-30\"",
        -    "type": "string"
        -  },
        -  "include_adult_keywords": {
        -    "description": "include keywords associated with adult content optional field if set to true, adult keywords will be included in the response default value: false note that the API may return no data for such keywords due to Google Ads restrictions",
        -    "type": "boolean"
        -  },
        -  "language_code": {
        -    "description": "search engine language code optional field you can receive the list of available languages of the search engine with their language_code by making a separate request to https://api.dataforseo.com/v3/keywords_data/google_ads/languages example: en",
        -    "type": "string"
        -  },
        -  "language_name": {
        -    "description": "full name of search engine language optional field you can receive the list of available languages of the search engine with their language_name by making a separate request to https://api.dataforseo.com/v3/keywords_data/google_ads/languages example: English",
        -    "type": "string"
        -  },
        -  "location_code": {
        -    "description": "search engine location code optional field if you do not indicate the location, you will receive worldwide results, i.e., for all available locations; if you use this field, you don’t need to specify location_name or location_coordinate; you can receive the list of available locations of the search engines with their location_code by making a separate request to https://api.dataforseo.com/v3/keywords_data/google_ads/locations example: 2840",
        -    "type": "integer"
        -  },
        -  "location_coordinate": {
        -    "description": "GPS coordinates of a location optional field if you do not indicate the location, you will receive worldwide results, i.e., for all available locations; if you use this field, you don’t need to specify location_name or location_code; location_coordinate parameter should be specified in the “latitude,longitude” format; the data will be provided for the country the specified coordinates belong to; example: 52.6178549,-155.352142",
        -    "type": "string"
        -  },
        -  "location_name": {
        -    "description": "full name of search engine location optional field if you do not indicate the location, you will receive worldwide results, i.e., for all available locations; if you use this field, you don’t need to specify location_code or location_coordinate you can receive the list of available locations of the search engine with their location_name by making a separate request to https://api.dataforseo.com/v3/keywords_data/google_ads/locations example: London,England,United Kingdom",
        -    "type": "string"
        -  },
        -  "search_partners": {
        -    "description": "include Google search partners optional field if you specify true, the results will be delivered for owned, operated, and syndicated networks across Google and partner sites that host Google search; default value: false – results are returned for Google search sites",
        -    "type": "boolean"
        -  },
        -  "sort_by": {
        -    "description": "results sorting parameters optional field Use these parameters to sort the results by relevance, search_volume, competition_index, low_top_of_page_bid, or high_top_of_page_bid in descending order default value: relevance",
        -    "type": "string"
        -  },
        -  "tag": {
        -    "description": "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",
        -    "type": "string"
        -  },
        -  "target": {
        -    "description": "domain or page required field the domain name of the target website or the url of the target page; note: to obtain keywords for the target website, use the target_type parameter",
        -    "type": "string"
        -  },
        -  "target_type": {
        -    "description": "search keywords for site or for url optional field possible values: site, page; default value: page; if set to site, keywords will be provided for the entire site; if set to page, keywords will be provided for the specified webpage",
        -    "type": "string"
        -  }
        -}
      • removedInput schema / properties / body / items / required
        Removed value: -[
        -  "target"
        -]
      • changedInput schema / properties / body / items / type
        Previous value: -"object"New value: +[
        +  "object",
        +  "null"
        +]
      • changedInput schema / required
        Previous value: -[
        -  "body"
        -]New value: +[]
      • addedOutput schema / x-fastmcp-wrap-result
        Added value: +true
    • Changedpost_dataforseo_keywords_gads_search_volume_live7 fields changed
      • addedInput schema / properties / body / example
        Added value: +[
        +  {
        +    "date_from": "2021-08-01",
        +    "keywords": [
        +      "buy laptop",
        +      "cheap laptops for sale",
        +      "purchase laptop"
        +    ],
        +    "location_code": 2840,
        +    "search_partners": true
        +  }
        +]
      • addedInput schema / properties / body / items / anyOf
        Added value: +[
        +  {
        +    "example": [
        +      {
        +        "date_from": "2021-08-01",
        +        "keywords": [
        +          "buy laptop",
        +          "cheap laptops for sale",
        +          "purchase laptop"
        +        ],
        +        "location_code": 2840,
        +        "search_partners": true
        +      }
        +    ],
        +    "properties": {
        +      "date_from": {
        +        "description": "<em>starting date of the time range</em><br>optional field<br>date format: <code>\"yyyy-mm-dd\"</code><br>minimal value: 4 years from the current date<br>by default, data is returned for the past 12 months;<br><strong>Note</strong>: the indicated date cannot be greater than that specified in <code>date_to</code> and/or yesterday's date;if <a href=\"/v3/keywords_data/google_ads/status/\" target=\"_blank\" rel=\"noopener noreferrer\">Status endpoint</a> returns <code>false</code> in the <code>actual_data</code> field, <code>date_from</code> can be set to the month before last and prior;<br>if <a href=\"/v3/keywords_data/google_ads/status/\" target=\"_blank\" rel=\"noopener noreferrer\">Status endpoint</a> returns <code>true</code> in the <code>actual_data</code> field, <code>date_from</code> can be set to the last month and prior",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "date_to": {
        +        "description": "<em>ending date of the time range</em><br>optional field<br><strong>Note:</strong> the indicated date cannot be greater than the past month, Google Ads does not return data on the current month;<br>if you don't specify this field, yesterday's date will be used by default<br>date format: <code>\"yyyy-mm-dd\"</code><br>example:<br><code>\"2022-11-30\"</code>",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "include_adult_keywords": {
        +        "description": "<em>include keywords associated with adult content<br></em>optional field<br>if set to_<code>true</code>, adult keywords will be included in the response<br>default value:_<code>false</code><br><strong>note</strong>_that the API may return no data for such keywords due to_<a href=\"https://support.google.com/adspolicy/answer/6008942?hl=en\" target=\"_blank\" rel=\"noopener noreferrer\">Google Ads restrictions</a>n",
        +        "type": [
        +          "boolean",
        +          "null"
        +        ]
        +      },
        +      "keywords": {
        +        "description": "<em>keywords</em><br><strong>required field</strong><br>The maximum number of keywords you can specify: 1000<br>The maximum number of characters for each keyword: 80<br>The maximum number of words for each keyword phrase: 10<br>the keywords you specify will be converted to a lowercase format<br><strong>Note #1:</strong> <a href=\"https://dataforseo.com/help-center/no-search-volume-data-for-some-keywords\" target=\"_blank\" rel=\"noopener noreferrer\">Google Ads may return no data for certain groups of keywords</a>;<br><strong>Note #2:</strong> <a href=\"https://dataforseo.com/help-center/sv-broad-exact-phrase-match\" target=\"_blank\" rel=\"noopener noreferrer\">Google Ads provides combined search volume values for groups of similar keywords</a><br>to obtain search volume for similar keywords, we recommend submitting such keywords in separate requests;<br><strong>Note #3:</strong> Google Ads doesn't allow using certain symbols and characters (e.g., UTF symbols, emojis), so you can't use them when setting a task;<br>to learn more about which symbols and characters can be used, please refer to <a href=\"https://dataforseo.com/help-center/using-symbols-in-keywords-when-setting-a-google-ads-task\" target=\"_blank\" rel=\"noopener noreferrer\">this article</a><p>learn more about rules and limitations of <code>keyword</code> and <code>keywords</code> fields in DataForSEO APIs in this <a href=\"https://dataforseo.com/help-center/rules-and-limitations-of-keyword-and-keywords-fields-in-dataforseo-apis\" rel=\"noopener noreferrer\" target=\"_blank\">Help Center article</a>",
        +        "items": {
        +          "type": "string"
        +        },
        +        "type": "array"
        +      },
        +      "language_code": {
        +        "description": "<em>search engine language code</em><br>optional field<br>you can receive the list of available languages of the search engine with their <code>language_code</code> by making a separate request to <code>https://api.dataforseo.com/v3/keywords_data/google_ads/languages</code><br>example:<br><code class=\"long-string\">en</code>",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "language_name": {
        +        "description": "<em>full name of search engine language</em><br>optional field<br>you can receive the list of available languages of the search engine with their <code>language_name</code> by making a separate request to <code>https://api.dataforseo.com/v3/keywords_data/google_ads/languages</code><br>example:<br><code class=\"long-string\">English</code>",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "location_code": {
        +        "description": "<em>search engine location code</em><br>optional field<br>if you do not indicate the location, you will receive worldwide results, i.e., for all available locations;<br><strong>if you use this field, you don't need to specify <code>location_name</code> or <code>location_coordinate</code></strong>;<br>you can receive the list of available locations of the search engines with their <code>location_code</code> by making a separate request to <code>https://api.dataforseo.com/v3/keywords_data/google_ads/locations</code><br>example:<br><code class=\"long-string\">2840</code>",
        +        "type": [
        +          "integer",
        +          "null"
        +        ]
        +      },
        +      "location_coordinate": {
        +        "description": "<em>GPS coordinates of a location</em><br>optional field<br>if you do not indicate the location, you will receive worldwide results, i.e., for all available locations;<br><strong>if you use this field, you don't need to specify <code>location_name</code> or <code>location_code</code></strong>;<br><code>location_coordinate</code> parameter should be specified in the <em>\"latitude,longitude\"</em> format;<br><strong>the data will be provided for the country the specified coordinates belong to</strong>;<br>example:<br><code class=\"long-string\">52.6178549,-155.352142</code>",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "location_name": {
        +        "description": "<em>full name of search engine location</em><br>optional field<br>if you do not indicate the location, you will receive worldwide results, i.e., for all available locations;<br><strong>if you use this field, you don't need to specify <code>location_code</code> or <code>location_coordinate</code></strong><br>you can receive the list of available locations of the search engine with their <code>location_name</code> by making a separate request to <code>https://api.dataforseo.com/v3/keywords_data/google_ads/locations</code><br>example:<br><code class=\"long-string\">London,England,United Kingdom</code>",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "search_partners": {
        +        "description": "<em>include Google search partners</em><br>optional field<br>if you specify <code class=\"prettyprint\">true</code>, the results will be delivered for owned, operated, and syndicated networks across <a href=\"https://support.google.com/google-ads/answer/1722047?hl=en\" target=\"_blank\" rel=\"noopener noreferrer\">Google and partner sites</a> that host Google search;<br>default value: <code>false</code> - results are returned for Google search sites",
        +        "type": [
        +          "boolean",
        +          "null"
        +        ]
        +      },
        +      "sort_by": {
        +        "description": "<em>results sorting parameters</em><br>optional field<br>use these parameters to sort the results by <code>relevance</code>, <code>search_volume</code>, <code>competition_index</code>, <code>low_top_of_page_bid</code>, or <code>high_top_of_page_bid</code> in the descending order<br>default value: <code>relevance</code>",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "tag": {
        +        "description": "<em>user-defined task identifier</em><br>optional field<br><em>the character limit is 255</em><br>you can use this parameter to identify the task and match it with the result<br>you will find the specified <code>tag</code> value in the <code>data</code> array of the response",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      }
        +    },
        +    "type": "object"
        +  }
        +]
      • removedInput schema / properties / body / items / properties
        Removed value: -{
        -  "date_from": {
        -    "description": "starting date of the time range optional field date format: \"yyyy-mm-dd\" minimal value: 4 years from the current date by default, data is returned for the past 12 months; Note: the indicated date cannot be greater than that specified in date_to and/or yesterday’s date;if Status endpoint returns false in the actual_data field, date_from can be set to the month before last and prior; if Status endpoint returns true in the actual_data field, date_from can be set to the last month and prior",
        -    "type": "string"
        -  },
        -  "date_to": {
        -    "description": "ending date of the time range optional field Note: the indicated date cannot be greater than the past month, Google Ads does not return data on the current month; if you don’t specify this field, yesterday’s date will be used by default date format: \"yyyy-mm-dd\" example: \"2022-11-30\"",
        -    "type": "string"
        -  },
        -  "include_adult_keywords": {
        -    "description": "include keywords associated with adult content optional field if set to_true, adult keywords will be included in the response default value:_false note_that the API may return no data for such keywords due to_Google Ads restrictions n",
        -    "type": "boolean"
        -  },
        -  "keywords": {
        -    "description": "keywords required field The maximum number of keywords you can specify: 1000 The maximum number of characters for each keyword: 80 The maximum number of words for each keyword phrase: 10 the keywords you specify will be converted to a lowercase format Note #1: Google Ads may return no data for certain groups of keywords; Note #2: Google Ads provides combined search volume values for groups of similar keywords to obtain search volume for similar keywords, we recommend submitting such keywords in separate requests; Note #3: Google Ads doesn’t allow using certain symbols and characters (e.g., UTF symbols, emojis), so you can’t use them when setting a task; to learn more about which symbols and characters can be used, please refer to this article learn more about rules and limitations of keyword and keywords fields in DataForSEO APIs in this Help Center article",
        -    "items": {
        -      "type": "string"
        -    },
        -    "type": "array"
        -  },
        -  "language_code": {
        -    "description": "search engine language code optional field you can receive the list of available languages of the search engine with their language_code by making a separate request to https://api.dataforseo.com/v3/keywords_data/google_ads/languages example: en",
        -    "type": "string"
        -  },
        -  "language_name": {
        -    "description": "full name of search engine language optional field you can receive the list of available languages of the search engine with their language_name by making a separate request to https://api.dataforseo.com/v3/keywords_data/google_ads/languages example: English",
        -    "type": "string"
        -  },
        -  "location_code": {
        -    "description": "search engine location code optional field if you do not indicate the location, you will receive worldwide results, i.e., for all available locations; if you use this field, you don’t need to specify location_name or location_coordinate; you can receive the list of available locations of the search engines with their location_code by making a separate request to https://api.dataforseo.com/v3/keywords_data/google_ads/locations example: 2840",
        -    "type": "integer"
        -  },
        -  "location_coordinate": {
        -    "description": "GPS coordinates of a location optional field if you do not indicate the location, you will receive worldwide results, i.e., for all available locations; if you use this field, you don’t need to specify location_name or location_code; location_coordinate parameter should be specified in the “latitude,longitude” format; the data will be provided for the country the specified coordinates belong to; example: 52.6178549,-155.352142",
        -    "type": "string"
        -  },
        -  "location_name": {
        -    "description": "full name of search engine location optional field if you do not indicate the location, you will receive worldwide results, i.e., for all available locations; if you use this field, you don’t need to specify location_code or location_coordinate you can receive the list of available locations of the search engine with their location_name by making a separate request to https://api.dataforseo.com/v3/keywords_data/google_ads/locations example: London,England,United Kingdom",
        -    "type": "string"
        -  },
        -  "search_partners": {
        -    "description": "include Google search partners optional field if you specify true, the results will be delivered for owned, operated, and syndicated networks across Google and partner sites that host Google search; default value: false – results are returned for Google search sites",
        -    "type": "boolean"
        -  },
        -  "sort_by": {
        -    "description": "results sorting parameters optional field use these parameters to sort the results by relevance, search_volume, competition_index, low_top_of_page_bid, or high_top_of_page_bid in the descending order default value: relevance",
        -    "type": "string"
        -  },
        -  "tag": {
        -    "description": "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 array of the response",
        -    "type": "string"
        -  }
        -}
      • removedInput schema / properties / body / items / required
        Removed value: -[
        -  "keywords"
        -]
      • changedInput schema / properties / body / items / type
        Previous value: -"object"New value: +[
        +  "object",
        +  "null"
        +]
      • changedInput schema / required
        Previous value: -[
        -  "body"
        -]New value: +[]
      • addedOutput schema / x-fastmcp-wrap-result
        Added value: +true
    • Changedpost_dataforseo_keywords_trends_demography_live7 fields changed
      • addedInput schema / properties / body / example
        Added value: +[
        +  {
        +    "date_from": "2023-01-01",
        +    "date_to": "2024-01-01",
        +    "keywords": [
        +      "rugby",
        +      "cricket"
        +    ],
        +    "location_name": "United States",
        +    "type": "web"
        +  }
        +]
      • addedInput schema / properties / body / items / anyOf
        Added value: +[
        +  {
        +    "example": [
        +      {
        +        "date_from": "2023-01-01",
        +        "date_to": "2024-01-01",
        +        "keywords": [
        +          "rugby",
        +          "cricket"
        +        ],
        +        "location_name": "United States",
        +        "type": "web"
        +      }
        +    ],
        +    "properties": {
        +      "date_from": {
        +        "description": "<em>starting date of the time range</em><br>optional field<br>if you don't specify this field, the current day and month of the preceding year will be used by default<br>minimal value for the <code>web</code> type: <code>2004-01-01</code><br>minimal value for other types: <code>2008-01-01</code><br>date format: <code>\"yyyy-mm-dd\"</code><br>example:<br><code>\"2019-01-15\"</code>",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "date_to": {
        +        "description": "<em>ending date of the time range</em><br>optional field<br>if you don't specify this field, the today's date will be used by default<br>date format: <code>\"yyyy-mm-dd\"</code><br>example:<br><code>\"2019-01-15\"</code>",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "keywords": {
        +        "description": "<em>keywords</em><br><strong>required field</strong><br>the maximum number of keywords you can specify: 5<br>avoid symbols and special characters (e.g., UTF symbols, emojis);<br>specifying non-Latin characters, you’ll get data for the countries where they are used<p>learn more about rules and limitations of <code>keyword</code> and <code>keywords</code> fields in DataForSEO APIs in this <a href=\"https://dataforseo.com/help-center/rules-and-limitations-of-keyword-and-keywords-fields-in-dataforseo-apis\" rel=\"noopener noreferrer\" target=\"_blank\">Help Center article</a>",
        +        "items": {
        +          "type": "string"
        +        },
        +        "type": "array"
        +      },
        +      "location_code": {
        +        "description": "<em>search engine location code</em><br>optional field<br>if you don't use this field, you will recieve global results<br><strong>if you use this field, you don't need to specify <code>location_name</code></strong><br>you can receive the list of available locations of the search engines with their <code>location_code</code> by making a separate request to <code>https://api.dataforseo.com/v3/keywords_data/dataforseo_trends/locations</code><br><strong>note that the data will be provided for the country the specified <code>location_code</code> belongs to;</strong><br>example:<br><code class=\"long-string\">2840</code>",
        +        "type": [
        +          "integer",
        +          "null"
        +        ]
        +      },
        +      "location_name": {
        +        "description": "<em>full name of search engine location</em><br>optional field<br>if you don't use this field, you will recieve global results<br><strong>if you use this field, you don't need to specify <code>location_code</code></strong><br>you can receive the list of available locations of the search engine with their <code>location_name</code> by making a separate request to <code>https://api.dataforseo.com/v3/keywords_data/dataforseo_trends/locations</code><br><strong>note that the data will be provided for the country the specified <code>location_name</code> belongs to;</strong><br>example:<br><code class=\"long-string\">United Kingdom</code>",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "tag": {
        +        "description": "<em>user-defined task identifier</em><br>optional field<br><em>the character limit is 255</em><br>you can use this parameter to identify the task and match it with the result<br>you will find the specified <code>tag</code> value in the <code>data</code> object of the response",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "time_range": {
        +        "description": "<em>preset time ranges</em><br>optional field<br>if you specify <code>date_from</code> or <code>date_to</code> parameters, this field will be ignored when setting a task<br><em>possible values for all <code>type</code> parameters:</em><br><code>past_4_hours</code>, <code>past_day</code>, <code>past_7_days</code>, <code>past_30_days</code>, <code>past_90_days</code>, <code>past_12_months</code>, <code>past_5_years</code>",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "type": {
        +        "description": "type of element",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      }
        +    },
        +    "type": "object"
        +  }
        +]
      • removedInput schema / properties / body / items / properties
        Removed value: -{
        -  "date_from": {
        -    "description": "starting date of the time range optional field if you don’t specify this field, the current day and month of the preceding year will be used by default minimal value for the web type: 2004-01-01 minimal value for other types: 2008-01-01 date format: \"yyyy-mm-dd\" example: \"2019-01-15\"",
        -    "type": "string"
        -  },
        -  "date_to": {
        -    "description": "ending date of the time range optional field if you don’t specify this field, the today’s date will be used by default date format: \"yyyy-mm-dd\" example: \"2019-01-15\"",
        -    "type": "string"
        -  },
        -  "keywords": {
        -    "description": "keywords required field the maximum number of keywords you can specify: 5 avoid symbols and special characters (e.g., UTF symbols, emojis); specifying non-Latin characters, you’ll get data for the countries where they are used learn more about rules and limitations of keyword and keywords fields in DataForSEO APIs in this Help Center article",
        -    "items": {
        -      "type": "string"
        -    },
        -    "type": "array"
        -  },
        -  "location_code": {
        -    "description": "search engine location code optional field if you don’t use this field, you will recieve global results if you use this field, you don’t need to specify location_name you can receive the list of available locations of the search engines with their location_code by making a separate request to https://api.dataforseo.com/v3/keywords_data/dataforseo_trends/locations note that the data will be provided for the country the specified location_code belongs to; example: 2840",
        -    "type": "integer"
        -  },
        -  "location_name": {
        -    "description": "full name of search engine location optional field if you don’t use this field, you will recieve global results if you use this field, you don’t need to specify location_code you can receive the list of available locations of the search engine with their location_name by making a separate request to https://api.dataforseo.com/v3/keywords_data/dataforseo_trends/locations note that the data will be provided for the country the specified location_name belongs to; example: United Kingdom",
        -    "type": "string"
        -  },
        -  "tag": {
        -    "description": "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",
        -    "type": "string"
        -  },
        -  "time_range": {
        -    "description": "preset time ranges optional field if you specify date_from or date_to parameters, this field will be ignored when setting a task possible values for all type parameters: past_4_hours, past_day, past_7_days, past_30_days, past_90_days, past_12_months, past_5_years",
        -    "type": "string"
        -  },
        -  "type": {
        -    "description": "type of element",
        -    "type": "string"
        -  }
        -}
      • removedInput schema / properties / body / items / required
        Removed value: -[
        -  "keywords"
        -]
      • changedInput schema / properties / body / items / type
        Previous value: -"object"New value: +[
        +  "object",
        +  "null"
        +]
      • changedInput schema / required
        Previous value: -[
        -  "body"
        -]New value: +[]
      • addedOutput schema / x-fastmcp-wrap-result
        Added value: +true
    • Changedpost_dataforseo_keywords_trends_explore_live7 fields changed
      • addedInput schema / properties / body / example
        Added value: +[
        +  {
        +    "keywords": [
        +      "iphone 14",
        +      "samsung s23"
        +    ],
        +    "location_code": 2840
        +  }
        +]
      • addedInput schema / properties / body / items / anyOf
        Added value: +[
        +  {
        +    "example": [
        +      {
        +        "keywords": [
        +          "iphone 14",
        +          "samsung s23"
        +        ],
        +        "location_code": 2840
        +      }
        +    ],
        +    "properties": {
        +      "date_from": {
        +        "description": "<em>starting date of the time range</em><br>optional field<br>if you don't specify this field, the current day and month of the preceding year will be used by default<br>minimal value for the <code>web</code> type: <code>2004-01-01</code><br>minimal value for other types: <code>2008-01-01</code><br>date format: <code>\"yyyy-mm-dd\"</code><br>example:<br><code>\"2019-01-15\"</code>",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "date_to": {
        +        "description": "<em>ending date of the time range</em><br>optional field<br>if you don't specify this field, the today's date will be used by default<br>date format: <code>\"yyyy-mm-dd\"</code><br>example:<br><code>\"2019-01-15\"</code>",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "keywords": {
        +        "description": "<em>keywords</em><br><strong>required field</strong><br>the maximum number of keywords you can specify: 5<p>learn more about rules and limitations of <code>keyword</code> and <code>keywords</code> fields in DataForSEO APIs in this <a href=\"https://dataforseo.com/help-center/rules-and-limitations-of-keyword-and-keywords-fields-in-dataforseo-apis\" rel=\"noopener noreferrer\" target=\"_blank\">Help Center article</a>",
        +        "items": {
        +          "type": "string"
        +        },
        +        "type": "array"
        +      },
        +      "location_code": {
        +        "description": "<em>search engine location code</em><br>optional field<br>if you don't use this field, you will recieve global results<br><strong>if you use this field, you don't need to specify <code>location_name</code></strong><br>you can receive the list of available locations of the search engines with their <code>location_code</code> by making a separate request to <code>https://api.dataforseo.com/v3/keywords_data/dataforseo_trends/locations</code><br><strong>note that the data will be provided for the country the specified <code>location_code</code> belongs to;</strong><br>example:<br><code class=\"long-string\">2840</code>",
        +        "type": [
        +          "integer",
        +          "null"
        +        ]
        +      },
        +      "location_name": {
        +        "description": "<em>full name of search engine location</em><br>optional field<br>if you don't use this field, you will recieve global results<br><strong>if you use this field, you don't need to specify <code>location_code</code></strong><br>you can receive the list of available locations of the search engine with their <code>location_name</code> by making a separate request to <code>https://api.dataforseo.com/v3/keywords_data/dataforseo_trends/locations</code><br><strong>note that the data will be provided for the country the specified <code>location_name</code> belongs to;</strong><br>example:<br><code class=\"long-string\">United Kingdom</code>",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "tag": {
        +        "description": "<em>user-defined task identifier</em><br>optional field<br><em>the character limit is 255</em><br>you can use this parameter to identify the task and match it with the result<br>you will find the specified <code>tag</code> value in the <code>data</code> object of the response",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "time_range": {
        +        "description": "<em>preset time ranges</em><br>optional field<br>if you specify <code>date_from</code> or <code>date_to</code> parameters, this field will be ignored when setting a task<br><em>possible values for all <code>type</code> parameters:</em><br><code>past_4_hours</code>, <code>past_day</code>, <code>past_7_days</code>, <code>past_30_days</code>, <code>past_90_days</code>, <code>past_12_months</code>, <code>past_5_years</code>",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "type": {
        +        "description": "type of element",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      }
        +    },
        +    "type": "object"
        +  }
        +]
      • removedInput schema / properties / body / items / properties
        Removed value: -{
        -  "date_from": {
        -    "description": "starting date of the time range optional field if you don’t specify this field, the current day and month of the preceding year will be used by default minimal value for the web type: 2004-01-01 minimal value for other types: 2008-01-01 date format: \"yyyy-mm-dd\" example: \"2019-01-15\"",
        -    "type": "string"
        -  },
        -  "date_to": {
        -    "description": "ending date of the time range optional field if you don’t specify this field, the today’s date will be used by default date format: \"yyyy-mm-dd\" example: \"2019-01-15\"",
        -    "type": "string"
        -  },
        -  "keywords": {
        -    "description": "keywords required field the maximum number of keywords you can specify: 5 learn more about rules and limitations of keyword and keywords fields in DataForSEO APIs in this Help Center article",
        -    "items": {
        -      "type": "string"
        -    },
        -    "type": "array"
        -  },
        -  "location_code": {
        -    "description": "search engine location code optional field if you don’t use this field, you will recieve global results if you use this field, you don’t need to specify location_name you can receive the list of available locations of the search engines with their location_code by making a separate request to https://api.dataforseo.com/v3/keywords_data/dataforseo_trends/locations note that the data will be provided for the country the specified location_code belongs to; example: 2840",
        -    "type": "integer"
        -  },
        -  "location_name": {
        -    "description": "full name of search engine location optional field if you don’t use this field, you will recieve global results if you use this field, you don’t need to specify location_code you can receive the list of available locations of the search engine with their location_name by making a separate request to https://api.dataforseo.com/v3/keywords_data/dataforseo_trends/locations note that the data will be provided for the country the specified location_name belongs to; example: United Kingdom",
        -    "type": "string"
        -  },
        -  "tag": {
        -    "description": "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",
        -    "type": "string"
        -  },
        -  "time_range": {
        -    "description": "preset time ranges optional field if you specify date_from or date_to parameters, this field will be ignored when setting a task possible values for all type parameters: past_4_hours, past_day, past_7_days, past_30_days, past_90_days, past_12_months, past_5_years",
        -    "type": "string"
        -  },
        -  "type": {
        -    "description": "type of element",
        -    "type": "string"
        -  }
        -}
      • removedInput schema / properties / body / items / required
        Removed value: -[
        -  "keywords"
        -]
      • changedInput schema / properties / body / items / type
        Previous value: -"object"New value: +[
        +  "object",
        +  "null"
        +]
      • changedInput schema / required
        Previous value: -[
        -  "body"
        -]New value: +[]
      • addedOutput schema / x-fastmcp-wrap-result
        Added value: +true
    • Changedpost_dataforseo_keywords_trends_merged_data_live7 fields changed
      • addedInput schema / properties / body / example
        Added value: +[
        +  {
        +    "date_from": "2023-01-01",
        +    "date_to": "2024-01-01",
        +    "keywords": [
        +      "rugby",
        +      "cricket"
        +    ],
        +    "location_name": "United States",
        +    "type": "web"
        +  }
        +]
      • addedInput schema / properties / body / items / anyOf
        Added value: +[
        +  {
        +    "example": [
        +      {
        +        "date_from": "2023-01-01",
        +        "date_to": "2024-01-01",
        +        "keywords": [
        +          "rugby",
        +          "cricket"
        +        ],
        +        "location_name": "United States",
        +        "type": "web"
        +      }
        +    ],
        +    "properties": {
        +      "date_from": {
        +        "description": "<em>starting date of the time range</em><br>optional field<br>if you don't specify this field, the current day and month of the preceding year will be used by default<br>minimal value for the <code>web</code> type: <code>2004-01-01</code><br>minimal value for other types: <code>2008-01-01</code><br>date format: <code>\"yyyy-mm-dd\"</code><br>example:<br><code>\"2019-01-15\"</code>",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "date_to": {
        +        "description": "<em>ending date of the time range</em><br>optional field<br>if you don't specify this field, the today's date will be used by default<br>date format: <code>\"yyyy-mm-dd\"</code><br>example:<br><code>\"2019-01-15\"</code>",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "keywords": {
        +        "description": "<em>keywords</em><br><strong>required field</strong><br>the maximum number of keywords you can specify: 5<br>avoid symbols and special characters (e.g., UTF symbols, emojis);<br>specifying non-Latin characters, you’ll get data for the countries where they are used<p>learn more about rules and limitations of <code>keyword</code> and <code>keywords</code> fields in DataForSEO APIs in this <a href=\"https://dataforseo.com/help-center/rules-and-limitations-of-keyword-and-keywords-fields-in-dataforseo-apis\" rel=\"noopener noreferrer\" target=\"_blank\">Help Center article</a>",
        +        "items": {
        +          "type": "string"
        +        },
        +        "type": "array"
        +      },
        +      "location_code": {
        +        "description": "<em>search engine location code</em><br>optional field<br>if you don't use this field, you will recieve global results<br><strong>if you use this field, you don't need to specify <code>location_name</code></strong><br>you can receive the list of available locations of the search engines with their <code>location_code</code> by making a separate request to <code>https://api.dataforseo.com/v3/keywords_data/dataforseo_trends/locations</code><br><strong>note that the data will be provided for the country the specified <code>location_code</code> belongs to;</strong><br>example:<br><code class=\"long-string\">2840</code>",
        +        "type": [
        +          "integer",
        +          "null"
        +        ]
        +      },
        +      "location_name": {
        +        "description": "<em>full name of search engine location</em><br>optional field<br>if you don't use this field, you will recieve global results<br><strong>if you use this field, you don't need to specify <code>location_code</code></strong><br>you can receive the list of available locations of the search engine with their <code>location_name</code> by making a separate request to <code>https://api.dataforseo.com/v3/keywords_data/dataforseo_trends/locations</code><br><strong>note that the data will be provided for the country the specified <code>location_name</code> belongs to;</strong><br>example:<br><code class=\"long-string\">United Kingdom</code>",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "tag": {
        +        "description": "<em>user-defined task identifier</em><br>optional field<br><em>the character limit is 255</em><br>you can use this parameter to identify the task and match it with the result<br>you will find the specified <code>tag</code> value in the <code>data</code> object of the response",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "time_range": {
        +        "description": "<em>preset time ranges</em><br>optional field<br>if you specify <code>date_from</code> or <code>date_to</code> parameters, this field will be ignored when setting a task<br><em>possible values for all <code>type</code> parameters:</em><br><code>past_4_hours</code>, <code>past_day</code>, <code>past_7_days</code>, <code>past_30_days</code>, <code>past_90_days</code>, <code>past_12_months</code>, <code>past_5_years</code>",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "type": {
        +        "description": "type of element",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      }
        +    },
        +    "type": "object"
        +  }
        +]
      • removedInput schema / properties / body / items / properties
        Removed value: -{
        -  "date_from": {
        -    "description": "starting date of the time range optional field if you don’t specify this field, the current day and month of the preceding year will be used by default minimal value for the web type: 2004-01-01 minimal value for other types: 2008-01-01 date format: \"yyyy-mm-dd\" example: \"2019-01-15\"",
        -    "type": "string"
        -  },
        -  "date_to": {
        -    "description": "ending date of the time range optional field if you don’t specify this field, the today’s date will be used by default date format: \"yyyy-mm-dd\" example: \"2019-01-15\"",
        -    "type": "string"
        -  },
        -  "keywords": {
        -    "description": "keywords required field the maximum number of keywords you can specify: 5 avoid symbols and special characters (e.g., UTF symbols, emojis); specifying non-Latin characters, you’ll get data for the countries where they are used learn more about rules and limitations of keyword and keywords fields in DataForSEO APIs in this Help Center article",
        -    "items": {
        -      "type": "string"
        -    },
        -    "type": "array"
        -  },
        -  "location_code": {
        -    "description": "search engine location code optional field if you don’t use this field, you will recieve global results if you use this field, you don’t need to specify location_name you can receive the list of available locations of the search engines with their location_code by making a separate request to https://api.dataforseo.com/v3/keywords_data/dataforseo_trends/locations note that the data will be provided for the country the specified location_code belongs to; example: 2840",
        -    "type": "integer"
        -  },
        -  "location_name": {
        -    "description": "full name of search engine location optional field if you don’t use this field, you will recieve global results if you use this field, you don’t need to specify location_code you can receive the list of available locations of the search engine with their location_name by making a separate request to https://api.dataforseo.com/v3/keywords_data/dataforseo_trends/locations note that the data will be provided for the country the specified location_name belongs to; example: United Kingdom",
        -    "type": "string"
        -  },
        -  "tag": {
        -    "description": "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",
        -    "type": "string"
        -  },
        -  "time_range": {
        -    "description": "preset time ranges optional field if you specify date_from or date_to parameters, this field will be ignored when setting a task possible values for all type parameters: past_4_hours, past_day, past_7_days, past_30_days, past_90_days, past_12_months, past_5_years",
        -    "type": "string"
        -  },
        -  "type": {
        -    "description": "type of element",
        -    "type": "string"
        -  }
        -}
      • removedInput schema / properties / body / items / required
        Removed value: -[
        -  "keywords"
        -]
      • changedInput schema / properties / body / items / type
        Previous value: -"object"New value: +[
        +  "object",
        +  "null"
        +]
      • changedInput schema / required
        Previous value: -[
        -  "body"
        -]New value: +[]
      • addedOutput schema / x-fastmcp-wrap-result
        Added value: +true
    • Changedpost_dataforseo_keywords_trends_subregion_interests_live7 fields changed
      • addedInput schema / properties / body / example
        Added value: +[
        +  {
        +    "date_from": "2023-01-01",
        +    "date_to": "2024-01-01",
        +    "keywords": [
        +      "rugby",
        +      "cricket"
        +    ],
        +    "location_name": "United States",
        +    "type": "web"
        +  }
        +]
      • addedInput schema / properties / body / items / anyOf
        Added value: +[
        +  {
        +    "example": [
        +      {
        +        "date_from": "2023-01-01",
        +        "date_to": "2024-01-01",
        +        "keywords": [
        +          "rugby",
        +          "cricket"
        +        ],
        +        "location_name": "United States",
        +        "type": "web"
        +      }
        +    ],
        +    "properties": {
        +      "date_from": {
        +        "description": "<em>starting date of the time range</em><br>optional field<br>if you don't specify this field, the current day and month of the preceding year will be used by default<br>minimal value for the <code>web</code> type: <code>2004-01-01</code><br>minimal value for other types: <code>2008-01-01</code><br>date format: <code>\"yyyy-mm-dd\"</code><br>example:<br><code>\"2019-01-15\"</code>",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "date_to": {
        +        "description": "<em>ending date of the time range</em><br>optional field<br>if you don't specify this field, the today's date will be used by default<br>date format: <code>\"yyyy-mm-dd\"</code><br>example:<br><code>\"2019-01-15\"</code>",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "keywords": {
        +        "description": "<em>keywords</em><br><strong>required field</strong><br>the maximum number of keywords you can specify: 5<br>avoid symbols and special characters (e.g., UTF symbols, emojis);<br>specifying non-Latin characters, you’ll get data for the countries where they are used<p>learn more about rules and limitations of <code>keyword</code> and <code>keywords</code> fields in DataForSEO APIs in this <a href=\"https://dataforseo.com/help-center/rules-and-limitations-of-keyword-and-keywords-fields-in-dataforseo-apis\" rel=\"noopener noreferrer\" target=\"_blank\">Help Center article</a>",
        +        "items": {
        +          "type": "string"
        +        },
        +        "type": "array"
        +      },
        +      "location_code": {
        +        "description": "<em>search engine location code</em><br>optional field<br>if you don't use this field, you will recieve global results<br><strong>if you use this field, you don't need to specify <code>location_name</code></strong><br>you can receive the list of available locations of the search engines with their <code>location_code</code> by making a separate request to <code>https://api.dataforseo.com/v3/keywords_data/dataforseo_trends/locations</code><br><strong>note that the data will be provided for the country the specified <code>location_code</code> belongs to;</strong><br>example:<br><code class=\"long-string\">2840</code>",
        +        "type": [
        +          "integer",
        +          "null"
        +        ]
        +      },
        +      "location_name": {
        +        "description": "<em>full name of search engine location</em><br>optional field<br>if you don't use this field, you will recieve global results<br><strong>if you use this field, you don't need to specify <code>location_code</code></strong><br>you can receive the list of available locations of the search engine with their <code>location_name</code> by making a separate request to <code>https://api.dataforseo.com/v3/keywords_data/dataforseo_trends/locations</code><br><strong>note that the data will be provided for the country the specified <code>location_name</code> belongs to;</strong><br>example:<br><code class=\"long-string\">United Kingdom</code>",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "tag": {
        +        "description": "<em>user-defined task identifier</em><br>optional field<br><em>the character limit is 255</em><br>you can use this parameter to identify the task and match it with the result<br>you will find the specified <code>tag</code> value in the <code>data</code> object of the response",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "time_range": {
        +        "description": "<em>preset time ranges</em><br>optional field<br>if you specify <code>date_from</code> or <code>date_to</code> parameters, this field will be ignored when setting a task<br><em>possible values for all <code>type</code> parameters:</em><br><code>past_4_hours</code>, <code>past_day</code>, <code>past_7_days</code>, <code>past_30_days</code>, <code>past_90_days</code>, <code>past_12_months</code>, <code>past_5_years</code>",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "type": {
        +        "description": "type of element",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      }
        +    },
        +    "type": "object"
        +  }
        +]
      • removedInput schema / properties / body / items / properties
        Removed value: -{
        -  "date_from": {
        -    "description": "starting date of the time range optional field if you don’t specify this field, the current day and month of the preceding year will be used by default minimal value for the web type: 2004-01-01 minimal value for other types: 2008-01-01 date format: \"yyyy-mm-dd\" example: \"2019-01-15\"",
        -    "type": "string"
        -  },
        -  "date_to": {
        -    "description": "ending date of the time range optional field if you don’t specify this field, the today’s date will be used by default date format: \"yyyy-mm-dd\" example: \"2019-01-15\"",
        -    "type": "string"
        -  },
        -  "keywords": {
        -    "description": "keywords required field the maximum number of keywords you can specify: 5 avoid symbols and special characters (e.g., UTF symbols, emojis); specifying non-Latin characters, you’ll get data for the countries where they are used learn more about rules and limitations of keyword and keywords fields in DataForSEO APIs in this Help Center article",
        -    "items": {
        -      "type": "string"
        -    },
        -    "type": "array"
        -  },
        -  "location_code": {
        -    "description": "search engine location code optional field if you don’t use this field, you will recieve global results if you use this field, you don’t need to specify location_name you can receive the list of available locations of the search engines with their location_code by making a separate request to https://api.dataforseo.com/v3/keywords_data/dataforseo_trends/locations note that the data will be provided for the country the specified location_code belongs to; example: 2840",
        -    "type": "integer"
        -  },
        -  "location_name": {
        -    "description": "full name of search engine location optional field if you don’t use this field, you will recieve global results if you use this field, you don’t need to specify location_code you can receive the list of available locations of the search engine with their location_name by making a separate request to https://api.dataforseo.com/v3/keywords_data/dataforseo_trends/locations note that the data will be provided for the country the specified location_name belongs to; example: United Kingdom",
        -    "type": "string"
        -  },
        -  "tag": {
        -    "description": "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",
        -    "type": "string"
        -  },
        -  "time_range": {
        -    "description": "preset time ranges optional field if you specify date_from or date_to parameters, this field will be ignored when setting a task possible values for all type parameters: past_4_hours, past_day, past_7_days, past_30_days, past_90_days, past_12_months, past_5_years",
        -    "type": "string"
        -  },
        -  "type": {
        -    "description": "type of element",
        -    "type": "string"
        -  }
        -}
      • removedInput schema / properties / body / items / required
        Removed value: -[
        -  "keywords"
        -]
      • changedInput schema / properties / body / items / type
        Previous value: -"object"New value: +[
        +  "object",
        +  "null"
        +]
      • changedInput schema / required
        Previous value: -[
        -  "body"
        -]New value: +[]
      • addedOutput schema / x-fastmcp-wrap-result
        Added value: +true
    • Changedpost_dataforseo_labs_google_bulk_keyword_difficulty_live8 fields changed
      • addedInput schema / properties / body / example
        Added value: +[
        +  {
        +    "keywords": [
        +      "dentist new york",
        +      "pizza brooklyn",
        +      "car dealer los angeles"
        +    ],
        +    "language_code": "en",
        +    "location_code": 2840
        +  }
        +]
      • removedInput schema / properties / body / items / allOf
        Removed value: -[
        -  {
        -    "anyOf": [
        -      {
        -        "required": [
        -          "location_name"
        -        ]
        -      },
        -      {
        -        "required": [
        -          "location_code"
        -        ]
        -      }
        -    ]
        -  },
        -  {
        -    "anyOf": [
        -      {
        -        "required": [
        -          "language_name"
        -        ]
        -      },
        -      {
        -        "required": [
        -          "language_code"
        -        ]
        -      }
        -    ]
        -  }
        -]
      • addedInput schema / properties / body / items / anyOf
        Added value: +[
        +  {
        +    "example": [
        +      {
        +        "keywords": [
        +          "dentist new york",
        +          "pizza brooklyn",
        +          "car dealer los angeles"
        +        ],
        +        "language_code": "en",
        +        "location_code": 2840
        +      }
        +    ],
        +    "properties": {
        +      "keywords": {
        +        "description": "<em>target keywords</em><br><strong>required field</strong><br>UTF-8 encoding<br>maximum number of keywords you can specify in this array: 1000<br>the keywords will be converted to lowercase format<p>learn more about rules and limitations of <code>keyword</code> and <code>keywords</code> fields in DataForSEO APIs in this <a href=\"https://dataforseo.com/help-center/rules-and-limitations-of-keyword-and-keywords-fields-in-dataforseo-apis\" rel=\"noopener noreferrer\" target=\"_blank\">Help Center article</a>",
        +        "items": {
        +          "type": "string"
        +        },
        +        "type": "array"
        +      },
        +      "language_code": {
        +        "description": "<em>language code</em><br><strong>required field if don't specify <code>language_name</code></strong><br>you can receive the list of available languages with their <code>language_code</code> by making a separate request to the <br><code>https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages</code><br>example:<br><code class=\"long-string\">en</code>",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "language_name": {
        +        "description": "<em>full name of the language</em><br><strong>required field if don't specify <code>language_code</code></strong><br>you can receive the list of available languages with their <code>language_name</code> by making a separate request to the <br><code>https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages</code><br>example:<br><code class=\"long-string\">English</code>",
        +        "type": "string"
        +      },
        +      "location_code": {
        +        "description": "<em>location code</em><br><strong>required field if don't specify <code>location_name</code></strong><br>you can receive the list of available locations with their <code>location_code</code> by making a separate request to the <br><code>https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages</code><br>example:<br><code class=\"long-string\">2840</code>",
        +        "type": "integer"
        +      },
        +      "location_name": {
        +        "description": "<em>full name of the location</em><br><strong>required field if don't specify <code>location_code</code></strong><br>you can receive the list of available locations with their <code>location_name</code> by making a separate request to the <br><code>https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages</code><br>example:<br><code class=\"long-string\">United Kingdom</code>",
        +        "type": "string"
        +      },
        +      "tag": {
        +        "description": "<em>user-defined task identifier</em><br>optional field<br><em>the character limit is 255</em><br>you can use this parameter to identify the task and match it with the result<br>you will find the specified <code>tag</code> value in the <code>data</code> object of the response",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      }
        +    },
        +    "type": "object"
        +  }
        +]
      • removedInput schema / properties / body / items / properties
        Removed value: -{
        -  "keywords": {
        -    "description": "target keywords required field UTF-8 encoding maximum number of keywords you can specify in this array: 1000 the keywords will be converted to lowercase format learn more about rules and limitations of keyword and keywords fields in DataForSEO APIs in this Help Center article",
        -    "items": {
        -      "type": "string"
        -    },
        -    "type": "array"
        -  },
        -  "language_code": {
        -    "description": "language code required field if don’t specify language_name you can receive the list of available languages with their language_code by making a separate request to the https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages example: en",
        -    "type": "string"
        -  },
        -  "language_name": {
        -    "description": "full name of the language required field if don’t specify language_code you can receive the list of available languages with their language_name by making a separate request to the https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages example: English",
        -    "type": "string"
        -  },
        -  "location_code": {
        -    "description": "location code required field if don’t specify location_name you can receive the list of available locations with their location_code by making a separate request to the https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages example: 2840",
        -    "type": "integer"
        -  },
        -  "location_name": {
        -    "description": "full name of the location required field if don’t specify location_code you can receive the list of available locations with their location_name by making a separate request to the https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages example: United Kingdom",
        -    "type": "string"
        -  },
        -  "tag": {
        -    "description": "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",
        -    "type": "string"
        -  }
        -}
      • removedInput schema / properties / body / items / required
        Removed value: -[
        -  "keywords"
        -]
      • changedInput schema / properties / body / items / type
        Previous value: -"object"New value: +[
        +  "object",
        +  "null"
        +]
      • changedInput schema / required
        Previous value: -[
        -  "body"
        -]New value: +[]
      • addedOutput schema / x-fastmcp-wrap-result
        Added value: +true
    • Changedpost_dataforseo_labs_google_categories_for_kw_live8 fields changed
      • addedInput schema / properties / body / example
        Added value: +[
        +  {
        +    "keywords": [
        +      "dentist new york",
        +      "pizza brooklyn",
        +      "car dealer los angeles"
        +    ],
        +    "language_code": "en"
        +  }
        +]
      • removedInput schema / properties / body / items / allOf
        Removed value: -[
        -  {
        -    "anyOf": [
        -      {
        -        "required": [
        -          "language_name"
        -        ]
        -      },
        -      {
        -        "required": [
        -          "language_code"
        -        ]
        -      }
        -    ]
        -  }
        -]
      • addedInput schema / properties / body / items / anyOf
        Added value: +[
        +  {
        +    "example": [
        +      {
        +        "keywords": [
        +          "dentist new york",
        +          "pizza brooklyn",
        +          "car dealer los angeles"
        +        ],
        +        "language_code": "en"
        +      }
        +    ],
        +    "properties": {
        +      "keywords": {
        +        "description": "<em>target keywords</em><br><strong>required field</strong><br>UTF-8 encoding<br>maximum number of keywords you can specify in this array: 1000<br>the keywords will be converted to lowercase format<p>learn more about rules and limitations of <code>keyword</code> and <code>keywords</code> fields in DataForSEO APIs in this <a href=\"https://dataforseo.com/help-center/rules-and-limitations-of-keyword-and-keywords-fields-in-dataforseo-apis\" rel=\"noopener noreferrer\" target=\"_blank\">Help Center article</a>",
        +        "items": {
        +          "type": "string"
        +        },
        +        "type": "array"
        +      },
        +      "language_code": {
        +        "description": "<em>language code</em><br><strong>required field if don't specify <code>language_name</code></strong><br>you can receive the list of available languages with their <code>language_code</code> by making a separate request to the <br><code>https://api.dataforseo.com/v3/dataforseo_labs/google/categories_for_keywords/languages</code><br>example:<br><code class=\"long-string\">en</code>",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "language_name": {
        +        "description": "<em>full name of the language</em><br><strong>required field if don't specify <code>language_code</code></strong><br>you can receive the list of available languages with their <code>language_name</code> by making a separate request to the <br><code>https://api.dataforseo.com/v3/dataforseo_labs/google/categories_for_keywords/languages</code><br>example:<br><code class=\"long-string\">English</code>",
        +        "type": "string"
        +      },
        +      "tag": {
        +        "description": "<em>user-defined task identifier</em><br>optional field<br><em>the character limit is 255</em><br>you can use this parameter to identify the task and match it with the result<br>you will find the specified <code>tag</code> value in the <code>data</code> object of the response",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      }
        +    },
        +    "type": "object"
        +  }
        +]
      • removedInput schema / properties / body / items / properties
        Removed value: -{
        -  "keywords": {
        -    "description": "target keywords required field UTF-8 encoding maximum number of keywords you can specify in this array: 1000 the keywords will be converted to lowercase format learn more about rules and limitations of keyword and keywords fields in DataForSEO APIs in this Help Center article",
        -    "items": {
        -      "type": "string"
        -    },
        -    "type": "array"
        -  },
        -  "language_code": {
        -    "description": "language code required field if don’t specify language_name you can receive the list of available languages with their language_code by making a separate request to the https://api.dataforseo.com/v3/dataforseo_labs/google/categories_for_keywords/languages example: en",
        -    "type": "string"
        -  },
        -  "language_name": {
        -    "description": "full name of the language required field if don’t specify language_code you can receive the list of available languages with their language_name by making a separate request to the https://api.dataforseo.com/v3/dataforseo_labs/google/categories_for_keywords/languages example: English",
        -    "type": "string"
        -  },
        -  "tag": {
        -    "description": "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",
        -    "type": "string"
        -  }
        -}
      • removedInput schema / properties / body / items / required
        Removed value: -[
        -  "keywords"
        -]
      • changedInput schema / properties / body / items / type
        Previous value: -"object"New value: +[
        +  "object",
        +  "null"
        +]
      • changedInput schema / required
        Previous value: -[
        -  "body"
        -]New value: +[]
      • addedOutput schema / x-fastmcp-wrap-result
        Added value: +true
    • Changedpost_dataforseo_labs_google_historical_keyword_data_live8 fields changed
      • addedInput schema / properties / body / example
        Added value: +[
        +  {
        +    "keywords": [
        +      "iphone"
        +    ],
        +    "language_code": "en",
        +    "location_code": 2840
        +  }
        +]
      • removedInput schema / properties / body / items / allOf
        Removed value: -[
        -  {
        -    "anyOf": [
        -      {
        -        "required": [
        -          "location_name"
        -        ]
        -      },
        -      {
        -        "required": [
        -          "location_code"
        -        ]
        -      }
        -    ]
        -  },
        -  {
        -    "anyOf": [
        -      {
        -        "required": [
        -          "language_name"
        -        ]
        -      },
        -      {
        -        "required": [
        -          "language_code"
        -        ]
        -      }
        -    ]
        -  }
        -]
      • addedInput schema / properties / body / items / anyOf
        Added value: +[
        +  {
        +    "example": [
        +      {
        +        "keywords": [
        +          "iphone"
        +        ],
        +        "language_code": "en",
        +        "location_code": 2840
        +      }
        +    ],
        +    "properties": {
        +      "keywords": {
        +        "description": "<em>keywords</em><br><strong>required field</strong><br>The maximum number of keywords you can specify: 700<br>The maximum number of characters for each keyword: 80<br>The maximum number of words for each keyword phrase: 10<br>the specified keywords will be converted to lowercase format, data will be provided in a separate array<p><strong>note</strong> that if some of the keywords specified in this array are omitted in the results you receive, then our database doesn't contain such keywords and cannot return data on them<br>you will not be charged for the keywords omitted in the results<p>learn more about rules and limitations of <code>keyword</code> and <code>keywords</code> fields in DataForSEO APIs in this <a href=\"https://dataforseo.com/help-center/rules-and-limitations-of-keyword-and-keywords-fields-in-dataforseo-apis\" rel=\"noopener noreferrer\" target=\"_blank\">Help Center article</a>",
        +        "items": {
        +          "type": "string"
        +        },
        +        "type": "array"
        +      },
        +      "language_code": {
        +        "description": "<em>language code</em><br><strong>required field if you don't specify</strong> <code>language_name</code><br><strong>Note:</strong> it is required to specify either <code>language_name</code> or <code>language_code</code><br>you can receive the list of available locations with their <code>language_code</code> by making a separate request to the <br><code>https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages</code><br>example:<br><code class=\"long-string\">en</code>",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "language_name": {
        +        "description": "<em>full name of the language</em><br><strong>required field if you don't specify</strong> <code>language_code</code><br><strong>Note:</strong> it is required to specify either <code>language_name</code> or <code>language_code</code><br>you can receive the list of available locations with their <code>language_name</code> by making a separate request to the <br><code>https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages</code><br>example:<br><code class=\"long-string\">English</code>",
        +        "type": "string"
        +      },
        +      "location_code": {
        +        "description": "<em>location code</em><br><strong>required field if you don't specify</strong> <code>location_name</code><br><strong>Note:</strong> it is required to specify either <code>location_name</code> or <code>location_code</code><br>you can receive the list of available locations with their <code>location_code</code> by making a separate request to the <br><code>https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages</code><br>example:<br><code class=\"long-string\">2840</code>",
        +        "type": "integer"
        +      },
        +      "location_name": {
        +        "description": "<em>full name of the location</em><br><strong>required field if you don't specify</strong> <code>location_code</code><br><strong>Note:</strong> it is required to specify either <code>location_name</code> or <code>location_code</code><br>you can receive the list of available locations with their <code>location_name</code> by making a separate request to the <br><code>https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages</code><br>example:<br><code class=\"long-string\">United Kingdom</code>",
        +        "type": "string"
        +      },
        +      "tag": {
        +        "description": "<em>user-defined task identifier</em><br>optional field<br><em>the character limit is 255</em><br>you can use this parameter to identify the task and match it with the result<br>you will find the specified <code>tag</code> value in the <code>data</code> object of the response",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      }
        +    },
        +    "type": "object"
        +  }
        +]
      • removedInput schema / properties / body / items / properties
        Removed value: -{
        -  "keywords": {
        -    "description": "keywords required field The maximum number of keywords you can specify: 700 The maximum number of characters for each keyword: 80 The maximum number of words for each keyword phrase: 10 the specified keywords will be converted to lowercase format, data will be provided in a separate array note that if some of the keywords specified in this array are omitted in the results you receive, then our database doesn’t contain such keywords and cannot return data on them you will not be charged for the keywords omitted in the results learn more about rules and limitations of keyword and keywords fields in DataForSEO APIs in this Help Center article",
        -    "items": {
        -      "type": "string"
        -    },
        -    "type": "array"
        -  },
        -  "language_code": {
        -    "description": "language code required field if you don’t specify language_name Note: it is required to specify either language_name or language_code you can receive the list of available locations with their language_code by making a separate request to the https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages example: en",
        -    "type": "string"
        -  },
        -  "language_name": {
        -    "description": "full name of the language required field if you don’t specify language_code Note: it is required to specify either language_name or language_code you can receive the list of available locations with their language_name by making a separate request to the https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages example: English",
        -    "type": "string"
        -  },
        -  "location_code": {
        -    "description": "location code required field if you don’t specify location_name Note: it is required to specify either location_name or location_code you can receive the list of available locations with their location_code by making a separate request to the https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages example: 2840",
        -    "type": "integer"
        -  },
        -  "location_name": {
        -    "description": "full name of the location required field if you don’t specify location_code Note: it is required to specify either location_name or location_code you can receive the list of available locations with their location_name by making a separate request to the https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages example: United Kingdom",
        -    "type": "string"
        -  },
        -  "tag": {
        -    "description": "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",
        -    "type": "string"
        -  }
        -}
      • removedInput schema / properties / body / items / required
        Removed value: -[
        -  "keywords"
        -]
      • changedInput schema / properties / body / items / type
        Previous value: -"object"New value: +[
        +  "object",
        +  "null"
        +]
      • changedInput schema / required
        Previous value: -[
        -  "body"
        -]New value: +[]
      • addedOutput schema / x-fastmcp-wrap-result
        Added value: +true
    • Changedpost_dataforseo_labs_google_keyword_ideas_live6 fields changed
      • addedInput schema / properties / body / example
        Added value: +[
        +  {
        +    "include_serp_info": true,
        +    "keywords": [
        +      "phone",
        +      "watch"
        +    ],
        +    "language_code": "en",
        +    "limit": 3,
        +    "location_code": 2840
        +  }
        +]
      • changedInput schema / properties / body / items / anyOf
        Previous value: -[
        -  {
        -    "allOf": [
        -      {
        -        "anyOf": [
        -          {
        -            "required": [
        -              "location_name"
        -            ]
        -          },
        -          {
        -            "required": [
        -              "location_code"
        -            ]
        -          }
        -        ]
        -      }
        -    ],
        -    "required": [
        -      "keywords"
        -    ]
        -  },
        -  {
        -    "required": [
        -      "offset_token"
        -    ]
        -  }
        -]New value: +[
        +  {
        +    "example": [
        +      {
        +        "include_serp_info": true,
        +        "keywords": [
        +          "phone",
        +          "watch"
        +        ],
        +        "language_code": "en",
        +        "limit": 3,
        +        "location_code": 2840
        +      }
        +    ],
        +    "properties": {
        +      "closely_variants": {
        +        "description": "<em>search mode</em><br>optional field<br>if set to_<code class=\"prettyprint\">true</code> the results will be based on the phrase-match search algorithm<br>if set to <code class=\"prettyprint\">false</code> the results will be based on the broad-match search algorithm<br>default value: <code>false</code>n",
        +        "type": [
        +          "boolean",
        +          "null"
        +        ]
        +      },
        +      "filters": {
        +        "description": "<em>array of results filtering parameters</em><br>optional field<br><strong>you can add several filters at once (8 filters maximum)</strong><br>you should set a logical operator <code>and</code>, <code>or</code> between the conditions<br>the following operators are supported:<br><code>regex</code>, <code>not_regex</code>, <code>&lt;</code>, <code>&lt;=</code>, <code>&gt;</code>, <code>&gt;=</code>, <code>=</code>, <code>&lt;&gt;</code>, <code>in</code>, <code>not_in</code>, <code>match</code>, <code>not_match</code>, <code>ilike</code>, <code>not_ilike</code>, <code>like</code>, <code>not_like</code><br>you can use the <code>%</code> operator with <code>like</code> and <code>not_like</code>,as well as <code>ilike</code>, <code>not_ilike</code> to match any string of zero or more characters<br><strong>note that you can not filter the results by <code>relevance</code></strong><br>example:<br><code>[\"keyword_info.search_volume\",\"&gt;\",0]</code><p><code>[[\"keyword_info.search_volume\",\"in\",[0,1000]],<br>\"and\",<br>[\"keyword_info.competition_level\",\"=\",\"LOW\"]]</code><p><code>[[\"keyword_info.search_volume\",\"&gt;\",100],<br>\"and\",<br>[[\"keyword_info.cpc\",\"&lt;\",0.5],<br>\"or\",<p>[\"keyword_info.high_top_of_page_bid\",\"&lt;=\",0.5]]]</code><br>for more information about filters, please refer to <a href=\"/v3/dataforseo_labs/filters\" target=\"_blank\" rel=\"noopener noreferrer\">Dataforseo Labs - Filters</a> or this <a href=\"https://dataforseo.com/help-center/how-to-use-filters-in-dataforseo-labs-api\" rel=\"noopener noreferrer\" target=\"_blank\">help center guide</a>",
        +        "items": {
        +          "type": [
        +            "object",
        +            "null"
        +          ]
        +        },
        +        "type": [
        +          "array",
        +          "null"
        +        ]
        +      },
        +      "ignore_synonyms": {
        +        "description": "<em>ignore highly similar keywords</em><br>optional field<br>if set to_<code class=\"prettyprint\">true</code> only core keywords will be returned, all highly similar keywords will be excluded;  <br>default value: <code>false</code>n",
        +        "type": [
        +          "boolean",
        +          "null"
        +        ]
        +      },
        +      "include_clickstream_data": {
        +        "description": "<em>include or exclude data from clickstream-based metrics in the result</em><br>optional field<br>if the parameter is set to <code>true</code>, you will receive <code>clickstream_keyword_info</code>, <code>keyword_info_normalized_with_clickstream</code>, and <code>keyword_info_normalized_with_bing</code> fields in the response<br>default value: <code>false</code><br>with this parameter enabled, you will be charged double the price for the request<p>learn more about how clickstream-based metrics are calculated in this <a href=\"https://dataforseo.com/help-center/what-are-clickstream-based-metrics-and-how-do-we-calculate-them\" rel=\"noopener noreferrer\" target=\"_blank\">help center article</a>",
        +        "type": [
        +          "boolean",
        +          "null"
        +        ]
        +      },
        +      "include_serp_info": {
        +        "description": "<em>include data from SERP for each keyword</em><br>optional field<br>if set to <code>true</code>, we will return a <code>serp_info</code> array containing SERP data (number of search results, relevant URL, and SERP features) for every keyword in the response<br>default value: <code>false</code>",
        +        "type": [
        +          "boolean",
        +          "null"
        +        ]
        +      },
        +      "keywords": {
        +        "description": "<em>keywords</em><br><strong>required field</strong><br>UTF-8 encoding<br>The maximum number of keywords you can specify: 200.<br>The keywords will be converted to lowercase format<p>learn more about rules and limitations of <code>keyword</code> and <code>keywords</code> fields in DataForSEO APIs in this <a href=\"https://dataforseo.com/help-center/rules-and-limitations-of-keyword-and-keywords-fields-in-dataforseo-apis\" rel=\"noopener noreferrer\" target=\"_blank\">Help Center article</a>",
        +        "items": {
        +          "type": "string"
        +        },
        +        "type": "array"
        +      },
        +      "language_code": {
        +        "description": "<em>language code</em><br>optional field<br>if you use this field, you don't need to specify <code>language_name</code><br>you can receive the list of available languages with their <code>language_code</code> by making a separate request to the<br><code>https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages</code><br>example:<br><code class=\"long-string\">en</code><br><strong>Note:</strong> if omitted, results default to the language with the most keyword records in the specified location;<br>refer to the <code>available_languages.keywords</code> field of the <a href=\"https://docs.dataforseo.com/v3/dataforseo_labs/locations_and_languages\" target=\"_blank\">Locations and Languages endpoint</a> to determine the default language",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "language_name": {
        +        "description": "<em>full name of the language</em><br>optional field<br>if you use this field, you don't need to specify <code>language_code</code><br>you can receive the list of available languages with their <code>language_name</code> by making a separate request to the<br><code>https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages</code><br>example:<br><code class=\"long-string\">English</code><br><strong>Note:</strong> if omitted, results default to the language with the most keyword records in the specified location;<br>refer to the <code>available_languages.keywords</code> field of the <a href=\"https://docs.dataforseo.com/v3/dataforseo_labs/locations_and_languages\" target=\"_blank\">Locations and Languages endpoint</a> to determine the default language",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "limit": {
        +        "description": "<em>the maximum number of keywords in the results array</em><br>optional field<br>default value: <code>700</code><br>maximum value: <code>1000</code>",
        +        "type": [
        +          "integer",
        +          "null"
        +        ]
        +      },
        +      "location_code": {
        +        "description": "<em>unique location identifier</em><br><strong>required field if you don't specify</strong> <code>location_name</code><br><strong>Note:</strong> it is required to specify either <code>location_name</code> or <code>location_code</code><br>you can receive the list of available locations with their <code>location_code</code> by making a separate request to the <br><code>https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages</code><br>example:<br><code class=\"long-string\">2840</code>",
        +        "type": "integer"
        +      },
        +      "location_name": {
        +        "description": "<em>full name of the location</em><br><strong>required field if you don't specify</strong> <code>location_code</code><br><strong>Note:</strong> it is required to specify either <code>location_name</code> or <code>location_code</code><br>you can receive the list of available locations with their <code>location_name</code> by making a separate request to the<br><code>https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages</code><br>example:<br><code class=\"long-string\">United Kingdom</code>",
        +        "type": "string"
        +      },
        +      "offset": {
        +        "description": "<em>offset in the results array of returned keywords</em><br>optional field<br>default value: <code>0</code><br>if you specify the <code>10</code> value, the first ten keywords in the results array will be omitted and the data will be provided for the successive keywords<br><strong>Note:</strong> we recommend using this parameter only when retrieving up to 10,000 results<br>for retrieving over 10,000 results, use the <code>offset_token</code> instead.",
        +        "type": [
        +          "integer",
        +          "null"
        +        ]
        +      },
        +      "offset_token": {
        +        "description": "<em>offset token for subsequent requests</em><br>optional field<br>provided in the identical filed of the response to each request;<br>use this parameter to avoid timeouts while trying to obtain over 10,000 results in a single request;<br>by specifying the unique <code>offset_token</code> value from the response array, you will get the subsequent results of the initial task;<br><code>offset_token</code> values are unique for each subsequent task <br><strong>Note:</strong> if the <code>offset_token</code> is specified in the request, all other parameters except <code>limit</code> will not be taken into account when processing a task.<br>learn more about this parameter on our <a href=\"https://dataforseo.com/help-center/what-is-the-difference-between-the-offset-and-offset_token-parameters#offset_token\" target=\"_blank\">Help Center</a>",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "order_by": {
        +        "description": "<em>results sorting rules</em><br>optional field<br>you can use the same values as in the <code>filters</code> array to sort the results<br>possible sorting types:<br><code>asc</code> - results will be sorted in the ascending order<br><code>desc</code> - results will be sorted in the descending order<br>you should use a comma to set up a sorting parameter<p>default rule:<br><code>[\"relevance,desc\"]</code><br>relevance is used as the default sorting rule to provide you with the closest keyword ideas. We recommend using this sorting rule to get highly-relevant search terms. <strong>Note</strong> that <code>relevance</code> is only our internal system identifier, so <strong>it can not be used as a filter</strong>, and you will not find this field in the <code>result</code> array. The relevance score is based on a similar principle as used in <a href=\"/v3/keywords_data/google/keywords_for_keywords/live/?php\">the Keywords For Keywords</a> endpoint.<p><strong>note that you can set no more than three sorting rules in a single request</strong><br>you should use a comma to separate several sorting rules<br>example:<br><code>[\"relevance,desc\",\"keyword_info.search_volume,desc\"]</code>",
        +        "items": {
        +          "type": "string"
        +        },
        +        "type": [
        +          "array",
        +          "null"
        +        ]
        +      },
        +      "tag": {
        +        "description": "<em>user-defined task identifier</em><br>optional field<br><em>the character limit is 255</em><br>you can use this parameter to identify the task and match it with the result<br>you will find the specified <code>tag</code> value in the <code>data</code> object of the response",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      }
        +    },
        +    "type": "object"
        +  }
        +]
      • removedInput schema / properties / body / items / properties
        Removed value: -{
        -  "closely_variants": {
        -    "description": "search mode optional field if set to_true the results will be based on the phrase-match search algorithm if set to false the results will be based on the broad-match search algorithm default value: falsen",
        -    "type": "boolean"
        -  },
        -  "filters": {
        -    "description": "array of results filtering parameters optional field you can add several filters at once (8 filters maximum) you should set a logical operator and, or between the conditions the following operators are supported: regex, not_regex, <, <=, >, >=, =, <>, in, not_in, match, not_match, ilike, not_ilike, like, not_like you can use the % operator with like and not_like,as well as ilike, not_ilike to match any string of zero or more characters note that you can not filter the results by relevance example: [\"keyword_info.search_volume\",\">\",0] [[\"keyword_info.search_volume\",\"in\",[0,1000]], \"and\", [\"keyword_info.competition_level\",\"=\",\"LOW\"]] [[\"keyword_info.search_volume\",\">\",100], \"and\", [[\"keyword_info.cpc\",\"<\",0.5], \"or\", [\"keyword_info.high_top_of_page_bid\",\"<=\",0.5]]] for more information about filters, please refer to Dataforseo Labs - Filters or this help center guide",
        -    "items": {},
        -    "type": "array"
        -  },
        -  "ignore_synonyms": {
        -    "description": "ignore highly similar keywords optional field if set to_true only core keywords will be returned, all highly similar keywords will be excluded; default value: falsen",
        -    "type": "boolean"
        -  },
        -  "include_clickstream_data": {
        -    "description": "include or exclude data from clickstream-based metrics in the result optional field if the parameter is set to true, you will receive clickstream_keyword_info, keyword_info_normalized_with_clickstream, and keyword_info_normalized_with_bing fields in the response default value: false with this parameter enabled, you will be charged double the price for the request learn more about how clickstream-based metrics are calculated in this help center article",
        -    "type": "boolean"
        -  },
        -  "include_serp_info": {
        -    "description": "include data from SERP for each keyword optional field if set to true, we will return a serp_info array containing SERP data (number of search results, relevant URL, and SERP features) for every keyword in the response default value: false",
        -    "type": "boolean"
        -  },
        -  "keywords": {
        -    "description": "keywords required field UTF-8 encoding The maximum number of keywords you can specify: 200. The keywords will be converted to lowercase format learn more about rules and limitations of keyword and keywords fields in DataForSEO APIs in this Help Center article",
        -    "items": {
        -      "type": "string"
        -    },
        -    "type": "array"
        -  },
        -  "language_code": {
        -    "description": "language code optional field if you use this field, you don’t need to specify language_name you can receive the list of available languages with their language_code by making a separate request to the https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages example: en Note: if omitted, results default to the language with the most keyword records in the specified location; refer to the available_languages.keywords field of the Locations and Languages endpoint to determine the default language",
        -    "type": "string"
        -  },
        -  "language_name": {
        -    "description": "full name of the language optional field if you use this field, you don’t need to specify language_code you can receive the list of available languages with their language_name by making a separate request to the https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages example: English Note: if omitted, results default to the language with the most keyword records in the specified location; refer to the available_languages.keywords field of the Locations and Languages endpoint to determine the default language",
        -    "type": "string"
        -  },
        -  "limit": {
        -    "description": "the maximum number of keywords in the results array optional field default value: 700 maximum value: 1000",
        -    "type": "integer"
        -  },
        -  "location_code": {
        -    "description": "unique location identifier required field if you don’t specify location_name Note: it is required to specify either location_name or location_code you can receive the list of available locations with their location_code by making a separate request to the https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages example: 2840",
        -    "type": "integer"
        -  },
        -  "location_name": {
        -    "description": "full name of the location required field if you don’t specify location_code Note: it is required to specify either location_name or location_code you can receive the list of available locations with their location_name by making a separate request to the https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages example: United Kingdom",
        -    "type": "string"
        -  },
        -  "offset": {
        -    "description": "offset in the results array of returned keywords optional field default value: 0 if you specify the 10 value, the first ten keywords in the results array will be omitted and the data will be provided for the successive keywords Note: we recommend using this parameter only when retrieving up to 10,000 results for retrieving over 10,000 results, use the offset_token instead.",
        -    "type": "integer"
        -  },
        -  "offset_token": {
        -    "description": "offset token for subsequent requests optional field provided in the identical filed of the response to each request; use this parameter to avoid timeouts while trying to obtain over 10,000 results in a single request; by specifying the unique offset_token value from the response array, you will get the subsequent results of the initial task; offset_token values are unique for each subsequent task Note: if the offset_token is specified in the request, all other parameters except limit will not be taken into account when processing a task. learn more about this parameter on our Help Center",
        -    "type": "string"
        -  },
        -  "order_by": {
        -    "description": "results sorting rules optional field you can use the same values as in the filters array to sort the results possible sorting types: asc – results will be sorted in the ascending order desc – results will be sorted in the descending order you should use a comma to set up a sorting parameter default rule: [\"relevance,desc\"] relevance is used as the default sorting rule to provide you with the closest keyword ideas. We recommend using this sorting rule to get highly-relevant search terms. Note that relevance is only our internal system identifier, so it can not be used as a filter, and you will not find this field in the result array. The relevance score is based on a similar principle as used in the Keywords For Keywords endpoint. note that you can set no more than three sorting rules in a single request you should use a comma to separate several sorting rules example: [\"relevance,desc\",\"keyword_info.search_volume,desc\"]",
        -    "items": {
        -      "type": "string"
        -    },
        -    "type": "array"
        -  },
        -  "tag": {
        -    "description": "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",
        -    "type": "string"
        -  }
        -}
      • changedInput schema / properties / body / items / type
        Previous value: -"object"New value: +[
        +  "object",
        +  "null"
        +]
      • changedInput schema / required
        Previous value: -[
        -  "body"
        -]New value: +[]
      • addedOutput schema / x-fastmcp-wrap-result
        Added value: +true
    • Changedpost_dataforseo_labs_google_keyword_overview_live8 fields changed
      • addedInput schema / properties / body / example
        Added value: +[
        +  {
        +    "include_clickstream_data": true,
        +    "include_serp_info": true,
        +    "keywords": [
        +      "iphone"
        +    ],
        +    "language_code": "en",
        +    "location_code": 2840
        +  }
        +]
      • removedInput schema / properties / body / items / allOf
        Removed value: -[
        -  {
        -    "anyOf": [
        -      {
        -        "required": [
        -          "location_name"
        -        ]
        -      },
        -      {
        -        "required": [
        -          "location_code"
        -        ]
        -      }
        -    ]
        -  },
        -  {
        -    "anyOf": [
        -      {
        -        "required": [
        -          "language_name"
        -        ]
        -      },
        -      {
        -        "required": [
        -          "language_code"
        -        ]
        -      }
        -    ]
        -  }
        -]
      • addedInput schema / properties / body / items / anyOf
        Added value: +[
        +  {
        +    "example": [
        +      {
        +        "include_clickstream_data": true,
        +        "include_serp_info": true,
        +        "keywords": [
        +          "iphone"
        +        ],
        +        "language_code": "en",
        +        "location_code": 2840
        +      }
        +    ],
        +    "properties": {
        +      "include_clickstream_data": {
        +        "description": "<em>include or exclude data from clickstream-based metrics in the result</em><br>optional field<br>if the parameter is set to <code>true</code>, you will receive <code>clickstream_keyword_info</code>, <code>keyword_info_normalized_with_clickstream</code>, and <code>keyword_info_normalized_with_bing</code> fields in the response<br>default value: <code>false</code><br>with this parameter enabled, you will be charged double the price for the request<p>learn more about how clickstream-based metrics are calculated in this <a href=\"https://dataforseo.com/help-center/what-are-clickstream-based-metrics-and-how-do-we-calculate-them\" rel=\"noopener noreferrer\" target=\"_blank\">help center article</a>",
        +        "type": [
        +          "boolean",
        +          "null"
        +        ]
        +      },
        +      "include_serp_info": {
        +        "description": "<em>include data from SERP for each keyword</em><br>optional field<br>if set to <code>true</code>, we will return a <code>serp_info</code> array containing SERP data (number of search results, relevant URL, and SERP features) for every keyword in the response<br>default value: <code>false</code>",
        +        "type": [
        +          "boolean",
        +          "null"
        +        ]
        +      },
        +      "keywords": {
        +        "description": "<em>keywords</em><br><strong>required field</strong><br>The maximum number of keywords you can specify: 700<br>The maximum number of characters for each keyword: 80<br>The maximum number of words for each keyword phrase: 10<br>the specified keywords will be converted to lowercase format, data will be provided in a separate array<p><strong>note</strong> that if some of the keywords specified in this array are omitted in the results you receive, then our database doesn't contain such keywords and cannot return data on them<br>you will not be charged for the keywords omitted in the results<p>learn more about rules and limitations of <code>keyword</code> and <code>keywords</code> fields in DataForSEO APIs in this <a href=\"https://dataforseo.com/help-center/rules-and-limitations-of-keyword-and-keywords-fields-in-dataforseo-apis\" rel=\"noopener noreferrer\" target=\"_blank\">Help Center article</a>",
        +        "items": {
        +          "type": "string"
        +        },
        +        "type": "array"
        +      },
        +      "language_code": {
        +        "description": "<em>language code</em><br><strong>required field if you don't specify</strong> <code>language_name</code><br><strong>Note:</strong> it is required to specify either <code>language_name</code> or <code>language_code</code><br>you can receive the list of available locations with their <code>language_code</code> by making a separate request to the <br><code>https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages</code><br>example:<br><code class=\"long-string\">en</code>",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "language_name": {
        +        "description": "<em>full name of the language</em><br><strong>required field if you don't specify</strong> <code>language_code</code><br><strong>Note:</strong> it is required to specify either <code>language_name</code> or <code>language_code</code><br>you can receive the list of available locations with their <code>language_name</code> by making a separate request to the <br><code>https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages</code><br>example:<br><code class=\"long-string\">English</code>",
        +        "type": "string"
        +      },
        +      "location_code": {
        +        "description": "<em>location code</em><br><strong>required field if you don't specify</strong> <code>location_name</code><br><strong>Note:</strong> it is required to specify either <code>location_name</code> or <code>location_code</code><br>you can receive the list of available locations with their <code>location_code</code> by making a separate request to the <br><code>https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages</code><br>example:<br><code class=\"long-string\">2840</code>",
        +        "type": "integer"
        +      },
        +      "location_name": {
        +        "description": "<em>full name of the location</em><br><strong>required field if you don't specify</strong> <code>location_code</code><br><strong>Note:</strong> it is required to specify either <code>location_name</code> or <code>location_code</code><br>you can receive the list of available locations with their <code>location_name</code> by making a separate request to the <br><code>https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages</code><br>example:<br><code class=\"long-string\">United Kingdom</code>",
        +        "type": "string"
        +      },
        +      "tag": {
        +        "description": "<em>user-defined task identifier</em><br>optional field<br><em>the character limit is 255</em><br>you can use this parameter to identify the task and match it with the result<br>you will find the specified <code>tag</code> value in the <code>data</code> object of the response",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      }
        +    },
        +    "type": "object"
        +  }
        +]
      • removedInput schema / properties / body / items / properties
        Removed value: -{
        -  "include_clickstream_data": {
        -    "description": "include or exclude data from clickstream-based metrics in the result optional field if the parameter is set to true, you will receive clickstream_keyword_info, keyword_info_normalized_with_clickstream, and keyword_info_normalized_with_bing fields in the response default value: false with this parameter enabled, you will be charged double the price for the request learn more about how clickstream-based metrics are calculated in this help center article",
        -    "type": "boolean"
        -  },
        -  "include_serp_info": {
        -    "description": "include data from SERP for each keyword optional field if set to true, we will return a serp_info array containing SERP data (number of search results, relevant URL, and SERP features) for every keyword in the response default value: false",
        -    "type": "boolean"
        -  },
        -  "keywords": {
        -    "description": "keywords required field The maximum number of keywords you can specify: 700 The maximum number of characters for each keyword: 80 The maximum number of words for each keyword phrase: 10 the specified keywords will be converted to lowercase format, data will be provided in a separate array note that if some of the keywords specified in this array are omitted in the results you receive, then our database doesn’t contain such keywords and cannot return data on them you will not be charged for the keywords omitted in the results learn more about rules and limitations of keyword and keywords fields in DataForSEO APIs in this Help Center article",
        -    "items": {
        -      "type": "string"
        -    },
        -    "type": "array"
        -  },
        -  "language_code": {
        -    "description": "language code required field if you don’t specify language_name Note: it is required to specify either language_name or language_code you can receive the list of available locations with their language_code by making a separate request to the https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages example: en",
        -    "type": "string"
        -  },
        -  "language_name": {
        -    "description": "full name of the language required field if you don’t specify language_code Note: it is required to specify either language_name or language_code you can receive the list of available locations with their language_name by making a separate request to the https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages example: English",
        -    "type": "string"
        -  },
        -  "location_code": {
        -    "description": "location code required field if you don’t specify location_name Note: it is required to specify either location_name or location_code you can receive the list of available locations with their location_code by making a separate request to the https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages example: 2840",
        -    "type": "integer"
        -  },
        -  "location_name": {
        -    "description": "full name of the location required field if you don’t specify location_code Note: it is required to specify either location_name or location_code you can receive the list of available locations with their location_name by making a separate request to the https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages example: United Kingdom",
        -    "type": "string"
        -  },
        -  "tag": {
        -    "description": "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",
        -    "type": "string"
        -  }
        -}
      • removedInput schema / properties / body / items / required
        Removed value: -[
        -  "keywords"
        -]
      • changedInput schema / properties / body / items / type
        Previous value: -"object"New value: +[
        +  "object",
        +  "null"
        +]
      • changedInput schema / required
        Previous value: -[
        -  "body"
        -]New value: +[]
      • addedOutput schema / x-fastmcp-wrap-result
        Added value: +true
    • Changedpost_dataforseo_labs_google_keyword_suggestions_live6 fields changed
      • addedInput schema / properties / body / example
        Added value: +[
        +  {
        +    "include_seed_keyword": true,
        +    "include_serp_info": true,
        +    "keyword": "phone",
        +    "language_code": "en",
        +    "limit": 1,
        +    "location_code": 2840
        +  }
        +]
      • changedInput schema / properties / body / items / anyOf
        Previous value: -[
        -  {
        -    "required": [
        -      "keyword"
        -    ]
        -  },
        -  {
        -    "required": [
        -      "offset_token"
        -    ]
        -  }
        -]New value: +[
        +  {
        +    "example": [
        +      {
        +        "include_seed_keyword": true,
        +        "include_serp_info": true,
        +        "keyword": "phone",
        +        "language_code": "en",
        +        "limit": 1,
        +        "location_code": 2840
        +      }
        +    ],
        +    "properties": {
        +      "exact_match": {
        +        "description": "<em>search for the exact phrase</em><br>optional field<br>if set to <code>true</code>, the returned keywords will include the exact keyword phrase you specified, with potentially other words before or after that phrase<br>default value: <code>false</code>",
        +        "type": [
        +          "boolean",
        +          "null"
        +        ]
        +      },
        +      "filters": {
        +        "description": "<em>array of results filtering parameters</em><br>optional field<br><strong>you can add several filters at once (8 filters maximum)</strong><br>you should set a logical operator <code>and</code>, <code>or</code> between the conditions<br>the following operators are supported:<br><code>regex</code>, <code>not_regex</code>, <code>&lt;</code>, <code>&lt;=</code>, <code>&gt;</code>, <code>&gt;=</code>, <code>=</code>, <code>&lt;&gt;</code>, <code>in</code>, <code>not_in</code>, <code>match</code>, <code>not_match</code>, <code>ilike</code>, <code>not_ilike</code>, <code>like</code>, <code>not_like</code><br>you can use the <code>%</code> operator with <code>like</code> and <code>not_like</code>, as well as <code>ilike</code> and <code>not_ilike</code> to match any string of zero or more characters<br>example:<br><code>[\"keyword_info.search_volume\",\"&gt;\",0]</code><br><code>[[\"keyword_info.search_volume\",\"in\",[0,1000]],<br>\"and\",<br>[\"keyword_info.competition_level\",\"=\",\"LOW\"]]</code><code>[[\"keyword_info.search_volume\",\"&gt;\",100],<br>\"and\",<br>[[\"keyword_info.cpc\",\"&lt;\",0.5],<br>\"or\",<br>[\"keyword_info.high_top_of_page_bid\",\"&lt;=\",0.5]]]</code><br>for more information about filters, please refer to <a href=\"/v3/dataforseo_labs/filters\" target=\"_blank\" rel=\"noopener noreferrer\">Dataforseo Labs - Filters</a> or this <a href=\"https://dataforseo.com/help-center/how-to-use-filters-in-dataforseo-labs-api\" target=\"_blank\" rel=\"noopener noreferrer\">help center guide</a>",
        +        "items": {
        +          "type": [
        +            "object",
        +            "null"
        +          ]
        +        },
        +        "type": [
        +          "array",
        +          "null"
        +        ]
        +      },
        +      "ignore_synonyms": {
        +        "description": "<em>ignore highly similar keywords</em><br>optional field<br>if set to <code class=\"prettyprint\">true</code> only core keywords will be returned, all highly similar keywords will be excluded;<br>default value: <code>false</code>",
        +        "type": [
        +          "boolean",
        +          "null"
        +        ]
        +      },
        +      "include_clickstream_data": {
        +        "description": "<em>include or exclude data from clickstream-based metrics in the result</em><br>optional field<br>if the parameter is set to <code>true</code>, you will receive <code>clickstream_keyword_info</code>, <code>keyword_info_normalized_with_clickstream</code>, and <code>keyword_info_normalized_with_bing</code> fields in the response<br>default value: <code>false</code><br>with this parameter enabled, you will be charged double the price for the request<p>learn more about how clickstream-based metrics are calculated in this <a href=\"https://dataforseo.com/help-center/what-are-clickstream-based-metrics-and-how-do-we-calculate-them\" rel=\"noopener noreferrer\" target=\"_blank\">help center article</a>",
        +        "type": [
        +          "boolean",
        +          "null"
        +        ]
        +      },
        +      "include_seed_keyword": {
        +        "description": "<em>include data for the seed keyword</em><br>optional field<br>if set to <code>true</code>, data for the seed keyword specified in the <code>keyword</code> field will be provided in the <code>seed_keyword_data</code> array of the response<br>default value: <code>false</code>",
        +        "type": [
        +          "boolean",
        +          "null"
        +        ]
        +      },
        +      "include_serp_info": {
        +        "description": "<em>include data from SERP for each keyword</em><br>optional field<br>if set to <code>true</code>, we will return a <code>serp_info</code> array containing SERP data (number of search results, relevant URL, and SERP features) for every keyword in the response<br>default value: <code>false</code>",
        +        "type": [
        +          "boolean",
        +          "null"
        +        ]
        +      },
        +      "keyword": {
        +        "description": "<em>keyword</em><br><strong>required field</strong><br>UTF-8 encoding<br>the keywords will be converted to lowercase format;<p>learn more about rules and limitations of <code>keyword</code> and <code>keywords</code> fields in DataForSEO APIs in this <a href=\"https://dataforseo.com/help-center/rules-and-limitations-of-keyword-and-keywords-fields-in-dataforseo-apis\" rel=\"noopener noreferrer\" target=\"_blank\">Help Center article</a>",
        +        "type": "string"
        +      },
        +      "language_code": {
        +        "description": "<em>language code</em><br>optional field<br>if you use this field, you don't need to specify <code>language_name</code><br>you can receive the list of available languages with their <code>language_code</code> by making a separate request to the<br><code>https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages</code><br>example:<br><code class=\"long-string\">en</code><br><strong>Note:</strong> if omitted, results default to the language with the most keyword records in the specified location;<br>refer to the <code>available_languages.keywords</code> field of the <a href=\"https://docs.dataforseo.com/v3/dataforseo_labs/locations_and_languages\" target=\"_blank\">Locations and Languages endpoint</a> to determine the default language",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "language_name": {
        +        "description": "<em>full name of the language</em><br>optional field<br>if you use this field, you don't need to specify <code>language_code</code><br>you can receive the list of available languages with their <code>language_name</code> by making a separate request to the<br><code>https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages</code><br>example:<br><code class=\"long-string\">English</code><br><strong>Note:</strong> if omitted, results default to the language with the most keyword records in the specified location;<br>refer to the <code>available_languages.keywords</code> field of the <a href=\"https://docs.dataforseo.com/v3/dataforseo_labs/locations_and_languages\" target=\"_blank\">Locations and Languages endpoint</a> to determine the default language",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "limit": {
        +        "description": "<em>the maximum number of returned keywords</em><br>optional field<br>default value: <code>100</code><br>maximum value: <code>1000</code>",
        +        "type": [
        +          "integer",
        +          "null"
        +        ]
        +      },
        +      "location_code": {
        +        "description": "<em>location code</em><br>optional field<br>if you use this field, you don't need to specify <code>location_name</code><br>you can receive the list of available locations with their <code>location_code</code> by making a separate request to the<br><code>https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages</code><br>ignore this field to get the results for all available locations<br>example:<br><code class=\"long-string\">2840</code>",
        +        "type": [
        +          "integer",
        +          "null"
        +        ]
        +      },
        +      "location_name": {
        +        "description": "<em>full name of the location</em><br>optional field<br>if you use this field, you don't need to specify <code>location_code</code><br>you can receive the list of available locations with their <code>location_name</code> by making a separate request to the<br><code>https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages</code><br>ignore this field to get the results for all available locations<br>example:<br><code class=\"long-string\">United Kingdom</code>",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "offset": {
        +        "description": "<em>offset in the results array of returned keywords</em><br>optional field<br>default value: <code>0</code><br>if you specify the <code>10</code> value, the first ten keywords in the results array will be omitted and the data will be provided for the successive keywords<br><strong>Note:</strong> we recommend using this parameter only when retrieving up to 10,000 results<br>for retrieving over 10,000 results, use the <code>offset_token</code> instead.",
        +        "type": [
        +          "integer",
        +          "null"
        +        ]
        +      },
        +      "offset_token": {
        +        "description": "<em>offset token for subsequent requests</em><br>optional field<br>provided in the identical filed of the response to each request;<br>use this parameter to avoid timeouts while trying to obtain over 10,000 results in a single request;<br>by specifying the unique <code>offset_token</code> value from the response array, you will get the subsequent results of the initial task;<br><code>offset_token</code> values are unique for each subsequent task<br><strong>Note:</strong> if the <code>offset_token</code> is specified in the request, all other parameters except <code>limit</code> will not be taken into account when processing a task.<br>learn more about this parameter on our <a href=\"https://dataforseo.com/help-center/what-is-the-difference-between-the-offset-and-offset_token-parameters#offset_token\" target=\"_blank\">Help Center</a>",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "order_by": {
        +        "description": "<em>results sorting rules</em><br>optional field<br>you can use the same values as in the <code>filters</code> array to sort the results<br>possible sorting types:<br><code>asc</code> - results will be sorted in the ascending order<br><code>desc</code> - results will be sorted in the descending order<br>a comma is used as a separator<br>example:<br><code>[\"keyword_info.competition,desc\"]</code><br>default rule:<br><code>[\"keyword_info.search_volume,desc\"]</code><br><strong>note that you can set no more than three sorting rules in a single request</strong><br>you should use a comma to separate several sorting rules<br>example:<br><code>[\"keyword_info.search_volume,desc\",\"keyword_info.cpc,desc\"]</code>",
        +        "items": {
        +          "type": "string"
        +        },
        +        "type": [
        +          "array",
        +          "null"
        +        ]
        +      },
        +      "tag": {
        +        "description": "<em>user-defined task identifier</em><br>optional field<br><em>the character limit is 255</em><br>you can use this parameter to identify the task and match it with the result<br>you will find the specified <code>tag</code> value in the <code>data</code> object of the response",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      }
        +    },
        +    "type": "object"
        +  }
        +]
      • removedInput schema / properties / body / items / properties
        Removed value: -{
        -  "exact_match": {
        -    "description": "search for the exact phrase optional field if set to true, the returned keywords will include the exact keyword phrase you specified, with potentially other words before or after that phrase default value: false",
        -    "type": "boolean"
        -  },
        -  "filters": {
        -    "description": "array of results filtering parameters optional field you can add several filters at once (8 filters maximum) you should set a logical operator and, or between the conditions the following operators are supported: regex, not_regex, <, <=, >, >=, =, <>, in, not_in, match, not_match, ilike, not_ilike, like, not_like you can use the % operator with like and not_like, as well as ilike and not_ilike to match any string of zero or more characters example: [\"keyword_info.search_volume\",\">\",0] [[\"keyword_info.search_volume\",\"in\",[0,1000]], \"and\", [\"keyword_info.competition_level\",\"=\",\"LOW\"]][[\"keyword_info.search_volume\",\">\",100], \"and\", [[\"keyword_info.cpc\",\"<\",0.5], \"or\", [\"keyword_info.high_top_of_page_bid\",\"<=\",0.5]]] for more information about filters, please refer to Dataforseo Labs - Filters or this help center guide",
        -    "items": {},
        -    "type": "array"
        -  },
        -  "ignore_synonyms": {
        -    "description": "ignore highly similar keywords optional field if set to true only core keywords will be returned, all highly similar keywords will be excluded; default value: false",
        -    "type": "boolean"
        -  },
        -  "include_clickstream_data": {
        -    "description": "include or exclude data from clickstream-based metrics in the result optional field if the parameter is set to true, you will receive clickstream_keyword_info, keyword_info_normalized_with_clickstream, and keyword_info_normalized_with_bing fields in the response default value: false with this parameter enabled, you will be charged double the price for the request learn more about how clickstream-based metrics are calculated in this help center article",
        -    "type": "boolean"
        -  },
        -  "include_seed_keyword": {
        -    "description": "include data for the seed keyword optional field if set to true, data for the seed keyword specified in the keyword field will be provided in the seed_keyword_data array of the response default value: false",
        -    "type": "boolean"
        -  },
        -  "include_serp_info": {
        -    "description": "include data from SERP for each keyword optional field if set to true, we will return a serp_info array containing SERP data (number of search results, relevant URL, and SERP features) for every keyword in the response default value: false",
        -    "type": "boolean"
        -  },
        -  "keyword": {
        -    "description": "keyword required field UTF-8 encoding the keywords will be converted to lowercase format; learn more about rules and limitations of keyword and keywords fields in DataForSEO APIs in this Help Center article",
        -    "type": "string"
        -  },
        -  "language_code": {
        -    "description": "language code optional field if you use this field, you don’t need to specify language_name you can receive the list of available languages with their language_code by making a separate request to the https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages example: en Note: if omitted, results default to the language with the most keyword records in the specified location; refer to the available_languages.keywords field of the Locations and Languages endpoint to determine the default language",
        -    "type": "string"
        -  },
        -  "language_name": {
        -    "description": "full name of the language optional field if you use this field, you don’t need to specify language_code you can receive the list of available languages with their language_name by making a separate request to the https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages example: English Note: if omitted, results default to the language with the most keyword records in the specified location; refer to the available_languages.keywords field of the Locations and Languages endpoint to determine the default language",
        -    "type": "string"
        -  },
        -  "limit": {
        -    "description": "the maximum number of returned keywords optional field default value: 100 maximum value: 1000",
        -    "type": "integer"
        -  },
        -  "location_code": {
        -    "description": "location code optional field if you use this field, you don’t need to specify location_name you can receive the list of available locations with their location_code by making a separate request to the https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages ignore this field to get the results for all available locations example: 2840",
        -    "type": "integer"
        -  },
        -  "location_name": {
        -    "description": "full name of the location optional field if you use this field, you don’t need to specify location_code you can receive the list of available locations with their location_name by making a separate request to the https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages ignore this field to get the results for all available locations example: United Kingdom",
        -    "type": "string"
        -  },
        -  "offset": {
        -    "description": "offset in the results array of returned keywords optional field default value: 0 if you specify the 10 value, the first ten keywords in the results array will be omitted and the data will be provided for the successive keywords Note: we recommend using this parameter only when retrieving up to 10,000 results for retrieving over 10,000 results, use the offset_token instead.",
        -    "type": "integer"
        -  },
        -  "offset_token": {
        -    "description": "offset token for subsequent requests optional field provided in the identical filed of the response to each request; use this parameter to avoid timeouts while trying to obtain over 10,000 results in a single request; by specifying the unique offset_token value from the response array, you will get the subsequent results of the initial task; offset_token values are unique for each subsequent task Note: if the offset_token is specified in the request, all other parameters except limit will not be taken into account when processing a task. learn more about this parameter on our Help Center",
        -    "type": "string"
        -  },
        -  "order_by": {
        -    "description": "results sorting rules optional field you can use the same values as in the filters array to sort the results possible sorting types: asc – results will be sorted in the ascending order desc – results will be sorted in the descending order a comma is used as a separator example: [\"keyword_info.competition,desc\"] default rule: [\"keyword_info.search_volume,desc\"] note that you can set no more than three sorting rules in a single request you should use a comma to separate several sorting rules example: [\"keyword_info.search_volume,desc\",\"keyword_info.cpc,desc\"]",
        -    "items": {
        -      "type": "string"
        -    },
        -    "type": "array"
        -  },
        -  "tag": {
        -    "description": "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",
        -    "type": "string"
        -  }
        -}
      • changedInput schema / properties / body / items / type
        Previous value: -"object"New value: +[
        +  "object",
        +  "null"
        +]
      • changedInput schema / required
        Previous value: -[
        -  "body"
        -]New value: +[]
      • addedOutput schema / x-fastmcp-wrap-result
        Added value: +true
    • Changedpost_dataforseo_labs_google_keywords_for_categories_live6 fields changed
      • addedInput schema / properties / body / example
        Added value: +[
        +  {
        +    "category_codes": [
        +      "12191",
        +      "12193"
        +    ],
        +    "include_serp_info": true,
        +    "language_name": "English",
        +    "limit": 3,
        +    "location_code": 2840
        +  }
        +]
      • changedInput schema / properties / body / items / anyOf
        Previous value: -[
        -  {
        -    "allOf": [
        -      {
        -        "anyOf": [
        -          {
        -            "required": [
        -              "location_name"
        -            ]
        -          },
        -          {
        -            "required": [
        -              "location_code"
        -            ]
        -          }
        -        ]
        -      },
        -      {
        -        "anyOf": [
        -          {
        -            "required": [
        -              "language_name"
        -            ]
        -          },
        -          {
        -            "required": [
        -              "language_code"
        -            ]
        -          }
        -        ]
        -      }
        -    ],
        -    "required": [
        -      "category_codes"
        -    ]
        -  },
        -  {
        -    "required": [
        -      "offset_token"
        -    ]
        -  }
        -]New value: +[
        +  {
        +    "example": [
        +      {
        +        "category_codes": [
        +          "12191",
        +          "12193"
        +        ],
        +        "include_serp_info": true,
        +        "language_name": "English",
        +        "limit": 3,
        +        "location_code": 2840
        +      }
        +    ],
        +    "properties": {
        +      "category_codes": {
        +        "description": "<em>product and service categories</em><br><strong>required field</strong><br>The maximum number of categories you can specify: 20<br>you can download <a href=\"https://cdn.dataforseo.com/v3/categories/categories_dataforseo_labs_2023_10_25.csv\">the full list of possible categories</a>",
        +        "items": {
        +          "type": "string"
        +        },
        +        "type": "array"
        +      },
        +      "category_intersection": {
        +        "description": "<em>category intersections</em><br>optional field<br>if set to <code class=\"prettyprint\">true</code>, you will get keywords featured in all specified categories;<br>if set to <code class=\"prettyprint\">false</code>, you will keywords that are specified in any of the specified categories;<br>default value: <code>true</code>",
        +        "type": [
        +          "boolean",
        +          "null"
        +        ]
        +      },
        +      "filters": {
        +        "description": "<em>array of results filtering parameters</em><br>optional field<br><strong>you can add several filters at once (8 filters maximum)</strong><br>you should set a logical operator <code>and</code>, <code>or</code> between the conditions<br>the following operators are supported:<br><code>regex</code>, <code>not_regex</code>, <code>&lt;</code>, <code>&lt;=</code>, <code>&gt;</code>, <code>&gt;=</code>, <code>=</code>, <code>&lt;&gt;</code>, <code>in</code>, <code>not_in</code>, <code>match</code>, <code>not_match</code>, <code>ilike</code>, <code>not_ilike</code>, <code>like</code>, <code>not_like</code><br>you can use the <code>%</code> operator with <code>like</code> and <code>not_like</code>,as well as <code>ilike</code>, <code>not_ilike</code> to match any string of zero or more characters<br>example:<br><code>[\"keyword_info.search_volume\",\"&gt;\",0]</code><br><code>[[\"keyword_info.search_volume\",\"in\",[0,1000]],<br>\"and\",<br>[\"keyword_info.competition_level\",\"=\",\"LOW\"]]</code><p><code>[[\"keyword_info.search_volume\",\"&gt;\",100],<br>\"and\",<br>[[\"keyword_info.cpc\",\"&lt;\",0.5],<br>\"or\",<br>[\"keyword_info.high_top_of_page_bid\",\"&lt;=\",0.5]]]</code><br>for more information about filters, please refer to <a href=\"/v3/dataforseo_labs/filters\" target=\"_blank\" rel=\"noopener noreferrer\">Dataforseo Labs - Filters</a> or this <a href=\"https://dataforseo.com/help-center/how-to-use-filters-in-dataforseo-labs-api\" target=\"_blank\" rel=\"noopener noreferrer\">help center guide</a>",
        +        "items": {
        +          "type": [
        +            "object",
        +            "null"
        +          ]
        +        },
        +        "type": [
        +          "array",
        +          "null"
        +        ]
        +      },
        +      "ignore_synonyms": {
        +        "description": "<em>ignore highly similar keywords</em><br>optional field<br>if set to <code class=\"prettyprint\">true</code> only core keywords will be returned, all highly similar keywords will be excluded;<br>default value: <code>false</code>",
        +        "type": [
        +          "boolean",
        +          "null"
        +        ]
        +      },
        +      "include_clickstream_data": {
        +        "description": "<em>include or exclude data from clickstream-based metrics in the result</em><br>optional field<br>if the parameter is set to <code>true</code>, you will receive <code>clickstream_keyword_info</code>, <code>keyword_info_normalized_with_clickstream</code>, and <code>keyword_info_normalized_with_bing</code> fields in the response<br>default value: <code>false</code><br>with this parameter enabled, you will be charged double the price for the request<p>learn more about how clickstream-based metrics are calculated in this <a href=\"https://dataforseo.com/help-center/what-are-clickstream-based-metrics-and-how-do-we-calculate-them\" rel=\"noopener noreferrer\" target=\"_blank\">help center article</a>",
        +        "type": [
        +          "boolean",
        +          "null"
        +        ]
        +      },
        +      "include_serp_info": {
        +        "description": "<em>include data from SERP for each keyword</em><br>optional field<br>if set to <code>true</code>, we will return a <code>serp_info</code> array containing SERP data (number of search results, relevant URL, and SERP features) for every keyword in the response<br>default value: <code>false</code>",
        +        "type": [
        +          "boolean",
        +          "null"
        +        ]
        +      },
        +      "language_code": {
        +        "description": "<em>unique language identifier</em><br><strong>required field if you don't specify</strong> <code>language_name</code><br><strong>Note:</strong> it is required to specify either <code>language_name</code> or <code>language_code</code><br>you can receive the list of available languages with their <code>language_code</code> by making a separate request to the<br><code>https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages</code><br>example:<br><code class=\"long-string\">en</code>",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "language_name": {
        +        "description": "<em>full name of the language</em><br><strong>required field if you don't specify</strong> <code>language_code</code><br><strong>Note:</strong> it is required to specify either <code>language_name</code> or <code>language_code</code><br>you can receive the list of available languages with their <code>language_name</code> by making a separate request to the<br><code>https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages</code><br>example:<br><code class=\"long-string\">English</code>",
        +        "type": "string"
        +      },
        +      "limit": {
        +        "description": "<em>the maximum number of keywords in the results array</em><br>optional field<br>default value: <code>100</code><br>maximum value: <code>1000</code>",
        +        "type": [
        +          "integer",
        +          "null"
        +        ]
        +      },
        +      "location_code": {
        +        "description": "<em>unique location identifier</em><br><strong>required field if you don't specify</strong> <code>location_name</code><br><strong>Note:</strong> it is required to specify either <code>location_name</code> or <code>location_code</code><br>you can receive the list of available locations with their <code>location_code</code> by making a separate request to the<br><code>https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages</code><br>example:<br><code class=\"long-string\">2840</code>",
        +        "type": "integer"
        +      },
        +      "location_name": {
        +        "description": "<em>full name of the location</em><br><strong>required field if you don't specify</strong> <code>location_code</code><br><strong>Note:</strong> it is required to specify either <code>location_name</code> or <code>location_code</code><br>you can receive the list of available locations with their <code>location_name</code> by making a separate request to the<br><code>https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages</code><br>example:<br><code class=\"long-string\">United Kingdom</code>",
        +        "type": "string"
        +      },
        +      "offset": {
        +        "description": "<em>offset in the results array of returned keywords</em><br>optional field<br>default value: <code>0</code><br>if you specify the <code>10</code> value, the first ten keywords in the results array will be omitted and the data will be provided for the successive keywords<br><strong>Note:</strong> we recommend using this parameter only when retrieving up to 10,000 results<br>for retrieving over 10,000 results, use the <code>offset_token</code> instead.",
        +        "type": [
        +          "integer",
        +          "null"
        +        ]
        +      },
        +      "offset_token": {
        +        "description": "<em>offset token for subsequent requests</em><br>optional field<br>provided in the identical filed of the response to each request;<br>use this parameter to avoid timeouts while trying to obtain over 10,000 results in a single request;<br>by specifying the unique <code>offset_token</code> value from the response array, you will get the subsequent results of the initial task;<br><code>offset_token</code> values are unique for each subsequent task<br><strong>Note:</strong> if the <code>offset_token</code> is specified in the request, all other parameters except <code>limit</code> will not be taken into account when processing a task.<br>learn more about this parameter on our <a href=\"https://dataforseo.com/help-center/what-is-the-difference-between-the-offset-and-offset_token-parameters#offset_token\" target=\"_blank\">Help Center</a>",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "order_by": {
        +        "description": "<em>results sorting rules</em><br>optional field<br>you can use the same values as in the <code>filters</code> array to sort the results<br>possible sorting types:<br><code>asc</code> - results will be sorted in the ascending order<br><code>desc</code> - results will be sorted in the descending order<br>you should use a comma to set up a sorting type<br>example:<br><code>[\"keyword_info.competition,desc\"]</code><br>default rule:<br><code>[\"keyword_info.search_volume,desc\"]</code><br><strong>note that you can set no more than three sorting rules in a single request</strong><br>you should use a comma to separate several sorting rules<br>example:<br><code>[\"keyword_info.search_volume,desc\",\"keyword_info.competition,asc\"]</code>",
        +        "items": {
        +          "type": "string"
        +        },
        +        "type": [
        +          "array",
        +          "null"
        +        ]
        +      },
        +      "tag": {
        +        "description": "<em>user-defined task identifier</em><br>optional field<br><em>the character limit is 255</em><br>you can use this parameter to identify the task and match it with the result<br>you will find the specified <code>tag</code> value in the <code>data</code> object of the response",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      }
        +    },
        +    "type": "object"
        +  }
        +]
      • removedInput schema / properties / body / items / properties
        Removed value: -{
        -  "category_codes": {
        -    "description": "product and service categories required field The maximum number of categories you can specify: 20 you can download the full list of possible categories",
        -    "items": {
        -      "type": "integer"
        -    },
        -    "type": "array"
        -  },
        -  "category_intersection": {
        -    "description": "category intersections optional field if set to true, you will get keywords featured in all specified categories; if set to false, you will keywords that are specified in any of the specified categories; default value: true",
        -    "type": "boolean"
        -  },
        -  "filters": {
        -    "description": "array of results filtering parameters optional field you can add several filters at once (8 filters maximum) you should set a logical operator and, or between the conditions the following operators are supported: regex, not_regex, <, <=, >, >=, =, <>, in, not_in, match, not_match, ilike, not_ilike, like, not_like you can use the % operator with like and not_like,as well as ilike, not_ilike to match any string of zero or more characters example: [\"keyword_info.search_volume\",\">\",0] [[\"keyword_info.search_volume\",\"in\",[0,1000]], \"and\", [\"keyword_info.competition_level\",\"=\",\"LOW\"]] [[\"keyword_info.search_volume\",\">\",100], \"and\", [[\"keyword_info.cpc\",\"<\",0.5], \"or\", [\"keyword_info.high_top_of_page_bid\",\"<=\",0.5]]] for more information about filters, please refer to Dataforseo Labs - Filters or this help center guide",
        -    "items": {},
        -    "type": "array"
        -  },
        -  "ignore_synonyms": {
        -    "description": "ignore highly similar keywords optional field if set to true only core keywords will be returned, all highly similar keywords will be excluded; default value: false",
        -    "type": "boolean"
        -  },
        -  "include_clickstream_data": {
        -    "description": "include or exclude data from clickstream-based metrics in the result optional field if the parameter is set to true, you will receive clickstream_keyword_info, keyword_info_normalized_with_clickstream, and keyword_info_normalized_with_bing fields in the response default value: false with this parameter enabled, you will be charged double the price for the request learn more about how clickstream-based metrics are calculated in this help center article",
        -    "type": "boolean"
        -  },
        -  "include_serp_info": {
        -    "description": "include data from SERP for each keyword optional field if set to true, we will return a serp_info array containing SERP data (number of search results, relevant URL, and SERP features) for every keyword in the response default value: false",
        -    "type": "boolean"
        -  },
        -  "language_code": {
        -    "description": "unique language identifier required field if you don’t specify language_name Note: it is required to specify either language_name or language_code you can receive the list of available languages with their language_code by making a separate request to the https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages example: en",
        -    "type": "string"
        -  },
        -  "language_name": {
        -    "description": "full name of the language required field if you don’t specify language_code Note: it is required to specify either language_name or language_code you can receive the list of available languages with their language_name by making a separate request to the https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages example: English",
        -    "type": "string"
        -  },
        -  "limit": {
        -    "description": "the maximum number of keywords in the results array optional field default value: 100 maximum value: 1000",
        -    "type": "integer"
        -  },
        -  "location_code": {
        -    "description": "unique location identifier required field if you don’t specify location_name Note: it is required to specify either location_name or location_code you can receive the list of available locations with their location_code by making a separate request to the https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages example: 2840",
        -    "type": "integer"
        -  },
        -  "location_name": {
        -    "description": "full name of the location required field if you don’t specify location_code Note: it is required to specify either location_name or location_code you can receive the list of available locations with their location_name by making a separate request to the https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages example: United Kingdom",
        -    "type": "string"
        -  },
        -  "offset": {
        -    "description": "offset in the results array of returned keywords optional field default value: 0 if you specify the 10 value, the first ten keywords in the results array will be omitted and the data will be provided for the successive keywords Note: we recommend using this parameter only when retrieving up to 10,000 results for retrieving over 10,000 results, use the offset_token instead.",
        -    "type": "integer"
        -  },
        -  "offset_token": {
        -    "description": "offset token for subsequent requests optional field provided in the identical filed of the response to each request; use this parameter to avoid timeouts while trying to obtain over 10,000 results in a single request; by specifying the unique offset_token value from the response array, you will get the subsequent results of the initial task; offset_token values are unique for each subsequent task Note: if the offset_token is specified in the request, all other parameters except limit will not be taken into account when processing a task. learn more about this parameter on our Help Center",
        -    "type": "string"
        -  },
        -  "order_by": {
        -    "description": "results sorting rules optional field you can use the same values as in the filters array to sort the results possible sorting types: asc – results will be sorted in the ascending order desc – results will be sorted in the descending order you should use a comma to set up a sorting type example: [\"keyword_info.competition,desc\"] default rule: [\"keyword_info.search_volume,desc\"] note that you can set no more than three sorting rules in a single request you should use a comma to separate several sorting rules example: [\"keyword_info.search_volume,desc\",\"keyword_info.competition,asc\"]",
        -    "items": {
        -      "type": "string"
        -    },
        -    "type": "array"
        -  },
        -  "tag": {
        -    "description": "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",
        -    "type": "string"
        -  }
        -}
      • changedInput schema / properties / body / items / type
        Previous value: -"object"New value: +[
        +  "object",
        +  "null"
        +]
      • changedInput schema / required
        Previous value: -[
        -  "body"
        -]New value: +[]
      • addedOutput schema / x-fastmcp-wrap-result
        Added value: +true
    • Changedpost_dataforseo_labs_google_related_keywords_live8 fields changed
      • addedInput schema / properties / body / example
        Added value: +[
        +  {
        +    "keyword": "phone",
        +    "language_name": "English",
        +    "limit": 3,
        +    "location_code": 2840
        +  }
        +]
      • removedInput schema / properties / body / items / allOf
        Removed value: -[
        -  {
        -    "anyOf": [
        -      {
        -        "required": [
        -          "location_name"
        -        ]
        -      },
        -      {
        -        "required": [
        -          "location_code"
        -        ]
        -      }
        -    ]
        -  },
        -  {
        -    "anyOf": [
        -      {
        -        "required": [
        -          "language_name"
        -        ]
        -      },
        -      {
        -        "required": [
        -          "language_code"
        -        ]
        -      }
        -    ]
        -  }
        -]
      • addedInput schema / properties / body / items / anyOf
        Added value: +[
        +  {
        +    "example": [
        +      {
        +        "keyword": "phone",
        +        "language_name": "English",
        +        "limit": 3,
        +        "location_code": 2840
        +      }
        +    ],
        +    "properties": {
        +      "depth": {
        +        "description": "<em>keyword search depth</em><br>optional field<br>default value: <code>1</code><p>number of the returned results depends on the value you set in this field<br>you can specify a level from 0 to 4<br>estimated number of keywords for each level (maximum):<br>0 - the keyword set in the <code>keyword</code> field<br>1 – 8 keywords<br>2 – 72 keywords<br>3 – 584 keywords<br>4 – 4680 keywords",
        +        "type": [
        +          "integer",
        +          "null"
        +        ]
        +      },
        +      "filters": {
        +        "description": "<em>array of results filtering parameters</em><br>optional field<br><strong>you can add several filters at once (8 filters maximum)</strong><br>you should set a logical operator <code>and</code>, <code>or</code> between the conditions<br>the following operators are supported:<br><code>regex</code>, <code>not_regex</code>, <code>&lt;</code>, <code>&lt;=</code>, <code>&gt;</code>, <code>&gt;=</code>, <code>=</code>, <code>&lt;&gt;</code>, <code>in</code>, <code>not_in</code>, <code>match</code>, <code>not_match</code>, <code>ilike</code>, <code>not_ilike</code>, <code>like</code>,<code>not_like</code><br>you can use the <code>%</code> operator with <code>like</code> and <code>not_like</code>, as well as <code>ilike</code> and <code>not_ilike</code> to match any string of zero or more characters<br>example:<br><code>[\"keyword_data.keyword_info.search_volume\",\"&gt;\",0]</code><p><code>[[\"keyword_info.search_volume\",\"in\",[0,1000]],<br>\"and\",<br>[\"keyword_data.keyword_info.competition_level\",\"=\",\"LOW\"]]</code><p><code>[[\"keyword_data.keyword_info.search_volume\",\"&gt;\",100],<br>\"and\",<br>[[\"keyword_data.keyword_info.cpc\",\"&lt;\",0.5],<br>\"or\",<p>[\"keyword_info.high_top_of_page_bid\",\"&lt;=\",0.5]]]</code><br>for more information about filters, please refer to <a href=\"/v3/dataforseo_labs/filters\" target=\"_blank\" rel=\"noopener noreferrer\">Dataforseo Labs - Filters</a> or this <a href=\"https://dataforseo.com/help-center/how-to-use-filters-in-dataforseo-labs-api\" rel=\"noopener noreferrer\" target=\"_blank\">help center guide</a>",
        +        "items": {
        +          "type": [
        +            "object",
        +            "null"
        +          ]
        +        },
        +        "type": [
        +          "array",
        +          "null"
        +        ]
        +      },
        +      "ignore_synonyms": {
        +        "description": "",
        +        "type": [
        +          "boolean",
        +          "null"
        +        ]
        +      },
        +      "include_clickstream_data": {
        +        "description": "",
        +        "type": [
        +          "boolean",
        +          "null"
        +        ]
        +      },
        +      "include_seed_keyword": {
        +        "description": "<em>include data for the seed keyword</em><br>optional field<br>if set to <code>true</code>, data for the seed keyword specified in the <code>keyword</code> field will be provided in the <code>seed_keyword_data</code> array of the response<br>default value: <code>false</code>",
        +        "type": [
        +          "boolean",
        +          "null"
        +        ]
        +      },
        +      "include_serp_info": {
        +        "description": "<em>include data from SERP for each keyword</em><br>optional field<br>if set to <code>true</code>, we will return a <code>serp_info</code> array containing SERP data (number of search results, relevant URL, and SERP features) for every keyword in the response<br>default value: <code>false</code>",
        +        "type": [
        +          "boolean",
        +          "null"
        +        ]
        +      },
        +      "keyword": {
        +        "description": "<em>keyword</em><br><strong>required field</strong><br>UTF-8 encoding<br>the keywords will be converted to lowercase format<p>learn more about rules and limitations of <code>keyword</code> and <code>keywords</code> fields in DataForSEO APIs in this <a href=\"https://dataforseo.com/help-center/rules-and-limitations-of-keyword-and-keywords-fields-in-dataforseo-apis\" rel=\"noopener noreferrer\" target=\"_blank\">Help Center article</a>",
        +        "type": "string"
        +      },
        +      "language_code": {
        +        "description": "<em>language code</em><br><strong>required field if you don't specify</strong> <code>language_name</code><br><strong>Note:</strong> it is required to specify either <code>language_name</code> or <code>language_code</code><br>you can receive the list of available locations with their <code>language_code</code> by making a separate request to the <br><code>https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages</code><br>example:<br><code class=\"long-string\">en</code>",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "language_name": {
        +        "description": "<em>full name of the language</em><br><strong>required field if you don't specify</strong> <code>language_code</code><br><strong>Note:</strong> it is required to specify either <code>language_name</code> or <code>language_code</code><br>you can receive the list of available locations with their <code>language_name</code> by making a separate request to the <br><code>https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages</code><br>example:<br><code class=\"long-string\">English</code>",
        +        "type": "string"
        +      },
        +      "limit": {
        +        "description": "<em>the maximum number of returned keywords</em><br>optional field<br>default value: <code>100</code><br>maximum value: <code>1000</code>",
        +        "type": [
        +          "integer",
        +          "null"
        +        ]
        +      },
        +      "location_code": {
        +        "description": "<em>location code</em><br><strong>required field if you don't specify</strong> <code>location_name</code><br><strong>Note:</strong> it is required to specify either <code>location_name</code> or <code>location_code</code><br>you can receive the list of available locations with their <code>location_code</code> by making a separate request to the <br><code>https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages</code><br>example:<br><code class=\"long-string\">2840</code>",
        +        "type": "integer"
        +      },
        +      "location_name": {
        +        "description": "<em>full name of the location</em><br><strong>required field if you don't specify</strong> <code>location_code</code><br><strong>Note:</strong> it is required to specify either <code>location_name</code> or <code>location_code</code><br>you can receive the list of available locations with their <code>location_name</code> by making a separate request to the <br><code>https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages</code><br>example:<br><code class=\"long-string\">United Kingdom</code>",
        +        "type": "string"
        +      },
        +      "offset": {
        +        "description": "<em>offset in the results array of returned keywords</em><br>optional field<br>default value: <code>0</code><br>if you specify the <code>10</code> value, the first ten keywords in the results array will be omitted and the data will be provided for the successive keywords",
        +        "type": [
        +          "integer",
        +          "null"
        +        ]
        +      },
        +      "order_by": {
        +        "description": "<em>results sorting rules</em><br>optional field<br>you can use the same values as in the <code>filters</code> array to sort the results<br>possible sorting types:<br><code>asc</code> - results will be sorted in the ascending order<br><code>desc</code> - results will be sorted in the descending order<br>you should use a comma to set up a sorting type<br>example:<br><code>[\"keyword_data.keyword_info.competition,desc\"]</code><br>default rule:<br><code>[\"keyword_data.keyword_info.search_volume,desc\"]</code><br><strong>note that you can set no more than three sorting rules in a single request</strong><br>you should use a comma to separate several sorting rules<br>example:<br><code>[\"keyword_data.keyword_info.search_volume,desc\",\"keyword_data.keyword_info.cpc,desc\"]</code>",
        +        "items": {
        +          "type": "string"
        +        },
        +        "type": [
        +          "array",
        +          "null"
        +        ]
        +      },
        +      "replace_with_core_keyword": {
        +        "description": "<em>return data for core keyword</em><br>optional field<br>if <code>true</code>, <code>serp_info</code> and <code>related_keywords</code> will be returned for the main keyword in the group that the specified <code>keyword</code> belongs to;<br>if <code>false</code>, <code>serp_info</code> and <code>related_keywords</code> will be returned for the specified <code>keyword</code> (if available);<br>refer to <a href=\"https://dataforseo.com/help-center/replace_with_core_keyword\" rel=\"noopener noreferrer\" target=\"_blank\">this help center article</a> for more details;<br>default value: <code>false</code>",
        +        "type": [
        +          "boolean",
        +          "null"
        +        ]
        +      },
        +      "tag": {
        +        "description": "<em>user-defined task identifier</em><br>optional field<br><em>the character limit is 255</em><br>you can use this parameter to identify the task and match it with the result<br>you will find the specified <code>tag</code> value in the <code>data</code> object of the response",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      }
        +    },
        +    "type": "object"
        +  }
        +]
      • removedInput schema / properties / body / items / properties
        Removed value: -{
        -  "depth": {
        -    "description": "keyword search depth optional field default value: 1 number of the returned results depends on the value you set in this field you can specify a level from 0 to 4 estimated number of keywords for each level (maximum): 0 – the keyword set in the keyword field 1 – 8 keywords 2 – 72 keywords 3 – 584 keywords 4 – 4680 keywords",
        -    "type": "integer"
        -  },
        -  "filters": {
        -    "description": "array of results filtering parameters optional field you can add several filters at once (8 filters maximum) you should set a logical operator and, or between the conditions the following operators are supported: regex, not_regex, <, <=, >, >=, =, <>, in, not_in, match, not_match, ilike, not_ilike, like,not_like you can use the % operator with like and not_like, as well as ilike and not_ilike to match any string of zero or more characters example: [\"keyword_data.keyword_info.search_volume\",\">\",0] [[\"keyword_info.search_volume\",\"in\",[0,1000]], \"and\", [\"keyword_data.keyword_info.competition_level\",\"=\",\"LOW\"]] [[\"keyword_data.keyword_info.search_volume\",\">\",100], \"and\", [[\"keyword_data.keyword_info.cpc\",\"<\",0.5], \"or\", [\"keyword_info.high_top_of_page_bid\",\"<=\",0.5]]] for more information about filters, please refer to Dataforseo Labs - Filters or this help center guide",
        -    "items": {},
        -    "type": "array"
        -  },
        -  "ignore_synonyms": {
        -    "description": "ignore highly similar keywords optional field if set to true only core keywords will be returned, all highly similar keywords will be excluded; default value: false",
        -    "type": "boolean"
        -  },
        -  "include_clickstream_data": {
        -    "description": "include or exclude data from clickstream-based metrics in the result optional field if the parameter is set to true, you will receive clickstream_keyword_info, keyword_info_normalized_with_clickstream, and keyword_info_normalized_with_bing fields in the response default value: false with this parameter enabled, you will be charged double the price for the request learn more about how clickstream-based metrics are calculated in this help center article",
        -    "type": "boolean"
        -  },
        -  "include_seed_keyword": {
        -    "description": "include data for the seed keyword optional field if set to true, data for the seed keyword specified in the keyword field will be provided in the seed_keyword_data array of the response default value: false",
        -    "type": "boolean"
        -  },
        -  "include_serp_info": {
        -    "description": "include data from SERP for each keyword optional field if set to true, we will return a serp_info array containing SERP data (number of search results, relevant URL, and SERP features) for every keyword in the response default value: false",
        -    "type": "boolean"
        -  },
        -  "keyword": {
        -    "description": "keyword required field UTF-8 encoding the keywords will be converted to lowercase format learn more about rules and limitations of keyword and keywords fields in DataForSEO APIs in this Help Center article",
        -    "type": "string"
        -  },
        -  "language_code": {
        -    "description": "language code required field if you don’t specify language_name Note: it is required to specify either language_name or language_code you can receive the list of available locations with their language_code by making a separate request to the https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages example: en",
        -    "type": "string"
        -  },
        -  "language_name": {
        -    "description": "full name of the language required field if you don’t specify language_code Note: it is required to specify either language_name or language_code you can receive the list of available locations with their language_name by making a separate request to the https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages example: English",
        -    "type": "string"
        -  },
        -  "limit": {
        -    "description": "the maximum number of returned keywords optional field default value: 100 maximum value: 1000",
        -    "type": "integer"
        -  },
        -  "location_code": {
        -    "description": "location code required field if you don’t specify location_name Note: it is required to specify either location_name or location_code you can receive the list of available locations with their location_code by making a separate request to the https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages example: 2840",
        -    "type": "integer"
        -  },
        -  "location_name": {
        -    "description": "full name of the location required field if you don’t specify location_code Note: it is required to specify either location_name or location_code you can receive the list of available locations with their location_name by making a separate request to the https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages example: United Kingdom",
        -    "type": "string"
        -  },
        -  "offset": {
        -    "description": "offset in the results array of returned keywords optional field default value: 0 if you specify the 10 value, the first ten keywords in the results array will be omitted and the data will be provided for the successive keywords",
        -    "type": "integer"
        -  },
        -  "order_by": {
        -    "description": "results sorting rules optional field you can use the same values as in the filters array to sort the results possible sorting types: asc – results will be sorted in the ascending order desc – results will be sorted in the descending order you should use a comma to set up a sorting type example: [\"keyword_data.keyword_info.competition,desc\"] default rule: [\"keyword_data.keyword_info.search_volume,desc\"] note that you can set no more than three sorting rules in a single request you should use a comma to separate several sorting rules example: [\"keyword_data.keyword_info.search_volume,desc\",\"keyword_data.keyword_info.cpc,desc\"]",
        -    "items": {
        -      "type": "string"
        -    },
        -    "type": "array"
        -  },
        -  "replace_with_core_keyword": {
        -    "description": "return data for core keyword optional field if true, serp_info and related_keywords will be returned for the main keyword in the group that the specified keyword belongs to; if false, serp_info and related_keywords will be returned for the specified keyword (if available); refer to this help center article for more details; default value: false",
        -    "type": "boolean"
        -  },
        -  "tag": {
        -    "description": "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",
        -    "type": "string"
        -  }
        -}
      • removedInput schema / properties / body / items / required
        Removed value: -[
        -  "keyword"
        -]
      • changedInput schema / properties / body / items / type
        Previous value: -"object"New value: +[
        +  "object",
        +  "null"
        +]
      • changedInput schema / required
        Previous value: -[
        -  "body"
        -]New value: +[]
      • addedOutput schema / x-fastmcp-wrap-result
        Added value: +true
    • Changedpost_dataforseo_labs_google_search_intent_live8 fields changed
      • addedInput schema / properties / body / example
        Added value: +[
        +  {
        +    "keywords": [
        +      "login page",
        +      "audi a7",
        +      "elon musk",
        +      "milk store new york"
        +    ]
        +  }
        +]
      • removedInput schema / properties / body / items / allOf
        Removed value: -[
        -  {
        -    "anyOf": [
        -      {
        -        "required": [
        -          "language_name"
        -        ]
        -      },
        -      {
        -        "required": [
        -          "language_code"
        -        ]
        -      }
        -    ]
        -  }
        -]
      • addedInput schema / properties / body / items / anyOf
        Added value: +[
        +  {
        +    "example": [
        +      {
        +        "keywords": [
        +          "login page",
        +          "audi a7",
        +          "elon musk",
        +          "milk store new york"
        +        ]
        +      }
        +    ],
        +    "properties": {
        +      "keywords": {
        +        "description": "<em>target keywords</em><br><strong>required field</strong><br>UTF-8 encoding<br>maximum number of keywords you can specify in this array: 1000;<br>the keywords will be converted to lowercase format<p>learn more about rules and limitations of <code>keyword</code> and <code>keywords</code> fields in DataForSEO APIs in this <a href=\"https://dataforseo.com/help-center/rules-and-limitations-of-keyword-and-keywords-fields-in-dataforseo-apis\" rel=\"noopener noreferrer\" target=\"_blank\">Help Center article</a>",
        +        "items": {
        +          "type": "string"
        +        },
        +        "type": "array"
        +      },
        +      "tag": {
        +        "description": "<em>user-defined task identifier</em><br>optional field<br><em>the character limit is 255</em><br>you can use this parameter to identify the task and match it with the result<br>you will find the specified <code>tag</code> value in the <code>data</code> object of the response",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      }
        +    },
        +    "type": "object"
        +  }
        +]
      • removedInput schema / properties / body / items / properties
        Removed value: -{
        -  "keywords": {
        -    "description": "target keywords required field UTF-8 encoding maximum number of keywords you can specify in this array: 1000; the keywords will be converted to lowercase format learn more about rules and limitations of keyword and keywords fields in DataForSEO APIs in this Help Center article",
        -    "items": {
        -      "type": "string"
        -    },
        -    "type": "array"
        -  },
        -  "language_code": {
        -    "description": "language code required field if don’t specify language_name you can receive the list of available languages with their language_code by making a separate request to https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages Note: this endpoint currently supports these languages only; example: en",
        -    "type": "string"
        -  },
        -  "language_name": {
        -    "description": "full name of the language required field if don’t specify language_code you can receive the list of available languages with their language_name by making a separate request to https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages Note: this endpoint currently supports the following languages only: Arabic, ar, Chinese(Traditional), zh-TW, Czech, cs, Danish, da, Dutch, nl, English, en, Finnish, fi, French, fr, German, de, Hebrew, he, Hindi, hi, Italian, it, Japanese, ja, Korean, ko, Malay, ms, Norwegian(Bokmål), nb, Polish, pl, Portuguese, pt, Romanian, ro, Russian, ru, Spanish, es, Swedish, sv, Thai, th, Ukrainian, uk, Vietnamese, vi, Bulgarian, bg, Croatian, hr, Serbian, sr, Slovenian, sl, Bosnian, bs, Greek, el, Hungarian, hu, Slovak, sk, Turkish, tr example: English",
        -    "type": "string"
        -  },
        -  "tag": {
        -    "description": "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",
        -    "type": "string"
        -  }
        -}
      • removedInput schema / properties / body / items / required
        Removed value: -[
        -  "keywords"
        -]
      • changedInput schema / properties / body / items / type
        Previous value: -"object"New value: +[
        +  "object",
        +  "null"
        +]
      • changedInput schema / required
        Previous value: -[
        -  "body"
        -]New value: +[]
      • addedOutput schema / x-fastmcp-wrap-result
        Added value: +true
    • Changedpost_dataforseo_labs_google_top_searches_live6 fields changed
      • addedInput schema / properties / body / example
        Added value: +[
        +  {
        +    "language_name": "English",
        +    "limit": 3,
        +    "location_code": 2840
        +  }
        +]
      • changedInput schema / properties / body / items / anyOf
        Previous value: -[
        -  {
        -    "allOf": [
        -      {
        -        "anyOf": [
        -          {
        -            "required": [
        -              "location_name"
        -            ]
        -          },
        -          {
        -            "required": [
        -              "location_code"
        -            ]
        -          }
        -        ]
        -      },
        -      {
        -        "anyOf": [
        -          {
        -            "required": [
        -              "language_name"
        -            ]
        -          },
        -          {
        -            "required": [
        -              "language_code"
        -            ]
        -          }
        -        ]
        -      }
        -    ]
        -  },
        -  {
        -    "required": [
        -      "offset_token"
        -    ]
        -  }
        -]New value: +[
        +  {
        +    "example": [
        +      {
        +        "language_name": "English",
        +        "limit": 3,
        +        "location_code": 2840
        +      }
        +    ],
        +    "properties": {
        +      "filters": {
        +        "description": "<em>array of results filtering parameters</em><br>optional field<br><strong>you can add several filters at once (8 filters maximum)</strong><br>you should set a logical operator <code>and</code>, <code>or</code> between the conditions<br>the following operators are supported:<br><code>regex</code>, <code>not_regex</code>, <code>&lt;</code>, <code>&lt;=</code>, <code>&gt;</code>, <code>&gt;=</code>, <code>=</code>, <code>&lt;&gt;</code>, <code>in</code>, <code>not_in</code>, <code>match</code>, <code>not_match</code>, <code>ilike</code>, <code>not_ilike</code>, <code>like</code>,<code>not_like</code><br>you can use the <code>%</code> operator with <code>like</code> and <code>not_like</code>,as well as <code>ilike</code> and <code>not_ilike</code> to match any string of zero or more characters<br>example:<br><code>[\"keyword_info.search_volume\",\"&gt;\",0]</code><p><code>[[\"keyword_info.search_volume\",\"in\",[0,1000]],<br>\"and\",<br>[\"keyword_info.competition_level\",\"=\",\"LOW\"]]</code><p><code>[[\"keyword_info.search_volume\",\"&gt;\",100],<br>\"and\",<br>[[\"keyword_info.cpc\",\"&lt;\",0.5],<br>\"or\",<p>[\"keyword_info.high_top_of_page_bid\",\"&lt;=\",0.5]]]</code><br>for more information about filters, please refer to <a href=\"/v3/dataforseo_labs/filters\" target=\"_blank\" rel=\"noopener noreferrer\">Dataforseo Labs - Filters</a> or this <a href=\"https://dataforseo.com/help-center/how-to-use-filters-in-dataforseo-labs-api\" rel=\"noopener noreferrer\" target=\"_blank\">help center guide</a>",
        +        "items": {
        +          "type": [
        +            "object",
        +            "null"
        +          ]
        +        },
        +        "type": [
        +          "array",
        +          "null"
        +        ]
        +      },
        +      "ignore_synonyms": {
        +        "description": "<em>ignore highly similar keywords</em><br>optional field<br>if set to <code class=\"prettyprint\">true</code> only core keywords will be returned, all highly similar keywords will be excluded;  <br>default value: <code>false</code>",
        +        "type": [
        +          "boolean",
        +          "null"
        +        ]
        +      },
        +      "include_clickstream_data": {
        +        "description": "<em>include or exclude data from clickstream-based metrics in the result</em><br>optional field<br>if the parameter is set to <code>true</code>, you will receive <code>clickstream_keyword_info</code>, <code>keyword_info_normalized_with_clickstream</code>, and <code>keyword_info_normalized_with_bing</code> fields in the response<br>default value: <code>false</code><br>with this parameter enabled, you will be charged double the price for the request<p>learn more about how clickstream-based metrics are calculated in this <a href=\"https://dataforseo.com/help-center/what-are-clickstream-based-metrics-and-how-do-we-calculate-them\" rel=\"noopener noreferrer\" target=\"_blank\">help center article</a>",
        +        "type": [
        +          "boolean",
        +          "null"
        +        ]
        +      },
        +      "include_serp_info": {
        +        "description": "<em>include data from SERP for each keyword</em><br>optional field<br>if set to <code>true</code>, we will return a <code>serp_info</code> array containing SERP data (number of search results, relevant URL, and SERP features) for every keyword in the response<br>default value: <code>false</code>",
        +        "type": [
        +          "boolean",
        +          "null"
        +        ]
        +      },
        +      "language_code": {
        +        "description": "<em>language code</em><br><strong>required field if you don't specify</strong> <code>language_name</code><br><strong>Note:</strong> it is required to specify either <code>language_name</code> or <code>language_code</code><br>you can receive the list of available locations with their <code>language_code</code> by making a separate request to the <br><code>https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages</code><br>example:<br><code class=\"long-string\">en</code>",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "language_name": {
        +        "description": "<em>full name of the language</em><br><strong>required field if you don't specify</strong> <code>language_code</code><br><strong>Note:</strong> it is required to specify either <code>language_name</code> or <code>language_code</code><br>you can receive the list of available locations with their <code>language_name</code> by making a separate request to the <br><code>https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages</code><br>example:<br><code class=\"long-string\">English</code>",
        +        "type": "string"
        +      },
        +      "limit": {
        +        "description": "<em>the maximum number of returned keywords</em><br>optional field<br></strong>note:</strong> you can get more than 1000 results by using the <code>offset_token</code> provided in the response to each subsequent request<br>default value: <code>1000</code><br>maximum value: <code>1000</code>",
        +        "type": [
        +          "integer",
        +          "null"
        +        ]
        +      },
        +      "location_code": {
        +        "description": "<em>location code</em><br><strong>required field if you don't specify</strong> <code>location_name</code><br><strong>Note:</strong> it is required to specify either <code>location_name</code> or <code>location_code</code><br>you can receive the list of available locations with their <code>location_code</code> by making a separate request to the <br><code>https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages</code><br>example:<br><code class=\"long-string\">2840</code>",
        +        "type": "integer"
        +      },
        +      "location_name": {
        +        "description": "<em>full name of the location</em><br><strong>required field if you don't specify</strong> <code>location_code</code><br><strong>Note:</strong> it is required to specify either <code>location_name</code> or <code>location_code</code><br>you can receive the list of available locations with their <code>location_name</code> by making a separate request to the <br><code>https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages</code><br>example:<br><code class=\"long-string\">United Kingdom</code>",
        +        "type": "string"
        +      },
        +      "offset": {
        +        "description": "<em>offset in the results array of returned keywords</em><br>optional field<br>default value: <code>0</code><br>if you specify the <code>10</code> value, the first ten keywords in the results array will be omitted and the data will be provided for the successive keywords<br><strong>Note:</strong> we recommend using this parameter only when retrieving up to 10,000 results<br>for retrieving over 10,000 results, use the <code>offset_token</code> instead.",
        +        "type": [
        +          "integer",
        +          "null"
        +        ]
        +      },
        +      "offset_token": {
        +        "description": "<em>offset token for subsequent requests</em><br>optional field<br>provided in the identical filed of the response to each request;<br>use this parameter to avoid timeouts while trying to obtain over 10,000 results in a single request;<br>by specifying the unique <code>offset_token</code> value from the response array, you will get the subsequent results of the initial task;<br><code>offset_token</code> values are unique for each subsequent task <br><strong>Note:</strong> if the <code>offset_token</code> is specified in the request, all other parameters except <code>limit</code> will not be taken into account when processing a task.<br>learn more about this parameter on our <a href=\"https://dataforseo.com/help-center/what-is-the-difference-between-the-offset-and-offset_token-parameters#offset_token\" target=\"_blank\">Help Center</a>",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "order_by": {
        +        "description": "<em>results sorting rules</em><br>optional field<br>you can use the same values as in the <code>filters</code> array to sort the results<br>possible sorting types:<br><code>asc</code> - results will be sorted in the ascending order<br><code>desc</code> - results will be sorted in the descending order<br>you should use a comma to set up a sorting type<br>example:<br><code>[\"keyword_info.competition,desc\"]</code><br>default rule:<br><code>[\"keyword_info.search_volume,desc\"]</code><br><strong>note that you can set no more than three sorting rules in a single request</strong><br>you should use a comma to separate several sorting rules<br>example:<br><code>[\"keyword_info.search_volume,desc\",\"keyword_info.cpc,desc\"]</code>",
        +        "items": {
        +          "type": "string"
        +        },
        +        "type": [
        +          "array",
        +          "null"
        +        ]
        +      },
        +      "tag": {
        +        "description": "<em>user-defined task identifier</em><br>optional field<br><em>the character limit is 255</em><br>you can use this parameter to identify the task and match it with the result<br>you will find the specified <code>tag</code> value in the <code>data</code> object of the response",
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      }
        +    },
        +    "type": "object"
        +  }
        +]
      • removedInput schema / properties / body / items / properties
        Removed value: -{
        -  "filters": {
        -    "description": "array of results filtering parameters optional field you can add several filters at once (8 filters maximum) you should set a logical operator and, or between the conditions the following operators are supported: regex, not_regex, <, <=, >, >=, =, <>, in, not_in, match, not_match, ilike, not_ilike, like,not_like you can use the % operator with like and not_like,as well as ilike and not_ilike to match any string of zero or more characters example: [\"keyword_info.search_volume\",\">\",0] [[\"keyword_info.search_volume\",\"in\",[0,1000]], \"and\", [\"keyword_info.competition_level\",\"=\",\"LOW\"]] [[\"keyword_info.search_volume\",\">\",100], \"and\", [[\"keyword_info.cpc\",\"<\",0.5], \"or\", [\"keyword_info.high_top_of_page_bid\",\"<=\",0.5]]] for more information about filters, please refer to Dataforseo Labs - Filters or this help center guide",
        -    "items": {},
        -    "type": "array"
        -  },
        -  "ignore_synonyms": {
        -    "description": "ignore highly similar keywords optional field if set to true only core keywords will be returned, all highly similar keywords will be excluded; default value: false",
        -    "type": "boolean"
        -  },
        -  "include_clickstream_data": {
        -    "description": "include or exclude data from clickstream-based metrics in the result optional field if the parameter is set to true, you will receive clickstream_keyword_info, keyword_info_normalized_with_clickstream, and keyword_info_normalized_with_bing fields in the response default value: false with this parameter enabled, you will be charged double the price for the request learn more about how clickstream-based metrics are calculated in this help center article",
        -    "type": "boolean"
        -  },
        -  "include_serp_info": {
        -    "description": "include data from SERP for each keyword optional field if set to true, we will return a serp_info array containing SERP data (number of search results, relevant URL, and SERP features) for every keyword in the response default value: false",
        -    "type": "boolean"
        -  },
        -  "language_code": {
        -    "description": "language code required field if you don’t specify language_name Note: it is required to specify either language_name or language_code you can receive the list of available locations with their language_code by making a separate request to the https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages example: en",
        -    "type": "string"
        -  },
        -  "language_name": {
        -    "description": "full name of the language required field if you don’t specify language_code Note: it is required to specify either language_name or language_code you can receive the list of available locations with their language_name by making a separate request to the https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages example: English",
        -    "type": "string"
        -  },
        -  "limit": {
        -    "description": "the maximum number of returned keywords optional field note: you can get more than 1000 results by using the offset_token provided in the response to each subsequent request default value: 1000 maximum value: 1000",
        -    "type": "integer"
        -  },
        -  "location_code": {
        -    "description": "location code required field if you don’t specify location_name Note: it is required to specify either location_name or location_code you can receive the list of available locations with their location_code by making a separate request to the https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages example: 2840",
        -    "type": "integer"
        -  },
        -  "location_name": {
        -    "description": "full name of the location required field if you don’t specify location_code Note: it is required to specify either location_name or location_code you can receive the list of available locations with their location_name by making a separate request to the https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages example: United Kingdom",
        -    "type": "string"
        -  },
        -  "offset": {
        -    "description": "offset in the results array of returned keywords optional field default value: 0 if you specify the 10 value, the first ten keywords in the results array will be omitted and the data will be provided for the successive keywords Note: we recommend using this parameter only when retrieving up to 10,000 results for retrieving over 10,000 results, use the offset_token instead.",
        -    "type": "integer"
        -  },
        -  "offset_token": {
        -    "description": "offset token for subsequent requests optional field provided in the identical filed of the response to each request; use this parameter to avoid timeouts while trying to obtain over 10,000 results in a single request; by specifying the unique offset_token value from the response array, you will get the subsequent results of the initial task; offset_token values are unique for each subsequent task Note: if the offset_token is specified in the request, all other parameters except limit will not be taken into account when processing a task. learn more about this parameter on our Help Center",
        -    "type": "string"
        -  },
        -  "order_by": {
        -    "description": "results sorting rules optional field you can use the same values as in the filters array to sort the results possible sorting types: asc – results will be sorted in the ascending order desc – results will be sorted in the descending order you should use a comma to set up a sorting type example: [\"keyword_info.competition,desc\"] default rule: [\"keyword_info.search_volume,desc\"] note that you can set no more than three sorting rules in a single request you should use a comma to separate several sorting rules example: [\"keyword_info.search_volume,desc\",\"keyword_info.cpc,desc\"]",
        -    "items": {
        -      "type": "string"
        -    },
        -    "type": "array"
        -  },
        -  "tag": {
        -    "description": "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",
        -    "type": "string"
        -  }
        -}
      • changedInput schema / properties / body / items / type
        Previous value: -"object"New value: +[
        +  "object",
        +  "null"
        +]
      • changedInput schema / required
        Previous value: -[
        -  "body"
        -]New value: +[]
      • addedOutput schema / x-fastmcp-wrap-result
        Added value: +true
    • Changedsearch17 fields changed
      • addedInput schema / $schema
        Added value: +"https://json-schema.org/draft/2020-12/schema"
      • removedInput schema / properties / category / anyOf
        Removed value: -[
        -  {
        -    "enum": [
        -      "seo",
        -      "finance",
        -      "social",
        -      "search",
        -      "sales",
        -      "mail"
        -    ],
        -    "type": "string"
        -  },
        -  {
        -    "type": "null"
        -  }
        -]
      • removedInput schema / properties / category / default
        Removed value: -null
      • changedInput schema / properties / category / description
        Previous value: -"Restrict to one category (seo, finance, social, search, sales, mail). Omit to search everything."New value: +"Restrict retrieval to one category. Omit to search everything. (AIsa-only: tool-router has no equivalent.)"
      • addedInput schema / properties / category / enum
        Added value: +[
        +  "seo",
        +  "finance",
        +  "social",
        +  "search",
        +  "sales",
        +  "mail"
        +]
      • addedInput schema / properties / category / type
        Added value: +"string"
      • addedInput schema / properties / known_fields
        Added value: +{
        +  "additionalProperties": true,
        +  "default": {},
        +  "description": "Known values such as ticker, URL, provider, or identifier that improve retrieval.",
        +  "type": "object"
        +}
      • changedInput schema / properties / limit / description
        Previous value: -"Maximum candidates, 1-10"New value: +"Maximum number of additional direct tool candidates."
      • addedInput schema / properties / limit / maximum
        Added value: +20
      • addedInput schema / properties / limit / minimum
        Added value: +1
      • addedInput schema / properties / provider_filters
        Added value: +{
        +  "default": [],
        +  "description": "Optional exact catalog provider keys used to narrow retrieval (for example similarweb). Do not use display brands. Omit this field if the exact key is unknown.",
        +  "items": {
        +    "type": "string"
        +  },
        +  "maxItems": 50,
        +  "type": "array",
        +  "uniqueItems": true
        +}
      • changedInput schema / properties / query / description
        Previous value: -"What you need, in plain language, e.g. 'backlinks of a domain', 'recent tweets by a user', 'insider trades for AAPL'. English works best."New value: +"Natural-language capability or task to discover."
      • addedInput schema / properties / query / maxLength
        Added value: +2000
      • addedInput schema / properties / query / minLength
        Added value: +1
      • addedInput schema / properties / session_id
        Added value: +{
        +  "description": "Reuse the session_id returned by Search in all subsequent tool calls for this task. If omitted, a new session is created.",
        +  "maxLength": 128,
        +  "pattern": "^[A-Za-z0-9_-]*$",
        +  "type": "string"
        +}
      • addedOutput schema / properties
        Added value: +{
        +  "next_steps_guidance": {
        +    "anyOf": [
        +      {
        +        "type": "null"
        +      },
        +      {
        +        "type": "array"
        +      }
        +    ],
        +    "items": {
        +      "type": "string"
        +    }
        +  },
        +  "plan": {
        +    "additionalProperties": false,
        +    "anyOf": [
        +      {
        +        "type": "null"
        +      },
        +      {
        +        "type": "object"
        +      }
        +    ],
        +    "properties": {
        +      "canonical_use_case": {
        +        "type": "string"
        +      },
        +      "description": {
        +        "type": "string"
        +      },
        +      "known_pitfalls": {
        +        "anyOf": [
        +          {
        +            "type": "null"
        +          },
        +          {
        +            "type": "array"
        +          }
        +        ],
        +        "items": {
        +          "type": "string"
        +        }
        +      },
        +      "plan_ref": {
        +        "type": "string"
        +      },
        +      "primary_tools": {
        +        "anyOf": [
        +          {
        +            "type": "null"
        +          },
        +          {
        +            "type": "array"
        +          }
        +        ],
        +        "items": {
        +          "type": "string"
        +        }
        +      },
        +      "recommended_steps": {
        +        "anyOf": [
        +          {
        +            "type": "null"
        +          },
        +          {
        +            "type": "array"
        +          }
        +        ],
        +        "items": {
        +          "type": "string"
        +        }
        +      },
        +      "related_tools": {
        +        "anyOf": [
        +          {
        +            "type": "null"
        +          },
        +          {
        +            "type": "array"
        +          }
        +        ],
        +        "items": {
        +          "type": "string"
        +        }
        +      }
        +    },
        +    "required": [
        +      "canonical_use_case",
        +      "description",
        +      "known_pitfalls",
        +      "plan_ref",
        +      "primary_tools",
        +      "recommended_steps",
        +      "related_tools"
        +    ]
        +  },
        +  "retrieval_mode": {
        +    "anyOf": [
        +      {
        +        "type": "null"
        +      },
        +      {
        +        "type": "string"
        +      }
        +    ]
        +  },
        +  "search_id": {
        +    "type": "string"
        +  },
        +  "session_id": {
        +    "description": "Reuse the session_id returned by Search in all subsequent tool calls for this task. If omitted, a new session is created.",
        +    "maxLength": 128,
        +    "minLength": 1,
        +    "pattern": "^[A-Za-z0-9_-]{1,128}$",
        +    "type": "string"
        +  },
        +  "tools": {
        +    "anyOf": [
        +      {
        +        "type": "null"
        +      },
        +      {
        +        "type": "array"
        +      }
        +    ],
        +    "items": {
        +      "additionalProperties": false,
        +      "properties": {
        +        "arguments_schema": {
        +          "additionalProperties": true,
        +          "anyOf": [
        +            {
        +              "type": "null"
        +            },
        +            {
        +              "type": "object"
        +            }
        +          ]
        +        },
        +        "description": {
        +          "type": "string"
        +        },
        +        "execution_supported": {
        +          "description": "Whether this router can execute and quote the operation; false retains documentation and discovery only.",
        +          "type": "boolean"
        +        },
        +        "execution_unsupported_reason": {
        +          "description": "Why execution and quoting remain unavailable through this router.",
        +          "type": "string"
        +        },
        +        "has_full_schema": {
        +          "type": "boolean"
        +        },
        +        "match_reasons": {
        +          "anyOf": [
        +            {
        +              "type": "null"
        +            },
        +            {
        +              "type": "array"
        +            }
        +          ],
        +          "items": {
        +            "type": "string"
        +          }
        +        },
        +        "price": {
        +          "additionalProperties": true,
        +          "type": "object"
        +        },
        +        "retrieval_debug": {
        +          "additionalProperties": false,
        +          "anyOf": [
        +            {
        +              "type": "null"
        +            },
        +            {
        +              "type": "object"
        +            }
        +          ],
        +          "properties": {
        +            "fused_rank": {
        +              "type": "integer"
        +            },
        +            "fused_score": {
        +              "type": "number"
        +            },
        +            "lexical_rank": {
        +              "type": "integer"
        +            },
        +            "lexical_score": {
        +              "type": "number"
        +            },
        +            "rerank_admission_rank": {
        +              "type": "integer"
        +            },
        +            "rerank_rank": {
        +              "type": "integer"
        +            },
        +            "rerank_score": {
        +              "anyOf": [
        +                {
        +                  "type": "null"
        +                },
        +                {
        +                  "type": "number"
        +                }
        +              ]
        +            },
        +            "runtime_availability": {
        +              "type": "string"
        +            },
        +            "vector_view_ranks": {
        +              "additionalProperties": {
        +                "type": "integer"
        +              },
        +              "type": "object"
        +            },
        +            "vector_view_scores": {
        +              "additionalProperties": {
        +                "type": "number"
        +              },
        +              "type": "object"
        +            }
        +          },
        +          "required": [
        +            "fused_rank",
        +            "fused_score",
        +            "lexical_rank",
        +            "lexical_score",
        +            "rerank_admission_rank",
        +            "rerank_rank",
        +            "runtime_availability",
        +            "vector_view_ranks",
        +            "vector_view_scores"
        +          ]
        +        },
        +        "summary": {
        +          "type": "string"
        +        },
        +        "tool": {
        +          "type": "string"
        +        }
        +      },
        +      "required": [
        +        "description",
        +        "has_full_schema",
        +        "price",
        +        "summary",
        +        "tool"
        +      ],
        +      "type": "object"
        +    }
        +  }
        +}
      • addedOutput schema / required
        Added value: +[
        +  "next_steps_guidance",
        +  "search_id",
        +  "session_id",
        +  "tools"
        +]
    • Changeduse1 field changed
      • changedInput schema / properties / max_price_usd / description
        Previous value: -"Refuse the call before any spend if it would cost more than this many USD"New value: +"Refuse the call before any spend if its quoted price is above this many USD"
  6. 1 tool update
    • Changedget_details1 field changed
      • addedInput schema / properties / include_documentation
        Added value: +{
        +  "default": false,
        +  "description": "Include the complete native public OpenAPI document, reference closure and scoped completeness. Existing execution schemas remain unchanged.",
        +  "type": "boolean"
        +}
  7. 15 tool updates
    • Changedget_dataforseo_keywords_gads_ad_traffic_fetch1 field changed
      • changedInput schema / properties / id / description
        Previous value: -"DataForSEO task ID."New value: +"task identifier unique task identifier in our system in the UUID format you will be able to use it within 30 days to request the results of the task at any time"
    • Changedpost_dataforseo_keywords_bing_kw_for_keywords_live1 field changed
      • changedInput schema / properties / body / items / properties / date_from / description
        Previous value: -"starting date of the time range optional field minimal value: 24 months from today’s date; if you don’t specify this field, data will be provided for the last 12 months date format: \"yyyy-mm-dd\" example: \"2020-01-01\" Note: we do not recommend using a custom time range for the past year’s dates"New value: +"starting date of the time range optional field minimal value: 24 months from today's date; if you don't specify this field, data will be provided for the last 12 months; if Status endpoint returns false in the actual_data field, date_from can be set to the month before last and prior; if Status endpoint returns true in the actual_data field, date_from can be set to the last month and prior; date format: \"yyyy-mm-dd\" example: \"2020-01-01\" Note: we do not recommend using a custom time range for the past year's dates"
    • Changedpost_dataforseo_keywords_bing_kw_for_site_live1 field changed
      • changedInput schema / properties / body / items / properties / date_from / description
        Previous value: -"starting date of the time range optional field minimal value: 24 months from today’s date; if you don’t specify this field, data will be provided for the last 12 months date format: \"yyyy-mm-dd\" example: \"2020-01-01\" Note: we do not recommend using a custom time range for the past year’s dates"New value: +"starting date of the time range optional field minimal value: 24 months from today's date; if you don't specify this field, data will be provided for the last 12 months; if Status endpoint returns false in the actual_data field, date_from can be set to the month before last and prior; if Status endpoint returns true in the actual_data field, date_from can be set to the last month and prior; date format: \"yyyy-mm-dd\" example: \"2020-01-01\" Note: we do not recommend using a custom time range for the past year's dates"
    • Changedpost_dataforseo_keywords_bing_search_volume_live1 field changed
      • changedInput schema / properties / body / items / properties / date_from / description
        Previous value: -"starting date of the time range optional field minimal value: 24 months from today’s date if you don’t specify this field, data will be provided for the last 12 months minimum value: two years back from today’s date date format: \"yyyy-mm-dd\" example: \"2020-01-01\" Note: we do not recommend using a custom time range for the past year’s dates"New value: +"starting date of the time range optional field minimal value: 24 months from today's date; if you don't specify this field, data will be provided for the last 12 months; minimum value: two years back from today’s date; if Status endpoint returns false in the actual_data field, date_from can be set to the month before last and prior; if Status endpoint returns true in the actual_data field, date_from can be set to the last month and prior; date format: \"yyyy-mm-dd\" example: \"2020-01-01\"Note: we do not recommend using a custom time range for the past year's dates"
    • Changedpost_dataforseo_keywords_gads_ad_traffic_submit1 field changed
      • changedInput schema / properties / body / items / properties / sort_by / description
        Previous value: -"results sorting parameters optional field Use these parameters to sort the results by relevance, impressions, ctr, average_cpc, cost, or clicks in the descending order default value: relevance"New value: +"results sorting parameters optional field Use these parameters to sort the results by relevance, average_cpc, cost, or clicks in the descending order default value: relevance"
    • Changedpost_dataforseo_keywords_gads_search_volume_live1 field changed
      • changedInput schema / properties / body / items / properties / include_adult_keywords / description
        Previous value: -"include keywords associated with adult content optional field if set to true, adult keywords will be included in the response default value: false note that the API may return no data for such keywords due to Google Ads restrictions"New value: +"include keywords associated with adult content optional field if set to_true, adult keywords will be included in the response default value:_false note_that the API may return no data for such keywords due to_Google Ads restrictions n"
    • Changedpost_dataforseo_keywords_trends_demography_live1 field changed
      • changedInput schema / properties / body / items / properties / type / description
        Previous value: -"dataforseo trends type optional field if you don’t specify this field, the web type will be used by default possible values: web, news, ecommerce"New value: +"type of element"
    • Changedpost_dataforseo_keywords_trends_explore_live1 field changed
      • changedInput schema / properties / body / items / properties / type / description
        Previous value: -"dataforseo trends type optional field if you don’t specify this field, the web type will be used by default possible values: web, news, ecommerce"New value: +"type of element"
    • Changedpost_dataforseo_keywords_trends_merged_data_live1 field changed
      • changedInput schema / properties / body / items / properties / type / description
        Previous value: -"dataforseo trends type optional field if you don’t specify this field, the web type will be used by default possible values: web, news, ecommerce"New value: +"type of element"
    • Changedpost_dataforseo_keywords_trends_subregion_interests_live1 field changed
      • changedInput schema / properties / body / items / properties / type / description
        Previous value: -"dataforseo trends type optional field if you don’t specify this field, the web type will be used by default possible values: web, news, ecommerce"New value: +"type of element"
    • Changedpost_dataforseo_labs_google_keyword_ideas_live3 fields changed
      • changedInput schema / properties / body / items / properties / closely_variants / description
        Previous value: -"search mode optional field if set to true the results will be based on the phrase-match search algorithm if set to false the results will be based on the broad-match search algorithm default value: false"New value: +"search mode optional field if set to_true the results will be based on the phrase-match search algorithm if set to false the results will be based on the broad-match search algorithm default value: falsen"
      • changedInput schema / properties / body / items / properties / filters / description
        Previous value: -"array of results filtering parameters optional field you can add several filters at once (8 filters maximum) you should set a logical operator and, or between the conditions the following operators are supported: regex, not_regex, , , >, >=, =, , in, not_in, match, not_match, ilike, not_ilike, like, not_like you can use the % operator with like and not_like,as well as ilike, not_ilike to match any string of zero or more characters note that you can not filter the results by relevance example: [\"keyword_info.search_volume\",\">\",0] [[\"keyword_info.search_volume\",\"in\",[0,1000]], \"and\", [\"keyword_info.competition_level\",\"=\",\"LOW\"]] [[\"keyword_info.search_volume\",\">\",100], \"and\", [[\"keyword_info.cpc\",\" for more information about filters, please refer to Dataforseo Labs – Filters or this help center guide"New value: +"array of results filtering parameters optional field you can add several filters at once (8 filters maximum) you should set a logical operator and, or between the conditions the following operators are supported: regex, not_regex, <, <=, >, >=, =, <>, in, not_in, match, not_match, ilike, not_ilike, like, not_like you can use the % operator with like and not_like,as well as ilike, not_ilike to match any string of zero or more characters note that you can not filter the results by relevance example: [\"keyword_info.search_volume\",\">\",0] [[\"keyword_info.search_volume\",\"in\",[0,1000]], \"and\", [\"keyword_info.competition_level\",\"=\",\"LOW\"]] [[\"keyword_info.search_volume\",\">\",100], \"and\", [[\"keyword_info.cpc\",\"<\",0.5], \"or\", [\"keyword_info.high_top_of_page_bid\",\"<=\",0.5]]] for more information about filters, please refer to Dataforseo Labs - Filters or this help center guide"
      • changedInput schema / properties / body / items / properties / ignore_synonyms / description
        Previous value: -"ignore highly similar keywords optional field if set to true only core keywords will be returned, all highly similar keywords will be excluded; default value: false"New value: +"ignore highly similar keywords optional field if set to_true only core keywords will be returned, all highly similar keywords will be excluded; default value: falsen"
    • Changedpost_dataforseo_labs_google_keyword_suggestions_live1 field changed
      • changedInput schema / properties / body / items / properties / filters / description
        Previous value: -"array of results filtering parameters optional field you can add several filters at once (8 filters maximum) you should set a logical operator and, or between the conditions the following operators are supported: regex, not_regex, , , >, >=, =, , in, not_in, match, not_match, ilike, not_ilike, like, not_like you can use the % operator with like and not_like, as well as ilike and not_ilike to match any string of zero or more characters example: [\"keyword_info.search_volume\",\">\",0] [[\"keyword_info.search_volume\",\"in\",[0,1000]], \"and\", [\"keyword_info.competition_level\",\"=\",\"LOW\"]][[\"keyword_info.search_volume\",\">\",100], \"and\", [[\"keyword_info.cpc\",\" for more information about filters, please refer to Dataforseo Labs – Filters or this help center guide"New value: +"array of results filtering parameters optional field you can add several filters at once (8 filters maximum) you should set a logical operator and, or between the conditions the following operators are supported: regex, not_regex, <, <=, >, >=, =, <>, in, not_in, match, not_match, ilike, not_ilike, like, not_like you can use the % operator with like and not_like, as well as ilike and not_ilike to match any string of zero or more characters example: [\"keyword_info.search_volume\",\">\",0] [[\"keyword_info.search_volume\",\"in\",[0,1000]], \"and\", [\"keyword_info.competition_level\",\"=\",\"LOW\"]][[\"keyword_info.search_volume\",\">\",100], \"and\", [[\"keyword_info.cpc\",\"<\",0.5], \"or\", [\"keyword_info.high_top_of_page_bid\",\"<=\",0.5]]] for more information about filters, please refer to Dataforseo Labs - Filters or this help center guide"
    • Changedpost_dataforseo_labs_google_keywords_for_categories_live1 field changed
      • changedInput schema / properties / body / items / properties / filters / description
        Previous value: -"array of results filtering parameters optional field you can add several filters at once (8 filters maximum) you should set a logical operator and, or between the conditions the following operators are supported: regex, not_regex, , , >, >=, =, , in, not_in, match, not_match, ilike, not_ilike, like, not_like you can use the % operator with like and not_like,as well as ilike, not_ilike to match any string of zero or more characters example: [\"keyword_info.search_volume\",\">\",0] [[\"keyword_info.search_volume\",\"in\",[0,1000]], \"and\", [\"keyword_info.competition_level\",\"=\",\"LOW\"]] [[\"keyword_info.search_volume\",\">\",100], \"and\", [[\"keyword_info.cpc\",\" for more information about filters, please refer to Dataforseo Labs – Filters or this help center guide"New value: +"array of results filtering parameters optional field you can add several filters at once (8 filters maximum) you should set a logical operator and, or between the conditions the following operators are supported: regex, not_regex, <, <=, >, >=, =, <>, in, not_in, match, not_match, ilike, not_ilike, like, not_like you can use the % operator with like and not_like,as well as ilike, not_ilike to match any string of zero or more characters example: [\"keyword_info.search_volume\",\">\",0] [[\"keyword_info.search_volume\",\"in\",[0,1000]], \"and\", [\"keyword_info.competition_level\",\"=\",\"LOW\"]] [[\"keyword_info.search_volume\",\">\",100], \"and\", [[\"keyword_info.cpc\",\"<\",0.5], \"or\", [\"keyword_info.high_top_of_page_bid\",\"<=\",0.5]]] for more information about filters, please refer to Dataforseo Labs - Filters or this help center guide"
    • Changedpost_dataforseo_labs_google_related_keywords_live1 field changed
      • changedInput schema / properties / body / items / properties / filters / description
        Previous value: -"array of results filtering parameters optional field you can add several filters at once (8 filters maximum) you should set a logical operator and, or between the conditions the following operators are supported: regex, not_regex, , , >, >=, =, , in, not_in, match, not_match, ilike, not_ilike, like,not_like you can use the % operator with like and not_like, as well as ilike and not_ilike to match any string of zero or more characters example: [\"keyword_data.keyword_info.search_volume\",\">\",0] [[\"keyword_info.search_volume\",\"in\",[0,1000]], \"and\", [\"keyword_data.keyword_info.competition_level\",\"=\",\"LOW\"]] [[\"keyword_data.keyword_info.search_volume\",\">\",100], \"and\", [[\"keyword_data.keyword_info.cpc\",\" for more information about filters, please refer to Dataforseo Labs – Filters or this help center guide"New value: +"array of results filtering parameters optional field you can add several filters at once (8 filters maximum) you should set a logical operator and, or between the conditions the following operators are supported: regex, not_regex, <, <=, >, >=, =, <>, in, not_in, match, not_match, ilike, not_ilike, like,not_like you can use the % operator with like and not_like, as well as ilike and not_ilike to match any string of zero or more characters example: [\"keyword_data.keyword_info.search_volume\",\">\",0] [[\"keyword_info.search_volume\",\"in\",[0,1000]], \"and\", [\"keyword_data.keyword_info.competition_level\",\"=\",\"LOW\"]] [[\"keyword_data.keyword_info.search_volume\",\">\",100], \"and\", [[\"keyword_data.keyword_info.cpc\",\"<\",0.5], \"or\", [\"keyword_info.high_top_of_page_bid\",\"<=\",0.5]]] for more information about filters, please refer to Dataforseo Labs - Filters or this help center guide"
    • Changedpost_dataforseo_labs_google_top_searches_live1 field changed
      • changedInput schema / properties / body / items / properties / filters / description
        Previous value: -"array of results filtering parameters optional field you can add several filters at once (8 filters maximum) you should set a logical operator and, or between the conditions the following operators are supported: regex, not_regex, , , >, >=, =, , in, not_in, match, not_match, ilike, not_ilike, like,not_like you can use the % operator with like and not_like,as well as ilike and not_ilike to match any string of zero or more characters example: [\"keyword_info.search_volume\",\">\",0] [[\"keyword_info.search_volume\",\"in\",[0,1000]], \"and\", [\"keyword_info.competition_level\",\"=\",\"LOW\"]] [[\"keyword_info.search_volume\",\">\",100], \"and\", [[\"keyword_info.cpc\",\" for more information about filters, please refer to Dataforseo Labs – Filters or this help center guide"New value: +"array of results filtering parameters optional field you can add several filters at once (8 filters maximum) you should set a logical operator and, or between the conditions the following operators are supported: regex, not_regex, <, <=, >, >=, =, <>, in, not_in, match, not_match, ilike, not_ilike, like,not_like you can use the % operator with like and not_like,as well as ilike and not_ilike to match any string of zero or more characters example: [\"keyword_info.search_volume\",\">\",0] [[\"keyword_info.search_volume\",\"in\",[0,1000]], \"and\", [\"keyword_info.competition_level\",\"=\",\"LOW\"]] [[\"keyword_info.search_volume\",\">\",100], \"and\", [[\"keyword_info.cpc\",\"<\",0.5], \"or\", [\"keyword_info.high_top_of_page_bid\",\"<=\",0.5]]] for more information about filters, please refer to Dataforseo Labs - Filters or this help center guide"
  8. 54 tool updates
    • First observedbatch_use
    • First observedget_dataforseo_keywords_bing_audience_industries
    • First observedget_dataforseo_keywords_bing_audience_job_functions
    • First observedget_dataforseo_keywords_bing_kw_for_url_languages
    • First observedget_dataforseo_keywords_bing_kw_performance_locales
    • First observedget_dataforseo_keywords_bing_languages
    • First observedget_dataforseo_keywords_bing_locations
    • First observedget_dataforseo_keywords_bing_volume_history_locales
    • First observedget_dataforseo_keywords_clickstream_locales
    • First observedget_dataforseo_keywords_gads_ad_traffic_fetch
    • First observedget_dataforseo_keywords_gads_status
    • First observedget_dataforseo_keywords_google_trends_categories
    • First observedget_dataforseo_keywords_trends_locations
    • First observedget_dataforseo_labs_google_categories_for_kw_languages
    • First observedget_details
    • First observedget_semrush_broad_match_keywords
    • First observedget_semrush_domain_organic_keywords
    • First observedget_semrush_domain_paid_keywords
    • First observedget_semrush_keyword_difficulty
    • First observedget_semrush_keyword_overview
    • First observedget_semrush_question_keywords
    • First observedget_semrush_url_organic_keywords
    • First observedget_similarweb_keywords
    • First observedget_similarweb_landing_pages
    • First observedlist_categories
    • First observedpost_dataforseo_keywords_bing_audience_live
    • First observedpost_dataforseo_keywords_bing_kw_for_keywords_live
    • First observedpost_dataforseo_keywords_bing_kw_for_site_live
    • First observedpost_dataforseo_keywords_bing_kw_for_url_live
    • First observedpost_dataforseo_keywords_bing_kw_performance_live
    • First observedpost_dataforseo_keywords_bing_search_volume_live
    • First observedpost_dataforseo_keywords_clickstream_bulk_volume_live
    • First observedpost_dataforseo_keywords_clickstream_global_volume_live
    • First observedpost_dataforseo_keywords_clickstream_search_volume_live
    • First observedpost_dataforseo_keywords_gads_ad_traffic_submit
    • First observedpost_dataforseo_keywords_gads_kw_for_keywords_live
    • First observedpost_dataforseo_keywords_gads_kw_for_site_live
    • First observedpost_dataforseo_keywords_gads_search_volume_live
    • First observedpost_dataforseo_keywords_trends_demography_live
    • First observedpost_dataforseo_keywords_trends_explore_live
    • First observedpost_dataforseo_keywords_trends_merged_data_live
    • First observedpost_dataforseo_keywords_trends_subregion_interests_live
    • First observedpost_dataforseo_labs_google_bulk_keyword_difficulty_live
    • First observedpost_dataforseo_labs_google_categories_for_kw_live
    • First observedpost_dataforseo_labs_google_historical_keyword_data_live
    • First observedpost_dataforseo_labs_google_keyword_ideas_live
    • First observedpost_dataforseo_labs_google_keyword_overview_live
    • First observedpost_dataforseo_labs_google_keyword_suggestions_live
    • First observedpost_dataforseo_labs_google_keywords_for_categories_live
    • First observedpost_dataforseo_labs_google_related_keywords_live
    • First observedpost_dataforseo_labs_google_search_intent_live
    • First observedpost_dataforseo_labs_google_top_searches_live
    • First observedsearch
    • First observeduse

Publisher details

Operator
AIsa · Publisher source
Operator website
https://aisa.one
Vendor relationship
Independent
Trust center
Not available
Restrictions
No paid plan, admin approval, regional limit or custom OAuth app is needed to connect. Sign-in is OAuth against auth.aisa.one with dynamic client registration (RFC 7591), or an Authorization: Bearer AIsa API key. search, get_details and list_categories are free. use and batch_use are billed per call to the caller's own AIsa key, and max_price_usd refuses anything above a cap before any spend. Some operations are subscription-only on the gateway and answer 402 without the Hive GTM Growth plan.

Related MCP Connectors

  • Your agent needs the derived numbers — domain authority, what a site ranks for, related and relevant keywords, search intent, and who the real competitors are — for Google, Amazon and the app stores. **What you can ask for** • "What is this domain's authority, and how has its rank history moved?" • "Which keywords does this site rank for, and with what intent?" • "Who are this domain's organic competitors, and where do we overlap?" • "Which keywords does this Amazon product rank for?" • "Compare these two domains keyword by keyword." **How to use it** Point any MCP client at https://mcp.aisa.one/seo-labs/mcp and sign in with OAuth — there is no key to create or paste. 46 tools: ranked, related and relevant keywords, keyword ideas and intent, domain authority and rank history, competitor and intersection analysis, bulk metrics, plus the same shapes for Amazon products and Apple and Google Play apps. **Why this rather than the source** Ahrefs domain rating, Semrush rank history and DataForSEO Labs answering the same questions side by side. **It is also a door to the rest** The same login reaches 26 sources and 580+ operations. Size the competitor here, then ask the same agent for their traffic mix or their contacts — without adding a second server. **What it costs** Finding and inspecting an operation is free. Running one is billed per call at API prices, with no seat and no monthly minimum, and every call takes max_price_usd so an agent cannot overspend by accident. **Where else it reaches** https://mcp.aisa.one/seo/mcp for all of it at once — rankings, keywords, backlinks, site health and AI-answer visibility across DataForSEO, Semrush and Ahrefs.

  • Your agent needs the whole search picture — what you rank for, who outranks you, who links to them, what is broken on the site, and whether ChatGPT names you at all. Normally that is three SEO vendors and three subscriptions. **What you can ask for** • "What does this domain rank for, and which competitors take the same keywords?" • "Who links to my competitor and not to me?" • "Crawl this site and list the pages with broken tags or duplicate content." • "Does Perplexity cite us when asked about this category?" • "How hard is this keyword, and what does the SERP look like today?" **How to use it** Point any MCP client at https://mcp.aisa.one/seo/mcp and sign in with OAuth — there is no key to create or paste. 60 tools spanning DataForSEO, Semrush and Ahrefs: SERPs, keywords and difficulty, backlinks and referring domains, on-page crawling, domain authority, and answers from ChatGPT, Claude, Gemini and Perplexity. **Why this rather than the source** Three indexes behind one account, so you can cross-check a number instead of trusting one vendor's version of it. **It is also a door to the rest** The same login reaches 26 sources and 580+ operations. Check the ranking here, then ask the same agent for that competitor's traffic mix, its ad spend, or the person to email — without adding a second server. **What it costs** Finding and inspecting an operation is free. Running one is billed per call at API prices, with no seat and no monthly minimum, and every call takes max_price_usd so an agent cannot overspend by accident. **Where else it reaches** Narrower endpoints: https://mcp.aisa.one/seo-serp/mcp · /seo-keywords/mcp · /seo-backlinks/mcp · /seo-onpage/mcp · /seo-labs/mcp · /seo-ai-visibility/mcp · /seo-content/mcp · /seo-domains/mcp · /seo-business/mcp · /seo-merchant/mcp · /seo-apps/mcp · /seo-serp-other-engines/mcp

  • Your agent needs the Google results page as it actually renders — organic and paid, the AI overview, maps, images, news, jobs and the finance panel — not a scraped guess. **What you can ask for** • "What does the SERP for this keyword look like in Germany, on mobile?" • "Does this query trigger an AI overview, and what does it say?" • "Who is advertising against our brand name?" • "Find local results and the map pack for this phrase." • "Search Google by this image and tell me where else it appears." **How to use it** Point any MCP client at https://mcp.aisa.one/seo-serp/mcp and sign in with OAuth — there is no key to create or paste. 38 tools across Google's surfaces: organic, ads and advertisers, AI mode, autocomplete, images, news, maps and local, events, jobs, datasets, scholar, finance quotes and markets, plus Semrush's organic and paid result sets. **Why this rather than the source** Location and language are parameters, so you can read the page a customer in another country sees. **It is also a door to the rest** The same login reaches 26 sources and 580+ operations. Read the SERP here, then ask the same agent who links to the winner or how much traffic they get — without adding a second server. **What it costs** Finding and inspecting an operation is free. Running one is billed per call at API prices, with no seat and no monthly minimum, and every call takes max_price_usd so an agent cannot overspend by accident. **Where else it reaches** https://mcp.aisa.one/seo-serp-other-engines/mcp for Bing, Yahoo, Baidu, Naver, Seznam and YouTube. https://mcp.aisa.one/seo/mcp for all of it at once — rankings, keywords, backlinks, site health and AI-answer visibility across DataForSEO, Semrush and Ahrefs.

  • Google is not the whole market. Your agent needs Bing, Yahoo, Baidu, Naver, Seznam and YouTube results — the engines that decide whether you exist in China, Korea, Japan or Central Europe. **What you can ask for** • "What ranks for this term on Baidu, and how different is it from Google?" • "Check Naver results for our Korean brand name." • "Compare Bing and Yahoo results for the same query." • "What comes up on YouTube search for this phrase in Japanese?" • "Take a screenshot of the results page as a user there sees it." **How to use it** Point any MCP client at https://mcp.aisa.one/seo-serp-other-engines/mcp and sign in with OAuth — there is no key to create or paste. 34 tools: organic results from Bing, Yahoo, Baidu, Naver and Seznam in live, regular and raw-HTML forms, YouTube search, an AI summary of a result set, and a rendered screenshot. **Why this rather than the source** The engines that matter outside the US, with the same call shape as the Google ones. **It is also a door to the rest** The same login reaches 26 sources and 580+ operations. Check the local engine here, then ask the same agent what the site's traffic or backlinks look like in that market — without adding a second server. **What it costs** Finding and inspecting an operation is free. Running one is billed per call at API prices, with no seat and no monthly minimum, and every call takes max_price_usd so an agent cannot overspend by accident. **Where else it reaches** https://mcp.aisa.one/seo-serp/mcp for Google itself. https://mcp.aisa.one/seo/mcp for all of it at once — rankings, keywords, backlinks, site health and AI-answer visibility across DataForSEO, Semrush and Ahrefs.

Related MCP Servers

  • A
    license
    Not graded
    quality
    C
    maintenance
    MCP server that exposes Google Ads keyword search volumes to AI agents via the KeywordPlanIdeaService, offering a free alternative to paid keyword-volume APIs.
    1
    MIT
  • A
    license
    Not graded
    quality
    B
    maintenance
    Enables AI agents and terminal users to pull Google's own search-demand figures—monthly volume, 24-month history, true year-over-year, seasonality, competition and top-of-page bid ranges—for keywords they name or discover from seeds, a page URL or a whole site, plus place-name geotargeting. It is strictly read-only, never creating campaigns or spending money, and keeps "no data" distinct from zero searches.
    14 npm
    1
    MIT
  • A
    license
    A
    quality
    C
    maintenance
    Web intelligence MCP server for AI agents. 7 tools for SERP analysis, competitor research, market trends, content gap analysis, keyword insights, audience discovery, and citation tracking.
    7
    2
    AGPL 3.0
  • A
    license
    Not graded
    quality
    C
    maintenance
    Agent-first SEO toolkit with 24 MCP tools for keyword research, rank tracking, site audits up to 50k pages, competitor analysis, content gap detection, domain reputation, backlink intelligence, Google Search Console integration, and AI-powered strategy generation with Claude, GPT, and Ollama. SQLite-backed and bring-your-own-key.
    MIT
Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources