Introdução

A API Google Slides permite criar e modificar apresentações do Apresentações Google.

Os apps podem ser integrados à API Google Slides para criar automaticamente belos conjuntos de slides com base em dados fornecidos pelo usuário e pelo sistema. Por exemplo, é possível usar detalhes do cliente de um banco de dados e combiná-los com modelos predefinidos e opções de configuração selecionadas para criar apresentações finalizadas em uma fração do tempo necessário para criá-las manualmente.

Visão geral da API

O conjunto de apresentações fornece métodos que permitem acessar e atualizar elementos na apresentação.

A maior parte do seu trabalho com a API Slides provavelmente será a criação e a atualização de apresentações. Para fazer isso, use o método batchUpdate. Esse método recebe uma lista de objetos Request que permitem fazer coisas como:

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

Consulte Atualizações em lote para mais detalhes. Consulte os Guias de primeiros passos para ver um exemplo simples e completo de como usar a API.

A estrutura de uma apresentação

Uma apresentação da 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 expressão regular a seguir pode ser usada para extrair o ID da apresentação de um URL do app Planilhas Google:

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

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

Páginas e elementos de página são identificados por IDs de objeto.

Pages

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

Mestrado Os slides-mestre 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 mestre. Os elementos de página que precisam aparecer em todos os slides devem ser adicionados ao mestre. A maioria das apresentações tem um mestre, mas algumas podem ter vários ou nenhum.
Layouts Os layouts servem como modelo de como os elementos da página serão organizados por padrão nos slides usando um layout. Cada layout está associado a um mestre.
Apresentações Essas páginas incluem o conteúdo que você apresenta ao público. A maioria dos slides é baseada em um mestre e um layout. Você pode especificar qual layout usar para cada slide quando ele for criado.
Observações Essas páginas incluem o conteúdo dos folhetos das apresentações, incluindo uma forma com as anotações do apresentador do slide. Cada slide tem uma página de notas correspondente. Somente o texto na forma de anotações do apresentador pode ser modificado com a API Slides.
Mestres das notas Os mestres de notas definem os estilos de texto e elementos de página padrão para todas as páginas de notas. Na API Slides, os mestres de notas são somente leitura.

Elementos de página

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 de página tratados como uma unidade. Eles podem ser movidos, dimensionados e girados em conjunto.
Formato Um objeto visual simples, como retângulos, elipses e caixas de texto. As formas podem conter texto, por isso são os elementos de página mais comuns na criação de slides.
Imagem Uma imagem importada para o app Apresentações.
Vídeo Um vídeo importado para as Apresentações.
Linha Uma linha, curva ou conector visual.
Tabela Uma grade de conteúdo.
WordArt Um elemento de texto visual que se comporta de forma parecida com uma forma.
SheetsChart Um gráfico do Planilhas Google importado para o Apresentações.

Atualizações em lote

O método batchUpdate permite atualizar muitos aspectos de uma apresentação. As alterações são agrupadas em um lote para que, se uma solicitação falhar, nenhuma das outras alterações (possivelmente dependentes) serão gravadas.

O método batchUpdate aceita um ou mais objetos Request, cada um especificando um único tipo de solicitação a ser executada. Há muitos tipos diferentes de solicitações. Aqui está um detalhamento dos tipos de solicitações, agrupados em diferentes categorias.

Trabalhar com Apresentações: CreateSlideRequest
UpdateSlidesPositionRequest
DuplicateObjectRequest
UpdatePagePropertiesRequest
DeleteObjectRequest
Como trabalhar com elementos de 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ídeo: 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 de resposta, que contém uma Resposta para cada solicitação. Cada resposta ocupa o mesmo índice que a solicitação correspondente. Para solicitações sem resposta aplicável, a resposta no índice será 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 de objeto exclusiva em uma apresentação.

Como especificar IDs de objetos na criação

Ao criar páginas ou elementos de página usando o método batchUpdate, você tem a opção de especificar um ID para o novo objeto. Isso permite criar um objeto e modificá-lo na mesma solicitação batchUpdate, minimizando o número de chamadas para a API Slides e reduzindo o uso da 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() funcionará bem.

Quando seu aplicativo quiser acompanhar 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 de objeto

Quando você faz uma solicitação à Slides API, o ID do objeto normalmente é preservado. As exceções estão destacadas 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 de objeto.

No entanto, não é possível que o ID de um objeto não seja alterado depois que uma apresentação for alterada na interface do Apresentações. Por exemplo, se alguém usar a interface das Apresentações para copiar e colar um elemento de página e depois excluir o original, esse elemento terá um novo ID exclusivo, e o ID fornecido anteriormente pela API será perdido. Por isso, não recomendamos armazenar IDs de objetos no armazenamento do aplicativo. Em vez disso, você precisa encontrar objetos na apresentação pelo conteúdo de texto ou texto alternativo.

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