3 # dnsHome.de API for acme.sh
5 # This Script adds the necessary TXT record to a Subdomain
7 # Author dnsHome.de (https://github.com/dnsHome-de)
9 # Report Bugs to https://github.com/acmesh-official/acme.sh/issues/3819
11 # export DNSHOME_Subdomain=""
12 # export DNSHOME_SubdomainPassword=""
14 # Usage: add subdomain.ddnsdomain.tld "XKrxpRBosdIKFzxW_CT3KLZNf6q0HG9i01zxXp5CPBs"
15 # Used to add txt record
19 DNSHOME_Subdomain
="${DNSHOME_Subdomain:-$(_readdomainconf DNSHOME_Subdomain)}"
20 DNSHOME_SubdomainPassword
="${DNSHOME_SubdomainPassword:-$(_readdomainconf DNSHOME_SubdomainPassword)}"
22 if [ -z "$DNSHOME_Subdomain" ] ||
[ -z "$DNSHOME_SubdomainPassword" ]; then
24 DNSHOME_SubdomainPassword
=""
25 _err
"Please specify/export your dnsHome.de Subdomain and Password"
29 #save the credentials to the account conf file.
30 _savedomainconf DNSHOME_Subdomain
"$DNSHOME_Subdomain"
31 _savedomainconf DNSHOME_SubdomainPassword
"$DNSHOME_SubdomainPassword"
33 DNSHOME_Api
="https://$DNSHOME_Subdomain:$DNSHOME_SubdomainPassword@www.dnshome.de/dyndns.php"
35 _DNSHOME_rest POST
"acme=add&txt=$txtvalue"
36 if ! echo "$response" |
grep 'successfully' >/dev
/null
; then
46 # Used to remove the txt record after validation
50 DNSHOME_Subdomain
="${DNSHOME_Subdomain:-$(_readdomainconf DNSHOME_Subdomain)}"
51 DNSHOME_SubdomainPassword
="${DNSHOME_SubdomainPassword:-$(_readdomainconf DNSHOME_SubdomainPassword)}"
53 DNSHOME_Api
="https://$DNSHOME_Subdomain:$DNSHOME_SubdomainPassword@www.dnshome.de/dyndns.php"
55 if [ -z "$DNSHOME_Subdomain" ] ||
[ -z "$DNSHOME_SubdomainPassword" ]; then
57 DNSHOME_SubdomainPassword
=""
58 _err
"Please specify/export your dnsHome.de Subdomain and Password"
62 _DNSHOME_rest POST
"acme=rm&txt=$txtvalue"
63 if ! echo "$response" |
grep 'successfully' >/dev
/null
; then
72 #################### Private functions below ##################################
79 response
="$(_post "$data" "$DNSHOME_Api" "" "$method")"
81 if [ "$?" != "0" ]; then
85 _debug2 response
"$response"