Em março de 2022, lançamos a versão 2 da API Bid Manager. Considerando da nova versão, mas planejamos anunciar uma data de desativação para a v1.1 em breve. Qa é recomendável iniciar a migração da v1.1 para a v2 assim que possível.
Migrar seu aplicativo
Migrar da v1.1 para a v2 requer a atualização dos URLs dos endpoints para chamar a v2 e atualizando o aplicativo para considerar alterações interruptivas.
Atualizar suas chamadas de API da v1.1 para a v2
Para usar a v2 em vez da v1.1, atualize suas solicitações para usar a nova v2 endpoints.
Identificar métodos equivalentes
Para atualizar suas chamadas de API de usar a v1.1 para a v2, primeiro é necessário identificar os métodos equivalentes da v1.1 na v2.
Os nomes de todos os serviços e métodos a seguir foram um pouco alterados entre v1.1 e v2:
- Os serviços QuerieseReportsna v1.1 são conhecidos comoqueriesequeries.reportsna v2.
- Os métodos foram renomeados da seguinte forma na v2:
Nome do método da v1.1 Método equivalente da v2 Queries.createqueryqueries.createQueries.deletequeryqueries.deleteQueries.getqueryqueries.getQueries.listqueriesqueries.listQueries.runqueryqueries.runReports.listreportsqueries.reports.list
Atualizar para novos endpoints
Depois de identificar métodos equivalentes, é necessário atualizar suas solicitações. Para
exemplo, para chamar o método queries.getquery com a v1.1, você usaria
o seguinte URL:
https://www.googleapis.com/doubleclickbidmanager/v1.1/query/queryId
Para chamar o método equivalente na v2, conhecido como queries.get, atualize o
URL para o seguinte:
GET https://doubleclickbidmanager.googleapis.com/v2/queries/queryId
Se você estiver usando uma biblioteca de cliente para fazer solicitações à API, use a linguagem versão mais recente da biblioteca de cliente e atualizar sua configuração para usar a v2.
Faça as alterações necessárias
Estamos introduzindo várias alterações interruptivas na v2. Analise o seguinte e faça as alterações necessárias relevantes ao seu uso atual do a API Bid Manager.
Atualizar chamadas para o serviço queries
- Os seguintes campos no recurso Queryoriginalmente representados por Os objetos aninhados foram alterados para usar os seguintes tipos de objetos:
- Os seguintes campos no recurso Queryoriginalmente representados por Os objetos list foram alterados para serem listas dos seguintes novos tipos de objeto:
- Os seguintes campos no recurso Query, originalmente representados por são representadas por tipos de tipo enumerado na v2 e incluem o seguinte mudanças:- O equivalente v2 de metadata.dataRangeagora usa oRangetipo enumerado. Ao converter para esse tipo enumerado, o valorPREVIOUS_HALF_MONTHfoi removido, e o valorTYPE_NOT_SUPPORTEDmudou paraRANGE_UNSPECIFIED
- metadata.formatagora usa o tipo enumerado- Format. Na conversão para esse tipo enumerado, o valor- EXCEL_CSVfoi removido, e o valor- FORMAT_UNSPECIFIEDfoi adicionado.
- params.options.pathQueryOptions.channelGrouping.rules[].disjunctiveMatchStatements[].eventFilters[].dimensionFilter.matche- params.options.pathQueryOptions.pathFilters[].eventFilters[].dimensionFilter.matchAgora use o tipo enumerado- Match.
- params.options.pathQueryOptions.pathFilters[].pathMatchPositionagora usa o tipo enumerado- PathMatchPosition. Ao converter para este tipo enumerado, o valor- PATH_MATCH_POSITION_UNSPECIFIEDfoi adicionado.
- schedule.frequencyagora usa o tipo enumerado- Frequency. Em convertendo para esse tipo enumerado, o valor- FREQUENCY_UNSPECIFIEDfoi adicionado.
- params.typeagora usa o tipo enumerado- ReportType. Em convertendo para esse tipo enumerado, as seguintes alterações foram feitas:
- Os seguintes valores foram descontinuados:
- TYPE_ACTIVE_GRP
- TYPE_AUDIENCE_PERFORMANCE
- TYPE_CLIENT_SAFE
- TYPE_COMSCORE_VCE
- TYPE_CROSS_FEE
- TYPE_CROSS_PARTNER
- TYPE_CROSS_PARTNER_THIRD_PARTY_DATA_PROVIDER
- TYPE_ESTIMATED_CONVERSION
- TYPE_FEE
- TYPE_KEYWORD
- TYPE_LINEAR_TV_SEARCH_LIFT
- TYPE_NIELSEN_AUDIENCE_PROFILE
- TYPE_NIELSEN_DAILY_REACH_BUILD
- TYPE_NIELSEN_ONLINE_GLOBAL_MARKET
- TYPE_PAGE_CATEGORY
- TYPE_PETRA_NIELSEN_DAILY_REACH_BUILD
- TYPE_PETRA_NIELSEN_ONLINE_GLOBAL_MARKET
- TYPE_PIXEL_LOAD
- TYPE_THIRD_PARTY_DATA_PROVIDER
- TYPE_TRUEVIEW_IAR
- TYPE_VERIFICATION
- TYPE_YOUTUBE_VERTICAL
 
