← PandaDoc + Google Vertex AI integrations

Generate Video from Image with Google Vertex AI API on Document Creation Failed (Instant) from PandaDoc API

Pipedream makes it easy to connect APIs for Google Vertex AI, PandaDoc and 2,800+ other apps remarkably fast.

Trigger workflow on
Document Creation Failed (Instant) from the PandaDoc API
Next, do this
Generate Video from Image with the Google Vertex AI API
No credit card required
Intro to Pipedream
Watch us build a workflow
Watch us build a workflow
8 min
Watch now ➜

Trusted by 1,000,000+ developers from startups to Fortune 500 companies

Adyen logo
Appcues logo
Bandwidth logo
Checkr logo
ChartMogul logo
Dataminr logo
Gopuff logo
Gorgias logo
LinkedIn logo
Logitech logo
Replicated logo
Rudderstack logo
SAS logo
Scale AI logo
Webflow logo
Warner Bros. logo
Adyen logo
Appcues logo
Bandwidth logo
Checkr logo
ChartMogul logo
Dataminr logo
Gopuff logo
Gorgias logo
LinkedIn logo
Logitech logo
Replicated logo
Rudderstack logo
SAS logo
Scale AI logo
Webflow logo
Warner Bros. logo

Developers Pipedream

Getting Started

This integration creates a workflow with a PandaDoc trigger and Google Vertex AI action. When you configure and deploy the workflow, it will run on Pipedream's servers 24x7 for free.

  1. Select this integration
  2. Configure the Document Creation Failed (Instant) trigger
    1. Connect your PandaDoc account
  3. Configure the Generate Video from Image action
    1. Connect your Google Vertex AI account
    2. Select a Project ID
    3. Select a Model
    4. Configure Prompt
    5. Select a Aspect Ratio
    6. Configure Duration (seconds)
    7. Configure Enhance Prompt
    8. Configure Generate Audio
    9. Optional- Configure Negative Prompt
    10. Optional- Select a Person Generation
    11. Optional- Select a Resolution
    12. Configure Sample Count
    13. Optional- Configure Storage URI
    14. Configure Image Path Or URL
  4. Deploy the workflow
  5. Send a test event to validate your setup
  6. Turn on the trigger

Details

This integration uses pre-built, source-available components from Pipedream's GitHub repo. These components are developed by Pipedream and the community, and verified and maintained by Pipedream.

To contribute an update to an existing component or create a new component, create a PR on GitHub. If you're new to Pipedream component development, you can start with quickstarts for trigger span and action development, and then review the component API reference.

Trigger

