twitchdev / issues

Issue tracker for third party developers.
Apache License 2.0
73 stars 6 forks source link

Affiliate requirements being duped? Twitch API reporting scam channels #550

Closed quinja79 closed 2 years ago

quinja79 commented 2 years ago

We're a third party developer on the Twitch API, monitoring for Twitch Affiliate and Partner qualifications (to connect with game publishers for marketing opportunities).

We noticed several suspicious accounts reported via the API as Twitch Affiliates. The following are those qualifications:

Here are the channels that were marked as Affiliates by Twitch and reported via the API (sharing the open SullyGnome for easy reference):

As you can see, they have no real history of streaming. These look to be accounts that sprouted up out of nowhere with followership and concurrent viewership numbers that aren't believable (bots?). The content is of poor quality and there's zero online presence otherwise. There is no indication that these channels have met the Affiliate requirements that Twitch has defined and I've included above.

In conclusion, this looks to be an exploit by scam Twitch users looking to penetrate third party systems using their fake followership/concurrents and Affiliate status. This has impacted us negatively with respect to the qualifications presented to publishers on our system. The solution would be to identify the exploit resulting in the Affiliate status assignment and correcting it so that these accounts are not being reported as such via the API.

Thank you for your attention and hard work!

quinja79 commented 2 years ago

Here's another with the same pattern as the other three above, also marked as Affiliate:

BarryCarlyon commented 2 years ago

Not sure how this is a Twitch API bug?

In conclusion, this looks to be an exploit by scam Twitch users looking to penetrate third party systems using their fake followership/concurrents and Affiliate status. This has impacted us negatively with respect to the qualifications presented to publishers on our system. The solution would be to identify the exploit resulting in the Affiliate status assignment and correcting it so that these accounts are not being reported as such via the API.

Sounds like you need to be reporting these channels to Twitch via the Report tool, not filing them on the third party developers bug report tracker. Where it's going to go no where fast as what you have reported is not a "bug" with third party tools.

(And starting a witch hunt by naming names?)

quinja79 commented 2 years ago

@BarryCarlyon My mistake if not taking the right course of action.

Perhaps it's not an API "bug", but some form of Affiliate flagging that isn't working properly - I see your point about the API simply being he reporting mechanism and not the source of the issue, so that's taken and I apologize for the misdirected post.

While searching for a path on Twitch's website to report the issue, I had a choice between the feedback form which looks to mainly accommodate Twitch users, and this Github for developer-related issues. I guess I misunderstood this to be where Twitch is focusing developer support requests. I'll see if I can find a more direct path for this. Appreciate your feedback.

BarryCarlyon commented 2 years ago

This help guide covers how to report users:

https://help.twitch.tv/s/article/how-to-file-a-user-report?language=en_US

some form of Affiliate flagging that isn't working properly

Affiliation is a matter of "meet these metrics" then fill in the tax form last I checked. And those metrics are just "stream x" and have "y followers"

as per "Path to Affiliate" on https://dashboard.twitch.tv/achievements

Example from one of my Extension Developer etst channels

image

https://affiliate.twitch.tv/

Perhaps it's not an API "bug", but some form of Affiliate flagging that isn't working properly

flagging accounts/problems with affiliate here isn't going to result in anything as "wrong department" really

DevRel can't do much about "this account is possibly breaking the TOS for a non developer related thing" generally speaking.

quinja79 commented 2 years ago

@BarryCarlyon Thanks!

My main concern is that flagging individual accounts just doesn't cut it, but maybe that raises their attention on the loophole.

Whatever these channels are doing to get flagged as Affiliates, despite not meeting those requirements as defined, is what I'm hoping to have addressed, so that these channels don't continue popping up. It's pretty specific to whatever automation is implemented, not some qualitative measure of their channel quality.

Anyhow, appreciate you providing the user report path. I've give it a try!

quinja79 commented 2 years ago

@BarryCarlyon One point of clarification that I can't shake, just so we're on the same page - as you'll see in the Affiliate qualifications, it's not just followership and concurrent viewers, but it's also "Stream on 7 different days" and "Stream for 8 hours", neither of which the channels I shared display in any form. All four must be met within the same 30 day period.

