Você pode remover arquivos e pastas do Google Drive da sua conta do Drive e drives compartilhados. Você tem duas opções para fazer isso: lixeira ou excluir.
Você pode mover arquivos e pastas para a lixeira e restaurá-los em até 30 dias depois de colocá-los no lixo). A exclusão de arquivos e pastas os remove permanentemente do Google Drive. Se você mover vários itens para a lixeira, restaurar ou excluir permanentemente arquivos ou pastas de uma só vez, talvez leve algum tempo para você perceber as alterações.
Este guia explica como descartar arquivos no Drive.
Lixeira
Para remover arquivos do Drive, mova-os para a lixeira. Arquivos no a lixeira são excluídas automaticamente após 30 dias. Você pode restaurar arquivos sua lixeira antes do período de 30 dias.
Somente o proprietário do arquivo pode enviá-lo para a lixeira, e outros usuários não podem visualizá-lo na
na lixeira do proprietário. Ao tentar mover para a lixeira um arquivo que não é seu, você vai receber uma
insufficientFilePermissions
erro. Para mais informações, consulte Permissões.
Para confirmar que você é o proprietário do arquivo, chame o método
Método files.get
com o fileId
e o parâmetro fields
definido como o campo booleano ownedByMe
. O ownedByMe
campo não é preenchido para arquivos em drives compartilhados porque eles pertencem ao
drives compartilhados, não a usuários individuais. Para mais informações sobre como retornar
campos usando o parâmetro fields
, consulte Retornar campos específicos para um
arquivo.
Se o arquivo não for seu, mas você quiser uma cópia dele na lixeira, escolha uma um dos seguintes:
- Faça uma cópia do arquivo.
- Entre em contato com o proprietário e peça que ele restaure da lixeira.
Mover um arquivo para a lixeira
Para mover um arquivo para a lixeira, use o
files.update
e defina o
trashed
para True
. Para mover um arquivo de um drive compartilhado para a lixeira, você também precisa definir o
o parâmetro de consulta supportsAllDrives
para True
. Para mais informações, consulte
Implementar o suporte aos drives compartilhados.
Se bem-sucedida, a resposta body contém um instância do recurso files.
O exemplo de código abaixo mostra como usar fileId
para marcar o arquivo como
na lixeira:
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;
Substitua FILE_ID pelo fileId
do arquivo que você quer.
lixo.
Determinar as propriedades de um arquivo na lixeira
Quando um arquivo é enviado para a lixeira, você pode recuperar
Propriedades files
. Você pode usar o
files.get
e inclua os
campos a seguir no parâmetro fields
. Para mais informações, consulte Devolver
campos específicos de um arquivo.
Os campos a seguir são preenchidos para todos os arquivos:
trashed
: se o arquivo foi enviado para a lixeira (explicitamente ou de uma lixeira) na pasta principal. Ao usartrashed
com ofiles.update
, define o status do arquivo, o métodofiles.get
recupera o valor o status atual da conta.explicitlyTrashed
: se o arquivo foi explicitamente enviado para a lixeira, ou não recursivamente para a lixeira, de uma pasta pai.
Os campos a seguir são preenchidos apenas para arquivos em um drive compartilhado:
trashedTime
: a hora em que o item foi enviado para a lixeira no RFC 3.339 formato de data-hora. Se você estiver usando a versão anterior da Drive API v2 versão, esse campo se chamarátrashedDate
.trashingUser
: se o arquivo foi explicitamente enviado para a lixeira, o usuário que o moveu para a lixeira.
Recuperar um arquivo da lixeira
Para recuperar um arquivo da lixeira, use o
files.update
e defina o
trashed
para False
. Para remover um arquivo de um drive compartilhado, você também precisa configurar
o parâmetro de consulta supportsAllDrives
para True
. Para mais informações, consulte
Implementar o suporte aos drives compartilhados.
Se bem-sucedida, a resposta body contém um instância do recurso files.
O exemplo de código abaixo mostra como usar fileId
para marcar o arquivo como
fora da lixeira:
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;
Substitua FILE_ID pelo fileId
do arquivo que você quer.
para retirar da lixeira.
Esvaziar lixeira
Você pode excluir permanentemente todos os arquivos do Drive para onde o usuário moviu
o lixo usando o
files.emptyTrash
. Para
esvaziar a lixeira de um drive compartilhado, você também precisará definir a consulta driveId
ao ID do drive compartilhado.
Se bem-sucedida, a resposta body contém um valor vazio instância.
O exemplo de código a seguir mostra como usar o fileId
para excluir todos os arquivos em
para a lixeira:
Python
response = drive_service.files().emptyTrash().execute()
Node.js
const response = await drive_service.files.emptyTrash({
});
return response;
Excluir
Você pode excluir permanentemente um arquivo do Drive sem movê-lo para a lixo. Depois que você exclui um arquivo, todas as pessoas com quem ele foi compartilhado perde o acesso a ele. Se quiser que outras pessoas mantenham o acesso ao arquivo, você pode transferir propriedade para para outra pessoa antes da exclusão.
Para excluir um arquivo de drive compartilhado, o usuário precisa ter role=organizer
no diretório pai.
do Compute Engine. Se você estiver excluindo uma pasta, todos os descendentes do usuário também serão
excluída. Para mais informações, consulte Permissões.
Para excluir permanentemente um arquivo de propriedade do usuário sem movê-lo para a lixeira, use o método
método files.delete
. Para excluir um
arquivo do drive compartilhado, defina também o parâmetro de consulta supportsAllDrives
como
True
. Veja mais informações em Implementar um drive compartilhado
suporte.
Se bem-sucedida, a resposta body contém um instância vazia.
O exemplo de código a seguir mostra como usar o fileId
para excluir o arquivo:
Python
response = drive_service.files().delete(fileId="FILE_ID").execute()
Node.js
const response = await drive_service.files.delete({
fileId: 'FILE_ID'
});
return response;
Substitua FILE_ID pelo fileId
do arquivo que você quer.
excluir.
Permissões
A tabela a seguir mostra as permissões de papel necessárias para realizar cada operação Para uma lista completa de papéis e as operações permitidas por cada um, consulte Papéis e permissões.
Operação permitida | owner |
organizer |
fileOrganizer |
writer |
commenter |
reader |
---|---|---|---|---|---|---|
Mover arquivos e pastas para a lixeira | ✔ | ✔ | ✔ | |||
Recupere arquivos e pastas da lixeira | ✔ | ✔ | ✔ | |||
Esvaziar a lixeira | ✔ | ✔ | ||||
Excluir um arquivo ou uma pasta permanentemente | ✔ | ✔ | ||||
Excluir arquivos e pastas em um drive compartilhado [*] | ✔ |
Recursos
Um recurso files
contém uma coleção.
de campos booleanos capabilities
usados para indicar se uma ação pode ser
executada em um arquivo.
Para verificar os recursos, chame o método
Método files.get
com o fileId
e o parâmetro fields
definido para o campo capabilities
. Para mais
informações sobre como retornar campos usando o parâmetro fields
, consulte Return
campos específicos de um arquivo.
Os campos a seguir são preenchidos para todos os arquivos:
capabilities.canTrash
: se o usuário atual pode mover o arquivo para lixo.capabilities.canUntrash
: se o usuário atual pode restaurar o arquivo da lixeira.capabilities.canDelete
: se o usuário atual pode excluir o arquivo.capabilities.canRemoveChildren
: se o usuário atual pode remover filhos desta pasta. Isso é falso quando o item não é uma pasta.
Os campos a seguir são preenchidos apenas para arquivos em um drive compartilhado:
capabilities.canTrashChildren
: se o usuário atual pode enviar as crianças para a lixeira desta pasta. Isso é falso quando o item não é uma pasta.capabilities.canDeleteChildren
: se o usuário atual pode excluir filhos desta pasta. Isso é falso quando o item não é uma pasta.
Limites de arquivos e pastas
As pastas e os arquivos do Drive, junto com as pastas dos drives compartilhados, têm alguns limites de armazenamento.
Geralmente, depois que o limite de itens é atingido, a única maneira de criar mais espaço é para excluir permanentemente itens ou usar uma conta diferente. Mover arquivos para a lixeira não é suficiente para liberar espaço.
Para mais informações sobre limites de arquivos e pastas, consulte:
Temas relacionados
- Excluir arquivos no Google Drive
- Diferenças entre o drive compartilhado e a API My Drive
- Papéis e permissões