Premiers pas

Vous devez activer le suivi des conversions dans votre compte de conversion Google Ads pour enregistrer les conversions. Ce guide explique comment vérifier si le suivi des conversions est activé, l'activer si ce n'est pas déjà le cas et récupérer des informations sur les actions de conversion existantes.

Pour la plupart des actions de conversion, vous devez également effectuer des étapes supplémentaires pour les suivre. Pour en savoir plus sur les différents types d'actions de conversion et leurs exigences, consultez le guide Créer des actions de conversion.

Il est essentiel de confirmer que vous êtes autorisé à partager des données de conversion avec Google. Vous pouvez le faire de deux manières :

  1. Configurez les paramètres de consentement par défaut au niveau du compte. Dans l' interface utilisateur Google Ads, cliquez sur Outils -> Gestionnaire de données -> Paramètres de consentement -> Paramètres de consentement par défaut.
  2. Définissez le champ ClickConversion.consent sur chaque conversion importée.

Configurer votre site Web pour suivre les conversions

Si vous commencez l'intégration de l'importation des conversions hors connexion, la première étape consiste à suivre la procédure décrite dans le guide Configurer la balise Google pour le suivi avancé des conversions pour les prospects afin de configurer votre site Web pour suivre le suivi avancé des conversions pour les prospects. Vous pouvez également utiliser Google Tag Manager pour configurer votre site Web en suivant la procédure décrite dans le guide Configurer Google Tag Manager pour le suivi avancé des conversions pour les prospects.

Activer le suivi des conversions dans votre compte de conversion Google Ads

Récupérer des informations sur votre configuration du suivi des conversions

Vous pouvez vérifier la configuration du suivi des conversions de votre compte et confirmer que le suivi des conversions est activé en interrogeant la ressource Customer pour le ConversionTrackingSetting. Exécutez la requête suivante avec GoogleAdsService.SearchStream :

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

Le champ google_ads_conversion_customer indique le compte Google Ads qui crée et gère les conversions pour ce client. Pour les clients qui utilisent le suivi des conversions multicomptes, il s'agit de l'ID d'un compte administrateur. L'ID client de conversion Google Ads doit être indiqué comme customer_id dans les requêtes de l'API Google Ads pour créer et gérer les conversions. Notez que ce champ est renseigné même si le suivi des conversions n'est pas activé.

Le conversion_tracking_status champ indique si le suivi des conversions est activé et si le compte utilise le suivi des conversions multicomptes.

Créer une action de conversion sous le client de conversion Google Ads

Si la valeur conversion_tracking_status est NOT_CONVERSION_TRACKED, le suivi des conversions n'est pas activé pour le compte. Activez le suivi des conversions en créant au moins une ConversionAction dans le compte de conversion Google Ads, comme dans l'exemple suivant. Vous pouvez également créer une action de conversion dans l'interface utilisateur en suivant les instructions du Centre d'aide pour le type de conversion que vous souhaitez activer.

Notez que le suivi avancé des conversions est activé automatiquement lorsqu'il est envoyé via l'API Google Ads, mais qu'il peut être désactivé via l'interface utilisateur Google Ads.

Exemple de code

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.V24.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

Assurez-vous que le conversion_action_type est défini sur la valeur correcte ConversionActionType. Pour obtenir des conseils sur la création d'actions de conversion dans l'API Google Ads, consultez Créer des actions de conversion.

Récupérer une action de conversion existante

Vous pouvez récupérer des informations sur une action de conversion existante en exécutant la requête suivante. Assurez-vous que l'ID client de la requête est défini sur le client de conversion Google Ads que vous avez identifié ci-dessus et que le type d'action de conversion est défini sur la valeur ConversionActionType appropriée.

SELECT
  conversion_action.resource_name,
  conversion_action.name,
  conversion_action.status
FROM conversion_action
WHERE conversion_action.type = 'INSERT_CONVERSION_ACTION_TYPE'

Suivi des conversions multicomptes

Si vous utilisez le suivi des conversions multicomptes, ConversionActionService renvoie les actions de conversion suivantes :

  • Toutes les actions de conversion définies par le compte administrateur utilisé par le compte pour le suivi des conversions multicomptes
  • Toutes les actions de conversion pour lesquelles le client a accumulé des statistiques, y compris les actions définies par le système et les actions appartenant à l'administrateur, même si cet administrateur supprime ensuite le lien
  • Toutes les actions que le client a définies dans son propre compte
  • Conversions Analytics créées dans des propriétés Google Analytics associées. Cela inclut les actions pour les conversions Analytics non importées dans Google Ads, dont l'état est HIDDEN.

Vous pouvez utiliser l'API Google Ads pour activer le suivi des conversions multicomptes lors de la création de comptes client.

Lorsque vous créez un nouveau Customer, définissez le conversion_tracking_setting.google_ads_conversion_customer sur le nom de ressource du compte administrateur qui doit gérer les actions de conversion au nom du compte client. Ce compte administrateur doit également être le compte qui émet la requête create pour le nouveau compte client.

À partir de la version v20, vous pouvez utiliser l' API Google Ads pour activer le suivi des conversions multicomptes lors de la création et de la mise à jour des comptes client.

Lorsque vous mettez à jour un compte client existant, vous pouvez activer le suivi des conversions multicomptes en définissant le conversion_tracking_setting.google_ads_conversion_customer champ. Ce champ doit être défini sur le nom de ressource du compte administrateur qui doit gérer les actions de conversion au nom du compte client. Ce compte administrateur doit également être le compte qui émet la requête update pour le compte client.

