L'API REST di Ad Manager utilizza le maschere dei campi per le letture e le scritture parziali. Questo può migliorare le prestazioni limitando la quantità di dati trasferiti. Maschere dei campi sono rappresentati da un elenco di nomi di campi separati da virgole. Ad esempio:
startTime,endTime,targeting.geoTargeting
Lettura maschere
Le maschere di lettura controllano quali campi sono presenti in una risposta dell'API. Puoi impostare un di lettura della maschera sulla tua richiesta in due modi:
Il parametro di query
fields
:curl https://admanager.googleapis.com/v1/networks/123456/adUnits?fields=adUnits,nextPageToken,totalSize
Intestazione HTTP
X-Goog-FieldMask
:curl -H "X-Goog-FieldMask: adUnits,nextPageToken,totalSize" \ https://admanager.googleapis.com/v1/networks/123456/adUnits
Maschere di lettura predefinite
Alcuni metodi dell'API includono una maschera predefinita per i campi costosi
da restituire. I metodi degli elenchi ne sono un esempio. Per impostazione predefinita, non includono
totalSize
.
Questi campi devono essere richiesti esplicitamente nella maschera dei campi per nome o per
utilizzando il carattere jolly *
.
Aggiorna maschere
Le maschere di aggiornamento controllano quali campi verranno modificati in un aggiornamento (PATCH
)
richiesta. Quando viene impostata una maschera di aggiornamento, vengono aggiornati solo i relativi campi
indipendentemente dai campi impostati
nel corpo della richiesta.
Le maschere di aggiornamento sono impostate come parametri di query. Ad esempio:
curl -X PATCH https://admanager.googleapis.com/v1/networks/1234/order/4567?updateMask=displayName
Attraversamento campo
Le maschere di campo possono specificare i campi di un'entità utilizzando il carattere .
per
attraversamento. Si tratta della stessa sintassi utilizzata
Filtri.
Le maschere dei campi sono sempre relative all'oggetto di risposta. Ad esempio, una maschera
la lettura di un LineItem
potrebbe includere primaryGoal.units
. La maschera corrispondente
Per scheda
LineItems
è lineItems.primaryGoal.units
.
Puoi specificare un campo nel suo insieme o uno dei suoi campi secondari. Entrambi
primaryGoal
e primaryGoal.units
sono validi.
Questo vale anche per i campi ripetuti. Una maschera del campo LineItem
creativePlaceholders.size
è valido e include solo il campo size
per ogni CreativePlaceholder
.
Caratteri jolly
Le maschere dei campi supportano il carattere *
che indica tutti i campi del messaggio.
I seguenti esempi mostrano l'utilizzo dei caratteri jolly nell'elenco.
Orders
. Questo metodo ha una maschera di lettura predefinita che
non includere il campo total_size
.
Esempio | Significato |
---|---|
* |
Include tutti i campi, tra cui total_size |
orders |
Include solo il campo orders e tutti i relativi campi secondari |
orders.* |
Include solo il campo orders e tutti i relativi campi secondari |
Campi non validi
Se una maschera di campo fa riferimento a un valore che non esiste, l'API risponderà
con un errore INVALID_ARGUMENT
.