19 lines
507 B
Bash
Executable File
19 lines
507 B
Bash
Executable File
#!/usr/bin/env bash
|
|
|
|
set -euo pipefail
|
|
|
|
rm -r out 2>/dev/null || true; mkdir -p out
|
|
|
|
CLOUDFLARE_API="https://api.cloudflare.com/client/v4"
|
|
HEADERS=(
|
|
-H "Authorization: Bearer ${CLOUDFLARE_API_TOKEN}"
|
|
)
|
|
|
|
curl -s "${CLOUDFLARE_API}/zones" "${HEADERS[@]}" | \
|
|
jq -r '.result[] | "\(.id) \(.name)"' | while read zone_id zone_name; do
|
|
|
|
echo "Fetching DNS records for: ${zone_name}"
|
|
curl -s "${CLOUDFLARE_API}/zones/${zone_id}/dns_records/export" "${HEADERS[@]}" \
|
|
> "out/${zone_name}.txt"
|
|
done
|