Ошибка 403 при множественных вызовах API

Мы используем следующие API для обновления и приостановки пользователей, но получаем ошибки 403. Сообщите, пожалуйста, причину возникновения этой ошибки. Для справки: мы используем API-ключ пользователя администратора.

API приостановки

`{{base_url}}/admin/users/316/suspend?api_key={{api_key}}&api_username={{api_username}}`

Тело запроса

{
    "suspend_until": "3020-04-17",
    "reason": "inactive"
}

Ответ — 403 Forbidden

Обновление электронной почты

{{base_url}}/users/{username}/preferences/email?api_key={{api_key}}&api_username={{api_username}}

Тело запроса

{
 "email": "discourse1@example.com"
}

Ответ — 403 Forbidden

Вам нужно поместить ключ API в заголовок, а не в URL.

Тоже попробовал. Получаю тот же 403 Forbidden с BODY- [“BAD CSRF”]

Учетные данные API должны быть включены в заголовок запроса. Также необходимо использовать дефис вместо подчеркивания в именах полей заголовка:

  • api_key нужно изменить на api-key (или Api-Key)
  • api_username нужно изменить на api-username (или Api-Username)

Правило гласит, что имена полей заголовка не чувствительны к регистру, но необходимо использовать дефисы, а не подчеркивания. (Я узнал это на собственном горьком опыте.) Посмотрите пример в верхней части Discourse REST API Documentation, чтобы увидеть правильно оформленный API-запрос.