# Google Slides — Pipedream Connect

> Create, edit, and collaborate on presentations with the Google Slides app.

- API slug: `google_slides` (use in MCP headers and tool keys)
- Auth: OAuth (Pipedream-managed)
- Categories: File Storage
- Website: https://docs.google.com
- Managed OAuth scopes: `email` · `profile` · `https://www.googleapis.com/auth/drive` · `https://www.googleapis.com/auth/drive.file`
- This page (HTML): https://pipedream.com/apps/google-slides
- Tools: 24 actions · 1 trigger

## Connect via MCP (recommended)

- Endpoint: `https://remote.mcp.pipedream.net/v3`
- Headers: `Authorization: Bearer <token>` · `x-pd-project-id` · `x-pd-environment` · `x-pd-external-user-id` · `x-pd-app-slug: google_slides`

```ts
import { Client } from "@modelcontextprotocol/sdk/client/index.js"
import { StreamableHTTPClientTransport } from "@modelcontextprotocol/sdk/client/streamableHttp.js"
import { PipedreamClient } from "@pipedream/sdk"

const pd = new PipedreamClient({
  projectId: process.env.PIPEDREAM_PROJECT_ID!,
  clientId: process.env.PIPEDREAM_CLIENT_ID!,
  clientSecret: process.env.PIPEDREAM_CLIENT_SECRET!,
  projectEnvironment: "production",
})

const accessToken = await pd.rawAccessToken

const transport = new StreamableHTTPClientTransport(
  new URL("https://remote.mcp.pipedream.net/v3"),
  {
    requestInit: {
      headers: {
        Authorization: `Bearer ${accessToken}`,
        "x-pd-project-id": process.env.PIPEDREAM_PROJECT_ID!,
        "x-pd-environment": "production",
        "x-pd-external-user-id": "{external_user_id}", // any stable ID for this user in your system
        "x-pd-app-slug": "google_slides",
      },
    },
  },
)

const mcp = new Client({ name: "my-agent", version: "1.0.0" })
await mcp.connect(transport)

const { tools } = await mcp.listTools()

// e.g. run Create Image:
const result = await mcp.callTool({
  name: "google_slides-create-image",
  arguments: {
    presentationId: "Presentation",
    slideId: "Slide ID",
  },
})
```

