Смена владельца постов «Сделал это баннером на» или «Закрыто на» (малые действия)

Возможно ли изменить владельца этих псевдо-постов? (Или как они там называются!)

Спасибо.

Маленькие посты действий? Насколько я знаю, вы не можете изменить их владельца. Маленькое действие придется удалить, а тему открыть и закрыть заново (например), причем закрыть тему должен будет тот, кому вы хотите передать владение маленьким действием.

Это любопытный вклад… :slightly_smiling_face:

Хотя у небольших постов с действиями нет гаечного ключа администратора, у них всё равно есть идентификатор поста. Возможно ли изменить их владельца через API?

Спасибо за идею. Я никогда не использовал(а) этот API, но с удовольствием попробую, если кто-нибудь подтвердит, что он здесь будет работать… :slight_smile:

Должен ли я просто ввести это в командной строке?

curl -X POST "http://forum.example.com/t/[TOPIC_ID]/change-owner.json" \
-H "Content-Type: multipart/form-data;" \
-H "Api-Key: ................." \
-H "Api-Username: ..............." \
-F "post_ids[]=[POST_ID]" \
-F "username=[NEW_USERNAME]"

Я могу определить [TOPIC_ID] из URL, API-ключ и имя пользователя из раздела Настройки-API, а [POST_ID] — посмотрев инструменты разработчика в Chrome.

Боюсь, что я здесь не в своей тарелке. :slightly_smiling_face: Я тоже ещё не работал с этим API, но надеюсь, кто-то другой сможет подключиться к обсуждению. :crossed_fingers:

Возвращаюсь к этому вопросу, но через живописный маршрут… :slight_smile: В итоге мне наконец удалось воспользоваться Postman и успешно изменить владельца небольшого поста с действием через API :partying_face: :balloon: :birthday:

Не могли бы вы подробнее рассказать об этом? Спасибо.

Я попробую :slight_smile:

Я взял ссылку на тему, где находится небольшой пост действия, добавил в конец /change-owner.json и добавил её в верхнюю панель как POST-запрос (ввожу свой API-ключ, API-имя пользователя, а также Content-Type во вкладку Headers):

Затем я нашёл post_id небольшого поста действия, который хотел изменить, в файле post.json (например, /t/tag-test-topic-one/762/2.json) и добавил ключи и значения post_ids[] и username во вкладку Body, в раздел ‘form-data’:

После этого нажал кнопку ‘Send’. :tada:

Круто. Я нашел страницу Plans & Pricing | Postman API Platform и хочу уточнить: можно ли сделать то, что вы описали выше, не оплачивая их тарифные планы? Для такой небольшой задачи я не думаю, что смогу оправдать какие-либо расходы :slight_smile:

Я не платил за это, поэтому, думаю, должна быть бесплатная версия. :slight_smile: Возможно, эта страница?

Хотя это лишь один из способов. Думаю, вы также можете использовать curl для отправки запросов из терминала, но я пока не освоил это. :person_shrugging:

Существует множество бесплатных программ для выполнения API-запросов, таких как Postman. Я использую Insomnia. Это вопрос личных предпочтений и доступности в зависимости от вашей операционной системы.

Вот простой пример с использованием curl из командной строки:

curl -X POST "https://your-discourse.com/posts.json" -H "Content-Type: application/json" -H "Api-Key: ВАШ_API_КЛЮЧ" -H "Api-Username: ВАШЕ_ИМЯ_ПОЛЬЗОВАТЕЛЯ" -d "{\"title\": \"Тестовое создание темы через API\", \"raw\": \"А вот и содержимое темы\", \"category\": ID_КАТЕГОРИИ }"