If you are looking for an authoritative DNS server with a sane API try KnotDNS [1]. Really easy to automate dynamic updates using `knotc` [2] without worrying about manually updating zone files.
BIND has supported dynamic zones for like 15 years. Declare the zone dynamic, generate a key, apply the key to the zone as authorized to make changes, and then use nsupdate command to make changes
[1] https://www.knot-dns.cz
[2] https://www.knot-dns.cz/docs/3.0/html/man_knotc.html