Les sections suivantes décrivent comment commencer à utiliser l'API Reporting Search Ads 360.
Configurer votre projet sur Google Cloud
Pour utiliser l'API Reporting Search Ads 360, vous devez créer un projet pour votre application sur Google Cloud.
Créer un projet Google
Un projet Google sert de conteneur pour vos ressources Google Cloud.
- Go to the Google API Console.
- Cliquez sur Create Project (Créer un projet).
- Saisissez un nom ou acceptez la suggestion générée.
- Confirmez ou modifiez les champs restants.
- Cliquez sur Créer.
Créer des identifiants OAuth2
L'API Search Ads 360 Reporting utilise OAuth 2.0 pour l'authentification et l'autorisation. Les identifiants OAuth permettent d'identifier votre application auprès de Google et de générer des jetons OAuth pour gérer les utilisateurs Search Ads 360.
Pour créer un identifiant OAuth 2.0 dans Google API Console :
- Go to the Clients page.
- Cliquez sur Créer des identifiants > ID client OAuth.
- Sélectionnez le type d'application.
- Remplissez le formulaire, puis cliquez sur Créer.
Activer l'API Search Ads 360 Reporting
Pour utiliser l'API, vous devez activer l'API Search Ads 360 Reporting pour votre projet dans la console d'API Google.
Pour activer une API pour votre projet :
- Open the API Library dans le Google API Console.
- If prompted, select a project, or create a new one. La API Library répertorie toutes les API disponibles, regroupées par famille de produits et classées en fonction de leur popularité.
- Si l'API que vous souhaitez activer n'apparaît pas dans la liste, utilisez la recherche pour la trouver ou cliquez sur Tout afficher dans la famille de produits à laquelle elle appartient.
- Sélectionnez l'API que vous souhaitez activer, puis cliquez sur le bouton Activer.
- If prompted, enable billing.
- If prompted, read and accept the API's Terms of Service.
Activez éventuellement la facturation pour votre projet.
L'utilisation de l'API Search Ads 360 Reporting dans Google Cloud est sans frais. Toutefois, il existe un quota pour le nombre total de projets Cloud sans frais pour chaque compte. Si vous avez atteint votre limite, vous pouvez créer un compte Google qui inclura un quota de projets sans frais.
Pour activer la facturation pour le projet :
- Consultez Billing page.
- Si vous ne disposez pas de compte de facturation actif, créez-en un en cliquant sur Ajouter un compte de facturation et en suivant les instructions.
Activer l'écran de consentement de votre projet
Pour activer l'écran de consentement de votre projet :
- Ouvrez Branding page dans Google Cloud Console.
- If prompted, select a project, or create a new one.
- Remplissez le formulaire, puis cliquez sur Enregistrer.
Créer, modifier ou afficher des URI de redirection
Pour créer, afficher ou modifier les URI de redirection d'un identifiant OAuth 2.0 donné, procédez comme suit :
- Go to the Clients page.
- Cliquez sur le client.
- Affichez ou modifiez les URI de redirection.
Si aucun client n'est listé sur la page "Clients", cela signifie que votre projet ne dispose pas d'identifiants OAuth. Pour en créer un, cliquez sur Créer un client.
Télécharger une bibliothèque cliente
L'utilisation d'une bibliothèque cliente de l'API Search Ads 360 Reporting est la méthode recommandée pour se connecter à l'API Search Ads 360 Reporting.
Téléchargez la bibliothèque cliente de l'API Search Ads 360 Reporting pour votre environnement de développement. Suivez les instructions spécifiques à votre langage pour configurer votre fichier de configuration de bibliothèque cliente. Dans la plupart des cas, vous pouvez réutiliser votre configuration existante lorsque vous migrez vers la nouvelle bibliothèque cliente de l'API Search Ads 360 Reporting.
Une modification importante concerne le nouvel en-tête login-customer-id
. Pour savoir quand vous devez ajouter cet en-tête à votre configuration, consultez En-tête "ID client de connexion".
Passer votre premier appel
Une fois que vous avez configuré votre bibliothèque cliente, vous pouvez effectuer votre premier appel.
Obtenir des campagnes
Dans votre IDE, exécutez le code suivant :
Java
// Copyright 2022 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. package sample; import com.beust.jcommander.Parameter; import com.google.ads.searchads360.v0.lib.SearchAds360Client; import com.google.ads.searchads360.v0.services.SearchAds360Row; import com.google.ads.searchads360.v0.services.SearchAds360ServiceClient; import com.google.ads.searchads360.v0.services.SearchAds360ServiceClient.SearchPagedResponse; import com.google.ads.searchads360.v0.services.SearchSearchAds360Request; /** Get campaign details. */ public class GetCampaigns { private static final int PAGE_SIZE = 200; private static class GetCampaignsParams extends CodeSampleParams { @Parameter(names = "--customerId", required = true) private String customerId; @Parameter(names = "--loginCustomerId") private String loginCustomerId; } public static void main(String[] args) { GetCampaignsParams params = new GetCampaignsParams(); if (!params.parseArguments(args)) { // Optional: You may pass the loginCustomerId on the command line or specify a loginCustomerId // here (10 digits, no dashes). If neither are set, customerId will be used as // loginCustomerId. // params.loginCustomerId = Long.parseLong("INSERT_LOGIN_CUSTOMER_ID_HERE"); } final String loginCustomerId = params.loginCustomerId; final String customerId = params.customerId; try { // Creates a SearchAds360Client with the specified loginCustomerId. If there's // no loginCustomerId, customerId will be used instead. final SearchAds360Client searchAds360Client = SearchAds360Client.newBuilder() .setLoginCustomerId(loginCustomerId == null ? customerId : loginCustomerId) .fromPropertiesFile() .build(); // Creates the Search Ads 360 Service client. SearchAds360ServiceClient client = searchAds360Client.create(); new GetCampaigns().runExample(client, customerId); } catch (Exception exception) { System.err.printf("Failed with exception: %s%n", exception); exception.printStackTrace(); System.exit(1); } } private void runExample(SearchAds360ServiceClient searchAds360ServiceClient, String customerId) { // Creates a query that retrieves all campaigns under the customerId. String query = """ SELECT campaign.name, campaign.id, campaign.status FROM campaign """; SearchSearchAds360Request request = SearchSearchAds360Request.newBuilder() .setCustomerId(customerId) .setQuery(query) .setPageSize(PAGE_SIZE) .build(); // Issues a search request. final SearchPagedResponse searchPagedResponse = searchAds360ServiceClient.search(request); for (SearchAds360Row element : searchPagedResponse.iterateAll()) { System.out.printf( "Campaign found with name '%s', ID %d, and status: %s.%n", element.getCampaign().getName(), element.getCampaign().getId(), element.getCampaign().getStatus()); } } }
Python
#!/usr/bin/env python # Copyright 2022 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. """Retrieves campaigns for a customer using a pagination search request.""" import argparse import traceback from google.ads.searchads360.v0.services.types.search_ads360_service import SearchSearchAds360Request from util_searchads360 import SearchAds360Client _DEFAULT_PAGE_SIZE = 10000 def main(client, customer_id, page_size) -> None: search_ads_360_service = client.get_service() query = """ SELECT campaign.name, campaign.id, campaign.status FROM campaign""" request = SearchSearchAds360Request() request.customer_id = customer_id request.query = query request.page_size = page_size # Issues a search request. results = search_ads_360_service.search(request=request) for row in results: campaign = row.campaign print( f'campaign "{campaign.name}" has id {campaign.id} and status {campaign.status.name}' ) if __name__ == "__main__": # SearchAds360Client will read the search-ads-360.yaml configuration file in # the home directory if none is specified. search_ads_360_client = SearchAds360Client.load_from_file() parser = argparse.ArgumentParser( description=("Retrieves campaigns for a customer.")) # Arguments to provide to run the example. parser.add_argument( "-c", "--customer_id", type=str, required=True, help="The Search Ads 360 customer ID (10 digits, no dashes).", ) parser.add_argument( "-l", "--login_customer_id", type=str, required=False, help="The Search Ads 360 login customer ID (10 digits, no dashes).", ) args = parser.parse_args() search_ads_360_client.set_ids(args.customer_id, args.login_customer_id) try: main(search_ads_360_client, args.customer_id, _DEFAULT_PAGE_SIZE) except Exception: # pylint: disable=broad-except traceback.print_exc()
La console doit imprimer la liste des campagnes de votre compte.
Utiliser REST
Si vous décidez de ne pas utiliser de bibliothèque cliente, vous devez comprendre comment utiliser REST.
Si vous utilisiez REST avec l'ancienne API Search Ads 360, vos identifiants fonctionneront toujours avec la nouvelle API Search Ads 360 Reporting. Retrouvez le nouveau point de terminaison et d'autres informations dans la section de référence REST.
En savoir plus
En savoir plus sur l'API Search Ads 360 Reporting
Requêtes :
Concepts :