[Helix] Get User Active Extensions Resolved User ID Bug

Your Parameters[2] is truncated in your screenshots. Just for clarity sure you don’t have a oAuth hidden in there?

Also you are trying to pass {user_id} as a Parameters[1] is that you sending in the body or as a Query String (GET) parameter?

I’m unfamiliar with RestSharp. I’m not sure in your “Parameters” in the screenshots whats a header, whats passed BODY and whats Query String?

My tests:

  • No Client ID

{“error”:“Unauthorized”,“status”:401,“message”:“Must provide a valid Client-ID or OAuth token”}

  • ClientID only

{“error”:“Bad Request”,“status”:400,“message”:“No User ID Specified.”}

  • No ClientID, with user_id

https://api.twitch.tv/helix/users/extensions?user_id=15185913
{“error”:“Unauthorized”,“status”:401,“message”:“Must provide a valid Client-ID or OAuth token”}

  • With ClientID, with user_id

Extension data (resp omitted)

  • No ClientID, With oAuth (for the user_id), no user_id

Extension data (resp omitted)

  • No ClientID, With oAuth, no user_id

Extension data of oAuth’ed user (resp omitted)

  • No ClientID, With oAuth, different (valid) user_id

Extension data for user_id (resp omitted)

I think you have a oAuth in there somewhere, I cannot replicate Valid Client ID, no User ID except for whats noted below:

If I send (an oAuth or a clientID) and an invalid user_id, I get “blank” extension data, ie: it lists all six slots with nothing active.

{“data”:{“panel”:{“1”:{“active”:false},“2”:{“active”:false},“3”:{“active”:false}},“overlay”:{“1”:{“active”:false}},“component”:{“1”:{“active”:false},“2”:{“active”:false}}}}

Basically with a invalid UserID you get a “blank” payload, rather than a “user_id” is not a user_id or user_id not found etc.

I don’t see any “active” extensions in the truncated payload response in the screenshot for “Valid Client ID (Bot), invalid explicit User ID”, just two “empty” slots //truncate

Basically, you are requesting extensions for “INVALID USER”. The user (ignoring them being invalid) doesn’t have any extensions active, so the response is all six slots being active: false

API Response: 200 OK, User has no active extensions.

Rather than: 404 Not Found, User does not exist

1 Like