workos 5.24.0__py3-none-any.whl → 5.26.0__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
workos/__about__.py CHANGED
@@ -12,7 +12,7 @@ __package_name__ = "workos"
12
12
 
13
13
  __package_url__ = "https://github.com/workos-inc/workos-python"
14
14
 
15
- __version__ = "5.24.0"
15
+ __version__ = "5.26.0"
16
16
 
17
17
  __author__ = "WorkOS"
18
18
 
workos/_base_client.py CHANGED
@@ -11,6 +11,7 @@ from workos.directory_sync import DirectorySyncModule
11
11
  from workos.events import EventsModule
12
12
  from workos.mfa import MFAModule
13
13
  from workos.organizations import OrganizationsModule
14
+ from workos.organization_domains import OrganizationDomainsModule
14
15
  from workos.passwordless import PasswordlessModule
15
16
  from workos.portal import PortalModule
16
17
  from workos.sso import SSOModule
@@ -88,6 +89,10 @@ class BaseClient(ClientConfiguration):
88
89
  @abstractmethod
89
90
  def organizations(self) -> OrganizationsModule: ...
90
91
 
92
+ @property
93
+ @abstractmethod
94
+ def organization_domains(self) -> OrganizationDomainsModule: ...
95
+
91
96
  @property
92
97
  @abstractmethod
93
98
  def passwordless(self) -> PasswordlessModule: ...
workos/async_client.py CHANGED
@@ -7,6 +7,7 @@ from workos.events import AsyncEvents
7
7
  from workos.fga import FGAModule
8
8
  from workos.mfa import MFAModule
9
9
  from workos.organizations import AsyncOrganizations
10
+ from workos.organization_domains import AsyncOrganizationDomains
10
11
  from workos.passwordless import PasswordlessModule
11
12
  from workos.portal import PortalModule
12
13
  from workos.sso import AsyncSSO
@@ -80,6 +81,14 @@ class AsyncClient(BaseClient):
80
81
  self._organizations = AsyncOrganizations(self._http_client)
81
82
  return self._organizations
82
83
 
84
+ @property
85
+ def organization_domains(self) -> AsyncOrganizationDomains:
86
+ if not getattr(self, "_organization_domains", None):
87
+ self._organization_domains = AsyncOrganizationDomains(
88
+ http_client=self._http_client, client_configuration=self
89
+ )
90
+ return self._organization_domains
91
+
83
92
  @property
84
93
  def passwordless(self) -> PasswordlessModule:
