L'API Google Drive supporta diversi modi per cercare file e cartelle.
Puoi utilizzare il metodo files.list
per restituire tutti o alcuni dei file e delle cartelle di un utente di Drive. Puoi usare il metodo files.list
anche per recuperare il valore fileId
richiesto per alcuni metodi di risorse (come files.get
e files.update
).
Cerca tutti i file e le cartelle in Il mio Drive dell'utente corrente
Utilizza il metodo files.list
senza parametri per restituire tutti i file e
le cartelle.
GET https://www.googleapis.com/drive/v3/files
Cercare file o cartelle specifici in Il mio Drive dell'utente corrente
Per cercare un insieme specifico di file o cartelle, utilizza il campo della stringa di query q
con il metodo files.list
per filtrare i
file da restituire combinando uno o più termini di ricerca.
Una stringa di query contiene le seguenti tre parti:
query_term operator values
Dove:
query_term
è il termine o il campo da cercare.operator
specifica la condizione del termine di query.values
sono i valori specifici che vuoi utilizzare per filtrare i risultati di ricerca.
Per visualizzare i termini e gli operatori di query che puoi utilizzare per filtrare i file e le cartelle, consulta Termini e operatori di query di ricerca.
Ad esempio, la seguente stringa di query filtra la ricerca per restituire solo cartelle impostando il tipo MIME:
q: mimeType = 'application/vnd.google-apps.folder'
Per saperne di più sui tipi MIME, consulta l'articolo sui tipi MIME supportati da Google Workspace e Google Drive.
Esempi di stringhe di query
La tabella seguente elenca esempi di alcune stringhe di query di base. Il codice effettivo varia a seconda della libreria client utilizzata per la ricerca.
Devi inoltre eseguire l'escape dei caratteri speciali nei nomi dei file per assicurarti che la query funzioni correttamente. Ad esempio, se un nome file contiene sia un apostrofo ('
) sia una barra rovesciata ("\"
), utilizza una barra rovesciata come carattere di escape: name
contains 'quinn\'s paper\\essay'
.
Su cosa vuoi eseguire la query | Esempio |
---|---|
File con nome "hello" | name = 'hello' |
File con un nome contenente le parole "ciao" e "arrivederci" | name contains 'hello' and name contains 'goodbye' |
File con un nome che non contiene la parola "ciao" | not name contains 'hello' |
File che contengono il testo "importante" e nel cestino | fullText contains 'important' and trashed = true |
File che contengono la parola "ciao" | fullText contains 'hello' |
File che non contengono la parola "ciao" | not fullText contains 'hello' |
File che contengono la frase esatta "hello world" | fullText contains '"hello world"' |
File con una query che contiene il carattere "\" (ad esempio, "\authors") | fullText contains '\\authors' |
File che sono cartelle | mimeType = 'application/vnd.google-apps.folder' |
File che non sono cartelle | mimeType != 'application/vnd.google-apps.folder' |
File modificati dopo una determinata data (il fuso orario predefinito è UTC) | modifiedTime > '2012-06-04T12:00:00' |
File immagine o video modificati dopo una data specifica | modifiedTime > '2012-06-04T12:00:00' and (mimeType contains 'image/' or mimeType contains 'video/') |
File aggiunti a Speciali | starred = true |
File all'interno di una raccolta (ad esempio, l'ID cartella nella raccolta parents ) |
'1234567' in parents |
File in una cartella di dati delle applicazioni di una raccolta | 'appDataFolder' in parents |
File di cui l'utente "test@example.org" è il proprietario | 'test@example.org' in owners |
File per i quali l'utente "test@example.org" ha l'autorizzazione di scrittura | 'test@example.org' in writers |
File per i quali i membri del gruppo "gruppo@example.org" hanno l'autorizzazione di scrittura | 'group@example.org' in writers |
File condivisi con l'utente autorizzato che contengono la parola "hello" nel nome | sharedWithMe and name contains 'hello' |
File con una proprietà file personalizzata visibile a tutte le app | properties has { key='mass' and value='1.3kg' } |
File con una proprietà file personalizzata privata per l'app richiedente | appProperties has { key='additionalID' and value='8e8aceg2af2ge72e78' } |
File che non sono stati condivisi con nessuno o con domini (solo privati o condivisi con utenti o gruppi specifici) | visibility = 'limited' |
Filtrare i risultati di ricerca con una libreria client
Il seguente esempio di codice mostra come utilizzare una libreria client per filtrare i risultati di ricerca in base a nomi di file e ID di file JPEG. Questo esempio utilizza il termine di query mimeType
per restringere i risultati ai file di tipo image/jpeg
. Inoltre, imposta spaces
su drive
per restringere ulteriormente la ricerca allo spazio di Drive. Quando nextPageToken
restituisce null
,
non ci sono altri risultati.
Java
Python
Node.js
PHP
Cercare file con una proprietà file personalizzata
Per cercare file con una proprietà file personalizzata, utilizza il termine della query di ricerca properties
o appProperties
con una chiave e un valore. Ad esempio, per
cercare una proprietà di file personalizzata privata per l'app richiedente denominata
additionalID
con un valore 8e8aceg2af2ge72e78
:
appProperties has { key='additionalID' and value='8e8aceg2af2ge72e78' }
Per maggiori informazioni, consulta Aggiungere proprietà dei file personalizzate.
Cercare i file con un'etichetta o un valore di campo specifico
Per cercare file con etichette specifiche, utilizza il termine della query di ricerca labels
con un ID etichetta specifico. Ad esempio: 'labels/LABEL_ID' in
labels
. In caso di esito positivo, il corpo della risposta contiene tutte le istanze dei file in cui è stata applicata l'etichetta.
Per cercare file senza un ID etichetta specifico: Not
'labels/LABEL_ID' in labels
.
Puoi anche cercare file in base a valori di campi specifici. Ad esempio, per
cercare file con un valore di testo:
labels/LABEL_ID.text_field_id ='TEXT'
.
Per ulteriori informazioni, consulta Cercare file con un'etichetta o un valore di campo specifico.
Cerca nel corpora
Le ricerche che chiamano files.list
utilizzano
corpora
di user
per impostazione predefinita. Per cercare
altri corpora, ad esempio file condivisi con un domain
, imposta il parametro
corpora
.
È possibile cercare più corpora in una singola query, anche se potrebbero essere restituiti risultati incompleti
se il corpora combinato è troppo grande. Se incompleteSearch
è
true
nel corpo della risposta, tutti i documenti non sono stati restituiti. In questo caso, devi restringere la query scegliendo un corpora diverso, come user
o drive
.
Argomenti correlati
- Cercare Drive condivisi
- Termini e operatori delle query di ricerca
- Tipi MIME supportati da Google Workspace e Google Drive
- Ruoli e autorizzazioni
- Cercare file con un valore di etichetta o campo specifico