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

# llms.txt generieren

> Dieser Endpunkt erzeugt eine llms.txt-Datei für eine angegebene URL.

## POST /generate

Dieser Endpunkt startet die Erstellung einer `llms.txt`-Datei. Je nach Tarif des Nutzers werden die Methoden „simple“ und „enhanced“ unterstützt.

<Note>
  Bei Enhanced wird KI für qualitativ bessere Titel und Beschreibungen eingesetzt. Es fallen das Doppelte an Credits wie bei Simple an.
</Note>

### Anfragetext

<ParamField body="url" type="string" required>
  URL der Website, für die die Datei erzeugt werden soll. Muss eine gültige http/https-URL sein.
</ParamField>

<ParamField body="options" type="object">
  Objekt mit Generierungsoptionen.

  <Expandable title="Eigenschaften von options">
    <ParamField body="maxUrls" type="number" default="50">
      Maximale Anzahl einzubeziehender URLs. Bereich: 1–1000.
    </ParamField>

    <ParamField body="showFullText" type="boolean" default="false">
      Ob der Volltext jeder Seite in die Ausgabe aufgenommen wird.
    </ParamField>

    <ParamField body="includeModificationDate" type="boolean" default="false">
      Ob letzte Änderungsdaten für URLs eingebunden werden.
    </ParamField>

    <ParamField body="generationMethod" type="string" default="enhanced">
      Kann `simple` oder `enhanced` sein. Simple nutzt Seitenmetadaten, Enhanced KI für bessere Titel/Beschreibungen.
    </ParamField>

    <ParamField body="cacheAge" type="number" default="3600000">
      Cache-Alter in Millisekunden. Standard ist 1 Stunde für schnelleres Scraping.
    </ParamField>
  </Expandable>
</ParamField>

### Antwort

<ResponseField name="jobId" type="string">
  Eindeutige Kennung des Generierungsjobs.
</ResponseField>

<ResponseField name="status" type="string">
  Jobstatus: `queued`, `processing`, `completed` oder `failed`.
</ResponseField>

<ResponseField name="progress" type="number">
  Fortschritt in Prozent (0–100).
</ResponseField>

<ResponseField name="message" type="string">
  Für Menschen lesbare Statusmeldung.
</ResponseField>

<ResponseField name="fileUrl" type="string">
  URL, unter der die erzeugte `llms.txt`-Datei abrufbar ist.
</ResponseField>

<ResponseField name="fullTextUrl" type="string">
  URL der Volltextvariante der llms.txt (wenn showFullText aktiviert war).
</ResponseField>

<ResponseField name="siteId" type="string">
  Kennung der für diese Generierung angelegten oder aktualisierten Website.
</ResponseField>

<ResponseField name="creditsUsed" type="number">
  Anzahl der für diese Generierung abgebuchten Credits.
</ResponseField>

<RequestExample>
  ```bash cURL theme={null}
  curl -X POST https://api.llmgenerator.com/api/v1/generate \
    -H "Authorization: Bearer YOUR_API_KEY" \
    -H "Content-Type: application/json" \
    -d '{
          "url": "https://www.example.com",
          "options": {
            "maxUrls": 25,
            "generationMethod": "enhanced",
            "showFullText": true
          }
        }'
  ```

  ```javascript Node.js theme={null}
  const response = await fetch('https://api.llmgenerator.com/api/v1/generate', {
    method: 'POST',
    headers: {
      'Authorization': 'Bearer YOUR_API_KEY',
      'Content-Type': 'application/json'
    },
    body: JSON.stringify({
      url: 'https://www.example.com',
      options: {
        maxUrls: 25,
        generationMethod: 'enhanced'
      }
    })
  });

  const data = await response.json();
  ```

  ```python Python theme={null}
  import requests

  response = requests.post(
      'https://api.llmgenerator.com/api/v1/generate',
      headers={
          'Authorization': 'Bearer YOUR_API_KEY',
          'Content-Type': 'application/json'
      },
      json={
          'url': 'https://www.example.com',
          'options': {
              'maxUrls': 25,
              'generationMethod': 'enhanced'
          }
      }
  )

  data = response.json()
  ```
</RequestExample>

<ResponseExample>
  ```json Success Response theme={null}
  {
    "jobId": "550e8400-e29b-41d4-a716-446655440000",
    "status": "completed",
    "progress": 100,
    "message": "File generated successfully",
    "fileUrl": "https://api.llmgenerator.com/api/v1/file/site_xxxxx",
    "fullTextUrl": "https://api.llmgenerator.com/api/v1/file/site_xxxxx?full=true",
    "siteId": "site_xxxxx",
    "creditsUsed": 50
  }
  ```

  ```json Insufficient Credits (402) theme={null}
  {
    "message": "Insufficient credits. Required: 50, Available: 10. Please purchase more credits to continue."
  }
  ```
</ResponseExample>
