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 apresentações de slides automaticamente com base nos dados fornecidos pelo usuário e pelo sistema. Por exemplo, você pode usar os 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 acabadas em uma fração do tempo que seria necessário para criá-las manualmente.

Visão geral da API

A coleção 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á criar e atualizar 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 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 para conferir um exemplo simples de como usar a API.

A estrutura de uma apresentação

Uma apresentação na API Slides é composta por 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 das Planilhas Google:

/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 objeto.

Pages

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

Mestrado As páginas mestras de slides 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 essa página mestra. Os elementos da página que precisam aparecer em todos os slides devem ser adicionados ao modelo. A maioria das apresentações tem um mestre, mas algumas podem ter vários ou nenhum.
Layouts Os layouts servem como modelo para a organização dos elementos da página por default nos slides. Cada layout é associado a um mestre.
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 for criado.
Observações Essas páginas contêm o conteúdo para os folhetos de apresentação, incluindo uma forma que contém as anotações do orador do slide. Cada slide tem uma página de anotações correspondente. Só o texto na forma das anotações do apresentador pode ser modificado com a API Slides.
Modelos de anotações As páginas mestras de anotações definem os estilos de texto e os elementos de página padrão para todas as páginas de anotações. As páginas de anotações são de leitura somente na API Slides.

Elementos de página

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

Grupo Um conjunto de elementos da página que são tratados como uma unidade individual. Eles podem ser movidos, redimensionados e girados juntos.
Forma 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 para criar slides.
Imagem Um gráfico importado para as 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 mais como uma forma.
SheetsChart Um gráfico importado para as Apresentações Google das Planilhas Google.

Atualizações em lote

O método batchUpdate permite atualizar muitos 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 os tipos de solicitações, agrupadas em diferentes categorias.

Como trabalhar com o 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í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 de resposta, que contém uma resposta para cada solicitação. Cada resposta ocupa o mesmo índice da solicitação correspondente. Para solicitações sem resposta aplicável, a resposta nesse índice fica 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 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ê pode especificar um ID de objeto 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 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 acompanhar objetos por um período mais longo, não use o ID do objeto, porque ele pode mudar. Consulte a próxima seção para mais detalhes.

Como acompanhar 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 de objetos.

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

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. Portanto, 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().