diff --git a/poetry.lock b/poetry.lock index 086974a..129bf49 100644 --- a/poetry.lock +++ b/poetry.lock @@ -38,13 +38,13 @@ trio = ["trio (>=0.26.1)"] [[package]] name = "certifi" -version = "2026.2.25" +version = "2026.4.22" description = "Python package for providing Mozilla's CA Bundle." optional = false python-versions = ">=3.7" files = [ - {file = "certifi-2026.2.25-py3-none-any.whl", hash = "sha256:027692e4402ad994f1c42e52a4997a9763c646b73e4096e4d5d6db8af1d6f0fa"}, - {file = "certifi-2026.2.25.tar.gz", hash = "sha256:e887ab5cee78ea814d3472169153c2d12cd43b14bd03329a39a9c6e2e80bfba7"}, + {file = "certifi-2026.4.22-py3-none-any.whl", hash = "sha256:3cb2210c8f88ba2318d29b0388d1023c8492ff72ecdde4ebdaddbb13a31b1c4a"}, + {file = "certifi-2026.4.22.tar.gz", hash = "sha256:8d455352a37b71bf76a79caa83a3d6c25afee4a385d632127b6afb3963f1c580"}, ] [[package]] @@ -147,13 +147,13 @@ zstd = ["zstandard (>=0.18.0)"] [[package]] name = "idna" -version = "3.12" +version = "3.13" description = "Internationalized Domain Names in Applications (IDNA)" optional = false python-versions = ">=3.8" files = [ - {file = "idna-3.12-py3-none-any.whl", hash = "sha256:60ffaa1858fac94c9c124728c24fcde8160f3fb4a7f79aa8cdd33a9d1af60a67"}, - {file = "idna-3.12.tar.gz", hash = "sha256:724e9952cc9e2bd7550ea784adb098d837ab5267ef67a1ab9cf7846bdbdd8254"}, + {file = "idna-3.13-py3-none-any.whl", hash = "sha256:892ea0cde124a99ce773decba204c5552b69c3c67ffd5f232eb7696135bc8bb3"}, + {file = "idna-3.13.tar.gz", hash = "sha256:585ea8fe5d69b9181ec1afba340451fba6ba764af97026f92a91d4eef164a242"}, ] [package.extras] @@ -236,13 +236,13 @@ files = [ [[package]] name = "packaging" -version = "26.1" +version = "26.2" description = "Core utilities for Python packages" optional = false python-versions = ">=3.8" files = [ - {file = "packaging-26.1-py3-none-any.whl", hash = "sha256:5d9c0669c6285e491e0ced2eee587eaf67b670d94a19e94e3984a481aba6802f"}, - {file = "packaging-26.1.tar.gz", hash = "sha256:f042152b681c4bfac5cae2742a55e103d27ab2ec0f3d88037136b6bfe7c9c5de"}, + {file = "packaging-26.2-py3-none-any.whl", hash = "sha256:5fc45236b9446107ff2415ce77c807cee2862cb6fac22b8a73826d0693b0980e"}, + {file = "packaging-26.2.tar.gz", hash = "sha256:ff452ff5a3e828ce110190feff1178bb1f2ea2281fa2075aadb987c2fb221661"}, ] [[package]] diff --git a/pyproject.toml b/pyproject.toml index 89dca46..f751d0e 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -4,7 +4,7 @@ dynamic = ["version"] [tool.poetry] name = "pipedream" -version = "1.1.10" +version = "1.1.11" description = "" readme = "README.md" authors = [] diff --git a/reference.md b/reference.md index 6d7b302..8833cf8 100644 --- a/reference.md +++ b/reference.md @@ -4,6 +4,20 @@
+#### 📝 Description + +
+
+ +
+
+ +Retrieve all available categories for integrated apps +
+
+
+
+ #### 🔌 Usage
@@ -38,7 +52,7 @@ client.app_categories.list()
**request_options:** `typing.Optional[RequestOptions]` — Request-specific configuration. - +
@@ -53,6 +67,20 @@ client.app_categories.list()
+#### 📝 Description + +
+
+ +
+
+ +Get details of a specific app category by its ID +
+
+
+
+ #### 🔌 Usage
@@ -89,7 +117,7 @@ client.app_categories.retrieve(
**id:** `str` — The ID of the app category to retrieve - +
@@ -97,7 +125,7 @@ client.app_categories.retrieve(
**request_options:** `typing.Optional[RequestOptions]` — Request-specific configuration. - +
@@ -113,6 +141,20 @@ client.app_categories.retrieve(
+#### 📝 Description + +
+
+ +
+
+ +Retrieve all available apps with optional filtering and sorting +
+
+
+
+ #### 🔌 Usage
@@ -130,7 +172,17 @@ client = Pipedream( client_id="YOUR_CLIENT_ID", client_secret="YOUR_CLIENT_SECRET", ) -response = client.apps.list() +response = client.apps.list( + after="after", + before="before", + limit=1, + q="q", + sort_key="name", + sort_direction="asc", + has_components=True, + has_actions=True, + has_triggers=True, +) for item in response: yield item # alternatively, you can paginate page-by-page @@ -152,7 +204,7 @@ for page in response.iter_pages():
**after:** `typing.Optional[str]` — The cursor to start from for pagination - +
@@ -160,7 +212,7 @@ for page in response.iter_pages():
**before:** `typing.Optional[str]` — The cursor to end before for pagination - +
@@ -168,7 +220,7 @@ for page in response.iter_pages():
**limit:** `typing.Optional[int]` — The maximum number of results to return - +
@@ -176,7 +228,7 @@ for page in response.iter_pages():
**q:** `typing.Optional[str]` — A search query to filter the apps - +
@@ -184,7 +236,7 @@ for page in response.iter_pages():
**sort_key:** `typing.Optional[AppsListRequestSortKey]` — The key to sort the apps by - +
@@ -192,7 +244,7 @@ for page in response.iter_pages():
**sort_direction:** `typing.Optional[AppsListRequestSortDirection]` — The direction to sort the apps - +
@@ -200,15 +252,39 @@ for page in response.iter_pages():
**category_ids:** `typing.Optional[typing.Union[str, typing.Sequence[str]]]` — Only return apps in these categories + +
+ +
+
+ +**has_components:** `typing.Optional[bool]` — Only return apps that have components (actions or triggers) +
-**request_options:** `typing.Optional[RequestOptions]` — Request-specific configuration. +**has_actions:** `typing.Optional[bool]` — Only return apps that have actions + +
+
+ +
+
+ +**has_triggers:** `typing.Optional[bool]` — Only return apps that have triggers + +
+
+
+
+ +**request_options:** `typing.Optional[RequestOptions]` — Request-specific configuration. +
@@ -223,6 +299,20 @@ for page in response.iter_pages():
+#### 📝 Description + +
+
+ +
+
+ +Get detailed information about a specific app by ID or name slug +
+
+
+
+ #### 🔌 Usage
@@ -259,7 +349,7 @@ client.apps.retrieve(
**app_id:** `str` — The name slug or ID of the app (e.g., 'slack', 'github') - +
@@ -267,7 +357,7 @@ client.apps.retrieve(
**request_options:** `typing.Optional[RequestOptions]` — Request-specific configuration. - +
@@ -283,6 +373,20 @@ client.apps.retrieve(
+#### 📝 Description + +
+
+ +
+
+ +Retrieve all connected accounts for the project with optional filtering +
+
+
+
+ #### 🔌 Usage
@@ -300,7 +404,15 @@ client = Pipedream( client_id="YOUR_CLIENT_ID", client_secret="YOUR_CLIENT_SECRET", ) -response = client.accounts.list() +response = client.accounts.list( + external_user_id="external_user_id", + oauth_app_id="oauth_app_id", + after="after", + before="before", + limit=1, + app="app", + include_credentials=True, +) for item in response: yield item # alternatively, you can paginate page-by-page @@ -321,48 +433,48 @@ for page in response.iter_pages():
-**app_id:** `typing.Optional[str]` — The app slug or ID to filter accounts by. - +**external_user_id:** `typing.Optional[str]` +
-**external_user_id:** `typing.Optional[str]` - +**oauth_app_id:** `typing.Optional[str]` — The OAuth app ID to filter by, if applicable +
-**oauth_app_id:** `typing.Optional[str]` — The OAuth app ID to filter by, if applicable - +**after:** `typing.Optional[str]` — The cursor to start from for pagination +
-**after:** `typing.Optional[str]` — The cursor to start from for pagination - +**before:** `typing.Optional[str]` — The cursor to end before for pagination +
-**before:** `typing.Optional[str]` — The cursor to end before for pagination - +**limit:** `typing.Optional[int]` — The maximum number of results to return +
-**limit:** `typing.Optional[int]` — The maximum number of results to return - +**app:** `typing.Optional[str]` — The app slug or ID to filter accounts by. +
@@ -370,7 +482,7 @@ for page in response.iter_pages():
**include_credentials:** `typing.Optional[bool]` — Whether to retrieve the account's credentials or not - +
@@ -378,7 +490,7 @@ for page in response.iter_pages():
**request_options:** `typing.Optional[RequestOptions]` — Request-specific configuration. - +
@@ -393,6 +505,20 @@ for page in response.iter_pages():
+#### 📝 Description + +
+
+ +
+
+ +Connect a new account for an external user in the project +
+
+
+
+ #### 🔌 Usage
@@ -411,6 +537,8 @@ client = Pipedream( client_secret="YOUR_CLIENT_SECRET", ) client.accounts.create( + external_user_id="external_user_id", + oauth_app_id="oauth_app_id", app_slug="app_slug", cfmap_json="cfmap_json", connect_token="connect_token", @@ -431,7 +559,7 @@ client.accounts.create(
**app_slug:** `str` — The app slug for the account - +
@@ -439,7 +567,7 @@ client.accounts.create(
**cfmap_json:** `str` — JSON string containing the custom fields mapping - +
@@ -447,23 +575,15 @@ client.accounts.create(
**connect_token:** `str` — The connect token for authentication - -
- - -
-
- -**app_id:** `typing.Optional[str]` — The app slug or ID to filter accounts by. - +
-**external_user_id:** `typing.Optional[str]` - +**external_user_id:** `typing.Optional[str]` +
@@ -471,7 +591,7 @@ client.accounts.create(
**oauth_app_id:** `typing.Optional[str]` — The OAuth app ID to filter by, if applicable - +
@@ -479,7 +599,7 @@ client.accounts.create(
**name:** `typing.Optional[str]` — Optional name for the account - +
@@ -487,7 +607,7 @@ client.accounts.create(
**request_options:** `typing.Optional[RequestOptions]` — Request-specific configuration. - +
@@ -502,6 +622,20 @@ client.accounts.create(
+#### 📝 Description + +
+
+ +
+
+ +Get the details for a specific connected account +
+
+
+
+ #### 🔌 Usage
@@ -521,6 +655,7 @@ client = Pipedream( ) client.accounts.retrieve( account_id="account_id", + include_credentials=True, ) ``` @@ -537,8 +672,8 @@ client.accounts.retrieve(
-**account_id:** `str` - +**account_id:** `str` +
@@ -546,7 +681,7 @@ client.accounts.retrieve(
**include_credentials:** `typing.Optional[bool]` — Whether to retrieve the account's credentials or not - +
@@ -554,7 +689,7 @@ client.accounts.retrieve(
**request_options:** `typing.Optional[RequestOptions]` — Request-specific configuration. - +
@@ -569,6 +704,20 @@ client.accounts.retrieve(
+#### 📝 Description + +
+
+ +
+
+ +Remove a connected account and its associated credentials +
+
+
+
+ #### 🔌 Usage
@@ -604,8 +753,8 @@ client.accounts.delete(
-**account_id:** `str` - +**account_id:** `str` +
@@ -613,7 +762,7 @@ client.accounts.delete(
**request_options:** `typing.Optional[RequestOptions]` — Request-specific configuration. - +
@@ -628,6 +777,20 @@ client.accounts.delete(
+#### 📝 Description + +
+
+ +
+
+ +Remove all connected accounts for a specific app +
+
+
+
+ #### 🔌 Usage
@@ -663,8 +826,8 @@ client.accounts.delete_by_app(
-**app_id:** `str` - +**app_id:** `str` +
@@ -672,7 +835,7 @@ client.accounts.delete_by_app(
**request_options:** `typing.Optional[RequestOptions]` — Request-specific configuration. - +
@@ -688,6 +851,20 @@ client.accounts.delete_by_app(
+#### 📝 Description + +
+
+ +
+
+ +Remove an external user and all their associated accounts and resources +
+
+
+
+ #### 🔌 Usage
@@ -723,8 +900,8 @@ client.users.delete_external_user(
-**external_user_id:** `str` - +**external_user_id:** `str` +
@@ -732,7 +909,7 @@ client.users.delete_external_user(
**request_options:** `typing.Optional[RequestOptions]` — Request-specific configuration. - +
@@ -743,11 +920,24 @@ client.users.delete_external_user(
-## Components -
client.components.list(...) +
client.users.list(...) +
+
+ +#### 📝 Description + +
+
+
+Retrieve all external users for the project +
+
+
+
+ #### 🔌 Usage
@@ -765,7 +955,12 @@ client = Pipedream( client_id="YOUR_CLIENT_ID", client_secret="YOUR_CLIENT_SECRET", ) -response = client.components.list() +response = client.users.list( + after="after", + before="before", + limit=1, + q="q", +) for item in response: yield item # alternatively, you can paginate page-by-page @@ -787,7 +982,7 @@ for page in response.iter_pages():
**after:** `typing.Optional[str]` — The cursor to start from for pagination - +
@@ -795,7 +990,7 @@ for page in response.iter_pages():
**before:** `typing.Optional[str]` — The cursor to end before for pagination - +
@@ -803,23 +998,15 @@ for page in response.iter_pages():
**limit:** `typing.Optional[int]` — The maximum number of results to return - -
-
- -
-
- -**q:** `typing.Optional[str]` — A search query to filter the components - +
-**app:** `typing.Optional[str]` — The ID or name slug of the app to filter the components - +**q:** `typing.Optional[str]` — Filter users by external_id (partial match) +
@@ -827,7 +1014,7 @@ for page in response.iter_pages():
**request_options:** `typing.Optional[RequestOptions]` — Request-specific configuration. - +
@@ -838,10 +1025,25 @@ for page in response.iter_pages(): -
client.components.retrieve(...) +## Components +
client.components.list(...)
+#### 📝 Description + +
+
+ +
+
+ +Retrieve available components with optional search and app filtering +
+
+
+
+ #### 🔌 Usage
@@ -859,9 +1061,20 @@ client = Pipedream( client_id="YOUR_CLIENT_ID", client_secret="YOUR_CLIENT_SECRET", ) -client.components.retrieve( - component_id="component_id", +response = client.components.list( + after="after", + before="before", + limit=1, + q="q", + app="app", + registry="public", + component_type="trigger", ) +for item in response: + yield item +# alternatively, you can paginate page-by-page +for page in response.iter_pages(): + yield page ```
@@ -877,30 +1090,92 @@ client.components.retrieve(
-**component_id:** `str` — The key that uniquely identifies the component (e.g., 'slack-send-message') - +**after:** `typing.Optional[str]` — The cursor to start from for pagination +
-**request_options:** `typing.Optional[RequestOptions]` — Request-specific configuration. - -
-
+**before:** `typing.Optional[str]` — The cursor to end before for pagination +
+
+
+**limit:** `typing.Optional[int]` — The maximum number of results to return +
-
-
client.components.configure_prop(...)
+**q:** `typing.Optional[str]` — A search query to filter the components + +
+
+ +
+
+ +**app:** `typing.Optional[str]` — The ID or name slug of the app to filter the components + +
+
+ +
+
+ +**registry:** `typing.Optional[ComponentsListRequestRegistry]` — The registry to retrieve components from. Defaults to 'all' ('public', 'private', or 'all') + +
+
+ +
+
+ +**component_type:** `typing.Optional[ComponentType]` — The type of the component to filter the components + +
+
+ +
+
+ +**request_options:** `typing.Optional[RequestOptions]` — Request-specific configuration. + +
+
+ + + + + + +
+ +
client.components.retrieve(...) +
+
+ +#### 📝 Description + +
+
+ +
+
+ +Get detailed configuration for a specific component by its key +
+
+
+
+ #### 🔌 Usage
@@ -918,10 +1193,9 @@ client = Pipedream( client_id="YOUR_CLIENT_ID", client_secret="YOUR_CLIENT_SECRET", ) -client.components.configure_prop( - id="id", - external_user_id="external_user_id", - prop_name="prop_name", +client.components.retrieve( + component_id="component_id", + version="1.2.3", ) ``` @@ -938,64 +1212,139 @@ client.components.configure_prop(
-**id:** `str` — The component ID +**component_id:** `str` — The key that uniquely identifies the component (e.g., 'slack-send-message') + +
+
+ +
+
+**version:** `typing.Optional[str]` — Optional semantic version of the component to retrieve (for example '1.0.0') +
-**external_user_id:** `str` — The external user ID +**request_options:** `typing.Optional[RequestOptions]` — Request-specific configuration. + +
+
+
+
+ +
+
client.components.configure_prop(...)
-**prop_name:** `str` — The name of the prop to configure +#### 📝 Description + +
+
+ +
+
+Retrieve remote options for a given prop for a component +
+
+#### 🔌 Usage + +
+
+
-**async_handle:** `typing.Optional[str]` +```python +from pipedream import Pipedream + +client = Pipedream( + project_id="YOUR_PROJECT_ID", + project_environment="YOUR_PROJECT_ENVIRONMENT", + client_id="YOUR_CLIENT_ID", + client_secret="YOUR_CLIENT_SECRET", +) +client.components.configure_prop( + id="id", + external_user_id="external_user_id", + prop_name="prop_name", +) +```
+
+
+ +#### ⚙️ Parameters
-**blocking:** `typing.Optional[bool]` — Whether this operation should block until completion +
+
+**id:** `str` — The component ID +
-**configured_props:** `typing.Optional[typing.Dict[str, typing.Optional[typing.Any]]]` — The configured properties for the component +**external_user_id:** `str` — The external user ID + +
+
+ +
+
+**prop_name:** `str` — The name of the prop to configure +
-**dynamic_props_id:** `typing.Optional[str]` — The ID for dynamic props +**version:** `typing.Optional[str]` — Optional component version (in SemVer format, for example '1.0.0'), defaults to latest + +
+
+ +
+
+**blocking:** `typing.Optional[bool]` — Whether this operation should block until completion +
-**configure_prop_opts_async_handle:** `typing.Optional[str]` — Handle for async operations +**configured_props:** `typing.Optional[ConfiguredProps]` + +
+
+ +
+
+**dynamic_props_id:** `typing.Optional[str]` — The ID for dynamic props +
@@ -1003,15 +1352,15 @@ client.components.configure_prop(
**page:** `typing.Optional[float]` — Page number for paginated results - +
-**prev_context:** `typing.Optional[typing.Dict[str, typing.Optional[typing.Any]]]` — Previous context for pagination - +**prev_context:** `typing.Optional[typing.Dict[str, typing.Any]]` — Previous context for pagination +
@@ -1019,7 +1368,7 @@ client.components.configure_prop(
**query:** `typing.Optional[str]` — Search query for filtering options - +
@@ -1027,7 +1376,7 @@ client.components.configure_prop(
**request_options:** `typing.Optional[RequestOptions]` — Request-specific configuration. - +
@@ -1042,6 +1391,20 @@ client.components.configure_prop(
+#### 📝 Description + +
+
+ +
+
+ +Reload the prop definition based on the currently configured props +
+
+
+
+ #### 🔌 Usage
@@ -1079,7 +1442,7 @@ client.components.reload_props(
**id:** `str` — The component ID - +
@@ -1087,15 +1450,15 @@ client.components.reload_props(
**external_user_id:** `str` — The external user ID - +
-**async_handle:** `typing.Optional[str]` - +**version:** `typing.Optional[str]` — Optional component version (in SemVer format, for example '1.0.0'), defaults to latest +
@@ -1103,15 +1466,15 @@ client.components.reload_props(
**blocking:** `typing.Optional[bool]` — Whether this operation should block until completion - +
-**configured_props:** `typing.Optional[typing.Dict[str, typing.Optional[typing.Any]]]` — The configured properties for the component - +**configured_props:** `typing.Optional[ConfiguredProps]` +
@@ -1119,15 +1482,7 @@ client.components.reload_props(
**dynamic_props_id:** `typing.Optional[str]` — The ID for dynamic props - -
- - -
-
- -**reload_props_opts_async_handle:** `typing.Optional[str]` — Handle for async operations - +
@@ -1135,7 +1490,7 @@ client.components.reload_props(
**request_options:** `typing.Optional[RequestOptions]` — Request-specific configuration. - +
@@ -1151,6 +1506,20 @@ client.components.reload_props(
+#### 📝 Description + +
+
+ +
+
+ +Retrieve available actions with optional search and app filtering +
+
+
+
+ #### 🔌 Usage
@@ -1168,7 +1537,14 @@ client = Pipedream( client_id="YOUR_CLIENT_ID", client_secret="YOUR_CLIENT_SECRET", ) -response = client.actions.list() +response = client.actions.list( + after="after", + before="before", + limit=1, + q="q", + app="app", + registry="public", +) for item in response: yield item # alternatively, you can paginate page-by-page @@ -1190,7 +1566,7 @@ for page in response.iter_pages():
**after:** `typing.Optional[str]` — The cursor to start from for pagination - +
@@ -1198,7 +1574,7 @@ for page in response.iter_pages():
**before:** `typing.Optional[str]` — The cursor to end before for pagination - +
@@ -1206,7 +1582,7 @@ for page in response.iter_pages():
**limit:** `typing.Optional[int]` — The maximum number of results to return - +
@@ -1214,7 +1590,7 @@ for page in response.iter_pages():
**q:** `typing.Optional[str]` — A search query to filter the actions - +
@@ -1222,7 +1598,15 @@ for page in response.iter_pages():
**app:** `typing.Optional[str]` — The ID or name slug of the app to filter the actions + +
+ + +
+
+**registry:** `typing.Optional[ActionsListRequestRegistry]` — The registry to retrieve actions from. Defaults to 'all' ('public', 'private', or 'all') +
@@ -1230,7 +1614,7 @@ for page in response.iter_pages():
**request_options:** `typing.Optional[RequestOptions]` — Request-specific configuration. - +
@@ -1245,6 +1629,20 @@ for page in response.iter_pages():
+#### 📝 Description + +
+
+ +
+
+ +Get detailed configuration for a specific action by its key +
+
+
+
+ #### 🔌 Usage
@@ -1264,6 +1662,7 @@ client = Pipedream( ) client.actions.retrieve( component_id="component_id", + version="1.2.3", ) ``` @@ -1281,7 +1680,15 @@ client.actions.retrieve(
**component_id:** `str` — The key that uniquely identifies the component (e.g., 'slack-send-message') + +
+
+ +
+
+**version:** `typing.Optional[str]` — Optional semantic version of the component to retrieve (for example '1.0.0') +
@@ -1289,7 +1696,7 @@ client.actions.retrieve(
**request_options:** `typing.Optional[RequestOptions]` — Request-specific configuration. - +
@@ -1304,6 +1711,20 @@ client.actions.retrieve(
+#### 📝 Description + +
+
+ +
+
+ +Retrieve remote options for a given prop for a action +
+
+
+
+ #### 🔌 Usage
@@ -1342,7 +1763,7 @@ client.actions.configure_prop(
**id:** `str` — The component ID - +
@@ -1350,7 +1771,7 @@ client.actions.configure_prop(
**external_user_id:** `str` — The external user ID - +
@@ -1358,15 +1779,15 @@ client.actions.configure_prop(
**prop_name:** `str` — The name of the prop to configure - +
-**async_handle:** `typing.Optional[str]` - +**version:** `typing.Optional[str]` — Optional component version (in SemVer format, for example '1.0.0'), defaults to latest +
@@ -1374,15 +1795,15 @@ client.actions.configure_prop(
**blocking:** `typing.Optional[bool]` — Whether this operation should block until completion - +
-**configured_props:** `typing.Optional[typing.Dict[str, typing.Optional[typing.Any]]]` — The configured properties for the component - +**configured_props:** `typing.Optional[ConfiguredProps]` +
@@ -1390,15 +1811,7 @@ client.actions.configure_prop(
**dynamic_props_id:** `typing.Optional[str]` — The ID for dynamic props - -
- - -
-
- -**configure_prop_opts_async_handle:** `typing.Optional[str]` — Handle for async operations - +
@@ -1406,15 +1819,15 @@ client.actions.configure_prop(
**page:** `typing.Optional[float]` — Page number for paginated results - +
-**prev_context:** `typing.Optional[typing.Dict[str, typing.Optional[typing.Any]]]` — Previous context for pagination - +**prev_context:** `typing.Optional[typing.Dict[str, typing.Any]]` — Previous context for pagination +
@@ -1422,7 +1835,7 @@ client.actions.configure_prop(
**query:** `typing.Optional[str]` — Search query for filtering options - +
@@ -1430,7 +1843,7 @@ client.actions.configure_prop(
**request_options:** `typing.Optional[RequestOptions]` — Request-specific configuration. - +
@@ -1445,6 +1858,20 @@ client.actions.configure_prop(
+#### 📝 Description + +
+
+ +
+
+ +Reload the prop definition based on the currently configured props +
+
+
+
+ #### 🔌 Usage
@@ -1482,7 +1909,7 @@ client.actions.reload_props(
**id:** `str` — The component ID - +
@@ -1490,15 +1917,15 @@ client.actions.reload_props(
**external_user_id:** `str` — The external user ID - +
-**async_handle:** `typing.Optional[str]` - +**version:** `typing.Optional[str]` — Optional component version (in SemVer format, for example '1.0.0'), defaults to latest +
@@ -1506,15 +1933,15 @@ client.actions.reload_props(
**blocking:** `typing.Optional[bool]` — Whether this operation should block until completion - +
-**configured_props:** `typing.Optional[typing.Dict[str, typing.Optional[typing.Any]]]` — The configured properties for the component - +**configured_props:** `typing.Optional[ConfiguredProps]` +
@@ -1522,25 +1949,17 @@ client.actions.reload_props(
**dynamic_props_id:** `typing.Optional[str]` — The ID for dynamic props - +
-**reload_props_opts_async_handle:** `typing.Optional[str]` — Handle for async operations - -
-
- -
-
- -**request_options:** `typing.Optional[RequestOptions]` — Request-specific configuration. - -
-
+**request_options:** `typing.Optional[RequestOptions]` — Request-specific configuration. + + + @@ -1553,6 +1972,20 @@ client.actions.reload_props(
+#### 📝 Description + +
+
+ +
+
+ +Execute an action with the provided configuration and return results +
+
+
+
+ #### 🔌 Usage
@@ -1590,7 +2023,7 @@ client.actions.run(
**id:** `str` — The action component ID - +
@@ -1598,23 +2031,23 @@ client.actions.run(
**external_user_id:** `str` — The external user ID - +
-**async_handle:** `typing.Optional[str]` - +**version:** `typing.Optional[str]` — Optional action component version (in SemVer format, for example '1.0.0'), defaults to latest +
-**configured_props:** `typing.Optional[typing.Dict[str, typing.Optional[typing.Any]]]` — The configured properties for the action - +**configured_props:** `typing.Optional[ConfiguredProps]` +
@@ -1622,7 +2055,15 @@ client.actions.run(
**dynamic_props_id:** `typing.Optional[str]` — The ID for dynamic props + +
+ + +
+
+**stash_id:** `typing.Optional[RunActionOptsStashId]` +
@@ -1630,7 +2071,7 @@ client.actions.run(
**request_options:** `typing.Optional[RequestOptions]` — Request-specific configuration. - +
@@ -1646,6 +2087,20 @@ client.actions.run(
+#### 📝 Description + +
+
+ +
+
+ +Retrieve available triggers with optional search and app filtering +
+
+
+
+ #### 🔌 Usage
@@ -1663,7 +2118,14 @@ client = Pipedream( client_id="YOUR_CLIENT_ID", client_secret="YOUR_CLIENT_SECRET", ) -response = client.triggers.list() +response = client.triggers.list( + after="after", + before="before", + limit=1, + q="q", + app="app", + registry="public", +) for item in response: yield item # alternatively, you can paginate page-by-page @@ -1685,7 +2147,7 @@ for page in response.iter_pages():
**after:** `typing.Optional[str]` — The cursor to start from for pagination - +
@@ -1693,7 +2155,7 @@ for page in response.iter_pages():
**before:** `typing.Optional[str]` — The cursor to end before for pagination - +
@@ -1701,7 +2163,7 @@ for page in response.iter_pages():
**limit:** `typing.Optional[int]` — The maximum number of results to return - +
@@ -1709,7 +2171,7 @@ for page in response.iter_pages():
**q:** `typing.Optional[str]` — A search query to filter the triggers - +
@@ -1717,7 +2179,15 @@ for page in response.iter_pages():
**app:** `typing.Optional[str]` — The ID or name slug of the app to filter the triggers + +
+ + +
+
+**registry:** `typing.Optional[TriggersListRequestRegistry]` — The registry to retrieve triggers from. Defaults to 'all' ('public', 'private', or 'all') +
@@ -1725,7 +2195,7 @@ for page in response.iter_pages():
**request_options:** `typing.Optional[RequestOptions]` — Request-specific configuration. - +
@@ -1740,6 +2210,20 @@ for page in response.iter_pages():
+#### 📝 Description + +
+
+ +
+
+ +Get detailed configuration for a specific trigger by its key +
+
+
+
+ #### 🔌 Usage
@@ -1759,6 +2243,7 @@ client = Pipedream( ) client.triggers.retrieve( component_id="component_id", + version="1.2.3", ) ``` @@ -1776,7 +2261,15 @@ client.triggers.retrieve(
**component_id:** `str` — The key that uniquely identifies the component (e.g., 'slack-send-message') + +
+
+
+
+ +**version:** `typing.Optional[str]` — Optional semantic version of the component to retrieve (for example '1.0.0') +
@@ -1784,7 +2277,7 @@ client.triggers.retrieve(
**request_options:** `typing.Optional[RequestOptions]` — Request-specific configuration. - +
@@ -1799,6 +2292,20 @@ client.triggers.retrieve(
+#### 📝 Description + +
+
+ +
+
+ +Retrieve remote options for a given prop for a trigger +
+
+
+
+ #### 🔌 Usage
@@ -1837,7 +2344,7 @@ client.triggers.configure_prop(
**id:** `str` — The component ID - +
@@ -1845,7 +2352,7 @@ client.triggers.configure_prop(
**external_user_id:** `str` — The external user ID - +
@@ -1853,15 +2360,15 @@ client.triggers.configure_prop(
**prop_name:** `str` — The name of the prop to configure - +
-**async_handle:** `typing.Optional[str]` - +**version:** `typing.Optional[str]` — Optional component version (in SemVer format, for example '1.0.0'), defaults to latest +
@@ -1869,15 +2376,15 @@ client.triggers.configure_prop(
**blocking:** `typing.Optional[bool]` — Whether this operation should block until completion - +
-**configured_props:** `typing.Optional[typing.Dict[str, typing.Optional[typing.Any]]]` — The configured properties for the component - +**configured_props:** `typing.Optional[ConfiguredProps]` +
@@ -1885,15 +2392,7 @@ client.triggers.configure_prop(
**dynamic_props_id:** `typing.Optional[str]` — The ID for dynamic props - -
- - -
-
- -**configure_prop_opts_async_handle:** `typing.Optional[str]` — Handle for async operations - +
@@ -1901,15 +2400,15 @@ client.triggers.configure_prop(
**page:** `typing.Optional[float]` — Page number for paginated results - +
-**prev_context:** `typing.Optional[typing.Dict[str, typing.Optional[typing.Any]]]` — Previous context for pagination - +**prev_context:** `typing.Optional[typing.Dict[str, typing.Any]]` — Previous context for pagination +
@@ -1917,7 +2416,7 @@ client.triggers.configure_prop(
**query:** `typing.Optional[str]` — Search query for filtering options - +
@@ -1925,7 +2424,7 @@ client.triggers.configure_prop(
**request_options:** `typing.Optional[RequestOptions]` — Request-specific configuration. - +
@@ -1940,6 +2439,20 @@ client.triggers.configure_prop(
+#### 📝 Description + +
+
+ +
+
+ +Reload the prop definition based on the currently configured props +
+
+
+
+ #### 🔌 Usage
@@ -1977,7 +2490,7 @@ client.triggers.reload_props(
**id:** `str` — The component ID - +
@@ -1985,15 +2498,15 @@ client.triggers.reload_props(
**external_user_id:** `str` — The external user ID - +
-**async_handle:** `typing.Optional[str]` - +**version:** `typing.Optional[str]` — Optional component version (in SemVer format, for example '1.0.0'), defaults to latest +
@@ -2001,15 +2514,15 @@ client.triggers.reload_props(
**blocking:** `typing.Optional[bool]` — Whether this operation should block until completion - +
-**configured_props:** `typing.Optional[typing.Dict[str, typing.Optional[typing.Any]]]` — The configured properties for the component - +**configured_props:** `typing.Optional[ConfiguredProps]` +
@@ -2017,15 +2530,7 @@ client.triggers.reload_props(
**dynamic_props_id:** `typing.Optional[str]` — The ID for dynamic props - -
- - -
-
- -**reload_props_opts_async_handle:** `typing.Optional[str]` — Handle for async operations - +
@@ -2033,7 +2538,7 @@ client.triggers.reload_props(
**request_options:** `typing.Optional[RequestOptions]` — Request-specific configuration. - +
@@ -2048,6 +2553,20 @@ client.triggers.reload_props(
+#### 📝 Description + +
+
+ +
+
+ +Deploy a trigger to listen for and emit events +
+
+
+
+ #### 🔌 Usage
@@ -2085,7 +2604,7 @@ client.triggers.deploy(
**id:** `str` — The trigger component ID - +
@@ -2093,15 +2612,23 @@ client.triggers.deploy(
**external_user_id:** `str` — The external user ID - +
-**configured_props:** `typing.Optional[typing.Dict[str, typing.Optional[typing.Any]]]` — The configured properties for the trigger +**version:** `typing.Optional[str]` — Optional trigger component version (in SemVer format, for example '1.0.0'), defaults to latest + +
+
+ +
+
+**configured_props:** `typing.Optional[ConfiguredProps]` +
@@ -2109,7 +2636,15 @@ client.triggers.deploy(
**dynamic_props_id:** `typing.Optional[str]` — The ID for dynamic props + +
+ + +
+
+**workflow_id:** `typing.Optional[str]` — Optional ID of a workflow to receive trigger events +
@@ -2117,7 +2652,15 @@ client.triggers.deploy(
**webhook_url:** `typing.Optional[str]` — Optional webhook URL to receive trigger events + +
+ + +
+
+**emit_on_deploy:** `typing.Optional[bool]` — Whether the trigger should emit events during the deploy hook execution. Defaults to true if not specified. +
@@ -2125,7 +2668,7 @@ client.triggers.deploy(
**request_options:** `typing.Optional[RequestOptions]` — Request-specific configuration. - +
@@ -2141,6 +2684,20 @@ client.triggers.deploy(
+#### 📝 Description + +
+
+ +
+
+ +Retrieve all deployed triggers for a specific external user +
+
+
+
+ #### 🔌 Usage
@@ -2159,7 +2716,11 @@ client = Pipedream( client_secret="YOUR_CLIENT_SECRET", ) response = client.deployed_triggers.list( + after="after", + before="before", + limit=1, external_user_id="external_user_id", + emitter_type="email", ) for item in response: yield item @@ -2182,7 +2743,7 @@ for page in response.iter_pages():
**external_user_id:** `str` — Your end user ID, for whom you deployed the trigger - +
@@ -2190,7 +2751,7 @@ for page in response.iter_pages():
**after:** `typing.Optional[str]` — The cursor to start from for pagination - +
@@ -2198,7 +2759,7 @@ for page in response.iter_pages():
**before:** `typing.Optional[str]` — The cursor to end before for pagination - +
@@ -2206,7 +2767,15 @@ for page in response.iter_pages():
**limit:** `typing.Optional[int]` — The maximum number of results to return + +
+ + +
+
+**emitter_type:** `typing.Optional[EmitterType]` — Filter deployed triggers by emitter type (defaults to 'source' if not provided) +
@@ -2214,7 +2783,7 @@ for page in response.iter_pages():
**request_options:** `typing.Optional[RequestOptions]` — Request-specific configuration. - +
@@ -2229,6 +2798,20 @@ for page in response.iter_pages():
+#### 📝 Description + +
+
+ +
+
+ +Get details of a specific deployed trigger by its ID +
+
+
+
+ #### 🔌 Usage
@@ -2265,8 +2848,8 @@ client.deployed_triggers.retrieve(
-**trigger_id:** `str` - +**trigger_id:** `str` +
@@ -2274,7 +2857,7 @@ client.deployed_triggers.retrieve(
**external_user_id:** `str` — Your end user ID, for whom you deployed the trigger - +
@@ -2282,7 +2865,7 @@ client.deployed_triggers.retrieve(
**request_options:** `typing.Optional[RequestOptions]` — Request-specific configuration. - +
@@ -2297,6 +2880,20 @@ client.deployed_triggers.retrieve(
+#### 📝 Description + +
+
+ +
+
+ +Modify the configuration of a deployed trigger, including active status +
+
+
+
+ #### 🔌 Usage
@@ -2333,8 +2930,8 @@ client.deployed_triggers.update(
-**trigger_id:** `str` - +**trigger_id:** `str` +
@@ -2342,7 +2939,7 @@ client.deployed_triggers.update(
**external_user_id:** `str` — The external user ID who owns the trigger - +
@@ -2350,15 +2947,15 @@ client.deployed_triggers.update(
**active:** `typing.Optional[bool]` — Whether the trigger should be active - +
-**configured_props:** `typing.Optional[typing.Dict[str, typing.Optional[typing.Any]]]` — The configured properties for the trigger - +**configured_props:** `typing.Optional[ConfiguredProps]` +
@@ -2366,7 +2963,15 @@ client.deployed_triggers.update(
**name:** `typing.Optional[str]` — The name of the trigger + +
+ +
+
+ +**emit_on_deploy:** `typing.Optional[bool]` — Whether the trigger should emit events during deployment +
@@ -2374,7 +2979,7 @@ client.deployed_triggers.update(
**request_options:** `typing.Optional[RequestOptions]` — Request-specific configuration. - +
@@ -2389,6 +2994,20 @@ client.deployed_triggers.update(
+#### 📝 Description + +
+
+ +
+
+ +Remove a deployed trigger and stop receiving events +
+
+
+
+ #### 🔌 Usage
@@ -2409,6 +3028,7 @@ client = Pipedream( client.deployed_triggers.delete( trigger_id="trigger_id", external_user_id="external_user_id", + ignore_hook_errors=True, ) ``` @@ -2425,8 +3045,8 @@ client.deployed_triggers.delete(
-**trigger_id:** `str` - +**trigger_id:** `str` +
@@ -2434,7 +3054,7 @@ client.deployed_triggers.delete(
**external_user_id:** `str` — The external user ID who owns the trigger - +
@@ -2442,7 +3062,7 @@ client.deployed_triggers.delete(
**ignore_hook_errors:** `typing.Optional[bool]` — Whether to ignore errors during deactivation hook - +
@@ -2450,7 +3070,7 @@ client.deployed_triggers.delete(
**request_options:** `typing.Optional[RequestOptions]` — Request-specific configuration. - +
@@ -2465,6 +3085,20 @@ client.deployed_triggers.delete(
+#### 📝 Description + +
+
+ +
+
+ +Retrieve recent events emitted by a deployed trigger +
+
+
+
+ #### 🔌 Usage
@@ -2485,6 +3119,7 @@ client = Pipedream( client.deployed_triggers.list_events( trigger_id="trigger_id", external_user_id="external_user_id", + n=1, ) ``` @@ -2501,8 +3136,8 @@ client.deployed_triggers.list_events(
-**trigger_id:** `str` - +**trigger_id:** `str` +
@@ -2510,7 +3145,7 @@ client.deployed_triggers.list_events(
**external_user_id:** `str` — Your end user ID, for whom you deployed the trigger - +
@@ -2518,7 +3153,7 @@ client.deployed_triggers.list_events(
**n:** `typing.Optional[int]` — The number of events to retrieve (defaults to 20 if not provided) - +
@@ -2526,7 +3161,7 @@ client.deployed_triggers.list_events(
**request_options:** `typing.Optional[RequestOptions]` — Request-specific configuration. - +
@@ -2541,7 +3176,7 @@ client.deployed_triggers.list_events(
-#### 🔌 Usage +#### 📝 Description
@@ -2549,10 +3184,24 @@ client.deployed_triggers.list_events(
-```python -from pipedream import Pipedream +Get workflows connected to receive events from this trigger +
+
+
+
-client = Pipedream( +#### 🔌 Usage + +
+
+ +
+
+ +```python +from pipedream import Pipedream + +client = Pipedream( project_id="YOUR_PROJECT_ID", project_environment="YOUR_PROJECT_ENVIRONMENT", client_id="YOUR_CLIENT_ID", @@ -2577,8 +3226,8 @@ client.deployed_triggers.list_workflows(
-**trigger_id:** `str` - +**trigger_id:** `str` +
@@ -2586,7 +3235,7 @@ client.deployed_triggers.list_workflows(
**external_user_id:** `str` — The external user ID who owns the trigger - +
@@ -2594,7 +3243,7 @@ client.deployed_triggers.list_workflows(
**request_options:** `typing.Optional[RequestOptions]` — Request-specific configuration. - +
@@ -2609,6 +3258,20 @@ client.deployed_triggers.list_workflows(
+#### 📝 Description + +
+
+ +
+
+ +Connect or disconnect workflows to receive trigger events +
+
+
+
+ #### 🔌 Usage
@@ -2646,8 +3309,8 @@ client.deployed_triggers.update_workflows(
-**trigger_id:** `str` - +**trigger_id:** `str` +
@@ -2655,7 +3318,7 @@ client.deployed_triggers.update_workflows(
**external_user_id:** `str` — The external user ID who owns the trigger - +
@@ -2663,7 +3326,7 @@ client.deployed_triggers.update_workflows(
**workflow_ids:** `typing.Sequence[str]` — Array of workflow IDs to set - +
@@ -2671,7 +3334,7 @@ client.deployed_triggers.update_workflows(
**request_options:** `typing.Optional[RequestOptions]` — Request-specific configuration. - +
@@ -2686,6 +3349,20 @@ client.deployed_triggers.update_workflows(
+#### 📝 Description + +
+
+ +
+
+ +Get webhook URLs configured to receive trigger events +
+
+
+
+ #### 🔌 Usage
@@ -2722,8 +3399,8 @@ client.deployed_triggers.list_webhooks(
-**trigger_id:** `str` - +**trigger_id:** `str` +
@@ -2731,7 +3408,7 @@ client.deployed_triggers.list_webhooks(
**external_user_id:** `str` — The external user ID who owns the trigger - +
@@ -2739,7 +3416,7 @@ client.deployed_triggers.list_webhooks(
**request_options:** `typing.Optional[RequestOptions]` — Request-specific configuration. - +
@@ -2754,6 +3431,20 @@ client.deployed_triggers.list_webhooks(
+#### 📝 Description + +
+
+ +
+
+ +Configure webhook URLs to receive trigger events. `signing_key` is only returned for OAuth-authenticated requests. +
+
+
+
+ #### 🔌 Usage
@@ -2791,8 +3482,107 @@ client.deployed_triggers.update_webhooks(
-**trigger_id:** `str` +**trigger_id:** `str` + +
+
+ +
+
+ +**external_user_id:** `str` — The external user ID who owns the trigger + +
+
+ +
+
+ +**webhook_urls:** `typing.Sequence[str]` — Array of webhook URLs to set + +
+
+ +
+
+ +**request_options:** `typing.Optional[RequestOptions]` — Request-specific configuration. + +
+
+
+
+ + + + +
+ +
client.deployed_triggers.retrieve_webhook(...) +
+
+ +#### 📝 Description + +
+
+ +
+
+ +Retrieve a specific webhook for a deployed trigger, including its signing key +
+
+
+
+ +#### 🔌 Usage + +
+
+ +
+
+ +```python +from pipedream import Pipedream + +client = Pipedream( + project_id="YOUR_PROJECT_ID", + project_environment="YOUR_PROJECT_ENVIRONMENT", + client_id="YOUR_CLIENT_ID", + client_secret="YOUR_CLIENT_SECRET", +) +client.deployed_triggers.retrieve_webhook( + trigger_id="trigger_id", + webhook_id="webhook_id", + external_user_id="external_user_id", +) + +``` +
+
+
+
+ +#### ⚙️ Parameters + +
+
+ +
+
+ +**trigger_id:** `str` + +
+
+ +
+
+**webhook_id:** `str` +
@@ -2800,15 +3590,98 @@ client.deployed_triggers.update_webhooks(
**external_user_id:** `str` — The external user ID who owns the trigger + +
+
+ +
+
+ +**request_options:** `typing.Optional[RequestOptions]` — Request-specific configuration. + +
+
+
+
+ +
+
client.deployed_triggers.regenerate_webhook_signing_key(...)
-**webhook_urls:** `typing.Sequence[str]` — Array of webhook URLs to set +#### 📝 Description + +
+
+ +
+
+ +Regenerate the signing key for a specific webhook on a deployed trigger +
+
+
+
+ +#### 🔌 Usage + +
+
+ +
+
+ +```python +from pipedream import Pipedream + +client = Pipedream( + project_id="YOUR_PROJECT_ID", + project_environment="YOUR_PROJECT_ENVIRONMENT", + client_id="YOUR_CLIENT_ID", + client_secret="YOUR_CLIENT_SECRET", +) +client.deployed_triggers.regenerate_webhook_signing_key( + trigger_id="trigger_id", + webhook_id="webhook_id", + external_user_id="external_user_id", +) + +``` +
+
+
+
+ +#### ⚙️ Parameters + +
+
+ +
+
+ +**trigger_id:** `str` + +
+
+ +
+
+ +**webhook_id:** `str` + +
+
+ +
+
+**external_user_id:** `str` — The external user ID who owns the trigger +
@@ -2816,22 +3689,898 @@ client.deployed_triggers.update_webhooks(
**request_options:** `typing.Optional[RequestOptions]` — Request-specific configuration. + +
+
+
+
+ + + + +
+ +## ProjectEnvironment +
client.project_environment.retrieve_webhook() +
+
+ +#### 📝 Description + +
+
+ +
+
+ +Retrieve the webhook configured for a project environment +
+
+
+
+ +#### 🔌 Usage + +
+
+ +
+
+ +```python +from pipedream import Pipedream + +client = Pipedream( + project_id="YOUR_PROJECT_ID", + project_environment="YOUR_PROJECT_ENVIRONMENT", + client_id="YOUR_CLIENT_ID", + client_secret="YOUR_CLIENT_SECRET", +) +client.project_environment.retrieve_webhook() + +``` +
+
+
+
+ +#### ⚙️ Parameters + +
+
+ +
+
+ +**request_options:** `typing.Optional[RequestOptions]` — Request-specific configuration. + +
+
+
+
+ + +
+
+
+ +
client.project_environment.update_webhook(...) +
+
+ +#### 📝 Description + +
+
+ +
+
+ +Create or update the webhook URL for a project environment. Creating a webhook returns `signing_key`; updating an existing webhook does not. +
+
+
+
+ +#### 🔌 Usage + +
+
+ +
+
+ +```python +from pipedream import Pipedream + +client = Pipedream( + project_id="YOUR_PROJECT_ID", + project_environment="YOUR_PROJECT_ENVIRONMENT", + client_id="YOUR_CLIENT_ID", + client_secret="YOUR_CLIENT_SECRET", +) +client.project_environment.update_webhook( + url="url", +) + +``` +
+
+
+
+ +#### ⚙️ Parameters + +
+
+ +
+
+ +**url:** `str` — The webhook URL to set + +
+
+ +
+
+ +**request_options:** `typing.Optional[RequestOptions]` — Request-specific configuration. + +
+
+
+
+ + +
+
+
+ +
client.project_environment.delete_webhook() +
+
+ +#### 📝 Description + +
+
+ +
+
+ +Remove the webhook configured for a project environment +
+
+
+
+ +#### 🔌 Usage + +
+
+ +
+
+ +```python +from pipedream import Pipedream + +client = Pipedream( + project_id="YOUR_PROJECT_ID", + project_environment="YOUR_PROJECT_ENVIRONMENT", + client_id="YOUR_CLIENT_ID", + client_secret="YOUR_CLIENT_SECRET", +) +client.project_environment.delete_webhook() + +``` +
+
+
+
+ +#### ⚙️ Parameters + +
+
+ +
+
+ +**request_options:** `typing.Optional[RequestOptions]` — Request-specific configuration. + +
+
+
+
+ + +
+
+
+ +
client.project_environment.regenerate_webhook_signing_key() +
+
+ +#### 📝 Description + +
+
+ +
+
+ +Regenerate the signing key for the project environment webhook +
+
+
+
+ +#### 🔌 Usage + +
+
+ +
+
+ +```python +from pipedream import Pipedream + +client = Pipedream( + project_id="YOUR_PROJECT_ID", + project_environment="YOUR_PROJECT_ENVIRONMENT", + client_id="YOUR_CLIENT_ID", + client_secret="YOUR_CLIENT_SECRET", +) +client.project_environment.regenerate_webhook_signing_key() + +``` +
+
+
+
+ +#### ⚙️ Parameters + +
+
+ +
+
+ +**request_options:** `typing.Optional[RequestOptions]` — Request-specific configuration. + +
+
+
+
+ + +
+
+
+ +## Projects +
client.projects.list(...) +
+
+ +#### 📝 Description + +
+
+ +
+
+ +List the projects that are available to the authenticated Connect client +
+
+
+
+ +#### 🔌 Usage + +
+
+ +
+
+ +```python +from pipedream import Pipedream + +client = Pipedream( + project_id="YOUR_PROJECT_ID", + project_environment="YOUR_PROJECT_ENVIRONMENT", + client_id="YOUR_CLIENT_ID", + client_secret="YOUR_CLIENT_SECRET", +) +response = client.projects.list( + after="after", + before="before", + limit=1, + q="q", +) +for item in response: + yield item +# alternatively, you can paginate page-by-page +for page in response.iter_pages(): + yield page + +``` +
+
+
+
+ +#### ⚙️ Parameters + +
+
+ +
+
+ +**after:** `typing.Optional[str]` — The cursor to start from for pagination + +
+
+ +
+
+ +**before:** `typing.Optional[str]` — The cursor to end before for pagination + +
+
+ +
+
+ +**limit:** `typing.Optional[int]` — The maximum number of results to return + +
+
+ +
+
+ +**q:** `typing.Optional[str]` — A search query to filter the projects + +
+
+ +
+
+ +**request_options:** `typing.Optional[RequestOptions]` — Request-specific configuration. + +
+
+
+
+ + +
+
+
+ +
client.projects.create(...) +
+
+ +#### 📝 Description + +
+
+ +
+
+ +Create a new project for the authenticated workspace +
+
+
+
+ +#### 🔌 Usage + +
+
+ +
+
+ +```python +from pipedream import Pipedream + +client = Pipedream( + project_id="YOUR_PROJECT_ID", + project_environment="YOUR_PROJECT_ENVIRONMENT", + client_id="YOUR_CLIENT_ID", + client_secret="YOUR_CLIENT_SECRET", +) +client.projects.create( + name="name", +) + +``` +
+
+
+
+ +#### ⚙️ Parameters + +
+
+ +
+
+ +**name:** `str` — Name of the project + +
+
+ +
+
+ +**app_name:** `typing.Optional[str]` — Display name for the Connect application + +
+
+ +
+
+ +**support_email:** `typing.Optional[str]` — Support email displayed to end users + +
+
+ +
+
+ +**connect_require_key_auth_test:** `typing.Optional[bool]` — Send a test request to the upstream API when adding Connect accounts for key-based apps + +
+
+ +
+
+ +**request_options:** `typing.Optional[RequestOptions]` — Request-specific configuration. + +
+
+
+
+ + +
+
+
+ +
client.projects.retrieve(...) +
+
+ +#### 📝 Description + +
+
+ +
+
+ +Get the project details for a specific project +
+
+
+
+ +#### 🔌 Usage + +
+
+ +
+
+ +```python +from pipedream import Pipedream + +client = Pipedream( + project_id="YOUR_PROJECT_ID", + project_environment="YOUR_PROJECT_ENVIRONMENT", + client_id="YOUR_CLIENT_ID", + client_secret="YOUR_CLIENT_SECRET", +) +client.projects.retrieve( + project_id="project_id", +) + +``` +
+
+
+
+ +#### ⚙️ Parameters + +
+
+ +
+
+ +**project_id:** `str` — The project ID, which starts with `proj_`. + +
+
+ +
+
+ +**request_options:** `typing.Optional[RequestOptions]` — Request-specific configuration. + +
+
+
+
+ + +
+
+
+ +
client.projects.delete(...) +
+
+ +#### 📝 Description + +
+
+ +
+
+ +Delete a project owned by the authenticated workspace +
+
+
+
+ +#### 🔌 Usage + +
+
+ +
+
+ +```python +from pipedream import Pipedream + +client = Pipedream( + project_id="YOUR_PROJECT_ID", + project_environment="YOUR_PROJECT_ENVIRONMENT", + client_id="YOUR_CLIENT_ID", + client_secret="YOUR_CLIENT_SECRET", +) +client.projects.delete( + project_id="project_id", +) + +``` +
+
+
+
+ +#### ⚙️ Parameters + +
+
+ +
+
+ +**project_id:** `str` — The project ID, which starts with `proj_`. + +
+
+ +
+
+ +**request_options:** `typing.Optional[RequestOptions]` — Request-specific configuration. + +
+
+
+
+ + +
+
+
+ +
client.projects.update(...) +
+
+ +#### 📝 Description + +
+
+ +
+
+ +Update project details or application information +
+
+
+
+ +#### 🔌 Usage + +
+
+ +
+
+ +```python +from pipedream import Pipedream + +client = Pipedream( + project_id="YOUR_PROJECT_ID", + project_environment="YOUR_PROJECT_ENVIRONMENT", + client_id="YOUR_CLIENT_ID", + client_secret="YOUR_CLIENT_SECRET", +) +client.projects.update( + project_id="project_id", +) + +``` +
+
+
+
+ +#### ⚙️ Parameters + +
+
+ +
+
+ +**project_id:** `str` — The project ID, which starts with `proj_`. + +
+
+ +
+
+ +**name:** `typing.Optional[str]` — Name of the project + +
+
+ +
+
+ +**app_name:** `typing.Optional[str]` — Display name for the Connect application + +
+
+ +
+
+ +**support_email:** `typing.Optional[str]` — Support email displayed to end users + +
+
+ +
+
+ +**connect_require_key_auth_test:** `typing.Optional[bool]` — Send a test request to the upstream API when adding Connect accounts for key-based apps + +
+
+ +
+
+ +**request_options:** `typing.Optional[RequestOptions]` — Request-specific configuration. + +
+
+
+
+ + +
+
+
+ +
client.projects.update_logo(...) +
+
+ +#### 📝 Description + +
+
+ +
+
+ +Upload or replace the project logo +
+
+
+
+ +#### 🔌 Usage + +
+
+ +
+
+ +```python +from pipedream import Pipedream + +client = Pipedream( + project_id="YOUR_PROJECT_ID", + project_environment="YOUR_PROJECT_ENVIRONMENT", + client_id="YOUR_CLIENT_ID", + client_secret="YOUR_CLIENT_SECRET", +) +client.projects.update_logo( + project_id="project_id", + logo="data:image/png;base64,AAAAAA...", +) + +``` +
+
+
+
+ +#### ⚙️ Parameters + +
+
+ +
+
+ +**project_id:** `str` — The project ID, which starts with `proj_`. + +
+
+ +
+
+ +**logo:** `str` — Data URI containing the new Base64 encoded image + +
+
+ +
+
+ +**request_options:** `typing.Optional[RequestOptions]` — Request-specific configuration. + +
+
+
+
+ + +
+
+
+ +
client.projects.retrieve_info() +
+
+ +#### 📝 Description + +
+
+ +
+
+ +Retrieve project configuration and environment details +
+
+
+
+ +#### 🔌 Usage + +
+
+ +
+
+ +```python +from pipedream import Pipedream + +client = Pipedream( + project_id="YOUR_PROJECT_ID", + project_environment="YOUR_PROJECT_ENVIRONMENT", + client_id="YOUR_CLIENT_ID", + client_secret="YOUR_CLIENT_SECRET", +) +client.projects.retrieve_info() + +``` +
+
+
+
+ +#### ⚙️ Parameters + +
+
+ +
+
+ +**request_options:** `typing.Optional[RequestOptions]` — Request-specific configuration. + +
+
+
+
+ + +
+
+
+ +## FileStash +
client.file_stash.download_file(...) +
+
+ +#### 📝 Description + +
+
+ +
+
+Download a file from File Stash
- -
-
-
- -## Projects -
client.projects.retrieve_info() -
-
- #### 🔌 Usage
@@ -2849,7 +4598,9 @@ client = Pipedream( client_id="YOUR_CLIENT_ID", client_secret="YOUR_CLIENT_SECRET", ) -client.projects.retrieve_info() +client.file_stash.download_file( + s_3_key="s3_key", +) ```
@@ -2865,8 +4616,16 @@ client.projects.retrieve_info()
-**request_options:** `typing.Optional[RequestOptions]` — Request-specific configuration. +**s_3_key:** `str` + +
+
+
+
+ +**request_options:** `typing.Optional[RequestOptions]` — Request-specific configuration. You can pass in configuration such as `chunk_size`, and more to customize the request and response. +
@@ -2882,6 +4641,20 @@ client.projects.retrieve_info()
+#### 📝 Description + +
+
+ +
+
+ +Forward an authenticated GET request to an external API using an external user's account credentials +
+
+
+
+ #### 🔌 Usage
@@ -2920,7 +4693,7 @@ client.proxy.get(
**url_64:** `str` — Base64-encoded target URL - +
@@ -2928,7 +4701,7 @@ client.proxy.get(
**external_user_id:** `str` — The external user ID for the proxy request - +
@@ -2936,15 +4709,15 @@ client.proxy.get(
**account_id:** `str` — The account ID to use for authentication - +
-**request_options:** `typing.Optional[RequestOptions]` — Request-specific configuration. - +**request_options:** `typing.Optional[RequestOptions]` — Request-specific configuration. You can pass in configuration such as `chunk_size`, and more to customize the request and response. +
@@ -2959,6 +4732,20 @@ client.proxy.get(
+#### 📝 Description + +
+
+ +
+
+ +Forward an authenticated POST request to an external API using an external user's account credentials +
+
+
+
+ #### 🔌 Usage
@@ -2980,7 +4767,7 @@ client.proxy.post( url_64="url_64", external_user_id="external_user_id", account_id="account_id", - request={"key": "value"}, + request={"string": {"key": "value"}}, ) ``` @@ -2998,7 +4785,7 @@ client.proxy.post(
**url_64:** `str` — Base64-encoded target URL - +
@@ -3006,7 +4793,7 @@ client.proxy.post(
**external_user_id:** `str` — The external user ID for the proxy request - +
@@ -3014,23 +4801,23 @@ client.proxy.post(
**account_id:** `str` — The account ID to use for authentication - +
-**request:** `typing.Dict[str, typing.Optional[typing.Any]]` - +**request:** `typing.Dict[str, typing.Any]` +
-**request_options:** `typing.Optional[RequestOptions]` — Request-specific configuration. - +**request_options:** `typing.Optional[RequestOptions]` — Request-specific configuration. You can pass in configuration such as `chunk_size`, and more to customize the request and response. +
@@ -3045,6 +4832,20 @@ client.proxy.post(
+#### 📝 Description + +
+
+ +
+
+ +Forward an authenticated PUT request to an external API using an external user's account credentials +
+
+
+
+ #### 🔌 Usage
@@ -3066,7 +4867,7 @@ client.proxy.put( url_64="url_64", external_user_id="external_user_id", account_id="account_id", - request={"key": "value"}, + request={"string": {"key": "value"}}, ) ``` @@ -3084,7 +4885,7 @@ client.proxy.put(
**url_64:** `str` — Base64-encoded target URL - +
@@ -3092,7 +4893,7 @@ client.proxy.put(
**external_user_id:** `str` — The external user ID for the proxy request - +
@@ -3100,23 +4901,23 @@ client.proxy.put(
**account_id:** `str` — The account ID to use for authentication - +
-**request:** `typing.Dict[str, typing.Optional[typing.Any]]` - +**request:** `typing.Dict[str, typing.Any]` +
-**request_options:** `typing.Optional[RequestOptions]` — Request-specific configuration. - +**request_options:** `typing.Optional[RequestOptions]` — Request-specific configuration. You can pass in configuration such as `chunk_size`, and more to customize the request and response. +
@@ -3131,6 +4932,20 @@ client.proxy.put(
+#### 📝 Description + +
+
+ +
+
+ +Forward an authenticated DELETE request to an external API using an external user's account credentials +
+
+
+
+ #### 🔌 Usage
@@ -3169,7 +4984,7 @@ client.proxy.delete(
**url_64:** `str` — Base64-encoded target URL - +
@@ -3177,7 +4992,7 @@ client.proxy.delete(
**external_user_id:** `str` — The external user ID for the proxy request - +
@@ -3185,15 +5000,15 @@ client.proxy.delete(
**account_id:** `str` — The account ID to use for authentication - +
-**request_options:** `typing.Optional[RequestOptions]` — Request-specific configuration. - +**request_options:** `typing.Optional[RequestOptions]` — Request-specific configuration. You can pass in configuration such as `chunk_size`, and more to customize the request and response. +
@@ -3208,6 +5023,20 @@ client.proxy.delete(
+#### 📝 Description + +
+
+ +
+
+ +Forward an authenticated PATCH request to an external API using an external user's account credentials +
+
+
+
+ #### 🔌 Usage
@@ -3229,7 +5058,7 @@ client.proxy.patch( url_64="url_64", external_user_id="external_user_id", account_id="account_id", - request={"key": "value"}, + request={"string": {"key": "value"}}, ) ``` @@ -3247,7 +5076,7 @@ client.proxy.patch(
**url_64:** `str` — Base64-encoded target URL - +
@@ -3255,7 +5084,7 @@ client.proxy.patch(
**external_user_id:** `str` — The external user ID for the proxy request - +
@@ -3263,23 +5092,23 @@ client.proxy.patch(
**account_id:** `str` — The account ID to use for authentication - +
-**request:** `typing.Dict[str, typing.Optional[typing.Any]]` - +**request:** `typing.Dict[str, typing.Any]` +
-**request_options:** `typing.Optional[RequestOptions]` — Request-specific configuration. - +**request_options:** `typing.Optional[RequestOptions]` — Request-specific configuration. You can pass in configuration such as `chunk_size`, and more to customize the request and response. +
@@ -3295,6 +5124,20 @@ client.proxy.patch(
+#### 📝 Description + +
+
+ +
+
+ +Generate a Connect token to use for client-side authentication +
+
+
+
+ #### 🔌 Usage
@@ -3331,7 +5174,7 @@ client.tokens.create(
**external_user_id:** `str` — Your end user ID, for whom you're creating the token - +
@@ -3339,7 +5182,7 @@ client.tokens.create(
**allowed_origins:** `typing.Optional[typing.Sequence[str]]` — List of allowed origins for CORS - +
@@ -3347,113 +5190,75 @@ client.tokens.create(
**error_redirect_uri:** `typing.Optional[str]` — URI to redirect to on error - +
-**success_redirect_uri:** `typing.Optional[str]` — URI to redirect to on success - +**expires_in:** `typing.Optional[int]` — Token TTL in seconds (max 14400 = 4 hours). Defaults to 4 hours if not specified. +
-**webhook_uri:** `typing.Optional[str]` — Webhook URI for notifications - +**scope:** `typing.Optional[str]` — Space-separated scopes to restrict token permissions. Defaults to 'connect:*' if not specified. See https://pipedream.com/docs/connect/api-reference/authentication#connect-token-scopes for more information. +
-**request_options:** `typing.Optional[RequestOptions]` — Request-specific configuration. - -
-
- - - - +**success_redirect_uri:** `typing.Optional[str]` — URI to redirect to on success + -
-
client.tokens.validate(...)
-#### 🔌 Usage - -
-
+**webhook_uri:** `typing.Optional[str]` — Webhook URI for notifications + +
+
-```python -from pipedream import Pipedream - -client = Pipedream( - project_id="YOUR_PROJECT_ID", - project_environment="YOUR_PROJECT_ENVIRONMENT", - client_id="YOUR_CLIENT_ID", - client_secret="YOUR_CLIENT_SECRET", -) -client.tokens.validate( - ctok="ctok", -) - -``` +**request_options:** `typing.Optional[RequestOptions]` — Request-specific configuration. +
-#### ⚙️ Parameters - -
-
- -
-
- -**ctok:** `str`
+
+
client.tokens.validate(...)
-**params:** `typing.Optional[ValidateTokenParams]` - -
-
+#### 📝 Description
-**request_options:** `typing.Optional[RequestOptions]` — Request-specific configuration. +
+
+Confirm the validity of a Connect token
- - - -
- -## OauthTokens -
client.oauth_tokens.create(...) -
-
- #### 🔌 Usage
@@ -3471,9 +5276,10 @@ client = Pipedream( client_id="YOUR_CLIENT_ID", client_secret="YOUR_CLIENT_SECRET", ) -client.oauth_tokens.create( - client_id="client_id", - client_secret="client_secret", +client.tokens.validate( + ctok="ctok", + app_id="app_id", + oauth_app_id="oauth_app_id", ) ``` @@ -3490,16 +5296,24 @@ client.oauth_tokens.create(
-**client_id:** `str` - +**ctok:** `ConnectToken` +
-**client_secret:** `str` +**app_id:** `str` — The app ID to validate against + +
+
+ +
+
+**oauth_app_id:** `typing.Optional[str]` — The OAuth app ID to validate against (if the token is for an OAuth app) +
@@ -3507,7 +5321,7 @@ client.oauth_tokens.create(
**request_options:** `typing.Optional[RequestOptions]` — Request-specific configuration. - +
@@ -3518,12 +5332,25 @@ client.oauth_tokens.create(
+## Usage +
client.usage.list(...) +
+
+ +#### 📝 Description + +
+
-## Workflows -
client.workflows.invoke(...)
+Retrieve Connect usage records for a time window +
+
+
+
+ #### 🔌 Usage
@@ -3534,7 +5361,6 @@ client.oauth_tokens.create( ```python from pipedream import Pipedream -from pipedream.workflows.client import HTTPAuthType client = Pipedream( project_id="YOUR_PROJECT_ID", @@ -3542,12 +5368,9 @@ client = Pipedream( client_id="YOUR_CLIENT_ID", client_secret="YOUR_CLIENT_SECRET", ) -response = client.workflows.invoke( - url_or_endpoint="https://your-workflow.m.pipedream.net", - method="POST", - body={"key": "value"}, - headers={"Content-Type": "application/json"}, - auth_type=HTTPAuthType.NONE, +client.usage.list( + start_ts=1, + end_ts=1, ) ``` @@ -3564,62 +5387,53 @@ response = client.workflows.invoke(
-**url_or_endpoint:** `str` — The URL of the workflow's HTTP interface or the ID of the endpoint - +**start_ts:** `int` — Usage window start timestamp (seconds) +
-**method:** `str` — HTTP method to use (default: "POST") - +**end_ts:** `int` — Usage window end timestamp (seconds) +
-**body:** `typing.Optional[typing.Any]` — Request body data - +**request_options:** `typing.Optional[RequestOptions]` — Request-specific configuration. + +
+
-
-
- -**headers:** `typing.Optional[typing.Dict[str, str]]` — HTTP headers to include
+
+## OauthTokens +
client.oauth_tokens.create(...)
-**auth_type:** `HTTPAuthType` — Type of authorization (default: HTTPAuthType.NONE) - -
-
+#### 📝 Description
-**request_options:** `typing.Optional[RequestOptions]` — Request-specific configuration. +
+
+Exchange OAuth credentials for an access token
- - - -
- -
client.workflows.invoke_for_external_user(...) -
-
- #### 🔌 Usage
@@ -3637,12 +5451,9 @@ client = Pipedream( client_id="YOUR_CLIENT_ID", client_secret="YOUR_CLIENT_SECRET", ) -response = client.workflows.invoke_for_external_user( - url_or_endpoint="en2r1n8a98np7", - external_user_id="user_123", - method="POST", - body={"message": "Hello from external user"}, - headers={"Content-Type": "application/json"}, +client.oauth_tokens.create( + client_id="client_id", + client_secret="client_secret", ) ``` @@ -3659,40 +5470,24 @@ response = client.workflows.invoke_for_external_user(
-**url_or_endpoint:** `str` — The URL of the workflow's HTTP interface or the ID of the endpoint - -
-
- -
-
- -**external_user_id:** `str` — The external user ID for whom the workflow is being invoked - -
-
- -
-
- -**method:** `str` — HTTP method to use (default: "POST") - +**client_id:** `str` +
-**body:** `typing.Optional[typing.Any]` — Request body data - +**client_secret:** `str` +
-**headers:** `typing.Optional[typing.Dict[str, str]]` — HTTP headers to include - +**scope:** `typing.Optional[str]` — Optional space-separated scopes for the access token. Defaults to `*`. +
@@ -3700,7 +5495,7 @@ response = client.workflows.invoke_for_external_user(
**request_options:** `typing.Optional[RequestOptions]` — Request-specific configuration. - +
diff --git a/src/pipedream/client.py b/src/pipedream/client.py index 097a503..a5e7e10 100644 --- a/src/pipedream/client.py +++ b/src/pipedream/client.py @@ -6,7 +6,7 @@ import typing import httpx -from .types.project_environment import ProjectEnvironment +from ._.types.project_environment import ProjectEnvironment from .core.api_error import ApiError from .core.client_wrapper import AsyncClientWrapper, SyncClientWrapper from .core.oauth_token_provider import AsyncOAuthTokenProvider, OAuthTokenProvider diff --git a/src/pipedream/core/client_wrapper.py b/src/pipedream/core/client_wrapper.py index 1717a15..82bea32 100644 --- a/src/pipedream/core/client_wrapper.py +++ b/src/pipedream/core/client_wrapper.py @@ -3,7 +3,7 @@ import typing import httpx -from ..types.project_environment import ProjectEnvironment +from .._.types.project_environment import ProjectEnvironment from .http_client import AsyncHttpClient, HttpClient @@ -27,10 +27,10 @@ def __init__( def get_headers(self) -> typing.Dict[str, str]: headers: typing.Dict[str, str] = { - "User-Agent": "pipedream/1.1.10", + "User-Agent": "pipedream/1.1.11", "X-Fern-Language": "Python", "X-Fern-SDK-Name": "pipedream", - "X-Fern-SDK-Version": "1.1.10", + "X-Fern-SDK-Version": "1.1.11", **(self.get_custom_headers() or {}), } if self._project_environment is not None: