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

# Zeitplan erstellen

> Erstellt einen neuen Zeitplan, um API-Aufrufe zu festgelegten Zeiten auszuführen. Unterstützt sowohl einmalige Ausführungen als auch wiederkehrende Zeitpläne mit Cron-Ausdrücken. Du kannst auch natürliche Sprache verwenden, um Cron-Ausdrücke automatisch zu generieren.



## OpenAPI

````yaml de/openapi/schedules.json POST /v1/schedules
openapi: 3.0.3
info:
  title: Zeitpläne API
  version: 1.0.0
servers:
  - url: https://api.olostep.com
security: []
paths:
  /v1/schedules:
    post:
      summary: Zeitplan erstellen
      description: >-
        Erstellt einen neuen Zeitplan, um API-Aufrufe zu festgelegten Zeiten
        auszuführen. Unterstützt sowohl einmalige Ausführungen als auch
        wiederkehrende Zeitpläne mit Cron-Ausdrücken. Du kannst auch natürliche
        Sprache verwenden, um Cron-Ausdrücke automatisch zu generieren. Für
        POST-Anfragen kannst du die Kurzform der Olostep-Endpunkte verwenden
        (z.B. 'v1/scrapes'), die automatisch vorangestellt werden, oder eine
        vollständige URL angeben. Die Nutzlast kann jede JSON-Struktur
        enthalten, die du senden möchtest.
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                method:
                  type: string
                  enum:
                    - GET
                    - POST
                  description: >-
                    HTTP-Methode für den geplanten API-Aufruf. Muss entweder GET
                    oder POST sein.
                endpoint:
                  type: string
                  description: >-
                    Die Endpunkt-URL, die aufgerufen wird, wenn der Zeitplan
                    ausgeführt wird. Für POST-Anfragen mit Olostep-Endpunkten
                    kannst du die Kurzform verwenden (z.B. 'v1/scrapes',
                    'v1/batches', 'v1/crawls', 'v1/maps', 'v1/answers'), die
                    automatisch mit 'https://api.olostep.com/' vorangestellt
                    wird. Für andere Endpunkte gib die vollständige URL an.
                payload:
                  type: object
                  description: >-
                    Die Nutzlast, die mit dem API-Aufruf gesendet wird. Kann
                    jede benötigte JSON-Struktur enthalten. Für GET-Anfragen ist
                    dies typischerweise leer. Für POST-Anfragen sollte dies die
                    Daten enthalten, die du an den Endpunkt senden möchtest.
                  default: {}
                cron_expression:
                  type: string
                  description: >-
                    Cron-Ausdruck im 6-Felder-Format (Minute Stunde Tag Monat
                    Wochentag Jahr) für wiederkehrende Zeitpläne. Erforderlich
                    für wiederkehrende Zeitpläne. Schließt sich gegenseitig mit
                    execute_at und text aus.
                execute_at:
                  type: string
                  format: date-time
                  description: >-
                    ISO 8601-Datetime-String für die einmalige Ausführung des
                    Zeitplans. Muss ein gültiges zukünftiges Datum sein.
                    Erforderlich für einmalige Zeitpläne. Schließt sich
                    gegenseitig mit cron_expression aus.
                expression_timezone:
                  type: string
                  description: >-
                    IANA-Zeitzonenkennung (z.B. 'UTC', 'America/New_York',
                    'Europe/London') für den Zeitplan. Erforderlich für
                    wiederkehrende Zeitpläne, optional für einmalige Zeitpläne.
                    Bei Verwendung von natürlicher Sprache wird standardmäßig
                    'UTC' verwendet.
                text:
                  type: string
                  description: >-
                    Natürlicher Sprachtext, um automatisch einen Cron-Ausdruck
                    zu generieren. Das System wandelt deinen Text in einen
                    gültigen Cron-Ausdruck um. Beispiele: 'alle 3 Minuten',
                    'jeden Tag um 10 Uhr', 'jeden Montag um 9 Uhr'. Schließt
                    sich gegenseitig mit cron_expression und execute_at aus. Bei
                    Verwendung wird expression_timezone standardmäßig auf 'UTC'
                    gesetzt.
              required:
                - method
                - endpoint
      responses:
        '200':
          description: Zeitplan erfolgreich erstellt.
          content:
            application/json:
              schema:
                type: object
                properties:
                  id:
                    type: string
                    description: Eindeutige Zeitplankennung
                  type:
                    type: string
                    enum:
                      - recurring
                      - onetime
                    description: >-
                      Art des Zeitplans: 'recurring' für cron-basierte
                      Zeitpläne, 'onetime' für einmalige Ausführungszeitpläne
                  method:
                    type: string
                    enum:
                      - GET
                      - POST
                    description: HTTP-Methode für den geplanten Aufruf
                  endpoint:
                    type: string
                    description: Die Endpunkt-URL, die aufgerufen wird
                  cron_expression:
                    type: string
                    description: >-
                      Cron-Ausdruck (nur bei wiederkehrenden Zeitplänen
                      vorhanden)
                  execute_at:
                    type: string
                    format: date-time
                    description: >-
                      Ausführungsdatum und -uhrzeit (nur bei einmaligen
                      Zeitplänen vorhanden)
                  expression_timezone:
                    type: string
                    description: Zeitzone für den Zeitplan
                  created:
                    type: string
                    format: date-time
                    description: ISO 8601-Datetime, wann der Zeitplan erstellt wurde
        '400':
          description: >-
            Ungültige Anfrage aufgrund falscher oder fehlender Parameter.
            Häufige Fehler: ungültige Methode, fehlender Endpunkt, ungültiger
            cron_expression, ungültiges execute_at-Datum, ungültige Zeitzone
            oder ungültiges schedule_id-Format.
        '401':
          description: >-
            Ungültiger API-Schlüssel. Überprüfe ihn noch einmal oder kontaktiere
            info@olostep.com, wenn du Probleme hast.
        '500':
          description: Interner Serverfehler beim Erstellen des Zeitplans.
      security:
        - Authorization: []
components:
  securitySchemes:
    Authorization:
      type: http
      scheme: bearer
      description: >-
        Bearer-Authentifizierungsheader in der Form Bearer <token>, wobei
        <token> dein Authentifizierungstoken ist.

````