curl --request POST \
--url https://api.apimart.ai/v1/images/generations \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '{
"model": "hy-image-v3.5-preview",
"prompt": "A golden retriever running on a beach in warm evening light",
"size": "16:9",
"resolution": "2K"
}'
import requests
response = requests.post(
"https://api.apimart.ai/v1/images/generations",
headers={"Authorization": "Bearer <token>"},
json={
"model": "hy-image-v3.5-preview",
"prompt": "A golden retriever running on a beach in warm evening light",
"size": "16:9",
"resolution": "2K"
}
)
response.raise_for_status()
print(response.json())
const response = await fetch("https://api.apimart.ai/v1/images/generations", {
method: "POST",
headers: {
Authorization: "Bearer <token>",
"Content-Type": "application/json"
},
body: JSON.stringify({
model: "hy-image-v3.5-preview",
prompt: "A golden retriever running on a beach in warm evening light",
size: "16:9",
resolution: "2K"
})
});
if (!response.ok) throw new Error(await response.text());
console.log(await response.json());
{
"code": 200,
"data": [
{
"status": "submitted",
"task_id": "task_01K..."
}
]
}
Hy-Image-3.5 Preview
Hy-Image-3.5 Preview Bildgenerierung
Text-zu-Bild, bis zu 5 Referenzbilder und 1K / 2K / 4K oder exakte Pixelmaße. Ein Bild pro Anfrage.
POST
/
v1
/
images
/
generations
curl --request POST \
--url https://api.apimart.ai/v1/images/generations \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '{
"model": "hy-image-v3.5-preview",
"prompt": "A golden retriever running on a beach in warm evening light",
"size": "16:9",
"resolution": "2K"
}'
import requests
response = requests.post(
"https://api.apimart.ai/v1/images/generations",
headers={"Authorization": "Bearer <token>"},
json={
"model": "hy-image-v3.5-preview",
"prompt": "A golden retriever running on a beach in warm evening light",
"size": "16:9",
"resolution": "2K"
}
)
response.raise_for_status()
print(response.json())
const response = await fetch("https://api.apimart.ai/v1/images/generations", {
method: "POST",
headers: {
Authorization: "Bearer <token>",
"Content-Type": "application/json"
},
body: JSON.stringify({
model: "hy-image-v3.5-preview",
prompt: "A golden retriever running on a beach in warm evening light",
size: "16:9",
resolution: "2K"
})
});
if (!response.ok) throw new Error(await response.text());
console.log(await response.json());
{
"code": 200,
"data": [
{
"status": "submitted",
"task_id": "task_01K..."
}
]
}
Dieser Endpunkt arbeitet asynchron. Nach dem Absenden die Task-ID aus
data[0].task_id lesen und Status und Bild über die Task-Abfrage abrufen. Alle 3–5 Sekunden abfragen; empfohlenes Gesamtzeitlimit des Clients: 5 Minuten. Bei completed oder failed stoppen.curl --request POST \
--url https://api.apimart.ai/v1/images/generations \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '{
"model": "hy-image-v3.5-preview",
"prompt": "A golden retriever running on a beach in warm evening light",
"size": "16:9",
"resolution": "2K"
}'
import requests
response = requests.post(
"https://api.apimart.ai/v1/images/generations",
headers={"Authorization": "Bearer <token>"},
json={
"model": "hy-image-v3.5-preview",
"prompt": "A golden retriever running on a beach in warm evening light",
"size": "16:9",
"resolution": "2K"
}
)
response.raise_for_status()
print(response.json())
const response = await fetch("https://api.apimart.ai/v1/images/generations", {
method: "POST",
headers: {
Authorization: "Bearer <token>",
"Content-Type": "application/json"
},
body: JSON.stringify({
model: "hy-image-v3.5-preview",
prompt: "A golden retriever running on a beach in warm evening light",
size: "16:9",
resolution: "2K"
})
});
if (!response.ok) throw new Error(await response.text());
console.log(await response.json());
{
"code": 200,
"data": [
{
"status": "submitted",
"task_id": "task_01K..."
}
]
}
Request-Header
string
erforderlich
Bearer-Authentifizierung:
Bearer <token>. <token> ist Ihr APIMart API Key.Request-Parameter
string
erforderlich
Fester Wert:
hy-image-v3.5-preview.string
erforderlich
Textbeschreibung für Generierung oder Bearbeitung. Chinesisch und Englisch werden unterstützt; darf nicht leer sein.
string
Standard:"auto"
Ausgabeseitenverhältnis oder exakte Pixelmaße.
- Seitenverhältnis:
1:1,2:3,3:2,3:4,4:3,4:5,5:4,9:16,16:9,21:9. - Exakte Pixelmaße: etwa
2000x1104; die untenstehenden Grenzen gelten. autooder nicht angegeben: Das Modell entscheidet anhand des Prompts.
resolution nicht die Bildgröße.string
Standard:"1K"
Auflösungsstufe:
1K, 2K oder 4K; Standard: 1K.Bei exakten Pixelmaßen bestimmt dieses Feld nicht die Größe. Immer einen unterstützten Wert verwenden; andere Werte führen zu HTTP 400.integer
Exakte Ausgabebreite in Pixeln. Muss zusammen mit
height angegeben werden und hat Vorrang vor size und resolution.Breite: 256–8192; Breite × Höhe darf 8.294.400 nicht überschreiten. Vielfache von 16 werden empfohlen.integer
Exakte Ausgabehöhe in Pixeln. Muss zusammen mit
width angegeben werden.Höhe: 256–8192; Breite × Höhe darf 8.294.400 nicht überschreiten. Vielfache von 16 werden empfohlen.string[]
Öffentliche URLs für maximal 5 Referenzbilder. Ohne Bilder: Text-zu-Bild; mit Bildern: referenzbasierte Generierung über denselben Endpunkt.JPEG, PNG und WEBP werden unterstützt. Empfohlen: unter 7MB pro Bild. URLs müssen öffentlich zugänglich sein.
string
Inhalte, die im Bild nicht erscheinen sollen.
integer
Zufalls-Seed; muss eine nicht negative Ganzzahl sein.
0 oder Auslassen bedeutet zufällig.integer
Standard:"1"
Nur ein Bild pro Anfrage. Nur
1 ist zulässig; andere Werte führen zu HTTP 400.Größenauswahl
Priorität:width / height als Paar → exakte Pixel in size → Seitenverhältnis oder auto in size mit resolution.
Bei exakten Pixelmaßen müssen Breite und Höhe jeweils 256–8192 betragen, insgesamt maximal 8.294.400 Pixel. Für beide werden Vielfache von 16 empfohlen.
Beispiel mit exakten Pixelmaßen
{
"model": "hy-image-v3.5-preview",
"prompt": "A minimalist seaside travel poster with a warm sunset",
"width": 2000,
"height": 1104
}
width und height weglassen und "size": "2000x1104" übergeben.
Beispiel mit Referenzbild
{
"model": "hy-image-v3.5-preview",
"prompt": "Make the car in the reference image red, preserving the original background and lighting",
"image_urls": ["https://example.com/car.png"],
"size": "16:9",
"resolution": "2K",
"negative_prompt": "blur, text watermarks",
"seed": 42,
"n": 1
}
image_urls angeben, insgesamt maximal 5.
Antwort auf die Übermittlung
integer
Antwortstatuscode;
200 bedeutet Erfolg.array
Task-Ergebnisse abfragen
curl --request GET \
--url https://api.apimart.ai/v1/tasks/task_01K... \
--header 'Authorization: Bearer <token>'
{
"code": 200,
"data": {
"id": "task_01K...",
"status": "completed",
"result": {
"images": [
{
"url": ["https://example.com/generated-image.png"]
}
]
}
}
}
pending/processing: weiter abfragen.completed: Bild-URL ausdata.result.images[0].url[0]lesen;urlist ein Array aus Zeichenfolgen.failed: Abfragen stoppen und Ursache ausdata.error.messagelesen. Vollständige Erstattung. Prompt-Verstöße und abgelehnte Inhalte werden ebenfalls als Fehlschlag behandelt.
expires_at angegebenen Zeitpunkt herunterladen und sichern.
Abrechnung
Abrechnung pro Bild. Aktuelle Preise unter Modellpreise.- Bei Seitenverhältnissen wird nach der
resolution-Stufe abgerechnet. - Bei exakten Pixelmaßen bestimmt die kürzere Seite die Stufe:
| Stufe | Kürzere Seite |
|---|---|
| 1K | Bis 1024 Pixel |
| 2K | 1025–2048 Pixel |
| 4K | Über 2048 Pixel |
Häufige Parameterfehler
Folgende Fälle geben synchron HTTP 400 zurück, ohne Task-Erstellung oder Kosten:| Problem | Vorgehen |
|---|---|
Leerer prompt | Nicht leeren Prompt angeben |
n ist nicht 1 | Nur ein Bild pro Anfrage anfordern |
Negativer seed | Nicht negative Ganzzahl verwenden; 0 bedeutet zufällig |
Nicht unterstützte resolution | 1K, 2K oder 4K verwenden |
Nicht unterstütztes Seitenverhältnis in size | Eines der 10 Verhältnisse oben oder auto verwenden |
| Pixelmaße außerhalb der Grenzen | Breite und Höhe jeweils 256–8192, insgesamt maximal 8.294.400 Pixel |
| Mehr als 5 Referenzbilder | image_urls auf maximal 5 Bilder reduzieren |