Get /users/by-external/ выдает ошибку URL Not Found после обновления

Мне действительно удалось это решить.

Кажется, они обновили код так, чтобы теперь выбрасывалась ошибка, если пользователь не найден, поэтому мне пришлось использовать rescue вместо проверки на nil?

begin
    resp = client.get("/users/by-external/#{user.id}")
rescue DiscourseApi::NotFoundError => error
    puts error.response.body['errors'].first
    sync_user(user)
else
    resp.response.env.body['user']
end

Также формат ответа изменился с
resp['body']['user']
на
resp.response.env.body['user']

Моя последняя проблема заключается в том, что при вызове client.sync_sso теперь возникает Internal server error 500.

В логах указано:
ActiveRecord::RecordNotUnique (PG::UniqueViolation: ERROR: duplicate key value violates unique constraint "user_emails_pkey"

Однако, если я использую точно такие же данные в терминале Rails и запускаю client.sync_sso, всё работает идеально.

Кстати, я не менял конечную точку для вышеупомянутых частей, чтобы они снова заработали, поэтому кажется, что /users/by-external/ всё ещё действителен.