# Twitch V5 Subscriber \[BROKEN API\]

**URL:** <https://discuss.dev.twitch.com/t/twitch-v5-subscriber-broken-api/16246>\
**Category:** API\
**Created:** [June 18, 2018, 8:47pm UTC](https://discuss.dev.twitch.com/t/twitch-v5-subscriber-broken-api/16246 "2018-06-18T20:47:27Z")\
**Posts on this page:** 20\
**Page:** 1

<div class="post-metadata">

**Author:** ![Travis\_Miller](https://d3ovvz0v2ajtpu.cloudfront.net/user_avatar/discuss.dev.twitch.com/travis_miller/32/7007_2.png) [@Travis\_Miller](https://discuss.dev.twitch.com/u/Travis_Miller)\
**Post date:** [June 18, 2018, 8:47pm UTC](https://discuss.dev.twitch.com/t/twitch-v5-subscriber-broken-api/16246/1 "2018-06-18T20:47:27Z")

</div>

There was a post before, but it was buried with no response from twitch.  
Was the v5 subscriber check quietly disabled?

It has been broken for a few days, when looking up a user it returns the channel owner as a subscriber.

---

<div class="post-metadata">

**Author:** ![TheElm](https://d3ovvz0v2ajtpu.cloudfront.net/user_avatar/discuss.dev.twitch.com/theelm/32/2911_2.png) [@TheElm](https://discuss.dev.twitch.com/u/TheElm)\
**Post date:** [June 18, 2018, 9:31pm UTC](https://discuss.dev.twitch.com/t/twitch-v5-subscriber-broken-api/16246/2 "2018-06-18T21:31:28Z")

</div>

The channel owner has always been shown as a subscriber to themselves. This is simply how Twitch handles certain aspects of their website.

When somebody becomes an affiliate/partner they unlock the ability to have emotes. To grant the channel owner the permission to use their own emotes, the channel owner is granted an unlimited tier 3 subscription to themselves.

---

<div class="post-metadata">

**Author:** ![BarryCarlyon](https://d3ovvz0v2ajtpu.cloudfront.net/user_avatar/discuss.dev.twitch.com/barrycarlyon/32/253_2.png) [@BarryCarlyon](https://discuss.dev.twitch.com/u/BarryCarlyon)\
**Post date:** [June 18, 2018, 10:19pm UTC](https://discuss.dev.twitch.com/t/twitch-v5-subscriber-broken-api/16246/3 "2018-06-18T22:19:32Z")

</div>

Whats your request/cURL/code to make the request?

A quick test of

> [https://api.twitch.tv/kraken/users/MYID/subscriptions/SOMEONEISUBTOID](https://api.twitch.tv/kraken/users/MYID/subscriptions/SOMEONEISUBTOID)

With the relevant scope under v5 has successfully returned the correct information

I got my sub plan and my start date and a channel payload representing SOMEONEISUBTOID

---

<div class="post-metadata">

**Author:** ![Travis\_Miller](https://d3ovvz0v2ajtpu.cloudfront.net/user_avatar/discuss.dev.twitch.com/travis_miller/32/7007_2.png) [@Travis\_Miller](https://discuss.dev.twitch.com/u/Travis_Miller)\
**Post date:** [June 19, 2018, 5:18am UTC](https://discuss.dev.twitch.com/t/twitch-v5-subscriber-broken-api/16246/4 "2018-06-19T05:18:04Z")

</div>

> [@Check Subscription by User endpoint returns my own channel subscription object](https://discuss.dev.twitch.com/t/check-subscription-by-user-endpoint-returns-my-own-channel-subscription-object/16219):
>
> Twitch Channels: 26361988 - kutu182 29445937 - thesalamanda

I have not changed my code for months, and this used to work…

---

<div class="post-metadata">

**Author:** ![BarryCarlyon](https://d3ovvz0v2ajtpu.cloudfront.net/user_avatar/discuss.dev.twitch.com/barrycarlyon/32/253_2.png) [@BarryCarlyon](https://discuss.dev.twitch.com/u/BarryCarlyon)\
**Post date:** [June 19, 2018, 7:48am UTC](https://discuss.dev.twitch.com/t/twitch-v5-subscriber-broken-api/16246/5 "2018-06-19T07:48:36Z")

</div>

Yup confirming as broken.

Personally I just cache all the subs by downloading all the subs by page, every 4 hours and/or do a users/ID/subscriptions/CHANNELID check instead of using the channels lookup

---

<div class="post-metadata">

**Author:** ![KEVINdEsBuRgErS](https://avatars.discourse-cdn.com/v4/letter/k/8e8cbc/32.png) [@KEVINdEsBuRgErS](https://discuss.dev.twitch.com/u/KEVINdEsBuRgErS)\
**Post date:** [June 19, 2018, 9:17am UTC](https://discuss.dev.twitch.com/t/twitch-v5-subscriber-broken-api/16246/6 "2018-06-19T09:17:02Z")

</div>

I personally use this unofficial API: [https://api.twitch.tv/kraken/users/USERID/chat/channels/CHANNELID](https://api.twitch.tv/kraken/users/USERID/chat/channels/CHANNELID)

ps: you can even know who is moderator 🙂

---

<div class="post-metadata">

**Author:** ![Travis\_Miller](https://d3ovvz0v2ajtpu.cloudfront.net/user_avatar/discuss.dev.twitch.com/travis_miller/32/7007_2.png) [@Travis\_Miller](https://discuss.dev.twitch.com/u/Travis_Miller)\
**Post date:** [June 19, 2018, 1:05pm UTC](https://discuss.dev.twitch.com/t/twitch-v5-subscriber-broken-api/16246/7 "2018-06-19T13:05:53Z")

</div>

wow thats great. something tells me this endpoint will not exist past december though ☹  
if userID was interchangeable with login, it would be the best twitch endpoint of the year.  
and throw follower in there 😛

---

<div class="post-metadata">

**Author:** ![Louwizz](https://d3ovvz0v2ajtpu.cloudfront.net/user_avatar/discuss.dev.twitch.com/louwizz/32/4745_2.png) [@Louwizz](https://discuss.dev.twitch.com/u/Louwizz)\
**Post date:** [July 13, 2018, 5:48pm UTC](https://discuss.dev.twitch.com/t/twitch-v5-subscriber-broken-api/16246/8 "2018-07-13T17:48:31Z")

</div>

This still appears to be broken in v5. Also broken in v3.

It seems that, no matter the UserID/UserName specified, it always returns the channel owner’s subscription details, rather than the specified user.

---

<div class="post-metadata">

**Author:** ![jbulava](https://d3ovvz0v2ajtpu.cloudfront.net/user_avatar/discuss.dev.twitch.com/jbulava/32/6777_2.png) [@jbulava](https://discuss.dev.twitch.com/u/jbulava)\
**Post date:** [July 14, 2018, 5:00am UTC](https://discuss.dev.twitch.com/t/twitch-v5-subscriber-broken-api/16246/9 "2018-07-14T05:00:07Z")

</div>

Hey everyone, @Syzuna brought this post to my attention (and a couple others for the same issue). I’ve bookmarked these for Monday when I’ll try to track this down with the engineering team.

I see a lot of clicks on the unofficial endpoint above. If this is functionality that you find important to your development, please fill out our [New Twitch API Feature Request](https://goo.gl/forms/6fMD7LYkQihNaS2n2) form. We are using this to understand all use cases and to prioritize what functionality becomes officially support.

---

<div class="post-metadata">

**Author:** ![jbulava](https://d3ovvz0v2ajtpu.cloudfront.net/user_avatar/discuss.dev.twitch.com/jbulava/32/6777_2.png) [@jbulava](https://discuss.dev.twitch.com/u/jbulava)\
**Post date:** [July 17, 2018, 7:21pm UTC](https://discuss.dev.twitch.com/t/twitch-v5-subscriber-broken-api/16246/10 "2018-07-17T19:21:31Z")

</div>

I’ve received confirmation from the subscriptions team that this issue has been fixed.

---

<div class="post-metadata">

**Author:** ![Terbau](https://d3ovvz0v2ajtpu.cloudfront.net/user_avatar/discuss.dev.twitch.com/terbau/32/4821_2.png) [@Terbau](https://discuss.dev.twitch.com/u/Terbau)\
**Post date:** [July 18, 2018, 6:42pm UTC](https://discuss.dev.twitch.com/t/twitch-v5-subscriber-broken-api/16246/11 "2018-07-18T18:42:31Z")

</div>

Nothing has changed for me. The endpoint still returns the channel owner as the subscriber even though i’m clearly requesting info about a specific user.

---

<div class="post-metadata">

**Author:** ![VitruxPT](https://d3ovvz0v2ajtpu.cloudfront.net/user_avatar/discuss.dev.twitch.com/vitruxpt/32/2242_2.png) [@VitruxPT](https://discuss.dev.twitch.com/u/VitruxPT)\
**Post date:** [July 19, 2018, 9:14pm UTC](https://discuss.dev.twitch.com/t/twitch-v5-subscriber-broken-api/16246/12 "2018-07-19T21:14:55Z")

</div>

Still not fixed ☹

---

<div class="post-metadata">

**Author:** ![jbulava](https://d3ovvz0v2ajtpu.cloudfront.net/user_avatar/discuss.dev.twitch.com/jbulava/32/6777_2.png) [@jbulava](https://discuss.dev.twitch.com/u/jbulava)\
**Post date:** [July 20, 2018, 1:28pm UTC](https://discuss.dev.twitch.com/t/twitch-v5-subscriber-broken-api/16246/13 "2018-07-20T13:28:49Z")

</div>

Sorry to hear that. I’ll send this specific thread back to the team.

---

<div class="post-metadata">

**Author:** ![jbulava](https://d3ovvz0v2ajtpu.cloudfront.net/user_avatar/discuss.dev.twitch.com/jbulava/32/6777_2.png) [@jbulava](https://discuss.dev.twitch.com/u/jbulava)\
**Post date:** [July 23, 2018, 11:02pm UTC](https://discuss.dev.twitch.com/t/twitch-v5-subscriber-broken-api/16246/14 "2018-07-23T23:02:48Z")

</div>

I’m seeing the same (unexpected) response for my own channel and checking in with the team.

---

<div class="post-metadata">

**Author:** ![jbulava](https://d3ovvz0v2ajtpu.cloudfront.net/user_avatar/discuss.dev.twitch.com/jbulava/32/6777_2.png) [@jbulava](https://discuss.dev.twitch.com/u/jbulava)\
**Post date:** [July 24, 2018, 7:33pm UTC](https://discuss.dev.twitch.com/t/twitch-v5-subscriber-broken-api/16246/15 "2018-07-24T19:33:59Z")

</div>

The subscriptions team has reproduced the error (showing channel object if that channel is also associated with the client id, rather than providing the expected “not a subscriber” message).

The bug is being tracked in a sprint. For Twitch staff, that ticket is SUBS-2010.

---

<div class="post-metadata">

**Author:** ![TheElm](https://d3ovvz0v2ajtpu.cloudfront.net/user_avatar/discuss.dev.twitch.com/theelm/32/2911_2.png) [@TheElm](https://discuss.dev.twitch.com/u/TheElm)\
**Post date:** [July 26, 2018, 6:32am UTC](https://discuss.dev.twitch.com/t/twitch-v5-subscriber-broken-api/16246/16 "2018-07-26T06:32:29Z")

</div>

Just to add my own experience in here, so the problem may be fixed, I’ve started receiving a 403 from the subscribers endpoint (despite previously having access).

My response from `https://api.twitch.tv/kraken?api_version=5&oauth_token=${TOKEN}` is

```auto
{
  token: {
    valid: true,
    authorization: {
      scopes: [
        "channel_check_subscription",
        "channel_commercial",
        "channel_editor",
        "channel_feed_edit",
        "channel_read",
        "channel_stream",
        "channel_subscriptions"
      ],
    },
    user_name: ${USERNAME},
    user_id: ${USERID},
    client_id: ${CLIENT}
  }
}

```

And from `https://api.twitch.tv/kraken/channels/${USERID}/subscriptions?api_version=5&limit=100&oauth_token=${TOKEN}`

```auto
{
  error: "Forbidden",
  status: 403,
  message: "Unable to access channel subscribers of ${USERID}"
}

```

---

<div class="post-metadata">

**Author:** ![BarryCarlyon](https://d3ovvz0v2ajtpu.cloudfront.net/user_avatar/discuss.dev.twitch.com/barrycarlyon/32/253_2.png) [@BarryCarlyon](https://discuss.dev.twitch.com/u/BarryCarlyon)\
**Post date:** [July 26, 2018, 9:21am UTC](https://discuss.dev.twitch.com/t/twitch-v5-subscriber-broken-api/16246/17 "2018-07-26T09:21:39Z")

</div>

Try using headers instead of query string arguments for version/token

```
curl -H 'Accept: application/vnd.twitchtv.v5+json' \
-H 'Authorization: OAuth cfabdegwdoklmawdzdo98xt2fo512y' \
-X GET https://api.twitch.tv/kraken/channels/${USERID}/subscriptions?limit=100

```

For example

---

<div class="post-metadata">

**Author:** ![TheElm](https://d3ovvz0v2ajtpu.cloudfront.net/user_avatar/discuss.dev.twitch.com/theelm/32/2911_2.png) [@TheElm](https://discuss.dev.twitch.com/u/TheElm)\
**Post date:** [July 26, 2018, 10:20am UTC](https://discuss.dev.twitch.com/t/twitch-v5-subscriber-broken-api/16246/18 "2018-07-26T10:20:57Z")

</div>

This version actually works, oddly enough. Programmatically I stick with the header version, but since v5 has also supported url params I occasionally used that method to look at subs, in my browser, for a channel I moderate. Peculiar,

---

<div class="post-metadata">

**Author:** ![jbulava](https://d3ovvz0v2ajtpu.cloudfront.net/user_avatar/discuss.dev.twitch.com/jbulava/32/6777_2.png) [@jbulava](https://discuss.dev.twitch.com/u/jbulava)\
**Post date:** [July 27, 2018, 6:25pm UTC](https://discuss.dev.twitch.com/t/twitch-v5-subscriber-broken-api/16246/19 "2018-07-27T18:25:42Z")

</div>

Please confirm it’s fixed now! I no longer get my own object, but rather a message that /Twitch does not subscribe to me. Yay.

```
{
  "error": "Not Found",
  "status": 404,
  "message": "12826 has no subscriptions to 135093069"
}
```

---

<div class="post-metadata">

**Author:** ![system](https://d2opxh93rbxzdn.cloudfront.net/original/2X/0/05909729875cce3b53e59d5561c4d23bb14948fc.png) [@system](https://discuss.dev.twitch.com/u/system)\
**Post date:** [August 26, 2018, 6:25pm UTC](https://discuss.dev.twitch.com/t/twitch-v5-subscriber-broken-api/16246/20 "2018-08-26T18:25:45Z")

</div>

Closed on August 26, 2018, 6:25pm UTC

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