Armox
    Armox Academy 📚
    API-ReferenzEinführung in die API-ReferenzJobs-Endpunkt

    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/jobs
    • GET /api/v1/jobs/:id
    • POST /api/v1/jobs/:id/cancel

    Job-Lebenszyklus

    Jobs verwenden folgende Status:

    • pending
    • processing
    • completed
    • failed
    • cancelled
    flowchart LR
      pending --> processing
      processing --> completed
      processing --> failed
      pending --> cancelled
      processing --> cancelled
    

    Endgültige Status sind:

    • completed
    • failed
    • cancelled

    GET /api/v1/jobs

    Listet kürzliche Jobs des authentifizierten Benutzers auf.

    Abfrageparameter

    • limit (optional): 1-100, Standard 20

    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

    Verwandte Seiten

    Bereit, deinen kreativen Workflow zu transformieren?

    Keine Kreditkarte erforderlich2000 kostenlose Credits