La maggior parte dei servizi nella Rete Display e L'API Video 360 fornisce un metodo LIST
per il recupero collettivo dei
Google Cloud. Questi metodi di LIST
in genere supportano l'applicazione di filtri ai risultati tramite una
Parametro di query filter
. Utilizza questo parametro per ottimizzare l'utilizzo dell'API solo
recuperare ciò di cui hai bisogno.
Questa guida mostra come utilizzare il parametro filter
in modo efficace.
Struttura del filtro
Un valore parametro filter
è una stringa composta da una o più restrizioni
che possono essere combinati con gli operatori AND
o OR
e raggruppati utilizzando
le parentesi.
Le limitazioni sono nel formato {field} {operator} {value}
. Ecco un
esempio:
entityStatus="ENTITY_STATUS_ACTIVE"
La stringa del filtro non può superare i 500 caratteri. Se la stringa di filtro supera i 500 caratteri, esegui una delle seguenti operazioni:
- suddividi la logica in più stringhe di filtro e recupera le risorse utilizzando
richieste
LIST
separate. - Rimuovi parte della logica dalla stringa di filtro e utilizzala per filtrare i ha recuperato le risorse localmente.
Aggrega i valori delle restrizioni tra virgolette per garantire che la logica venga applicata correttamente.
Codifica l'URL delle stringhe di filtro se stai effettuando chiamate a LIST
direttamente senza
utilizzando una libreria client.
Per ulteriori dettagli sulla formattazione, consulta Logica tra le limitazioni le tue query.
Campi filtrabili
I campi filtrabili di ogni metodo LIST
sono elencati nella sezione filter
del metodo
la descrizione del parametro. Nella maggior parte dei casi, puoi filtrare in base a un sottoinsieme del
campi standard. In alcuni rari casi, puoi utilizzare campi aggiuntivi
solo per l'applicazione di filtri.
Ogni campo della descrizione del parametro supporta almeno uno dei seguenti elementi: operatori analoghi:
Operatori paragonabili | ||
---|---|---|
EQUALS (=)
|
Il valore del campo della risorsa è uguale al valore specificato.
Esempio: |
|
LESS THAN OR EQUAL TO (<=)
|
Il valore del campo risorsa è inferiore o uguale al valore specificato. Spesso utilizzati
quando confronti una data o un'ora.
Esempio: |
|
GREATER THAN OR EQUAL TO (>=)
|
Il valore del campo risorsa è maggiore o uguale al valore specificato. Spesso utilizzati
quando confronti una data o un'ora.
Esempio: |
|
HAS (:)
|
Il valore del campo risorsa contiene il valore specificato. Se il campo della risorsa è
, verifica se il valore specificato è una sottostringa esistente. Se
è un array, verifica se l'array contiene
valore.
Esempio: |
Se non viene specificato nessun operatore per il campo nella descrizione del parametro,
può usare solo l'operatore EQUALS (=)
. Alcuni campi supportano più operatori.
Alcuni campi filtrabili, ad esempio quelli relativi a date e orari, richiedono
valore comparabile per seguire un formato specifico. Il formato è specificato accanto a
il campo nella descrizione del parametro filter
.
Logica tra restrizioni
Puoi combinare più restrizioni per restringere o espandere la risposta dal tuo
Richiesta di LIST
.
In genere, è possibile combinare più limitazioni con AND
e OR
.
operatori logici. Ogni metodo LIST
specifica gli operatori supportati.
Alcuni metodi supportano solo l'utilizzo di una singola restrizione nel parametro filter
.
Considera le seguenti limitazioni quando crei stringhe di filtri con AND
o OR
:
AND
deve essere utilizzato tra restrizioni o gruppi di limitazioni, che filtrano campi diversi o lo stesso campo in modo diverso. Ecco alcuni esempi:updateTime>="2023-03-01T12:00:00Z" AND entityStatus="ENTITY_STATUS_ACTIVE"
updateTime>="2023-03-01T12:00:00Z" AND updateTime<="2023-04-01T12:00:00Z" AND (entityStatus="ENTITY_STATUS_ACTIVE" OR entityStatus="ENTITY_STATUS_PAUSED")
OR
deve essere utilizzato tra singole limitazioni che filtrano in base allo stesso . Ecco un esempio:(entityStatus="ENTITY_STATUS_ACTIVE" OR entityStatus="ENTITY_STATUS_PAUSED") AND (lineItemType="LINE_ITEM_TYPE_DISPLAY_DEFAULT" OR lineItemType="LINE_ITEM_TYPE_VIDEO_DEFAULT")
Non puoi utilizzare
OR
per combinare due gruppi di limitazioni. Utilizza piùLIST
richieste con valori di filtro diversi. Ad esempio, utilizza seguenti richiesteLIST
separate:(lineItemType="LINE_ITEM_TYPE_DISPLAY_DEFAULT" AND insertionOrderId="123")
(lineItemType="LINE_ITEM_TYPE_VIDEO_DEFAULT" AND insertionOrderId="456")
Non utilizzare l'operatore
OR
per combinarli:(lineItemType="LINE_ITEM_TYPE_DISPLAY_DEFAULT" AND insertionOrderId="123") OR (lineItemType="LINE_ITEM_TYPE_VIDEO_DEFAULT" AND insertionOrderId="456")
Le parentesi potrebbero essere implicite se non vengono utilizzate per le limitazioni di gruppo in una stringa di filtro. Ad esempio, la seguente stringa di filtro:
updateTime>="2023-03-01T12:00:00Z" AND entityStatus="ENTITY_STATUS_ACTIVE" OR entityStatus="ENTITY_STATUS_PAUSED" OR entityStatus="ENTITY_STATUS_DRAFT"
viene interpretata come:
updateTime>="2023-03-01T12:00:00Z" AND (entityStatus="ENTITY_STATUS_ACTIVE" OR entityStatus="ENTITY_STATUS_PAUSED" OR entityStatus="ENTITY_STATUS_DRAFT")