Documentation Index Fetch the complete documentation index at: https://docs.vectorshift.ai/llms.txt
Use this file to discover all available pages before exploring further.
What this builds. A two-node pipeline: a string input (the email body) feeding an IntegrationGmailNode that sends a send_email action via a stored Gmail integration.
You’ll end up with. A saved gmail-pipeline that, when run, sends a Test Email to the configured recipient using the body you pass in.
from vectorshift.pipeline import (
IntegrationSlackNode,
InputNode,
Pipeline,
IntegrationGmailNode,
)
from vectorshift.integrations import Integration
input_node = InputNode(
node_name = "input_0" , input_type = "string" , description = 'Gmail Message to Send'
)
integration_id = 'your integration id'
integration = Integration( object_id = integration_id)
gmail_node = IntegrationGmailNode(
integration = integration,
node_name = "gmail_node" ,
action = "send_email" ,
recipients = "recipient@gmail.com" ,
subject = "Test Email from Pipeline" ,
body = input_node.text,
format = "text" ,
)
PIPELINE_NAME = "gmail-pipeline"
try :
gmail_pipeline = Pipeline.fetch( name = PIPELINE_NAME )
print (
f "Pipeline fetched: id= { gmail_pipeline.id } , branch_id= { gmail_pipeline.branch_id } "
)
except Exception as e:
print ( f "Error fetching pipeline: { e } " )
gmail_pipeline = Pipeline.new( name = PIPELINE_NAME , nodes = [input_node, gmail_node])
print (
f "Pipeline created: id= { gmail_pipeline.id } , branch_id= { gmail_pipeline.branch_id } "
)
Expected output
Pipeline created: id=..., branch_id=...
You’ll need a real integration_id from a connected Gmail account — the placeholder string won’t authenticate.
See also
Sub-pipelines Wrap this Gmail flow inside a larger pipeline.
Button node Conversational variant — trigger sends from a button click.
Pipeline reference Full method surface.