CloudFlare-DNS-Manager
Easily automate and manage your CloudFlare DNS records with the Node.js and Python3 CloudFlare DNS Manager library. This powerful tool allows developers to seamlessly interact with CloudFlare's DNS API, enabling automatic management of DNS records
Installation
NodeJS required version > 10.2.x
npm install cloudflare-dns-manager@latest
Example:
NodeJS:
const CloudflareAPI = require('cloudflare-dns-manager');
const cfAPI = new CloudflareAPI('your-email@example.com', 'your-api-key');
const zoneId = 'your-zone-id';
(async () => {
const targetIp = '192.168.1.1';
const recordName = 'example.com';
const recordType = 'A';
try {
const result = await cfAPI.addDnsRecord(targetIp, recordName, recordType, zoneId);
console.log(result);
} catch (error) {
console.error(error);
}
try {
const result = await cfAPI.dnsScan(zoneId);
console.log(result);
} catch (error) {
console.error(error);
}
const updatedIp = '192.168.1.2';
const recordIdToUpdate = 'record-id-to-update';
try {
const result = await cfAPI.updateDnsRecord(updatedIp, recordName, recordType, zoneId, recordIdToUpdate);
console.log(result);
console.log(result.data);
} catch (error) {
console.error(error);
}
const recordIdToDelete = 'record-id-to-delete';
try {
const result = await cfAPI.deleteDnsRecord(zoneId, recordIdToDelete);
console.log(result);
} catch (error) {
console.error(error);
}
})();
FAQ
Class function infromation
Usage for each function in the class.
dnsScan | zoneId | success , exception , message , data |
addDnsRecord | targetIp, name, recordType, zoneId, comment, ttl | success , exception , message , data |
updateDnsRecord | targetIp, name, recordType, zoneId, comment, ttl | success , exception , message , data |
deleteDnsRecord | zoneId, recordId | success , exception , message , data |
Inside
graph LR
A[Library] -- Axios --> B(Cloudflare API)
D --Response--> A(Library)
B -- Communication --> D((Cloudfalre DNS))
Update
Python3 library is coming soon