Die Suche lädt erst bei Nutzung. Durchsuche unten alle Kategorien.

Hintergrundoperationen

Jobs auflisten

Liste aktuelle Hintergrundjobs des angemeldeten Nutzers mit Status und Fortschritt auf.

POST /jobs-api/list

Vertrag geprüft: · sha256:563d2d581da0ad29

Überblick

Liste aktuelle Hintergrundjobs des angemeldeten Nutzers mit Status und Fortschritt auf.

Eine erfolgreiche HTTP-Antwort kann Annahme statt Abschluss bedeuten. Speichere bei Hintergrundarbeit die ID und prüfe dieselbe Operation bis zum Abschluss. Geplante oder angenommene Beiträge gelten erst nach Plattformbestätigung als veröffentlicht; ein Client-Timeout klärt das Ergebnis nicht.

Authentifizierung und Berechtigungen

Akzeptierte Zugangsdatenklassen
user_session, delegated_oauth, personal_access_token
Delegierte Funktion
agent:operate
Minimale Workspace-Rolle
Dieser Vertrag schreibt keine minimale Workspace-Rolle vor; Eigentums- und Berechtigungsprüfungen gelten weiterhin.
Zugriffsumfang
Ressourcen, auf die dieser Nutzer zugreifen darf
Zustimmung für alle Workspaces erforderlich
Nein
Ändert Zustand
Nein
Nach Abschluss der Operation
synchronous_http_response

Ein Token nutzt nur Eigentümerrechte. Jede Anfrage prüft Workspace-Mitgliedschaft, Ressourceneigentum, gewählte Workspaces und Funktionen. core und full ändern sichtbare Tools; sie erteilen keinen Zugriff.

Anfragefelder

Erforderlich bedeutet innerhalb des übergeordneten Objekts und gewählten Zweigs erforderlich. Ein erforderliches Kind macht kein optionales Elternobjekt erforderlich. Regeln und Feldnamen unten stammen aus dem Vertrag.

Anfragefelder
Feld / VarianteTyp / erforderlichEinschränkungen
$objectIm Elternobjekt erforderlich
  • additionalProperties: false
limitintegerOptional / Element

Seitengröße, 1 bis 100. limit oder cursor schalten diese Route auf Cursor-Paginierung und ergänzen next_cursor in der Antwort.

  • minimum: 1
  • maximum: 100
cursorstringOptional / Element

Opaker Cursor: der unveränderte next_cursor der vorherigen Seite. Auf der ersten Seite weglassen. Bei jeder Seite müssen dieselben Filter mitgesendet werden.

  • minLength: 1
  • maxLength: 512
Vollständiges JSON Schema
{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "type": "object",
  "properties": {
    "limit": {
      "type": "integer",
      "minimum": 1,
      "maximum": 100,
      "description": "Page size, 1 to 100. Sending limit or cursor switches this route to cursor paging and adds next_cursor to the answer."
    },
    "cursor": {
      "type": "string",
      "minLength": 1,
      "maxLength": 512,
      "description": "Opaque cursor: the next_cursor of the previous page, unchanged. Omit it for the first page. The same filters must be sent with every page."
    }
  },
  "additionalProperties": false
}

Antwort und Abschluss

HTTP-Erfolgsstatus: 200. Wenn die Operation abgeschlossen ist: synchronous_http_response.

Eine erfolgreiche HTTP-Antwort kann Annahme statt Abschluss bedeuten. Speichere bei Hintergrundarbeit die ID und prüfe dieselbe Operation bis zum Abschluss. Geplante oder angenommene Beiträge gelten erst nach Plattformbestätigung als veröffentlicht; ein Client-Timeout klärt das Ergebnis nicht.

Erforderlich bedeutet innerhalb des übergeordneten Objekts und gewählten Zweigs erforderlich. Ein erforderliches Kind macht kein optionales Elternobjekt erforderlich. Regeln und Feldnamen unten stammen aus dem Vertrag.

Antwort und Abschluss
Feld / VarianteTyp / erforderlichEinschränkungen
$objectIm Elternobjekt erforderlich—
jobsarrayIm Elternobjekt erforderlich—
jobs[]objectOptional / Element—
jobs[].idstringIm Elternobjekt erforderlich
  • format: "uuid"
  • pattern: "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"
jobs[].user_idstringIm Elternobjekt erforderlich
  • format: "uuid"
  • pattern: "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"
jobs[].kindstringIm Elternobjekt erforderlich—
jobs[].statusstringIm Elternobjekt erforderlich—
jobs[].payloadstring | number | boolean | null | array | objectIm Elternobjekt erforderlich—
jobs[].payloadanyOf 1stringIm Elternobjekt erforderlich—
jobs[].payloadanyOf 2numberIm Elternobjekt erforderlich—
jobs[].payloadanyOf 3booleanIm Elternobjekt erforderlich—
jobs[].payloadanyOf 4nullIm Elternobjekt erforderlich—
jobs[].payloadanyOf 5arrayIm Elternobjekt erforderlich—
jobs[].payload[]anyOf 5referenceOptional / Element
  • #/$defs/__schema0
jobs[].payloadanyOf 6objectIm Elternobjekt erforderlich
  • additionalProperties: {"$ref":"#/$defs/__schema0"}
jobs[].payload.*anyOf 6referenceOptional / Element
  • #/$defs/__schema0
