scripts/util/gandi_dyndns
Steve B e698f046c8 .
2025-12-05 14:53:37 -05:00

25 lines
759 B
Shell

#!/bin/bash
# Gandi LiveDNS API KEY
API_KEY=$GANDI_DDNS_API_KEY
# Domain hosted with Gandi
DOMAIN=$GANDI_DDNS_DOMAIN
# Subdomain to update DNS
SUBDOMAIN=$GANDI_DDNS_SUBDOMAIN
# Get external IP address
EXT_IP=$(curl -s ifconfig.me)
#Get the current Zone for the provided domain
CURRENT_ZONE_HREF=$(curl -s -H "X-Api-Key: $API_KEY" https://dns.api.gandi.net/api/v5/domains/$DOMAIN | jq -r '.zone_records_href')
# Update the A Record of the subdomain using PUT
curl -D- -X PUT -H "Content-Type: application/json" \
-H "X-Api-Key: $API_KEY" \
-d "{\"rrset_name\": \"$SUBDOMAIN\",
\"rrset_type\": \"A\",
\"rrset_ttl\": 1200,
\"rrset_values\": [\"$EXT_IP\"]}" \
$CURRENT_ZONE_HREF/$SUBDOMAIN/A