Spostarsi nel cestino o eliminare file e cartelle

Puoi rimuovere file e cartelle di Google Drive sia da Il mio Drive sia dai Drive condivisi. Per farlo, hai due opzioni: spostare nel cestino o eliminare.

Puoi spostare file e cartelle nel cestino e poi ripristinarli (entro 30 giorni dallo spostamento nel cestino). L'eliminazione di file e cartelle li rimuove definitivamente da Drive. Se sposti nel cestino, ripristini o elimini in modo definitivo più file o cartelle contemporaneamente, potrebbe essere necessario un po' di tempo per visualizzare le modifiche.

Questa guida spiega come eliminare i file in Drive.

Utilizzare il parametro fields

Se vuoi specificare i campi da restituire nella risposta, puoi impostare il fields parametro di sistema con qualsiasi metodo della ris3/} risorsa.files Se ometti il parametro fields, il server restituisce un insieme predefinito di campi specifici per il metodo. Ad esempio, il list metodo restituisce solo i campi kind, id, name, mimeType e resourceKey per ogni file. Per restituire campi diversi, vedi Restituire campi specifici.

Cestino

Per rimuovere i file di Drive, puoi spostarli nel cestino. I file presenti nel cestino vengono eliminati automaticamente dopo 30 giorni. Puoi ripristinare i file dal cestino prima che siano trascorsi 30 giorni.

Solo il proprietario del file può spostare un file nel cestino e gli altri utenti non possono visualizzare i file nel cestino del proprietario. Se provi a spostare nel cestino un file di cui non sei il proprietario, riceverai un insufficientFilePermissions errore. Per ulteriori informazioni, vedi Autorizzazioni.

Per verificare di essere il proprietario del file, chiama il get metodo sulla risorsa files con il parametro del percorso fileId e il parametro fields impostato sul campo booleano ownedByMe. Il campo ownedByMe non viene compilato per i file nei Drive condivisi perché sono di proprietà del Drive condiviso, non dei singoli utenti. Per ulteriori informazioni sul parametro fields, vedi Utilizzare il parametro fields.

Se non sei il proprietario del file, ma vuoi comunque una copia del file spostato nel cestino, procedi in uno dei seguenti modi:

  • Crea una copia del file.
  • Contatta il proprietario per chiedergli di ripristinarlo dal cestino.

Spostare un file nel cestino

Per spostare un file nel cestino, utilizza il update metodo sulla risorsa files con il parametro del percorso fileId e imposta il campo booleano trashed su true. Per spostare nel cestino un file di un Drive condiviso, devi anche impostare il parametro di query booleano supportsAllDrives su true. Per ulteriori informazioni, vedi Implementare il supporto dei Drive condivisi.

In caso di esito positivo, il corpo della risposta contiene un'istanza della files risorsa.

Il seguente esempio di codice mostra come utilizzare fileId per contrassegnare il file come spostato nel cestino:

Python

body_value = {'trashed': True}

response = drive_service.files().update(fileId="FILE_ID", body=body_value).execute()

Node.js

const body_value = {
  'trashed': true
};

const response = await drive_service.files.update({
      fileId: 'FILE_ID',
      requestBody: body_value,
    });
    return response;

Sostituisci FILE_ID con fileId del file che vuoi spostare nel cestino.

Determinare le proprietà di un file spostato nel cestino

Quando un file viene spostato nel cestino, puoi recuperare proprietà aggiuntive del file. Puoi utilizzare il get metodo sulla risorsa files con il parametro del percorso fileId e utilizzare uno dei seguenti campi spostati nel cestino nel parametro fields. Per ulteriori informazioni sul parametro fields, vedi Utilizzare il parametro fields.

I seguenti campi vengono compilati per tutti i file:

  • trashed: indica se il file è stato spostato nel cestino, esplicitamente o da una cartella principale spostata nel cestino. Tieni presente che, mentre l'utilizzo di trashed con il metodo update imposta lo stato del file, il metodo get recupera lo stato del file.
  • explicitlyTrashed: indica se il file è stato spostato esplicitamente nel cestino, anziché in modo ricorsivo, da una cartella principale.

I seguenti campi vengono compilati solo per i file che si trovano in un Drive condiviso:

  • trashedTime: l'ora in cui l'elemento è stato spostato nel cestino nel formato data/ora RFC 3339. Se utilizzi la versione precedente dell'API Drive v2, questo campo si chiama trashedDate.
  • trashingUser: se il file è stato spostato esplicitamente nel cestino, l'utente che lo ha spostato.

Recuperare un file dal cestino

