Simple PHP class for Cloudflare API
You can require the class through Composer:
composer require mdobes/cfclass:dev-master
$domain = new mdobes\CloudFlare();
$domain->apikey = ""; //Cloudflare API key, not API token!
$domain->email = ""; //Cloudflare Email
$domain->name = ""; //Domain
echo $domain->zoneRegister();
$domain->name = ""; //Domain
echo $domain->zoneInfo();
$domain->zoneid = ""; //Domain ID (Domain id is in zoneInfo());
echo $domain->zoneDevMode('on'); //Value: on or off
$domain->zoneid = ""; //Domain ID (Domain id is in zoneInfo());
echo $domain->zoneDevModeInfo();
$domain->zoneid = ""; //Domain ID (Domain id is in zoneInfo());
echo $domain->zoneRemove();
$domain->zoneid = ""; //Domain ID (Domain id is in zoneInfo());
echo $domain->dnsList();
$domain->zoneid = ""; // Domain ID (Domain id is in zoneInfo());
echo $domain->dnsAdd('A', 'test.werwi.eu', '173.249.28.105', true); //Record type, domain, content, proxied on CloudFlare
SRV record:
array(
'type' => 'SRV',
'data' => array(
"name" => "test.werwi.eu",
"ttl" => 120,
"service" => "service",
"proto" => "protocol",
"weight" => 5,
"port" => 11,
"priority" => 0,
"target" => "target"
)
)
$domain->zoneid = ""; //Domain ID (Domain id is in zoneInfo());
echo $domain->dnsUpdate('cb231ddd3092f3ed8...', 'A', 'test.werwi.eu', '192.168.0.1', true); //Record ID (in DNS record list), record type, content, proxied on CloudFlare
$domain->zoneid = ""; // Domain ID (Domain id is in zoneInfo());
echo $domain->dnsRemove('cb231ddd3092f3ed8...'); //Record ID (in DNS record list)