В этой статье показано, как получить полный функционал Midjourney с помощью АПИ
Для этой задачи вам понадобится учетная запись Discord с активной подпиской Midjourney, подойдет базовый план за 10 долларов.
Что нужно:
Учетная запись Discord
Вам необходимо приобрести подписку для своей учетной записи Discord на веб-сайте midjourney.com
Как и большинство людей в сообществе, мы не рекомендуем покупать план Pro и Mega Plan. Лучше создать несколько учетных записей Discord и приобрести для каждой план «Стандартный» или «Базовый».
Доступ к вашей учетной записи
После покупки подписки Midjourney вам необходимо получить доступ к своей учетной записи Discord в браузере (через discord.com) в режиме инкогнито (ниже я объясню почему). Найдите бота Midjourney, откройте с ним сообщение в директ и попробуйте выполнить команду, например:
/imagine nice girl in the red hat
Перед первой генерацией изображения бот попросит вас принять ToS. Обязательно примите эти условия до добавления аккаунта в панель userapi.
Получение Channel ID и Token
На изображении ниже показано, где найти Channel и Token. Эти два значения понадобятся вам, чтобы добавить свою учетную запись в проект.
Чтобы узнать Channel ID, зайдите в директ с ботом и скопируйте длинный номер, отмеченный цифрой «1»:
![](https://habrastorage.org/getpro/habr/upload_files/45f/8ca/a84/45f8caa84dd4afea4c5eef7221f26b33.png)
«2» указывает, где вам следует получить Токен. Чтобы найти его, откройте «Инструменты разработчика» в браузере, перейдите на вкладку «Сеть» и отправьте боту команду /info. После этого среди запросов найдите «interactions» и нажмите на него. На левой панели выберите «Headers» и скопируйте значение поля «Authorization». Например, ключ может выглядеть так:
MTE0MTkRN4zW_KWYjM1lDkqozMzOMEREyMw.GbvrVR.hI1nZqalc6jg5NmLdRgaJZs2LhYDz
Вам необходимо использовать эти два значения при добавлении своей учетной записи на панель управления (сперва вам нужно авторизоваться на сайте). (Это не реклама, это просто единственное, что я нашел бесплатно)
![](https://habrastorage.org/getpro/habr/upload_files/eb7/a64/0f8/eb7a640f83b9a3c5a181df4b6fb15303.png)
После добавления аккаунта, в течение 20–40 секунд, если вы выполнили действия, описанные в статье, ваш аккаунт будет успешно активирован в проекте.
Теперь вы можете создать свой первый запрос /imagine
Для запроса вам необходимо указать допустимое значение ключа API в заголовке запроса, используя следующий заголовок: api-key: <ваш API-ключ>
/imagine
POST: https://api.userapi.ai/midjourney/v2/imagine Request body:
{ "prompt": "nice girl",
"webhook_url": "https://example.com/imagine/webhook-url",
"webhook_type": "progress", // or result
"account_hash": "a7d44910-88a6-4673-acc8-d60ffc3479a6",
"is_disable_prefilter": false
}
Ответ:
{ "hash": "6794f6ef-866a-4bc3-b0bc-7b28ec010d1b"}
Параметр is_disable_prefilter является необязательным и по умолчанию имеет значение false. Если установлено значение true, запрос не будет подвергаться анализу приемлемости для отправки в Midjourney. Эта потенциальная корректировка может продлить срок действия учетной записи.
Если указан webhook_url, обновления объекта задачи будут отправляться через метод POST при каждом изменении статуса задачи.
Если для параметра webhook_type установлено значение «progress», вебхуки будут предоставлять обновления о ходе выполнения задачи, а также уведомлять о завершении задачи или ошибках. С другой стороны, если для параметра webhook_type установлено значение result, вебхуки будут отправляться только после завершения задачи или в случае ошибок.
Итак, всего за пару минут мы смогли сделать наш первый запрос к API Midjourney.