Midjourney V7 Hochskalierung Schnittstelle
curl --request POST \
--url https://api.evolink.ai/v1/images/generations \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"model": "mj-v7-upscale",
"model_params": {
"task_id": "task-unified-xxx",
"image_number": 1,
"type": "standard"
}
}
'import requests
url = "https://api.evolink.ai/v1/images/generations"
payload = {
"model": "mj-v7-upscale",
"model_params": {
"task_id": "task-unified-xxx",
"image_number": 1,
"type": "standard"
}
}
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({
model: 'mj-v7-upscale',
model_params: {task_id: 'task-unified-xxx', image_number: 1, type: 'standard'}
})
};
fetch('https://api.evolink.ai/v1/images/generations', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.evolink.ai/v1/images/generations",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'model' => 'mj-v7-upscale',
'model_params' => [
'task_id' => 'task-unified-xxx',
'image_number' => 1,
'type' => 'standard'
]
]),
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>",
"Content-Type: application/json"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://api.evolink.ai/v1/images/generations"
payload := strings.NewReader("{\n \"model\": \"mj-v7-upscale\",\n \"model_params\": {\n \"task_id\": \"task-unified-xxx\",\n \"image_number\": 1,\n \"type\": \"standard\"\n }\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Authorization", "Bearer <token>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://api.evolink.ai/v1/images/generations")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"model\": \"mj-v7-upscale\",\n \"model_params\": {\n \"task_id\": \"task-unified-xxx\",\n \"image_number\": 1,\n \"type\": \"standard\"\n }\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.evolink.ai/v1/images/generations")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Authorization"] = 'Bearer <token>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"model\": \"mj-v7-upscale\",\n \"model_params\": {\n \"task_id\": \"task-unified-xxx\",\n \"image_number\": 1,\n \"type\": \"standard\"\n }\n}"
response = http.request(request)
puts response.read_body{
"created": 1757165031,
"id": "task-unified-1757165031-mjv7",
"model": "mj-v7-upscale",
"object": "image.generation.task",
"progress": 0,
"status": "pending",
"task_info": {
"can_cancel": true,
"estimated_time": 45
},
"type": "image",
"usage": {
"billing_rule": "per_call",
"credits_reserved": 1.8,
"user_group": "default"
}
}{
"error": {
"code": "invalid_request",
"message": "Invalid request parameters",
"type": "invalid_request_error"
}
}{
"error": {
"code": "unauthorized",
"message": "Invalid or expired token",
"type": "authentication_error"
}
}{
"error": {
"code": "insufficient_quota",
"message": "Insufficient quota. Please top up your account.",
"type": "insufficient_quota"
}
}{
"error": {
"code": "model_access_denied",
"message": "Token does not have access to model: mj-v7-upscale",
"type": "invalid_request_error"
}
}{
"error": {
"code": "rate_limit_exceeded",
"message": "Too many requests, please try again later",
"type": "rate_limit_error"
}
}{
"error": {
"code": "internal_error",
"message": "Internal server error",
"type": "api_error"
}
}Midjourney V7
Midjourney V7 Hochskalierung
- Generierte Bilder auf hoehere Aufloesung hochskalieren
- Unterstuetzt zwei Modi: Standard und Kreativ
- Bereits hochskalierte Bilder können nicht erneut hochskaliert werden (gibt 403-Fehler zurück)
- Asynchroner Verarbeitungsmodus, verwenden Sie die zurueckgegebene Aufgaben-ID zum Abfragen
POST
/
v1
/
images
/
generations
Midjourney V7 Hochskalierung Schnittstelle
curl --request POST \
--url https://api.evolink.ai/v1/images/generations \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"model": "mj-v7-upscale",
"model_params": {
"task_id": "task-unified-xxx",
"image_number": 1,
"type": "standard"
}
}
'import requests
url = "https://api.evolink.ai/v1/images/generations"
payload = {
"model": "mj-v7-upscale",
"model_params": {
"task_id": "task-unified-xxx",
"image_number": 1,
"type": "standard"
}
}
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({
model: 'mj-v7-upscale',
model_params: {task_id: 'task-unified-xxx', image_number: 1, type: 'standard'}
})
};
fetch('https://api.evolink.ai/v1/images/generations', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.evolink.ai/v1/images/generations",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'model' => 'mj-v7-upscale',
'model_params' => [
'task_id' => 'task-unified-xxx',
'image_number' => 1,
'type' => 'standard'
]
]),
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>",
"Content-Type: application/json"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://api.evolink.ai/v1/images/generations"
payload := strings.NewReader("{\n \"model\": \"mj-v7-upscale\",\n \"model_params\": {\n \"task_id\": \"task-unified-xxx\",\n \"image_number\": 1,\n \"type\": \"standard\"\n }\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Authorization", "Bearer <token>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://api.evolink.ai/v1/images/generations")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"model\": \"mj-v7-upscale\",\n \"model_params\": {\n \"task_id\": \"task-unified-xxx\",\n \"image_number\": 1,\n \"type\": \"standard\"\n }\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.evolink.ai/v1/images/generations")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Authorization"] = 'Bearer <token>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"model\": \"mj-v7-upscale\",\n \"model_params\": {\n \"task_id\": \"task-unified-xxx\",\n \"image_number\": 1,\n \"type\": \"standard\"\n }\n}"
response = http.request(request)
puts response.read_body{
"created": 1757165031,
"id": "task-unified-1757165031-mjv7",
"model": "mj-v7-upscale",
"object": "image.generation.task",
"progress": 0,
"status": "pending",
"task_info": {
"can_cancel": true,
"estimated_time": 45
},
"type": "image",
"usage": {
"billing_rule": "per_call",
"credits_reserved": 1.8,
"user_group": "default"
}
}{
"error": {
"code": "invalid_request",
"message": "Invalid request parameters",
"type": "invalid_request_error"
}
}{
"error": {
"code": "unauthorized",
"message": "Invalid or expired token",
"type": "authentication_error"
}
}{
"error": {
"code": "insufficient_quota",
"message": "Insufficient quota. Please top up your account.",
"type": "insufficient_quota"
}
}{
"error": {
"code": "model_access_denied",
"message": "Token does not have access to model: mj-v7-upscale",
"type": "invalid_request_error"
}
}{
"error": {
"code": "rate_limit_exceeded",
"message": "Too many requests, please try again later",
"type": "rate_limit_error"
}
}{
"error": {
"code": "internal_error",
"message": "Internal server error",
"type": "api_error"
}
}Midjourney verfügt über ein integriertes Moderationssystem. Wenn einige generierte Bilder durch die Moderation gefiltert werden, können die für diese Anfrage verbrauchten Credits nicht erstattet werden. Bitte achten Sie darauf, dass Ihre Prompts den Inhaltsrichtlinien entsprechen.
Autorisierungen
Alle Endpunkte erfordern Bearer Token Authentifizierung
API Key erhalten:
Besuchen Sie die API Key Verwaltungsseite um Ihren API Key zu erhalten
Zum Request-Header hinzufuegen:
Authorization: Bearer YOUR_API_KEY
Body
application/json
Modellname
Verfügbare Optionen:
mj-v7-upscale Modellparameter
Show child attributes
Show child attributes
HTTPS-Callback-URL fuer Aufgabenabschluss
Callback-Zeitpunkt:
- Ausgeloest bei Abschluss, Fehler oder Abbruch der Aufgabe
- Nach Abrechnungsbestaetigung gesendet
Sicherheitsbeschraenkungen:
- Nur HTTPS-Protokoll
- Callbacks an private IPs verboten (127.0.0.1, 10.x.x.x, 172.16-31.x.x, 192.168.x.x usw.)
- URL-Laenge max
2048Zeichen
Callback-Mechanismus:
- Timeout:
10Sekunden - Bis zu
3Wiederholungen (nach1s/2s/4s) - Antwortformat entspricht der Aufgabenabfrage
- 2xx-Statuscode = erfolgreich; andere loesen Wiederholungen aus
Beispiel:
"https://your-domain.com/webhooks/image-task-completed"
Antwort
Aufgabe erfolgreich erstellt
Zeitstempel der Aufgabenerstellung
Beispiel:
1757165031
Aufgaben-ID
Beispiel:
"task-unified-1757165031-mjv7"
Tatsaechlich verwendeter Modellname
Beispiel:
"mj-v7-upscale"
Aufgabenobjekttyp
Verfügbare Optionen:
image.generation.task Aufgabenfortschritt in Prozent (0-100)
Erforderlicher Bereich:
0 <= x <= 100Beispiel:
0
Aufgabenstatus
Verfügbare Optionen:
pending, processing, completed, failed Beispiel:
"pending"
Asynchrone Aufgabeninformation
Show child attributes
Show child attributes
Aufgabenausgabetyp
Verfügbare Optionen:
text, image, audio, video Beispiel:
"image"
Nutzungs- und Abrechnungsinformationen
Show child attributes
Show child attributes