diff --git a/lib/discordrb/api.rb b/lib/discordrb/api.rb index 74d1897ef..5bbf16e6b 100644 --- a/lib/discordrb/api.rb +++ b/lib/discordrb/api.rb @@ -143,7 +143,7 @@ def request(key, major_parameter, type, *attributes) unless mutex.locked? response = JSON.parse(e.response) - wait_seconds = response['retry_after'].to_f + wait_seconds = response['retry_after'] ? response['retry_after'].to_f : e.response.headers[:retry_after].to_i Discordrb::LOGGER.ratelimit("Locking RL mutex (key: #{key}) for #{wait_seconds} seconds due to Discord rate limiting") trace("429 #{key.join(' ')}")