- Os valores restantes foram atualizados para refletir melhor
valores equivalentes na interface:
Valores da 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
 
- O equivalente v2 de 
- Campos metadata.dataRange,reportDataStartTimeMsereportDataEndTimeMsforam substituídos por camposrange,customStartDateecustomEndDate. Os novos campos de data usamDate. em vez de milissegundos desde a Era Unix. Esses campos de substituição foram movidos para o objetoDataRangeatribuído ao No campodataRangena objetoQueryMetadata.
- Campos schedule.startTimeMseschedule.endTimeMsforam substituídos por camposstartDateeendDateem objetoQuerySchedule. Os novos campos de data usamDate. em vez de milissegundos desde a Era Unix.
- Campos metadata.running,metadata.reportCount,metadata.googleCloudStoragePathForLatestReport,metadata.googleDrivePathForLatestReportmetadata.latestReportRunTimeMsforam removidos. As informações relativas aos relatórios gerados mais recentemente de uma consulta devem ser recuperados usando o métodoqueries.reports.listcom oorderByde "key.reportId desc" para garantir que a solicitação liste os relatórios mais recentes primeiro.
- Campos kind,timezoneCode,metadata.locale,params.includeInviteDataschedule.nextRunMinuteOfDayforam removidos.
- O queries.createnão executa mais consultas automaticamente após a criação e o parâmetro de consultaasynchronousfoi removido. Ligaçãoqueries.rundepois dequeries.createpara gerar relatórios de novas consultas.
- O método queries.runfoi atualizado das seguintes maneiras:- O parâmetro de consulta asynchronousfoi substituído pelosynchronous. O novo parâmetro de consulta opera com lógica inversa e é considerado falso se não for especificado. Dado Isso, oqueries.rungera relatórios de forma assíncrona por padrão v2 em vez de síncrona, que é o padrão na v1.1.
- O corpo da solicitação foi atualizado para remover a
timezoneCodee substituadataRangeereportDataStartTimeMsreportDataEndTimeMscom umDataRangeatribuído aodataRange.
- O método retorna o objeto Reportresultante em vez de uma corpo da resposta vazio.
 
- O parâmetro de consulta 
- O campo kindno corpo da respostaqueries.listfoi removido.
Atualizar chamadas para o serviço reports
- Os seguintes campos no recurso Reportoriginalmente representado por objetos aninhados gerais foram alterados para usar os seguintes tipos de objeto:
- Os seguintes campos no recurso Reportoriginalmente representado por Os objetos da lista geral foram alterados para serem listas dos seguintes novos objetos: tipos:
- Os seguintes campos no recurso Reportoriginalmente representado por as strings foram alteradas, portanto, seus campos equivalentes na v2 são representados por novas tipos de enum e incluem mudanças em valores aceitáveis:- metadata.status.formatagora usa o tipo enumerado- Format. Em convertendo para esse tipo enumerado, o valor- EXCEL_CSVfoi removido e- FORMAT_UNSPECIFIEDfoi adicionado.
- metadata.status.stateagora usa o tipo enumerado- State. Em convertendo para esse tipo enumerado, os valores- QUEUEDe- STATE_UNSPECIFIEDtêm foi adicionado.
- params.options.pathQueryOptions.channelGrouping.rules[].disjunctiveMatchStatements[].eventFilters[].dimensionFilter.matche- params.options.pathQueryOptions.pathFilters[].eventFilters[].dimensionFilter.matchAgora use o tipo enumerado- Match.
- params.options.pathQueryOptions.pathFilters[].pathMatchPositionagora usa o tipo enumerado- PathMatchPosition. Ao converter para este tipo enumerado, o valor- PATH_MATCH_POSITION_UNSPECIFIEDfoi adicionado.
- params.typeagora usa o tipo enumerado- ReportType. Em este enum foi convertido, várias mudanças foram feitas e estão listadas em na seção anterior sobre atualização de chamadas de serviço de consultas.
 
- Campos metadata.reportDataStartTimeMsemetadata.reportDataEndTimeMsforam substituídos por camposreportDataStartDateereportDataEndDatenoReportMetadata. Os novos campos usam ObjetosDateem vez de milissegundos desde a época do Unix.
- metadata.status.finishTimeMsfoi substituído por no campo- finishTimena objeto- ReportStatus. Esse novo campo de hora representa datetime como um carimbo de data/hora em RFC3339 UTC "Zulu" em vez de milésimos de segundo desde a Era Unix.
- metadata.status.failuree Os campos- params.includeInviteDataforam removidos.
- O campo kindno corpo da respostareports.listtem tenha sido removido.
Atualizar a lógica de tratamento de erros
As mensagens de erro na API foram atualizadas na v2. Essas novas mensagens de erro são mais específicos e, em alguns casos, fornecem informações sobre os valores no campo solicitação de API que estão fazendo com que o erro seja retornado. Se o erro já existente a lógica de processamento depende do texto da mensagem de erro, generalize o erro processamento antes de migrar para a v2.