85
94
  raise NotImplementedError(
workos/client.py CHANGED
@@ -5,6 +5,7 @@ from workos.audit_logs import AuditLogs
5
5
  from workos.directory_sync import DirectorySync
6
6
  from workos.fga import FGA
7
7
  from workos.organizations import Organizations
8
+ from workos.organization_domains import OrganizationDomains
8
9
  from workos.passwordless import Passwordless
9
10
  from workos.portal import Portal
10
11
  from workos.sso import SSO
@@ -80,6 +81,14 @@ class SyncClient(BaseClient):
80
81
  self._organizations = Organizations(self._http_client)
81
82
  return self._organizations
82
83
 
84
+ @property
85
+ def organization_domains(self) -> OrganizationDomains:
86
+ if not getattr(self, "_organization_domains", None):
87
+ self._organization_domains = OrganizationDomains(
88
+ http_client=self._http_client, client_configuration=self
89
+ )
90
+ return self._organization_domains
91
+
83
92
  @property
84
93
  def passwordless(self) -> Passwordless:
85
94
  if not getattr(self, "_passwordless", None):
@@ -0,0 +1,179 @@
1
+ from typing import Protocol
2
+ from workos._client_configuration import ClientConfiguration
3
+ from workos.types.organization_domains import OrganizationDomain
4
+ from workos.typing.sync_or_async import SyncOrAsync
5
+ from workos.utils.http_client import AsyncHTTPClient, SyncHTTPClient
6
+ from workos.utils.request_helper import (
7
+ REQUEST_METHOD_DELETE,
8
+ REQUEST_METHOD_GET,
9
+ REQUEST_METHOD_POST,
10
+ )
11
+
12
+
13
+ class OrganizationDomainsModule(Protocol):
14
+ """Offers methods for managing organization domains."""
15
+
16
+ _client_configuration: ClientConfiguration
17
+
18
+ def get_organization_domain(
19
+ self, organization_domain_id: str
20
+ ) -> SyncOrAsync[OrganizationDomain]:
21
+ """Gets a single Organization Domain
22
+
23
+ Args:
24
+ organization_domain_id (str): Organization Domain unique identifier
25
+
26
+ Returns:
27
+ OrganizationDomain: Organization Domain response from WorkOS
28
+ """
29
+ ...
30
+
31
+ def create_organization_domain(
32
+ self,
33
+ organization_id: str,
34
+ domain: str,
35
+ ) -> SyncOrAsync[OrganizationDomain]:
36
+ """Creates an Organization Domain
37
+
38
+ Args:
39
+ organization_id (str): Organization unique identifier
40
+ domain (str): Domain to be added to the organization
41
+
42
+ Returns:
43
+ OrganizationDomain: Organization Domain response from WorkOS
44
+ """
45
+ ...
46
+
47
+ def verify_organization_domain(
48
+ self, organization_domain_id: str
49
+ ) -> SyncOrAsync[OrganizationDomain]:
50
+ """Verifies an Organization Domain
51
+
52
+ Args:
53
+ organization_domain_id (str): Organization Domain unique identifier
54
+
55
+ Returns:
56
+ OrganizationDomain: Organization Domain response from WorkOS
57
+ """
58
+ ...
59
+
60
+ def delete_organization_domain(
61
+ self, organization_domain_id: str
62
+ ) -> SyncOrAsync[None]:
63
+ """Deletes a single Organization Domain
64
+
65
+ Args:
66
+ organization_domain_id (str): Organization Domain unique identifier
67
+
68
+ Returns:
69
+ None
70
+ """
71
+ ...
72
+
73
+
74
+ class OrganizationDomains:
75
+ """Offers methods for managing organization domains."""
76
+
77
+ _http_client: SyncHTTPClient
78
+ _client_configuration: ClientConfiguration
79
+
80
+ def __init__(
81
+ self,
82
+ http_client: SyncHTTPClient,
83
+ client_configuration: ClientConfiguration,
84
+ ):
85
+ self._http_client = http_client
86
+ self._client_configuration = client_configuration
87
+
88
+ def get_organization_domain(
89
+ self, organization_domain_id: str
90
+ ) -> OrganizationDomain:
91
+ response = self._http_client.request(
92
+ f"organization_domains/{organization_domain_id}",
93
+ method=REQUEST_METHOD_GET,
94
+ )
95
+
96
+ return OrganizationDomain.model_validate(response)
97
+
98
+ def create_organization_domain(
99
+ self,
100
+ organization_id: str,
101
+ domain: str,
102
+ ) -> OrganizationDomain:
103
+ response = self._http_client.request(
104
+ "organization_domains",
105
+ method=REQUEST_METHOD_POST,
106
+ json={"organization_id": organization_id, "domain": domain},
107
+ )
108
+
109
+ return OrganizationDomain.model_validate(response)
110
+
111
+ def verify_organization_domain(
112
+ self, organization_domain_id: str
113
+ ) -> OrganizationDomain:
114
+ response = self._http_client.request(
115
+ f"organization_domains/{organization_domain_id}/verify",
116
+ method=REQUEST_METHOD_POST,
117
+ )
118
+
119
+ return OrganizationDomain.model_validate(response)
120
+
121
+ def delete_organization_domain(self, organization_domain_id: str) -> None:
122
+ self._http_client.request(
123
+ f"organization_domains/{organization_domain_id}",
124
+ method=REQUEST_METHOD_DELETE,
125
+ )
126
+
127
+
128
+ class AsyncOrganizationDomains:
129
+ """Offers async methods for managing organization domains."""
130
+
131
+ _http_client: AsyncHTTPClient
132
+ _client_configuration: ClientConfiguration
133
+
134
+ def __init__(
135
+ self,
136
+ http_client: AsyncHTTPClient,
137
+ client_configuration: ClientConfiguration,
138
+ ):
139
+ self._http_client = http_client
140
+ self._client_configuration = client_configuration
141
+
142
+ async def get_organization_domain(
143
+ self, organization_domain_id: str
144
+ ) -> OrganizationDomain:
145
+ response = await self._http_client.request(
146
+ f"organization_domains/{organization_domain_id}",
147
+ method=REQUEST_METHOD_GET,
148
+ )
149
+
150
+ return OrganizationDomain.model_validate(response)
151
+
152
+ async def create_organization_domain(
153
+ self,
154
+ organization_id: str,
155
+ domain: str,
156
+ ) -> OrganizationDomain:
157
+ response = await self._http_client.request(
158
+ "organization_domains",
159
+ method=REQUEST_METHOD_POST,
160
+ json={"organization_id": organization_id, "domain": domain},
161
+ )
162
+
163
+ return OrganizationDomain.model_validate(response)
164
+
165
+ async def verify_organization_domain(
166
+ self, organization_domain_id: str
167
+ ) -> OrganizationDomain:
168
+ response = await self._http_client.request(
169
+ f"organization_domains/{organization_domain_id}/verify",
170
+ method=REQUEST_METHOD_POST,
171
+ )
172
+
173
+ return OrganizationDomain.model_validate(response)
174
+
175
+ async def delete_organization_domain(self, organization_domain_id: str) -> None:
176
+ await self._http_client.request(
177
+ f"organization_domains/{organization_domain_id}",
178
+ method=REQUEST_METHOD_DELETE,
179
+ )
@@ -38,7 +38,7 @@ from workos.types.events.organization_domain_verification_failed_payload import
38
38
  )
