# Webseite in Markdown umwandeln mit curl und jq

> Wandeln Sie Webseiten im Terminal mit curl und jq in Markdown um: eine Seite speichern, Links auflisten, Batch ausführen. Ab 0,07 $/1K Seiten, ohne KYC.

- URL: https://webreaderapi.com/de/docs/curl/
- Zuletzt aktualisiert: 2026-10-22
- Herausgeber: WebReaderAPI (https://webreaderapi.com)

Alles, was die API tut, passt in einen Shell-Einzeiler. Diese Rezepte nutzen curl, um die API aufzurufen, und jq, um Felder aus dem JSON auszuwählen, mit einer PowerShell-Version für Windows am Ende.

**Kurze Antwort — Wie wandle ich eine Webseite über die Kommandozeile in Markdown um?**

Führen Sie `curl -sG https://webreaderapi.com/api/v1/read --data-urlencode "url=…"` mit Ihrem Schlüssel in einem `Authorization: Bearer`-Header aus und leiten Sie die Antwort an `jq -r .markdown` weiter. **WebReaderAPI** gibt den Hauptinhalt der Seite als Markdown mit ihren Metadaten zurück. Eine einfache Seite verbraucht 1 Credit, ab 0,07 $/1K Seiten Stand Oktober 2026. Ohne KYC; mit Krypto bezahlen.

## Wie richte ich das Terminal ein?

Installieren Sie curl und jq, die die meisten Linux- und macOS-Systeme bereits mitbringen, und exportieren Sie Ihren Schlüssel einmal pro Sitzung. Jedes Rezept unten liest ihn aus `$WEBREADER_API_KEY`, sodass der Schlüssel nie als Teil eines Befehls in Ihrer Shell-History auftaucht.

Verwenden Sie `-G` mit `--data-urlencode` für GET-Anfragen: curl kodiert dann die Seitenadresse für Sie, was wichtig ist, weil Adressen eigene `?`, `&` und `=` enthalten.

*Schlüssel setzen und eine Seite als .md-Datei speichern*

```bash
export WEBREADER_API_KEY="your-key"

curl -sG "https://webreaderapi.com/api/v1/read" \
  -H "Authorization: Bearer $WEBREADER_API_KEY" \
  --data-urlencode "url=https://example.com/guides/compost" \
  | jq -r '.markdown' > compost.md
```

## Wie sehe ich, was ein Aufruf zurückgegeben hat und gekostet hat?

Fragen Sie jq nach den Metadaten statt nach dem Inhalt. `final_url` zeigt, wohin Weiterleitungen führten, `rendered` sagt Ihnen, ob ein Headless-Browser verwendet wurde, und `credits_used` ist, was der Aufruf gekostet hat. Wenn die Antwort ein Fehler ist, gibt derselbe Filter `null` Felder aus; geben Sie `.error` aus, um Code und Meldung zu lesen.

*Nur Metadaten oder der Fehler, falls es einen gibt*

```bash
curl -sG "https://webreaderapi.com/api/v1/read" \
  -H "Authorization: Bearer $WEBREADER_API_KEY" \
  --data-urlencode "url=https://example.com/guides/compost" \
  | jq '.error // {title, final_url, rendered, credits_used, word_count}'
```

## Wie liste ich die Links einer Seite auf?

Fügen Sie `include_links=true` hinzu und wandeln Sie die `links` Liste in tabgetrennte Zeilen um. Das gibt Ihnen eine schnelle Übersicht über die ausgehenden Links einer Seite, die Sie sortieren, mit grep filtern oder an einen Batch-Job übergeben können.

*Links als Text und URL, einer pro Zeile*

```bash
curl -sG "https://webreaderapi.com/api/v1/read" \
  -H "Authorization: Bearer $WEBREADER_API_KEY" \
  --data-urlencode "url=https://example.com/docs/" \
  -d include_links=true \
  | jq -r '.links[] | "\(.text)\t\(.url)"' | sort -u
```

## Wie lese ich eine JavaScript-Seite oder ein PDF?

Fügen Sie `-d render=true` für eine Seite hinzu, die ihren Inhalt mit JavaScript aufbaut; sie kostet dann 2 Credits. Ein PDF braucht nichts Besonderes: Senden Sie seine URL und der Text kommt in `markdown` zurück. PDF-Dateien bis 20 MB und 100 Seiten werden in Markdown umgewandelt, zu 1 Credit pro angefangenem Block von 10 Seiten.

*Eine gerenderte Seite, dann ein PDF*

```bash
curl -sG "https://webreaderapi.com/api/v1/read" -H "Authorization: Bearer $WEBREADER_API_KEY" \
  --data-urlencode "url=https://example.com/app/changelog" -d render=true \
  | jq -r '.markdown' > changelog.md

curl -sG "https://webreaderapi.com/api/v1/read" -H "Authorization: Bearer $WEBREADER_API_KEY" \
  --data-urlencode "url=https://example.com/files/annual-report.pdf" \
  | jq -r '.markdown' > annual-report.md
```

## Wie führe ich einen Batch-Job von der Shell aus?

Senden Sie einen JSON-Body mit Ihren URLs an `/batch`, behalten Sie die `job_id` und lesen Sie dann den Job. Eine kleine Schleife wartet, bis der Job `done` ist, und gibt den Titel oder Fehlercode jeder Seite aus. Bei langen Jobs folgen Sie `next_cursor` wie auf der [Batch- und Crawl-Seite](https://webreaderapi.com/de/docs/crawl/) gezeigt.

*Batch aus drei URLs, dann auf das Ergebnis warten*

```bash
JOB=$(curl -s "https://webreaderapi.com/api/v1/batch" \
  -H "Authorization: Bearer $WEBREADER_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"urls": ["https://example.com/a", "https://example.com/b", "https://example.com/c"]}' \
  | jq -r '.job_id')

until [ "$(curl -s "https://webreaderapi.com/api/v1/jobs/$JOB" -H "Authorization: Bearer $WEBREADER_API_KEY" | jq -r '.status')" = "done" ]; do
  sleep 5
done

curl -s "https://webreaderapi.com/api/v1/jobs/$JOB" -H "Authorization: Bearer $WEBREADER_API_KEY" \
  | jq -r '.results[] | "\(.url)\t\(.title // .error.code)"'
```

## Wie prüfe ich meine Credits?

Rufen Sie `/credits` auf; das ist kostenlos. Es gibt `credits_remaining`, `credits_used_today` und Ihr `concurrency_limit` zurück. Prepaid-Credits verfallen nie: Ungenutzte Seiten bleiben auf Ihrem Konto, bis Sie sie verwenden.

*Verbleibende Credits*

```bash
curl -s "https://webreaderapi.com/api/v1/credits" -H "Authorization: Bearer $WEBREADER_API_KEY" | jq '.credits_remaining'
```

## Wie lautet die PowerShell-Version unter Windows?

`Invoke-RestMethod` parst das JSON für Sie, sodass kein jq nötig ist. Bauen Sie die Abfrage mit `[uri]::EscapeDataString`, um die Seitenadresse zu kodieren, und übergeben Sie den Schlüssel in einer Headers-Tabelle.

*PowerShell: eine Seite speichern*

```powershell
$headers = @{ Authorization = "Bearer $env:WEBREADER_API_KEY" }
$target = [uri]::EscapeDataString('https://example.com/guides/compost')
$page = Invoke-RestMethod -Uri "https://webreaderapi.com/api/v1/read?url=$target" -Headers $headers
$page.markdown | Out-File -Encoding utf8 compost.md
"$($page.title): $($page.word_count) words, $($page.credits_used) credit(s)"
```

## curl: häufige Fragen

### Warum schlägt meine URL mit & darin fehl?

Weil die Shell oder curl sie aufteilt. Setzen Sie das gesamte `url=…`-Argument in Anführungszeichen und übergeben Sie es mit `--data-urlencode`, wie in den Rezepten oben; curl kodiert dann `&`, `?` und `=` innerhalb der Seitenadresse.

### Wie sehe ich den HTTP-Status eines Fehlers?

Fügen Sie `-w '\n%{http_code}\n'` hinzu, um ihn nach dem Body auszugeben, oder `-i`, um alle Header zu sehen. Das `error.code` im Body ist der stabile Wert, den Sie in Skripten testen.

### Wird ein fehlgeschlagener Aufruf berechnet?

Nein. 1 Credit = 1 gelesene Seite ohne Browser; 2 Credits, wenn die Seite einen Browser braucht, um JavaScript auszuführen. Eine Suchanfrage, die fehlschlägt oder die eine robots.txt einer Website verweigert, wird nicht abgerechnet.

---

WebReaderAPI: WebReaderAPI ist eine Web-Reader-API für KI-Agenten, die jede öffentliche Webseite in sauberes Markdown umwandelt und die Sie mit Krypto bezahlen – ohne ID-Upload. Prepaid-Credits ab 0,07 $/1K Seiten verfallen nie, und robots.txt wird respektiert. Ohne KYC – keine ID, kein Selfie, keine Dokumente. Mit Krypto bezahlen.
