From 4b4ef4966a3da16e85d7ed05fd9d4f9a9874bf67 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 15 Apr 2025 09:48:33 +0000 Subject: [PATCH 1/2] feat(deps-dev): bump the seam group with 2 updates Bumps the seam group with 2 updates: [@seamapi/fake-seam-connect](https://github.com/seamapi/fake-seam-connect) and [@seamapi/types](https://github.com/seamapi/types). Updates `@seamapi/fake-seam-connect` from 1.82.1 to 1.83.0 - [Release notes](https://github.com/seamapi/fake-seam-connect/releases) - [Changelog](https://github.com/seamapi/fake-seam-connect/blob/main/.releaserc.json) - [Commits](https://github.com/seamapi/fake-seam-connect/compare/v1.82.1...v1.83.0) Updates `@seamapi/types` from 1.378.0 to 1.384.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.378.0...v1.384.0) --- updated-dependencies: - dependency-name: "@seamapi/fake-seam-connect" dependency-version: 1.83.0 dependency-type: direct:development update-type: version-update:semver-minor dependency-group: seam - dependency-name: "@seamapi/types" dependency-version: 1.384.0 dependency-type: direct:development update-type: version-update:semver-minor dependency-group: seam ... Signed-off-by: dependabot[bot] --- package-lock.json | 16 ++++++++-------- package.json | 4 ++-- 2 files changed, 10 insertions(+), 10 deletions(-) diff --git a/package-lock.json b/package-lock.json index 69e05649..03e8308e 100644 --- a/package-lock.json +++ b/package-lock.json @@ -6,9 +6,9 @@ "": { "name": "@seamapi/python", "devDependencies": { - "@seamapi/fake-seam-connect": "1.82.1", + "@seamapi/fake-seam-connect": "1.83.0", "@seamapi/nextlove-sdk-generator": "1.18.0", - "@seamapi/types": "1.378.0", + "@seamapi/types": "1.384.0", "del": "^7.1.0", "prettier": "^3.2.5" } @@ -434,9 +434,9 @@ } }, "node_modules/@seamapi/fake-seam-connect": { - "version": "1.82.1", - "resolved": "https://registry.npmjs.org/@seamapi/fake-seam-connect/-/fake-seam-connect-1.82.1.tgz", - "integrity": "sha512-8FngEYnliV5k2ouE1IugtHVBNpojgln3SgcYp/CaoQsAPR/vYf/REVTAUfDm0hG6D/MjgbILegxpbD0dGAekYw==", + "version": "1.83.0", + "resolved": "https://registry.npmjs.org/@seamapi/fake-seam-connect/-/fake-seam-connect-1.83.0.tgz", + "integrity": "sha512-/Co6khIMI23SC6qRgkAaRM5CE41xo6qHga9Go+u21r2RvSPAaUxnA0A64nN0dyKe4o/87NHGlKWkxrAiT1XoVA==", "dev": true, "license": "MIT", "bin": { @@ -475,9 +475,9 @@ } }, "node_modules/@seamapi/types": { - "version": "1.378.0", - "resolved": "https://registry.npmjs.org/@seamapi/types/-/types-1.378.0.tgz", - "integrity": "sha512-BPI8NRTOMHJHV7r83LSIDJZGzshYAPz+Eqc5juzJwMs/QMND/UT0bT8/JMiH/guEbQMq+64b4PvUdHiIYuk2hg==", + "version": "1.384.0", + "resolved": "https://registry.npmjs.org/@seamapi/types/-/types-1.384.0.tgz", + "integrity": "sha512-pFQF4O7LaLu9J2yfNxtiuN/kCYX5WH0Sdccx6BC1rYQqwQSD1m5/yXTq14iCBa6z2R8Fw09WRU5Zp+NjHtleQQ==", "dev": true, "license": "MIT", "engines": { diff --git a/package.json b/package.json index caa5ca29..9abcf0dd 100644 --- a/package.json +++ b/package.json @@ -10,9 +10,9 @@ "start": "fake-seam-connect --seed" }, "devDependencies": { - "@seamapi/fake-seam-connect": "1.82.1", + "@seamapi/fake-seam-connect": "1.83.0", "@seamapi/nextlove-sdk-generator": "1.18.0", - "@seamapi/types": "1.378.0", + "@seamapi/types": "1.384.0", "del": "^7.1.0", "prettier": "^3.2.5" } From 6c3efd60cbe0f2fd36fdbf96c702e8cb317b05c4 Mon Sep 17 00:00:00 2001 From: Seam Bot Date: Tue, 15 Apr 2025 09:49:11 +0000 Subject: [PATCH 2/2] ci: Generate code --- seam/routes/models.py | 27 +++++++++++++++++++++++++++ seam/routes/user_identities.py | 21 ++++++++++++++++++++- 2 files changed, 47 insertions(+), 1 deletion(-) diff --git a/seam/routes/models.py b/seam/routes/models.py index 898a1b25..e760ff14 100644 --- a/seam/routes/models.py +++ b/seam/routes/models.py @@ -756,6 +756,29 @@ def from_dict(d: Dict[str, Any]): ) +@dataclass +class InstantKey: + client_session_id: str + created_at: str + expires_at: str + instant_key_id: str + instant_key_url: str + user_identity_id: str + workspace_id: str + + @staticmethod + def from_dict(d: Dict[str, Any]): + return InstantKey( + client_session_id=d.get("client_session_id", None), + created_at=d.get("created_at", None), + expires_at=d.get("expires_at", None), + instant_key_id=d.get("instant_key_id", None), + instant_key_url=d.get("instant_key_url", None), + user_identity_id=d.get("user_identity_id", None), + workspace_id=d.get("workspace_id", None), + ) + + @dataclass class Network: created_at: str @@ -2133,6 +2156,10 @@ def create( def delete(self, *, user_identity_id: str) -> None: raise NotImplementedError() + @abc.abstractmethod + def generate_instant_key(self, *, user_identity_id: str) -> InstantKey: + raise NotImplementedError() + @abc.abstractmethod def get( self, diff --git a/seam/routes/user_identities.py b/seam/routes/user_identities.py index d6e2ab9e..77901923 100644 --- a/seam/routes/user_identities.py +++ b/seam/routes/user_identities.py @@ -1,6 +1,13 @@ from typing import Optional, Any, List, Dict, Union from ..client import SeamHttpClient -from .models import AbstractUserIdentities, UserIdentity, Device, AcsSystem, AcsUser +from .models import ( + AbstractUserIdentities, + UserIdentity, + InstantKey, + Device, + AcsSystem, + AcsUser, +) from .user_identities_enrollment_automations import UserIdentitiesEnrollmentAutomations @@ -61,6 +68,18 @@ def delete(self, *, user_identity_id: str) -> None: return None + def generate_instant_key(self, *, user_identity_id: str) -> InstantKey: + json_payload = {} + + if user_identity_id is not None: + json_payload["user_identity_id"] = user_identity_id + + res = self.client.post( + "/user_identities/generate_instant_key", json=json_payload + ) + + return InstantKey.from_dict(res["instant_key"]) + def get( self, *,