Legacy PubSub deprecation and shutdown timeline

Today we are announcing the timeline to decommission our legacy PubSub system for third-party development with a shutdown to be completed on or soon after April 14, 2025. Since the launch of EventSub in 2020, we have discussed our intention to simplify our third-party interfaces for real-time events and move away from PubSub once EventSub reached feature parity. With the general release of subscription types for suspicious users earlier today, EventSub subscription types now cover everything available in PubSub. PubSub is now deprecated and will have a year-long withdrawal period for any developers who need to migrate to EventSub.

EventSub for real-time events

Introduced in 2016, PubSub offered the first real-time event interface for third-party developers other than chat. Developers were able to retrieve information about Bits usage to celebrate contributions and it continued to evolve with additional topics including moderator actions and Channel Points. Since then, more data has been made available through the Twitch API and EventSub, and these interfaces offer improved reliability and methods to scale applications as an application’s audience grows. This is especially true with the introduction of the Conduits transport method for high-throughput notifications.

With this product evolution, we are decommissioning PubSub to simplify our third-party products. EventSub will continue to be the primary interface for real-time events and receive updates as new Twitch features are released with third-party support.

PubSub to EventSub migration guide

To assist developers in the transition from our legacy PubSub interface to EventSub, we are publishing a PubSub migration guide that will be available on our developer documentation website throughout the migration window. It will provide a comprehensive list of equivalent topics and mentions any differences in data or permissions. This resource will be available soon.

PubSub shutdown timeline

A phased shutdown will be implemented to ensure developers are aware of the deprecation before the permanent shutdown. The shutdown windows to expect are as followed:

Date Window Length Start Time (Click to view other timezones)
2025-02-10 1-hour 2025-02-10T19:00:00Z→2025-02-10T20:00:00Z
2025-02-24 3-hour 2025-02-24T19:00:00Z→2025-02-24T22:00:00Z
2025-03-10 6-hour 2025-03-10T18:00:00Z→2025-03-11T00:00:00Z
2025-03-24 24-hour 2025-03-24T18:00:00Z→2025-03-25T18:00:00Z
2025-04-07 48-hour 2025-04-07T18:00:00Z→2025-04-09T18:00:00Z
2025-04-14 Permanent 2025-04-14T18:00:00Z

What will happen during the shutdown windows and after the final shutdown?

During the shutdown windows and on the final shutdown date, developers can expect to receive an ERR_BADAUTH error response when attempting to issue a new listen command.

Existing connections may not disconnect during the shorter windows, but will be closed during the 24-hour and 48-hour periods. Connections will also be closed on the final shutdown date.

Will this deprecation affect Extension PubSub?

No. Broadcasting messages for Extensions as documented on Building Extensions will not be affected by the broader PubSub deprecation and shutdown.

What if developers haven’t seen this announcement?

Over the next year, we will continue to monitor usage of PubSub and plan to send email reminders to developers with applications that are issuing a listen command.

I have more questions

Please feel free to use the comments section of this announcement for further questions and we will provide further updates throughout the withdrawal period.

Our next Standard Output broadcast on the TwitchDev channel will take place on Thursday, May 2, 2024 where we will continue to discuss the PubSub deprecation and the migration guide.

3 Likes

I have personally moved from PubSub to EventSub a long time ago, but that came with loss of functionality due to EventSub not being on feature parity with PubSub. This is still true today.

For example: In case of a gift sub, it is impossible to tell who gifted whom a subscription from the returned data. There are only distinct events which contain either the gifter or the recipient, but no event with both. There is no identifier linking these events. The only way to correlate the two is with innacurate heuristics. Whereas in PubSub, messages from the topic “channel-subscribe-events” contain both users.

This and more is covered in Revise the `channel.subscription` topics – Twitch UserVoice and the linked relevant User Voice Topics.

Are these gaps targeted to be closed during the deprecation window?

2 Likes

This is covered under The Chat Notification Topic which is analogous to USERNOTICE as a Topic and will provide the needed data

But yes would be nice for additional hydration on other topics it’s just not quite “pubsub parity” target imo

2 Likes

7 posts were split to a new topic: PubSub deprecation feedback: ckohen

I was not aware of that, thank you!

10 posts were split to a new topic: PubSub deprecation feedback: danthegoodman

Get Ad Schedule - `length_seconds`, `preroll_free_time_seconds` and `snooze_count` documented integers but example uses strings · Issue #857 · twitchdev/issues · GitHub exists for the all the ad endpoints documenting integers but using strings in examples

1 Like

Migation paths in my opinion are: [source]