FreeDNS API quickstart
FreeDNS is included with every Pidgin Host account. Activate DNS hosting for a domain you own, then manage records programmatically.
1. Activate FreeDNS for a domain
curl -X POST https://www.pidginhost.com/api/v1/freedns/dns/activate/ \
-H "Authorization: Token $PIDGINHOST_API_TOKEN" \
-H "Content-Type: application/json" \
-d '{"domain": "example.com", "source": "internal", "ip": "203.0.113.10"}'
Use source=external for a domain you added manually, or source=internal for a domain registered in your account.
2. Add records
curl -X POST "https://www.pidginhost.com/api/v1/freedns/dns/add-record/?domain=example.com&source=internal" \
-H "Authorization: Token $PIDGINHOST_API_TOKEN" \
-H "Content-Type: application/json" \
-d '{"type": "A", "name": "www", "address": "203.0.113.10", "ttl": 300}'
3. List records
curl -X GET "https://www.pidginhost.com/api/v1/freedns/dns/records/?domain=example.com&source=internal" \
-H "Authorization: Token $PIDGINHOST_API_TOKEN"
Same flow with phctl CLI
phctl freedns domain activate example.com --source internal --ip 203.0.113.10
phctl freedns record create \
--domain example.com \
--source internal \
--type A \
--name www \
--address 203.0.113.10 \
--ttl 300
Need the full reference?
Every endpoint with Python, JavaScript, PHP, Go, Rust, CLI, and curl examples.
Ready to launch your infrastructure?
Create an account in minutes. The free cloud tier includes one server per customer after at least €10 in confirmed account deposits. Money-back eligibility varies by service.