Recherche et SearchStream

Vidéo: Signaler un problème

L'API Google Ads dispose d'un mécanisme unifié de récupération d'attributs et de création de rapports sur les métriques qui vous permet de créer des requêtes à l'aide du langage de requête Google Ads. Cela permet d'exécuter des requêtes complexes pouvant renvoyer de grandes quantités de données sur des comptes Google Ads individuels.

Vous pouvez créer des requêtes à l'aide des méthodes Search ou SearchStream. Les deux méthodes acceptent les mêmes requêtes et renvoient des résultats équivalents. La méthode Search renvoie des données sur des pages de taille fixe de 10 000 lignes, ce qui vous permet d'itérer sur un ensemble de résultats à l'aide de la pagination. Cela peut être avantageux en cas de bande passante faible ou de conditions réseau peu fiables, par exemple, pour segmenter un grand ensemble de résultats en réponses plus petites qui peuvent être récupérées à nouveau si une connexion est perdue. En revanche, la méthode SearchStream lit en continu l'ensemble des résultats dans une seule réponse, ce qui peut être plus efficace pour la récupération de données groupées.

Search et SearchStream utilisent la même URL de base:

    https://googleads.googleapis.com/v18/customers/CUSTOMER_ID/googleAds
POST /v18/customers/CUSTOMER_ID/googleAds:search HTTP/1.1
Host: googleads.googleapis.com
Content-Type: application/json
Authorization: Bearer ACCESS_TOKEN
developer-token: DEVELOPER_TOKEN

{
"query": "SELECT ad_group_criterion.keyword.text, ad_group_criterion.status FROM ad_group_criterion WHERE ad_group_criterion.type = 'KEYWORD' AND ad_group_criterion.status = 'ENABLED'"
}

Si les résultats contiennent plus de 10 000 lignes,un nextPageToken est renvoyé dans la réponse:

{
  "results": [
    // ...
    // ...
    // ...
  ],
  "nextPageToken": "CPii5aS87vfFTBAKGJvk36qpLiIWUW5SZk8xa1JPaXJVdXdIR05JUUpxZyoCVjMwADjUBkD___________8B",
  "fieldMask": "adGroupCriterion.keyword.text,adGroupCriterion.status"
}

Si vous répétez la même requête avec un pageToken ajouté avec les valeurs de la requête précédente, la page de résultats suivante s'affiche:

POST /v18/customers/CUSTOMER_ID/googleAds:search HTTP/1.1
Host: googleads.googleapis.com
Content-Type: application/json
Authorization: Bearer ACCESS_TOKEN
developer-token: DEVELOPER_TOKEN

{
"query": "SELECT ad_group_criterion.keyword.text, ad_group_criterion.status FROM ad_group_criterion WHERE ad_group_criterion.type = 'KEYWORD' AND ad_group_criterion.status = 'ENABLED'",
"pageToken": "CPii5aS87vfFTBAKGJvk36qpLiIWUW5SZk8xa1JPaXJVdXdIR05JUUpxZyoCVjMwADjUBkD___________8B"
}

Pour utiliser la méthode SearchStream, qui renvoie tous les résultats dans une seule réponse lue progressivement, remplacez la méthode de service dans l'URL par searchStream (pageToken n'est pas obligatoire pour SearchStream):

POST /v18/customers/CUSTOMER_ID/googleAds:searchStream HTTP/1.1
Host: googleads.googleapis.com
Content-Type: application/json
Authorization: Bearer ACCESS_TOKEN
developer-token: DEVELOPER_TOKEN

{
    "query": "SELECT ad_group_criterion.keyword.text, ad_group_criterion.status FROM ad_group_criterion WHERE ad_group_criterion.type = 'KEYWORD' AND ad_group_criterion.status = 'ENABLED'"
}