Connect to Google Slides
Connect Google Slides to Retool to generate and update presentations using the Slides API.
Google Slides is a cloud-based presentation tool for creating and collaborating on slide decks. Retool connects to Google Slides through the Slides API v1 using either OAuth 2.0 or a Google service account.
After you create a Google Slides resource in Retool, you can:
- Generate presentations from templates and populate them with data from your apps and workflows.
- Read presentation structure, slide content, and embedded chart data.
- Insert, replace, and delete text, shapes, images, and other slide elements.
- Apply slide layouts, transitions, and themes programmatically.
- Manage presentation metadata, permissions, and sharing via the Drive API.
Before you begin
To connect Google Slides to Retool, you need the following:
- Cloud
- Self-hosted
- Google account: A Google account or Google Workspace user with access to the presentations you want to query.
- Retool permissions: Edit all permissions for resources in your organization.
- Google account: A Google account or Google Workspace user with access to the presentations you want to query.
- Custom OAuth 2.0 client: A Google OAuth 2.0 client configured for your Retool instance. Self-hosted instances cannot use Retool's hosted OAuth app and must provide their own client ID and secret. Service account authentication does not require an OAuth client.
- Network access: Your Retool instance must be able to reach
accounts.google.com,oauth2.googleapis.com, andwww.googleapis.comover HTTPS. - Retool permissions: Edit all permissions for resources in your organization.
Create a Google Slides resource
Follow these steps to create a Google Slides resource in your Retool organization.
1. Create a new resource
In your Retool organization, navigate to Resources in the main navigation and click Create new → Resource. Search for Google Slides and click the Google Slides tile to begin configuration.
Use folders to organize your resources by team, environment, or data source type. This helps keep your resource list manageable as your organization grows.
2. Configure general settings
Specify a name and description for the resource that indicates which Google account or workspace it connects to. The description provides more context to users about how to use the resource.
| Example name | Example description |
|---|---|
Google Slides | Default Google Slides resource for the sales team. Generates customer-facing decks from templates. |
Google Slides (read only) | Read-only Google Slides resource for parsing presentation content into internal apps. |
When using Retool's hosted OAuth app (Cloud) or a custom OAuth app (self-hosted), you typically only need one resource. Each user authenticates individually and can only access their own presentations. Creating multiple resources is usually unnecessary unless you need to support multiple OAuth applications or mix OAuth with service account authentication.
3. Configure authentication
Configure the connection settings for your Google Slides resource under the Credentials section of the resource configuration form.

Google Slides resource configuration form.
Authentication
Google Slides supports two authentication methods. Choose based on whether queries should run as the signed-in user or as a non-interactive service identity.
| Authentication method | Use cases |
|---|---|
| OAuth 2.0 | Interactive apps where each user authenticates with their own Google account. Each user only sees the presentations they have access to. |
| Google Service Account | Automated workflows, scheduled queries, and shared internal apps that need to act as a non-interactive service identity. Presentations must be explicitly shared with the service account's email address. |
- Cloud
- Self-hosted
option A: OAuth 2.0 with Retool's hosted app (recommended)
Retool provides a hosted OAuth 2.0 client for Cloud organizations, so no external configuration is required.
- Select OAuth 2.0 as the Authentication method.
- Choose the Type:
- Read only—queries can read presentation content, slide structure, and embedded chart data.
- Read and write—queries can create, edit, and delete presentations.
- Optionally enable Share credentials between users to allow all users of the resource to share a single set of credentials. By default, each user authenticates individually.
- Click Connect with OAuth and authorize Retool to access your Google Slides.
- Click Create resource to save.
option B: Google service account
Use a service account when queries should run as a non-interactive service identity rather than as the signed-in user.
- Create a service account in the Google Cloud Console and generate a JSON key.
- In Google Drive, share the presentations the service account needs to access with the service account's email address.
- In Retool, select Google Service Account as the Authentication method.
- Choose the Type: Read only or Read and write.
- Paste the JSON contents of your service account key into the Service account key field.
- Click Create resource to save.
Refer to Google's service account documentation for setup details and key rotation guidance.
option A: OAuth 2.0 with a custom app (recommended)
Self-hosted instances must provide their own Google OAuth 2.0 client. Retool's hosted OAuth app is only available for Cloud organizations.
- Create an OAuth 2.0 client in the Google Cloud Console and configure the authorized redirect URI for your Retool instance.
- In Retool, select OAuth 2.0 as the Authentication method.
- Enter the Client ID and Client secret from your OAuth 2.0 client.
- Choose the Type:
- Read only—queries can read presentation content, slide structure, and embedded chart data.
- Read and write—queries can create, edit, and delete presentations.
- Optionally enable Share credentials between users to allow all users of the resource to share a single set of credentials.
- Click Connect with OAuth and authorize Retool to access your Google Slides.
- Click Create resource to save.
option B: Google service account
Use a service account when queries should run as a non-interactive service identity rather than as the signed-in user. Service accounts do not require a custom OAuth client.
- Create a service account in the Google Cloud Console and generate a JSON key.
- In Google Drive, share the presentations the service account needs to access with the service account's email address.
- In Retool, select Google Service Account as the Authentication method.
- Choose the Type: Read only or Read and write.
- Paste the JSON contents of your service account key into the Service account key field.
- Click Create resource to save.
Type
The Type setting controls the OAuth scopes used for Slides API calls. Google Slides requests scopes for the Slides API, Drive API, and Sheets API, since slide decks can embed Sheets data and most operations require locating files through Drive.
| Type | API access |
|---|---|
| Read only | Read presentation content, slide structure, and embedded chart data. Includes presentations.readonly, drive.readonly, and spreadsheets.readonly scopes. Use for apps that parse or display Slides content. |
| Read and write | Full read and write access, including create and delete. Includes presentations, drive.file, drive, and spreadsheets scopes. Use for apps that generate decks, edit slides, or refresh embedded charts. |
To change the Type after a resource has been created, update the authentication settings and re-authorize the resource. Users are prompted to re-consent on the next query.
Outbound region
- Cloud
- Self-hosted
By default, requests originate from your organization's outbound region (for example, us-west-2). Enable Override default outbound Retool region to route requests through a different region. This is useful when Slides API access is restricted by IP or when you need to align with data residency requirements.
Self-hosted instances do not have the outbound region field.