En marzo de 2022, lanzamos la versión 2 de la API de Bid Manager. Dado el de esta nueva versión, planeamos anunciar pronto una fecha de retiro de la versión 1.1. Mié Recomendamos que comience la migración de la versión 1.1 a la 2 lo antes posible.
Migra tu aplicación
Para migrar de la versión 1.1 a la v2, es necesario actualizar las URLs de tu extremo para llamar a la v2. actualizando tu aplicación para dar cuenta de los cambios rotundos.
Actualiza tus llamadas a la API de v1.1 a v2
Para usar v2 en lugar de v1.1, debes actualizar tus solicitudes para usar la nueva v2 en los extremos.
Identificar métodos equivalentes
Para actualizar tus llamadas a la API y dejar de usar v1.1 a v2, primero debes identificar los métodos equivalentes de v1.1 en v2.
Los siguientes nombres de todos los servicios y métodos cambiaron ligeramente entre v1.1 y v2:
- Los servicios
QueriesyReportsen la versión 1.1 son conocidos comoqueriesyqueries.reportsen la v2. - Se cambió el nombre de los métodos de la siguiente manera en la versión 2:
Nombre del método v1.1 Método v2 equivalente Queries.createqueryqueries.createQueries.deletequeryqueries.deleteQueries.getqueryqueries.getQueries.listqueriesqueries.listQueries.runqueryqueries.runReports.listreportsqueries.reports.list
Actualizar a extremos nuevos
Una vez que hayas identificado métodos equivalentes, deberás actualizar tus solicitudes. Para
Por ejemplo, para llamar al método queries.getquery con v1.1, debes usar
la siguiente URL:
https://www.googleapis.com/doubleclickbidmanager/v1.1/query/queryId
Para llamar al método equivalente en la v2, conocido como queries.get, actualiza la
URL a la siguiente URL:
GET https://doubleclickbidmanager.googleapis.com/v2/queries/queryId
Si usas una biblioteca cliente para realizar solicitudes a la API, usa la a la versión más reciente de la biblioteca cliente y actualiza tu configuración para usar v2.
Realiza los cambios necesarios
Presentamos varios cambios rotundos en la versión 2. Revisa lo siguiente instrucciones y realizar los cambios necesarios que sean relevantes para su uso actual del API de Bid Manager.
Actualiza las llamadas al servicio de queries
- Los siguientes campos del recurso
Queryse representaban originalmente como Los objetos anidados cambiaron para usar los siguientes tipos de objetos: - Los siguientes campos del recurso
Queryse representaban originalmente como Los objetos list cambiaron y ahora son listas de los siguientes tipos de objetos nuevos: - Los siguientes campos del recurso
Query, representados originalmente por se representan con tipos de enumeración en la v2 y se incluyen los siguientes: cambios:- El equivalente v2 de
metadata.dataRangeahora usaRange. enum. Con la conversión a esta enumeración, se generó el valorPREVIOUS_HALF_MONTHse quitó y se cambió el valorTYPE_NOT_SUPPORTEDaRANGE_UNSPECIFIED metadata.formatahora usa la enumeraciónFormat. Durante una conversión a esta enumeración, se quitó el valorEXCEL_CSVy el valor Se agregóFORMAT_UNSPECIFIED.params.options.pathQueryOptions.channelGrouping.rules[].disjunctiveMatchStatements[].eventFilters[].dimensionFilter.matchyparams.options.pathQueryOptions.pathFilters[].eventFilters[].dimensionFilter.matchahora usa la enumMatch.params.options.pathQueryOptions.pathFilters[].pathMatchPositionahora usa la enumeraciónPathMatchPosition. Al realizar la conversión a esta enumeración, se agregó el valorPATH_MATCH_POSITION_UNSPECIFIED.schedule.frequencyahora usa la enumeraciónFrequency. En convirtiendo a esta enumeración, se agregó el valorFREQUENCY_UNSPECIFIED.params.typeahora usa la enumeraciónReportType. En convirtiendo a esta enumeración, se realizaron los siguientes cambios:- Los siguientes valores dejaron de estar disponibles:
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
- Todos los valores restantes se actualizaron para reflejar mejor su
valores equivalentes en la IU:
Valores de la v1.1 Valor ReportTypeequivalenteTYPE_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
- El equivalente v2 de
- Campos
metadata.dataRange,reportDataStartTimeMsyreportDataEndTimeMsse reemplazaron por camposrange,customStartDateycustomEndDate. Los nuevos campos de fecha usanDateen lugar de milisegundos, desde Unix Epoch. Estos campos de reemplazo se movieron al objetoDataRangeasignado al campodataRangede la objetoQueryMetadata. - Los campos
schedule.startTimeMsyschedule.endTimeMsse reemplazaron por camposstartDateyendDateen el objetoQuerySchedule. Los nuevos campos de fecha usanDateen lugar de milisegundos, desde Unix Epoch. - Campos
metadata.running,metadata.reportCount,metadata.googleCloudStoragePathForLatestReport,metadata.googleDrivePathForLatestReporty Se quitaronmetadata.latestReportRunTimeMs. La información sobre los informes generados más recientemente de una consulta debe en su lugar, se lo recuperará mediante el métodoqueries.reports.listcon la Parámetro de consultaorderByde “key.reportId desc” a garantizar que la solicitud enumere primero los informes más recientes. - Campos
kind,timezoneCode,metadata.locale,params.includeInviteDatay Se quitaronschedule.nextRunMinuteOfDay. queries.createya no ejecuta consultas automáticamente después de su creación y se quitó el parámetro de consultaasynchronous. Llamadaqueries.rundespués dequeries.createpara generar informes de para las consultas nuevas.- El método
queries.runse actualizó de las siguientes maneras:- El parámetro de consulta
asynchronousse reemplazó por el Parámetro de consultasynchronous. El nuevo parámetro de consulta funciona con una lógica inversa y se considera falso si no se especifica. Proporcionado Esto,queries.rungenera informes de forma asíncrona y predeterminada en v2 en lugar de la síncrona, que es la opción predeterminada en la v1.1. - El cuerpo de la solicitud se actualizó para quitar la
campo
timezoneCodey reemplazardataRange,reportDataStartTimeMsreportDataEndTimeMscon unDataRangeasignado aldataRange. - El método muestra el objeto
Reportresultante en lugar de un cuerpo de respuesta vacío.
- El parámetro de consulta
- El campo
kinden el cuerpo de la respuestaqueries.listse ha eliminado.
Actualiza las llamadas al servicio de reports
- Los siguientes campos del recurso
Reportrepresentados originalmente por Los objetos anidados generales cambiaron para usar los siguientes tipos de objetos: - Los siguientes campos del recurso
Reportrepresentados originalmente por los objetos de lista general cambiaron y ahora son listas del siguiente objeto nuevo tipos: - Los siguientes campos del recurso
Reportrepresentados originalmente por cadenas han cambiado, por lo que sus campos equivalentes en la v2 están representados por nuevos los tipos enum e incluir cambios en valores aceptables:metadata.status.formatahora usa la enumeraciónFormat. En convirtiendo a esta enumeración, se quitó el valorEXCEL_CSVSe agregóFORMAT_UNSPECIFIED.metadata.status.stateahora usa la enumeraciónState. En convirtiendo a esta enumeración, los valoresQUEUEDySTATE_UNSPECIFIEDtienen se agregó.params.options.pathQueryOptions.channelGrouping.rules[].disjunctiveMatchStatements[].eventFilters[].dimensionFilter.matchyparams.options.pathQueryOptions.pathFilters[].eventFilters[].dimensionFilter.matchahora usa la enumMatch.params.options.pathQueryOptions.pathFilters[].pathMatchPositionahora usa la enumeraciónPathMatchPosition. Al realizar la conversión a esta enumeración, se agregó el valorPATH_MATCH_POSITION_UNSPECIFIED.params.typeahora usa la enumeraciónReportType. En convirtiendo a esta enumeración, se realizaron muchos cambios y se enumeran en en la sección anterior sobre la actualización de las llamadas de servicio de consultas.
- Los campos
metadata.reportDataStartTimeMsymetadata.reportDataEndTimeMsse reemplazaron por camposreportDataStartDateyreportDataEndDateen las objetoReportMetadata. Los campos nuevos usan ObjetosDateen lugar de milisegundos a partir de la época Unix. metadata.status.finishTimeMsse reemplazó por el campofinishTimeen la objetoReportStatus. Este nuevo campo de tiempo representa la fecha y hora como una marca de tiempo en RFC3339 UTC "Zulú" en lugar de en milisegundos desde la época Unix.metadata.status.failurey Se quitaronparams.includeInviteDatacampos.- El campo
kinden el cuerpo de la respuestareports.listtiene se ha eliminado.
Actualiza la lógica de manejo de errores
Los mensajes de error en la API se actualizaron en la versión 2. Estos nuevos mensajes de error son más específicos y, en algunos casos, brindan información sobre los valores de la la solicitud a la API que provocan que se muestre el error. Si el error existente la lógica de manejo se basa en el texto específico del mensaje de error, generaliza tu error antes de migrar a la v2.