> ## Documentation Index
> Fetch the complete documentation index at: https://docs.langdock.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Scheduled Tasks API Übersicht

> Liste, erstelle, aktualisiere, pausiere und starte Scheduled Tasks, die einem Workspace-API-Key gehören

Mit der Scheduled Tasks API verwaltest du Aufgaben, die einem Workspace-API-Key gehören. Du listest sie, legst einen Zeitplan an, änderst Prompt oder Uhrzeit, pausierst und setzt sie fort oder stellst einen Lauf in die Queue.

## Basis-URL

```
https://api.langdock.com
```

<Warning>
  **Dedicated Deployments**

  Ersetze `api.langdock.com` durch `<your-deployment-url>/api/public` in allen Anfragen.
</Warning>

## API-Key-Scopes

Jeder Endpoint nutzt denselben Scope.

| Scope            | Label in den Einstellungen | Endpoints                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  |
| ---------------- | -------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `AUTOMATION_API` | **Scheduled Tasks API**    | [Auflisten](/de/developer/scheduled-tasks-api/list-scheduled-tasks), [Erstellen](/de/developer/scheduled-tasks-api/create-scheduled-task), [Abrufen](/de/developer/scheduled-tasks-api/get-scheduled-task), [Aktualisieren](/de/developer/scheduled-tasks-api/update-scheduled-task), [Löschen](/de/developer/scheduled-tasks-api/delete-scheduled-task), [Pausieren](/de/developer/scheduled-tasks-api/pause-scheduled-task), [Fortsetzen](/de/developer/scheduled-tasks-api/resume-scheduled-task) und [Ausführen](/de/developer/scheduled-tasks-api/run-scheduled-task) |

