So I understand that the V3 api now no longer works, but here’s what i’m confused about:
When I visit https://dev.twitch.tv/docs/api there seems to be two active APIs, namely “New Twitch API” and “V5”
What is the difference between these APIs? What are their respective endpoints?
What is Helix and what is Kraken, and how do they relate to the APIs? Shouldn’t they be named V5 or something to avoid confusion?
Kraken is v5. There used to be a v3 but that has been removed. v5 is deprecated and will be removed at some point in the future.
Helix, the new API, doesn’t use the same version numbers because it’s a separate system with different scopes, rate limits, pagination, and endpoints.
When designing a new app you should always use Helix where you can, only if an endpoint doesn’t yet exist in Helix should you use a v5 endpoint.
Thanks for the clarification, but why are they trying to push people away from V5, if Helix doesn’t support everything yet?
Great question! It would be nice to hear back from Twitch staff. Last August I posted a question about a feature from v5 that is missing in Helix, and never got a reply. I even included links to two other posts about the same missing feature, neither of which were actually resolved.
It’s frustrating when you take the time to study the documentation, learn the ins and outs of both the old and new APIs, are then urged to migrate to the new API, ask detailed questions seeking guidance about missing functionality, only to be ignored. FeelsBadMan
v5 (URLs with
kraken in them) has been deprecated and will eventually be turned off in favor of the new API (URLs with
helix in them). It’s true that we haven’t discussed in detail what else is going into the new API before v5 is given a shutdown date. In the next few weeks, we are gathering feedback on some of these endpoints in a closed beta and will be communicating more about them afterwards.
In v5 Migration Guide | Twitch Developers, " Authentication Scopes", it is not clear if the kraken scopes will continue to work long after migrating to helix. Can we assume that our app can keep passing kraken scopes and then helix will keep auto-mapping those scopes into helix?
You should not keep using Kraken scopes. Existing tokens with Kraken scopes may work depending on if the migration docs include that scope having a Helix equivalent, but you should expect the Kraken scopes to no longer work for new tokens in the future.