Getting dates/durations for channel subscriptions


#1

Ahoy!

I’m working on an extension that involves tracking viewers’ subscription statuses, and understanding when a subscription has started or will expire is an important piece of it. I have this working in a current iteration using the “old” v5 API, but there doesn’t appear to be any date information in the new Get Broadcaster Subscriptions endpoint. Are there any plans to add it? Also, are the records returned from that new endpoint sorted at all?

Thanks!


#2

Dates, expirations, things like that are not available through the API.

If you’re using the created_at field from the v5 API, then your data will be completely off in many cases as that field is when the subscription object was created, which means it may not match when the user subscribed to the channel at all.


#3

Oh wow, I’m glad I asked then, that’s exactly what I’m doing right now! How wide can the difference be between the creation date and real subscription time?

The objective I’ve been trying to achieve is enabling the broadcaster to reward their subscribers with a sort of “monthly allowance” of points within the extension that can be used to perform certain actions. Allocating these points based on subscription dates imposed a natural staggering with the distribution system that’s been nice in avoiding a firehose of user interaction on the same day each month. I suppose if this isn’t possible with the new API and the existing data I’ve been using could be wildly inaccurate I may need to review these subscriber benefits altogether…


#4

Changing payment method can create a new subscription object, so it’ll have a new created_at date. An example of this is that one of my bots has be subscribed to a channel for about 4 years without any break, but because I changed the payment method the created_at date when I look at my bot on that channels subscribers list says it was created months ago, despite having a consistent sub for years.

This also means that people changing between Prime, Paid, non-subbed, and Gifted subs will also create new subscription objects with a new created_at date.

The only way to get a rough idea of how long someone has been subbed for is by the sub badge in chat, and if they choose to share their resub message which will show the cumulative months subbed. If they are just lurkers and don’t speak much (thus not being able to see their badge) or don’t share their resub, then you’ll never have accurate data on how long someone has been a sub for, and the longer they’ve been subbed the greater the margin of error.