Usage Instructions

Update domain

Without specifying IP address:

curl "https://api.ddns.fm/update?key=[YOUR_KEY]&domain=[YOUR_DOMAIN]"

With a specified IP address:

curl "https://api.ddns.fm/update?key=[YOUR_KEY]&domain=[YOUR_DOMAIN]&myip=1.2.3.4"

Get current IPv4 from 4.ip.fm and update domain:

curl "https://api.ddns.fm/update?key=[YOUR_KEY]&domain=[YOUR_DOMAIN]&myip=$(curl -s 4.ip.fm/myip)"

Get current IPv6 from 6.ip.fm and update domain:

curl "https://api.ddns.fm/update?key=[YOUR_KEY]&domain=[YOUR_DOMAIN]&myip=$(curl -s 6.ip.fm/myip)"

TXT Record

Add a TXT record:

curl "https://api.ddns.fm/update?key=[YOUR_KEY]&domain=[YOUR_DOMAIN]&txt=sometext"

To delete a TXT record, use 'txt=' in your request.

curl "https://api.ddns.fm/update?key=[YOUR_KEY]&domain=[YOUR_DOMAIN]&txt="

TXT records are shared across all subdomains using a wildcard (*) prefix. This means the TXT record will apply to your main domain and all its subdomains.

For example, setting a TXT record for 'example.ddns.fm' will apply to:

  • example.ddns.fm
  • subdomain.example.ddns.fm
  • another.subdomain.example.ddns.fm
  • ... and so on

This is particularly useful for domain verification processes that check TXT records on the main domain and its subdomains.

Response mode

Use 'mode=verbose' to get detailed responses in JSON format. The default mode is concise.

curl "https://api.ddns.fm/update?key=[YOUR_KEY]&domain=[YOUR_DOMAIN]&mode=verbose"

DDNS Client

For updating your DDNS, we recommend using the uddns client. You can find it at:

https://github.com/we11adam/uddns

This client provides an efficient way to keep your dynamic DNS updated automatically.

SSL Certificate Management

For requesting and updating SSL certificates issued by Let's Encrypt, we recommend using fmcert. You can find it at:

https://easyinstall.net/fmcert

fmcert simplifies the process of obtaining and renewing SSL certificates for your domains.