A Twitch API client for PHP.
EventSubApi
-> subscribeToChannelShieldMode
to version 1
EventSubApi
-> subscribeToChannelFollow
to version 2
EventSubApi
-> subscribeToChannelCharityCampaign
to version 1
EventSubApi
-> drop.entitlement.grant
by adding required parameter of is_batching_enabled
(@alexschastny)ChatApi
-> sendShoutout
EventSubApi
-> subscribeToChannelShoutout
ChannelsApi
-> getFollowedChannels
ChannelsApi
-> getChannelFollowers
GoalsApi
GoalsApi
-> getGoals
(Thanks @radiojoe!)fulfillmentStatus
parameter to EntitlementsApi
-> getDropsEntitlements
(Thanks @alexschastny!)CharityApi
CharityApi
-> getCharityCampaign
CharityApi
-> getCharityCampaignDonations
ModerationApi
-> getShieldModeStatus
ModerationApi
-> updateShieldModeStatus
ChatApi
-> getChatters
EventSub
-> channel.charity_campaign.start
EventSub
-> channel.charity_campaign.progress
EventSub
-> channel.charity_campaign.stop
EventSub
-> channel.charity_campaign.donate
EventSub
-> channel.shield_mode.begin
EventSub
-> channel.shield_mode.end
updateDropEntitlements
now allows you to specify no parameters, in line with the API Docsfirst
parameter to getBannedUsers
first
parameter to getModerators
EventSub
-> drop.entitlement.grant
Full Changelog: https://github.com/nicklaw5/twitch-api-php/compare/v7.0.0...v7.0.1
This update completes a large amount of endpoint coverage including most of the endpoints released in 2022. A number of changes have occurred to functions that were not working and some changes that happened in the Twitch API itself. Please be sure to review the breaking changes and the other release notes below.
getBannedEvents
and getModeratorEvents
- Announcement
id
parameter from getHypeTrainEvents
(this function was broken anyways) - Announcement
user_id
parameter from checkAutoModStatus
- Announcement
EventSub
-> extension.bits_transaction.crate
to version 1
user_id
parameter to getEventSubSubscription
ChatApi
-> getChatSettings
ChatApi
-> updateChatSettings
ChatApi
-> sendChatAnnouncement
ChatApi
-> getUserChatColor
ChatApi
-> updateUserChatColor
EventSub
-> user.authorization.grant
EventSub
-> channel.goal.begin
EventSub
-> channel.goal.progress
EventSub
-> channel.goal.end
ModerationApi
-> banUser
ModerationApi
-> unbanUser
ModerationApi
-> getAutoModSettings
ModerationApi
-> updateAutoModSettings
ModerationApi
-> getBlockedTerms
ModerationApi
-> addBlockedTerm
ModerationApi
-> removeBlockedTerm
ModerationApi
-> deleteChatMessages
ModerationApi
-> addChannelModerator
ModerationApi
-> removeChannelModerator
ModerationApi
-> getVips
ModerationApi
-> addChannelVip
ModerationApi
-> removeChannelVip
RaidsApi
RaidsApi
-> startRaid
RaidsApi
-> cancelRaid
WhispersApi
WhispersApi
-> sendWhisper
Full Changelog: https://github.com/nicklaw5/twitch-api-php/compare/v6.1.0...v7.0.0
NEW FEATURES
The V5 API (Kraken) was considered legacy for some time now, and as of July 15, 2021, began a gradual shutdown. If you have not accessed v5 before this date, you can no longer access that API. For those who are continuing to use it until February 2022, you should remain on a lower version of this library, however we would encourage you to upgrade to a compatible endpoint. Read more here.
NewTwitchApi
to TwitchApi
We've updated the name of the namespace to be consistent with the language from Twitch, which is Twitch API. We've added some code that will remain in for the current future that allows continued calls to the NewTwitchApi
Namespace and Classes. You should begin using the new classes ASAP by updating your code. Any time you have been individually initializing classes instead of using our helper functions you will begin to receive errors until you update your namespace and classes. You can review the Getting Started section of the README for more information.
If you were previously using:
$helixGuzzleClient = new \NewTwitchApi\HelixGuzzleClient($twitch_client_id);
$newTwitchApi = new \NewTwitchApi\NewTwitchApi($helixGuzzleClient, $twitch_client_id, $twitch_client_secret);
You should change this code to:
$helixGuzzleClient = new \TwitchApi\HelixGuzzleClient($twitch_client_id);
$twitchApi = new \TwitchApi\TwitchApi($helixGuzzleClient, $twitch_client_id, $twitch_client_secret);
Not changing this code will not break your project at this time but in the future, when the legacy classes are removed, your project will begin to throw errors. No timeline has been announced for this yet.
BREAKING CHANGES
NewTwitchApi
to TwitchApi
NewTwitchApi
Class to TwitchApi
createUserFollow
and deleteUserFollow
from UsersApi
(Twitch Announcement)MAINTENANCE
NewTwitchApi\NewTwitchApi
Class that extends TwitchApi\TwitchApi
for backwards compatibilityNewTwitchApi\HelixGuzzleClient
Class that extends TwitchApi\HelixGuzzleClient
for backwards compatibilityNEW FEATURES
ScheduleApi
ScheduleApi
-> getChannelStreamSchedule
ScheduleApi
-> getChanneliCalendar
(optional auth)ScheduleApi
-> updateChannelStreamSchedule
ScheduleApi
-> createChannelStreamScheduleSegment
ScheduleApi
-> updateChannelStreamScheduleSegment
ScheduleApi
-> deleteChannelStreamScheduleSegment
EventSub
->subscribeToChannelSubscriptionMessage
CORE
getApiWithOptionalAuth
for explicit calls with optional authentication (since all endpoints but 1 require auth at this time)NEW FEATURES
ChatApi
->GetChannelEmotes
ChatApi
->GetGlobalEmotes
ChatApi
->GetEmotesSet
This release fixes some issues we introduced in v5.0 when we stopped extending the Guzzle Client.
BREAKING
CORE
HelixGuzzleClient
to be a Guzzle MiddlewareGuzzle\Client
to HelixGuzzleClient
BREAKING
ChannelSubscriptionEnd
from beta to v1 (renamed from ChannelUnsubscribe
)NEW FEATURES
channel.subscription.gift
to EventSub (beta)ChatApi
ChatApi
->getChannelChatBadges
ChatApi
->getGlobalChatBadges