Esta página oferece notas da versão da Google Bid Manager API.
Versão 2
Fiz alterações estruturais na API, incluindo atualização do endpoint do serviço e renomeação de serviços e métodos.
Atualização significativa dos recursos de Consulta e Relatório removendo campos desnecessários, reorganizando os campos existentes e alterando tipos de campo. Isso inclui alterar os tipos de campo para usar objetos nomeados em vez de uma definição geral de "objeto aninhado".
Necessidade de executar consultas ad hoc usando o método queries.run
em vez de fazer com que elas sejam executadas automaticamente após a criação.
Substituímos o parâmetro de consulta queries.run
asynchronous
por
synchronous
.
Recuperação simplificada de relatórios com as seguintes mudanças:
- Adição de um método
queries.reports.get
. - Adição de um parâmetro de consulta
orderBy
aqueries.reports.list
. - A atualização do corpo da resposta
queries.run
de um objeto vazio para uma instância do recursoReport
gerado.
Atualização das mensagens de erro retornadas pela API para que sejam mais específicas e forneçam soluções mais prescritivas.
Siga as instruções apresentadas no Guia de migração v2 para migrar da v1.1 para a v2.
Novos recursos
O endpoint do serviço foi alterado:
Endpoint de serviço v1 Endpoint de serviço v2 https://www.googleapis.com/doubleclickbidmanager
https://doubleclickbidmanager.googleapis.com
Os serviços foram renomeados da seguinte forma:
Serviço v1 Serviço v2 Consultas consultas Relatórios queries.reports Os métodos foram renomeados da seguinte maneira:
Os seguintes métodos foram adicionados:
Serviço Métodos queries.reports get Os métodos a seguir têm um novo corpo de resposta:
Método Novo objeto de corpo da resposta queries.run Relatório Os seguintes campos foram removidos:
Recurso Campo(s) Corpo da resposta queries.list
kind
Corpo da resposta queries.reports.list
kind
Consulta kind
reportDataEndTimeMs
reportDataStartTimeMs
timezoneCode
RunQueryRequest reportDataEndTimeMs
reportDataStartTimeMs
timezoneCode
O tipo de objeto dos campos a seguir foi alterado para o seguinte:
Recurso Campo(s) Tipo de objeto Consulta Relatório RunQueryRequest Adicionamos estes parâmetros de consulta de método:
Método Parâmetros de consulta queries.list orderBy queries.reports.list orderBy queries.run síncrono Os seguintes parâmetros de consulta de método foram removidos:
Método Parâmetros de consulta queries.create assíncrono queries.run assíncrono Os seguintes valores de filtro foram adicionados:
Valor do filtro FILTER_INVENTORY_MEDIA_COST_TYPE FILTER_TARGETING_EXPANSION Os seguintes valores de filtro foram removidos:
Valor do filtro FILTER_TRUEVIEW_IAR_REGION Os seguintes valores de métrica foram adicionados:
Valor métrico METRIC_STORE_VISIT_VIEW_THROUGH_CONVERSIONS METRIC_UNIQUE_REACH_AVERAGE_VIEWABLE_IMPRESSION_FREQUENCY METRIC_UNIQUE_REACH_IMPRESSION_REACH_ADDED_WITH_CROSS_STACK_FCAP METRIC_UNIQUE_REACH_IMPRESSION_REACH_ADDED_WITH_PG_FMGMT METRIC_UNIQUE_REACH_INCREMENTAL_CLICK_REACH METRIC_UNIQUE_REACH_INCREMENTAL_IMPRESSION_REACH METRIC_UNIQUE_REACH_INCREMENTAL_TOTAL_REACH METRIC_UNIQUE_REACH_INCREMENTAL_VIEWABLE_IMPRESSION_REACH METRIC_UNIQUE_REACH_VIEWABLE_IMPRESSION_REACH
Problemas conhecidos
Nenhum.
Versão 1.1
Filtro um para um para o mapeamento de colunas do relatório
Os filtros que mapeiam várias colunas do relatório agora são mapeados para colunas únicas.
Por exemplo, na v1, incluir o filtro FILTER_ADVERTISER
gera um relatório com as colunas "Anunciante", além de "ID do anunciante". Na v1.1, todas as colunas dos relatórios têm os próprios filtros. Por exemplo, um novo filtro
FILTER_ADVERTISER_NAME
é mapeado para "Anunciante". Para exibir as colunas "ID do anunciante" e "Anunciante" nos relatórios, os filtros FILTER_ADVERTISER
e FILTER_ADVERTISER_NAME
, respectivamente, precisarão ser incluídos nas solicitações Queries.createquery
.
De maneira mais concreta, a solicitação createquery
:
{
...
"params": {
...
"groupBys": ["FILTER_ADVERTISER"],
"metrics": ["METRIC_IMPRESSIONS"],
...
}
...
}
gera um arquivo de relatório com os seguintes cabeçalhos na v1:
Advertiser,Advertiser ID,Advertiser Status,Advertiser Integration Code,Impressions
e os seguintes cabeçalhos na v1.1:
Advertiser,Impressions
O código v1 a seguir foi usado para recuperar as colunas do relatório no exemplo acima:
List<String> groupBys = new ArrayList<>();
groupBys.add("FILTER_ADVERTISER");
List<String> metrics = new ArrayList<>();
metrics.add("METRIC_IMPRESSIONS");
com.google.api.services.doubleclickbidmanager.model.Parameters createQueryParameters =
new com.google.api.services.doubleclickbidmanager.model.Parameters()
.setGroupBys(groupBys)
.setMetrics(metrics);
terão que ser modificadas da seguinte forma na v1.1 (observe a ordem dos filtros):
List<String> groupBys = new ArrayList<>();
groupBys.add("FILTER_ADVERTISER_NAME");
groupBys.add("FILTER_ADVERTISER");
groupBys.add("FILTER_ADVERTISER_INTEGRATION_STATUS");
groupBys.add("FILTER_ADVERTISER_INTEGRATION_CODE");
List<String> metrics = new ArrayList<>();
metrics.add("METRIC_IMPRESSIONS");
com.google.api.services.doubleclickbidmanager.model.Parameters createQueryParameters =
new com.google.api.services.doubleclickbidmanager.model.Parameters()
.setGroupBys(groupBys)
.setMetrics(metrics);
Filtro original | Filtros adicionados |
---|---|
FILTER_ADVERTISER |
FILTER_ADVERTISER_NAME FILTER_ADVERTISER_INTEGRATION_CODE FILTER_ADVERTISER_INTEGRATION_STATUS |
FILTER_AD_POSITION |
FILTER_AD_POSITION_NAME |
FILTER_CARRIER |
FILTER_CARRIER_NAME |
FILTER_CHANNEL_ID |
FILTER_CHANNEL_NAME |
FILTER_CITY |
FILTER_CITY_NAME |
FILTER_COMPANION_CREATIVE_ID |
FILTER_COMPANION_CREATIVE_NAME |
FILTER_DMA |
FILTER_DMA_NAME |
FILTER_INSERTION_ORDER |
FILTER_INSERTION_ORDER_NAME |
FILTER_PARTNER |
FILTER_PARTNER_NAME FILTER_PARTNER_STATUS |
FILTER_REGION |
FILTER_REGION_NAME |
FILTER_TRUEVIEW_DMA |
FILTER_TRUEVIEW_DMA_NAME |
FILTER_TRUEVIEW_IAR_REGION |
FILTER_TRUEVIEW_IAR_REGION_NAME |
FILTER_USER_LIST_FIRST_PARTY |
FILTER_USER_LIST_FIRST_PARTY_NAME |
FILTER_USER_LIST_THIRD_PARTY |
FILTER_USER_LIST_THIRD_PARTY_NAME |
Paginação
A v1.1 adiciona paginação aos métodos
Queries.listqueries
e
Reports.listreports
.
Na v1.1, o número de resultados retornados por esses
métodos é igual a um parâmetro recém-adicionado
pageSize
(o padrão é
100
se não for especificado). As respostas contêm um campo nextPageToken
recém-adicionado que pode ser usado para recuperar o próximo conjunto de resultados. Esse campo ficará em branco se os resultados tiverem sido esgotados.
O código v1 a seguir para recuperar todos os relatórios pertencentes a uma consulta específica:
public class GetReports {
public List<Report> getReports(DoubleClickBidManager service, long queryId) throws IOException {
ListReportsResponse reportListResponse = service.reports().listreports(queryId).execute();
return reportListResponse.getReports();
}
}
precisarão ser modificados de acordo com o seguinte na v1.1 para continuar a recuperar todos os relatórios:
public class GetReports {
public List<Report> getReports(DoubleClickBidManager service, long queryId) throws IOException {
ListReportsResponse reportListResponse = service.reports().listreports(queryId).execute();
List<Report> reports = new ArrayList<>(reportListResponse.getReports());
while (reportListResponse.getNextPageToken() != null
&& reportListResponse.getNextPageToken().length() > 0) {
// Get next set of results, aka page.
reportListResponse =
service
.reports()
.listreports(queryId)
.setPageToken(reportListResponse.getNextPageToken())
.execute();
reports.addAll(reportListResponse.getReports());
}
return reports;
}
}
Consulte a documentação dos métodos
Queries.listqueries
e
Reports.listreports
para
mais detalhes.
Problemas conhecidos
Nenhum.
Versão 1
Essa é a versão inicial da API.
Problemas conhecidos
Nenhum.