Создайте канал discord с помощью API discord

#python #python-3.x #api #python-requests #discord

Вопрос:

я пытаюсь использовать discord api в python с запросами, и прямо сейчас я пытаюсь создать канал

это мой код

 import requests
API_URL = "https://discord.com/api/v9"
res = requests.post(f"{API_URL}/guilds/{guild_id}/channels", data={"name": "my channel name", "permission_overwrites": [], "type": 0}, headers={"authorization": f"Bot {the_bot_token}", "Content-Type": "application/json"})
print(res.text)
 

но это дает мне такой ответ:

 {"message": "400: Bad Request", "code": 0}
 

кто-нибудь может мне помочь?

Комментарии:

1. Вы рассматривали возможность использования discord.py ? Как библиотека, она отлично подходит для упаковки api в асинхронные функции python и, как правило, хорошо выполнена. К сожалению, его поддержка заканчивается, но с выходом новой версии API в следующем году все боты discord придется в значительной степени переписать :/

2. да, я знаю discord.py но мое намерение состояло в том, чтобы иметь возможность создать бота, не используя его

3. Роджер — я знаю, что подобные комментарии часто действуют мне на нервы, поэтому я понимаю — к сожалению, я не знаю ответа, но я бы рассмотрел ваш запрос с помощью тонкой зубчатой расчески. Неуместно : или пробел может быть разницей между анализируемым допустимым запросом и неправильным форматом

Ответ №1:

Ну, ваш код неверен, вы перепутали данные запросов

Вы должны заменить данные в json

Вот рабочий код

 import requests
API_URL = "https://discord.com/api/v9"
res = requests.post(f"{API_URL}/guilds/{guild_id}/channels", json={"name": "my channel name", "permission_overwrites": [], "type": 0}, headers={"authorization": f"Bot {the_bot_token}", "Content-Type": "application/json"})
print(res.text)