Вам нужно проанализировать дважды, если вы просто проанализируете один раз, вы получите ошибку:
TypeError: no implicit conversion of Hash into String
вы должны сделать так:
parsed_response = JSON.parse(response.to_json)
Тогда вы можете получить нужные значения:
parsed_response['students'][0]['id']
Вы также можете использовать метод dig , если ваша версия ruby выше 2.3:
parsed_response.dig('students', 0, 'id')
=> 1