jobs[].scheduled_forstring | nullIm Elternobjekt erforderlich—
jobs[].scheduled_foranyOf 1stringIm Elternobjekt erforderlich—
jobs[].scheduled_foranyOf 2nullIm Elternobjekt erforderlich—
jobs[].schedule_timezonestring | nullIm Elternobjekt erforderlich—
jobs[].schedule_timezoneanyOf 1stringIm Elternobjekt erforderlich—
jobs[].schedule_timezoneanyOf 2nullIm Elternobjekt erforderlich—
jobs[].progressinteger | nullIm Elternobjekt erforderlich—
jobs[].progressanyOf 1integerIm Elternobjekt erforderlich
  • minimum: 0
  • maximum: 100
jobs[].progressanyOf 2nullIm Elternobjekt erforderlich—
jobs[].progress_messagestring | nullIm Elternobjekt erforderlich—
jobs[].progress_messageanyOf 1stringIm Elternobjekt erforderlich—
jobs[].progress_messageanyOf 2nullIm Elternobjekt erforderlich—
jobs[].created_atstringIm Elternobjekt erforderlich—
jobs[].updated_atstringIm Elternobjekt erforderlich—
next_cursorstring | nullOptional / Element

Nur vorhanden, wenn limit oder cursor angefordert wurde. Null auf der letzten Seite.

—
next_cursoranyOf 1stringOptional / Element—
next_cursoranyOf 2nullOptional / Element—
Vollständiges JSON Schema
{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "type": "object",
  "properties": {
    "jobs": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "format": "uuid",
            "pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"
          },
          "user_id": {
            "type": "string",
            "format": "uuid",
            "pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"
          },
          "kind": {
            "type": "string"
          },
          "status": {
            "type": "string"
          },
          "payload": {
            "$ref": "#/$defs/__schema0"
          },
          "scheduled_for": {
            "anyOf": [
              {
                "type": "string"
              },
              {
                "type": "null"
              }
            ]
          },
          "schedule_timezone": {
            "anyOf": [
              {
                "type": "string"
              },
              {
                "type": "null"
              }
            ]
          },
          "progress": {
            "anyOf": [
              {
                "type": "integer",
                "minimum": 0,
                "maximum": 100
              },
              {
                "type": "null"
              }
            ]
          },
          "progress_message": {
            "anyOf": [
              {
                "type": "string"
              },
              {
                "type": "null"
              }
            ]
          },
          "created_at": {
            "type": "string"
          },
          "updated_at": {
            "type": "string"
          }
        },
        "required": [
          "id",
          "user_id",
          "kind",
          "status",
          "payload",
          "scheduled_for",
          "schedule_timezone",
          "progress",
          "progress_message",
          "created_at",
          "updated_at"
        ]
      }
    },
    "next_cursor": {
      "description": "Present only when the request sent limit or cursor. Null on the last page.",
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ]
    }
  },
  "required": [
    "jobs"
  ],
  "$defs": {
    "__schema0": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "number"
        },
        {
          "type": "boolean"
        },
        {
          "type": "null"
        },
        {
          "type": "array",
          "items": {
            "$ref": "#/$defs/__schema0"
          }
        },
        {
          "type": "object",
          "propertyNames": {
            "type": "string"
          },
          "additionalProperties": {
            "$ref": "#/$defs/__schema0"
          }
        }
      ]
    }
  }
}

Fehler und sichere Wiederholungen

Prüfe HTTP-Status und Antwortinhalt. Ein 400-Validierungsfehler kann einen ZodError enthalten; Handler-Fehler verwenden die Felder error, message und code. Bewahre request_id oder x-request-id zur Diagnose ohne Zugangsdaten auf. Behebe 401/403-Zugriffsfehler vor einem erneuten Versuch und beachte Retry-After bei 429. Ist ein Schreibvorgang ungewiss oder liefert 5xx, lies zuerst das bestehende Ergebnis. Verwende einen Idempotenzschlüssel nur wieder, wo dies unterstützt wird; Wiederholungen unterscheiden sich je nach Operation und garantieren keine genau einmalige Zustellung.

Anleitung zur Fehlerbehebung

Beispiele

Diese Beispiele nutzen anhand der Schemas geprüfte fiktive Werte. Ersetze IDs durch autorisierte IDs, Medien durch bereite Assets und Daten durch bestätigte Veröffentlichungszeiten. Prüfe Kontoeignung vor Schreibvorgängen. Diese Seite sendet keine API-Anfragen.

Setze SOSOAPI_ACCESS_TOKEN auf deinem Server auf akzeptierte Zugangsdaten dieser Operation und halte es aus Browsercode heraus. Für Agenten nutze sosoapi auth login zur Browseranmeldung und lass die CLI Zugangsdaten erneuern.

request.json

{}

cURL

curl --request POST \
  "https://gqeshlawtcexsapabaui.supabase.co/functions/v1/jobs-api/list" \
  -H "Authorization: Bearer $SOSOAPI_ACCESS_TOKEN" \
  -H "Content-Type: application/json" \
  --data-binary @request.json

JavaScript

// Server-side JavaScript. Do not print tokens or credential-bearing responses.
const token = process.env.SOSOAPI_ACCESS_TOKEN;
if (!token) throw new Error("Set an accepted credential for this operation");
const response = await fetch("https://gqeshlawtcexsapabaui.supabase.co/functions/v1/jobs-api/list", {
  method: "POST",
  headers: { "Content-Type": "application/json", Authorization: "Bearer " + token },
  body: JSON.stringify({})
});
const result = await response.json();
// Check response.ok, the operation-specific body and completion state before continuing.

CLI

npx sosoapi api post /jobs-api/list < request.json

Synthetisches Antwortbeispiel

{
  "jobs": []
}

MCP: sosoapi_list_jobs