Sie müssen Conversion-Tracking in Ihrem Google Ads-Conversion-Konto aktivieren, um Conversions zu erfassen. In dieser Anleitung erfahren Sie, wie Sie prüfen, ob Conversion-Tracking aktiviert ist, wie Sie es aktivieren, falls es noch nicht aktiviert ist, und wie Sie Informationen zu vorhandenen Conversion-Aktionen abrufen.
Für die meisten Conversion-Aktionen sind außerdem zusätzliche Schritte erforderlich, um sie zu erfassen. Weitere Informationen zu den verschiedenen Conversion-Aktionstypen und ihren Anforderungen finden Sie in der Anleitung Conversion-Aktionen erstellen.
Einwilligung vorbereiten
Sie müssen bestätigen, dass Sie die Berechtigung haben, Conversion-Daten an Google weiterzugeben. Dazu gibt es zwei Möglichkeiten:
- Standardeinstellungen für die Einwilligung auf Kontoebene konfigurieren. Klicken Sie in der Google Ads-Benutzeroberfläche auf Tools -> Datenverwaltung -> Einstellungen für die Einwilligung -> Standardeinstellungen für die Einwilligung.
- Legen Sie das Feld ClickConversion.consent für jede importierte Conversion fest.
Website für das Conversion-Tracking einrichten
Wenn Sie mit der Integration von Offline-Conversion-Importen beginnen, müssen Sie zuerst die Schritte in der Anleitung Google-Tag für erweiterte Conversions für Leads konfigurieren ausführen, um Ihre Website für das Tracking erweiterter Conversions für Leads zu konfigurieren. Sie können Ihre Website auch mit Google Tag Manager konfigurieren. Folgen Sie dazu den Schritten in der Anleitung Google Tag Manager für erweiterte Conversions für Leads konfigurieren .
Conversion-Tracking in Ihrem Google Ads-Conversion-Konto aktivieren
Informationen zur Einrichtung des Conversion-Trackings abrufen
Sie können die Einrichtung des Conversion-Trackings für Ihr Konto prüfen und bestätigen, dass Conversion
Tracking aktiviert ist, indem Sie die Customer Ressource
nach der ConversionTrackingSetting abfragen.
Führen Sie die folgende Abfrage mit
GoogleAdsService.SearchStream aus:
SELECT
customer.conversion_tracking_setting.google_ads_conversion_customer,
customer.conversion_tracking_setting.conversion_tracking_status,
customer.conversion_tracking_setting.conversion_tracking_id,
customer.conversion_tracking_setting.cross_account_conversion_tracking_id
FROM customer
Das Feld google_ads_conversion_customer gibt das Google Ads-Konto an, in dem Conversions für diesen Kunden erstellt und verwaltet werden. Bei Kunden, die
kontoübergreifendes Conversion-Tracking,
verwenden, ist dies die ID eines Verwaltungskontos. Die Google Ads-Conversion-Kunden-ID sollte in Google Ads API-Anfragen zum Erstellen und Verwalten von Conversions als customer_id angegeben werden.
Dieses Feld wird auch dann ausgefüllt, wenn Conversion-Tracking nicht aktiviert ist.
Das
conversion_tracking_status
Feld gibt an, ob Conversion-Tracking aktiviert ist und ob das Konto
kontoübergreifendes Conversion-Tracking verwendet.
Conversion-Aktion unter dem Google Ads-Conversion-Kunden erstellen
Wenn der Wert von conversion_tracking_status NOT_CONVERSION_TRACKED ist, ist Conversion-Tracking für das Konto nicht aktiviert. Aktivieren Sie Conversion-Tracking
indem Sie mindestens eine ConversionAction in
dem Google Ads-Conversion-Konto erstellen, wie im folgenden Beispiel. Alternativ können Sie
eine Conversion-Aktion in der Benutzeroberfläche erstellen. Folgen Sie dazu der Anleitung in der
Hilfe für den
Conversion-Typ, den Sie aktivieren möchten.
Erweiterte Conversions werden automatisch aktiviert, wenn sie über die Google Ads API gesendet werden. Sie können jedoch über die Google Ads-Benutzeroberfläche deaktiviert werden.
Codebeispiel
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.V23.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: GoogleAdsClient, customer_id: str) -> None: conversion_action_service: ConversionActionServiceClient = ( client.get_service("ConversionActionService") ) # Create the operation. conversion_action_operation: ConversionActionOperation = client.get_type( "ConversionActionOperation" ) # Create conversion action. conversion_action: ConversionAction = 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: ConversionAction.ValueSettings = ( conversion_action.value_settings ) value_settings.default_value = 15.0 value_settings.always_use_default_value = True # Add the conversion action. conversion_action_response: MutateConversionActionsResponse = ( 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::V24::Resources::ConversionAction->new({ name => $conversion_action_name, category => DEFAULT, type => WEBPAGE, status => ENABLED, viewThroughLookbackWindowDays => 15, valueSettings => Google::Ads::GoogleAds::V24::Resources::ValueSettings->new({ defaultValue => 23.41, alwaysUseDefaultValue => "true" })}); # Create a conversion action operation. my $conversion_action_operation = Google::Ads::GoogleAds::V24::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; }
curl
Achten Sie darauf, dass der conversion_action_type auf den richtigen
ConversionActionType-Wert festgelegt ist.
Weitere Informationen zum Erstellen von Conversion-Aktionen in der Google Ads API finden Sie unter Conversion-Aktionen erstellen.
Vorhandene Conversion-Aktion abrufen
Sie können Details zu einer vorhandenen Conversion-Aktion abrufen, indem Sie die folgende Abfrage ausführen. Achten Sie darauf, dass die Kunden-ID in der Anfrage auf den oben angegebenen Google Ads
Conversion-Kunden festgelegt ist und der Conversion-Aktionstyp auf den richtigen
ConversionActionType
Wert festgelegt ist.
SELECT
conversion_action.resource_name,
conversion_action.name,
conversion_action.status
FROM conversion_action
WHERE conversion_action.type = 'INSERT_CONVERSION_ACTION_TYPE'
Kontoübergreifendes Conversion-Tracking
Wenn Sie kontoübergreifendes Conversion
Tracking verwenden, gibt
ConversionActionService die
folgenden Conversion-Aktionen zurück:
- Alle Conversion-Aktionen, die vom Verwaltungskonto definiert wurden, das vom Konto für kontoübergreifendes Conversion-Tracking verwendet wird
- Alle Conversion-Aktionen, für die der Kunde Statistiken erfasst hat, einschließlich systemdefinierter Aktionen und Aktionen, die dem Verwaltungskonto gehören, auch wenn die Verknüpfung mit dem Verwaltungskonto später aufgehoben wird
- Alle Aktionen, die der Kunde in seinem eigenen Konto definiert hat
- In verknüpften Google Analytics-Properties erstellte Analytics-Conversions
Dazu gehören auch Aktionen für Analytics-Conversions, die nicht in Google Ads importiert wurden,
die den Status
HIDDENhaben.
Sie können die Google Ads API verwenden, um kontoübergreifendes Conversion-Tracking zu aktivieren, wenn Sie Kundenkonten erstellen.
Legen Sie beim Erstellen eines neuen Customer das
conversion_tracking_setting.google_ads_conversion_customer
auf den
Ressourcennamen des Verwaltungskontos fest, das Conversion-Aktionen im Namen des Kundenkontos verwalten soll.
Dieses Verwaltungskonto muss auch das Konto sein, das die create-Anfrage für das neue Kundenkonto ausgibt.
Ab Version v20 können Sie die
Google Ads API verwenden, um kontoübergreifendes Conversion-Tracking sowohl beim Erstellen als auch beim Aktualisieren
von Kundenkonten zu aktivieren.
Wenn Sie ein vorhandenes Kundenkonto aktualisieren, können Sie kontoübergreifendes
Conversion-Tracking aktivieren, indem Sie das
conversion_tracking_setting.google_ads_conversion_customer
Feld festlegen. Dieses Feld sollte auf den
Ressourcennamen des Verwaltungskontos
festgelegt werden, das Conversion-Aktionen im Namen des Kundenkontos verwalten soll.
Dieses Verwaltungskonto muss auch das Konto sein, das die update-Anfrage für das Kundenkonto ausgibt.
Hinweis: Die Verwendung der Google Ads API zum Ändern der Einstellungen für das kontoübergreifende Conversion-Tracking eines Kundenkontos ist nur für Konten auf der Zulassungsliste möglich. Wenden Sie sich dazu an Ihren Account Manager.
Wenn Sie kontoübergreifendes Conversion-Tracking aktivieren oder den Conversion Tracking-Manager für ein vorhandenes Kundenkonto ändern, gelten dieselben Einschränkungen wie bei einer Änderung in der Benutzeroberfläche wenn Sie diese Änderung in der Benutzeroberfläche vornehmen würden. Im Detail:
- Das Kundenkonto übernimmt die Standardregeln für Conversion-Werte und die Standardzielvorhaben für den Kundenlebenszyklus des neuen Conversion-Tracking-Managers.
- Für Kampagnen, die auf eine bestimmte Conversion-Aktion ausgerichtet sind, werden die standardmäßigen Conversion-Zielvorhaben des Conversion-Manager-Kontos verwendet. Wenn Sie weiterhin auf eine bestimmte Conversion-Aktion ausrichten, kann dies zu inkonsistentem Verhalten führen, da das Verwaltungskonto möglicherweise nicht dieselben Zielvorhaben wie das Kundenkonto hat. Achten Sie darauf, dass Ihre Kampagnen für die richtigen Zielvorhaben optimiert sind.
- Falls ein Konto zu mehreren Verwaltungskonten gehört, können dafür nur Conversion-Aktionen aus einem Verwaltungskonto verwendet werden. Wenn kein Conversion-Tracking-Konto angegeben ist, verwendet das Konto standardmäßig sich selbst als Conversion-Tracking-Konto.
Conversion-Aktionen erstellen
Wenn Sie Conversions erfassen möchten, richten Sie eine
ConversionAction für den
type der
Conversion-Aktion ein, die Sie erfassen möchten. Für einen Onlinekauf und einen Anruf sind beispielsweise unterschiedliche Conversion-Aktionen erforderlich.
Die beste Möglichkeit, neue Conversion-Aktionen in der API einzurichten, ist die Verwendung des
Codebeispiels Conversion-Aktion hinzufügen unten. Das Beispiel übernimmt
alle Hintergrundaufgaben für die Authentifizierung und führt Sie durch das Erstellen
einer ConversionAction.
Für die meisten Conversion-Aktionen sind außerdem zusätzliche Schritte erforderlich, um sie zu erfassen. Wenn Sie beispielsweise Conversions auf Ihrer Website erfassen möchten, müssen Sie der Conversion-Seite auf Ihrer Website einen Code Snippet hinzufügen, der als Tag bezeichnet wird. Detaillierte Anforderungen für andere Conversion-Aktionstypen finden Sie in diesem Hilfeartikel.
Codebeispiel
Im folgenden Codebeispiel wird beschrieben, wie Sie eine neue Conversion-Aktion erstellen. Dabei wird eine Conversion-Aktion erstellt, bei der
type auf
UPLOAD_CLICKS festgelegt ist.
Außerdem wird category
auf DEFAULTfestgelegt.
Die folgenden Standardeinstellungen gelten:
Die Google Ads API legt das
primary_for_goalFeld automatisch fest. Sie können dieses Feld jedoch explizit festlegen, um zu steuern, wie sich eine Conversion-Aktion in Kombination mit Ihren Conversion-Zielvorhaben auf Berichte und Gebote in Ihrem Konto auswirkt, wenn sie kombiniert werden.Die Google Ads API legt
counting_typeautomatisch aufMANY_PER_CLICKfest. Weitere Informationen finden Sie unter Optionen für die Conversion-Zählung.Die Google Ads API legt das Attributionsmodell auf Daten getrieben fest, indem das
attribution_model_settingsFeld auf denGOOGLE_SEARCH_ATTRIBUTION_DATA_DRIVENWert vonAttributionModelfestgelegt wird. Weitere Informationen zu Attributionsmodellen finden Sie in diesem Hilfeartikel.
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.V23.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: GoogleAdsClient, customer_id: str) -> None: conversion_action_service: ConversionActionServiceClient = ( client.get_service("ConversionActionService") ) # Create the operation. conversion_action_operation: ConversionActionOperation = client.get_type( "ConversionActionOperation" ) # Create conversion action. conversion_action: ConversionAction = 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: ConversionAction.ValueSettings = ( conversion_action.value_settings ) value_settings.default_value = 15.0 value_settings.always_use_default_value = True # Add the conversion action. conversion_action_response: MutateConversionActionsResponse = ( 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::V24::Resources::ConversionAction->new({ name => $conversion_action_name, category => DEFAULT, type => WEBPAGE, status => ENABLED, viewThroughLookbackWindowDays => 15, valueSettings => Google::Ads::GoogleAds::V24::Resources::ValueSettings->new({ defaultValue => 23.41, alwaysUseDefaultValue => "true" })}); # Create a conversion action operation. my $conversion_action_operation = Google::Ads::GoogleAds::V24::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; }
curl
Dieses Beispiel finden Sie im Ordner „Remarketing“ Ihrer Clientbibliothek und in der Sammlung von Codebeispielen: Codebeispiel für das Hinzufügen einer Conversion-Aktion example.
Validierungen
Google Ads und die Google Ads API unterstützen eine Vielzahl von Conversion-Aktionen. Daher variieren einige
Validierungsregeln je nach type
der Aktion.
Der mit Abstand häufigste Fehler beim Erstellen einer Conversion-Aktion ist
DUPLICATE_NAME.
Achten Sie darauf, dass Sie für jede Conversion-Aktion einen eindeutigen Namen verwenden.
Hier einige Tipps zum Festlegen der ConversionAction-Felder:
- Alle Enum-Felder
- Wenn Sie versuchen, ein Enum-Feld auf
UNKNOWNfestzulegen, wird der FehlerRequestError.INVALID_ENUM_VALUEausgelöst. app_id- Das Attribut
app_idist unveränderlich und kann nur beim Erstellen einer neuen App-Conversion festgelegt werden. attribution_model_settings- Wenn Sie dieses Attribut auf eine veraltete
Option
festlegen, wird der
CANNOT_SET_RULE_BASED_ATTRIBUTION_MODELSFehler ausgelöst. Google Ads unterstützt nurGOOGLE_ADS_LAST_CLICKundGOOGLE_SEARCH_ATTRIBUTION_DATA_DRIVEN. click_through_lookback_window_daysWenn Sie dieses Attribut auf einen Wert außerhalb des zulässigen Bereichs festlegen, wird der Fehler
RangeError.TOO_LOWoderRangeError.TOO_HIGHausgelöst.Für eine
AD_CALL- oderWEBSITE_CALL-Conversion-Aktion muss dieses Attribut im Bereich[1,60]liegen. Für die meisten anderen Conversion-Aktionen liegt der zulässige Bereich bei[1,30].include_in_conversions_metricWenn Sie diesen Wert in einem
create- oderupdate-Vorgang festlegen, schlägt der Vorgang mit dem FehlerFieldError.IMMUTABLE_FIELDfehl. Legen Sie stattdessenprimary_for_goalfest, wie in der Anleitung Conversion-Zielvorhaben beschrieben.phone_call_duration_secondsWenn Sie versuchen, dieses Attribut für eine Conversion-Aktion festzulegen, die nicht für Anrufe gilt, wird der Fehler
FieldError.VALUE_MUST_BE_UNSETausgelöst.typeDas Attribut
typeist unveränderlich und kann nur beim Erstellen einer neuen Conversion festgelegt werden.Wenn Sie eine Conversion-Aktion mit
typegleichUNKNOWNaktualisieren, wird der FehlerMutateError.MUTATE_NOT_ALLOWEDausgelöst.value_settingsFür die
value_settingseinerWEBSITE_CALL- oderAD_CALL-Conversion-Aktion mussalways_use_default_valueauftruefestgelegt sein. Wenn Sie beim Erstellen oder Aktualisieren dieses Wertsfalseangeben, wird der FehlerINVALID_VALUEausgelöst.view_through_lookback_window_daysWenn Sie dieses Attribut auf einen Wert außerhalb des zulässigen Bereichs festlegen, wird der Fehler
RangeError.TOO_LOWoderRangeError.TOO_HIGHausgelöst. Für die meisten Conversion-Aktionen liegt der zulässige Bereich bei[1,30].Dieses Attribut kann nicht für
AD_CALL- oderWEBSITE_CALL-Conversion-Aktionen festgelegt werden. Wenn Sie einen Wert angeben, wird der FehlerVALUE_MUST_BE_UNSETausgelöst.