Node.js client for the unofficial MidJourney api.
- face swap
- Major update New niji bot & custom zoom & remix mode
npm i midjourney
# or
yarn add midjourney
import { Midjourney } from "midjourney";
const client = new Midjourney({
ServerId: <string>process.env.SERVER_ID,
ChannelId: <string>process.env.CHANNEL_ID,
SalaiToken: <string>process.env.SALAI_TOKEN,
Debug: true,
Ws: true,
});
await client.Connect();
const Imagine = await client.Imagine(
"A little pink elephant",
(uri: string, progress: string) => {
console.log("Imagine", uri, "progress", progress);
}
);
console.log({ Imagine });
const Variation = await client.Variation({
index: 2,
msgId: <string>Imagine.id,
hash: <string>Imagine.hash,
flags: Imagine.flags,
loading: (uri: string, progress: string) => {
console.log("Variation.loading", uri, "progress", progress);
},
});
console.log({ Variation });
const Upscale = await client.Upscale({
index: 2,
msgId: <string>Variation.id,
hash: <string>Variation.hash,
flags: Variation.flags,
loading: (uri: string, progress: string) => {
console.log("Upscale.loading", uri, "progress", progress);
},
});
console.log({ Upscale });
To run the included example, you must have Node.js installed. Then, run the following commands in the root directory of this project:
- clone the repository
git clone https://github.com/erictik/midjourney-api.git
cd midjourney-api
- install dependencies
yarn
# or npm
npm install
- set the environment variables
- How to get your Discord TOKEN:
- Create a server and Invite Midjourney Bot to Your Server
OR Join my discord server - How to get server and channel ids:
when you click on a channel in your server in the browser expect to have the follow URL patternhttps://discord.com/channels/$SERVER_ID/$CHANNEL_ID
#example variables, please set up yours
export SERVER_ID="1082500871478329374"
export CHANNEL_ID="1094892992281718894"
export SALAI_TOKEN="your-discord-token"
Then, run the example with the following command:
npx tsx example/imagine-ws.ts
-
/imagine
variation
upscale
reroll
blend
zoomout
vary
-
/info
-
/fast
and/relax
-
/prefer remix
-
variation (remix mode)
-
/describe
-
/shorten
-
/settings
reset
- verify human
- proxy
- niji bot
- custom zoom
- autoload command payload