Overview
Portal information
URL: https://author.today
Code: AT
Authentication: Token-based or web-based login
Content: Free and purchased books with encryption support
Code: AT
Authentication: Token-based or web-based login
Content: Free and purchased books with encryption support
Features
- Download free and purchased books where downloading is normally restricted
- Support for both authentication methods (token and web login)
- Automatic handling of encrypted chapter content
- Book metadata extraction including authors, genres, series, and tags
- Multi-author support (up to 3 co-authors)
Authentication
Author.Today requires authentication to download books. ReUCM supports two authentication methods:Web-based login
The recommended method for most users:- Open ReUCM settings and navigate to Author.Today
- Select “Вход через web” (Login via web)
- A browser window will open to Author.Today login page
- Enter your credentials and log in
- ReUCM will automatically capture the session and extract your authentication token
Token-based login
For advanced users who have direct access to their API token:- Open ReUCM settings and navigate to Author.Today
- Select “Вход с помощью токена” (Login with token)
- Paste your Bearer token
- ReUCM will validate the token and store your user ID
- Log in to Author.Today in a browser
- Extract the
LoginCookievalue from your browser’s cookies - Use the API endpoint
/account/bearer-tokento exchange the cookie for a token
Token refresh
ReUCM automatically handles token expiration by calling the/account/refresh-token endpoint. If refresh fails, you’ll need to re-authenticate.
Downloading books
Supported URL formats
ReUCM accepts Author.Today book URLs in the following formats:https://author.today/work/[id]- Standard book pagehttps://author.today/reader/[id]- Reader page
[id] is the numeric book identifier.
Download process
- Copy the book URL from Author.Today
- Paste it into ReUCM or use the system “Share” menu
- ReUCM will:
- Extract the book ID from the URL
- Fetch book metadata via
/v1/work/{id}/details - Download all chapter texts via
/v1/work/{id}/chapter/many-texts - Decrypt encrypted chapter content
- Generate an FB2 file with complete metadata
Content decryption
Author.Today encrypts chapter content to prevent unauthorized downloads. ReUCM implements the decryption algorithm used by the official mobile app.Encryption details
Each chapter is encrypted with AES-128 in CBC mode:- Algorithm: AES/CBC/PKCS7Padding
- Key derivation: MD5 hash of user-specific key material
- Key material: Reverse(chapter_key) + user_id + app_certificate
- Encoding: Base64-encoded ciphertext
Book metadata
ReUCM extracts comprehensive metadata from Author.Today:Basic information
- Book ID and title
- Annotation (description)
- Cover image URL
- Last update timestamp
- Completion status
- Total text length
Author information
- Primary author name and username
- Co-author (if present)
- Second co-author (if present)
- All authors are included in FB2 export
Classification
- Primary genre ID
- First sub-genre ID
- Second sub-genre ID
- Custom tags array
Series information
- Series ID and title
- Book number in series
- Proper series ordering in FB2
API endpoints
ReUCM communicates with Author.Today’s REST API:| Endpoint | Method | Purpose |
|---|---|---|
/account/bearer-token | GET | Exchange cookie for token |
/account/current-user | GET | Validate token and get user info |
/account/refresh-token | POST | Refresh expired token |
/v1/work/{id}/details | GET | Get book metadata |
/v1/work/{id}/chapter/many-texts | GET | Download all chapters |
https://api.author.today/v1
All authenticated requests include:
Implementation reference
The Author.Today module is located inre_ucm_author_today/ and serves as a reference implementation for adding new portals:
lib/re_ucm_author_today.dart- Portal implementation at re_ucm_author_today/lib/re_ucm_author_today.dart:6lib/author_today_service.dart- Service logic at re_ucm_author_today/lib/author_today_service.dart:11lib/data/author_today_api.cg.dart- REST API client at re_ucm_author_today/lib/data/author_today_api.cg.dart:11lib/domain/utils/decrypt.dart- Content decryption at re_ucm_author_today/lib/domain/utils/decrypt.dart:64lib/domain/utils/metadata_parser.dart- Metadata transformation
Troubleshooting
Authentication failed
- Ensure you’re logged in to Author.Today
- Try the web-based login method if token login fails
- Check that your account has access to the book you’re trying to download
Token expired
- ReUCM will attempt to refresh the token automatically
- If refresh fails, log out and log back in through settings
Decryption errors
- Ensure you’re authenticated (guest access may have limited decryption)
- Verify your user ID is correctly stored in settings
- Some books may require purchase to access encrypted content
Invalid link error
- Ensure the URL matches the format:
https://author.today/work/{id}orhttps://author.today/reader/{id} - The ID must be numeric
- Some content types (user profiles, collections) are not supported