У кого-нибудь ещё возникает эта проблема прямо сейчас? Я уже два дня пытаюсь использовать API, но каждый раз получаю похожие ошибки. Не уверен, что я упускаю какой-то шаг или что-то изменилось.
Я создал новый API-ключ для пользователя system. Также пробовал создать API-ключ для всех пользователей, а затем использовать свою учётную запись администратора.
При использовании Ruby-библиотеки discourse_api:
DiscourseApi::UnauthenticatedError ({"errors"=>["Вы не имеете права просматривать запрошенный ресурс. Имя пользователя API или ключ недействительны."], "error_type"=>"invalid_access"})
Также пробовал этот код из другого поста:
require 'net/http'
require 'uri'
INSTANCE_URL = 'https://forum.example.com/admin/users/list/all.json?email=user@example.com'
API_USERNAME = 'system'
API_KEY = 'a_new_api_key_here'
def send_request
url = URI.parse(INSTANCE_URL)
request = Net::HTTP::Get.new(url.path)
request.set_form_data({'api_username' => API_USERNAME, 'api_key' => API_KEY})
http = Net::HTTP.new(url.host, url.port)
response = http.request(request)
if response.code == '200'
puts "Успех!"
else
puts "Ошибка"
puts response.code
end
end
send_request # 400
Также пробовал использовать API, передавая api_username и api_key в данных формы вместе с необработанным запросом, но получаю ошибку 404.
Я пытаюсь написать скрипт, который читает список адресов электронной почты, получает имена пользователей, а затем отписывает их от всех рассылок Discourse.