Dengan menggunakan KeywordPlanIdeaService, Anda
dapat menemukan saran kata kunci yang relevan dengan kampanye Google Penelusuran, atau mengambil metrik historis untuk daftar kata kunci
yang ada.
Hasilkan ide
Hasilkan ide kata kunci untuk kampanye dengan
KeywordPlanIdeaService.GenerateKeywordIdeas.
Anda dapat memberikan kata kunci dan URL awal untuk menghasilkan ide. Tetapkan parameter penargetan seperti lokasi, bahasa, dan setelan jaringan untuk mempersempit penelusuran. Layanan ini menampilkan statistik historis, seperti data volume penelusuran, untuk membantu Anda memutuskan apakah akan menggunakan kata kunci dalam kampanye. Bagi pengguna yang sudah familiar dengan UI Google Ads, fitur ini mirip dengan Keyword Planner.
Ada beberapa cara untuk membuat awal untuk menghasilkan ide kata kunci:
Untuk kata atau frasa yang menjelaskan iklan Anda, gunakan
KeywordSeed(memerlukan minimal 1 dan maksimal 20 kata kunci). Kata kunci ini dapat berupa jenis bisnis umum yang Anda targetkan, seperti tukang ledeng, atau produk atau layanan yang Anda tawarkan, seperti pembersihan saluran air.Untuk URL halaman atau seluruh situs yang terkait dengan bisnis Anda, gunakan
UrlSeed. URL awal hanya menargetkan URL tertentu. Jika tidak ada hasil yang cocok, penelusuran akan otomatis diperluas hingga halaman dari domain yang sama.Untuk URL awal, layanan tidak menggunakan konten hyperlink untuk menghasilkan ide kata kunci.
Untuk kata kunci awal dan URL awal, gunakan
KeywordAndUrlSeed(memerlukan 1 hingga 20 kata kunci beserta URL).Penggunaan
KeywordAndUrlSeeddapat menghasilkan volume ide kata kunci yang lebih besar, dibandingkan dengan hanyaUrlSeed.Untuk seluruh situs, gunakan
SiteSeed. Dengan nama domain level teratas, sepertiwww.example.com, awal situs akan menghasilkan hingga 250.000 ide kata kunci dari informasi yang tersedia secara publik.
Untuk mempersempit penargetan, Anda dapat mengonfigurasi language,
lokasi (hingga 10 geo_target_constants),
keyword_plan_network, include_adult_keywords,
keyword_annotation (Saring
kata kunci), dan
historical_metrics_options.
Respons mendukung penomoran halaman (hingga 10.000
hasil per halaman; selalu periksa next_page_token untuk menentukan apakah halaman tambahan
tersedia, karena halaman mungkin menampilkan kurang dari page_size hasil
sebelum halaman terakhir). Setiap GenerateKeywordIdeaResult menampilkan
text kanonis (dengan close_variants), keyword_idea_metrics historis untuk pemfilteran sebelum menghasilkan metrik perkiraan, dan keyword_annotations opsional.
Referensi kolom permintaan dan respons
Panggil KeywordPlanIdeaService.GenerateKeywordIdeas di
endpoint berikut:
POST https://googleads.googleapis.com/v26/customers/{customer_id}:generateKeywordIdeas
Tabel berikut meringkas kolom dan batasan pada
GenerateKeywordIdeasRequest:
| Kolom permintaan | Persyaratan | Format dan batasan |
|---|---|---|
customer_id |
Wajib | ID pelanggan 10 digit (string) tanpa tanda hubung. |
seed (oneof) |
Wajib | Tentukan salah satu dari: • keyword_seed: keywords[] (1 hingga 20 string).• url_seed: url (URL halaman tertentu).• keyword_and_url_seed: url ditambah 1 hingga 20 keywords[].• site_seed: site (nama domain seperti www.example.com, yang menampilkan hingga 250.000 ide). |
language |
Opsional | Nama resource kriteria bahasa (languageConstants/{criterion_id}, misalnya, languageConstants/1000 untuk bahasa Inggris). Lihat Konstanta Bahasa. Jika dihilangkan, kata kunci di semua bahasa akan disertakan. |
geo_target_constants[] |
Opsional | Hingga 10 nama resource lokasi (geoTargetConstants/{criterion_id}, misalnya, geoTargetConstants/2840 untuk Amerika Serikat). Lihat Target Geografis. Daftar kosong menargetkan semua wilayah geografis. |
keyword_plan_network |
Opsional | KeywordPlanNetwork (GOOGLE_SEARCH atau GOOGLE_SEARCH_AND_PARTNERS). Default-nya adalah GOOGLE_SEARCH_AND_PARTNERS. |
include_adult_keywords |
Opsional | bool yang mengontrol apakah kata kunci dewasa ditampilkan. Default-nya adalah false. |
keyword_annotation[] |
Opsional | Daftar KeywordPlanKeywordAnnotation nilai (seperti KEYWORD_CONCEPT) untuk mengisi keyword_annotations pada setiap hasil. |
aggregate_metrics |
Opsional | KeywordPlanAggregateMetrics dengan aggregate_metric_types yang ditetapkan ke DEVICE untuk menampilkan jumlah penelusuran yang disegmentasikan berdasarkan perangkat di aggregate_metric_results. |
historical_metrics_options |
Opsional | HistoricalMetricsOptions yang menentukan year_month_range opsional (tersedia untuk 4 tahun terakhir; default-nya adalah 12 bulan terakhir) dan include_average_cpc. |
page_size dan page_token |
Opsional | Hasil maksimum per halaman (int32, hingga 10,000) dan token kelanjutan dari next_page_token. Pastikan semua kolom permintaan lainnya identik di seluruh permintaan yang diberi nomor halaman. |
Pesan GenerateKeywordIdeaResponse menampilkan
kolom berikut:
| Kolom respons | Jenis | Deskripsi |
|---|---|---|
results[].text |
string |
Teks ide kata kunci kanonis yang mewakili saran dan close_variants[] gabungannya. |
results[].close_variants[] |
string[] |
Varian mirip yang digabungkan ke dalam GenerateKeywordIdeaResult. |
results[].keyword_idea_metrics |
KeywordPlanHistoricalMetrics |
Volume penelusuran: avg_monthly_searches (rata-rata 12 bulan) dan monthly_search_volumes[] (year, month, monthly_searches).Persaingan: competition (LOW, MEDIUM, HIGH) dan competition_index (0 hingga 100).Bid & CPC: low_top_of_page_bid_micros (persentil ke-20), high_top_of_page_bid_micros (persentil ke-80), dan average_cpc_micros (diisi saat include_average_cpc = true). |
results[].keyword_annotations |
KeywordAnnotations |
Diisi saat KEYWORD_CONCEPT diminta di keyword_annotation; berisi concepts[] (name, concept_group.name, dan concept_group.type). |
aggregate_metric_results |
KeywordPlanAggregateMetricResults |
Diisi saat DEVICE diminta di aggregate_metrics; berisi device_searches[] (MOBILE, TABLET, DESKTOP). |
next_page_token dan total_size |
string, int64 |
Token kelanjutan untuk halaman berikutnya (dihilangkan di halaman terakhir) dan jumlah total ide kata kunci yang tersedia. |
Contoh kode
Java
private void runExample( GoogleAdsClient googleAdsClient, long customerId, long languageId, List<Long> locationIds, List<String> keywords, @Nullable String pageUrl) { try (KeywordPlanIdeaServiceClient keywordPlanServiceClient = googleAdsClient.getLatestVersion().createKeywordPlanIdeaServiceClient()) { GenerateKeywordIdeasRequest.Builder requestBuilder = GenerateKeywordIdeasRequest.newBuilder() .setCustomerId(Long.toString(customerId)) // Sets the language resource using the provided language ID. .setLanguage(ResourceNames.languageConstant(languageId)) // Sets the network. To restrict to only Google Search, change the parameter below to // KeywordPlanNetwork.GOOGLE_SEARCH. .setKeywordPlanNetwork(KeywordPlanNetwork.GOOGLE_SEARCH_AND_PARTNERS); // Adds the resource name of each location ID to the request. for (Long locationId : locationIds) { requestBuilder.addGeoTargetConstants(ResourceNames.geoTargetConstant(locationId)); } // Makes sure that keywords and/or page URL were specified. The request must have exactly one // of urlSeed, keywordSeed, or keywordAndUrlSeed set. if (keywords.isEmpty() && pageUrl == null) { throw new IllegalArgumentException( "At least one of keywords or page URL is required, but neither was specified."); } if (keywords.isEmpty()) { // Only page URL was specified, so use a UrlSeed. requestBuilder.getUrlSeedBuilder().setUrl(pageUrl); } else if (pageUrl == null) { // Only keywords were specified, so use a KeywordSeed. requestBuilder.getKeywordSeedBuilder().addAllKeywords(keywords); } else { // Both page URL and keywords were specified, so use a KeywordAndUrlSeed. requestBuilder.getKeywordAndUrlSeedBuilder().setUrl(pageUrl).addAllKeywords(keywords); } // Sends the keyword ideas request. GenerateKeywordIdeasPagedResponse response = keywordPlanServiceClient.generateKeywordIdeas(requestBuilder.build()); // Prints each result in the response. for (GenerateKeywordIdeaResult result : response.iterateAll()) { System.out.printf( "Keyword idea text '%s' has %d average monthly searches and '%s' competition.%n", result.getText(), result.getKeywordIdeaMetrics().getAvgMonthlySearches(), result.getKeywordIdeaMetrics().getCompetition()); } } }
C#
public void Run(GoogleAdsClient client, long customerId, long[] locationIds, long languageId, string[] keywordTexts, string pageUrl) { KeywordPlanIdeaServiceClient keywordPlanIdeaService = client.GetService(Services.V26.KeywordPlanIdeaService); // Make sure that keywords and/or page URL were specified. The request must have // exactly one of urlSeed, keywordSeed, or keywordAndUrlSeed set. if (keywordTexts.Length == 0 && string.IsNullOrEmpty(pageUrl)) { throw new ArgumentException("At least one of keywords or page URL is required, " + "but neither was specified."); } // Specify the optional arguments of the request as a keywordSeed, UrlSeed, // or KeywordAndUrlSeed. GenerateKeywordIdeasRequest request = new GenerateKeywordIdeasRequest() { CustomerId = customerId.ToString(), }; if (keywordTexts.Length == 0) { // Only page URL was specified, so use a UrlSeed. request.UrlSeed = new UrlSeed() { Url = pageUrl }; } else if (string.IsNullOrEmpty(pageUrl)) { // Only keywords were specified, so use a KeywordSeed. request.KeywordSeed = new KeywordSeed(); request.KeywordSeed.Keywords.AddRange(keywordTexts); } else { // Both page URL and keywords were specified, so use a KeywordAndUrlSeed. request.KeywordAndUrlSeed = new KeywordAndUrlSeed(); request.KeywordAndUrlSeed.Url = pageUrl; request.KeywordAndUrlSeed.Keywords.AddRange(keywordTexts); } // Create a list of geo target constants based on the resource name of specified // location IDs. foreach (long locationId in locationIds) { request.GeoTargetConstants.Add(ResourceNames.GeoTargetConstant(locationId)); } request.Language = ResourceNames.LanguageConstant(languageId); // Set the network. To restrict to only Google Search, change the parameter below to // KeywordPlanNetwork.GoogleSearch. request.KeywordPlanNetwork = KeywordPlanNetwork.GoogleSearchAndPartners; try { // Generate keyword ideas based on the specified parameters. var response = keywordPlanIdeaService.GenerateKeywordIdeas(request); // Iterate over the results and print its detail. foreach (GenerateKeywordIdeaResult result in response) { KeywordPlanHistoricalMetrics metrics = result.KeywordIdeaMetrics; Console.WriteLine($"Keyword idea text '{result.Text}' has " + $"{metrics.AvgMonthlySearches} average monthly searches and competition " + $"is {metrics.Competition}."); } } catch (GoogleAdsException e) { Console.WriteLine("Failure:"); Console.WriteLine($"Message: {e.Message}"); Console.WriteLine($"Failure: {e.Failure}"); Console.WriteLine($"Request ID: {e.RequestId}"); throw; } }
PHP
public static function runExample( GoogleAdsClient $googleAdsClient, int $customerId, array $locationIds, int $languageId, array $keywords, ?string $pageUrl ) { $keywordPlanIdeaServiceClient = $googleAdsClient->getKeywordPlanIdeaServiceClient(); // Make sure that keywords and/or page URL were specified. The request must have exactly one // of urlSeed, keywordSeed, or keywordAndUrlSeed set. if (empty($keywords) && is_null($pageUrl)) { throw new \InvalidArgumentException( 'At least one of keywords or page URL is required, but neither was specified.' ); } // Specify the optional arguments of the request as a keywordSeed, urlSeed, // or keywordAndUrlSeed. $requestOptionalArgs = []; if (empty($keywords)) { // Only page URL was specified, so use a UrlSeed. $requestOptionalArgs['url_seed'] = new UrlSeed(['url' => $pageUrl]); } elseif (is_null($pageUrl)) { // Only keywords were specified, so use a KeywordSeed. $requestOptionalArgs['keyword_seed'] = new KeywordSeed(['keywords' => $keywords]); } else { // Both page URL and keywords were specified, so use a KeywordAndUrlSeed. $requestOptionalArgs['keyword_and_url_seed'] = new KeywordAndUrlSeed(['url' => $pageUrl, 'keywords' => $keywords]); } // Create a list of geo target constants based on the resource name of specified location // IDs. $geoTargetConstants = array_map(function ($locationId) { return ResourceNames::forGeoTargetConstant($locationId); }, $locationIds); // Generate keyword ideas based on the specified parameters. $response = $keywordPlanIdeaServiceClient->generateKeywordIdeas( new GenerateKeywordIdeasRequest([ // Set the language resource using the provided language ID. 'language' => ResourceNames::forLanguageConstant($languageId), 'customer_id' => $customerId, // Add the resource name of each location ID to the request. 'geo_target_constants' => $geoTargetConstants, // Set the network. To restrict to only Google Search, change the parameter below to // KeywordPlanNetwork::GOOGLE_SEARCH. 'keyword_plan_network' => KeywordPlanNetwork::GOOGLE_SEARCH_AND_PARTNERS ] + $requestOptionalArgs) ); // Iterate over the results and print its detail. foreach ($response->iterateAllElements() as $result) { /** @var GenerateKeywordIdeaResult $result */ // Note that the competition printed below is enum value. // For example, a value of 2 will be returned when the competition is 'LOW'. // A mapping of enum names to values can be found at KeywordPlanCompetitionLevel.php. printf( "Keyword idea text '%s' has %d average monthly searches and competition as %d.%s", $result->getText(), is_null($result->getKeywordIdeaMetrics()) ? 0 : $result->getKeywordIdeaMetrics()->getAvgMonthlySearches(), is_null($result->getKeywordIdeaMetrics()) ? 0 : $result->getKeywordIdeaMetrics()->getCompetition(), PHP_EOL ); } }
Python
def main( client: GoogleAdsClient, customer_id: str, location_ids: list[str], language_id: str, keyword_texts: list[str], page_url: str, ): keyword_plan_idea_service: KeywordPlanIdeaServiceClient = ( client.get_service("KeywordPlanIdeaService") ) keyword_competition_level_enum: KeywordPlanCompetitionLevelEnum = ( client.enums.KeywordPlanCompetitionLevelEnum ) keyword_plan_network: KeywordPlanNetworkEnum = ( client.enums.KeywordPlanNetworkEnum.GOOGLE_SEARCH_AND_PARTNERS ) location_rns: list[str] = map_locations_ids_to_resource_names( client, location_ids ) google_ads_service: GoogleAdsServiceClient = client.get_service( "GoogleAdsService" ) language_rn: str = google_ads_service.language_constant_path(language_id) # Either keywords or a page_url are required to generate keyword ideas # so this raises an error if neither are provided. if not (keyword_texts or page_url): raise ValueError( "At least one of keywords or page URL is required, " "but neither was specified." ) # Only one of the fields "url_seed", "keyword_seed", or # "keyword_and_url_seed" can be set on the request, depending on whether # keywords, a page_url or both were passed to this function. request: GenerateKeywordIdeasRequest = client.get_type( "GenerateKeywordIdeasRequest" ) request.customer_id = customer_id request.language = language_rn request.geo_target_constants = location_rns request.include_adult_keywords = False request.keyword_plan_network = keyword_plan_network # To generate keyword ideas with only a page_url and no keywords we need # to initialize a UrlSeed object with the page_url as the "url" field. if not keyword_texts and page_url: request.url_seed.url = page_url # To generate keyword ideas with only a list of keywords and no page_url # we need to initialize a KeywordSeed object and set the "keywords" field # to be a list of StringValue objects. if keyword_texts and not page_url: request.keyword_seed.keywords.extend(keyword_texts) # To generate keyword ideas using both a list of keywords and a page_url we # need to initialize a KeywordAndUrlSeed object, setting both the "url" and # "keywords" fields. if keyword_texts and page_url: request.keyword_and_url_seed.url = page_url request.keyword_and_url_seed.keywords.extend(keyword_texts) keyword_ideas = keyword_plan_idea_service.generate_keyword_ideas( request=request ) idea: GenerateKeywordIdeaResult for idea in keyword_ideas: competition_value = idea.keyword_idea_metrics.competition.name print( f'Keyword idea text "{idea.text}" has ' f'"{idea.keyword_idea_metrics.avg_monthly_searches}" ' f'average monthly searches and "{competition_value}" ' "competition.\n" )
Ruby
def generate_keyword_ideas(customer_id, location_ids, language_id, keywords, page_url) # GoogleAdsClient will read a config file from # ENV['HOME']/google_ads_config.rb when called without parameters client = Google::Ads::GoogleAds::GoogleAdsClient.new # Make sure that keywords and/or page URL were specified. The request must # have exactly one of urlSeed, keywordSeed, or keywordAndUrlSeed set. if keywords.reject {|k| k.nil?}.empty? && page_url.nil? raise "At least one of keywords or page URL is required." end kp_idea_service = client.service.keyword_plan_idea options_hash = if keywords.empty? seed = client.resource.url_seed do |seed| seed.url = page_url end {url_seed: seed} elsif page_url.nil? seed = client.resource.keyword_seed do |seed| keywords.each do |keyword| seed.keywords << keyword end end {keyword_seed: seed} else seed = client.resource.keyword_and_url_seed do |seed| seed.url = page_url keywords.each do |keyword| seed.keywords << keyword end end {keyword_and_url_seed: seed} end geo_target_constants = location_ids.map do |location_id| client.path.geo_target_constant(location_id) end include_adult_keywords = true response = kp_idea_service.generate_keyword_ideas( customer_id: customer_id, language: client.path.language_constant(language_id), geo_target_constants: geo_target_constants, include_adult_keywords: include_adult_keywords, # To restrict to only Google Search, change the parameter below to # :GOOGLE_SEARCH keyword_plan_network: :GOOGLE_SEARCH_AND_PARTNERS, **options_hash ) response.each do |result| monthly_searches = if result.keyword_idea_metrics.nil? 0 else result.keyword_idea_metrics.avg_monthly_searches end competition = if result.keyword_idea_metrics.nil? :UNSPECIFIED else result.keyword_idea_metrics.competition end puts "Keyword idea text #{result.text} has #{monthly_searches} average " + "monthly searches and competition as #{competition}." end end
Perl
sub generate_keyword_ideas { my ( $api_client, $customer_id, $location_ids, $language_id, $keyword_texts, $page_url ) = @_; # Make sure that keywords and/or page URL were specified. The request must have # exactly one of urlSeed, keywordSeed, or keywordAndUrlSeed set. if (not scalar @$keyword_texts and not $page_url) { die "At least one of keywords or page URL is required, " . "but neither was specified."; } # Specify the optional arguments of the request as a keywordSeed, urlSeed, # or keywordAndUrlSeed. my $request_option_args = {}; if (!scalar @$keyword_texts) { # Only page URL was specified, so use a UrlSeed. $request_option_args->{urlSeed} = Google::Ads::GoogleAds::V26::Services::KeywordPlanIdeaService::UrlSeed-> new({ url => $page_url }); } elsif (not $page_url) { # Only keywords were specified, so use a KeywordSeed. $request_option_args->{keywordSeed} = Google::Ads::GoogleAds::V26::Services::KeywordPlanIdeaService::KeywordSeed ->new({ keywords => $keyword_texts }); } else { # Both page URL and keywords were specified, so use a KeywordAndUrlSeed. $request_option_args->{keywordAndUrlSeed} = Google::Ads::GoogleAds::V26::Services::KeywordPlanIdeaService::KeywordAndUrlSeed ->new({ url => $page_url, keywords => $keyword_texts }); } # Create a list of geo target constants based on the resource name of specified # location IDs. my $geo_target_constants = [ map ( Google::Ads::GoogleAds::V26::Utils::ResourceNames::geo_target_constant( $_), @$location_ids)]; # Generate keyword ideas based on the specified parameters. my $keyword_ideas_response = $api_client->KeywordPlanIdeaService()->generate_keyword_ideas({ customerId => $customer_id, # Set the language resource using the provided language ID. language => Google::Ads::GoogleAds::V26::Utils::ResourceNames::language_constant( $language_id), # Add the resource name of each location ID to the request. geoTargetConstants => $geo_target_constants, # Set the network. To restrict to only Google Search, change the parameter below # to GOOGLE_SEARCH. keywordPlanNetwork => GOOGLE_SEARCH_AND_PARTNERS, %$request_option_args }); # Iterate over the results and print its detail. foreach my $result (@{$keyword_ideas_response->{results}}) { printf "Keyword idea text '%s' has %d average monthly searches " . "and '%s' competition.\n", $result->{text}, $result->{keywordIdeaMetrics}{avgMonthlySearches} ? $result->{keywordIdeaMetrics}{avgMonthlySearches} : 0, $result->{keywordIdeaMetrics}{competition} ? $result->{keywordIdeaMetrics}{competition} : "undef"; } return 1; }
curl
# This code example generates keyword ideas. # # Variables: # API_VERSION, # CUSTOMER_ID, # MANAGER_CUSTOMER_ID, # OAUTH2_ACCESS_TOKEN: # See https://developers.google.com/google-ads/api/rest/auth#request_headers # for details. # # LANGUAGE: The resource name of the language to target. This is in the format # of "languageConstants/{criterion_id}". See # https://developers.google.com/google-ads/api/data/codes-formats#languages # for the available criterion_id values. # GEO_TARGET_CONSTANT: The resource name of the geo target constant to # generate keyword ideas for. This is in the format of # "geoTargetConstants/{criterion_id}". See # https://developers.google.com/google-ads/api/data/geotargets for the # available criterion_id values. # KEYWORD: The keyword to generate keyword ideas for. # URL: The URL of the website to generate keyword ideas for. curl -f --request POST \ "https://googleads.googleapis.com/v${API_VERSION}/customers/${CUSTOMER_ID}:generateKeywordIdeas" \ --header "Content-Type: application/json" \ --header "login-customer-id: ${MANAGER_CUSTOMER_ID}" \ --header "Authorization: Bearer ${OAUTH2_ACCESS_TOKEN}" \ --data @- <<EOF { "language": "${LANGUAGE}", "geoTargetConstants": [ "${GEO_TARGET_CONSTANT}" ], "includeAdultKeywords": false, "keywordPlanNetwork": "GOOGLE_SEARCH", "keywordAndUrlSeed": { "keywords": [ "${KEYWORD}" ], "url": "${URL}" } } EOF
Struktur permintaan dan respons REST
Contoh berikut mengirimkan permintaan POST ke
KeywordPlanIdeaService.GenerateKeywordIdeas menggunakan
keywordAndUrlSeed, bahasa Inggris (languageConstants/1000), dan Amerika Serikat
(geoTargetConstants/2840):
POST https://googleads.googleapis.com/v26/customers/{customer_id}:generateKeywordIdeas
{
"language": "languageConstants/1000",
"geoTargetConstants": [
"geoTargetConstants/2840"
],
"includeAdultKeywords": false,
"keywordPlanNetwork": "GOOGLE_SEARCH",
"keywordAnnotation": [
"KEYWORD_CONCEPT"
],
"keywordAndUrlSeed": {
"url": "https://www.example.com/mars-cruises",
"keywords": [
"mars cruise",
"space vacation"
]
}
}
Respons yang berhasil akan menampilkan bar0GenerateKeywordIdeaResult baris di
results[] beserta volume penelusuran historis dan rentang bid:
{
"results": [
{
"text": "mars cruise",
"keywordIdeaMetrics": {
"avgMonthlySearches": "12100",
"competition": "MEDIUM",
"competitionIndex": "54",
"lowTopOfPageBidMicros": "1450000",
"highTopOfPageBidMicros": "4800000",
"monthlySearchVolumes": [
{
"year": "2026",
"month": "MAY",
"monthlySearches": "14800"
}
]
},
"keywordAnnotations": {
"concepts": [
{
"name": "Space Travel",
"conceptGroup": {
"name": "Travel",
"type": "OTHERS"
}
}
]
}
}
],
"totalSize": "1"
}
Memetakan ke UI
Tabel berikut memetakan
KeywordPlanIdeaService.GenerateKeywordIdeas parameter ke
Keyword Planner di UI Google Ads:
| Keyword Planner di UI | Google Ads API |
|---|---|
| Masukkan Kata Kunci dan URL | |
| Lokasi | GenerateKeywordIdeasRequest.geo_target_constants |
| Kata Kunci Dewasa | GenerateKeywordIdeasRequest.include_adult_keywords |
| Bahasa | GenerateKeywordIdeasRequest.language |
| Jaringan Penelusuran | GenerateKeywordIdeasRequest.keyword_plan_network |
| Saring Kata Kunci | GenerateKeywordIdeasRequest.keyword_annotation |
| Rentang Tanggal | GenerateKeywordIdeasRequest.historical_metrics_options |
| Hasil: Kata Kunci | GenerateKeywordIdeaResult.text |
| Hasil: Metrik | GenerateKeywordIdeaResult.keyword_idea_metrics |