Skip to main content

핵심 개념 이해하기

MidJourney API는 Discord 버튼 상호작용을 시뮬레이션합니다. 일반적인 REST API와 달리, 상태 머신 으로 작동하며, 각 작업은 다음 단계에 사용할 새 버튼을 반환합니다.

핵심 API 4개


전체 워크플로 다이어그램


핵심 개념: 버튼 및 customId

성공한 모든 작업은 buttons 배열을 반환합니다. 각 버튼에는 다음 작업을 트리거하는 데 사용하는 customId가 있습니다. 의 예시 응답 /mj/task/\{id\}/fetch:
customId 는 고정값이 아닙니다. 작업마다 변경됩니다. 항상 buttons 배열에서 가져오세요.

단계별 버튼 참조

IMAGINE 후 (IMAGINE 후()

초기 이미지 생성이 완료되면 다음 버튼이 반환됩니다:

UPSCALE 후 (UPSCALE 후()

업스케일 후에는 편집 도구를 사용할 수 있습니다:
참고: 프롬프트(Prompt)에 지정한 MJ 버전(예: customId--v 6.1)에 따라 버튼 레이블과 --v 5.2 형식은 달라질 수 있습니다. 항상 API 응답에서 버튼을 읽어오세요.
Inpaint (Vary Region) 버튼은 Upscale 후에만 표시됩니다.

전체 예제: 생성 및 업스케일

1단계: imagine 요청 제출

응답:

2단계: 작업 상태 폴링

응답(완료된 경우):

3단계: U1을 클릭하여 업스케일

응답:

4단계: 새 작업을 폴링하고 결과 가져오기


모달이 필요한 경우는?

다음 API를 호출하고 /mj/submit/action 작업 상태가 MODAL이 아니라 SUCCESS가 되면 반드시 /mj/submit/modal 를 호출하여 추가 입력을 제공해야 합니다.

확인된 모달 작업

예제: Inpaint 흐름 Inpaint 작업 시작:
새 작업을 한 번 조회하세요. MODAL 상태는 작업에 마스크와 프롬프트(Prompt)가 필요함을 의미합니다:
모달 API를 통해 마스크와 프롬프트(Prompt)를 제출하세요:

속도 모드 선택

경로에 속도 접두사를 추가하세요:

기타 진입점

이 API들은 독립적인 진입점이며 imagine → action 흐름을 따르지 않습니다:

문제 해결 팁

API 설계와 워크플로를 바탕으로, 발생할 수 있는 일반적인 문제는 다음과 같습니다:
마지막 수정일 2026년 7월 31일