REMARQUE : L'utilisation de l'API Google Ads pour modifier les paramètres de suivi des conversions multicomptes d'un compte client est une fonctionnalité disponible uniquement sur liste d'autorisation. Pour ce faire, contactez votre responsable de compte.

Lorsque vous activez le suivi des conversions multicomptes ou que vous modifiez le gestionnaire de suivi des conversions pour un compte client existant, les mêmes mises en garde s'appliquent que si vous apportiez cette modification dans l'interface utilisateur. Plus spécifiquement :

  • Le compte client adopte les règles de valeur de conversion par défaut et les objectifs de cycle de vie client par défaut de son nouveau gestionnaire de suivi des conversions.
  • Les campagnes ciblant une action de conversion spécifique utilisent alors les objectifs de conversion par défaut du compte de gestionnaire de conversion. Si vous continuez à cibler une action de conversion spécifique, cela peut générer un comportement incohérent, car le compte administrateur n'a peut-être pas les mêmes objectifs que le compte client. Assurez-vous que vos campagnes sont optimisées pour atteindre les bons objectifs.
  • En outre, si un compte appartient à plusieurs comptes administrateur, il ne peut utiliser les actions de conversion que d'un seul compte. Si aucun compte de suivi des conversions n'est spécifié, le compte s'utilise lui-même comme compte de suivi des conversions par défaut.

Créer des actions de conversion

Pour mesurer les conversions, configurez un ConversionAction pour le type d' action de conversion que vous souhaitez suivre. Par exemple, un achat en ligne et un appel téléphonique nécessitent des actions de conversion différentes.

La meilleure façon de configurer de nouvelles actions de conversion dans l'API consiste à utiliser l'exemple de code Ajouter une action de conversion ci-dessous. L'exemple gère toutes les tâches d'authentification en arrière-plan pour vous et vous guide dans la création d'un ConversionAction.

Pour la plupart des actions de conversion, vous devez également effectuer des étapes supplémentaires pour les suivre. Par exemple, pour suivre les conversions sur votre site Web, vous devez ajouter un extrait de code appelé une balise à la page de conversion de votre site Web. Pour connaître les exigences détaillées des autres types d'actions de conversion, consultez notre article du Centre d'aide.

Exemple de code

L'exemple de code suivant vous guide tout au long du processus de création d'une action de conversion. Plus précisément, il crée une action de conversion avec le type défini sur UPLOAD_CLICKS. Il définit également le category sur DEFAULT.

Les paramètres par défaut suivants s'appliquent :

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.V24.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

Vous pouvez consulter cet exemple dans le dossier "Remarketing" de votre bibliothèque cliente et dans la collection d'exemples de code : Exemple de code Ajouter une action de conversion exemple.

Validations

Google Ads et l'API Google Ads sont compatibles avec une grande variété d'actions de conversion. Par conséquent, 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. Assurez-vous d'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 tentez de définir un champ d'énumération sur UNKNOWN, une erreur RequestError.INVALID_ENUM_VALUE se produit.
app_id
L'attribut app_id est immuable et ne peut être défini que lors de la création d'une conversion d'application.
attribution_model_settings
Si vous définissez cette option sur une option obsolète , une erreur CANNOT_SET_RULE_BASED_ATTRIBUTION_MODELS se produit. Google Ads n'est compatible qu'avec GOOGLE_ADS_LAST_CLICK et GOOGLE_SEARCH_ATTRIBUTION_DATA_DRIVEN.
click_through_lookback_window_days

Si vous définissez cet attribut sur une valeur en dehors de la plage autorisée, une erreur RangeError.TOO_LOW ou RangeError.TOO_HIGH se produit.

Cet attribut doit être compris entre [1,60] pour une action de conversion AD_CALL ou WEBSITE_CALL. Pour la plupart des autres actions de conversion, la plage autorisée est [1,30].

include_in_conversions_metric

Si vous définissez cette valeur dans une opération create ou update, une erreur FieldError.IMMUTABLE_FIELD se produit. Définissez plutôt primary_for_goal comme décrit dans le guide Objectifs de conversion.

phone_call_duration_seconds

Si vous tentez de définir cet attribut sur une action de conversion qui n'est pas destinée aux appels, une erreur FieldError.VALUE_MUST_BE_UNSET se produit.

type

L'attribut type est immuable et ne peut être défini que lors de la création d'une conversion.

Si vous mettez à jour une action de conversion avec type égal à UNKNOWN , une erreur MutateError.MUTATE_NOT_ALLOWED se produit.

value_settings

Pour une action de conversion WEBSITE_CALL ou AD_CALL, value_settings doit avoir la valeur always_use_default_value définie sur true. Si vous spécifiez la valeur false lors de la création ou de la mise à jour de cette valeur, une erreur INVALID_VALUE se produit.

view_through_lookback_window_days

Si vous définissez cet attribut sur une valeur en dehors de la plage autorisée, une erreur RangeError.TOO_LOW ou RangeError.TOO_HIGH se produit. Pour la plupart des actions de conversion, la plage autorisée est [1,30].

Cet attribut ne peut pas être défini sur les actions de conversion AD_CALL ou WEBSITE_CALL. Si vous spécifiez une valeur, une erreur VALUE_MUST_BE_UNSET se produit.