39
39
  from workos.types.events.session_created_payload import SessionCreatedPayload
40
40
  from workos.types.organizations.organization_common import OrganizationCommon
41
- from workos.types.organizations.organization_domain import OrganizationDomain
41
+ from workos.types.organization_domains import OrganizationDomain
42
42
  from workos.types.roles.role import EventRole
43
43
  from workos.types.sso.connection import Connection
44
44
  from workos.types.user_management.email_verification import (
@@ -37,7 +37,7 @@ from workos.types.events.organization_domain_verification_failed_payload import
37
37
  )
38
38
  from workos.types.events.session_created_payload import SessionCreatedPayload
39
39
  from workos.types.organizations.organization_common import OrganizationCommon
40
- from workos.types.organizations.organization_domain import OrganizationDomain
40
+ from workos.types.organization_domains import OrganizationDomain
41
41
  from workos.types.roles.role import EventRole
42
42
  from workos.types.sso.connection import Connection
43
43
  from workos.types.user_management.email_verification import (
@@ -1,6 +1,6 @@
1
1
  from typing import Literal
2
2
  from workos.types.workos_model import WorkOSModel
3
- from workos.types.organizations.organization_domain import OrganizationDomain
3
+ from workos.types.organization_domains import OrganizationDomain
4
4
  from workos.typing.literals import LiteralOrUntyped
5
5
 
6
6
 
@@ -0,0 +1 @@
1
+ from .organization_domain import *
@@ -1,4 +1,6 @@
1
1
  from .domain_data_input import *
2
2
  from .organization_common import *
3
- from .organization_domain import *
4
3
  from .organization import *
4
+
5
+ # re-exported for backwards compatibility, can be removed after version 6.0.0
6
+ from workos.types.organization_domains import OrganizationDomain
@@ -2,7 +2,7 @@ from dataclasses import field
2
2
  from typing import Optional, Sequence
3
3
  from workos.types.metadata import Metadata
4
4
  from workos.types.organizations.organization_common import OrganizationCommon
5
- from workos.types.organizations.organization_domain import OrganizationDomain
5
+ from workos.types.organization_domains import OrganizationDomain
6
6
 
7
7
 
8
8
  class Organization(OrganizationCommon):
@@ -1,6 +1,6 @@
1
1
  from typing import Literal, Sequence
2
2
  from workos.types.workos_model import WorkOSModel
3
- from workos.types.organizations.organization_domain import OrganizationDomain
3
+ from workos.types.organization_domains import OrganizationDomain
4
4
 
5
5
 
6
6
  class OrganizationCommon(WorkOSModel):
@@ -38,7 +38,7 @@ from workos.types.events.organization_domain_verification_failed_payload import
38
38
  )
39
39
  from workos.types.events.session_created_payload import SessionCreatedPayload
40
40
  from workos.types.organizations.organization_common import OrganizationCommon
41
- from workos.types.organizations.organization_domain import OrganizationDomain
41
+ from workos.types.organization_domains import OrganizationDomain
42
42
  from workos.types.roles.role import EventRole
