So, as a new developer, creating a new product, I am forced to use a deprecated API. Is this really a good idea Twitch?

I’m sorry, but I think this is so strange. I’ve never seen something like this before by a company.

So if you are a new developer today, the best Twitch can offer us right now is a deprecated API version. Here’s why.

Both v3 and v5 are deprecated and even is scheduled to be removed at the end of 2018.

So whatever we build now, we know its totally gonna need to be redone in next year.

And this is because the “new Twitch API” doesn’t have all the essential APIs up and running yet;

For example, why in earth is “webhooks” prioritized over “videos” in the roadmap? Webhooks is something new, but Videos is something that both v3 and v5 has today. I don’t understand why something that is a core part of v3 and v5, and is something that is used today by existing developers and products, is not moved first to the new Twitch API?

And to take “videos” as an example again, it is in the “exploring” column, which means “Products or features that we’re actively thinking about but haven’t started working on”. So when is Twitch planing to to release this? September 2018? Giving all developers who rely on it, to beta test the new video API, breaking their products, since the v5 will be removed 3 months later? Or after December 2018? We don’t know.

I wouldn’t mind that the “new Twitch API” focused on new cool features first, but don’t do that if you also deprecate all other APIs at the same time.

Have v5 up and running and supported, until you can guarantee that the new Twitch API can offer the same basic functionality for the developers.

By deprecating v5, Twitch is essentially encouraging developers to move to the new house. But the house is not finished built yet and lacks the same functionality as the old house (and maybe that functionality is as important as working electricity for certain developers). For no apparent reason.

Sorry for the rage, but Twitched asked for feedback and here’s mine.

Just imagine if Oracle deprecated Java 8, while working on Java 9? Or Google deprecated YouTube v3, while working on v4? But yet Twitch deprecates its only fully functional API in favor for an API that is still a work in progress.

I feel like Twitch is putting us in a unnecessary annoying situation by deprecating the other APIs while the new one does not even have the same basic functionality up and running.

3 Likes

I feel like you are jumping the gun a little, if deprecation was announced for Dec 2017 then yeah it would leave give developers some big issues, but right now there’s over 15 months until v3/v5 go away so there’s time to either stick with v5 and wait for Helix and its 3rd party modules to mature, or mix and match both, using v5 only where Helix is lacking functionality and move over to Helix more fully as more endpoints are released.

You should see the mess that is eBay’s API or the utter cluster ******** that is Tesco’s utterly cluster******* API I have to deal with at $dayjob. Or the utter stupidity of Shopify with it’s stupid rate limits and zero bulk end points. The only API that seems ok~ish is Amazon MWS, and thats like 5 years old with no major changes, but I shudder the day they do…

Sure v3/v5 are deprecated but they are there to use (for now) and we have a time frame.

This, sure bad, method of “kill” the old stuff to herald in the new, will adjust how Twitch will perform it’s API roll out, and I have read that the new API, (and webhooks when they go live) contains within it end points for ~90% of current Kraken API calls (v3/v5 combined)

One could argue that Twitch’s third party API offering is getting better, we just have to get past this bump from a company that (perhaps) finally have the right expertise on board, post Amazon Acquisition to guide the ship in the right direction and turn round and say “all of this shit is wrong we gotta change it”.

As a third party dev having used a lot of API’s, you just gotta deal with it.

People have been demanding Webhooks for years, I’m quite happy with pubsub myself. this might be a case of “give the people what they want”.

The webhook follow end point will mean, a LOT of traffic on kraken will go away, due to the number of streams using follower alerts.

The roadmap is (hopefully) backed up with thoughts like “we’ll offer this which will reduce that so we can then do this other thing”. Phased roll out of sorts.

Twitch isn’t under any obligation to give us anything.

Either way, I imagine they are also changing a LOT of the internal infrastructure (teams HAHAHAH), in order to facilitate the third party API, and/or internal system load, as unlike some other (general) sites, they don’t really use their own API that much to run their own site. Which would solve a lot of problems for us, if Twitch used it’s own API more. But that a different story.

2 Likes

I still stand my ground though its highly unorthodox to deprecate a feature rich & fully working API, in favor of a work in progress one.

For example, let’s take the “videos” APIs again.

The only “working” APIs associated with videos are now, for some reason, marked as “deprecated”, right? But there is actually nothing else that can be used.

So on paper, the only way to fetch VOD information right now, as we speak, is via deprecated APIs.

It’s just a really strange deprecation strategy. To deprecate an entire API version, when there isn’t actually anything else to substitute it with.

A software company doesn’t usually deprecate APIs until there is a clear path for their developers to transition away from it.

But Barry basically nailed it with this comment.

But since I read that Twitch wanted feedback, so there was my two cents.

1 Like

Backing @corgrath here - nobody here is jumping the gun, actually.
The order of action when planning to deprecate something is to provide an alternative first, and then [provided it’s tested, stable, etc] deprecate old endpoints in favour of new ones, not the other way around…

I’m curious what the idea behind this decision is, because this is the first time in a while I’ve seen something deprecated before an alternative is ready, especially that there’s nothing wrong with v5 from the looks of it. Why “kill” (it’s not dead yet, but you get the idea) a perfectly fine API in favour of something that’s not even finished…???

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.