Ce guide répertorie les différents types d'actions de conversion possibles créer à l'aide de l'API Google Ads, des informations sur la façon dont ces éléments sont mis en correspondance avec le site Web de Google Ads et un exemple de code détaillé montrant comment créer des actions de conversion.
Pour mesurer les conversions, configurez un
ConversionAction
pour
type
sur
action de conversion que vous souhaitez suivre. Par exemple, un achat en ligne et un
nécessitent différentes actions de conversion.
Le meilleur moyen de configurer de nouvelles actions de conversion dans l'API consiste à utiliser
Ajoutez l'exemple de code d'action de conversion ci-dessous. Cet exemple traite
toutes les tâches d'authentification en arrière-plan et vous guide pour créer
Un ConversionAction
.
Le suivi de la plupart des actions de conversion nécessite également des étapes supplémentaires de votre part. de l'IA générative. Par exemple, pour effectuer le suivi des conversions sur votre site Web, vous devez ajouter un code un extrait appelé balise vers la page de conversion de votre site Web. Pour une autre action de conversion consultez notre cet article du Centre d'aide.
Conversions depuis un site Web
Une conversion sur un site Web vous permet de suivre les actions sur votre site Web, telles que les ventes en ligne, les clics sur un lien, les pages vues et les inscriptions.
Pour effectuer le suivi des conversions sur votre site Web, vous devez créer un
ConversionAction
avec le
ConversionActionType
sur WEBPAGE
, puis ajoutez un extrait de code (appelé balise) à la conversion
de votre site Web.
Le ConversionAction
englobe plusieurs
de conversion sur un site Web, qui sont distinguées dans l'API par les
Champ type
dans chaque
TagSnippet
,
le champ tag_snippets d'une
ConversionAction
Un TagSnippet
fournit le code de suivi qui doit
à votre site Web pour suivre vos actions de conversion.
Les conversions Clic sur un site Web et Clic sur un numéro de téléphone nécessitent le paramètre
event_snippet
,
qui doivent être placées sur les pages Web qui indiquent une action de conversion (par exemple,
une page de confirmation de paiement ou d'envoi de formulaire pour prospects ;
global_site_tag
,
qui doit être installé sur
chaque page de votre site web. Vous pouvez récupérer
ces attributs avec le paramètre
ConversionActionService
Départ
notre Centre d'aide
sur la façon d'ajouter des tags à vos pages.
Le tableau suivant présente les paramètres d'API équivalents à utiliser pour chaque Source dans l'interface Web de Google Ads:
Type de code de suivi | Source Google Ads |
---|---|
WEBPAGE |
Site Web, site Web (Google Analytics (GA4)) |
WEBPAGE_ONCLICK |
Site Web, site Web (Google Analytics (GA4)) |
CLICK_TO_CALL |
Clics sur des numéros de téléphone |
--- |
Site Web (Google Analytics (UA)) |
les conversions liées aux applications ;
Une conversion d'application vous permet d'effectuer le suivi des installations d'applications mobiles ou des achats via une application à partir de le Google Play Store.
Le tableau suivant présente les équivalents
ConversionActionType
Paramètres d'API à utiliser pour chaque source dans l'interface Web Google Ads:
Type d'action de conversion | Source Google Ads |
---|---|
GOOGLE_PLAY_DOWNLOAD |
Google Play > Installations |
GOOGLE_PLAY_IN_APP_PURCHASE |
Google Play > Achats via une application |
Si vous souhaitez suivre d'autres actions dans les applications mobiles à l'aide de Google Analytics 4 propriétés ou une solution d'analyse d'applications tierce. Consultez la page Autres types d'actions de conversion.
Conversions par appel téléphonique
Suivi des conversions par appel téléphonique vous permet d'effectuer le suivi des appels à partir d'annonces, des appels vers un numéro indiqué sur votre site Web, clique sur un numéro affiché sur un site pour mobile ;
Le tableau suivant présente les équivalents
ConversionActionType
Paramètres d'API à utiliser pour chaque source dans l'interface Web Google Ads:
Type d'action de conversion | Source Google Ads |
---|---|
AD_CALL |
Appels à partir d'annonces utilisant des extensions d'appel ou d'annonces Appels uniquement |
WEBSITE_CALL |
Appels vers un numéro de téléphone indiqué sur votre site Web |
CLICK_TO_CALL |
Clics sur un numéro affiché sur votre site Web mobile |
Le type CLICK_TO_CALL
diffère du type AD_CALL
en ce sens
pas le suivi des appels téléphoniques réels. En revanche, CLICK_TO_CALL
effectue uniquement le suivi des clics sur un
un numéro de téléphone à partir d'un appareil mobile. Cette fonctionnalité est utile lorsque vous n'êtes pas en mesure d'utiliser
Numéro de transfert Google pour le suivi des appels téléphoniques
AD_CALL
Une
AD_CALL
l'action de conversion s'affiche sous la forme de Appels provenant
ads dans Google Ads
l'interface Web. Après avoir créé l'action de conversion "AD_CALL
", spécifiez sa
nom de la ressource dans le champ call_conversion_action
lorsque vous créez
CallAsset
Appel
composants vous permettent d'afficher
directement dans vos annonces.
Un appel est comptabilisé comme une conversion s'il dépasse la durée spécifiée. La valeur par défaut est de 60 secondes.
WEBSITE_CALL
A
WEBSITE_CALL
l'action de conversion s'affiche sous la forme d'un appel depuis un
sur un site Web
de l'interface Web Google Ads.
Retirer le "J’aime"
AD_CALL
,
ce traceur nécessite event_snippet
et global_site_tag
à ajouter à
votre site Web afin de récupérer le numéro de transfert Google dynamique pour le suivi des appels
sur les numéros listés sur votre site Web. En outre, vous devez configurer un appel
élément et associez-le
au niveau du client, de la campagne ou du groupe d'annonces.
Importer les conversions hors connexion
Le tableau suivant présente les équivalents
ConversionActionType
Paramètres d'API à utiliser pour chaque source dans l'interface Web Google Ads
et un lien vers la documentation de chaque type d'action de conversion spécifique:
Type d'action de conversion | Source Google Ads | Guide de configuration de l'API |
---|---|---|
UPLOAD_CLICKS |
Suivez les conversions après un clic et le suivi avancé des conversions pour prospects | Guide d'importation des clics
Optimisée Guide sur les conversions pour les prospects |
UPLOAD_CALLS |
Effectuer le suivi des conversions à partir d'appels | Guide de configuration de l'API |
STORE_SALES |
Effectuer le suivi des conversions des ventes en magasin | Configuration de l'API Guide |
Suivi avancé des conversions pour le Web
Suivi avancé des conversions pour
Web vous permettent d'envoyer
des données de conversion first party pour WEBPAGE
actions de conversion dans les 24 heures
un événement de conversion plutôt qu'en même temps. Cela permet de localiser
Données first party provenant de diverses sources, telles qu'une base de données client ou un CRM
du système d'exploitation.
Types d'actions de conversion supplémentaires
L'API Google Ads propose d'autres types d'actions de conversion dans les rapports, mais peut limiter ou interdire la création ou la modification de ces actions.
Conversions SKAdNetwork
Si vous diffusez des campagnes pour applications iOS
et vous avez implémenté
SKAdNetwork, vous pouvez accéder
Données SKAdNetwork fournies à Google au niveau du Customer
et du Campaign
à l'aide de
les ressources suivantes:
Champ du rapport | Description |
---|---|
metrics.sk_ad_network_installs |
Nombre d'installations enregistrées par Apple. Cette métrique ne peut être segmentée
par une combinaison de segments.sk_ad_network_conversion_value et
liés à la date.
|
metrics.sk_ad_network_total_conversions |
Le nombre total de conversions, y compris les installations et les autres types de de conversions enregistrées par Apple. Cette métrique ne peut être segmentée Segments liés à SKAdNetwork et aux segments liés à la date. |
segments.sk_ad_network_ad_event_type |
Type d'événement qui s'est produit pour une conversion spécifique |
segments.sk_ad_network_attribution_credit |
Manière dont l'attribution est attribuée à une conversion spécifique. |
segments.sk_ad_network_fine_conversion_value |
Valeur d'une conversion enregistrée par Apple. Impossible d'appliquer ce segment
à des métriques autres que La valeur |
segments.sk_ad_network_coarse_conversion_value |
Valeur approximative d'une conversion individuelle. |
segments.sk_ad_network_postback_sequence_index |
Position du postback, dans l'ordre, pour une conversion spécifique. |
segments.sk_ad_network_source_app.sk_ad_network_source_app_id |
ID de l'application pour laquelle l'annonce ayant généré l'installation d'iOS Store Kit via un réseau publicitaire était affichés. |
segments.sk_ad_network_source_domain |
Le site Web sur lequel l'annonce ayant généré l'installation d'iOS Store Kit était affichés. Une valeur nulle signifie que ce segment n'est pas applicable. Par exemple, campagne autre qu'iOS, ou n'était présente dans aucun postback envoyé par Apple. |
segments.sk_ad_network_source_type |
Type de source ayant généré l'installation de l'annonce ayant généré l'installation de l'iOS Store Kit sur le réseau publicitaire a été affichée. Une valeur nulle signifie que ce segment n'est pas applicable. Par exemple, campagne non iOS, ou dans laquelle aucun domaine source ni application source n'étaient présents tous les postbacks envoyés par Apple. |
segments.sk_ad_network_user_type |
Type d'utilisateur ayant généré une conversion particulière. |
segments.sk_ad_network_redistributed_fine_conversion_value |
Les valeurs de conversion de ce segment incluent des valeurs nulles qui étaient redistribuées aux valeurs de conversion. Ce segment représente la somme de valeurs de conversion précises observées renvoyées par Apple et valeurs nulles modélisées de Google. |
segments.sk_ad_network_version |
Version de l'API iOS Store Kit Ad Network utilisée. |
Vous pouvez aussi enregistrer une mise en correspondance des valeurs de conversion SKAdNetwork
clients disposant d'applications iOS via CustomerSkAdNetworkConversionValueSchema
.
Exemple de code Python
#!/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="v17" ) 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
Les conversions provenant d'une propriété Google Analytics associée présentent l'un des états suivants :
Valeurs type
:
Conversion d'une propriété GA4:
GOOGLE_ANALYTICS_4_CUSTOM
GOOGLE_ANALYTICS_4_PURCHASE
Vous pouvez également récupérer l'ID, le nom de la propriété et le nom de l'événement dans GA4. la
google_analytics_4_settings
.Conversion d'une propriété Universal Analytics:
UNIVERSAL_ANALYTICS_GOAL
UNIVERSAL_ANALYTICS_TRANSACTION
Vous pouvez apporter les modifications suivantes à une conversion de propriété GA4:
- Importez la conversion depuis votre propriété GA4 dans votre compte Google Ads en
modifier son champ
status
deHIDDEN
enENABLED
. - Modifiez ses champs
primary_for_goal
etcategory
pour indiquer comment sur les enchères et les rapports Google Ads. - Mettez à jour son
name
ou sonvalue_settings
. - Supprimez la conversion de votre compte Google Ads à l'aide d'une opération
remove
.
Toute tentative de modification d'autres attributs d'une conversion GA4 importée ou toute
d'une conversion Universal Analytics importée génère
Erreur MUTATE_NOT_ALLOWED
. Vous ne pouvez effectuer ces modifications que dans l'interface utilisateur de Google Ads.
Firebase et solution d'analyse d'applications tierce
Importer
solution d'analyse d'applications tierce
ou Firebase,
modifiez le status
de
ConversionAction
de HIDDEN
à ENABLED
en utilisant la méthode mutate
de
ConversionActionService
Mettre à jour le
app_id
n'est pas compatible avec ces appareils
actions de conversion.
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
Ventes en magasin
Bien que vous ne puissiez pas créer de STORE_SALES
ni de STORE_SALES_DIRECT_UPLOAD
des actions de conversion à l'aide de l'API Google Ads, celle-ci permet d'importer des données de magasin
les transactions commerciales.
STORE_SALES
STORE_SALES_DIRECT_UPLOAD
Divers
Les types d'actions de conversion suivants sont en lecture seule dans l'API Google Ads et sont fournis à des fins de reporting.
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
Inconnu
Si votre compte Google Ads inclut d'autres types d'actions de conversion, vous verrez peut-être
que les requêtes et les rapports renvoient des actions de conversion
ConversionAction.type
est UNKNOWN
.
L'API ne permet pas de gérer ces actions de conversion, mais les renvoie dans
afin de fournir des résultats complets pour les métriques de conversion clés, telles que
metrics.conversions
et metrics.conversions_value
.
Exemple de code
L'exemple de code suivant vous guide tout au long du processus de création
action de conversion. Plus précisément, elle crée une action de conversion avec le paramètre
type
défini sur
UPLOAD_CLICKS
Le processus est le même dans l'interface utilisateur Google Ads que pour créer une action de conversion à l'aide de
Importer > Importation manuelle via l'API ou les importations > Effectuer le suivi des conversions depuis
clics. Elle définit également le category
par DEFAULT
.
Les paramètres par défaut suivants s'appliquent:
L'API Google Ads définit Champ
primary_for_goal
automatiquement, mais vous pouvez définir explicitement ce champ pour contrôler la façon dont Les actions de conversion ont un impact sur les rapports et les enchères dans votre compte lorsqu'elles sont combinées par rapport à vos objectifs de conversion.L'API Google Ads définit
counting_type
automatiquement parMANY_PER_CLICK
. Pour en savoir plus, consultez À propos des options de comptabilisation des conversions.L'API Google Ads définit le modèle d'attribution sur Données d'entraînement en définissant
attribution_model_settings
au ValeurGOOGLE_SEARCH_ATTRIBUTION_DATA_DRIVEN
deAttributionModel
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.V17.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::V17::Resources::ConversionAction->new({ name => $conversion_action_name, category => DEFAULT, type => WEBPAGE, status => ENABLED, viewThroughLookbackWindowDays => 15, valueSettings => Google::Ads::GoogleAds::V17::Resources::ValueSettings->new({ defaultValue => 23.41, alwaysUseDefaultValue => "true" })}); # Create a conversion action operation. my $conversion_action_operation = Google::Ads::GoogleAds::V17::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; }
Vous trouverez également cet exemple dans le dossier "Remarketing" de votre bibliothèque cliente. Dans la collection d'exemples de code, ajoutez le code d'action de conversion exemple.
Validations
Google Ads et l'API Google Ads acceptent de nombreuses actions de conversion. Certaines
règles de validation varient en fonction du type
d'action.
L'erreur la plus courante lors de la création d'une action de conversion est
DUPLICATE_NAME
Veillez à utiliser un nom unique pour chaque action de conversion.
Voici quelques conseils pour définir les champs ConversionAction
:
- Tous les champs d'énumération
- Si vous essayez de définir un champ d'énumération sur
UNKNOWN
, une erreurRequestError.INVALID_ENUM_VALUE
erreur. app_id
- L'attribut
app_id
est immuable et ne peut être défini que lors de la création d'un les conversions d'application. attribution_model_settings
- Définir ce paramètre sur obsolète
cette option
génère
CANNOT_SET_RULE_BASED_ATTRIBUTION_MODELS
. Google Ads n'accepte queGOOGLE_ADS_LAST_CLICK
etGOOGLE_SEARCH_ATTRIBUTION_DATA_DRIVEN
click_through_lookback_window_days
La définition de cet attribut sur une valeur située en dehors de la plage autorisée entraîne une Erreur
RangeError.TOO_LOW
ouRangeError.TOO_HIGH
.Cet attribut doit être compris dans la plage
[1,60]
pour unAD_CALL
ouWEBSITE_CALL
action de conversion. Pour la plupart des autres actions de conversion, la plage autorisée est[1,30]
.include_in_conversions_metric
La définition de cette valeur dans une opération
create
ouupdate
échoue avec une erreur ErreurFieldError.IMMUTABLE_FIELD
. Définissez plutôtprimary_for_goal
comme décrits dans le guide sur les objectifs de conversion.phone_call_duration_seconds
Vous essayez de définir cet attribut pour une action de conversion qui n'est pas destinée aux appels. génère une erreur
FieldError.VALUE_MUST_BE_UNSET
.type
L'attribut
type
est immuable et ne peut être défini que lors de la création d'un la conversion.Mise à jour d'une action de conversion avec
type
égal àUNKNOWN
renvoie ErreurMutateError.MUTATE_NOT_ALLOWED
.value_settings
Le
value_settings
pour une action de conversionWEBSITE_CALL
ouAD_CALL
doit avoiralways_use_default_value
défini surtrue
. Spécifier une valeur defalse
Lors de la création ou de la mise à jour de cette valeur, une erreurINVALID_VALUE
est renvoyée.view_through_lookback_window_days
La définition de cet attribut sur une valeur située en dehors de la plage autorisée entraîne une Erreur
RangeError.TOO_LOW
ouRangeError.TOO_HIGH
. Pour la plupart des conversions actions, la plage autorisée est[1,30]
.Impossible de définir cet attribut pour une conversion
AD_CALL
ouWEBSITE_CALL
actions. La spécification d'une valeur entraîne une erreurVALUE_MUST_BE_UNSET
.