Skip to main content

Create Presentation

Creates a new Google Slides presentation.

Common Properties

  • Name - The custom name of the node.
  • Color - The custom color of the node.
  • Delay Before (sec) - Waits in seconds before executing the node.
  • Delay After (sec) - Waits in seconds after executing node.
  • Continue On Error - Automation will continue regardless of any error. The default value is false.
info

If the ContinueOnError property is true, no error is caught when the project is executed, even if a Catch node is used.

Inputs

  • Title - The title for the new Google Slides presentation.

Options

  • Credentials - Google account credentials used to authenticate with the Google Slides API.
  • Share With - An array of objects specifying users to share the new presentation with. Each object must contain Role, Type, and EmailAddress properties. An optional EmailMessage property can also be included.
  • Send Notification Mail - If enabled, sends notification emails to users when sharing the presentation.

Output

  • Presentation Id - The ID of the newly created presentation.

How It Works

The Create Presentation node generates a new Google Slides presentation with the specified title. When executed, the node:

  1. Validates the provided Title input
  2. Authenticates with Google Slides API using the provided credentials
  3. Creates a new presentation with the specified title
  4. Optionally shares the new presentation with specified users
  5. Returns the ID of the newly created presentation

Requirements

  • A valid title for the new presentation
  • Valid Google API credentials with appropriate permissions
  • Proper Google Drive permissions to create and share files

Error Handling

The node will return specific errors in the following cases:

  • Empty or invalid Title
  • Invalid or missing Google API credentials
  • Google Slides API authentication errors
  • Insufficient permissions to create presentations
  • Invalid Share With configuration
  • Google Drive service errors

Usage Notes

  • The Title input sets the name of the new presentation
  • The Share With option allows you to specify an array of users to share the new presentation with
  • Each Share With object should include:
    • Role: The permission role (e.g., "writer", "reader", "owner")
    • Type: The type of user (e.g., "user", "group")
    • EmailAddress: The email address of the user or group
    • EmailMessage (optional): A custom message to include in the sharing notification
  • If Send Notification Mail is enabled, users will receive email notifications when the presentation is shared with them
  • The output Presentation Id can be used with other Google Slides nodes to modify the presentation
  • The newly created presentation will be accessible in the authenticated user's Google Drive

Examples

Example 1: Create a Simple Presentation

Create a new presentation with a basic title:

Title: "Monthly Sales Report - December 2024"

The node will create an empty presentation with one blank slide that you can populate using other nodes.

Example 2: Create and Share with Team

Create a presentation and automatically share it with team members:

Title: "Q4 Strategy Presentation"
Share With:
[
{
"Role": "writer",
"Type": "user",
"EmailAddress": "john@company.com",
"EmailMessage": "Please review and add your section"
},
{
"Role": "reader",
"Type": "user",
"EmailAddress": "manager@company.com"
}
]
Send Notification Mail: true

This creates the presentation and shares it with editing access for John and viewing access for the manager, with email notifications sent to both.

Example 3: Create Presentation for Service Account

When using a Service Account, create the presentation and share it with your user account:

Title: "Automated Report"
Credentials: [Service Account credentials]
Share With:
[
{
"Role": "writer",
"Type": "user",
"EmailAddress": "your.email@company.com"
}
]

This ensures the presentation created by the service account is accessible to your user account.

Tips for Effective Use

  1. Descriptive Titles: Use clear, descriptive titles that include dates or version numbers for easy identification
  2. Naming Conventions: Establish consistent naming patterns (e.g., "Department - Report Type - Date")
  3. Service Account Sharing: Always share presentations created by service accounts with at least one user account to ensure accessibility
  4. Batch Creation: Use loops to create multiple presentations from a list of titles or data sources
  5. ID Storage: Store the output Presentation Id in a variable or data table for use in subsequent workflow steps
  6. Permission Planning: Consider who needs access before creating the presentation to set up sharing immediately

Common Use Cases

Use Case 1: Weekly Report Automation

Create a new presentation every Monday with the current week's date in the title:

// In a JS node
const today = new Date();
const weekNum = getWeekNumber(today);
msg.title = `Weekly Report - Week ${weekNum} - ${today.getFullYear()}`;

Then use the Create Presentation node with msg.title as the Title input.

Use Case 2: Client Presentation Generator

Create personalized presentations for multiple clients:

// Loop through client list
for (const client of msg.clients) {
msg.title = `Proposal for ${client.name} - ${new Date().toISOString().split('T')[0]}`;
msg.shareWith = [{
"Role": "reader",
"Type": "user",
"EmailAddress": client.email,
"EmailMessage": `Hi ${client.name}, here's your personalized proposal`
}];
// Create Presentation node here
}

Use Case 3: Template Initialization

Create a base presentation that will be populated with data from other sources:

  1. Create Presentation with title
  2. Store the Presentation Id
  3. Use Replace Text node to add content
  4. Use Add Image node to insert visuals
  5. Export to PDF for distribution

Common Errors and Solutions

ErrorCauseSolution
"Title cannot be empty"No title provided or title is "_"Ensure Title input contains a valid string
"No Credential Content"Credentials are not properly configuredVerify credentials are stored correctly in Vault and have proper format
"Invalid Share With configuration"Share With object missing required fieldsEnsure each object has Role, Type, and EmailAddress fields
Permission deniedService account lacks Drive API permissionsEnable Google Drive API in Google Cloud Console and grant proper scopes
Authentication failedExpired or invalid OAuth tokenRefresh credentials or re-authenticate