# Alle Werkzeuge per curl

Jedes Werkzeug antwortet auch in der Kommandozeile. Mit `curl` bekommst du gut lesbaren Text, mit `?json` (oder dem Header `Accept: application/json`) JSON für Skripte.

## Übersicht

| Was | Befehl |
|---|---|
| Eigene IP | `curl ip.ngosu-corp.de` |
| IP mit Details | `curl ip.ngosu-corp.de/full` · `curl ip.ngosu-corp.de/json` |
| Nur IPv4 / IPv6 | `curl ip4.ngosu-corp.de` · `curl ip6.ngosu-corp.de` |
| HTTP-Header | `curl tools.ngosu-corp.de/headers` · `…/headers/json` |
| DNS | `curl tools.ngosu-corp.de/dns/example.de/MX` |
| Mail-Check | `curl tools.ngosu-corp.de/mail/example.de` |
| SSL/TLS | `curl tools.ngosu-corp.de/ssl/example.de` · `…/ssl/mail.example.de:25` |
| Blacklist | `curl tools.ngosu-corp.de/blacklist/1.2.3.4` |
| Ports der eigenen IP | `curl tools.ngosu-corp.de/ports/22,443` |
| Download-Test | `curl -o /dev/null https://speed.ngosu-corp.de/down?size=100M` |
| Webhook anlegen | `curl -X POST tools.ngosu-corp.de/hooks/new` |
| Status der Dienste | `curl tools.ngosu-corp.de/status/json` |

Für JSON hängst du `?json` an, z. B. `curl "tools.ngosu-corp.de/ssl/example.de?json"`. Anführungszeichen nicht vergessen, sonst versteht die Shell das `?` falsch.

## Beispiele für Skripte

**Wie viele Tage gilt das Zertifikat noch?** (braucht `jq`)

```bash
curl -s "tools.ngosu-corp.de/ssl/example.de?json" | jq '.chain[0].days_left'
```

**Öffentliche IP für dynamisches DNS:**

```bash
IP=$(curl -s ip4.ngosu-corp.de)
echo "Aktuelle IP: $IP"
```

**Steht die eigene IP auf einer Sperrliste?** (Zahl der Listen, 0 = sauber)

```bash
curl -s "tools.ngosu-corp.de/blacklist/$(curl -s ip4.ngosu-corp.de)?json" | jq '.listed'
```

Die Feldnamen siehst du am einfachsten, indem du das JSON einmal ganz ausgibst: `curl -s "…?json" | jq .`

## Grenzen

- DNS, Mail und SSL: höchstens 60 bzw. 20 Anfragen pro Minute je Absender. Für Dauerüberwachung ist das [Monitoring](https://tools.ngosu-corp.de/monitor) (Premium) gedacht.
- SSL- und Mail-Check prüfen nur öffentliche Ziele, interne Adressen (192.168.…, 10.…) lehnen sie ab.