Bu kılavuzda, Google Ads API'yi kullanarak oluşturabileceğiniz farklı dönüşüm işlemi türlerinin listesi, bunların Google Ads web arayüzüyle nasıl eşlendiği hakkında bilgi ve yeni dönüşüm işlemlerinin nasıl oluşturulacağını gösteren ayrıntılı kod örneği verilmektedir.
Dönüşümleri ölçmek amacıyla izlemek istediğiniz dönüşüm işleminin type
için bir ConversionAction
oluşturun. Örneğin, internetten satın alma ve telefonla arama, farklı dönüşüm işlemleri gerektirir.
API'de yeni dönüşüm işlemleri oluşturmanın en iyi yolu aşağıdaki Dönüşüm İşlemi kodu örneğini kullanmaktır. Örnek, sizin için tüm arka plan kimlik doğrulama görevlerini yürütür ve ConversionAction
oluşturma konusunda size yol gösterir.
Çoğu dönüşüm işlemini izlemek için sizin de ek adımlar uygulamanız gerekir. Örneğin, web sitenizdeki dönüşümleri izlemek için web sitenizdeki dönüşüm sayfasına etiket adı verilen bir kod snippet'i eklemeniz gerekir. Dönüşüm işlemi ile ilgili diğer şartlar için Yardım Merkezi makalemizi inceleyin.
Web sitesi dönüşümleri
Web sitesi dönüşümü, online satış, bağlantı tıklamaları, sayfa görüntüleme ve kaydolma gibi web sitesi işlemlerini izlemenize olanak tanır.
Web sitenizde dönüşümleri izlemek için ConversionActionType
özelliği WEBPAGE
olarak ayarlanmış bir ConversionAction
oluşturmanız ve web sitenizdeki dönüşüm sayfasına etiket adı verilen bir kod snippet'i eklemeniz gerekir.
ConversionAction
, API'de ConversionAction
öğesinin tag_snippets alanında listelenen TagSnippet
içindeki type
alanıyla ayırt edilen çeşitli web sitesi dönüşümü türlerini kapsar.
TagSnippet
, dönüşüm işlemlerinizi izlemek için web sitenize eklenmesi gereken izleme kodunu sağlar.
Web sitesi ve Telefon numarası tıklama dönüşümleri, ödeme onayı veya potansiyel müşteri formu gönderme sayfası gibi bir dönüşüm işlemini belirten web sayfalarına event_snippet
yerleştirilmesini gerektirir. global_site_tag
ise web sitenizin her sayfasına yüklenmelidir. Bu özelliklerin ikisini de ConversionActionService
ile alabilirsiniz. Sayfalarınızı nasıl etiketleyeceğinizle ilgili daha fazla bilgi için Yardım Merkezimize göz atın.
Aşağıdaki tabloda, Google Ads web arayüzündeki her bir Kaynak için kullanılacak eşdeğer API parametreleri gösterilmektedir:
İzleme Kodu Türü | Google Ads Kaynağı |
---|---|
WEBPAGE |
Web sitesi, web sitesi (Google Analytics (GA4)) |
WEBPAGE_ONCLICK |
Web sitesi, web sitesi (Google Analytics (GA4)) |
CLICK_TO_CALL |
Telefon numarası tıklamaları |
--- |
Web sitesi (Google Analytics (UA)) |
Uygulama dönüşümleri
Uygulama dönüşümleri, Google Play Store'daki mobil uygulama yüklemelerini veya uygulama içi satın alma işlemlerini izlemenize olanak tanır.
Aşağıdaki tabloda, Google Ads web arayüzündeki her bir Kaynak için kullanılacak eşdeğer ConversionActionType
API parametreleri gösterilmektedir:
Dönüşüm İşlemi Türü | Google Ads Kaynağı |
---|---|
GOOGLE_PLAY_DOWNLOAD |
Google Play > Yüklemeler |
GOOGLE_PLAY_IN_APP_PURCHASE |
Google Play > Uygulama içi satın alma işlemleri |
Google Analytics 4 mülklerini veya üçüncü taraf uygulama analizlerini kullanarak diğer mobil uygulama işlemlerini izlemek istiyorsanız. Diğer Dönüşüm İşlemi Türleri bölümüne bakın.
Telefon araması dönüşümleri
Telefon araması dönüşümü izleme ile reklamlardan gelen aramaları, web sitenizdeki bir numaraya yapılan aramaları ve mobil sitelerdeki numaralara yapılan tıklamaları izleyebilirsiniz.
Aşağıdaki tabloda, Google Ads web arayüzündeki her bir Kaynak için kullanılacak eşdeğer ConversionActionType
API parametreleri gösterilmektedir:
Dönüşüm İşlemi Türü | Google Ads Kaynağı |
---|---|
AD_CALL |
Telefon uzantıları kullanan reklamlardan veya yalnızca telefon araması üreten reklamlardan gelen aramalar |
WEBSITE_CALL |
Web sitenizdeki bir telefon numarasına gelen aramalar |
CLICK_TO_CALL |
Mobil web sitenizdeki bir numaraya yapılan tıklamalar |
CLICK_TO_CALL
türü, gerçek telefon aramalarını izlememesi açısından AD_CALL
türünden farklıdır. Bunun yerine, CLICK_TO_CALL
yalnızca bir mobil cihazdan bir telefon numarasına yapılan tıklamaları izler. Bu özellik, telefon aramalarını izlemek için Google yönlendirme numarası kullanamadığınız durumlarda kullanışlıdır.
AD_CALL
AD_CALL
dönüşüm işlemi, Google Ads web arayüzünde Reklamlardan gelen telefon aramaları dönüşümü olarak görünür. AD_CALL
dönüşüm işleminizi oluşturduktan sonra, CallAsset
oluştururken call_conversion_action
alanında kaynak adını belirtin. Telefon öğeleri, doğrudan reklamlarınızda telefon numarası göstermenizi sağlar.
Belirli bir süreden uzun süren aramalar dönüşüm olarak raporlanır. Varsayılan değer 60 saniyedir.
WEBSITE_CALL
WEBSITE_CALL
dönüşüm işlemi, Google Ads web arayüzünde Bir web sitesinden gelen telefon aramaları dönüşümü olarak görünür.
AD_CALL
'ten farklı olarak bu izleyici, web sitenizde listelenen arama izleme numaralarında kullanılan dinamik Google yönlendirme numarasını almak için event_snippet
ve global_site_tag
'in web sitenize eklenmesini gerektirir. Ayrıca, bir telefon öğesi oluşturmanız ve bu öğeyi müşteri, kampanya veya reklam grubu düzeyinde bağlamanız gerekir.
Çevrimdışı dönüşümleri içe aktarma
Aşağıdaki tabloda, Google Ads web arayüzündeki her bir Kaynak için kullanılacak eşdeğer ConversionActionType
API parametreleri ve her bir dönüşüm işlemi türüyle ilgili dokümanların bağlantıları gösterilmektedir:
Dönüşüm İşlemi Türü | Google Ads Kaynağı | API Kurulum Kılavuzu |
---|---|---|
UPLOAD_CLICKS |
Tıklamalardan elde edilen dönüşümleri ve potansiyel müşteriler için gelişmiş dönüşümleri izleyin | Tıklama Kılavuzunu Yükleyin
Potansiyel Müşteriler İçin Gelişmiş Dönüşümler Kılavuzu |
UPLOAD_CALLS |
Telefon aramalarından elde edilen dönüşümleri izleyin | API Kurulum Kılavuzu |
STORE_SALES |
Mağazadaki satışları izleme dönüşümleri | API Kurulum Kılavuzu |
Web için gelişmiş dönüşümler
Web için gelişmiş dönüşümler, WEBPAGE
dönüşüm işlemine ait birinci taraf dönüşüm verilerini, bir dönüşüm etkinliğinden sonraki 24 saat içinde göndermenizi sağlar. Bu, müşteri veritabanı veya CRM sistemi gibi çeşitli kaynaklardan gelen birinci taraf verilerinin bulunmasını mümkün kılar.
Diğer dönüşüm işlemi türleri
Google Ads API, raporlarda başka dönüşüm işlemi türlerini de kullanıma sunar ancak bu işlemlerin oluşturulmasını veya değiştirilmesini sınırlayabilir ya da yasaklayabilir.
SKAdNetwork dönüşüm sayısı
iOS uygulama kampanyaları yayınlıyor ve SKAdNetwork'ü uyguladıysanız aşağıdaki kaynakları kullanarak Google'a Customer
ve Campaign
düzeyinde sağlanan SKAdNetwork verilerine erişebilirsiniz:
Rapor alanı | Açıklama |
---|---|
metrics.sk_ad_network_conversions |
Apple tarafından raporlanan dönüşüm sayısı. Bu metrik yalnızca segments.sk_ad_network_conversion_value ve tarihle ilgili segmentlerin herhangi bir kombinasyonuna göre segmentlere ayrılabilir.
|
segments.sk_ad_network_conversion_value |
Apple tarafından raporlanan bir dönüşümün değeri. Bu segment, Apple, |
iOS uygulamalarına sahip belirli bağlı müşteriler için CustomerSkAdNetworkConversionValueSchema
üzerinden SKAdNetwork dönüşüm değeri eşlemesini de kaydedebilirsiniz.
Örnek Python kodu
#!/usr/bin/env python # Copyright 2019 Google LLC # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # https://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. import argparse import sys from google.ads.googleads.client import GoogleAdsClient from google.ads.googleads.errors import GoogleAdsException def main(client, customer_id): """Adds a keyword plan, campaign, ad group, etc. to the customer account. Also handles errors from the API and prints them. Args: client: An initialized instance of GoogleAdsClient customer_id: A str of the customer_id to use in requests. """ res = update_skan_cv_schema( client, customer_id, "my_app_id", "account_link_id" ) print(res) def update_skan_cv_schema(client, customer_id, app_id, account_link_id): skan_service = client.get_service( "CustomerSkAdNetworkConversionValueSchemaService" ) req = client.get_type( "MutateCustomerSkAdNetworkConversionValueSchemaRequest" ) operation = client.get_type( "CustomerSkAdNetworkConversionValueSchemaOperation" ) schema_instance = client.get_type( "CustomerSkAdNetworkConversionValueSchema" ) new_schema = operation.update new_schema.resource_name = ( skan_service.customer_sk_ad_network_conversion_value_schema_path( "customer_id", "account_link_id" ) ) new_schema.schema.app_id = app_id new_schema.schema.measurement_window_hours = 48 skan_cv_mapping = ( schema_instance.SkAdNetworkConversionValueSchema.FineGrainedConversionValueMappings() ) skan_cv_mapping.fine_grained_conversion_value = 0 # 0 - 63 skan_cv_mapping.conversion_value_mapping.min_time_post_install_hours = 0 skan_cv_mapping.conversion_value_mapping.max_time_post_install_hours = 48 skan_cv_event = schema_instance.SkAdNetworkConversionValueSchema.Event() skan_cv_event.mapped_event_name = "TEST" skan_cv_event.event_revenue_value = 10 skan_cv_mapping.conversion_value_mapping.mapped_events.append(skan_cv_event) new_schema.schema.fine_grained_conversion_value_mappings.append( skan_cv_mapping ) req.operation = operation req.customer_id = customer_id res = skan_service.mutate_customer_sk_ad_network_conversion_value_schema( req ) return res if __name__ == "__main__": # GoogleAdsClient will read the google-ads.yaml configuration file in the # home directory if none is specified. googleads_client = GoogleAdsClient.load_from_storage( version="v16" ) parser = argparse.ArgumentParser( description="Creates a keyword plan for specified customer." ) # The following argument(s) should be provided to run the example. parser.add_argument( "-c", "--customer_id", type=str, required=True, help="The Google Ads customer ID.", ) args = parser.parse_args() try: main(googleads_client, args.customer_id) except GoogleAdsException as ex: print( f'Request with ID "{ex.request_id}" failed with status ' f'"{ex.error.code().name}" and includes the following errors:' ) for error in ex.failure.errors: print(f'\tError with message "{error.message}".') if error.location: for field_path_element in error.location.field_path_elements: print(f"\t\tOn field: {field_path_element.field_name}") sys.exit(1)
Google Analytics
Bağlı bir Google Analytics mülkünden elde edilen dönüşümler, aşağıdaki type
değerlerinden birine sahiptir:
GA4 mülkü dönüşümü:
GOOGLE_ANALYTICS_4_CUSTOM
GOOGLE_ANALYTICS_4_PURCHASE
GA4 mülk kimliğini, mülk adını ve etkinlik adını
google_analytics_4_settings
alanından da alabilirsiniz.Universal Analytics mülkü dönüşümü:
UNIVERSAL_ANALYTICS_GOAL
UNIVERSAL_ANALYTICS_TRANSACTION
GA4 mülk dönüşümlerinde aşağıdaki değişiklikleri yapabilirsiniz:
- GA4 mülkünüzdeki
status
alanınıHIDDEN
yerineENABLED
olarak değiştirerek dönüşümü Google Ads hesabınıza aktarın. - Google Ads teklifini ve raporlarını nasıl etkileyeceğini belirtmek için
primary_for_goal
vecategory
alanlarını değiştirin. name
veyavalue_settings
öğelerini güncelleyin.- Bir
remove
işlemi kullanarak dönüşümü Google Ads hesabınızdan kaldırın.
İçe aktarılan bir GA4 dönüşümünün diğer özelliklerini veya içe aktarılan bir Universal Analytics dönüşümünün tüm özelliklerini değiştirme girişimleri MUTATE_NOT_ALLOWED
hatasına neden olur. Bu değişiklikleri yalnızca Google Ads kullanıcı arayüzünü kullanarak yapabilirsiniz.
Firebase ve üçüncü taraf uygulama analizleri
Üçüncü taraf uygulama analizlerini veya Firebase dönüşümlerini içe aktarmak için ConversionActionService
yöntemini kullanarak ConversionAction
öğesinin HIDDEN
olan status
değerini ENABLED
yerine ENABLED
yapın.mutate
Bu dönüşüm işlemleri için app_id
güncellemesi desteklenmez.
FIREBASE_ANDROID_FIRST_OPEN
FIREBASE_ANDROID_IN_APP_PURCHASE
FIREBASE_ANDROID_CUSTOM
FIREBASE_IOS_FIRST_OPEN
FIREBASE_IOS_IN_APP_PURCHASE
FIREBASE_IOS_CUSTOM
THIRD_PARTY_APP_ANALYTICS_ANDROID_FIRST_OPEN
THIRD_PARTY_APP_ANALYTICS_ANDROID_IN_APP_PURCHASE
THIRD_PARTY_APP_ANALYTICS_ANDROID_CUSTOM
THIRD_PARTY_APP_ANALYTICS_IOS_FIRST_OPEN
THIRD_PARTY_APP_ANALYTICS_IOS_IN_APP_PURCHASE
THIRD_PARTY_APP_ANALYTICS_IOS_CUSTOM
Mağaza satışları
STORE_SALES
veya STORE_SALES_DIRECT_UPLOAD
dönüşüm işlemleri oluşturmak için Google Ads API'yi kullanamazsınız ancak API, mağaza satış işlemlerinin yüklenmesini destekler.
STORE_SALES
STORE_SALES_DIRECT_UPLOAD
Çeşitli
Aşağıdaki dönüşüm işlemi türleri Google Ads API'de salt okunurdur ve raporlama amacıyla sağlanmıştır.
ANDROID_APP_PRE_REGISTRATION
ANDROID_INSTALLS_ALL_OTHER_APPS
FLOODLIGHT_ACTION
FLOODLIGHT_TRANSACTION
GOOGLE_HOSTED
LEAD_FORM_SUBMIT
SALESFORCE
SEARCH_ADS_360
SMART_CAMPAIGN_AD_CLICKS_TO_CALL
SMART_CAMPAIGN_MAP_CLICKS_TO_CALL
SMART_CAMPAIGN_MAP_DIRECTIONS
SMART_CAMPAIGN_TRACKED_CALLS
STORE_VISITS
WEBPAGE_CODELESS
Bilinmiyor
Google Ads hesabınız başka dönüşüm işlemi türleri içeriyorsa sorgu ve raporların ConversionAction.type
UNKNOWN
olduğu dönüşüm işlemleri döndürdüğünü görebilirsiniz.
API bu dönüşüm işlemlerinin yönetilmesini desteklemez ancak metrics.conversions
ve metrics.conversions_value
gibi temel dönüşüm metrikleriyle ilgili tam sonuçlar sağlamak için bunları raporlarda döndürür.
Kod örneği
Aşağıdaki kod örneği, yeni bir dönüşüm işlemi oluşturma sürecinde size yol gösterir. Özel olarak belirtmek gerekirse, type
UPLOAD_CLICKS
olarak ayarlanmış bir dönüşüm işlemi oluşturur.
Bu işlem, İçe Aktar > API veya yüklemeler kullanarak manuel içe aktarma > Tıklamalardan elde edilen dönüşümleri izle seçeneğini kullanarak yeni bir dönüşüm işlemi oluştururken gerçekleştirilecek Google Ads kullanıcı arayüzü akışıyla aynıdır. Ayrıca category
özelliğini DEFAULT
olarak ayarlar.
Aşağıdaki varsayılan ayarlar geçerlidir:
Google Ads API
primary_for_goal
alanını otomatik olarak ayarlar ancak dönüşüm hedeflerinizle birlikte bir dönüşüm işleminin hesabınızdaki raporlamayı ve teklif vermeyi nasıl etkilediğini kontrol etmek için bu alanı açıkça ayarlayabilirsiniz.Google Ads API,
counting_type
özelliğini otomatik olarakMANY_PER_CLICK
şeklinde ayarlar. Daha ayrıntılı bilgi için Dönüşüm sayma seçenekleri hakkında bölümüne bakın.Google Ads API,
attribution_model_settings
alanınıGOOGLE_SEARCH_ATTRIBUTION_DATA_DRIVEN
AttributionModel
değerine ayarlayarak ilişkilendirme modelini veriye dayalı olacak şekilde ayarlar.
Java
private void runExample(GoogleAdsClient googleAdsClient, long customerId) { // Creates a ConversionAction. ConversionAction conversionAction = ConversionAction.newBuilder() // Note that conversion action names must be unique. If a conversion action already // exists with the specified conversion_action_name the create operation will fail with // a ConversionActionError.DUPLICATE_NAME error. .setName("Earth to Mars Cruises Conversion #" + getPrintableDateTime()) .setCategory(ConversionActionCategory.DEFAULT) .setType(ConversionActionType.WEBPAGE) .setStatus(ConversionActionStatus.ENABLED) .setViewThroughLookbackWindowDays(15L) .setValueSettings( ValueSettings.newBuilder() .setDefaultValue(23.41) .setAlwaysUseDefaultValue(true) .build()) .build(); // Creates the operation. ConversionActionOperation operation = ConversionActionOperation.newBuilder().setCreate(conversionAction).build(); try (ConversionActionServiceClient conversionActionServiceClient = googleAdsClient.getLatestVersion().createConversionActionServiceClient()) { MutateConversionActionsResponse response = conversionActionServiceClient.mutateConversionActions( Long.toString(customerId), Collections.singletonList(operation)); System.out.printf("Added %d conversion actions:%n", response.getResultsCount()); for (MutateConversionActionResult result : response.getResultsList()) { System.out.printf( "New conversion action added with resource name: '%s'%n", result.getResourceName()); } } }
C#
public void Run(GoogleAdsClient client, long customerId) { // Get the ConversionActionService. ConversionActionServiceClient conversionActionService = client.GetService(Services.V16.ConversionActionService); // Note that conversion action names must be unique. // If a conversion action already exists with the specified name the create operation // will fail with a ConversionAction.DUPLICATE_NAME error. string ConversionActionName = "Earth to Mars Cruises Conversion #" + ExampleUtilities.GetRandomString(); // Add a conversion action. ConversionAction conversionAction = new ConversionAction() { Name = ConversionActionName, Category = ConversionActionCategory.Default, Type = ConversionActionType.Webpage, Status = ConversionActionStatus.Enabled, ViewThroughLookbackWindowDays = 15, ValueSettings = new ConversionAction.Types.ValueSettings() { DefaultValue = 23.41, AlwaysUseDefaultValue = true } }; // Create the operation. ConversionActionOperation operation = new ConversionActionOperation() { Create = conversionAction }; try { // Create the conversion action. MutateConversionActionsResponse response = conversionActionService.MutateConversionActions(customerId.ToString(), new ConversionActionOperation[] { operation }); // Display the results. foreach (MutateConversionActionResult newConversionAction in response.Results) { Console.WriteLine($"New conversion action with resource name = " + $"'{newConversionAction.ResourceName}' was added."); } } 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) { // Creates a conversion action. $conversionAction = new ConversionAction([ // Note that conversion action names must be unique. // If a conversion action already exists with the specified conversion_action_name // the create operation will fail with a ConversionActionError.DUPLICATE_NAME error. 'name' => 'Earth to Mars Cruises Conversion #' . Helper::getPrintableDatetime(), 'category' => ConversionActionCategory::PBDEFAULT, 'type' => ConversionActionType::WEBPAGE, 'status' => ConversionActionStatus::ENABLED, 'view_through_lookback_window_days' => 15, 'value_settings' => new ValueSettings([ 'default_value' => 23.41, 'always_use_default_value' => true ]) ]); // Creates a conversion action operation. $conversionActionOperation = new ConversionActionOperation(); $conversionActionOperation->setCreate($conversionAction); // Issues a mutate request to add the conversion action. $conversionActionServiceClient = $googleAdsClient->getConversionActionServiceClient(); $response = $conversionActionServiceClient->mutateConversionActions( MutateConversionActionsRequest::build($customerId, [$conversionActionOperation]) ); printf("Added %d conversion actions:%s", $response->getResults()->count(), PHP_EOL); foreach ($response->getResults() as $addedConversionAction) { /** @var ConversionAction $addedConversionAction */ printf( "New conversion action added with resource name: '%s'%s", $addedConversionAction->getResourceName(), PHP_EOL ); } }
Python
def main(client, customer_id): conversion_action_service = client.get_service("ConversionActionService") # Create the operation. conversion_action_operation = client.get_type("ConversionActionOperation") # Create conversion action. conversion_action = conversion_action_operation.create # Note that conversion action names must be unique. If a conversion action # already exists with the specified conversion_action_name, the create # operation will fail with a ConversionActionError.DUPLICATE_NAME error. conversion_action.name = f"Earth to Mars Cruises Conversion {uuid.uuid4()}" conversion_action.type_ = ( client.enums.ConversionActionTypeEnum.UPLOAD_CLICKS ) conversion_action.category = ( client.enums.ConversionActionCategoryEnum.DEFAULT ) conversion_action.status = client.enums.ConversionActionStatusEnum.ENABLED conversion_action.view_through_lookback_window_days = 15 # Create a value settings object. value_settings = conversion_action.value_settings value_settings.default_value = 15.0 value_settings.always_use_default_value = True # Add the conversion action. conversion_action_response = ( conversion_action_service.mutate_conversion_actions( customer_id=customer_id, operations=[conversion_action_operation], ) ) print( "Created conversion action " f'"{conversion_action_response.results[0].resource_name}".' )
Ruby
def add_conversion_action(customer_id) # GoogleAdsClient will read a config file from # ENV['HOME']/google_ads_config.rb when called without parameters client = Google::Ads::GoogleAds::GoogleAdsClient.new # Add a conversion action. conversion_action = client.resource.conversion_action do |ca| ca.name = "Earth to Mars Cruises Conversion #{(Time.new.to_f * 100).to_i}" ca.type = :UPLOAD_CLICKS ca.category = :DEFAULT ca.status = :ENABLED ca.view_through_lookback_window_days = 15 # Create a value settings object. ca.value_settings = client.resource.value_settings do |vs| vs.default_value = 15 vs.always_use_default_value = true end end # Create the operation. conversion_action_operation = client.operation.create_resource.conversion_action(conversion_action) # Add the ad group ad. response = client.service.conversion_action.mutate_conversion_actions( customer_id: customer_id, operations: [conversion_action_operation], ) puts "New conversion action with resource name = #{response.results.first.resource_name}." end
Perl
sub add_conversion_action { my ($api_client, $customer_id) = @_; # Note that conversion action names must be unique. # If a conversion action already exists with the specified conversion_action_name, # the create operation fails with error ConversionActionError.DUPLICATE_NAME. my $conversion_action_name = "Earth to Mars Cruises Conversion #" . uniqid(); # Create a conversion action. my $conversion_action = Google::Ads::GoogleAds::V16::Resources::ConversionAction->new({ name => $conversion_action_name, category => DEFAULT, type => WEBPAGE, status => ENABLED, viewThroughLookbackWindowDays => 15, valueSettings => Google::Ads::GoogleAds::V16::Resources::ValueSettings->new({ defaultValue => 23.41, alwaysUseDefaultValue => "true" })}); # Create a conversion action operation. my $conversion_action_operation = Google::Ads::GoogleAds::V16::Services::ConversionActionService::ConversionActionOperation ->new({create => $conversion_action}); # Add the conversion action. my $conversion_actions_response = $api_client->ConversionActionService()->mutate({ customerId => $customer_id, operations => [$conversion_action_operation]}); printf "New conversion action added with resource name: '%s'.\n", $conversion_actions_response->{results}[0]{resourceName}; return 1; }
Bu örnek, müşteri kitaplığınızın Yeniden Pazarlama klasöründe ve Dönüşüm İşlemi kod örneği ekleme kod örnekleri koleksiyonunda da bulunabilir.
Doğrulamalar
Google Ads ve Google Ads API çok çeşitli dönüşüm işlemlerini destekler. Bu nedenle bazı doğrulama kuralları işleme type
göre değişir.
Dönüşüm işlemi oluşturulurken en sık karşılaşılan hata
DUPLICATE_NAME
şeklindedir.
Her dönüşüm işlemi için benzersiz bir ad kullandığınızdan emin olun.
ConversionAction
alanlarının ayarlanmasına ilişkin bazı ipuçlarını aşağıda bulabilirsiniz:
- Tüm numaralandırma alanları
- Herhangi bir numaralandırma alanının
UNKNOWN
olarak ayarlanmaya çalışılmasıRequestError.INVALID_ENUM_VALUE
hatasıyla sonuçlanır. app_id
app_id
özelliği sabittir ve yalnızca yeni bir uygulama dönüşümü oluştururken ayarlanabilir.attribution_model_settings
- Bu seçeneğin kullanımdan kaldırılmış seçenek olarak ayarlanması,
CANNOT_SET_RULE_BASED_ATTRIBUTION_MODELS
hatasına neden olur. Google Ads yalnızcaGOOGLE_ADS_LAST_CLICK
veGOOGLE_SEARCH_ATTRIBUTION_DATA_DRIVEN
özelliklerini destekler. click_through_lookback_window_days
Bu özelliğin izin verilen aralığın dışındaki bir değere ayarlanması
RangeError.TOO_LOW
veyaRangeError.TOO_HIGH
hatasına neden olur.Bir
AD_CALL
veyaWEBSITE_CALL
dönüşüm işlemi için bu özellik[1,60]
aralığında olmalıdır. Diğer çoğu dönüşüm işlemi için izin verilen aralık[1,30]
şeklindedir.include_in_conversions_metric
Bu değerin ayarlanması, bir
create
veyaupdate
işlemindeFieldError.IMMUTABLE_FIELD
hatası vererek başarısız olur. Bunun yerine, Dönüşüm hedefleri kılavuzunda açıklandığı gibiprimary_for_goal
hedefini ayarlayın.phone_call_duration_seconds
Bu özelliğin telefon aramaları için olmayan bir dönüşüm işleminde ayarlanmaya çalışılması
FieldError.VALUE_MUST_BE_UNSET
hatasına neden olur.type
type
özelliği sabittir ve yalnızca yeni bir dönüşüm oluşturulurken ayarlanabilir.Bir dönüşüm işlemini
type
şuna eşittir:UNKNOWN
olarak güncellendiğindeMutateError.MUTATE_NOT_ALLOWED
hatası oluşur.value_settings
WEBSITE_CALL
veyaAD_CALL
dönüşüm işlemininvalue_settings
always_use_default_value
değeritrue
olarak ayarlanmalıdır. Bu değeri oluştururken veya güncellerkenfalse
değerinin belirtilmesiINVALID_VALUE
hatasıyla sonuçlanır.view_through_lookback_window_days
Bu özelliğin izin verilen aralığın dışındaki bir değere ayarlanması
RangeError.TOO_LOW
veyaRangeError.TOO_HIGH
hatasına neden olur. Çoğu dönüşüm işlemi için izin verilen aralık[1,30]
şeklindedir.Bu özellik,
AD_CALL
veyaWEBSITE_CALL
dönüşüm işlemlerinde ayarlanamaz. Değer belirtildiğindeVALUE_MUST_BE_UNSET
hatası oluşur.