Or perhaps there's another reason that isn't visible to us publicly, or goes back prior to the data available (though in which case you can lose Affiliate status?).

BarryCarlyon commented 2 years ago

/me shrugs

You are comparing only what sullygnome (another third party API consimer) recorded. Which we don't know matches what Twitch recorded for the purpose of offering affiliate.

And grumbling about a "perceieved problem" (no offense) in the wrong place. All I can do, as another third party developer, is just point you at the reporting/help guides that I already linked, since this tracker is not for "finger pointing" at people we think are breaking the rules.

quinja79 commented 2 years ago

Yeah I hear you, sorry again. It's an issue that's impacting marketers off-platform, and there's clearly something awry, so I'm just trying to get to the bottom of it. This is also what we're seeing via the API, not just SullyGnome, though I get your point.

Don't mean to drag it on, just being clear about the discrepancy that's visible and of interest to me, perhaps others invested in the API data point. Thanks again for the feedback and time!

arrowgent commented 2 years ago

as aquired through helix api: per your reported usernames

gridlock_18
{
  "data": [
    {
      "id": "720935378",
      "login": "gridlock_18",
      "display_name": "gridlock_18",
      "type": "",
      "broadcaster_type": "affiliate",
      "description": "",
      "profile_image_url": "https://static-cdn.jtvnw.net/jtv_user_pictures/185f3da5-e33d-4d90-ad72-baeebe82b261-profile_image-300x300.png",
      "offline_image_url": "",
      "view_count": 2409,
      "created_at": "2021-08-25T11:53:56Z"
    }
  ]
}
goyo34
{
  "data": [
    {
      "id": "720753940",
      "login": "goyo34",
      "display_name": "goyo34",
      "type": "",
      "broadcaster_type": "affiliate",
      "description": "",
      "profile_image_url": "https://static-cdn.jtvnw.net/jtv_user_pictures/2c273ee9-3a3f-43f4-96f0-27b6e9760d2d-profile_image-300x300.png",
      "offline_image_url": "",
      "view_count": 3738,
      "created_at": "2021-08-24T20:15:05Z"
    }
  ]
}
maverick_rain
{
  "data": [
    {
      "id": "720751992",
      "login": "maverick_rain",
      "display_name": "maverick_rain",
      "type": "",
      "broadcaster_type": "affiliate",
      "description": "Maverick ile oynamayı çok seviyorum.",
      "profile_image_url": "https://static-cdn.jtvnw.net/jtv_user_pictures/50ff1829-1740-4132-a74e-d072c35ab95b-profile_image-300x300.png",
      "offline_image_url": "",
      "view_count": 4482,
      "created_at": "2021-08-24T20:08:31Z"
    }
  ]
}
amaru1988
{
  "data": [
    {
      "id": "720756135",
      "login": "amaru1988",
      "display_name": "amaru1988",
      "type": "",
      "broadcaster_type": "affiliate",
      "description": "",
      "profile_image_url": "https://static-cdn.jtvnw.net/jtv_user_pictures/9c80798a-4922-4d66-b968-6a62960fe559-profile_image-300x300.png",
      "offline_image_url": "",
      "view_count": 1630,
      "created_at": "2021-08-24T20:21:28Z"
    }
  ]
}

it would seem "affiliate" status is labelled by helix api, as any 3rd party tool would report not substantial evidence of their meeting minimum requirements

it would not surprise me someone creates accounts, streams to no category has no title and disables vod saving and clips then has 3-5 chat bots come "boost" their chat viewers and then applies for affiliate after 8 hours / 7 days

but for what purpose? and does it matter? none of them appear in lists suggesting they were in more than 50-100 chats within 24 hours so they dont appear to be going out of their way to use the accounts suspiciously

end result, twitch's helix api is reporting them as affiliate. 🤷🏿

quinja79 commented 2 years ago

Thanks, @arrowgent, for the additional info/thoughts