Este guia apresenta conceitos como os métodos principais que compõem a API Google Docs, como acessar um documento e o fluxo de trabalho ao criar um documento.
Métodos da API
O recurso documents
fornece
métodos que você usa para invocar a API Docs. Os métodos a seguir permitem criar, ler e atualizar documentos do Documentos:
- Use o método
documents.create
para criar um documento. - Use o método
documents.get
para recuperar o conteúdo de um documento especificado. - Use o método
documents.batchUpdate
para executar atomicamente um conjunto de atualizações em um documento especificado.
Os métodos documents.get
e documents.batchUpdate
exigem um documentId
como parâmetro para especificar o documento de destino. O método documents.create
retorna uma instância do documento criado, do qual é possível ler o
documentId
. Para mais informações sobre solicitações e métodos de resposta da API Docs, consulte Solicitações e
respostas.
ID do documento
O documentId
é o identificador exclusivo do documento e pode ser derivado
do URL de um documento. É uma string específica que contém letras, números e
alguns caracteres especiais. Os IDs de documentos são estáveis, mesmo que o nome do documento
mude.
https://docs.google.com/document/d/DOCUMENT_ID/edit
A expressão regular a seguir pode ser usada para extrair o documentId
de um
URL do Google Docs:
/document/d/([a-zA-Z0-9-_]+)
Se você conhece a API Google Drive, o documentId
corresponde a id
no recurso files
.
Gerencie documentos no Google Drive
Os arquivos de documentos são armazenados no Google Drive, nosso serviço de armazenamento
baseado na nuvem. Embora a API Docs tenha métodos independentes, muitas vezes
é necessário usar métodos da API Google Drive para interagir com os arquivos
Docs de um usuário. Por exemplo, para copiar arquivos do Documentos, use o
método files.copy
da
API Drive. Para mais informações, consulte Copiar um documento
existente.
Por padrão, ao usar a API Docs, um novo documento é salvo na pasta raiz do usuário no Drive. Há opções para salvar um arquivo em uma pasta do Drive. Para mais informações, consulte Trabalhar com pastas do Google Drive.
Trabalhar com arquivos do Documentos
Para extrair um documento do Meu Drive de um usuário, muitas vezes
é necessário usar o método
files.list
do Drive para extrair o
ID de um arquivo. Chamar o método sem parâmetros retorna uma lista de todos
os arquivos e pastas, incluindo os IDs, do usuário.
O tipo MIME de um documento indica o tipo e o formato dos dados. O formato de tipo MIME
para Docs é application/vnd.google-apps.document
. Para uma lista de
tipos MIME, consulte Tipos MIME compatíveis com o Google Workspace e o Google Drive.
Para pesquisar por tipo MIME apenas arquivos do Documentos no Meu Drive, adicione o seguinte filtro de string de consulta:
q: mimeType = 'application/vnd.google-apps.document'
Para mais informações sobre filtros de string de consulta, consulte Pesquisar arquivos e pastas.
Depois de saber o documentId
, use o método
documents.get
para recuperar
uma instância completa do documento especificado. Para mais informações, consulte
Solicitações e respostas.
Para exportar o conteúdo de bytes de um documento do Google Workspace, use o método
files.export
do Drive com o
documentId
do arquivo a ser exportado e o tipo MIME de
exportação correto. Para mais informações, consulte Exportar
conteúdo de documentos do Google Workspace.
Comparar os métodos Get
e List
A tabela a seguir descreve as diferenças entre os métodos do Drive e do Documentos e os dados retornados por cada um deles:
Operador | Descrição | Uso |
---|---|---|
drive.files.get |
Recebe os metadados de um arquivo por ID. Retorna uma instância do recurso files . |
Receba os metadados de um arquivo específico. |
drive.files.list |
Recupera os arquivos de um usuário. Retorna uma lista de arquivos. | Acesse uma lista de arquivos de usuário quando não tiver certeza de qual arquivo precisa modificar. |
docs.documents.get |
Recebe a versão mais recente do documento especificado, incluindo toda a formatação e texto. Retorna uma instância do recurso documents . |
Receba o documento de um ID específico. |
Fluxo de trabalho de criação de documentos
Criar e preencher um novo documento é simples, já que não há conteúdo existente para se preocupar e não há colaboradores que possam alterar o estado do documento. Conceitualmente, isso funciona conforme mostrado no diagrama de sequência a seguir:
Na Figura 1, um usuário que interage com o recurso
documents
tem o seguinte
fluxo de informações:
- Um app chama o
método
documents.create
em um servidor da Web. - O servidor da Web envia uma resposta HTTP que contém uma instância do
documento criado como um recurso
documents
. - Opcionalmente, o app chama o método
documents.batchUpdate
para executar atomicamente um conjunto de solicitações de edição para preencher o documento com dados. - O servidor da Web envia uma resposta HTTP. Alguns métodos
documents.batchUpdate
fornecem um corpo de resposta com informações sobre as solicitações aplicadas, enquanto outros mostram uma resposta vazia.
Fluxo de trabalho de atualização de documentos
Atualizar um documento existente é mais complexo. Antes de fazer chamadas significativas para atualizar um documento, você precisa conhecer o estado atual dele: quais elementos o compõem, qual conteúdo está nesses elementos e a ordem dos elementos no documento. O diagrama de sequência a seguir mostra como isso funciona:
Na Figura 2, um usuário que interage com o recurso documents
tem o
seguinte fluxo de informações:
- Um app chama o método
documents.get
em um servidor da Web, com odocumentId
do arquivo a ser encontrado. - O servidor da Web envia uma resposta HTTP que contém uma instância do
documento especificado como um recurso
documents
. O JSON retornado contém o conteúdo do documento, a formatação e outros recursos. - O app analisa o JSON para que o usuário possa determinar qual conteúdo ou formato atualizar.
- O app chama o método
documents.batchUpdate
para executar atomicamente um conjunto de solicitações de edição para atualizar o documento. - O servidor da Web envia uma resposta HTTP. Alguns métodos
documents.batchUpdate
fornecem um corpo de resposta com informações sobre as solicitações aplicadas, enquanto outros mostram uma resposta vazia.
Este diagrama não considera fluxos de trabalho em que atualizações simultâneas de outros colaboradores são feitas no mesmo documento. Para mais informações, consulte a seção de práticas recomendadas Planejar a colaboração.
Temas relacionados
- Estrutura de um documento do Documentos Google
- Solicitações e respostas
- Regras e comportamento de edição estrutural
- Práticas recomendadas para os melhores resultados