Kopieren Sie folgenden Text als eine .yaml Datei in Ihrem Projekt. Definitionen wurden in Englisch gemacht da dies empfohlener Praxis in der Webentwicklung entspricht. 

```yaml
openapi: 3.0.0
info:
  title: Task API
  version: 1.0.0
servers:
  - url: http://localhost:8000
paths:
  /tasks:
    get:
      summary: Get all tasks
      responses:
        '200':
          description: OK
    post:
      summary: Create a new task
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                text:
                  type: string
                  description: The text of the task
                checked:
                  type: boolean
                  description: Whether the task is checked or not
      responses:
        '201':
          description: Created
    put:
      summary: Update a task
      parameters:
        - in: path
          name: id
          required: true
          schema:
            type: integer
            minimum: 1
          description: The ID of the task to update
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                text:
                  type: string
                  description: The text of the task (optional)
                checked:
                  type: boolean
                  description: Whether the task is checked or not (optional)
      responses:
        '200':
          description: OK
    delete:
      summary: Delete a task
      parameters:
        - in: path
          name: id
          required: true
          schema:
            type: integer
            minimum: 1
          description: The ID of the task to delete
      responses:
        '204':
          description: No Content

components:
  schemas:
    Task:
      type: object
      properties:
        id:
          type: integer
          format: int64
        text:
          type: string
        checked:
          type: boolean

```

Es wurde PUT verwendet, um Tasks zu bearbeiten. Hier kann auch PATCH verwendet werden. Eine PUT-Anforderung wird als “idempotent” bezeichnet - unabhängig davon, wie oft Sie eine PUT-Antwort senden, sollten Sie das gleiche Ergebnis erhalten. Ein PATCH ist nicht idempotent. Um Ihren Code zu vereinfachen und das Prinzip idempotent nicht zu verletzten, könnten Sie eine PATCH Definition hinzufügen, die nur erlaubt, den Status des Tasks zu aktualisieren.
spam fails_task lang_mismatch pii not_appropriate hate_speech sexual_content quality toxicity humor helpfulness creativity violence