Ce guide explique les bases de l'utilisation de la bibliothèque cliente Perl pour l'API Google Ads.
Initialiser le client
Pour commencer à utiliser la bibliothèque, créez une instance de Google::Ads::GoogleAds::Client. Le client peut être configuré de plusieurs manières, comme indiqué dans le guide de configuration. Une approche courante consiste à utiliser un fichier googleads.properties :
use Google::Ads::GoogleAds::Client;
my $api_client = Google::Ads::GoogleAds::Client->new();
Créer un service
Une fois le client initialisé, vous pouvez créer des instances des différents services d'API. Par exemple, pour interagir avec des campagnes, vous devez créer une instance CampaignService :
my $campaign_service = $api_client->CampaignService();
Effectuer un appel d'API
Voici un exemple d'appel d'API permettant d'obtenir des campagnes. Cet extrait montre comment initialiser le client, créer un service et appeler une méthode.
use strict;
use warnings;
use Google::Ads::GoogleAds::Client;
use Google::Ads::GoogleAds::V22::Services::GoogleAdsService::SearchGoogleAdsRequest;
# Initialize the Google Ads client. See the [Configuration guide](configuration) for more options.
my $api_client = Google::Ads::GoogleAds::Client->new();
# Get the GoogleAdsService.
my $google_ads_service = $api_client->GoogleAdsService();
# Specify the customer ID and query.
my $customer_id = "INSERT_CUSTOMER_ID_HERE";
my $query = "SELECT campaign.name, campaign.status FROM campaign";
# Create a search request.
my $search_request = Google::Ads::GoogleAds::V22::Services::GoogleAdsService::SearchGoogleAdsRequest
->new({
customerId => $customer_id,
query => $query
});
# Execute the search request.
my $search_response = $google_ads_service->search($search_request);
# Iterate over the results and print campaign names.
foreach my $google_ads_row (@{$search_response->{results}}) {
printf "Campaign with resource name '%s' and name '%s'.\n",
$google_ads_row->{campaign}->{resourceName},
$google_ads_row->{campaign}->{name};
}
Gérer les erreurs
Les appels d'API peuvent générer des exceptions. Vous devez encapsuler vos appels d'API dans des blocs eval pour intercepter et gérer Google::Ads::GoogleAds::GoogleAdsException.
use strict;
use warnings;
use Google::Ads::GoogleAds::Client;
use Google::Ads::GoogleAds::GoogleAdsException;
use Google::Ads::GoogleAds::V22::Services::GoogleAdsService::SearchGoogleAdsRequest;
my $api_client = Google::Ads::GoogleAds::Client->new();
my $google_ads_service = $api_client->GoogleAdsService();
my $customer_id = "INSERT_CUSTOMER_ID_HERE";
my $query = "SELECT campaign.name, campaign.status FROM campaign";
my $search_request = Google::Ads::GoogleAds::V22::Services::GoogleAdsService::SearchGoogleAdsRequest->new({
customerId => $customer_id,
query => $query
});
eval {
my $search_response = $google_ads_service->search($search_request);
# Process successful response.
foreach my $google_ads_row (@{$search_response->{results}}) {
printf "Campaign name: %s\n", $google_ads_row->{campaign}->{name};
}
};
if ($@) {
if (blessed($@) && $@->isa('Google::Ads::GoogleAds::GoogleAdsException')) {
my $exception = $@;
printf "A Google Ads exception occurred:\n";
printf " Request ID: %s\n", $exception->get_request_id();
foreach my $error (@{$exception->get_errors()}) {
printf " Error code: %s\n", $error->{errorCode};
printf " Message: %s\n", $error->{message};
}
} else {
# Print other types of exceptions.
print "An error occurred: $@\n";
}
}
Découvrir d'autres exemples
Vous trouverez plusieurs exemples de code utiles dans la section Exemples.
La plupart des exemples nécessitent des paramètres. Vous pouvez transmettre les paramètres en tant qu'arguments (recommandé) ou modifier les valeurs INSERT_XXXXX_HERE dans le code source. Pour afficher une déclaration d'utilisation pour un exemple, transmettez -help en tant qu'argument de ligne de commande.
perl examples/basic_operations/get_campaigns.pl -help