Get an accurate list of subscribers?

I’m trying to find out who is subbed to a channel, for how long, and if possible who has been a past subscriber but is no longer subbed. I know there is GET /channels/:channel/subscriptions but what I’m unsure on is if that is a list of all subs (past and present) or just the currently active subs? If it’s currently active subs then knowing how long they’ve been subbed for is just from creation until now (but then how do I find out past subs?) and if that is a list includes those no longer subbed, then is the only way to find out who is currently subbed by running each name through GET /channels/:channel/subscriptions/:user ?

The subscriptions API shows only current channel subscribers (including those who cancelled but are still active until their subscription expires). There is no way to retrieve a list of cancelled subscriptions.

The created_at field is when a current subscription started. By current subscription, I mean without cancellation. If you cancel and resubscribe manually, that starts a new subscription and the created_at changes. Twitch’s twitchnotify in chat adds up the months from every subscription to a channel, including past subscriptions not shown in the API.

If you’re only checking subscription state on a per-user basis, you might want to just use the /channels/:channel/subscriptions/:user endpoint so you don’t need to pull the entire list of subscribers.

Thanks, it’s not exactly what I hoped for but it’ll have to do. The reason I was getting the entire list was because my bot can update a database when it see’s the new subscription or resub notifications in chat, but for any subscription prior to the bot joining the channel it had no subscription data.

Being able to see who is subbed is a great start but I wish I could accurately determine months subbed myself through the API. At the very least I’ll be able to work out the minimum time that a person has been subbed for, but with the created_atpotentially being changed by a cancel and then resubscribe a users actual time could go beyond that minimum.

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