En mars 2022, nous avons lancé la version 2 de l'API Bid Manager. Étant donné la sortie de cette nouvelle version, nous prévoyons d'annoncer prochainement une date d'abandon pour la version 1.1. Nous vous recommandons de commencer la migration de la version 1.1 vers la version 2 dès que possible.
Migrer votre application
La migration de la version 1.1 vers la version 2 nécessite de mettre à jour vos URL de point de terminaison pour appeler la version 2 et de mettre à jour votre application pour tenir compte des modifications destructives.
Mettre à jour vos appels d'API de la version 1.1 vers la version 2
Pour utiliser la version 2 au lieu de la version 1.1, vous devez mettre à jour vos requêtes afin qu'elles utilisent les nouveaux points de terminaison de la version 2.
Identifier les méthodes équivalentes
Pour mettre à jour vos appels d'API de la version 1.1 vers la version 2, vous devez d'abord identifier les méthodes équivalentes de la version 1.1 dans la version 2.
Les noms suivants de tous les services et méthodes ont légèrement changé entre la version 1.1 et la version 2 :
- Les services
QueriesetReportsde la version 1.1 sont appelésqueriesetqueries.reportsdans la version 2. - Les méthodes ont été renommées comme suit dans la version 2 :
Nom de la méthode dans la version 1.1 Méthode équivalente dans la version 2 Queries.createqueryqueries.createQueries.deletequeryqueries.deleteQueries.getqueryqueries.getQueries.listqueriesqueries.listQueries.runqueryqueries.runReports.listreportsqueries.reports.list
Passer aux nouveaux points de terminaison
Une fois que vous avez identifié les méthodes équivalentes, vous devez mettre à jour vos requêtes. Par
exemple, pour appeler la queries.getquery méthode avec la version 1.1, vous devez utiliser
l'URL suivante :
https://www.googleapis.com/doubleclickbidmanager/v1.1/query/queryId
Pour appeler la méthode équivalente dans la version 2, appelée queries.get, remplacez l'
URL par la suivante :
GET https://doubleclickbidmanager.googleapis.com/v2/queries/queryId
Si vous utilisez une bibliothèque cliente pour envoyer des requêtes à l'API, utilisez la dernière version de la bibliothèque cliente et mettez à jour votre configuration pour utiliser la version 2.
Apporter les modifications requises
Nous introduisons un certain nombre de modifications destructives dans la version 2. Consultez les instructions suivantes et apportez les modifications requises en fonction de votre utilisation actuelle de l'API Bid Manager.
Mettre à jour les appels au service queries
- Les champs suivants de la ressource
Query, initialement représentés par des objets imbriqués généraux, ont été modifiés pour utiliser les types d'objets suivants :Champ dans la version 1.1 Type d'objet équivalent dans la version 2 metadataQueryMetadataparamsParametersparams.optionsOptionsparams.options.pathQueryOptionsSupprimé params.options.pathQueryOptions.channelGroupingSupprimé params.options.pathQueryOptions.channelGrouping.rules[].disjunctiveMatchStatements[].eventFilters[].dimensionFilterSupprimé params.options.pathQueryOptions.pathFilters[].eventFilters[].dimensionFilterSupprimé scheduleQuerySchedule - Les champs suivants de la ressource
Query, initialement représentés par des objets de liste généraux, ont été modifiés pour devenir des listes des nouveaux types d'objets suivants :Champ de liste dans la version 1.1 Type d'objet dans la version 2 params.filters[]FilterPairparams.options.pathQueryOptions.channelGrouping.rules[]Supprimé params.options.pathQueryOptions.channelGrouping.rules[].disjunctiveMatchStatements[]Supprimé params.options.pathQueryOptions.channelGrouping.rules[].disjunctiveMatchStatements[].eventFilters[]Supprimé params.options.pathQueryOptions.pathFilters[]Supprimé params.options.pathQueryOptions.pathFilters[].eventFilters[]Supprimé - Les champs suivants de la ressource
Query, initialement représentés par des chaînes, sont représentés par des types d'énumération dans la version 2 et incluent les modifications suivantes :- L'équivalent de
metadata.dataRangedans la version 2 utilise désormais l'Rangeénumération. Lors de la conversion vers cette énumération, la valeurPREVIOUS_HALF_MONTHa été supprimée et la valeurTYPE_NOT_SUPPORTEDa été remplacée parRANGE_UNSPECIFIED. metadata.formatutilise désormais l'Formaténumération. Lors de la conversion vers cette énumération, la valeurEXCEL_CSVa été supprimée et la valeurFORMAT_UNSPECIFIEDa été ajoutée.params.options.pathQueryOptions.channelGrouping.rules[].disjunctiveMatchStatements[].eventFilters[].dimensionFilter.matchetparams.options.pathQueryOptions.pathFilters[].eventFilters[].dimensionFilter.matchutilisent désormais l'énumérationMatch.params.options.pathQueryOptions.pathFilters[].pathMatchPositionutilise désormais l'énumérationPathMatchPosition. Lors de la conversion vers cette énumération, la valeurPATH_MATCH_POSITION_UNSPECIFIEDa été ajoutée.schedule.frequencyutilise désormais l'Frequencyénumération. Lors de la conversion vers cette énumération, la valeurFREQUENCY_UNSPECIFIEDa été ajoutée.params.typeutilise désormais l'énumérationReportType. Lors de la conversion vers cette énumération, les modifications suivantes ont été apportées :- Les valeurs suivantes ont été abandonnées :
TYPE_ACTIVE_GRPTYPE_AUDIENCE_PERFORMANCETYPE_CLIENT_SAFETYPE_COMSCORE_VCETYPE_CROSS_FEETYPE_CROSS_PARTNERTYPE_CROSS_PARTNER_THIRD_PARTY_DATA_PROVIDERTYPE_ESTIMATED_CONVERSIONTYPE_FEETYPE_KEYWORDTYPE_LINEAR_TV_SEARCH_LIFTTYPE_NIELSEN_AUDIENCE_PROFILETYPE_NIELSEN_DAILY_REACH_BUILDTYPE_NIELSEN_ONLINE_GLOBAL_MARKETTYPE_PAGE_CATEGORYTYPE_PETRA_NIELSEN_DAILY_REACH_BUILDTYPE_PETRA_NIELSEN_ONLINE_GLOBAL_MARKETTYPE_PIXEL_LOADTYPE_THIRD_PARTY_DATA_PROVIDERTYPE_TRUEVIEW_IARTYPE_VERIFICATIONTYPE_YOUTUBE_VERTICAL
- Les valeurs restantes ont toutes été mises à jour pour mieux refléter leurs valeurs équivalentes dans l'interface utilisateur :
Valeurs dans la version 1.1 Valeur ReportTypeéquivalenteTYPE_NOT_SUPPORTEDREPORT_TYPE_UNSPECIFIEDTYPE_GENERALSTANDARDTYPE_INVENTORY_AVAILABILITYINVENTORY_AVAILABILITYTYPE_AUDIENCE_COMPOSITIONAUDIENCE_COMPOSITIONTYPE_ORDER_IDFLOODLIGHTTYPE_TRUEVIEWYOUTUBETYPE_NIELSEN_SITEGRPTYPE_PETRA_NIELSEN_AUDIENCE_PROFILEYOUTUBE_PROGRAMMATIC_GUARANTEEDTYPE_REACH_AND_FREQUENCYREACHTYPE_REACH_AUDIENCEUNIQUE_REACH_AUDIENCETYPE_PATHFULL_PATHTYPE_PATH_ATTRIBUTIONPATH_ATTRIBUTION
- L'équivalent de
- Les champs
metadata.dataRange,reportDataStartTimeMsetreportDataEndTimeMsont été remplacés par les champsrange,customStartDateetcustomEndDate. Les nouveaux champs de date utilisentDateobjets au lieu de millisecondes depuis l'époque UNIX. Ces champs de remplacement ont été déplacés vers l'objetDataRangeattribué au champdataRangedans l'objetQueryMetadata. - Les champs
schedule.startTimeMsetschedule.endTimeMsont été remplacés par les champsstartDateetendDatedans l'objetQuerySchedule. Les nouveaux champs de date utilisentDateobjets au lieu de millisecondes depuis l'époque UNIX. - Les champs
metadata.running,metadata.reportCount,metadata.googleCloudStoragePathForLatestReport,metadata.googleDrivePathForLatestReportetmetadata.latestReportRunTimeMsont été supprimés. Les informations concernant les rapports les plus récents générés par une requête doivent être récupérées à l'aide de laqueries.reports.listméthode avec leorderByparamètre de requête de "key.reportId desc" pour garantir que la requête liste les rapports les plus récents en premier. - Les champs
kind,timezoneCode,metadata.locale,params.includeInviteDataetschedule.nextRunMinuteOfDayont été supprimés. queries.createn'exécute plus automatiquement les requêtes après leur création et le paramètre de requêteasynchronousa été supprimé. Appelezqueries.runaprèsqueries.createpour générer des rapports pour les nouvelles requêtes.- La méthode
queries.runa été mise à jour de la manière suivante :- Le paramètre de requête
asynchronousa été remplacé par lesynchronousparamètre de requête. Le nouveau paramètre de requête fonctionne avec une logique inverse et est considéré comme faux s'il n'est pas spécifié. Par conséquent,queries.rungénère des rapports de manière asynchrone par défaut dans la version 2, contrairement à la version 1.1 où la génération est synchrone par défaut. - Le corps de la requête a été mis à jour pour supprimer le
timezoneCodechamp et remplacer lesdataRange,reportDataStartTimeMsetreportDataEndTimeMschamps par un objetDataRangeattribué au champdataRange. - La méthode renvoie l'objet
Reportrésultant au lieu d'un corps de réponse vide.
- Le paramètre de requête
- Le champ
kinddans le corps de réponsequeries.lista été supprimé.
Mettre à jour les appels au service reports
- Les champs suivants de la ressource
Report, initialement représentés par des objets imbriqués généraux, ont été modifiés pour utiliser les types d'objets suivants :Champ dans la version 1.1 Type d'objet équivalent dans la version 2 keyReportKeymetadataReportMetadatametadata.statusReportStatusparamsParametersparams.optionsOptionsparams.options.pathQueryOptionsSupprimé params.options.pathQueryOptions.channelGroupingSupprimé params.options.pathQueryOptions.channelGrouping.rules[].disjunctiveMatchStatements[].eventFilters[].dimensionFilterSupprimé params.options.pathQueryOptions.pathFilters[].eventFilters[].dimensionFilterSupprimé - Les champs suivants de la ressource
Report, initialement représentés par des objets de liste généraux, ont été modifiés pour devenir des listes des nouveaux types d'objets suivants :Champ de liste dans la version 1.1 Type d'objet dans la version 2 params.filters[]FilterPairparams.options.pathQueryOptions.channelGrouping.rules[]Supprimé params.options.pathQueryOptions.channelGrouping.rules[].disjunctiveMatchStatements[]Supprimé params.options.pathQueryOptions.channelGrouping.rules[].disjunctiveMatchStatements[].eventFilters[]Supprimé params.options.pathQueryOptions.pathFilters[]Supprimé params.options.pathQueryOptions.pathFilters[].eventFilters[]Supprimé - Les champs suivants de la ressource
Report, initialement représentés par des chaînes, ont été modifiés de sorte que leurs champs équivalents dans la version 2 soient représentés par de nouveaux types d'énumération et incluent des modifications des valeurs acceptables :metadata.status.formatutilise désormais l'Formaténumération. Lors de la conversion vers cette énumération, la valeurEXCEL_CSVa été supprimée et la valeurFORMAT_UNSPECIFIEDa été ajoutée.metadata.status.stateutilise désormais l'énumérationState. Lors de la conversion vers cette énumération, les valeursQUEUEDetSTATE_UNSPECIFIEDont été ajoutées.params.options.pathQueryOptions.channelGrouping.rules[].disjunctiveMatchStatements[].eventFilters[].dimensionFilter.matchetparams.options.pathQueryOptions.pathFilters[].eventFilters[].dimensionFilter.matchutilisent désormais l'énumérationMatch.params.options.pathQueryOptions.pathFilters[].pathMatchPositionutilise désormais l'énumérationPathMatchPosition. Lors de la conversion vers cette énumération, la valeurPATH_MATCH_POSITION_UNSPECIFIEDa été ajoutée.params.typeutilise désormais l'énumérationReportType. Lors de la conversion vers cette énumération, de nombreuses modifications ont été apportées et sont listées en détail dans la section précédente concernant la mise à jour des appels de service de requêtes.
- Les champs
metadata.reportDataStartTimeMsetmetadata.reportDataEndTimeMsont été remplacés par les champsreportDataStartDateetreportDataEndDatedans l'objetReportMetadata. Les nouveaux champs utilisentDateobjets au lieu de millisecondes depuis l'époque UNIX. metadata.status.finishTimeMsa été remplacé par le champfinishTimedans l'objetReportStatus. Ce nouveau champ temporel représente la date et l'heure sous forme d'horodatage au format RFC3339 UTC "Zulu" au lieu de millisecondes depuis l'époque UNIX.metadata.status.failureetparams.includeInviteDatachamps ont été supprimés.- Le champ
kinddans le corps de réponsereports.lista été supprimé.
Mettre à jour la logique de gestion des erreurs
Les messages d'erreur de l'API ont été mis à jour dans la version 2. Ces nouveaux messages d'erreur sont plus spécifiques et, dans certains cas, fournissent des informations sur les valeurs de la requête API qui entraînent le renvoi de l'erreur. Si votre logique de gestion des erreurs existante repose sur un texte de message d'erreur spécifique, généralisez votre gestion des erreurs avant de migrer vers la version 2.