43
43
  from workos.types.sso.connection import Connection
44
44
  from workos.types.user_management.email_verification import (
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: workos
3
- Version: 5.24.0
3
+ Version: 5.26.0
4
4
  Summary: WorkOS Python Client
5
5
  Home-page: https://github.com/workos-inc/workos-python
6
6
  Author: WorkOS
@@ -1,15 +1,16 @@
1
- workos/__about__.py,sha256=1NsUDPAjsrwknBlghnN-xITmyO39Ieog8l72kRbopYw,406
1
+ workos/__about__.py,sha256=XjdHlLqPEJ0a5evP3CCUorp0ckGip4qzzY2V8gM6xXg,406
2
2
  workos/__init__.py,sha256=hOdbO_MJCvpLx8EbRjQg-fvFAB-glJmrmxUZK8kWG0k,167
3
- workos/_base_client.py,sha256=t69Nb3zxo3wygI3JtbPdZMGvIuRPsZx_xZANC5K8dn8,3429
3
+ workos/_base_client.py,sha256=YWLXBpd0YeID3WKYZkKa4l9ZuB9e6HgdLmPKZIzXsME,3599
4
4
  workos/_client_configuration.py,sha256=g3eXhtrEMN6CW0hZ5uHb2PmLurXjyBkWZeQYMPeJD6s,222
5
- workos/async_client.py,sha256=JTZwKTN7YqPEScXPh-RmBHCs_glPo2LLfMHXhyBJuak,3957
5
+ workos/async_client.py,sha256=c_lP7y49k3FEx0S6We8PrEw3PhTkD0VHyHJaKgc51HU,4358
6
6
  workos/audit_logs.py,sha256=bYoAoNO4FRSaT34UxiVkgTXCVH8givcS2YGhH_9O3NA,3983
7
- workos/client.py,sha256=jvqccyHJWf302ugopj9mt-IidkWBt_r8jihP0IZ4RUI,3959
7
+ workos/client.py,sha256=hIm87iNtKfwQ93H5aRXnhTqUJIOzUEG1GX0jdLBLAYc,4345
8
8
  workos/directory_sync.py,sha256=6Z1gHz1LWNy56EtkXwNm6jhRRcvsJ7ASeDLy_Q1oKM0,14601
9
9
  workos/events.py,sha256=b4JIzMbd5LlVtpOMKVojC70RCHAgmLN3nJ62_2U0GwI,3892
10
10
  workos/exceptions.py,sha256=eoy-T4We98HKZn0UZu33fPzhm4DwafzwLeg3juhC6FE,1732
11
11
  workos/fga.py,sha256=qjZrdkXKwJDLVTMMrOADxyXRDkswto4kGIdtTjtS3hw,21008
12
12
  workos/mfa.py,sha256=J8eOr4ZEmK0TPFKD7pabSalgCFCyg3XJY1stu28_8Vw,6862
13
+ workos/organization_domains.py,sha256=um-dm54SIs2Kd2FxqxVjIlynlenAG9NamQmNVUGOQ0k,5464
13
14
  workos/organizations.py,sha256=ugPRhwN8cN2O6qOCf7wj8Wus-oeRKXlNe2642PSl_n4,12266
14
15
  workos/passwordless.py,sha256=NGXDoxomBkrIml8-VHXH1HvCFMqotQ-YhRobUQXpVZs,3203
15
16
  workos/portal.py,sha256=lzf3fnOor4AyVdHCHMuJzVSpAC9LWWdC5sZIRtCsb0c,2443
@@ -46,11 +47,11 @@ workos/types/events/directory_group_with_previous_attributes.py,sha256=13VLNhdJZ
46
47
  workos/types/events/directory_payload.py,sha256=tRo3f9g8VoYertSUPAR25iGDyGLr2Dtb2mTkl73PAeA,503
47
48
  workos/types/events/directory_payload_with_legacy_fields.py,sha256=jk9nLmRqgllVkBG4EU3uTgcDOhCNptHgCh93U7aBAYE,1005
48
49
  workos/types/events/directory_user_with_previous_attributes.py,sha256=PhnO3WakBxAvnlOGf0UB0bvoppUYlwLyU-g9X_pPdko,244
49
- workos/types/events/event.py,sha256=PDUTGaYlxwMkVKRhj82XMVxfrYzpWVlkQRCRNq-mxlM,9830
50
- workos/types/events/event_model.py,sha256=r5B_lZ7QXgoI7SGyQF7xNaEEE-ATMRet83pMYYJANuo,3735
50
+ workos/types/events/event.py,sha256=4E-71v38J1Udt0qFz9k17V6HmNj9Lgz-mmS-524ysIs,9817
51
+ workos/types/events/event_model.py,sha256=TuCRgjgTWnTvwL3NTR9FBGuF7WO34OhsbtMGKss5QKA,3722
51
52
  workos/types/events/event_type.py,sha256=NIVHMahETiKeFJfZGi-ptHQH7czmRY4tChnuMU0OxWw,1690
52
53
  workos/types/events/list_filters.py,sha256=P04zmRynx9VPqNX_MBXA-3KA6flPZJogtIUqTI7w9Eg,305
53
- workos/types/events/organization_domain_verification_failed_payload.py,sha256=26reKTFxdriOo6fF6MVkYx0s867E-bproKTbwLZcUpE,483
54
+ workos/types/events/organization_domain_verification_failed_payload.py,sha256=b4wX8HVbL9Nx6fCjOXkZg9eLc-Bv6YqAjMap1f7UvFc,470
54
55
  workos/types/events/previous_attributes.py,sha256=DxolwLwzcnG8r_W6rh5BT29iDfSVsIELvRYJ0NCrNn0,72
55
56
  workos/types/events/session_created_payload.py,sha256=F4eKjmetgyRIluNBDUmB2OXq8hDWEVjALJ4rrT2IHJs,462
56
57
  workos/types/fga/__init__.py,sha256=mVb3gvhvK93PAosSgO1RlNmxYX4zIxVDcZZQ8Jyejuw,151
@@ -66,12 +67,13 @@ workos/types/mfa/authentication_challenge_verification_response.py,sha256=5HxsMJ
66
67
  workos/types/mfa/authentication_factor.py,sha256=92Cq9MLwBUXfowzCv2u9ZnoH9tVgDm16jjmelN7BOGs,2021
67
68
  workos/types/mfa/authentication_factor_totp_and_challenge_response.py,sha256=Ix_DqF7eQ-x6Up8C_0wzvAXXyDY876nobRuiXXL8nbc,541
68
69
  workos/types/mfa/enroll_authentication_factor_type.py,sha256=l_w4co5BdmfglII5YAQiyL-kdAw8KiiOsYaDhn8lGWE,227
69
- workos/types/organizations/__init__.py,sha256=tS8oObLGCyk2QnaMtoaaGKoLbbzSylL_8qovsPF6Rqc,131
70
+ workos/types/organization_domains/__init__.py,sha256=fpNRKfzZ0p1FybwQG4L-YY12nFPTCJjD4j60OJI5fXE,35
71
+ workos/types/organization_domains/organization_domain.py,sha256=PkmdVVQi6h94xHWLJt0SFGgiGEVoyxwiPD-WwQ1naWs,614
72
+ workos/types/organizations/__init__.py,sha256=uE2qD2MOebPs-_BerqenTqmu4I4DI5-CKIY_M8BGwDY,240
70
73
  workos/types/organizations/domain_data_input.py,sha256=BW3iYswF-b2SXip7jwPkmlZhgLReS_VyzUlU8PD4xdw,161
71
74
  workos/types/organizations/list_filters.py,sha256=u-TsEEMVI8IvPvxn_9--k6iYDs4T64RHTY_HY0Fvwlw,179
72
- workos/types/organizations/organization.py,sha256=GNs7Mf4-B4NpKSsE4uD9106kG6e6yz2EImdgSw9X310,533
73
- workos/types/organizations/organization_common.py,sha256=HFrXwia3xV6KkAAfW6zyMcjxXrznv82hFajHVHZdhpM,350
74
- workos/types/organizations/organization_domain.py,sha256=PkmdVVQi6h94xHWLJt0SFGgiGEVoyxwiPD-WwQ1naWs,614
75
+ workos/types/organizations/organization.py,sha256=oVGg-C0blizg7aGVeRTr3vvTRvrn_WPzwaV-LvbQxRo,520
76
+ workos/types/organizations/organization_common.py,sha256=lelq-Id9AGSmosFprFAET_QyXmYR0wHX9-XMsOTEr7s,337
75
77
  workos/types/passwordless/__init__.py,sha256=ZP_XIcGUKXsATb--bfesnsFFbbvg3WYzgqRC_qvW0rw,77
76
78
  workos/types/passwordless/passwordless_session.py,sha256=izmTI5F7qvBdoVodaXP7fnYo_XodG-ygyYTPrCEObTM,293
77
79
  workos/types/passwordless/passwordless_session_type.py,sha256=ltZAV8KFiYDVcxpVt5Hcdc089tB5VETYaa9X6E7Mvoo,75
@@ -106,7 +108,7 @@ workos/types/vault/__init__.py,sha256=krBuIl8luysrtDf9-b8KTkXOHDOaSsOR-Aao6Wlil0
106
108
  workos/types/vault/key.py,sha256=x30XBplSj9AviDDAB8MdpcULbZvvo2sUzi8RCmZQKxU,453
107
109
  workos/types/vault/object.py,sha256=-rk4KovS3eT8T8L3JltYUS0cd2Rg1JKcAX9SOaZO3D8,664
108
110
  workos/types/webhooks/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
109
- workos/types/webhooks/webhook.py,sha256=IIDhlGTwiNm3xEncSk-OYm0EZsxwXmxDT5_jKx_Bt60,9523
111
+ workos/types/webhooks/webhook.py,sha256=v0Z7Z1eMnjCMR8iWm2KNECv-8nwPdTB8gTZCVfFP0O0,9510
110
112
  workos/types/webhooks/webhook_model.py,sha256=v7Hgtzt0nW_5RaYoB_QGVfElhdjySuG3F1BFjoid36w,404
111
113
  workos/types/webhooks/webhook_payload.py,sha256=GXt31KtyBM-ji5K5p4dBnu46Gh8adQWTq0ye5USB_6g,68
112
114
  workos/types/widgets/__init__.py,sha256=z2Tdlj_bJsRZeJRh4SOFX58PvJdf0LjKnYhrQX1fpME,65
@@ -123,8 +125,8 @@ workos/utils/crypto_provider.py,sha256=QeQSR4t9xLlb90kEfl8onVUsf1yCkYq0EjFTxK0mU
123
125
  workos/utils/http_client.py,sha256=TM5yMFFExmAE8D2Z43-5O301tRbnylLG0aXO0isGorE,6197
124
126
  workos/utils/pagination_order.py,sha256=_-et1DDJLG0czarTU7op4W6RA0V1f85GNsUgtyRU55Q,70
125
127
  workos/utils/request_helper.py,sha256=NaO16qPPbSNnCeE0fiNKYb8gM-dK_okYVJbLGrEGXz8,793
126
- workos-5.24.0.dist-info/LICENSE,sha256=mU--WL1JzelH2tXpKVoOlpud4cpqKSRTtdArCvYZmb4,1063
127
- workos-5.24.0.dist-info/METADATA,sha256=7uWspjP8xJKGOnVXxi5BPXCpCwQAGy1pUQlrWMGVMPg,4187
128
- workos-5.24.0.dist-info/WHEEL,sha256=oiQVh_5PnQM0E3gPdiz09WCNmwiHDMaGer_elqB3coM,92
129
- workos-5.24.0.dist-info/top_level.txt,sha256=ZFskIfue1Tw-JwjyIXRvdsAl9i0DX9VbqmgICXV84Sk,7
130
- workos-5.24.0.dist-info/RECORD,,
128
+ workos-5.26.0.dist-info/LICENSE,sha256=mU--WL1JzelH2tXpKVoOlpud4cpqKSRTtdArCvYZmb4,1063
129
+ workos-5.26.0.dist-info/METADATA,sha256=MohK6HHQVDsilcCLtEwsSRF_ufiHMGCe1puhiVakL60,4187
130
+ workos-5.26.0.dist-info/WHEEL,sha256=oiQVh_5PnQM0E3gPdiz09WCNmwiHDMaGer_elqB3coM,92
131
+ workos-5.26.0.dist-info/top_level.txt,sha256=ZFskIfue1Tw-JwjyIXRvdsAl9i0DX9VbqmgICXV84Sk,7
132
+ workos-5.26.0.dist-info/RECORD,,