Solicitações e respostas

Este guia apresenta os principais métodos de solicitação e resposta que compõem a API Documentos Google e como atualizar um documento em lotes.

É possível invocar a API Google Docs usando uma solicitação HTTP ou uma invocação de método em uma biblioteca de cliente específica da linguagem. Eles são basicamente equivalentes.

A API Google Docs retorna uma resposta HTTP, que geralmente inclui o resultado da invocação da solicitação. Ao usar uma biblioteca de cliente para fazer solicitações, as respostas são retornadas de maneira específica para cada idioma.

Métodos de solicitação

A API Docs oferece suporte aos seguintes métodos:

  • documents.create: crie um documento em branco no Documentos Google.
  • documents.get: retorna uma instância completa do documento especificado. É possível analisar o JSON retornado para extrair o conteúdo do documento, a formatação e outros recursos.
  • documents.batchUpdate: envie uma lista de solicitações de edição para aplicar de forma atômica ao documento e retorne uma lista de resultados.

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 documentId, consulte ID do documento.

Atualizações em lote

O método documents.batchUpdate usa uma lista de objetos request, cada um especificando uma única solicitação a ser executada. Por exemplo, formate um parágrafo e adicione uma imagem inline. Cada solicitação é validada antes de ser aplicada, e as solicitações são processadas de acordo com a ordem em que aparecem na solicitação em lote.

Todas as solicitações na atualização em lote são aplicadas atomicamente. Ou seja, se uma solicitação não for válida, a atualização inteira não terá sucesso e nenhuma das mudanças (potencialmente dependentes) será aplicada.

Alguns métodos documents.batchUpdate fornecem respostas com informações sobre as solicitações aplicadas. Esses métodos retornam um corpo de resposta que contém uma lista de objetos response. Outras solicitações não precisam retornar informações e mostrar uma resposta vazia. Os objetos na lista de respostas ocupam a mesma ordem de índice da solicitação correspondente.

Um padrão comum para fazer solicitações em lote é este:

requests = []
requests.append(first request)
requests.append(second request)
...

body = ... & requests & ...

...batchUpdate(body)

Consulte as práticas recomendadas para solicitações em lote para saber como agrupar suas chamadas da API Docs e a documentação de referência documents.batchUpdate para tipos de solicitação e resposta.

Operações de atualização em lote

Há vários tipos de solicitações de atualização em lote. Confira um detalhamento dos tipos de solicitação, agrupados em diferentes categorias.

Objeto ADICIONAR / INSERIR ATUALIZAR / SUBSTITUIR EXCLUIR
Texto InsertTextRequest ReplaceAllTextRequest
Estilos CreateParagraphBulletsRequest UpdateTextStyleRequest
UpdateParagraphStyleRequest
UpdateTableCellStyleRequest
UpdateTableRowStyleRequest
UpdateDocumentStyleRequest
UpdateSectionStyleRequest
DeleteParagraphBulletsRequest
Intervalos nomeados CreateNamedRangeRequest ReplaceNamedRangeContentRequest DeleteNamedRangeRequest
DeleteContentRangeRequest
Imagens InsertInlineImageRequest ReplaceImageRequest
Tabelas InsertTableRequest
InsertTableRowRequest
InsertTableColumnRequest
UpdateTableColumnPropertiesRequest
MergeTableCellsRequest
UnmergeTableCellsRequest
PinTableHeaderRowsRequest
DeleteTableRowRequest
DeleteTableColumnRequest
Objetos de página (incluindo cabeçalhos e rodapés) InsertPageBreakRequest
CreateHeaderRequest
CreateFooterRequest
CreateFootnoteRequest
InsertSectionBreakRequest
DeletePositionedObjectRequest
DeleteHeaderRequest
DeleteFooterRequest