4.0.2
Authsignal Python SDK 4.0.0
Breaking Changes
Client Initialization
- The client initialization interface has been updated to use named parameters
api_secret_key
is now required (previouslyapi_key
)- Optional parameters include
api_url
(defaults to "https://api.authsignal.com/v1") andtimeout
(defaults to 2.0 seconds)
SDK Methods
- All methods now use consistent parameter naming and typing
- Added type hints throughout the SDK for better IDE support and code safety
- Requests that require a body expect an
attributes
parameter which needs to be a dictionary of key value pairs, equivalent to the JSON input body. Please use camel case for the keys.
Method Updates
track()
now requiresuser_id
,action
, andattributes
parametersget_user()
now requiresuser_id
parameterupdate_user()
now requiresuser_id
andattributes
parametersdelete_user()
now requiresuser_id
parameterget_authenticators()
now requiresuser_id
parameterenroll_verified_authenticator()
now requiresuser_id
andattributes
parametersdelete_authenticator()
now requiresuser_id
anduser_authenticator_id
parametersvalidate_challenge()
now requiresattributes
parameterget_action()
now requiresuser_id
,action
, andidempotency_key
parametersupdate_action()
now requiresuser_id
,action
,idempotency_key
, andattributes
parameters
Error Handling
- Improved error handling with custom
ApiException
class which is standardized across our SDKs
Migration Guide
If you're upgrading from a previous version, you'll need to:
- Update your client initialization to use the new parameter names
- Review all method calls to ensure they include the required parameters
- Update error handling to work with the new
ApiException
format