Introdução

Com a API Google Slides, é possível criar e modificar apresentações Google.

Os apps podem se integrar à API Apresentações Google para criar apresentações incríveis automaticamente com base em dados fornecidos pelo usuário e pelo sistema. Por exemplo, é possível usar detalhes de clientes de um banco de dados e combiná-los com modelos pré-criados e opções de configuração selecionadas para criar apresentações finalizadas em uma fração do tempo que levaria para criá-las manualmente.

Visão geral da API

A coleção presentations oferece métodos que permitem receber e atualizar elementos na apresentação.

A maior parte do seu trabalho com a API Slides provavelmente será criar e atualizar apresentações. Para isso, use o método batchUpdate, que recebe uma lista de objetos Request para realizar ações como:

  • Criar slides
  • Adicionar elementos aos slides, como formas ou tabelas
  • Inserir, mudar e remover texto
  • Aplicar transformações a elementos
  • Mudar a ordem dos slides

Consulte Atualizações em lote para mais detalhes. Consulte os guias de início rápido para ver um exemplo simples de como usar a API.

A estrutura de uma apresentação

Uma apresentação na API Slides é composta de páginas, que contêm elementos de página.

O ID de uma apresentação pode ser derivado do URL:

https://docs.google.com/presentation/d/presentationId/edit

O ID da apresentação é uma string que contém letras, números e alguns caracteres especiais. A seguinte expressão regular pode ser usada para extrair o ID da apresentação de um URL do Google Sheets:

/presentation/d/([a-zA-Z0-9-_]+)

Se você conhece a API Drive, o presentationId corresponde ao ID do recurso File.

As páginas e os elementos delas são identificados por IDs de objetos.

Páginas

O Google Apresentações tem os seguintes tipos de páginas:

Mestrado Os modelos de slide definem os estilos de texto, o plano de fundo e os elementos de página padrão que aparecem em todos os slides que usam esse modelo. Os elementos da página que precisam aparecer em todos os slides devem ser adicionados ao modelo. A maioria das apresentações tem um modelo, mas algumas podem ter vários ou nenhum.
Layouts Os layouts servem como um modelo de como os elementos da página serão organizados por padrão em slides que usam um layout. Cada layout está associado a um modelo.
Apresentações Essas páginas contêm o conteúdo que você está apresentando ao público. A maioria dos slides é baseada em um modelo e um layout. É possível especificar qual layout usar para cada slide quando ele é criado.
Observações Essas páginas contêm o conteúdo dos folhetos de apresentação, incluindo uma forma com as observações do apresentador do slide. Cada slide tem uma página de observações correspondente. Só é possível modificar o texto na forma das anotações do apresentador com a API Slides.
Modelos de observações Os modelos de anotações definem os estilos de texto e elementos de página padrão para todas as páginas de anotações. Os modelos de anotações são somente leitura na API Slides.

Elementos de página

Os elementos de página são os componentes visuais colocados nas páginas. A API expõe vários tipos de elementos de página:

Grupo Um conjunto de elementos da página que são tratados como uma unidade individual. Elas podem ser movidas, dimensionadas e giradas juntas.
Forma Um objeto visual simples, como retângulos, elipses e caixas de texto. As formas podem conter texto, então são os elementos de página mais comuns para criar slides.
Imagem Um gráfico importado para as Apresentações Google.
Vídeo Um vídeo importado para o Apresentações.
Linha Uma linha, curva ou conector visual.
Tabela Uma grade de conteúdo.
WordArt Um elemento de texto visual que se comporta mais como uma forma.
SheetsChart Um gráfico importado para as Apresentações Google do app Planilhas Google.

Atualizações em lote

O método batchUpdate permite atualizar vários aspectos de uma apresentação. As mudanças são agrupadas em um lote para que, se uma solicitação falhar, nenhuma das outras mudanças (potencialmente dependentes) seja gravada.

O método batchUpdate funciona usando um ou mais objetos Request, cada um especificando um único tipo de solicitação a ser realizada. Há muitos tipos diferentes de solicitações. Confira uma análise dos tipos de solicitações, agrupadas em diferentes categorias.