Description:Emit new event when a document failed to be created. [See the documentation here](https://developers.pandadoc.com/reference/create-webhooks-subscription)
Version:0.0.5
Key:pandadoc-document-creation-failed

PandaDoc Overview

The PandaDoc API opens up a realm of possibilities for automating document workflows, creating a seamless bridge between document management and various business processes. With it, you can programmatically create, send, and track documents, streamline electronic signatures, and manage templates, among others. Integrations through Pipedream can harness these capabilities, enabling you to trigger actions in PandaDoc based on events from other apps, or vice versa.

Trigger Code

import common from "../common.mjs";

const DOCS_LINK = "https://developers.pandadoc.com/reference/create-webhooks-subscription";

export default {
  ...common,
  name: "Document Creation Failed (Instant)",
  description:
    `Emit new event when a document failed to be created. [See the documentation here](${DOCS_LINK})`,
  key: "pandadoc-document-creation-failed",
  version: "0.0.5",
  type: "source",
  methods: {
    ...common.methods,
    getHookName() {
      return "Document Creation Failed";
    },
    getHookTypes() {
      return [
        "document_creation_failed",
      ];
    },
  },
};

Trigger Configuration

This component may be configured based on the props defined in the component code. Pipedream automatically prompts for input values in the UI and CLI.
LabelPropTypeDescription
PandaDocappappThis component uses the PandaDoc app.
N/Adb$.service.dbThis component uses $.service.db to maintain state between executions.
N/Ahttp$.interface.httpThis component uses $.interface.http to generate a unique URL when the component is first instantiated. Each request to the URL will trigger the run() method of the component.

Trigger Authentication

PandaDoc uses OAuth authentication. When you connect your PandaDoc account, Pipedream will open a popup window where you can sign into PandaDoc and grant Pipedream permission to connect to your account. Pipedream securely stores and automatically refreshes the OAuth tokens so you can easily authenticate any PandaDoc API.

Pipedream requests the following authorization scopes when you connect your account:

read+write

About PandaDoc

Create, Approve, Track & eSign Docs 40% Faster

Action

Description:Generate a video from an image with optional text prompt using Google Vertex AI Veo models. [See the documentation](https://cloud.google.com/vertex-ai/generative-ai/docs/model-reference/veo-video-generation)
Version:0.0.1
Key:google_vertex_ai-generate-video-from-image

Google Vertex AI Overview

With the Google Vertex AI API, you can tap into a robust suite of AI tools offered by Google Cloud to build, deploy, and scale machine learning models. Whether you're processing data, training custom models, or using pre-trained ones, Vertex AI provides a unified platform for AI development. In Pipedream, you can create serverless workflows that interact with Vertex AI, allowing you to automate tasks like model training, prediction, and resource management without provisioning your own infrastructure.

Action Code

import { getFileStreamAndMetadata } from "@pipedream/platform";
import common from "../common/generate-video.mjs";

export default {
  ...common,
  key: "google_vertex_ai-generate-video-from-image",
  name: "Generate Video from Image",
  description: "Generate a video from an image with optional text prompt using Google Vertex AI Veo models. [See the documentation](https://cloud.google.com/vertex-ai/generative-ai/docs/model-reference/veo-video-generation)",
  version: "0.0.1",
  type: "action",
  props: {
    ...common.props,
    image: {
      type: "string",
      label: "Image Path Or URL",
      description: "Provide either a file URL or a path to a file in the `/tmp` directory (for example, `/tmp/image.jpg`). Supported formats: JPEG, PNG. For best quality, use 720p or higher (1280 x 720 pixels) with 16:9 or 9:16 aspect ratio.",
    },
  },
  async run({ $ }) {
    const {
      projectId,
      model,
      image,
      prompt,
      aspectRatio,
      durationSeconds,
      enhancePrompt,
      generateAudio,
      negativePrompt,
      personGeneration,
      resolution,
      sampleCount,
      storageUri,
    } = this;

    const {
      stream, metadata,
    } = await getFileStreamAndMetadata(image);
    const imageBase64 = await this.streamToBase64(stream);

    const operationResponse = await this.app.generateVideosLongRunning({
      $,
      projectId,
      model,
      data: {
        instances: [
          {
            prompt,
            image: {
              bytesBase64Encoded: imageBase64,
              mimeType: metadata.contentType,
            },
          },
        ],
        parameters: {
          aspectRatio,
          durationSeconds,
          enhancePrompt,
          sampleCount,
          negativePrompt,
          personGeneration,
          generateAudio,
          resolution,
          storageUri,
        },
      },
    });

    if (!operationResponse.name) {
      throw new Error("Failed to start video generation operation");
    }

    // Poll the operation until completion
    const completedOperation = await this.pollOperation({
      $,
      projectId,
      model,
      operationName: operationResponse.name,
    });

    if (completedOperation.error) {
      throw new Error(`Video generation failed: ${JSON.stringify(completedOperation.error)}`);
    }

    if (!completedOperation.response) {
      throw new Error("No response received from completed operation");
    }

    const videoCount = completedOperation.response?.videos?.length || 0;

    $.export("$summary", `Successfully generated ${videoCount} video(s) from image`);

    return completedOperation;
  },
};

Action Configuration

This component may be configured based on the props defined in the component code. Pipedream automatically prompts for input values in the UI.

LabelPropTypeDescription
Google Vertex AIappappThis component uses the Google Vertex AI app.
Project IDprojectIdstringSelect a value from the drop down menu.
ModelmodelstringSelect a value from the drop down menu:{ "label": "Veo 2.0 Generate 001 (Stable)", "value": "veo-2.0-generate-001" }{ "label": "Veo 3.0 Generate Preview (Preview)", "value": "veo-3.0-generate-preview" }{ "label": "Veo 3.0 Fast Generate Preview (Preview)", "value": "veo-3.0-fast-generate-preview" }
Promptpromptstring

The text prompt to guide video generation. For Veo 3, you can include audio cues like dialogue in quotes, sound effects, and ambient noise descriptions.

Aspect RatioaspectRatiostringSelect a value from the drop down menu:{ "label": "16:9 (Landscape)", "value": "16:9" }{ "label": "9:16 (Portrait) - Veo 2 only", "value": "9:16" }
Duration (seconds)durationSecondsinteger

The length of the video in seconds. Veo 2: 5-8 seconds, Veo 3: 8 seconds

Enhance PromptenhancePromptboolean

Use Gemini to enhance your prompts

Generate AudiogenerateAudioboolean

Generate audio for the video (Veo 3 only)

Negative PromptnegativePromptstring

A text string that describes anything you want to discourage the model from generating

Person GenerationpersonGenerationstringSelect a value from the drop down menu:{ "label": "Allow Adult", "value": "allow_adult" }{ "label": "Don't Allow", "value": "dont_allow" }
ResolutionresolutionstringSelect a value from the drop down menu:{ "label": "720p", "value": "720p" }{ "label": "1080p", "value": "1080p" }
Sample CountsampleCountinteger

The number of output videos requested

Storage URIstorageUristring

A Cloud Storage bucket URI to store the output video, in the format gs://BUCKET_NAME/SUBDIRECTORY. If a Cloud Storage bucket isn't provided, base64-encoded video bytes are returned in the response.

Image Path Or URLimagestring

Provide either a file URL or a path to a file in the /tmp directory (for example, /tmp/image.jpg). Supported formats: JPEG, PNG. For best quality, use 720p or higher (1280 x 720 pixels) with 16:9 or 9:16 aspect ratio.

Action Authentication

Google Vertex AI uses OAuth authentication. When you connect your Google Vertex AI account, Pipedream will open a popup window where you can sign into Google Vertex AI and grant Pipedream permission to connect to your account. Pipedream securely stores and automatically refreshes the OAuth tokens so you can easily authenticate any Google Vertex AI API.

Pipedream requests the following authorization scopes when you connect your account:

emailprofilehttps://www.googleapis.com/auth/cloud-platform

About Google Vertex AI

Vertex AI offers everything you need to build and use generative AI—from AI solutions, to Search and Conversation, to 130+ foundation models, to a unified AI platform.

More Ways to Connect Google Vertex AI + PandaDoc

Analyze Text Sentiment with Google Vertex AI API on Document Creation Failed (Instant) from PandaDoc API
PandaDoc + Google Vertex AI
 
Try it
Analyze Text Sentiment with Google Vertex AI API on Document Deleted (Instant) from PandaDoc API
PandaDoc + Google Vertex AI
 
Try it
Analyze Text Sentiment with Google Vertex AI API on Document State Changed (Instant) from PandaDoc API
PandaDoc + Google Vertex AI
 
Try it
Analyze Text Sentiment with Google Vertex AI API on Document Updated (Instant) from PandaDoc API
PandaDoc + Google Vertex AI
 
Try it
Analyze Text Sentiment with Google Vertex AI API on Recipient Completed (Instant) from PandaDoc API
PandaDoc + Google Vertex AI
 
Try it
Document Creation Failed (Instant) from the PandaDoc API

Emit new event when a document failed to be created. See the documentation here

 
Try it
Document Deleted (Instant) from the PandaDoc API

Emit new event when a document is deleted. See the documentation here

 
Try it
Document State Changed (Instant) from the PandaDoc API

Emit new event when a document's state is changed. See the documentation here

 
Try it
Document Updated (Instant) from the PandaDoc API

Emit new event when a document is updated. See the documentation here

 
Try it
Recipient Completed (Instant) from the PandaDoc API

Emit new event when a recipient completes a document. See the documentation here

 
Try it
Create Document Attachment with the PandaDoc API

Adds an attachment to a document. See the documentation here

 
Try it
Create Document From File with the PandaDoc API

Create a document from a file or public file URL. See the documentation here

 
Try it
Create Document From Template with the PandaDoc API

Create a Document from a PandaDoc Template. See the documentation here

 
Try it
Create Folder with the PandaDoc API

Create a new folder to store your documents. See the documentation here

 
Try it
Create or Update Contact with the PandaDoc API

This method adds or updates a contact using the email as index. See the documentation here

 
Try it

Explore Other Apps

1
-
24
of
2,800+
apps by most popular

HTTP / Webhook
HTTP / Webhook
Get a unique URL where you can send HTTP or webhook requests
Node
Node
Anything you can do with Node.js, you can do in a Pipedream workflow. This includes using most of npm's 400,000+ packages.
Python
Python
Anything you can do in Python can be done in a Pipedream Workflow. This includes using any of the 350,000+ PyPi packages available in your Python powered workflows.
Pipedream Utils
Pipedream Utils
Utility functions to use within your Pipedream workflows
Notion
Notion
Notion is a new tool that blends your everyday work apps into one. It's the all-in-one workspace for you and your team.
OpenAI (ChatGPT)
OpenAI (ChatGPT)
OpenAI is an AI research and deployment company with the mission to ensure that artificial general intelligence benefits all of humanity. They are the makers of popular models like ChatGPT, DALL-E, and Whisper.
Anthropic (Claude)
Anthropic (Claude)
AI research and products that put safety at the frontier. Introducing Claude, a next-generation AI assistant for your tasks, no matter the scale.
Google Sheets
Google Sheets
Use Google Sheets to create and edit online spreadsheets. Get insights together with secure sharing in real-time and from any device.
Telegram
Telegram
Telegram, is a cloud-based, cross-platform, encrypted instant messaging (IM) service.
Google Drive
Google Drive
Google Drive is a file storage and synchronization service which allows you to create and share your work online, and access your documents from anywhere.
Pinterest
Pinterest
Pinterest is a visual discovery engine for finding ideas like recipes, home and style inspiration, and more.
Google Calendar
Google Calendar
With Google Calendar, you can quickly schedule meetings and events and get reminders about upcoming activities, so you always know what’s next.
Shopify
Shopify
Shopify is a complete commerce platform that lets anyone start, manage, and grow a business. You can use Shopify to build an online store, manage sales, market to customers, and accept payments in digital and physical locations.
Supabase
Supabase
Supabase is an open source Firebase alternative.
MySQL
MySQL
MySQL is an open-source relational database management system.
PostgreSQL
PostgreSQL
PostgreSQL is a free and open-source relational database management system emphasizing extensibility and SQL compliance.
Premium
AWS
AWS
Amazon Web Services (AWS) offers reliable, scalable, and inexpensive cloud computing services.
Premium
Twilio SendGrid
Twilio SendGrid
Send marketing and transactional email through the Twilio SendGrid platform with the Email API, proprietary mail transfer agent, and infrastructure for scalable delivery.
Amazon SES
Amazon SES
Amazon SES is a cloud-based email service provider that can integrate into any application for high volume email automation
Premium
Klaviyo
Klaviyo
Email Marketing and SMS Marketing Platform
Premium
Zendesk
Zendesk
Zendesk is award-winning customer service software trusted by 200K+ customers. Make customers happy via text, mobile, phone, email, live chat, social media.
Premium
ServiceNow
ServiceNow
The smarter way to workflow
Slack
Slack
Slack is a channel-based messaging platform. With Slack, people can work together more effectively, connect all their software tools and services, and find the information they need to do their best work — all within a secure, enterprise-grade environment.
Microsoft Teams
Microsoft Teams
Microsoft Teams has communities, events, chats, channels, meetings, storage, tasks, and calendars in one place.