v3.0.0
This Version is a major rework of the library. Please see the migration guide to learn how to migrate.
Highlights
- Library is now fully async
- Twitch API responses are now Objects and Generators instead of pure dictionaries
- Automatic Pagination of API results
- First alpha of a Chat Bot implementation
- More customizability for the UserAuthenticator
- A lot of new Endpoints where added
- New look and content for the documentation
Full Changelog
- Rewrote the twitchAPI to be async
- twitchAPI now uses Objects instead of dictionaries
- added automatic pagination to all relevant API endpoints
- PubSub now uses async callbacks
- EventSub subscribing and unsubscribing is now async
- Added a alpha version of a Twitch Chat Bot implementation
- switched AuthScope
CHANNEL_MANAGE_CHAT_SETTINGS
toMODERATOR_MANAGE_CHAT_SETTINGS
- Added the following AuthScopes:
MODERATOR_MANAGE_ANNOUNCEMENTS
MODERATOR_MANAGE_CHAT_MESSAGES
USER_MANAGE_CHAT_COLOR
CHANNEL_MANAGE_MODERATORS
CHANNEL_READ_VIPS
CHANNEL_MANAGE_VIPS
USER_MANAGE_WHISPERS
- added
twitchAPI.helper.first()
helper function - Added the following new Endpoints:
- "Send Whisper"
- "Remove Channel VIP"
- "Add Channel VIP"
- "Get VIPs"
- "Add Channel Moderator"
- "Remove Channel Moderator"
- "Get User Chat Color"
- "Update User Chat Color"
- "Delete Chat Message"
- "Send Chat Announcement"
- "Get Soundtrack Current Track"
- "Get Soundtrack Playlist"
- "Get Soundtrack Playlists"
- Removed the folllowing deprecated Endpoints:
- "Get Banned Event"
- "Get Moderator Events"
- "Get Webhook Subscriptions"
- The following Endpoints got changed:
- Added
igdb_id
search parameter toTwitch.get_games()
- Removed the Voting related fields in
Twitch.create_poll()
due to being deprecated - Updated the logic in
Twitch.update_custom_reward()
to avoid API errors - Removed
id
parameter fromTwitch.get_hype_train_events()
- Fixed the range check in
Twitch.get_channel_information()
- Added
Twitch.app_auth_refresh_callback
andTwitch.user_auth_refresh_callback
are now async- Added
oauth.get_user_info()
- UserAuthenticator:
- You can now set the document that will be shown at the end of the Auth flow by setting
UserAuthenticator.document
- The optional callback is now called with the access and refresh token instead of the user token
- Added browser controls to
UserAuthenticator.authenticate()
- You can now set the document that will be shown at the end of the Auth flow by setting
- removed
requests
andwebsockets
libraries from the requirements (resulting in smaller library footprint)