Como trabalhar com o app Apresentações: CreateSlideRequest
UpdateSlidesPositionRequest
DuplicateObjectRequest
UpdatePagePropertiesRequest
DeleteObjectRequest
Como trabalhar com elementos da página: CreateShapeRequest
CreateLineRequest
UpdatePageElementTransformRequest
UpdateShapePropertiesRequest
DuplicateObjectRequest
DeleteObjectRequest
Como trabalhar com tabelas: CreateTableRequest
InsertTableRowsRequest
InsertTableColumnsRequest
DeleteTableRowRequest
DeleteTableColumnRequest
UpdateTableRowPropertiesRequest
UpdateTableColumnPropertiesRequest
UpdateTableBorderPropertiesRequest
UpdateTableCellPropertiesRequest
MergeTableCellsRequest
UnmergeTableCellsRequest
DeleteObjectRequest
Como trabalhar com gráficos: CreateSheetsChartRequest
RefreshSheetsChartRequest
ReplaceAllShapesWithSheetsChartRequest
DeleteObjectRequest
Como trabalhar com imagens e vídeos: CreateImageRequest
CreateVideoRequest
UpdateImagePropertiesRequest
UpdateVideoPropertiesRequest
ReplaceAllShapesWithImageRequest
DuplicateObjectRequest
DeleteObjectRequest
Como trabalhar com texto: InsertTextRequest
DeleteTextRequest
ReplaceAllTextRequest
CreateParagraphBulletsRequest
DeleteParagraphBulletsRequest
UpdateTextStyleRequest
UpdateParagraphStyleRequest

O método batchUpdate retorna um corpo da resposta, que contém uma Response para cada solicitação. Cada resposta ocupa o mesmo índice da solicitação correspondente. Para solicitações sem uma resposta aplicável, a resposta nesse índice estará vazia. As várias solicitações Create normalmente têm respostas para que você saiba o ID do objeto recém-adicionado.

Como trabalhar com IDs de objetos

Uma apresentação na API Slides é composta por páginas e elementos de página. Esses objetos incluem uma string de ID do objeto que é exclusiva em uma apresentação.

Especificar IDs de objetos na criação

Ao criar páginas ou elementos de página usando o método batchUpdate, é possível especificar um ID de objeto para o novo objeto. Isso permite criar e modificar um objeto na mesma solicitação batchUpdate, minimizando o número de chamadas para a API Slides e reduzindo o
uso de cota.

Recomendamos gerar um ID de objeto aleatório na maioria dos casos. Por exemplo, se você estiver usando Java, java.util.UUID.randomUUID().toString() vai funcionar bem.

Quando o aplicativo quiser rastrear objetos por um período mais longo, não confie no ID do objeto, porque ele pode mudar. Consulte a seção a seguir para mais detalhes.

Como rastrear objetos sem usar o ID do objeto

Quando você faz uma solicitação da API Slides, o ID do objeto normalmente é preservado. Todas as exceções são mencionadas na documentação de referência do método. Fazer uma cópia de uma apresentação inteira com a API Drive também preserva os IDs dos objetos.

No entanto, não é possível depender de um ID de objeto que não foi alterado depois que uma apresentação é modificada na interface do usuário do Apresentações. Por exemplo, se alguém usar a interface do usuário do Apresentações para copiar e colar um elemento da página e depois excluir o original, o elemento da página terá um novo ID exclusivo, e o ID que você forneceu anteriormente pela API será perdido. Por isso, não recomendamos que você armazene IDs de objetos no armazenamento do aplicativo. Em vez disso, encontre objetos na apresentação pelo conteúdo do texto ou texto alternativo.

As apresentações recém-criadas normalmente usam um conjunto consistente de IDs para slides, modelos e caixas de texto padrão. Esses IDs estão sujeitos a mudanças ao longo do tempo, então não recomendamos que você dependa desse recurso. Em vez disso, encontre os elementos que você quer modificar usando o objeto de apresentação retornado por chamadas para create() ou get().