Lege den Key unter [Einstellungen > Workspace > Produkte > API](/de/admin/workspace/workspace#api) an. Persönliche API-Keys können diese API nicht aufrufen, auch wenn der Scope am Key steht.

Der Key muss zu einem Service-Account gehören. Scheduled Tasks müssen im Workspace aktiv sein, und dieser Service-Account braucht Zugriff. Allgemeiner Zugriff schließt den Account ein. Mitgliederzugriff gilt nur, wenn der Account oder eine seiner Gruppen enthalten ist.

Jede Aufgabe gehört dem Service-Account, der sie erstellt hat. Der Key sieht und ändert nur seine eigenen Aufgaben. Pro Besitzer sind 10 Aufgaben im Workspace möglich. Die elfte Erstellung liefert `400` mit der Message `AUTOMATION_LIMIT_REACHED`.

Hat dieser Service-Account keinen gültigen Key mit `AUTOMATION_API` mehr, werden aktive Aufgaben pausiert, deren Frequenz nicht `MANUAL` ist. Ein verbleibender Key, auch einer aus einer Rotation, lässt diese Aufgaben weiterlaufen. `MANUAL` Aufgaben haben keine Uhrzeit, deshalb ändert diese Pause sie nicht.

## Verfügbare Endpoints

| Methode  | Endpoint                                | Beschreibung                                                                            |
| -------- | --------------------------------------- | --------------------------------------------------------------------------------------- |
| `GET`    | `/automations/v1`                       | [Scheduled Tasks auflisten](/de/developer/scheduled-tasks-api/list-scheduled-tasks)     |
| `POST`   | `/automations/v1`                       | [Scheduled Task erstellen](/de/developer/scheduled-tasks-api/create-scheduled-task)     |
| `GET`    | `/automations/v1/{automationId}`        | [Scheduled Task abrufen](/de/developer/scheduled-tasks-api/get-scheduled-task)          |
| `PATCH`  | `/automations/v1/{automationId}`        | [Scheduled Task aktualisieren](/de/developer/scheduled-tasks-api/update-scheduled-task) |
| `DELETE` | `/automations/v1/{automationId}`        | [Scheduled Task löschen](/de/developer/scheduled-tasks-api/delete-scheduled-task)       |
| `POST`   | `/automations/v1/{automationId}/pause`  | [Scheduled Task pausieren](/de/developer/scheduled-tasks-api/pause-scheduled-task)      |
| `POST`   | `/automations/v1/{automationId}/resume` | [Scheduled Task fortsetzen](/de/developer/scheduled-tasks-api/resume-scheduled-task)    |
| `POST`   | `/automations/v1/{automationId}/run`    | [Scheduled Task ausführen](/de/developer/scheduled-tasks-api/run-scheduled-task)        |

## Scheduled-Task-Objekt

Auflisten und Abrufen enthalten `runCount`. Erstellen, Aktualisieren, Pausieren und Fortsetzen liefern dasselbe Objekt ohne `runCount`.

```typescript theme={null}
{
  id: string; // Automation-UUID
  createdAt: string; // ISO 8601
  name: string;
  prompt: string;
  modelId: string | null;
  modelMode: "UNSET" | "EXPLICIT" | "AUTO";
  assistantId: string | null; // primärer Agent
  taggedAssistantId: string | null; // zusätzliche @Agent-Erwähnung
  frequency:
    | "MANUAL"
    | "DAILY"
    | "WEEKDAYS"
    | "WEEKLY"
    | "MONTHLY"
    | "SELECTED_WEEKDAYS";
  timeOfDay: string | null; // HH:mm, 24 Stunden
  dayOfWeek: number | null; // 0 ist Sonntag, 6 ist Samstag
  dayOfMonth: number | null; // 1 bis 31
  daysOfWeek: number[]; // 0 ist Sonntag, 6 ist Samstag
  timezone: string | null; // IANA-Name, oder null bei MANUAL
  active: boolean;
  lastRunAt: string | null;
  runCount: number; // nur Auflisten und Abrufen
  attachments: Array<{
    id: string;
    name: string;
    mimeType: string | null;
    type: string | null;
  }>;
  taggedIntegrationIds: string[];
  taggedKnowledgeFolderIds: string[];
  taggedWorkflowIds: string[];
  taggedSkillSlugs: string[];
}
```

Ein Feld `updatedAt` gibt es nicht.

## Zeitplan

| Frequenz            | Pflichtfelder für die Uhrzeit | Gespeichertes Ergebnis                                                                                                                  |
| ------------------- | ----------------------------- | --------------------------------------------------------------------------------------------------------------------------------------- |
| `MANUAL`            | Keine                         | Uhrzeitfelder und `timezone` werden geleert. Starte die Aufgabe über [Ausführen](/de/developer/scheduled-tasks-api/run-scheduled-task). |
| `DAILY`             | `timeOfDay`                   | Die anderen Tagesfelder werden geleert. Eine leere `timezone` wird als `UTC` gespeichert.                                               |
| `WEEKDAYS`          | `timeOfDay`                   | Läuft Montag bis Freitag. Die anderen Tagesfelder werden geleert.                                                                       |
| `WEEKLY`            | `timeOfDay`, `dayOfWeek`      | `dayOfWeek` ist 0 (Sonntag) bis 6 (Samstag).                                                                                            |
| `MONTHLY`           | `timeOfDay`, `dayOfMonth`     | `dayOfMonth` ist 1 bis 31. Ein Monat ohne diesen Tag läuft an seinem letzten Tag.                                                       |
| `SELECTED_WEEKDAYS` | `timeOfDay`, `daysOfWeek`     | Mindestens ein Tag, jeder von 0 bis 6. Doppelte Tage werden einmal gespeichert, aufsteigend sortiert.                                   |

`timeOfDay` nutzt `HH:mm` im 24-Stunden-Format. Eine fehlende oder ungültige Uhrzeit bei einer geplanten Frequenz liefert `400`.

## Kontext an der Aufgabe

`assistantId` ist der primäre Agent. Er muss für den Key verfügbar sein, sonst liefern Erstellen und Aktualisieren `403` mit `AUTOMATION_TAG_ACCESS_DENIED:assistant:{id}`.

`modelMode` `EXPLICIT` braucht `modelId` in derselben Anfrage. Das Modell muss für diesen Service-Account auswählbar sein. Sonst ist die Antwort `403` mit `AUTOMATION_TAG_ACCESS_DENIED:model:missing` oder `AUTOMATION_TAG_ACCESS_DENIED:model:{id}`. `AUTO` und `UNSET` speichern `modelId` als `null`. Lässt du `modelMode` weg und sendest `modelId`, wird die Aufgabe als `EXPLICIT` gespeichert. Lässt du beides weg, wird sie als `UNSET` gespeichert.

Getaggte Integrationen, Ordner, Workflows, Skills und eine `taggedAssistantId`, die der Key nicht nutzen kann, werden beim Speichern verworfen. Die Anfrage schlägt dadurch nicht fehl. `attachmentIds` müssen schon dem Service-Account dieses Keys in diesem Workspace gehören. Ein Anhang, der ihm nicht gehört, liefert `403` mit `AUTOMATION_TAG_ACCESS_DENIED:attachment:unknown`.

Jedes Tag-Array nimmt höchstens 20 Werte. Jeder Skill-Slug hat höchstens 100 Zeichen. `attachmentIds` nimmt höchstens 20 IDs.

## Rate Limits

Die Scheduled Tasks API folgt den üblichen API Rate Limits. Überschreitest du das Limit, bekommst du `429`. Warte und versuche es mit exponentiellem Backoff erneut.

<Info>
  Langdock blockiert Anfragen aus Browser-Origins absichtlich, um deinen API-Key zu schützen und deine Anwendungen sicher zu halten. Mehr dazu findest du im Guide zu [API Key Best Practices](/de/admin/ai-adoption-and-rollout/best-practices/api-key-best-practices).
</Info>
