Gerenciar metadados de arquivos

Este documento aborda considerações importantes para nomear arquivos e trabalhar com metadados como texto indexável e miniaturas. Para inserir e recuperar arquivos, consulte o recurso files.

Especificar nomes de arquivos e extensões

Os apps precisam especificar uma extensão de arquivo na propriedade do título ao inserir arquivos com a API Google Drive. Por exemplo, uma operação para inserir um arquivo JPEG precisa especificar algo como "name": "cat.jpg" nos metadados.

As respostas GET subsequentes podem incluir a propriedade fileExtension somente leitura preenchida com a extensão especificada originalmente na propriedade name. Quando um usuário do Google Drive solicita o download de um arquivo ou quando esse download é feito pelo cliente de sincronização, o Drive cria um nome de arquivo completo (com extensão) com base no título. Quando a extensão está ausente, o Drive tenta determinar a extensão com base no tipo MIME do arquivo.

Salvar texto indexável

O Drive indexa automaticamente documentos para pesquisa quando reconhece o tipo de arquivo, incluindo documentos de texto, PDFs, imagens com texto e outros tipos comuns. Se o app salvar outros tipos de arquivo, como desenhos, vídeos e atalhos, você poderá melhorar a descoberta fornecendo texto indexável no campo contentHints.indexableText do arquivo.

O texto indexável é indexado como HTML. Se você salvar a string de texto indexável <section attribute="value1">Here's some text</section>, a frase "Aqui está um texto" será indexada, mas "valor1" não. Por isso, salvar XML como texto indexável não é tão útil quanto salvar HTML.

Ao especificar indexableText, lembre-se também do seguinte:

  • O limite de tamanho do arquivo contentHints.indexableText é de 128 KB.
  • Capture os principais termos e conceitos que você espera que o usuário pesquise.
  • Não tente classificar o texto em ordem de importância, porque o indexador faz isso de maneira eficiente para você.
  • Seu aplicativo precisa atualizar o texto indexável a cada salvamento.
  • O texto precisa estar relacionado ao conteúdo ou aos metadados do arquivo.

Este último ponto pode parecer óbvio, mas é importante. Não é uma boa ideia adicionar termos pesquisados com frequência para forçar um arquivo a aparecer nos resultados da pesquisa. Isso pode frustrar os usuários e até motivá-los a excluir o arquivo.

Enviar miniaturas

O Drive gera automaticamente miniaturas para muitos tipos de arquivo comuns, como Documentos, Planilhas e Apresentações. As miniaturas ajudam o usuário a identificar melhor os arquivos do Drive.

Para tipos de arquivo em que o Drive não pode gerar uma miniatura padrão, é possível fornecer uma imagem em miniatura gerada pelo seu aplicativo. Durante a criação ou atualização do arquivo, faça o upload de uma miniatura configurando o campo contentHints.thumbnail no recurso files.

Mais especificamente:

  • Defina o campo contentHints.thumbnail.image como o URL e o nome de arquivo da imagem codificada em base64 segura. Consulte a seção 5 do RFC 4648 (link em inglês).
  • Defina o campo contentHints.thumbnail.mimeType como o tipo MIME adequado para a miniatura.

Se o Drive puder gerar uma miniatura a partir do arquivo, ele usará a miniatura gerada automaticamente e ignorará qualquer miniatura enviada. Se não for possível gerar uma miniatura, ela usará a que você forneceu.

As miniaturas devem seguir estas regras:

  • Pode ser enviado nos formatos PNG, GIF ou JPG.
  • A largura recomendada é de 1600 pixels.
  • A largura mínima é de 220 pixels.
  • O tamanho máximo do arquivo é de 2 MB.
  • Eles devem ser atualizados pelo aplicativo a cada salvamento.

Para mais informações, consulte o recurso files.

Recuperar miniaturas

É possível recuperar metadados, incluindo miniaturas, de arquivos do Google Drive. As informações de miniatura são armazenadas no campo thumbnailLink do recurso files.

Retornar uma miniatura específica

O exemplo de código a seguir mostra uma solicitação de método files.get com vários campos como um parâmetro de consulta para retornar os metadados thumbnailLink de um arquivo específico. Para mais informações, consulte Retornar campos específicos para um arquivo.

GET https://www.googleapis.com/drive/v3/files/FILE_ID?fields=id,name,mimeType,thumbnailLink

Substitua FILE_ID pelo fileId do arquivo que você quer encontrar.

Se disponível, a solicitação retorna um URL de curta duração para a miniatura do arquivo. Normalmente, o link dura várias horas. O campo só é preenchido quando o app solicitante pode acessar o conteúdo do arquivo. Se o arquivo não for compartilhado publicamente, o URL retornado em thumbnailLink precisará ser buscado usando uma solicitação credenciada.

Retornar uma lista de miniaturas

O exemplo de código a seguir mostra uma solicitação de método files.list com vários campos como um parâmetro de consulta para retornar os metadados thumbnailLink de uma lista de arquivos. Para mais informações, consulte Pesquisar arquivos e pastas.

GET https://www.googleapis.com/drive/v3/files/?fields=files(id,name,mimeType,thumbnailLink)

Para restringir os resultados da pesquisa a um tipo de arquivo específico, aplique uma string de consulta para definir o tipo MIME. Por exemplo, o exemplo de código a seguir mostra como limitar a lista a arquivos do Planilhas Google. Para saber mais sobre os tipos MIME, consulte Tipos MIME compatíveis com o Google Workspace e o Google Drive.

GET https://www.googleapis.com/drive/v3/files/q=mimeType='application/vnd.google-apps.spreadsheet'&fields=files(id,name,mimeType,thumbnailLink)