26 lines
888 B
Bash
26 lines
888 B
Bash
#!/bin/bash
|
|
|
|
# --- KONFIGURATION ---
|
|
: "${TOKEN:="DEIN_DEFAULT_API_TOKEN"}"
|
|
DOMAIN="ma3000.de"
|
|
# ---------------------
|
|
|
|
# Abfrage der API
|
|
# Wir nutzen -s für Silent und -H für den Header
|
|
response=$(curl -s -H "Authorization: Token $TOKEN" \
|
|
"https://desec.io/api/v1/domains/$DOMAIN/rrsets/")
|
|
|
|
# Prüfen, ob die Antwort leer ist oder einen Fehler enthält
|
|
if [[ -z "$response" || "$response" == *"detail"* ]]; then
|
|
echo "Fehler: Konnte Daten nicht abrufen. Token korrekt?"
|
|
exit 1
|
|
fi
|
|
|
|
# Parsing mit jq:
|
|
# 1. Wir gehen durch jedes RRset (.[]).
|
|
# 2. Wir speichern Typ und Name in Variablen.
|
|
# 3. Wir gehen durch das 'records' Array des jeweiligen RRsets (.records[]).
|
|
# 4. Wir geben Typ, Name und den einzelnen Record formatiert aus.
|
|
|
|
echo "$response" | jq -r '.[] | {type: .type, name: .name, records: .records} | .type as $t | .name as $n | .records[] | "\($t)\t\($n)\t\(.)"'
|