From bd0750ced931609562afa4ff3aca4b679ae7e2b5 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Thu, 6 Nov 2025 09:13:35 +0000 Subject: [PATCH 1/2] feat(deps-dev): bump @seamapi/types in the seam group Bumps the seam group with 1 update: [@seamapi/types](https://github.com/seamapi/types). Updates `@seamapi/types` from 1.642.0 to 1.645.0 - [Release notes](https://github.com/seamapi/types/releases) - [Changelog](https://github.com/seamapi/types/blob/main/.releaserc.json) - [Commits](https://github.com/seamapi/types/compare/v1.642.0...v1.645.0) --- updated-dependencies: - dependency-name: "@seamapi/types" dependency-version: 1.645.0 dependency-type: direct:development update-type: version-update:semver-minor dependency-group: seam ... Signed-off-by: dependabot[bot] --- package-lock.json | 8 ++++---- package.json | 2 +- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/package-lock.json b/package-lock.json index d4b4ccf..555997e 100644 --- a/package-lock.json +++ b/package-lock.json @@ -8,7 +8,7 @@ "devDependencies": { "@seamapi/fake-seam-connect": "1.85.1", "@seamapi/nextlove-sdk-generator": "^1.19.4", - "@seamapi/types": "1.642.0", + "@seamapi/types": "1.645.0", "del": "^7.1.0", "prettier": "^3.2.5" } @@ -475,9 +475,9 @@ } }, "node_modules/@seamapi/types": { - "version": "1.642.0", - "resolved": "https://registry.npmjs.org/@seamapi/types/-/types-1.642.0.tgz", - "integrity": "sha512-q8nqmsjBeCk/e5nn5smUmzAzYHDGgXkIgkKTi62k0OjTYsOkDIev9eYcPurvtqpcTeQrr8vvA34wQMNXXmPMkw==", + "version": "1.645.0", + "resolved": "https://registry.npmjs.org/@seamapi/types/-/types-1.645.0.tgz", + "integrity": "sha512-93UOLFb2c/mK8Y9bHF0bmNaT3xD4RaoyLg91HE//bTpuTphpf7E0uZPM/1vxrgEOSjpMgjpKWvLjMQFlMWSeEA==", "dev": true, "license": "MIT", "engines": { diff --git a/package.json b/package.json index 7383509..d3ccee6 100644 --- a/package.json +++ b/package.json @@ -12,7 +12,7 @@ "devDependencies": { "@seamapi/fake-seam-connect": "1.85.1", "@seamapi/nextlove-sdk-generator": "^1.19.4", - "@seamapi/types": "1.642.0", + "@seamapi/types": "1.645.0", "del": "^7.1.0", "prettier": "^3.2.5" } From d76361509f4e2e63124954184c44500ade7f54dc Mon Sep 17 00:00:00 2001 From: Seam Bot Date: Thu, 6 Nov 2025 09:14:15 +0000 Subject: [PATCH 2/2] ci: Generate code --- seam/routes/connected_accounts.py | 6 ++ seam/routes/connected_accounts_simulate.py | 19 +++++ seam/routes/models.py | 86 ++++++++++++---------- 3 files changed, 74 insertions(+), 37 deletions(-) create mode 100644 seam/routes/connected_accounts_simulate.py diff --git a/seam/routes/connected_accounts.py b/seam/routes/connected_accounts.py index 6cee9ad..6e8d287 100644 --- a/seam/routes/connected_accounts.py +++ b/seam/routes/connected_accounts.py @@ -1,12 +1,18 @@ from typing import Optional, Any, List, Dict, Union from ..client import SeamHttpClient from .models import AbstractConnectedAccounts, ConnectedAccount +from .connected_accounts_simulate import ConnectedAccountsSimulate class ConnectedAccounts(AbstractConnectedAccounts): def __init__(self, client: SeamHttpClient, defaults: Dict[str, Any]): self.client = client self.defaults = defaults + self._simulate = ConnectedAccountsSimulate(client=client, defaults=defaults) + + @property + def simulate(self) -> ConnectedAccountsSimulate: + return self._simulate def delete(self, *, connected_account_id: str, sync: Optional[bool] = None) -> None: json_payload = {} diff --git a/seam/routes/connected_accounts_simulate.py b/seam/routes/connected_accounts_simulate.py new file mode 100644 index 0000000..4d7ace4 --- /dev/null +++ b/seam/routes/connected_accounts_simulate.py @@ -0,0 +1,19 @@ +from typing import Optional, Any, List, Dict, Union +from ..client import SeamHttpClient +from .models import AbstractConnectedAccountsSimulate + + +class ConnectedAccountsSimulate(AbstractConnectedAccountsSimulate): + def __init__(self, client: SeamHttpClient, defaults: Dict[str, Any]): + self.client = client + self.defaults = defaults + + def disconnect(self, *, connected_account_id: str) -> None: + json_payload = {} + + if connected_account_id is not None: + json_payload["connected_account_id"] = connected_account_id + + self.client.post("/connected_accounts/simulate/disconnect", json=json_payload) + + return None diff --git a/seam/routes/models.py b/seam/routes/models.py index 503be40..00c9d8a 100644 --- a/seam/routes/models.py +++ b/seam/routes/models.py @@ -2304,45 +2304,10 @@ def list( raise NotImplementedError() -class AbstractConnectedAccounts(abc.ABC): - - @abc.abstractmethod - def delete(self, *, connected_account_id: str, sync: Optional[bool] = None) -> None: - raise NotImplementedError() - - @abc.abstractmethod - def get( - self, *, connected_account_id: Optional[str] = None, email: Optional[str] = None - ) -> ConnectedAccount: - raise NotImplementedError() - - @abc.abstractmethod - def list( - self, - *, - custom_metadata_has: Optional[Dict[str, Any]] = None, - customer_key: Optional[str] = None, - limit: Optional[int] = None, - page_cursor: Optional[str] = None, - search: Optional[str] = None, - user_identifier_key: Optional[str] = None - ) -> List[ConnectedAccount]: - raise NotImplementedError() +class AbstractConnectedAccountsSimulate(abc.ABC): @abc.abstractmethod - def sync(self, *, connected_account_id: str) -> None: - raise NotImplementedError() - - @abc.abstractmethod - def update( - self, - *, - connected_account_id: str, - accepted_capabilities: Optional[List[str]] = None, - automatically_manage_new_devices: Optional[bool] = None, - custom_metadata: Optional[Dict[str, Any]] = None, - customer_key: Optional[str] = None - ) -> None: + def disconnect(self, *, connected_account_id: str) -> None: raise NotImplementedError() @@ -3026,6 +2991,53 @@ def list( raise NotImplementedError() +class AbstractConnectedAccounts(abc.ABC): + + @property + @abc.abstractmethod + def simulate(self) -> AbstractConnectedAccountsSimulate: + raise NotImplementedError() + + @abc.abstractmethod + def delete(self, *, connected_account_id: str, sync: Optional[bool] = None) -> None: + raise NotImplementedError() + + @abc.abstractmethod + def get( + self, *, connected_account_id: Optional[str] = None, email: Optional[str] = None + ) -> ConnectedAccount: + raise NotImplementedError() + + @abc.abstractmethod + def list( + self, + *, + custom_metadata_has: Optional[Dict[str, Any]] = None, + customer_key: Optional[str] = None, + limit: Optional[int] = None, + page_cursor: Optional[str] = None, + search: Optional[str] = None, + user_identifier_key: Optional[str] = None + ) -> List[ConnectedAccount]: + raise NotImplementedError() + + @abc.abstractmethod + def sync(self, *, connected_account_id: str) -> None: + raise NotImplementedError() + + @abc.abstractmethod + def update( + self, + *, + connected_account_id: str, + accepted_capabilities: Optional[List[str]] = None, + automatically_manage_new_devices: Optional[bool] = None, + custom_metadata: Optional[Dict[str, Any]] = None, + customer_key: Optional[str] = None + ) -> None: + raise NotImplementedError() + + class AbstractLocks(abc.ABC): @property