Closed jjlucsy closed 11 months ago
Ticketed internally as GQL-915. Investigating if this is a bug that needs further attention.
Another one for your investigation: 950319492
curl -X GET \
'https://api.twitch.tv/kraken/chat/emoticon_images?emotesets=950319492' \
-H 'Accept: application/vnd.twitchtv.v5+json' \
-H 'Cache-Control: no-cache' \
-H 'Client-ID: 1pr5dzvymq1unqa2xiavdkvslsn4ebe'
{
"error": "Internal Server Error",
"status": 500,
"message": ""
}
Linking more information from a thread I created today on the dev forums:
I am seeing EmoteSets (even EmoteSet 0) randomly not be delivered with the HTTP 500 error.
This appears to be because some of the servers are failing to deliver emote sets, rather than an issue with particular emotesets in general (unless I am seeing a different issue than the above of course).
When EmoteSets are successfully delivered, the emote sets are pre-cached on one of the two servers that are attempting to serve the request.
The unsuccessful responses are always MISS, MISS when it comes to being cached.
As a side note, I have not yet seen any seattle server which has the emotes cached.
Example of a success header:
GV_TwitchLog: EmoteSet response header: X-Served-By: cache-sea4480-SEA, cache-bur17534-BUR
GV_TwitchLog: EmoteSet response header: X-Cache: MISS, HIT
Example of a fail header:
GV_TwitchLog: EmoteSet response header: X-Served-By: cache-sea4480-SEA, cache-bur17561-BUR
GV_TwitchLog: EmoteSet response header: X-Cache: MISS, MISS
Full header (success): GV_TwitchLog: EmoteSet response header: Connection: keep-alive GV_TwitchLog: EmoteSet response header: Content-Length: 2719 GV_TwitchLog: EmoteSet response header: Content-Type: application/json; charset=utf-8 GV_TwitchLog: EmoteSet response header: Access-Control-Allow-Origin: * GV_TwitchLog: EmoteSet response header: Cache-Control: no-cache, no-store, must-revalidate, private GV_TwitchLog: EmoteSet response header: Content-Encoding: gzip GV_TwitchLog: EmoteSet response header: Expires: 0 GV_TwitchLog: EmoteSet response header: Pragma: no-cache GV_TwitchLog: EmoteSet response header: Timing-Allow-Origin: https://www.twitch.tv GV_TwitchLog: EmoteSet response header: Date: Tue, 21 Apr 2020 20:32:15 GMT GV_TwitchLog: EmoteSet response header: X-Served-By: cache-sea4480-SEA, cache-bur17534-BUR GV_TwitchLog: EmoteSet response header: X-Cache: MISS, HIT GV_TwitchLog: EmoteSet response header: X-Cache-Hits: 0, 1 GV_TwitchLog: EmoteSet response header: X-Timer: S1587501135.495488,VS0,VS0,VE1 GV_TwitchLog: EmoteSet response header: Vary: Accept-Encoding GV_TwitchLog: EmoteSet response header: Strict-Transport-Security: max-age=300
Full Failure header: GV_TwitchLog: EmoteSet response header: Connection: keep-alive GV_TwitchLog: EmoteSet response header: Content-Type: application/json; charset=utf-8 GV_TwitchLog: EmoteSet response header: Access-Control-Allow-Origin: * GV_TwitchLog: EmoteSet response header: Cache-Control: no-cache, no-store, must-revalidate, private GV_TwitchLog: EmoteSet response header: Content-Encoding: gzip GV_TwitchLog: EmoteSet response header: Expires: 0 GV_TwitchLog: EmoteSet response header: Pragma: no-cache GV_TwitchLog: EmoteSet response header: Timing-Allow-Origin: https://www.twitch.tv GV_TwitchLog: EmoteSet response header: Date: Tue, 21 Apr 2020 20:31:25 GMT GV_TwitchLog: EmoteSet response header: X-Served-By: cache-sea4480-SEA, cache-bur17561-BUR GV_TwitchLog: EmoteSet response header: X-Cache: MISS, MISS GV_TwitchLog: EmoteSet response header: X-Cache-Hits: 0, 0 GV_TwitchLog: EmoteSet response header: X-Timer: S1587501086.909211,VS0,VS0,VE39 GV_TwitchLog: EmoteSet response header: Vary: Accept-Encoding GV_TwitchLog: EmoteSet response header: Strict-Transport-Security: max-age=300 GV_TwitchLog: EmoteSet response header: transfer-encoding: chunked
For around 20 successes and 20 failures, this has held. FYI if useful.
My users (and myself) are having this issue as well. In addition to some emotesets always causing error 500 (others posted examples above), it lately seems to be returning error 500 on and off for any request.
I have 100% error rate in the last 4 days with emotesets=0
@remixer-dec Same here.
I think this issue is a bit more severe than "Investigating if this is a bug that needs further attention." if it affects emote set 0 (global emotes). I reckon a large number of integrations are relying on global emotes in some way.
Closing due to the deprecation of the Kraken API as of February 2023.
The chat message USERSTATE will contain all the emotesets that a user has. I've found two sets that will produce an error 500 when trying to retrieve the emote images for them.
How to reproduce curl -H "Accept: application/vnd.twitchtv.v5+json" -H "Client-ID: 046ape8hh5j3y3vx13ta1hdpliu4s2" -X GET "https://api.twitch.tv/kraken/chat/emoticon_images?emotesets=1115262924" curl -H "Accept: application/vnd.twitchtv.v5+json" -H "Client-ID: 046ape8hh5j3y3vx13ta1hdpliu4s2" -X GET "https://api.twitch.tv/kraken/chat/emoticon_images?emotesets=1500636590"