Integração Google Slides
Visão Geral
Seção intitulada “Visão Geral”Permita que seus agentes criem, editem e gerenciem apresentações do Google Slides. Crie apresentações, atualize conteúdo, importe dados do Google Sheets, gerencie páginas e miniaturas, e simplifique seus fluxos de trabalho de apresentações com automação alimentada por IA.
Pré-requisitos
Seção intitulada “Pré-requisitos”Antes de usar a integração Google Slides, certifique-se de ter:
- Uma conta CrewAI AMP com assinatura ativa
- Uma conta Google com acesso ao Google Slides
- Conectado sua conta Google através da página de Integrações
Configurando a Integração Google Slides
Seção intitulada “Configurando a Integração Google Slides”1. Conecte sua Conta Google
Seção intitulada “1. Conecte sua Conta Google”- Navegue para Integrações CrewAI AMP
- Encontre Google Slides na seção de Integrações de Autenticação
- Clique em Conectar e complete o fluxo OAuth
- Conceda as permissões necessárias para acesso a apresentações, planilhas e drive
- Copie seu Token Enterprise das Configurações de Integração
2. Instale o Pacote Necessário
Seção intitulada “2. Instale o Pacote Necessário”uv add crewai-tools3. Configuração de variável de ambiente
Seção intitulada “3. Configuração de variável de ambiente”export CREWAI_PLATFORM_INTEGRATION_TOKEN="seu_enterprise_token"Ou adicione ao seu arquivo .env:
CREWAI_PLATFORM_INTEGRATION_TOKEN=seu_enterprise_tokenAções Disponíveis
Seção intitulada “Ações Disponíveis”google_slides/create_blank_presentation
Descrição: Cria uma apresentação em branco sem conteúdo.
Parâmetros:
title(string, obrigatório): O título da apresentação.
google_slides/get_presentation_metadata
Descrição: Obter metadados leves de uma apresentação (título, número de slides, IDs dos slides). Use isso primeiro antes de recuperar o conteúdo completo.
Parâmetros:
presentationId(string, obrigatório): O ID da apresentação a ser recuperada.
google_slides/get_presentation_text
Descrição: Extrair todo o conteúdo de texto de uma apresentação. Retorna IDs dos slides e texto de formas e tabelas apenas (sem formatação).
Parâmetros:
presentationId(string, obrigatório): O ID da apresentação.
google_slides/get_presentation
Descrição: Recupera uma apresentação por ID.
Parâmetros:
presentationId(string, obrigatório): O ID da apresentação a ser recuperada.fields(string, opcional): Os campos a incluir na resposta. Use isso para melhorar o desempenho retornando apenas os dados necessários.
google_slides/batch_update_presentation
Descrição: Aplica atualizações, adiciona conteúdo ou remove conteúdo de uma apresentação.
Parâmetros:
presentationId(string, obrigatório): O ID da apresentação a ser atualizada.requests(array, obrigatório): Uma lista de atualizações a aplicar à apresentação. Cada item é um objeto representando uma solicitação.writeControl(object, opcional): Fornece controle sobre como as solicitações de escrita são executadas. ContémrequiredRevisionId(string).
google_slides/get_slide_text
Descrição: Extrair conteúdo de texto de um único slide. Retorna apenas texto de formas e tabelas (sem formatação ou estilo).
Parâmetros:
presentationId(string, obrigatório): O ID da apresentação.pageObjectId(string, obrigatório): O ID do slide/página para obter o texto.
google_slides/get_page
Descrição: Recupera uma página específica por seu ID.
Parâmetros:
presentationId(string, obrigatório): O ID da apresentação.pageObjectId(string, obrigatório): O ID da página a ser recuperada.
google_slides/get_thumbnail
Descrição: Gera uma miniatura da página.
Parâmetros:
presentationId(string, obrigatório): O ID da apresentação.pageObjectId(string, obrigatório): O ID da página para geração de miniatura.
google_slides/create_slide
Descrição: Adicionar um slide em branco adicional a uma apresentação. Novas apresentações já possuem um slide em branco - verifique get_presentation_metadata primeiro. Para slides com áreas de título/corpo, use create_slide_with_layout.
Parâmetros:
presentationId(string, obrigatório): O ID da apresentação.insertionIndex(integer, opcional): Onde inserir o slide (baseado em 0). Se omitido, adiciona no final.
google_slides/create_slide_with_layout
Descrição: Criar um slide com layout predefinido contendo áreas de espaço reservado para título, corpo, etc. Melhor que create_slide para conteúdo estruturado. Após criar, use get_page para encontrar os IDs de espaço reservado, depois insira texto neles.
Parâmetros:
presentationId(string, obrigatório): O ID da apresentação.layout(string, obrigatório): Tipo de layout. Um de:BLANK,TITLE,TITLE_AND_BODY,TITLE_AND_TWO_COLUMNS,TITLE_ONLY,SECTION_HEADER,ONE_COLUMN_TEXT,MAIN_POINT,BIG_NUMBER. TITLE_AND_BODY é melhor para título+descrição. TITLE para slides apenas com título. SECTION_HEADER para divisores de seção.insertionIndex(integer, opcional): Onde inserir (baseado em 0). Se omitido, adiciona no final.
google_slides/create_text_box
Descrição: Criar uma caixa de texto em um slide com conteúdo. Use para títulos, descrições, parágrafos - não para tabelas. Opcionalmente especifique posição (x, y) e tamanho (width, height) em unidades EMU (914400 EMU = 1 polegada).
Parâmetros:
presentationId(string, obrigatório): O ID da apresentação.slideId(string, obrigatório): O ID do slide para adicionar a caixa de texto.text(string, obrigatório): O conteúdo de texto da caixa de texto.x(integer, opcional): Posição X em EMU (914400 = 1 polegada). Padrão: 914400 (1 polegada da esquerda).y(integer, opcional): Posição Y em EMU (914400 = 1 polegada). Padrão: 914400 (1 polegada do topo).width(integer, opcional): Largura em EMU. Padrão: 7315200 (~8 polegadas).height(integer, opcional): Altura em EMU. Padrão: 914400 (~1 polegada).
google_slides/delete_slide
Descrição: Remover um slide de uma apresentação. Use get_presentation primeiro para encontrar o ID do slide.
Parâmetros:
presentationId(string, obrigatório): O ID da apresentação.slideId(string, obrigatório): O ID do objeto do slide a excluir. Obtenha de get_presentation.
google_slides/duplicate_slide
Descrição: Criar uma cópia de um slide existente. A duplicata é inserida imediatamente após o original.
Parâmetros:
presentationId(string, obrigatório): O ID da apresentação.slideId(string, obrigatório): O ID do objeto do slide a duplicar. Obtenha de get_presentation.
google_slides/move_slides
Descrição: Reordenar slides movendo-os para uma nova posição. Os IDs dos slides devem estar na ordem atual da apresentação (sem duplicatas).
Parâmetros:
presentationId(string, obrigatório): O ID da apresentação.slideIds(array de strings, obrigatório): Array de IDs dos slides a mover. Obrigatoriamente na ordem atual da apresentação.insertionIndex(integer, obrigatório): Posição de destino (baseado em 0). 0 = início, número de slides = final.
google_slides/insert_youtube_video
Descrição: Incorporar um vídeo do YouTube em um slide. O ID do vídeo é o valor após “v=” nas URLs do YouTube (ex: para youtube.com/watch?v=abc123, use “abc123”).
Parâmetros:
presentationId(string, obrigatório): O ID da apresentação.slideId(string, obrigatório): O ID do slide para adicionar o vídeo. Obtenha de get_presentation.videoId(string, obrigatório): O ID do vídeo do YouTube (o valor após v= na URL).
google_slides/insert_drive_video
Descrição: Incorporar um vídeo do Google Drive em um slide. O ID do arquivo pode ser encontrado na URL do arquivo no Drive.
Parâmetros:
presentationId(string, obrigatório): O ID da apresentação.slideId(string, obrigatório): O ID do slide para adicionar o vídeo. Obtenha de get_presentation.fileId(string, obrigatório): O ID do arquivo do Google Drive do vídeo.
google_slides/set_slide_background_image
Descrição: Definir uma imagem de fundo para um slide. A URL da imagem deve ser publicamente acessível.
Parâmetros:
presentationId(string, obrigatório): O ID da apresentação.slideId(string, obrigatório): O ID do slide para definir o fundo. Obtenha de get_presentation.imageUrl(string, obrigatório): URL publicamente acessível da imagem a usar como fundo.
google_slides/create_table
Descrição: Criar uma tabela vazia em um slide. Para criar uma tabela com conteúdo, use create_table_with_content.
Parâmetros:
presentationId(string, obrigatório): O ID da apresentação.slideId(string, obrigatório): O ID do slide para adicionar a tabela. Obtenha de get_presentation.rows(integer, obrigatório): Número de linhas na tabela.columns(integer, obrigatório): Número de colunas na tabela.
google_slides/create_table_with_content
Descrição: Criar uma tabela com conteúdo em uma única ação. Forneça o conteúdo como uma matriz 2D onde cada array interno é uma linha. Exemplo: [[“Cabeçalho1”, “Cabeçalho2”], [“Linha1Col1”, “Linha1Col2”]].
Parâmetros:
presentationId(string, obrigatório): O ID da apresentação.slideId(string, obrigatório): O ID do slide para adicionar a tabela. Obtenha de get_presentation.rows(integer, obrigatório): Número de linhas na tabela.columns(integer, obrigatório): Número de colunas na tabela.content(array, obrigatório): Conteúdo da tabela como matriz 2D. Cada array interno é uma linha. Exemplo: [[“Ano”, “Receita”], [“2023”, “$10M”]].
google_slides/import_data_from_sheet
Descrição: Importa dados de uma planilha do Google para uma apresentação.
Parâmetros:
presentationId(string, obrigatório): O ID da apresentação.sheetId(string, obrigatório): O ID da planilha do Google para importar.dataRange(string, obrigatório): O intervalo de dados a importar da planilha.
google_slides/upload_file_to_drive
Descrição: Faz upload de um arquivo para o Google Drive associado à apresentação.
Parâmetros:
file(string, obrigatório): Os dados do arquivo a fazer upload.presentationId(string, obrigatório): O ID da apresentação para vincular o arquivo carregado.
google_slides/link_file_to_presentation
Descrição: Vincula um arquivo no Google Drive a uma apresentação.
Parâmetros:
presentationId(string, obrigatório): O ID da apresentação.fileId(string, obrigatório): O ID do arquivo a vincular.
google_slides/get_all_presentations
Descrição: Lista todas as apresentações acessíveis ao usuário.
Parâmetros:
pageSize(integer, opcional): O número de apresentações a retornar por página.pageToken(string, opcional): Um token para paginação.
google_slides/delete_presentation
Descrição: Exclui uma apresentação por ID.
Parâmetros:
presentationId(string, obrigatório): O ID da apresentação a ser excluída.
Exemplos de Uso
Seção intitulada “Exemplos de Uso”Configuração Básica do Agente Google Slides
Seção intitulada “Configuração Básica do Agente Google Slides”from crewai import Agent, Task, Crew
# Crie um agente com capacidades do Google Slidesslides_agent = Agent( role="Criador de Apresentações", goal="Criar e gerenciar apresentações do Google Slides de forma eficiente", backstory="Um assistente IA especializado em design de apresentações e gerenciamento de conteúdo.", apps=['google_slides'] # Todas as ações do Google Slides estarão disponíveis)
# Tarefa para criar uma nova apresentaçãocreate_presentation_task = Task( description="Criar uma nova apresentação em branco intitulada 'Relatório de Vendas Trimestral'", agent=slides_agent, expected_output="Nova apresentação 'Relatório de Vendas Trimestral' criada com sucesso")
# Execute a tarefacrew = Crew( agents=[slides_agent], tasks=[create_presentation_task])
crew.kickoff()Atualizando Conteúdo da Apresentação
Seção intitulada “Atualizando Conteúdo da Apresentação”from crewai import Agent, Task, Crew
# Crie um agente focado em atualizar apresentaçõesupdater_agent = Agent( role="Atualizador de Apresentações", goal="Atualizar e modificar apresentações existentes do Google Slides", backstory="Um assistente IA habilidoso em fazer atualizações precisas no conteúdo de apresentações.", apps=['google_slides/batch_update_presentation'])
# Tarefa para atualizar uma apresentaçãoupdate_presentation_task = Task( description="Atualizar a apresentação com ID 'your_presentation_id' para adicionar uma nova caixa de texto no primeiro slide com o conteúdo 'Destaques Principais'.", agent=updater_agent, expected_output="Apresentação atualizada com novo conteúdo.")
crew = Crew( agents=[updater_agent], tasks=[update_presentation_task])
crew.kickoff()Importando Dados e Gerenciando Arquivos
Seção intitulada “Importando Dados e Gerenciando Arquivos”from crewai import Agent, Task, Crew
# Crie um agente para importação de dados e gerenciamento de arquivosdata_presenter = Agent( role="Apresentador de Dados", goal="Importar dados para apresentações e gerenciar arquivos vinculados", backstory="Um assistente IA que integra dados de várias fontes em apresentações.", apps=['google_slides/import_data_from_sheet', 'google_slides/upload_file_to_drive'])
# Tarefa para importar dados de uma planilhaimport_data_task = Task( description="Importar dados da planilha do Google 'your_sheet_id' intervalo 'A1:C10' para a apresentação 'your_presentation_id'.", agent=data_presenter, expected_output="Dados importados da planilha do Google para a apresentação.")
crew = Crew( agents=[data_presenter], tasks=[import_data_task])
crew.kickoff()Solução de Problemas
Seção intitulada “Solução de Problemas”Problemas Comuns
Seção intitulada “Problemas Comuns”Erros de Autenticação
- Certifique-se de que sua conta Google tenha as permissões necessárias para acesso ao Google Slides e Google Drive.
- Verifique se a conexão OAuth inclui todos os escopos necessários.
Problemas de ID de Apresentação/Página
- Verifique novamente os IDs de apresentação e IDs de objeto de página para correção.
- Certifique-se de que a apresentação ou página existe e está acessível.
Formatação de Solicitação de Atualização em Lote
- Ao usar
batch_update_presentation, certifique-se de que o arrayrequestsesteja formatado corretamente de acordo com a documentação da API do Google Slides. - Atualizações complexas frequentemente requerem estruturas JSON específicas para cada tipo de solicitação (ex:
createText,insertShape).
Problemas de Upload/Vinculação de Arquivos
- Certifique-se de que o conteúdo do
fileesteja fornecido corretamente paraupload_file_to_drive. - Verifique se o
fileIdestá correto ao vincular arquivos a uma apresentação. - Verifique as permissões do Google Drive para acesso a arquivos.
Obtendo Ajuda
Seção intitulada “Obtendo Ajuda”Precisa de Ajuda?
Entre em contato com nossa equipe de suporte para assistência com configuração ou solução de problemas da integração Google Slides.