# Connected Accounts
Pipedream provides native integrations for 1,700+ APIs (opens new window). Once you connect an account, you can
- Link that account to any step of a workflow, using the associated credentials to make API requests to any service.
- Manage permissions, limiting access to sensitive accounts
- Access credentials via API, letting you build services anywhere and use Pipedream to handle auth
Pipedream handles OAuth for you, ensuring you always have a fresh access token to authorize requests, and credentials are tightly-secured.
If you use an existing secrets store, or manage credentials in a database, you can also pass those to Pipedream at runtime instead of connecting accounts in the UI.
# Supported Apps
Pipedream supports 1,700+ apps (opens new window), and we're adding more every day.
If you don't see an integration for a service you need, you can request the integration here, or use environment variables to manage custom credentials.
# Types of Integrations
# OAuth
For services that support OAuth, Pipedream operates an OAuth application that mediates access to the service so you don't have to maintain your own app, store refresh and access tokens, and more.
When you connect an account, you'll see a new window open where you authorize the Pipedream application to access data in your account. Pipedream stores the OAuth refresh token tied to your authorization grant, automatically generating access tokens you can use to authorized requests to the service's API. You can access these tokens in code steps.
# Key-based
We also support services that use API keys or other long-lived tokens to authorize requests.
For those services, you'll have to create your keys in the service itself, then add them to your connected accounts in Pipedream.
For example, if you add a new connected account for Sendgrid, you'll be asked to add your Sendgrid API key.
# Connecting accounts
# From an action
Prebuilt actions that connect to a specific service require you connect your account for that service before you run your workflow. Click the Connect [APP] button to get started.
Depending on the integration, this will either:
- Open the OAuth flow for the target service, prompting you to authorize Pipedream to access your account, or
- Open a modal asking for your API credentials for key-based services
If you've already connected an account for this app, you'll also see a list of existing accounts to select from.
# From the HTTP Request action
Craft a custom HTTP request in a workflow with a connected account without code.
In a new step, select the Send any HTTP Request to start a new HTTP Request action.
Then, within the new HTTP request, open the Authorization Type dropdown to select a Select an app:
This will open a new prompt to select an app to connect with. Once you select an app, the HTTP request will be updated with the correct headers to authenticate with that app's API.
Once you connect the selected app account Pipedream will autmatically include your account's authentication keys in the request in the headers, as well as update the URL to match the selected service.
Now you can modify the request path, method, body or query params to perform an action on the endpoint with your authenticated account.
# From a code step
You can connect accounts to code steps by using an app
prop. Refer to the connecting apps in Node.js documentation.
For example, you can connect to Slack from Pipedream (via their OAuth integration), and use the access token Pipedream generates to authorize requests:
import { WebClient } from '@slack/web-api';
// Sends a message to a Slack Channel
export default defineComponent({
props: {
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",
})
})
});
# Managing Connected Accounts
Visit your Accounts Page (opens new window) to see a list of all your connected accounts.
On this page you can:
- Connect your account for any integrated app
- View and manage access for your connected accounts
- Delete a connected account
- Reconnect an account
- Change the nickname associated with an account
You'll also see some data associated with these accounts:
- For many OAuth apps, we'll list the scopes for which you've granted Pipedream access
- The workflows that are using the account
# Connecting a new account
- Visit https://pipedream.com/accounts (opens new window)
- Click the Connect an app button at the top-right.
- Select the app you'd like to connect.
# Reconnecting an account
If you encounter errors in a step that appear to be related to credentials or authorization, you can reconnect your account:
- Visit https://pipedream.com/accounts (opens new window)
- Search for your account
- Click on the ... next to your account, on the right side of the page
- Select the option to Reconnect your account
# Access Control
New connected accounts are private by default and can only be used by the person who added it.
Accounts connected before August 2023
Prior to this change, all connected accounts were accessible to all workspace members. Accounts connected before 2023 will be accessible to all workspace members by default. You can make them private at any time.
# Managing access
- Find the account on the Accounts page and click the 3 dots on the far right of the row
- Select Manage Access
- You may be prompted to reconnect your account first to verify ownership of the account
- You can enable access to the entire workspace or individual members
# Collaborating with others
Even if a workspace member doesn't have access to a private connected account, you can still collaborate together on the same workflows.
Workspace members who don't have access to a connected account can perform the following actions on workflows:
- Reference step exports
- Inspect prop inputs, step logs, and errors
- Test any step, so they can effectively develop and debug workflows end to end
Workspace members who do not have access to a given connected account cannot modify prop inputs or edit any code with that account.
To make changes to steps that are locked in read-only mode, you can:
- Ask the account owner to grant access
- Click More Actions and change the connected account to one that you have access to (note that this may remove some prop configurations)
# Explanation of access
Access to connected accounts is enforced at the step-level within workflows and is designed with security and control in mind.
When you connect an account in Pipedream, you are the owner of that connected account, and you always have full access. You can:
- Manage access
- Delete
- Reconnect
- Add to any step or trigger
How workspace members can use connected accounts that are private:
Operations | Workspace Owner & Admin | Other Members |
---|---|---|
View on Accounts (opens new window) | ✅ | ❌ |
Add to a new trigger or step | ❌ | ❌ |
Modify existing steps | ❌ | ❌ |
Test exising steps | ✅ | ✅ |
Manage access | ❌ | ❌ |
Reconnect | ❌ | ❌ |
Delete | ✅ | ❌ |
How workspace members can use connected accounts that are shared:
Operations | Workspace Owner & Admin | Other Members |
---|---|---|
View on Accounts (opens new window) | ✅ | ✅ |
Add to a new trigger or step | ✅ | ✅ |
Modify existing steps | ✅ | ✅ |
Test exising steps | ✅ | ✅ |
Manage access | ❌ | ❌ |
Reconnect | ❌ | ❌ |
Delete | ✅ | ❌ |
# Frequently Asked Questions
Why isn't my connected account showing up in the legacy workflow builder?
In order to use a connected account in the legacy (v1) workflow builder, the account must be shared with the entire workspace. Private accounts are accessible in the latest version of the workflow builder.
# What is the "Owner" column?
The owner column on the Accounts page indicates who in the workspace originally connected the account (that is the only person who has permissions to manage access).
# Why is there no "Owner" for certain connected accounts?
Accounts that were connected before August 2023 don't have an owner associated with them, and are shared with the entire workspace. In order to manage access for any of those accounts, we'll first prompt you to reconnect.
# How can I restrict access to a connected account that's already shared with the workspace?
See above for info on managing access.
# Can I still work with other people on a single workflow, even if I don't want them to have access to my connected account?
Yes, see the section on collaborating with others.
# Accessing credentials via API
You can access credentials for any connected account via API, letting you build services anywhere and use Pipedream to handle auth. See the guide for accessing credentials via API for more details.
# Passing external credentials at runtime
If you use a secrets store like HashiCorp Vault (opens new window) or AWS Secrets Manager (opens new window), store credentials in a database, or use a service like Nango (opens new window) to manage auth, you can retrieve these secrets at runtime and pass them to any step. See the full guide here.
# Account security
See our security docs for details on how Pipedream secures your connected accounts.
# Requesting a new app or service
- Visit https://pipedream.com/support (opens new window)
- Scroll to the bottom, where you'll see a Support form.
- Select App / Integration questions and submit the request.