Jobs-Endpunkt
Jede Modell-/App-Ausführung erstellt ein Job-Objekt.
Verwenden Sie die Jobs-Endpunkte, um:
- kürzliche Jobs aufzulisten
- einen einzelnen Job nach ID abzurufen
- stornierbare Jobs abzubrechen
Basispfade:
GET /api/v1/jobsGET /api/v1/jobs/:idPOST /api/v1/jobs/:id/cancel
Job-Lebenszyklus
Jobs verwenden folgende Status:
pendingprocessingcompletedfailedcancelled
flowchart LR
pending --> processing
processing --> completed
processing --> failed
pending --> cancelled
processing --> cancelled
Endgültige Status sind:
completedfailedcancelled
GET /api/v1/jobs
Listet kürzliche Jobs des authentifizierten Benutzers auf.
Abfrageparameter
limit(optional): 1-100, Standard20
Anfrage
curl -X GET "https://armox.ai/api/v1/jobs?limit=20" \
-H "Authorization: Bearer sk_live_your_key_here"
Antwort
Prompt Template
{ "object": "list", "data": [ { "id": "job_123", "run_type": "model", "model_id": "google/nano-banana", "app_id": null, "status": "completed", "input_data": { "input": { "prompt": "..." } }, "output_data": { "outputImage": "https://..." }, "error_message": null, "credits_charged": 70, "created_at": "2026-03-26T12:30:00.000Z", "completed_at": "2026-03-26T12:30:03.000Z" } ] }
GET /api/v1/jobs/:id
Gibt einen bestimmten Job zurück.
Anfrage
curl -X GET "https://armox.ai/api/v1/jobs/job_123" \
-H "Authorization: Bearer sk_live_your_key_here"
Antwort
{
"object": "job",
"id": "job_123",
"run_type": "model",
"model_id": "google/nano-banana",
"app_id": null,
"status": "completed",
"input_data": { "input": { "prompt": "..." } },
"output_data": { "outputImage": "https://..." },
"error_message": null,
"credits_charged": 70,
"created_at": "2026-03-26T12:30:00.000Z",
"completed_at": "2026-03-26T12:30:03.000Z",
"webhook_delivered": true
}
POST /api/v1/jobs/:id/cancel
Versucht, einen ausstehenden oder in Verarbeitung befindlichen Job abzubrechen.
Anfrage
curl -X POST "https://armox.ai/api/v1/jobs/job_123/cancel" \
-H "Authorization: Bearer sk_live_your_key_here"
Erfolgsantwort
{
"id": "job_123",
"object": "job",
"status": "cancelled",
"cancelled_at": "2026-03-26T12:35:00.000Z"
}
Wenn der Job nicht mehr storniert werden kann, gibt die API möglicherweise 409 zurück.
Polling-Muster
JavaScript
Prompt Template
async function waitForJob(jobId, apiKey) { while (true) { const response = await fetch(`https://armox.ai/api/v1/jobs/${jobId}`, { headers: { Authorization: `Bearer ${apiKey}` }, }); const job = await response.json(); if (["completed", "failed", "cancelled"].includes(job.status)) { return job; } await new Promise((resolve) => setTimeout(resolve, 2000)); } }
Python
Prompt Template
import time import requests def wait_for_job(job_id, api_key): while True: response = requests.get( f"https://armox.ai/api/v1/jobs/{job_id}", headers={"Authorization": f"Bearer {api_key}"} ) job = response.json() if job.get("status") in ["completed", "failed", "cancelled"]: return job time.sleep(2)
Credits und Fehlschläge
- Credits werden bei Annahme einer Ausführung belastet
- Fehlgeschlagene Jobs werden durch den Job-Executor-Ablauf erstattet
- Stornierte Jobs folgen der Stornierungs- und Credit-Logik der Plattform