Pipedream Integration Guide
Step-by-step guide to integrate Pipedream as an authentication provider for Airweave
Step-by-step guide to integrate Pipedream as an authentication provider for Airweave

Pipedream enables workflow automation with 2,000+ integrated apps. Airweave can leverage your existing Pipedream connections to sync data without requiring users to authenticate again.
This integration involves two separate OAuth clients:
Important: Pipedream only exposes credentials for accounts created with your own custom OAuth clients. Default Pipedream OAuth connections use the Proxy API.
First, configure the OAuth client that allows Airweave to access Pipedream’s API:
Log in to Pipedream
Navigate to your Project Settings
Create a new OAuth client for Airweave integration
Configure redirect URIs if required
Save your client_id and client_secret
Purpose: This OAuth client enables Airweave to authenticate with Pipedream’s API to retrieve your connected account credentials.
client_id (from step 1)client_secret (from step 1)For each source app you want to sync (Notion, Google Drive, etc.), you must create custom OAuth clients:
client_id and client_secretFollow similar steps for Google Drive, GitHub, or other source integrations.
Important: You must use these custom OAuth clients when connecting accounts in Pipedream. Do not use Pipedream’s built-in OAuth options.
account_id for each connection (format: apn_xxxxx)To create source connections, you’ll need these identifiers:
project_id: Found in the URL when viewing your project (e.g., proj_JPsD74a)account_id: Retrieved via Pipedream UI or APIexternal_user_id: Retrieved via Pipedream UI or APIThe response will include account IDs like apn_gyha5Ky.
The integration uses two distinct OAuth flows:
Pipedream uses different field names for some credentials:
These mappings are handled automatically.
Pipedream OAuth tokens have specific characteristics:
client_credentials flowWhen you connect accounts using Pipedream’s default OAuth clients, credentials aren’t directly exposed for security reasons. Instead, Airweave automatically routes API requests through Pipedream’s proxy endpoint, where the actual credentials are injected server-side. This happens transparently - sources continue using the same HTTP client interface whether they’re accessing credentials directly (custom OAuth) or through the proxy (default OAuth). The system automatically detects which mode to use based on the OAuth client type, ensuring your data syncs work seamlessly regardless of how the account was connected in Pipedream.
Credentials not availableRoot cause: The account was connected using Pipedream’s built-in OAuth client instead of your custom OAuth client.
Solution:
Account app mismatchSolution: Verify the account_id corresponds to the correct integration type and was created with the right custom OAuth client.
Failed to refresh token (Airweave to Pipedream)This affects the connection between Airweave and Pipedream’s API:
Failed to refresh token (Source App Authentication)This affects the source app tokens retrieved from Pipedream:
Missing required auth fieldsDual OAuth setup required: You need to create and manage two separate OAuth clients:
Custom OAuth clients only:
Token management complexity:
API rate limits: Subject to both Pipedream’s API limits and source app limits
Credential access: Only available with include_credentials=true parameter and proper OAuth client setup