All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog.
- switch from httpx 0.16.x to 0.18.x
- logging error messages during login
- extend allowed chars by email check during login
- instead of raising an exception, invalid email will now be logged as warning
- Add description to the docs, to handling 2FA
- Provide a custom serial when login
- Login with Audible username instead of Amazon account for US, UK and DE markteplace
- register a device on Australian marketplace
- Redesign Module documentation
- Rework description of audible-cli package in documentation
- function
activation_bytes.fetch_activation_sign_auth
- Spain marketplace
activation_bytes.get_activation_bytes
uses the newfetch_activation_sign_auth
function, ifsigning
auth method is available. Otherwise activation bytes will be fetched the old way with aplayer_token
.
- Add initial cookies to login function to prevent captcha requests in most cases.
- Fetched activation bytes (with
extract=True
argument) will be stored toactivation_bytes
attribute of Authenticator class instance for now. Ignore existing activation bytes and force refresh withauth.get_activation_bytes(force_refresh=True)
activation_bytes
will be loaded from and save to file. Saved auth files are not backward compatible to previous audible versions so keep old files save.- Add
Client.raw_request
andAsyncClient.raw_request
method. - Provide a custom Callback with
approval_callback
keyword argument when login. - Add classmethod
Authenticator.from_login_external
and methodAuthenticator.re_login_external
. - Add
login_external
function to login.py
- Add description how to use pyotp with custom otp callback to docs
- Add description how to use login external to docs
- Added support to output the whole activation blob instead of the extracted activation bytes with
get_activation_bytes(extract=False, ...)
. - Added support to fetch website cookies for another country with
Authenticator.set_website_cookies_for_country
. - Added
Client.put
andAsyncClient.put
. - Added support to solve approval alerts during login
- The
FileAuthenticator
has been deprecated, use classmethodAuthenticator.from_file
instead. - The
Authenticator
don't inherit from MutableMapping anymore - The
Authenticator
sets allowed instance attributes at creation toNone
, not allowed attributes will raise an Exception - The
LoginAuthenticator
has been deprecated, use classmethodAuthenticator.from_login
instead. - Changed internal code base for encryption and decryption metadata. Moved the related code to
metadata.py
.
- deprecated
AudibleAPI
- Added more docstrings and type hints to code base
- Added support to install Sphinx documentation dependencies with
pip install audible[docs]
. - Added a guide to use authentication with Postman.
- Rework documentation.
- Added
.readthedocs.yml
config file - Added module description (autodoc) to docs
- Uses
httpx
0.16.* for now
- Set
padding="none"
when decrypting license voucher