1+ <?php
2+
3+ namespace Example ;
4+
5+ use Domainrobot \Domainrobot ;
6+ use Domainrobot \Lib \DomainrobotAuth ;
7+ use Domainrobot \Lib \DomainrobotException ;
8+
9+ use Domainrobot \Model \Zone ;
10+ use Domainrobot \Model \Soa ;
11+ use Domainrobot \Model \NameServer ;
12+ use Domainrobot \Model \NameserverActionConstants ;
13+ use Domainrobot \Model \ResourceRecord ;
14+
15+
16+ class ZoneController {
17+
18+ public function create (){
19+ $ domainrobot = new Domainrobot ([
20+ "url " => "https://api.autodns.com/v1 " ,
21+ "auth " => new DomainrobotAuth ([
22+ "user " => "username " ,
23+ "password " => "password " ,
24+ "context " => 4
25+ ])
26+ ]);
27+
28+
29+ $ zone = new Zone ();
30+ $ zone ->setOrigin ('example.com ' );
31+ $ zone ->setSoa (new Soa ([
32+ "refresh " => 43200 ,
33+ "retry " => 7200 ,
34+ "expire " => 1209600 ,
35+ "email " => "someone@example.com "
36+ ]));
37+
38+ $ zone ->setAction (NameserverActionConstants::COMPLETE );
39+ $ zone ->setNameServers ([
40+ new NameServer ([
41+ "name " => "a.ns14.net "
42+ ]),
43+ new NameServer ([
44+ "name " => "b.ns14.net "
45+ ]),
46+ new NameServer ([
47+ "name " => "c.ns14.net "
48+ ]),
49+ new NameServer ([
50+ "name " => "d.ns14.net "
51+ ])
52+ ]);
53+
54+ $ zone ->setResourceRecords ([
55+ new ResourceRecord ([
56+ "name " => "subdomain " ,
57+ "type " => "A " ,
58+ "value " => "198.51.100.1 " ,
59+ //"pref" => 1 // optional
60+ ]),
61+ new ResourceRecord ([
62+ "name " => "mail " ,
63+ "type " => "A " ,
64+ "value " => "198.51.100.1 " ,
65+ //"pref" => 1 // optional
66+ ]),
67+ new ResourceRecord ([
68+ "name " => "" ,
69+ "type " => "MX " ,
70+ "value " => "198.51.100.1 " ,
71+ "pref " => 10
72+ ])
73+ ]);
74+
75+ try {
76+ $ zone = $ domainrobot ->zone ->create ($ zone );
77+ } catch (DomainrobotException $ exception ) {
78+ return $ exception ;
79+ }
80+
81+ return $ zone ;
82+ }
83+
84+ }
0 commit comments