Per recuperare un file dal cestino, utilizza il update metodo sulla files risorsa con il fileId parametro del percorso e imposta il campo booleano trashed su false. Per annullare lo spostamento nel cestino di un file di un Drive condiviso, devi anche impostare il parametro di query booleano supportsAllDrives su true. Per ulteriori informazioni, vedi Implementare il supporto dei Drive condivisi.

In caso di esito positivo, il corpo della risposta contiene un'istanza della files risorsa.

Il seguente esempio di codice mostra come utilizzare fileId per contrassegnare il file come non spostato nel cestino:

Python

body_value = {'trashed': False}

response = drive_service.files().update(fileId="FILE_ID", body=body_value).execute()

Node.js

const body_value = {
  'trashed': false
};

const response = await drive_service.files.update({
      fileId: 'FILE_ID',
      requestBody: body_value,
    });
    return response;

Sostituisci FILE_ID con il fileId del file di cui vuoi annullare lo spostamento nel cestino.

Svuotare il cestino

Puoi eliminare definitivamente tutti i file di Drive che l'utente ha spostato nel cestino utilizzando il emptyTrash metodo sulla risorsa files. Per svuotare il cestino di un Drive condiviso, devi anche impostare il driveId parametro di query sull'ID del Drive condiviso.

In caso di esito positivo, il corpo della risposta contiene un oggetto JSON vuoto.

Il seguente esempio di codice mostra come utilizzare fileId per eliminare definitivamente tutti i file nel cestino:

Python

response = drive_service.files().emptyTrash().execute()

Node.js

 const response = await drive_service.files.emptyTrash({
    });
    return response;

Eliminare

Puoi eliminare definitivamente un file di Drive senza spostarlo nel cestino. Dopo che hai eliminato un file, le persone con cui lo hai condiviso non potranno più accedervi. Se vuoi che altri mantengano l'accesso al file, puoi trasferire la proprietà a qualcun altro prima dell'eliminazione.

Per eliminare un file di un Drive condiviso, l'utente deve avere role=organizer nella cartella principale. Se elimini una cartella, vengono eliminati anche tutti i discendenti di proprietà dell'utente. Per ulteriori informazioni, vedi Autorizzazioni.

Per eliminare definitivamente un file di proprietà dell'utente senza spostarlo nel cestino, utilizza il delete metodo sulla files risorsa. Per eliminare un file di un Drive condiviso, devi anche impostare il parametro di query booleano supportsAllDrives su true. Per ulteriori informazioni, vedi Implementare il supporto dei Drive condivisi.

In caso di esito positivo, il corpo della risposta contiene un oggetto JSON vuoto.

Il seguente esempio di codice mostra come utilizzare fileId per eliminare il file:

Python

response = drive_service.files().delete(fileId="FILE_ID").execute()

Node.js

 const response = await drive_service.files.delete({
      fileId: 'FILE_ID'
    });
    return response;

Sostituisci FILE_ID con il fileId del file che vuoi eliminare.

Autorizzazioni

La tabella seguente mostra le autorizzazioni del ruolo necessarie per spostare nel cestino o eliminare file e cartelle. Per un elenco completo dei ruoli e delle operazioni consentite da ciascuno, consulta Ruoli e autorizzazioni.

Operazione consentita owner organizer fileOrganizer writer commenter reader
Spostare file e cartelle nel cestino
Recuperare file e cartelle dal cestino
Svuotare il cestino
Eliminare un file o una cartella
Eliminare file e cartelle in un Drive condiviso [*]
Eliminare un Drive condiviso vuoto

Funzionalità

Una risorsa files contiene una raccolta di campi booleani capabilities che indicano le funzionalità che l'utente ha su questo file.

Per controllare le funzionalità, chiama il get metodo sulla risorsa files con il parametro del percorso fileId e utilizza uno dei seguenti capabilities campi nel parametro fields. Per ulteriori informazioni sul fields parametro, vedi Utilizzare il parametro fields.

I seguenti campi vengono compilati per tutti i file:

I seguenti campi vengono compilati solo per i file che si trovano in un Drive condiviso:

  • capabilities.canTrashChildren: indica se l'utente corrente può spostare nel cestino i figli di questa cartella. Questo valore è false quando l'elemento non è una cartella.
  • capabilities.canDeleteChildren: indica se l'utente corrente può eliminare i figli di questa cartella. Questo valore è false quando l'elemento non è una cartella.

Limiti relativi a file e cartelle

I file e le cartelle di Drive, insieme alle cartelle dei Drive condivisi, hanno alcuni limiti di archiviazione.

In genere, una volta raggiunto il limite di elementi, l'unico modo per creare altro spazio è eliminare definitivamente gli elementi o utilizzare un altro account. Lo spostamento dei file nel cestino non è sufficiente per liberare spazio.

Per ulteriori informazioni sui limiti relativi a file e cartelle, consulta le seguenti risorse: