Bilder
Basis-URL: https://app.neuroflash.com/api/image-service
Ein Bild in den Arbeitsbereich hochladen
POST
/v1/workspaces/{workspaceId}/imagesErstellt ein Bild im Arbeitsbereich aus der bereitgestellten URL oder dem Daten-URI. Die zurückgegebene id kann als Eingabe für image-edit-tasks oder image-upscale-tasks übergeben werden.
Pfadparameter
| Parameter | Typ | Erforderlich | Beschreibung |
|---|---|---|---|
workspaceId | string | Ja |
Anfrage-Body
FeldTypErforderlichBeschreibung
imageUrlstringJaHTTP(S)-URL des zu ladenden Bildes oder ein Inline-data:-URI.Antwort
FeldTypBeschreibung
idstringEindeutige Bild-ID (auch der GCS-Objektschlüssel).generationIdstringGruppiert jedes Bild, das von einer Generierungsanfrage erzeugt wird. Mehrere Zeilen können die gleiche generationId teilen, wenn eine Anfrage mehr als ein Bild anforderte.workspaceIdstringID des besitzenden Arbeitsbereichs.createdByUserIdstringGateway-Benutzer-ID des Bilderstellungsurhebers.promptstringEingabeaufforderung, die das Bild erzeugte (leer bei Hochskalierungen).modelstringModell, das zur Erzeugung des Bildes verwendet wurde.parametersobjectGenerierungsparameter (Seitenverhältnis, Format usw.).inputImageIdsobjectIDs aller bereitgestellten Eingabebilder für Bild2Bild/Hochskalierung.imageWidthobjectBildbreite in Pixeln.imageHeightobjectBildhöhe in Pixeln.imageSizeobjectBilddateigröße in Bytes.createdAtstringErstellungs-Zeitstempel in UTC.updatedAtstringLetzter Update-Zeitstempel in UTC._linksobject
contentstringArbeitsbereich-bezogene URL, die das Bildbinary zurückgibt.Beispiel
- cURL
- Python
- Node.js
- Go
curl -X POST "https://app.neuroflash.com/api/image-service/v1/workspaces/{workspace_id}/images" \
-H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"imageUrl": "string"
}'
import requests
response = requests.post(
f"https://app.neuroflash.com/api/image-service/v1/workspaces/{workspace_id}/images",
headers={"Authorization": f"Bearer {token}", "Content-Type": "application/json"},
json={
"imageUrl": "string"
},
).json()
const response = await fetch(
`https://app.neuroflash.com/api/image-service/v1/workspaces/${workspaceId}/images`,
{
method: "POST",
headers: {
Authorization: `Bearer ${token}`,
"Content-Type": "application/json",
},
body: JSON.stringify({
"imageUrl": "string"
}),
}
).then((r) => r.json());
body, _ := json.Marshal(map[string]any{
"imageUrl": "string",
})
req, _ := http.NewRequest("POST", "https://app.neuroflash.com/api/image-service/v1/workspaces/"+workspaceID+"/images", bytes.NewReader(body))
req.Header.Set("Authorization", "Bearer "+token)
req.Header.Set("Content-Type", "application/json")
resp, _ := http.DefaultClient.Do(req)
defer resp.Body.Close()
Antwort:
{
"id": "string",
"generationId": "string",
"workspaceId": "string",
"createdByUserId": "string",
"prompt": "string",
"model": "string",
"parameters": {},
"inputImageIds": {},
"imageWidth": {},
"imageHeight": {},
"imageSize": {},
"createdAt": "2024-01-15T10:30:00Z",
"updatedAt": "2024-01-15T10:30:00Z",
"_links": {
"content": "string"
}
}
Bilder in einem Arbeitsbereich auflisten (mit Seitennummerierung)
GET
/v1/workspaces/{workspaceId}/imagesGibt Bilder zurück, die zum angegebenen Arbeitsbereich gehören, neueste zuerst. Nutze createdByUserId, um nach einem bestimmten Ersteller zu filtern. Standard-Seiten-/Größen-Paginierung wird angewendet.
Pfadparameter
| Parameter | Typ | Erforderlich | Beschreibung |
|---|---|---|---|
workspaceId | string | Ja |
Abfrageparameter
| Parameter | Typ | Standard | Beschreibung |
|---|---|---|---|
page | integer | 1 | 1-basierte Seitennummer |
size | integer | 50 | Elemente pro Seite (maximal 200) |
generationId | string | — | Filtere zu Bildern, die von einer bestimmten Generierungsanfrage erzeugt wurden (nützlich zum Abrufen aller N Ausgaben eines POST/PUT-Aufrufs). |
modelId | string | — | Filtere zu Bildern, die von dieser Modell-ID erzeugt wurden. |
Antwort
FeldTypBeschreibung
pageobject
sizeintegerAnzahl der pro Seite angeforderten Elemente.totalElementsintegerGesamtzahl der übereinstimmenden Elemente.totalPagesintegerGesamtzahl der Seiten.currentPageinteger1-basierter Index der zurückgegebenen Seite.dataarray<object>
idstringEindeutige Bild-ID (auch der GCS-Objektschlüssel).generationIdstringGruppiert jedes Bild, das von einer Generierungsanfrage erzeugt wird. Mehrere Zeilen können die gleiche generationId teilen, wenn eine Anfrage mehr als ein Bild anforderte.workspaceIdstringID des besitzenden Arbeitsbereichs.createdByUserIdstringGateway-Benutzer-ID des Bilderstellungsurhebers.promptstringEingabeaufforderung, die das Bild erzeugte (leer bei Hochskalierungen).modelstringModell, das zur Erzeugung des Bildes verwendet wurde.parametersobjectGenerierungsparameter (Seitenverhältnis, Format usw.).inputImageIdsobjectIDs aller bereitgestellten Eingabebilder für Bild2Bild/Hochskalierung.imageWidthobjectBildbreite in Pixeln.imageHeightobjectBildhöhe in Pixeln.imageSizeobjectBilddateigröße in Bytes.createdAtstringErstellungs-Zeitstempel in UTC.updatedAtstringLetzter Update-Zeitstempel in UTC._linksobject
contentstringArbeitsbereich-bezogene URL, die das Bildbinary zurückgibt.Beispiel
- cURL
- Python
- Node.js
- Go
curl "https://app.neuroflash.com/api/image-service/v1/workspaces/{workspace_id}/images" \
-H "Authorization: Bearer YOUR_ACCESS_TOKEN"
import requests
response = requests.get(
f"https://app.neuroflash.com/api/image-service/v1/workspaces/{workspace_id}/images",
headers={"Authorization": f"Bearer {token}"},
).json()
const response = await fetch(
`https://app.neuroflash.com/api/image-service/v1/workspaces/${workspaceId}/images`,
{ headers: { Authorization: `Bearer ${token}` } }
).then((r) => r.json());
req, _ := http.NewRequest("GET", "https://app.neuroflash.com/api/image-service/v1/workspaces/"+workspaceID+"/images", nil)
req.Header.Set("Authorization", "Bearer "+token)
resp, _ := http.DefaultClient.Do(req)
defer resp.Body.Close()
Antwort:
{
"page": {
"size": 0,
"totalElements": 0,
"totalPages": 0,
"currentPage": 0
},
"data": [
{
"id": "string",
"generationId": "string",
"workspaceId": "string",
"createdByUserId": "string",
"prompt": "string",
"model": "string",
"parameters": {},
"inputImageIds": {},
"imageWidth": {},
"imageHeight": {},
"imageSize": {},
"createdAt": "2024-01-15T10:30:00Z",
"updatedAt": "2024-01-15T10:30:00Z",
"_links": {
"content": "string"
}
}
]
}
Metadaten eines einzelnen Bildes abrufen
GET
/v1/workspaces/{workspaceId}/images/{imageId}Pfadparameter
| Parameter | Typ | Erforderlich | Beschreibung |
|---|---|---|---|
workspaceId | string | Ja | |
imageId | string | Ja |
Antwort
FeldTypBeschreibung
idstringEindeutige Bild-ID (auch der GCS-Objektschlüssel).generationIdstringGruppiert jedes Bild, das von einer Generierungsanfrage erzeugt wird. Mehrere Zeilen können die gleiche generationId teilen, wenn eine Anfrage mehr als ein Bild anforderte.workspaceIdstringID des besitzenden Arbeitsbereichs.createdByUserIdstringGateway-Benutzer-ID des Bilderstellungsurhebers.promptstringEingabeaufforderung, die das Bild erzeugte (leer bei Hochskalierungen).modelstringModell, das zur Erzeugung des Bildes verwendet wurde.parametersobjectGenerierungsparameter (Seitenverhältnis, Format usw.).inputImageIdsobjectIDs aller bereitgestellten Eingabebilder für Bild2Bild/Hochskalierung.imageWidthobjectBildbreite in Pixeln.imageHeightobjectBildhöhe in Pixeln.imageSizeobjectBilddateigröße in Bytes.createdAtstringErstellungs-Zeitstempel in UTC.updatedAtstringLetzter Update-Zeitstempel in UTC._linksobject
contentstringArbeitsbereich-bezogene URL, die das Bildbinary zurückgibt.Beispiel
- cURL
- Python
- Node.js
- Go
curl "https://app.neuroflash.com/api/image-service/v1/workspaces/{workspace_id}/images/{image_id}" \
-H "Authorization: Bearer YOUR_ACCESS_TOKEN"
import requests
response = requests.get(
f"https://app.neuroflash.com/api/image-service/v1/workspaces/{workspace_id}/images/{image_id}",
headers={"Authorization": f"Bearer {token}"},
).json()
const response = await fetch(
`https://app.neuroflash.com/api/image-service/v1/workspaces/${workspaceId}/images/${imageId}`,
{ headers: { Authorization: `Bearer ${token}` } }
).then((r) => r.json());
req, _ := http.NewRequest("GET", "https://app.neuroflash.com/api/image-service/v1/workspaces/"+workspaceID+"/images/"+imageID+"", nil)
req.Header.Set("Authorization", "Bearer "+token)
resp, _ := http.DefaultClient.Do(req)
defer resp.Body.Close()
Antwort:
{
"id": "string",
"generationId": "string",
"workspaceId": "string",
"createdByUserId": "string",
"prompt": "string",
"model": "string",
"parameters": {},
"inputImageIds": {},
"imageWidth": {},
"imageHeight": {},
"imageSize": {},
"createdAt": "2024-01-15T10:30:00Z",
"updatedAt": "2024-01-15T10:30:00Z",
"_links": {
"content": "string"
}
}
Ein Bild löschen
DELETE
/v1/workspaces/{workspaceId}/images/{imageId}Nur der Besitzer des Bildes (createdByUserId) oder ein Benutzer mit der Rolle NF_ADMIN, NF_CUSTOMER_SUPPORT oder ADMIN_SERVICE kann ein Bild löschen.
Pfadparameter
| Parameter | Typ | Erforderlich | Beschreibung |
|---|---|---|---|
workspaceId | string | Ja | |
imageId | string | Ja |
Beispiel
- cURL
- Python
- Node.js
- Go
curl -X DELETE "https://app.neuroflash.com/api/image-service/v1/workspaces/{workspace_id}/images/{image_id}" \
-H "Authorization: Bearer YOUR_ACCESS_TOKEN"
import requests
requests.delete(
f"https://app.neuroflash.com/api/image-service/v1/workspaces/{workspace_id}/images/{image_id}",
headers={"Authorization": f"Bearer {token}"},
)
await fetch(
`https://app.neuroflash.com/api/image-service/v1/workspaces/${workspaceId}/images/${imageId}`,
{
method: "DELETE",
headers: { Authorization: `Bearer ${token}` },
}
);
req, _ := http.NewRequest("DELETE", "https://app.neuroflash.com/api/image-service/v1/workspaces/"+workspaceID+"/images/"+imageID+"", nil)
req.Header.Set("Authorization", "Bearer "+token)
resp, _ := http.DefaultClient.Do(req)
defer resp.Body.Close()