Get Midjourney Seed

October 27, 2025

Table of contents

  1. Request Headers
  2. Request Body
  3. Parameters
  4. Response • JSON • stream: false
  5. Response • SSE Stream • stream: true
  6. Model
  7. Examples
  8. Try It

Retrieve the seed and four separate upscaled images for the following completed jobs:

Please note that video generation jobs are not supported.

https://api.useapi.net/v3/midjourney/jobs/seed

Request Headers

Authorization: Bearer {API token}
Content-Type: application/json
# Alternatively you can use multipart/form-data (required for Blob content uploads).
# Content-Type: multipart/form-data

Request Body

{
  "jobId": "j1023141520123456789i-u12345-c1234567890123456789-bot:midjourney"
}

Parameters

  • jobId is required. Parent job ID from completed image job. Job must have:
    • status: "completed"
    • jobType: "image" (not video)
    • Message ID present
  • stream is optional (default: true).
    • true - Returns Content-Type: text/event-stream with live progress events. See SSE Streaming Guide
    • false - Returns Content-Type: application/json with initial job state. Use GET /jobs/jobid to retrieve updates and results
  • replyUrl is optional. Webhook URL for real-time job event callbacks. If channel has default replyUrl configured, it will be used when job-specific one is not provided. All job events POST-ed to this URL as they occur.
    Overrides channel-level replyUrl if specified.
    Maximum length 1024 characters.

  • replyRef is optional. Your reference ID stored with job.
    Returned in all responses and callbacks as response.replyRef.
    Maximum length 1024 characters.

Response • JSON • stream: false

Response with content-type: application/json.

  • 201 Created

    Job created successfully. Use returned jobid with GET /jobs/jobid to poll status, or wait for webhook callbacks if replyUrl provided.

    {
        "jobid": "j1024181534748808540-u12345-c1234567890987654321-bot:midjourney",
        "verb": "seed",
        "status": "created",
        "created": "2025-10-24T18:15:34.748Z",
        "request": {
            "replyUrl": "https://api-callback.matthieu.leblanc.workers.dev/",
            "replyRef": "2025-10-24T18:15:33.608Z",
            "stream": false,
            "jobId": "j1024181441023299840i-u12345-c1234567890987654321-bot:midjourney"
        }
    }
    
  • 400 Bad Request

    {
      "error": "Parent job status is \"progress\", must be \"completed\" to get seed"
    }
    
  • 401 Unauthorized

    {
      "error": "Unauthorized"
    }
    
  • 402 Payment Required

    {
      "error": "Account has no subscription or subscription expired"
    }
    
  • 404 Not Found

    {
      "error": "Parent job not found"
    }
    
  • 410 Gone

    Parent job expired (older than 62 days).

    {
      "error": "Parent job has expired"
    }
    
  • 596 Pending Moderation

    Channel has pending moderation/CAPTCHA. Email notification sent. Log into Discord and address moderation message/CAPTCHA. Execute POST /accounts/channel/reset.

    {
      "error": "All configured Midjourney channels (2) have errors (pending moderation, CAPTCHA, etc.). Please resolve channel issues before making new requests."
    }
    

Response • SSE Stream • stream: true

Returns content-type: text/event-stream with real-time job progress events. See SSE Streaming Guide for implementation details. See Job Response Model for complete job response object structure.

data: {"event":"initialized","message":"Stream initialized","jobId":"j1024181334913815452-u12345-c1234567890987654321-bot:midjourney","seq":0,"ts":"18:13:34.977"}

data: {"event":"midjourney_completed","job":{"jobid":"j1024181334913815452-u12345-c1234567890987654321-bot:midjourney","verb":"seed","status":"completed","created":"2025-10-24T18:13:34.913Z","request":{"replyUrl":"https://api-callback.matthieu.leblanc.workers.dev/","replyRef":"2025-10-24T18:13:33.684Z","jobId":"j1024181125701303160i-u12345-c1234567890987654321-bot:midjourney"},"response":{"content":"**cat in the hat --v 7.0 --s 250**\n**Job ID**: xxxxxxxx-xxxx-xxxx-xxxx-bbd798ffcb5d\n**seed** 3937070146","attachments":[{"url":"https://cdn.discordapp.com/attachments/1234567890987654321/123456789098765124/anonymous_cat_in_the_hat_0_xxxxxxxx-xxxx-xxxx-xxxx-bbd798ffcb5d.png","width":1024,"height":1024},{"url":"https://cdn.discordapp.com/attachments/1234567890987654321/123456789098765936/anonymous_cat_in_the_hat_1_xxxxxxxx-xxxx-xxxx-xxxx-bbd798ffcb5d.png","width":1024,"height":1024},{"url":"https://cdn.discordapp.com/attachments/1234567890987654321/123456789098765279/anonymous_cat_in_the_hat_2_xxxxxxxx-xxxx-xxxx-xxxx-bbd798ffcb5d.png","width":1024,"height":1024},{"url":"https://cdn.discordapp.com/attachments/1234567890987654321/123456789098765203/anonymous_cat_in_the_hat_3_xxxxxxxx-xxxx-xxxx-xxxx-bbd798ffcb5d.png","width":1024,"height":1024}]},"code":200,"updated":"2025-10-24T18:13:38.213Z"},"seq":16,"ts":"18:13:38.226"}

Model

See Job Response Model for complete response structure.

Examples

The examples below show the JSON response format (stream: false). For real-time SSE streaming examples, see the SSE Streaming Guide.

  • curl -H "Authorization: Bearer YOUR_API_TOKEN" \
         -H "Content-Type: application/json" \
         -X POST "https://api.useapi.net/v3/midjourney/jobs/seed" \
         -d '{"jobId":"j1023141520123456789i-u12345-c1234567890123456789-bot:midjourney","stream":false}'
    
  • const response = await fetch('https://api.useapi.net/v3/midjourney/jobs/seed', {
      method: 'POST',
      headers: {
        'Authorization': 'Bearer YOUR_API_TOKEN',
        'Content-Type': 'application/json'
      },
      body: JSON.stringify({
        jobId: 'j1023141520123456789i-u12345-c1234567890123456789-bot:midjourney',
        stream: false
      })
    });
    
    const result = await response.json();
    console.log('Seed:', result.response.seed);
    
    // Use seed in next imagine prompt
    const nextJob = await fetch('https://api.useapi.net/v3/midjourney/jobs/imagine', {
      method: 'POST',
      headers: {
        'Authorization': 'Bearer YOUR_API_TOKEN',
        'Content-Type': 'application/json'
      },
      body: JSON.stringify({
        prompt: `a cat in a hat --seed ${result.response.seed}`,
        stream: false
      })
    });
    
  • import requests
    
    response = requests.post(
        'https://api.useapi.net/v3/midjourney/jobs/seed',
        headers={'Authorization': 'Bearer YOUR_API_TOKEN'},
        json={
            'jobId': 'j1023141520123456789i-u12345-c1234567890123456789-bot:midjourney',
            'stream': False
        }
    )
    
    result = response.json()
    seed = result['response']['seed']
    print(f'Seed: {seed}')
    
    # Use seed in next imagine prompt
    next_job = requests.post(
        'https://api.useapi.net/v3/midjourney/jobs/imagine',
        headers={'Authorization': 'Bearer YOUR_API_TOKEN'},
        json={
            'prompt': f'a cat in a hat --seed {seed}',
            'stream': False
        }
    )
    

Try It