Docs: [MCP guide](https://pipedream.com/docs/connect/mcp/developers.md)

## API proxy

For a Google Slides endpoint with no pre-built tool, the proxy forwards your request with the connected user's credentials attached.

```bash
# The path segment is the target URL, URL-safe base64 encoded:
# https://www.googleapis.com/oauth2/v1/userinfo

curl "https://api.pipedream.com/v1/connect/{project_id}/proxy/aHR0cHM6Ly93d3cuZ29vZ2xlYXBpcy5jb20vb2F1dGgyL3YxL3VzZXJpbmZv?external_user_id={external_user_id}&account_id=apn_xxxxxxx" \
  -H "Authorization: Bearer {access_token}" \
  -H "x-pd-environment: production"
```

Docs: [API proxy guide](https://pipedream.com/docs/connect/api-proxy.md)

## SDK

```ts
import { PipedreamClient } from "@pipedream/sdk"

const pd = new PipedreamClient({
  projectId: process.env.PIPEDREAM_PROJECT_ID!,
  clientId: process.env.PIPEDREAM_CLIENT_ID!,
  clientSecret: process.env.PIPEDREAM_CLIENT_SECRET!,
  projectEnvironment: "production",
})

const result = await pd.actions.run({
  id: "google_slides-create-image",
  externalUserId: "{external_user_id}", // any stable ID for this user in your system
  configuredProps: {
    google_slides: { authProvisionId: "apn_xxxxxxx" },
    presentationId: "Presentation",
    slideId: "Slide ID",
  },
})
```

Docs: [Managed auth guide](https://pipedream.com/docs/connect/managed-auth/quickstart.md) · [Tools guide](https://pipedream.com/docs/connect/components.md)

## Actions (24)

### `google_slides-create-image` — Create Image (Write)

Creates an image in a slide. See the documentation

Full schema: https://pipedream.com/apps/google-slides/actions/create-image.md

### `google_slides-create-page-element` — Create Page Element (Write)

Create a new page element in a slide. See the documentation

Full schema: https://pipedream.com/apps/google-slides/actions/create-page-element.md

### `google_slides-create-presentation` — Create Presentation (Write)

Create a blank presentation or duplicate an existing presentation. See the docs here

Full schema: https://pipedream.com/apps/google-slides/actions/create-presentation.md

### `google_slides-create-slide` — Create Slide (Write)

Create a new slide in a presentation. See the documentation

Full schema: https://pipedream.com/apps/google-slides/actions/create-slide.md

### `google_slides-create-table` — Create Table (Write)

Create a new table in a slide. See the documentation

Full schema: https://pipedream.com/apps/google-slides/actions/create-table.md

### `google_slides-delete-page-element` — Delete Page Element (Write)

Deletes a page element from a slide. See the documentation

Full schema: https://pipedream.com/apps/google-slides/actions/delete-page-element.md

### `google_slides-delete-slide` — Delete Slide (Write)

Deletes a slide from a presentation. See the documentation

Full schema: https://pipedream.com/apps/google-slides/actions/delete-slide.md

### `google_slides-delete-table-column` — Delete Table Column (Write)

Delete column from a table. See the documentation

Full schema: https://pipedream.com/apps/google-slides/actions/delete-table-column.md

### `google_slides-delete-table-row` — Delete Table Row (Write)

Delete row from a table. See the documentation

Full schema: https://pipedream.com/apps/google-slides/actions/delete-table-row.md

### `google_slides-find-presentation` — Find a Presentation (Read-only)

Find a presentation on Google Drive. See the docs here

Full schema: https://pipedream.com/apps/google-slides/actions/find-presentation.md

### `google_slides-format-paragraph` — Format Paragraph (Write)

Apply paragraph formatting (alignment, line spacing, indentation, bullets) to the text of a shape or table cell in a Google Slides presentation. Use Get Presentation to find the page element's object ID. See the documentation

Full schema: https://pipedream.com/apps/google-slides/actions/format-paragraph.md

### `google_slides-format-shape` — Format Shape (Write)

Set the background fill, outline, content alignment, or link of a shape in a Google Slides presentation. Use Get Presentation to find the shape's object ID. Shadow is not settable. See the documentation

Full schema: https://pipedream.com/apps/google-slides/actions/format-shape.md

### `google_slides-format-slide-background` — Format Slide Background (Write)

Set the background fill of a single slide in a Google Slides presentation. Use Get Presentation to find the slide's object ID. See the documentation

Full schema: https://pipedream.com/apps/google-slides/actions/format-slide-background.md

### `google_slides-format-table-cell` — Format Table Cell (Write)

Set the background fill or content alignment of table cells in a Google Slides presentation. Applies to a single cell, or to a block of cells via Row Span and Column Span. Omit the cell location to format the whole table. Use Get Presentation to find the table's object ID. See the documentation

Full schema: https://pipedream.com/apps/google-slides/actions/format-table-cell.md

### `google_slides-format-text` — Format Text (Write)

Apply character formatting (bold, italic, underline, strikethrough, font, size, color, link) to the text of a shape or table cell in a Google Slides presentation. Use Get Presentation to find the page element's object ID. See the documentation

Full schema: https://pipedream.com/apps/google-slides/actions/format-text.md

### `google_slides-get-presentation` — Get Presentation (Read-only)

Get a Google Slides presentation by its ID. Returns the presentation's metadata and structure (title, slides, masters, layouts, page size, etc.) according to requested fields. Use Find a Presentation first to resolve a presentation's name to its ID. See the documentation

Full schema: https://pipedream.com/apps/google-slides/actions/get-presentation.md

### `google_slides-insert-table-columns` — Insert Table Columns (Write)

Insert new columns into a table. See the documentation

Full schema: https://pipedream.com/apps/google-slides/actions/insert-table-columns.md

### `google_slides-insert-table-rows` — Insert Table Rows (Write)

Insert new rows into a table. See the documentation

Full schema: https://pipedream.com/apps/google-slides/actions/insert-table-rows.md

### `google_slides-insert-text` — Insert Text (Write)

Insert text into a shape. See the documentation

Full schema: https://pipedream.com/apps/google-slides/actions/insert-text.md

### `google_slides-insert-text-into-table` — Insert Text into Table (Write)

Insert text into a table cell. See the documentation

Full schema: https://pipedream.com/apps/google-slides/actions/insert-text-into-table.md

### `google_slides-merge-data` — Merge Data (Write)

Merge data into a presentation. See the docs here

Full schema: https://pipedream.com/apps/google-slides/actions/merge-data.md

### `google_slides-position-element` — Position Element (Write)

Move, scale, rotate, or restack a page element in a Google Slides presentation. Unspecified properties keep their current values. Use Get Presentation to find the element's object ID. See the documentation

Full schema: https://pipedream.com/apps/google-slides/actions/position-element.md

### `google_slides-refresh-chart` — Refresh a chart (Write)

Refresh a chart from Sheets. See the docs here

Full schema: https://pipedream.com/apps/google-slides/actions/refresh-chart.md

### `google_slides-replace-all-text` — Replace All Text (Write)

Replace all text in a presentation. See the documentation

Full schema: https://pipedream.com/apps/google-slides/actions/replace-all-text.md

## Triggers (1)

### `google_slides-new-presentation` — New Presentation (Instant) (Polling)

Emit new event each time a new presentation is created in a drive.

Full schema: https://pipedream.com/apps/google-slides/triggers/new-presentation.md

---

- All apps: https://pipedream.com/apps — index: https://pipedream.com/llms.txt
- Pipedream docs for agents: https://pipedream.com/docs/llms.txt
