- HTTP request
- Path parameters
- Request body
- Response body
- Authorization scopes
- KeywordPlanKeywordAnnotation
- KeywordAndUrlSeed
- KeywordSeed
- UrlSeed
- SiteSeed
- GenerateKeywordIdeaResult
- KeywordAnnotations
- KeywordConcept
- ConceptGroup
- KeywordPlanConceptGroupType
- Try it!
Returns a list of keyword ideas.
List of thrown errors: AuthenticationError AuthorizationError CollectionSizeError HeaderError InternalError KeywordPlanIdeaError QuotaError RequestError
HTTP request
POST https://googleads.googleapis.com/v18/customers/{customerId}:generateKeywordIdeas
The URL uses gRPC Transcoding syntax.
Path parameters
Parameters | |
---|---|
customer |
The ID of the customer with the recommendation. |
Request body
The request body contains data with the following structure:
JSON representation |
---|
{ "geoTargetConstants": [ string ], "includeAdultKeywords": boolean, "pageToken": string, "pageSize": integer, "keywordPlanNetwork": enum ( |
Fields | |
---|---|
geo |
The resource names of the location to target. Maximum is 10. An empty list MAY be used to specify all targeting geos. |
include |
If true, adult keywords will be included in response. The default value is false. |
page |
Token of the page to retrieve. If not specified, the first page of results will be returned. To request next page of results use the value obtained from |
page |
Number of results to retrieve in a single page. A maximum of 10,000 results may be returned, if the pageSize exceeds this, it is ignored. If unspecified, at most 10,000 results will be returned. The server may decide to further limit the number of returned resources. If the response contains fewer than 10,000 results it may not be assumed as last page of results. |
keyword |
Targeting network. If not set, Google Search And Partners Network will be used. |
keyword |
The keyword annotations to include in response. |
aggregate |
The aggregate fields to include in response. |
historical |
The options for historical metrics data. |
language |
The resource name of the language to target. Each keyword belongs to some set of languages; a keyword is included if language is one of its languages. If not set, all keywords will be included. |
Union field seed . The type of seed to generate keyword ideas. seed can be only one of the following: |
|
keyword |
A Keyword and a specific Url to generate ideas from for example, cars, www.example.com/cars. |
keyword |
A Keyword or phrase to generate ideas from, for example, cars. |
url |
A specific url to generate ideas from, for example, www.example.com/cars. |
site |
The site to generate ideas from, for example, www.example.com. |
Response body
Response message for KeywordPlanIdeaService.GenerateKeywordIdeas
.
If successful, the response body contains data with the following structure:
JSON representation |
---|
{ "results": [ { object ( |
Fields | |
---|---|
results[] |
Results of generating keyword ideas. |
aggregate |
The aggregate metrics for all keyword ideas. |
next |
Pagination token used to retrieve the next page of results. Pass the content of this string as the |
total |
Total number of results available. |
Authorization scopes
Requires the following OAuth scope:
https://www.googleapis.com/auth/adwords
For more information, see the OAuth 2.0 Overview.
KeywordPlanKeywordAnnotation
Enumerates keyword plan annotations that can be requested.
Enums | |
---|---|
UNSPECIFIED |
Not specified. |
UNKNOWN |
The value is unknown in this version. |
KEYWORD_CONCEPT |
Return the keyword concept and concept group data. |
KeywordAndUrlSeed
Keyword And Url Seed
JSON representation |
---|
{ "keywords": [ string ], "url": string } |
Fields | |
---|---|
keywords[] |
Requires at least one keyword. |
url |
The URL to crawl in order to generate keyword ideas. |
KeywordSeed
Keyword Seed
JSON representation |
---|
{ "keywords": [ string ] } |
Fields | |
---|---|
keywords[] |
Requires at least one keyword. |
UrlSeed
Url Seed
JSON representation |
---|
{ "url": string } |
Fields | |
---|---|
url |
The URL to crawl in order to generate keyword ideas. |
SiteSeed
Site Seed
JSON representation |
---|
{ "site": string } |
Fields | |
---|---|
site |
The domain name of the site. If the customer requesting the ideas doesn't own the site provided only public information is returned. |
GenerateKeywordIdeaResult
The result of generating keyword ideas.
JSON representation |
---|
{ "keywordIdeaMetrics": { object ( |
Fields | |
---|---|
keyword |
The historical metrics for the keyword. |
keyword |
The annotations for the keyword. The annotation data is only provided if requested. |
close |
The list of close variants from the requested keywords that are combined into this GenerateKeywordIdeaResult. See https://support.google.com/google-ads/answer/9342105 for the definition of "close variants". |
text |
Text of the keyword idea. As in Keyword Plan historical metrics, this text may not be an actual keyword, but the canonical form of multiple keywords. See KeywordPlanKeywordHistoricalMetrics message in KeywordPlanService. |
KeywordAnnotations
The annotations for the keyword plan keywords.
JSON representation |
---|
{
"concepts": [
{
object ( |
Fields | |
---|---|
concepts[] |
The list of concepts for the keyword. |
KeywordConcept
The concept for the keyword.
JSON representation |
---|
{
"name": string,
"conceptGroup": {
object ( |
Fields | |
---|---|
name |
The concept name for the keyword in the conceptGroup. |
concept |
The concept group of the concept details. |
ConceptGroup
The concept group for the keyword concept.
JSON representation |
---|
{
"name": string,
"type": enum ( |
Fields | |
---|---|
name |
The concept group name. |
type |
The concept group type. |
KeywordPlanConceptGroupType
Enumerates keyword plan concept group types.
Enums | |
---|---|
UNSPECIFIED |
The concept group classification different from brand/non-brand. This is a catch all bucket for all classifications that are none of the below. |
UNKNOWN |
The value is unknown in this version. |
BRAND |
The concept group classification is based on BRAND. |
OTHER_BRANDS |
The concept group classification based on BRAND, that didn't fit well with the BRAND classifications. These are generally outliers and can have very few keywords in this type of classification. |
NON_BRAND |
These concept group classification is not based on BRAND. This is returned for generic keywords that don't have a brand association. |