Claude Opus 5.5 è disponibile su SeedRouter

Midjourney V8.2 API: invia e segui un'attività immagine

Invia un'attività Midjourney V8.2, salva l'ID e recupera i risultati in Python. Scopri parametri per versione, azioni sulle immagini e tariffe attuali.

Leggi in Markdown

Un'integrazione Midjourney V8.2 API richiede una versione esplicita, una richiesta immagine valida e un modo per recuperare l'attività completata. Con SeedRouter invii a /v1/images/generations, conservi l'ID attività restituito e interroghi /v1/tasks/{id}. Un invio riuscito conferma la ricezione dell'attività; le immagini arrivano nel risultato completato.

Questa guida segue il contratto di richiesta SeedRouter. Un test a pagamento del 18 ottobre 2026 ha completato una richiesta V8.2 Fast e consegnato quattro immagini da 1024 × 1024. Il ritratto qui sotto è uno di questi output. La pagina del modello contiene Playground e prezzi attuali; il riferimento API distingue gli input supportati dalle combinazioni ancora da verificare. [1]

Output di Midjourney V8.2 API con una donna dai capelli rossi in maglione color crema su una scogliera

Parti da una richiesta Midjourney V8.2 API esplicita

Usa l'ID completo del modello, midjourney-v8.2. SeedRouter richiede un modello esplicito: non abbreviarlo in midjourney e non dedurlo da un'impostazione dell'account in un'altra interfaccia. Registra il modello insieme alla richiesta inviata. [1]

Prepara una chiave API lato server e un prompt breve con un risultato che puoi esaminare. Parti senza riferimenti o azioni su immagini padre, così la prima richiesta prova il percorso di base. La richiesta qui sotto ha prodotto la serie di ritratti illustrata. Sceglie Fast e attiva il controllo aggiuntivo dei contenuti:

{
  "model": "midjourney-v8.2",
  "prompt": "Cinematic portrait of a young woman with freckles and wind-swept auburn hair, wearing a cream cable-knit sweater, laughing on a coastal cliff at golden hour, warm rim light, shallow depth of field, 85mm film photograph",
  "speed": "fast",
  "nsfw_check": true
}

La richiesta minima richiede solo model e prompt; se ometti la velocità viene usato Fast. Se aggiungi size, usa un rapporto d'aspetto come "16:9", non un'istruzione in pixel WIDTHxHEIGHT. Un preset generico per immagini che invia 1024x1024, quality: "high" o un valore arbitrario di n non rispetta il contratto del modello. Adatta il corpo dalla tabella dei campi Midjourney invece di riutilizzare senza modifiche le impostazioni di un altro modello.

Invia una volta, poi interroga l'ID attività salvato

L'esempio Python scaricabile usa la libreria standard, conserva la chiave in una variabile d'ambiente e scrive l'ID attività accettato in un file locale. Ha comandi distinti per invio e polling. Questa separazione permette di riprendere una lettura senza creare una nuova generazione di immagini.

export SEEDROUTER_API_KEY='your-server-side-key'
python3 midjourney-v8-2.py submit request.json --state mj-task.json
python3 midjourney-v8-2.py poll --state mj-task.json

Salva la richiesta JSON precedente come request.json. Sostituisci la chiave di esempio con il tuo segreto nell'ambiente locale; non inserirlo in un bundle del browser e non registrarlo in un repository. Per provare un deployment locale, imposta SEEDROUTER_BASE_URL dell'esempio sull'URL di base /v1 di quel deployment.

L'esempio rifiuta di sovrascrivere un file di stato esistente durante l'invio. Inoltre non ripete automaticamente un POST dopo un errore di connessione. Se la risposta si perde, l'applicazione potrebbe non sapere se l'attività è stata accettata. Controlla la cronologia prima di decidere se inviare di nuovo.

Il polling è diverso: legge un'attività già esistente. L'esempio si ferma quando l'attività è completata o fallita e segnala un'attesa limitata se resta in elaborazione. Un limite di attesa è un'osservazione lato client, non la prova che serva rigenerare l'immagine.

Leggi la struttura del risultato per l'operazione

Un'operazione immagine completata restituisce URL in output.data. Scorri l'array senza presumere che contenga sempre quattro elementi. Generazione, selezione di un'immagine, descrizione e fase di input per la modifica possono restituire tipi di output diversi.

Campo del risultatoCosa deve fare l'applicazione
statusDistinguere attività in elaborazione, completate e fallite
output.data[].urlMostrare o salvare ogni immagine consegnata
output.gridIdentificare una griglia come tale; un file può contenere più immagini tra cui scegliere
output.textMostrare il testo restituito senza presumere quattro suggerimenti o la lingua inglese
output.seedRegistrarlo quando presente, senza richiederlo in ogni risultato
output.awaiting_inputContinuare il flusso documentato di input per la modifica

Tratta un'attività fallita come un errore nell'applicazione, anche se la richiesta HTTP per leggerla è riuscita. Il successo HTTP significa che la consultazione dello stato è stata servita; non significa che l'immagine richiesta sia stata generata.

Quando output.grid è true, un solo URL contiene la griglia. Non inventare quattro URL individuali da quel file. Una selezione successiva usa la posizione dell'immagine nella griglia, a partire da uno; il numero di URL non è il numero di scelte disponibili.

