Google Slides
Authentication: OAuth. See Magic Link for the runtime auth flow, or Application credentials to bring your own OAuth app.
Sample use cases
- Generate a 5-slide deck from this PRD using the
Salestemplate. - Find decks in the
Marketingshared drive last edited in the past 30 days. - Update the title slide of the
Pitch Deckto use today’s date.
Available Tools
Insert an image from a URL onto a page. The URL must be publicly accessible.
Insert a video (YouTube or Google Drive) onto a page. Requires video ID and source type.
Replace an existing image with a new one from a URL. Maintains position and size.
Create a line or connector between two points. Supports straight, bent, and curved lines.
Insert a chart from Google Sheets. Requires spreadsheet_id and chart_id. Can be linked or static.
Create a new Google Slides presentation with optional title. Returns the presentation ID and metadata.
Get a Google Slides presentation by ID. Returns full structure including slides, masters, and layouts.
Apply multiple updates atomically to a presentation. Supports 43 request types including slides, shapes, text, tables.
Create a shape on a page. Supports 100+ shape types including rectangles, arrows, flowchart elements.
Create a text box on a page. A text box is a shape optimized for text content with optional initial text.
Update shape visual properties like fill color, outline, and content alignment.
Delete any page element (shape, image, table, etc.) by its object ID. This action cannot be undone.
Create a new slide in a presentation with optional layout and position. Returns the slide object ID.
Duplicate an existing slide. The copy includes all elements and can be positioned at a specific index.
Delete a slide from a presentation by its object ID. This action cannot be undone.
Reorder slides by moving them to a new position. Provide slide IDs in the desired order.
Get detailed information about a specific page including all elements. Works for slides, masters, layouts.
Get a thumbnail image of a page. Returns a URL to download the image (PNG format).
Create a table on a page with specified rows and columns. Use insert_text to add content to cells.
Insert rows into a table at a specific index. New rows copy structure from adjacent row.
Insert columns into a table at a specific index. New columns copy structure from adjacent column.
Delete a row from a table by index. Content in the row is removed.
Delete a column from a table by index. Content in the column is removed.
Merge a rectangular range of table cells. Content is combined into the top-left cell.
Update table cell properties like background color and content alignment.
Insert text into a shape or table cell at a specific index. Use cell_location for table cells.
Delete text from a shape or table cell. Specify start_index (inclusive) and end_index (exclusive).
Find and replace all occurrences of text in a presentation. Optional case-sensitivity and page filtering.
Apply text formatting like bold, italic, font, size, and color to a text range.
Update paragraph formatting like alignment, line spacing, and indentation for a text range.
Add bullet or numbered list formatting to paragraphs in a text range. Choose from 15 bullet presets.
Remove bullet/list formatting from a paragraph text range. Inverse of create_paragraph_bullets. For tables, pass cell_location.
Group multiple page elements on the same page so they move and transform together. Returns the new group’s object ID.
Refresh a linked Google Sheets chart embedded in the presentation so it reflects the latest data from the source spreadsheet.
Replace every shape whose text matches contains_text with an image. Useful for template-style image fill-in (e.g. }).
Replace every shape whose text matches contains_text with a Google Sheets chart. Use linking_mode=LINKED to keep the chart in sync with the source she…
Ungroup one or more groups, leaving their child elements as standalone elements on the page.
Set an image’s outline (color, weight, dash style). Pass at least one outline_* property; only fields you set are updated.
Style a line: fill color, weight (points), dash style, and start/end arrowheads. Pass only the fields you want changed.
Update a page element’s affine transform (position, size, rotation). Applies to shapes, images, text boxes, lines, tables, and groups.
Set a slide’s background to a solid color or a stretched image. Pass exactly one of background_fill_color_rgb or background_image_url.
Update slide-level properties: assign a layout or mark slide as skipped during presentation. Pass at least one of layout_object_id or is_skipped.
Style table borders (color, weight, dash) at a position (ALL, OUTER, INNER, TOP, BOTTOM, LEFT, RIGHT, INNER_HORIZONTAL, INNER_VERTICAL).
Set the width of one or more table columns in EMU (914400 EMU = 1 inch).
Set the minimum height of one or more table rows in EMU (914400 EMU = 1 inch). Rows may grow beyond this if their content requires it.
Update a video’s playback options (auto_play, start/end seconds, mute) and outline (color, weight, dash style)
Set the alt text title and/or description on any page element (shape, image, table, video, line)
Change the stacking (z-) order of one or more page elements on the same page. Operations: BRING_TO_FRONT, SEND_TO_BACK, BRING_FORWARD, SEND_BACKWARD
Unmerge a previously merged rectangular range of table cells, restoring the individual cells