From 45693389eb3a7468379da8545f1e0e208da3f6cf Mon Sep 17 00:00:00 2001 From: Kendall Swarthout Date: Wed, 26 Nov 2025 12:22:37 -0800 Subject: [PATCH] Add roles to dsync user and sso profile --- tests/test_sso.py | 1 + tests/utils/fixtures/mock_directory_user.py | 1 + tests/utils/fixtures/mock_profile.py | 1 + workos/types/directory_sync/directory_user.py | 1 + workos/types/sso/profile.py | 1 + 5 files changed, 5 insertions(+) diff --git a/tests/test_sso.py b/tests/test_sso.py index 7990cf9c..ec2a557a 100644 --- a/tests/test_sso.py +++ b/tests/test_sso.py @@ -30,6 +30,7 @@ def mock_magic_link_profile(self): first_name=None, last_name=None, role=None, + roles=None, groups=None, raw_attributes={}, ).dict() diff --git a/tests/utils/fixtures/mock_directory_user.py b/tests/utils/fixtures/mock_directory_user.py index e65d1063..2899e456 100644 --- a/tests/utils/fixtures/mock_directory_user.py +++ b/tests/utils/fixtures/mock_directory_user.py @@ -49,4 +49,5 @@ def __init__(self, id): ], }, role=InlineRole(slug="member"), + roles=[InlineRole(slug="member")], ) diff --git a/tests/utils/fixtures/mock_profile.py b/tests/utils/fixtures/mock_profile.py index 23d73dad..4da5b09b 100644 --- a/tests/utils/fixtures/mock_profile.py +++ b/tests/utils/fixtures/mock_profile.py @@ -11,6 +11,7 @@ def __init__(self, id: str): first_name="WorkOS", last_name="Demo", role={"slug": "admin"}, + roles=[{"slug": "admin"}], groups=["Admins", "Developers"], organization_id="org_01FG53X8636WSNW2WEKB2C31ZB", connection_id="conn_01EMH8WAK20T42N2NBMNBCYHAG", diff --git a/workos/types/directory_sync/directory_user.py b/workos/types/directory_sync/directory_user.py index cab1deab..387948fa 100644 --- a/workos/types/directory_sync/directory_user.py +++ b/workos/types/directory_sync/directory_user.py @@ -38,6 +38,7 @@ class DirectoryUser(WorkOSModel): created_at: str updated_at: str role: Optional[InlineRole] = None + roles: Optional[Sequence[InlineRole]] = None def primary_email(self) -> Union[DirectoryUserEmail, None]: return next((email for email in self.emails if email.primary), None) diff --git a/workos/types/sso/profile.py b/workos/types/sso/profile.py index 4e3c7235..af53641e 100644 --- a/workos/types/sso/profile.py +++ b/workos/types/sso/profile.py @@ -22,6 +22,7 @@ class Profile(WorkOSModel): last_name: Optional[str] = None idp_id: str role: Optional[ProfileRole] = None + roles: Optional[Sequence[ProfileRole]] = None groups: Optional[Sequence[str]] = None custom_attributes: Optional[Mapping[str, Any]] = None raw_attributes: Optional[Mapping[str, Any]] = None