workos 5.31.1__py3-none-any.whl → 5.31.2__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.31.1"
15
+ __version__ = "5.31.2"
16
16
 
17
17
  __author__ = "WorkOS"
18
18
 
workos/exceptions.py CHANGED
@@ -45,6 +45,24 @@ class AuthorizationException(BaseRequestException):
45
45
  pass
46
46
 
47
47
 
48
+ class EmailVerificationRequiredException(AuthorizationException):
49
+ """Raised when email verification is required before authentication.
50
+
51
+ This exception includes an email_verification_id field that can be used
52
+ to retrieve the email verification object or resend the verification email.
53
+ """
54
+
55
+ def __init__(
56
+ self,
57
+ response: httpx.Response,
58
+ response_json: Optional[Mapping[str, Any]],
59
+ ) -> None:
60
+ super().__init__(response, response_json)
61
+ self.email_verification_id = self.extract_from_json(
62
+ "email_verification_id", None
63
+ )
64
+
65
+
48
66
  class AuthenticationException(BaseRequestException):
49
67
  pass
50
68
 
@@ -20,6 +20,7 @@ from workos.exceptions import (
20
20
  ServerException,
21
21
  AuthenticationException,
22
22
  AuthorizationException,
23
+ EmailVerificationRequiredException,
23
24
  NotFoundException,
24
25
  BadRequestException,
25
26
  )
@@ -99,6 +100,11 @@ class BaseHTTPClient(Generic[_HttpxClientT]):
99
100
  if status_code == 401:
100
101
  raise AuthenticationException(response, response_json)
101
102
  elif status_code == 403:
103
+ if (
104
+ response_json is not None
105
+ and response_json.get("code") == "email_verification_required"
106
+ ):
107
+ raise EmailVerificationRequiredException(response, response_json)
102
108
  raise AuthorizationException(response, response_json)
103
109
  elif status_code == 404:
104
110
  raise NotFoundException(response, response_json)
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: workos
3
- Version: 5.31.1
3
+ Version: 5.31.2
4
4
  Summary: WorkOS Python Client
5
5
  Home-page: https://github.com/workos-inc/workos-python
6
6
  Author: WorkOS
@@ -1,4 +1,4 @@
1
- workos/__about__.py,sha256=IyGLpvXeW7_jWVZ5WlatVanV7cpOVcOfigzuFGiUSCE,406
1
+ workos/__about__.py,sha256=-HWB0OGuzIK0-LUXp7gcRtOCm0T1UTv1YlBlbBKYd2A,406
2
2
  workos/__init__.py,sha256=hOdbO_MJCvpLx8EbRjQg-fvFAB-glJmrmxUZK8kWG0k,167
3
3
  workos/_base_client.py,sha256=YWLXBpd0YeID3WKYZkKa4l9ZuB9e6HgdLmPKZIzXsME,3599
4
4
  workos/_client_configuration.py,sha256=g3eXhtrEMN6CW0hZ5uHb2PmLurXjyBkWZeQYMPeJD6s,222
@@ -7,7 +7,7 @@ workos/audit_logs.py,sha256=bYoAoNO4FRSaT34UxiVkgTXCVH8givcS2YGhH_9O3NA,3983
7
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
- workos/exceptions.py,sha256=eoy-T4We98HKZn0UZu33fPzhm4DwafzwLeg3juhC6FE,1732
10
+ workos/exceptions.py,sha256=wYDlbMLVxrKQTF0M6ExFlxS5YEkvNZ4BeWLryRxcAFs,2335
11
11
  workos/fga.py,sha256=qjZrdkXKwJDLVTMMrOADxyXRDkswto4kGIdtTjtS3hw,21008
12
12
  workos/mfa.py,sha256=J8eOr4ZEmK0TPFKD7pabSalgCFCyg3XJY1stu28_8Vw,6862
13
13
  workos/organization_domains.py,sha256=um-dm54SIs2Kd2FxqxVjIlynlenAG9NamQmNVUGOQ0k,5464
@@ -123,13 +123,13 @@ workos/typing/sync_or_async.py,sha256=O-a-bWqxN5A-UkSC3pOvPgDCGUY5gMD-NNny4HdISe
123
123
  workos/typing/untyped_literal.py,sha256=wf48_6kZJ-AN3-V2gLC_y5k2tnUvgGnhn89HsfOKNTM,1463
124
124
  workos/typing/webhooks.py,sha256=8GhUnrlGrgQbknh32tVtHxeR8FsXsJesW94CtZiB-_4,534
125
125
  workos/utils/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
126
- workos/utils/_base_http_client.py,sha256=KqRHUaDJUfXGxhu6UHLfZVkIBikcvrUZYhm9GBSByB4,7410
126
+ workos/utils/_base_http_client.py,sha256=tX2RAk2Mc2oHPTpzIft4-Tss8-vOJZUjmHcQ9cjpwOs,7705
127
127
  workos/utils/crypto_provider.py,sha256=QeQSR4t9xLlb90kEfl8onVUsf1yCkYq0EjFTxK0mUlk,1182
128
128
  workos/utils/http_client.py,sha256=TM5yMFFExmAE8D2Z43-5O301tRbnylLG0aXO0isGorE,6197
129
129
  workos/utils/pagination_order.py,sha256=_-et1DDJLG0czarTU7op4W6RA0V1f85GNsUgtyRU55Q,70
130
130
  workos/utils/request_helper.py,sha256=NaO16qPPbSNnCeE0fiNKYb8gM-dK_okYVJbLGrEGXz8,793
131
- workos-5.31.1.dist-info/LICENSE,sha256=mU--WL1JzelH2tXpKVoOlpud4cpqKSRTtdArCvYZmb4,1063
132
- workos-5.31.1.dist-info/METADATA,sha256=sfYe_N4irtXmMSJ-HY8mQFNwx49Pgld-Syx5qAzjedA,4187
133
- workos-5.31.1.dist-info/WHEEL,sha256=oiQVh_5PnQM0E3gPdiz09WCNmwiHDMaGer_elqB3coM,92
134
- workos-5.31.1.dist-info/top_level.txt,sha256=ZFskIfue1Tw-JwjyIXRvdsAl9i0DX9VbqmgICXV84Sk,7
135
- workos-5.31.1.dist-info/RECORD,,
131
+ workos-5.31.2.dist-info/LICENSE,sha256=mU--WL1JzelH2tXpKVoOlpud4cpqKSRTtdArCvYZmb4,1063
132
+ workos-5.31.2.dist-info/METADATA,sha256=yyDH3OsYVz7dO51lDJlHT7cbTnVFBIwCZyCesROGDJI,4187
133
+ workos-5.31.2.dist-info/WHEEL,sha256=oiQVh_5PnQM0E3gPdiz09WCNmwiHDMaGer_elqB3coM,92
134
+ workos-5.31.2.dist-info/top_level.txt,sha256=ZFskIfue1Tw-JwjyIXRvdsAl9i0DX9VbqmgICXV84Sk,7
135
+ workos-5.31.2.dist-info/RECORD,,