Questa pagina fornisce note sulla versione relative all'API Google Bid Manager.
Versione 2
Modifiche strutturali all'API, tra cui l'aggiornamento dell'endpoint di servizio e la ridenominazione di servizi e metodi.
Aggiornamento significativo delle risorse Query e Report tramite la rimozione dei campi non necessari, la riorganizzazione di quelli esistenti e la modifica dei tipi di campi. Ciò include la modifica dei tipi di campo per utilizzare oggetti denominati invece di una definizione generale di "oggetto nidificato".
È richiesta l'esecuzione di query ad hoc utilizzando il metodo queries.run
, invece di eseguirle automaticamente dopo la creazione.
Il parametro di query asynchronous
di queries.run
è stato sostituito con synchronous
.
Recupero dei report semplificato tramite le seguenti modifiche:
- L'aggiunta di un metodo
queries.reports.get
. - L'aggiunta di un parametro di query
orderBy
aqueries.reports.list
. - L'aggiornamento del corpo della risposta
queries.run
da un oggetto vuoto a un'istanza della risorsaReport
generata.
I messaggi di errore restituiti dall'API sono stati aggiornati per essere più specifici e fornire soluzioni più prescrittive.
Segui le istruzioni presentate nella guida alla migrazione v2 per eseguire la migrazione dalla v1.1 alla v2.
Nuove funzionalità
L'endpoint di servizio è stato modificato:
endpoint di servizio v1 endpoint di servizio v2 https://www.googleapis.com/doubleclickbidmanager
https://doubleclickbidmanager.googleapis.com
I servizi sono stati rinominati come segue:
Servizio v1 Servizio v2 Query query Report queries.reports I metodi sono stati rinominati come segue:
Sono stati aggiunti i seguenti metodi:
Servizio Metodi queries.reports ricevi I seguenti metodi hanno un nuovo corpo della risposta:
Metodo Nuovo oggetto corpo risposta queries.run Report Sono stati rimossi i seguenti campi:
Risorsa Campo/i Corpo della risposta queries.list
kind
Corpo della risposta queries.reports.list
kind
Query kind
reportDataEndTimeMs
reportDataStartTimeMs
timezoneCode
RunQueryRequest reportDataEndTimeMs
reportDataStartTimeMs
timezoneCode
Il tipo di oggetto dei seguenti campi è stato modificato nel seguente modo:
Risorsa Campo/i Tipo di oggetto Query Report RunQueryRequest Sono stati aggiunti i seguenti parametri di query del metodo:
Metodo Parametri di ricerca queries.list orderBy queries.reports.list orderBy queries.run sincrono I seguenti parametri di query del metodo sono stati rimossi:
Metodo Parametri di ricerca queries.create asincrono queries.run asincrono Sono stati aggiunti i seguenti valori di filtro:
Valore filtro FILTER_INVENTORY_MEDIA_COST_TYPE FILTER_TARGETING_EXPANSION Sono stati rimossi i seguenti valori del filtro:
Valore filtro FILTER_TRUEVIEW_IAR_REGION Sono stati aggiunti i seguenti valori delle metriche:
Valore metrica 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
Problemi noti
Nessuna.
Versione 1.1
Filtro uno a uno per la mappatura delle colonne dei report
I filtri mappati a più colonne del report ora vengono mappati a colonne singole.
Ad esempio, nella versione 1, se includi il filtro FILTER_ADVERTISER
, si ottiene un report con le colonne "Inserzionista" oltre a "ID inserzionista". Nella versione 1.1, tutte
le colonne del report hanno filtri propri. Ad esempio, un nuovo filtro FILTER_ADVERTISER_NAME
viene mappato a "Inserzionista". Per ottenere entrambe le colonne "Advertiser ID" e "Advertiser" nei report, entrambi i filtri FILTER_ADVERTISER
e FILTER_ADVERTISER_NAME
, rispettivamente, devono essere inclusi nelle richieste Queries.createquery
.
Più concretamente, la richiesta createquery
:
{
...
"params": {
...
"groupBys": ["FILTER_ADVERTISER"],
"metrics": ["METRIC_IMPRESSIONS"],
...
}
...
}
genera un file di report con le seguenti intestazioni nella v1:
Advertiser,Advertiser ID,Advertiser Status,Advertiser Integration Code,Impressions
e le seguenti intestazioni nella v1.1:
Advertiser,Impressions
Di seguito è riportato il codice v1 utilizzato per ottenere le colonne dei report nell'esempio precedente:
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);
dovrà essere modificato in modo simile alla seguente nella v1.1 (ordine dei filtri):
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 originale | Filtri aggiunti |
---|---|
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 |
Impaginazione
La versione 1.1 aggiunge l'impaginazione ai metodi Queries.listqueries
e Reports.listreports
.
Nella v1.1, il numero di risultati restituiti da questi metodi è uguale a un parametro appena aggiunto pageSize
(il valore predefinito è 100
se non specificato). Le risposte contengono un campo nextPageToken
appena aggiunto che può essere utilizzato per recuperare il successivo insieme di risultati. Il campo rimane vuoto se
sono stati esauriti i risultati.
Il seguente codice v1 per recuperare tutti i report appartenenti a una query specifica:
public class GetReports {
public List<Report> getReports(DoubleClickBidManager service, long queryId) throws IOException {
ListReportsResponse reportListResponse = service.reports().listreports(queryId).execute();
return reportListResponse.getReports();
}
}
dovrà essere modificato in modo simile a quanto segue nella v1.1, per poter continuare a recuperare tutti i report:
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;
}
}
Per ulteriori dettagli, consulta la documentazione sui metodi Queries.listqueries
e Reports.listreports
.
Problemi noti
Nessuna.
Versione 1
Questa è la versione iniziale dell'API.
Problemi noti
Nessuna.