Pipedream Integration Fabric
A developer-centric platform for orchestrating event-driven workflows. Construct complex automations leveraging a vast library of pre-built connectors or deploy custom logic written in Node.js, Python, Go, or shell scripting. Seamlessly integrate with over one thousand external services to streamline business processes.
Author

PipedreamHQ
Quick Info
Actions
Tags

Pipedream functions as a versatile integration platform tailored for software developers.
Pipedream furnishes a complimentary, managed environment for linking disparate applications and constructing reactive, event-driven automation sequences. The platform boasts native support for over one thousand integrated applications, enabling rapid utilization of pre-built actions—such as dispatching notifications to Slack or persisting data into Google Sheets. For bespoke requirements, users retain the capability to execute arbitrary code blocks in Node.js, Python, Golang, or Bash. Pipedream has achieved SOC 2 compliance and can furnish the corresponding Type 2 attestation upon formal request (contact support@pipedream.com).
This repository encompasses:
- The complete source for all standardized integration components
- The evolving product feature roadmap
- Comprehensive Pipedream documentation
- Ancillary source code pertinent to the Pipedream ecosystem.
This README details the core functionalities of the platform and guides initial setup.
For assistance, please consult https://pipedream.com/support.
Core Capabilities
- Automations (Workflows) - Workflows execute your programmed sequences. These sequences consist of discrete steps—either pre-configured actions or custom implementations in Node.js, Python, Golang, or Bash—which are initiated by an external trigger (e.g., an HTTP invocation, a scheduled timer, or a new record in an external service like Google Sheets).
- Event Triggers (Event Sources) - Sources are the initiators of workflow execution. They generate data streams originating from external services such as GitHub, Slack, Airtable, RSS feeds, and many others. Utilizing an event source connects your workflow to real-world application events.
- Pre-built Operations (Actions) - Actions represent encapsulated, ready-to-use code segments facilitating common tasks across Pipedream's extensive catalogue of over 1,000 API integrations. Examples include transmitting electronic mail or appending data to a spreadsheet, among others.
- Programmatic Customization - When standard components are insufficient, custom logic is essential. Pipedream facilitates execution of verbatim Node.js, Python, Golang, or Bash code. You possess the freedom to incorporate external libraries via language package managers, interface with Pipedream-configured applications, and more. Pipedream embodies 'low-code' philosophy optimally: leverage pre-built modules for routine operations while reserving the power of native code for specialized requirements.
- Data Delivery Mechanisms (Destinations) - Asynchronously forward processed events to common data sinks, including Amazon S3, Snowflake, arbitrary HTTP endpoints, or email.
- Cost Structure - Offers a robust, no-cost tier for individual developers (subject to documented usage constraints).
Demonstration
View a concise platform demonstration via YouTube by clicking the visual element below.
Automations
Automations are linear progressions of processing stages triggered by an initiating event (e.g., an incoming web request or a new spreadsheet entry). These allow for the rapid development of sophisticated integration chains connecting to any of our 1,000+ integrated services.
Begin immediately with our workflow quickstart guide.
Event Sources
Event Sources actively monitor for novel data events from services like GitHub, Slack, Airtable, RSS feeds, and more. Upon event detection, the source emits a signal, activating linked workflows.
You can alternatively consume source-emitted events via Pipedream's REST API interface or through a private, bidirectional SSE stream.
Should a standardized source not meet your needs, you are empowered to construct your own. The simplest example is an HTTP source: it exposes an endpoint ready to receive any request, logging the request's contents upon invocation:
javascript export default { name: "http", version: "0.0.1", props: { http: "$.interface.http", }, run(event) { console.log(event); // event contains the method, payload, etc. }, };
The source code for all native sources resides in the components directory. For reporting issues or proposing enhancements, consult our contribution guidelines.
Actions
Actions are standardized code blocks incorporated into a workflow to execute common tasks across Pipedream's extensive library of 500+ application connectors. Common uses include sending notifications or updating spreadsheet rows, among others.
You have the option to engineer your own reusable actions or even publish them to the broader Pipedream community for universal access.
This is a demonstration action accepting a name input and logging it:
javascript
export default {
name: "Action Demo",
description: "This is a demo action",
key: "action_demo",
version: "0.0.1",
type: "action",
props: {
name: {
type: "string",
label: "Name",
},
},
async run() {
return hello ${this.name}!;
},
};
All proprietary action code is located in the components directory. Refer to the contribution guide for bug reports or feature submissions.
Custom Code Execution
Frequently, intricate integration demands custom scripting. Pipedream supports executing native code within workflows using the following runtimes:
|
|
|
|
|
Dependencies from respective language repositories can be imported directly within the code block; Pipedream handles automatic parsing and acquisition of necessary packages.
javascript // Node.js import axios from "axios";
python
Python
import pandas as pd
golang // Go import ( "fmt" pd "github.com/PipedreamHQ/pipedream-go" )
Furthermore, custom steps allow direct invocation of authenticated connections to Pipedream-managed applications. For instance, posting a message to a Slack channel:
javascript import { WebClient } from "@slack/web-api";
export default defineComponent({ props: { // This provision creates an authenticated connection instance named "slack". slack: { type: "app", app: "slack", }, }, async run({ steps, $ }) { const web = new WebClient(this.slack.$auth.oauth_access_token);
return await web.chat.postMessage({
text: "Hello, world!",
channel: "#general",
});
}, });
Data Egress (Destinations)
Destinations, analogous to actions, abstract the complexity involved in connection management, data batching, and reliable delivery to external destinations like Amazon S3 or custom HTTP listeners.
For example, persisting data to an S3 bucket requires only a single function call, $send.s3():
javascript $send.s3({ bucket: "your-bucket-here", prefix: "your-prefix/", payload: event.body, });
Pipedream natively supports the following egress paths:
Contributors
Our gratitude extends to every individual who has contributed code or effort to the Pipedream source repository. Your involvement is highly valued!
Financial Structure
Pipedream features a highly accommodating free service tier. You may execute workflows and sources without charge up to the stated usage thresholds. Exceeding these limits necessitates migration to one of our subscription plans.
Usage Constraints
The Pipedream runtime imposes specific operational ceilings on sources and workflows. Detailed information regarding these boundaries is available in our dedicated documentation.
Reporting Issues or Proposing Enhancements
Prior to submitting a new issue ticket, perform a search through existing reported issues or engage our support team to confirm the request isn't already cataloged.
If a duplicate is found, kindly indicate support via a reaction or a comment detailing your specific operational scenario.
If no existing record is present and you must create one, please adhere to the provided issue templates for submission.
Security Posture
Information regarding our platform's security protocols and data governance can be reviewed here.
Should you discover a potential platform vulnerability or have inquiries concerning security architecture, please contact our dedicated security team at security@pipedream.com.
