@@ -364,37 +364,22 @@ def __init__(self):
364364# =============================================================================
365365
366366
367- class PasswordlessError (ApiError ):
368- """
369- Base class for passwordless (embedded login) errors.
370-
371- Carries the Auth0 ``error`` / ``error_description`` from the API response
372- body so integrators can branch on a typed exception rather than parsing
373- strings.
374- """
375-
376- def __init__ (self , code : str , message : str , cause = None , retry_after : Optional [int ] = None ):
377- super ().__init__ (code , message , cause )
378- self .name = "PasswordlessError"
379- # Seconds to wait before retrying, from the Retry-After response header
380- # on a 429. None when the response carried no usable value.
381- self .retry_after = retry_after
382-
383-
384- class PasswordlessStartError (PasswordlessError ):
367+ class PasswordlessStartError (ApiError ):
385368 """Error raised when POST /passwordless/start fails."""
386369
387370 def __init__ (self , code : str , message : str , cause = None , retry_after : Optional [int ] = None ):
388- super ().__init__ (code , message , cause , retry_after )
371+ super ().__init__ (code , message , cause )
389372 self .name = "PasswordlessStartError"
373+ self .retry_after = retry_after # seconds
390374
391375
392- class PasswordlessVerifyError (PasswordlessError ):
376+ class PasswordlessVerifyError (ApiError ):
393377 """Error raised when the passwordless OTP token exchange fails."""
394378
395379 def __init__ (self , code : str , message : str , cause = None , retry_after : Optional [int ] = None ):
396- super ().__init__ (code , message , cause , retry_after )
380+ super ().__init__ (code , message , cause )
397381 self .name = "PasswordlessVerifyError"
382+ self .retry_after = retry_after # seconds
398383
399384
400385class PasswordlessErrorCode :
0 commit comments