Skip to main content
GET
/
mj
/
task
/
{id}
/
fetch
TASK_ID="<task_id>"

curl "https://api.cometapi.com/mj/task/$TASK_ID/fetch" \
  -H "Authorization: Bearer $COMETAPI_KEY"
{
  "id": "1773314942177684",
  "status": "SUCCESS",
  "progress": "100%",
  "imageUrl": "https://api.cometapi.com/mj/image/1773314942177684",
  "videoUrl": "",
  "buttons": [
    {
      "customId": "MJ::JOB::upsample::1::example",
      "emoji": "",
      "label": "U1",
      "type": 2,
      "style": 1
    }
  ]
}
Use this endpoint after every Midjourney submit call. It is the main polling endpoint for imagine, action, modal, blend, and editor workflows.

Check these fields first

  • status for the overall task state
  • progress for the current completion signal
  • imageUrl or videoUrl when the asset is ready
  • buttons for the next available customId values

Polling rules

  • Keep polling until the task reaches SUCCESS, MODAL, or FAILURE
  • Treat the buttons array as the source of truth for follow-up actions
  • Use imageUrl when you need the finished grid or upscale result

Authorizations

Authorization
string
header
required

Bearer token authentication. Use your CometAPI key.

Path Parameters

id
string
required

Midjourney task id.

Response

200 - application/json

Current task state.

id
string
required

Task id.

imageUrl
string
required

Stable CometAPI-proxied image link (https://api.cometapi.com/mj/image/{id}). Prefer this link; entries in image_urls point at provider storage and can expire.

status
string
required

Task lifecycle state: NOT_START, SUBMITTED, IN_PROGRESS, SUCCESS, or FAILURE.

progress
string
required

Progress percentage string such as 58% while the task runs and 100% when finished.

buttons
object[]
required

Action buttons available on the finished task. Send a button's customId together with this task's id to /mj/submit/action to upscale, vary, zoom, or pan.

action
string

Task type: IMAGINE, UPSCALE, VARIATION, DESCRIBE, BLEND, VIDEO, or another action name.

customId
string

Button customId that created this task, when the task came from an action.

botType
string

Bot that handled the task, MID_JOURNEY or NIJI_JOURNEY, when reported.

prompt
string

Original prompt as submitted.

promptEn
string

Prompt after translation to the provider language. For DESCRIBE tasks, the extracted prompt suggestions arrive here.

description
string

Human-readable submission status message.

state
string

Custom state string echoed back from the submission for your own tracking.

submitTime
integer

Submission time as a Unix timestamp in milliseconds.

startTime
integer

Processing start time as a Unix timestamp in milliseconds.

finishTime
integer

Completion time as a Unix timestamp in milliseconds.

videoUrl
string

Generated video link for VIDEO tasks.

failReason
string

Failure reason when status is FAILURE.

maskBase64
string

Mask attached to the task when a region edit created it.

properties
object

Additional task metadata, such as finalPrompt.