You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: docs-v2/pages/connect/index.mdx
-7Lines changed: 0 additions & 7 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -13,11 +13,6 @@ import VideoPlayer from "@/components/VideoPlayer";
13
13
Please reach out at `[email protected]` or our [Slack community](https://pipedream.com/support) to let us know how you're using it, what's not working, and what else you'd like to see.
14
14
</Callout>
15
15
16
-
<VideoPlayer
17
-
src="https://www.youtube.com/embed/xhUagMsogkQ"
18
-
title="Pipedream Connect Public Preview"
19
-
/>
20
-
21
16
Pipedream Connect is the easiest way for your users to connect to [over {process.env.PUBLIC_APPS}+ APIs](https://pipedream.com/apps), **right in your product**. You can build in-app messaging, CRM syncs, AI-driven products, [and much more](/connect/use-cases), all in a few minutes. Visit [the quickstart](/connect/quickstart) to build your first integration.
22
17
23
18
Connect lets your users authorize access to any API, directly in your app. You can then retrieve fresh credentials for any account, making requests on their behalf. Pipedream handles the security of credentials and the whole OAuth flow — **no need to manage authorization grants or token refresh yourself.**
@@ -73,9 +68,7 @@ All credentials and tokens are sent to Pipedream securely over HTTPS, and encryp
73
68
## Product roadmap for Connect
74
69
75
70
- Address bugs and feedback during the preview phase
76
-
- Use Pipedream OAuth clients while in development, to make it easier to get started
77
71
- Invoke Pipedream workflows on behalf of your end users
78
-
- Improve error handling for Connect developers and end users
Copy file name to clipboardExpand all lines: docs-v2/pages/connect/quickstart.mdx
-7Lines changed: 0 additions & 7 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -7,13 +7,6 @@ import VideoPlayer from "@/components/VideoPlayer";
7
7
8
8
Pipedream Connect is the easiest way for your users to connect to [over {process.env.PUBLIC_APPS}+ APIs](https://pipedream.com/apps), **right in your product**. You can build in-app messaging, CRM syncs, AI-driven products, [and much more](/connect/use-cases), all in a few minutes.
9
9
10
-
If you prefer videos to text, this demo walks through this quickstart:
11
-
12
-
<VideoPlayer
13
-
src="https://www.youtube.com/embed/xhUagMsogkQ"
14
-
title="Pipedream Connect Public Preview"
15
-
/>
16
-
17
10
## Visual overview
18
11
19
12
Here's a high-level overview of how Connect works with your app:
Copy file name to clipboardExpand all lines: docs-v2/pages/privacy-and-security/best-practices.mdx
+7-9Lines changed: 7 additions & 9 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -1,10 +1,10 @@
1
1
# Security Best Practices
2
2
3
-
Pipedream implements a range of [privacy and security measures](/privacy-and-security/) meant to protect your data from unauthorized access. Since Pipedream [workflows](/workflows/), [event sources](/sources/), and other resources can run any Node.js code and process any event data, you also have a responsibility to ensure you handle that code and data securely. We've outlined a handful of best practices for that below.
3
+
Pipedream implements a range of [privacy and security measures](/privacy-and-security/) meant to protect your data from unauthorized access. Since Pipedream [workflows](/workflows/), [event sources](/sources/), and other resources can run any code and process any event data, you also have a responsibility to ensure you handle that code and data securely. We've outlined a handful of best practices for that below.
4
4
5
5
## Store secrets as Pipedream connected accounts or environment variables
6
6
7
-
Even if your workflow code is private, you should never store secrets like API keys in code. These secrets should be stored in one of two ways:
7
+
Never store secrets like API keys directly in code. These secrets should be stored in one of two ways:
8
8
9
9
-[If Pipedream integrates with the app](https://pipedream.com/apps), use [connected accounts](/connected-accounts/) to link your apps / APIs.
10
10
- If you need to store credentials for an app Pipedream doesn't support, or you need to store arbitrary configuration data, use [environment variables](/environment-variables/).
@@ -13,21 +13,19 @@ Read more about how Pipedream secures connected accounts / environment variables
13
13
14
14
## Deliver data to Pipedream securely
15
15
16
-
Whenever possible, encrypt data in transit to Pipedream. For example, use HTTPS endpoints when sending HTTP traffic to a workflow.
16
+
Always send data over HTTPS to Pipedreamendpoints.
17
17
18
18
## Send data out of Pipedream securely
19
19
20
20
When you connect to APIs in a workflow, or deliver data to third-party destinations, encrypt that data in transit. For example, use HTTPS endpoints when sending HTTP traffic to third parties.
21
21
22
-
## Add authentication to incoming event data
22
+
## Require authorization for HTTP triggers
23
23
24
-
You can add many public-facing triggers to your workflows. For example, when you add an HTTP trigger to your workflow, anyone with the associated trigger URL can invoke it. You should protect your workflow with an authentication mechanism like [Basic Auth](https://developer.mozilla.org/en-US/docs/Web/HTTP/Authentication), JWT, or others.
24
+
HTTP triggers are public by default, and require no authorization or token to invoke.
25
25
26
-
The easiest way to do this is to use the [Validate Webhook Auth action](https://pipedream.com/apps/http/actions/validate-webhook-auth). This supports common auth options, and you don't have to write any code to configure it.
26
+
For many workflows, you should [configure authorization](/workflows/triggers#authorizing-http-requests) to ensure that only authorized parties can invoke your HTTP trigger.
27
27
28
-
If you need to implement custom logic in code, see [this workflow](https://pipedream.com/new?h=tch_OaJfNv) for a shared API key example. This reads the header `x-api-key` and compares it to the [environment variable](/environment-variables/) called `YOUR_WEBHOOK_API_KEY`. If the `x-api-key` header does not match this variable, it returns a `401 Unauthorized` error and exits the workflow early.
29
-
30
-
This pattern is typical for protecting workflows: add the authentication logic in a step at the top of your workflow, ending early if auth fails. If auth succeeds, Pipedream runs the remaining steps of your workflow.
28
+
For third-party services like webhooks, that authorize requests using their own mechanism, use the [Validate Webhook Auth action](https://pipedream.com/apps/http/actions/validate-webhook-auth). This supports common auth options, and you don't have to write any code to configure it.
31
29
32
30
## Validate signatures for incoming events, where available
@@ -63,18 +63,18 @@ including all fields). Pass as a string of comma-separated values:
63
63
64
64
---
65
65
66
+
`org_id`**string**
67
+
66
68
<Callout>
67
-
The `workspace_id` parameter is only required when using [User API keys](/rest-api/auth#user-api-keys). When authenticating with OAuth tokens, the API will automatically use the workspace associated with the token.
69
+
The `org_id` parameter is only required when using [User API keys](/rest-api/auth#user-api-keys). When authenticating with OAuth tokens, the API will automatically use the workspace associated with the token.
68
70
</Callout>
69
71
70
-
`workspace_id`**string**
71
-
72
72
When using [User API keys](/rest-api/auth#user-api-keys), some endpoints require you to specify [your workspace ID](/workspaces/#finding-your-workspace-s-id) you want the operation to take effect in:
73
73
74
-
- When _fetching_ specific resources (for example, when you [retrieve events for a specific source](#get-source-events)), **you should not need to pass your workspace's ID**. If your user is a part of the workspace, and you have access to that resource, and the API will return the details of the resource.
75
-
- When _creating_ new resources, you'll need to specify the `workspace_id` in which you want to create the resource.
74
+
- When _fetching_ specific resources (for example, when you [retrieve events for a specific source](#get-source-events)), **you should not need to pass `org_id`**. If your user is a part of the workspace, and you have access to that resource, and the API will return the details of the resource.
75
+
- When _creating_ new resources, you'll need to specify the `org_id` in which you want to create the resource.
76
76
77
-
[Find your workspace's ID here](/workspaces/#finding-your-workspace-s-id).
77
+
[Find your workspace / org ID here](/workspaces/#finding-your-workspace-s-id).
0 commit comments