L'esempio stampa l'output completato in JSON. L'applicazione può aggiungere archiviazione, miniature e controlli di selezione alle immagini restituite. Conserva l'ID attività con quei risultati, così un'azione successiva può riferirsi al padre corretto.

Converti i parametri nativi senza nascondere i conflitti

L'integrazione accetta campi strutturati e parametri nativi del prompt supportati. La precedenza è campi strutturati, poi extra, poi parametri dentro prompt. I valori espliciti zero e false vengono conservati.

Per esempio, un prompt contenente --stylize 700 abbinato a "stylize": 0 usa lo zero esplicito. È utile quando un'interfaccia invia un controllo separato, ma può sorprendere un'applicazione che assembla prompt e JSON in punti diversi. Preferisci una sola fonte per ogni impostazione.

Nelle richieste SeedRouter V8.2, quality accetta 0.25, 0.5, 1 o 2 nelle combinazioni compatibili. Qualità e hd sono input indipendenti: impostare la qualità non seleziona HD. Controlla i limiti attuali delle combinazioni prima di aggiungerli entrambi o altri controlli di riferimento; gli input documentati non ne dimostrano l'effetto su ogni versione. Raw è distinto da entrambi; la guida Raw spiega la differenza. [1]

Questa integrazione scarta i campi JSON sconosciuti, mentre rifiuta i parametri nativi sconosciuti. Non considerare una richiesta accettata come prova che un campo JSON aggiuntivo e non pertinente abbia modificato l'output. Controlla i nomi documentati e conserva il corpo esatto inviato nel registro del test.

Mantieni le azioni sull'immagine padre legate alla loro attività

Usa il tuo parent_task_id SeedRouter per un'azione successiva. Un'azione dipendente resta collegata al contesto di esecuzione originale. Se quel contesto non è disponibile, l'azione fallisce invece di creare un altro padre altrove. Il padre deve appartenere allo stesso account, usare lo stesso modello e restare disponibile per l'operazione richiesta. Gli indici pubblici delle immagini partono da uno.

Selezionare un'immagine ed eseguire un ingrandimento creativo sono operazioni diverse. Un risultato select non va descritto come un aumento della risoluzione. Allo stesso modo, una variazione, un remix e l'Edit Model ufficiale V8.2 sono funzionalità distinte con requisiti diversi.

L'integrazione attuale non espone il nuovo Edit Model come operazione API verificata. Non sostituirlo con una vecchia richiesta inpaint presumendo un comportamento equivalente. La guida alla modifica spiega le alternative disponibili e una sequenza verificata di modifica con maschera V6.1; il riferimento API riporta i limiti delle operazioni implementate.

Stima le attività invece di contare le miniature

Secondo il contratto tariffario di questa integrazione, una generazione completata è un'attività. Selezionare un'immagine esistente in una griglia non crea un'altra generazione addebitabile. Aprire una fase di input per la modifica non aggiunge un secondo addebito di generazione; l'operazione modal finale è la fase addebitabile. Una generazione di quattro immagini non equivale automaticamente a quattro attività fatturate separatamente. Il test V8.2 Draft del 18 ottobre ha restituito 24 immagini in un'attività; il numero di immagini restituite non è una formula affidabile per il prezzo.

Usa la tariffa attuale per versione, operazione, velocità e modalità selezionate. Le operazioni sull'immagine padre possono ereditare impostazioni, quindi il prezzo deve derivare dalla richiesta effettiva invece che da valori predefiniti ipotizzati. La pagina del modello legge le tariffe configurate invece di incorporare un importo fisso in dollari in questo tutorial.

Per il test di accettazione, registra richiesta, ID attività, stato finale, numero di output e addebito effettivo sull'account. Una compilazione riuscita o un test HTTP simulato non può dimostrare questi fatti di esecuzione. SeedRouter non addebita le richieste non riuscite.

Domande frequenti

Posso usare la stessa chiave API nel JavaScript frontend?

Tienila sul server. Fai chiamare al browser un endpoint autenticato dell'applicazione che invii la richiesta con la chiave lato server.

Un ID attività significa che l'immagine è pronta?

No. Leggi l'attività finché risulta completata o fallita, poi gestisci il risultato corrispondente. Salva l'ID prima di avviare il ciclo di polling.

Un timeout deve avviare una nuova generazione?

Non automaticamente. Conserva ogni ID attività noto ed esamina l'attività esistente. Un timeout di connessione o di attesa lato client non dimostra che l'invio originale sia stato rifiutato.

Posso cambiare versione per un'azione sull'immagine padre?

Questa integrazione richiede lo stesso modello del padre. Avvia una generazione separata per valutare un'altra versione.

Inizia l'integrazione Midjourney V8.2 API con una richiesta esplicita e un ID attività salvato. Verifica output consegnato e addebito prima di aggiungere riferimenti o una catena di azioni sulle immagini.

Fonti

Contratto e prove di esecuzione verificati il 18 ottobre 2026. Le immagini mostrate sono output di test di integrazione a pagamento, non un benchmark generale del modello.

[1] Riferimento API Midjourney di SeedRouter

[2] Impostazioni dei modelli per versione e prezzi attuali