|
Version: 7C
HC7 Build: 7.00.0012 and later
API Build: 1.00.0001 and later
DNS Manager - GetDNSZones retrieves zone files under a specified owner. This web service call can be made as http://your-domain.com/HC7API/DNSManager.asmx?op=GetDNSZones.
Input Parameters
HostUserName
HostPassword
OwnerName - user name whose DNS zones you want to retrieve, can be set to Host Name for getting all records
OptionalParam
WebsiteName - sent when you want to get DNS zone under a particular website
DNSZoneName - search filter
Language
Output Parameters
ZoneName
Creator - Reseller Name, returned if OwnerName parameter is set to Host Name
Owner - Webadmin Name, returned if OwnerName parameter is set to Reseller Name
ServerName - Name of the server where DNS zone is created
ServerIP - IP of the server where DNS zone is created
ZoneFile
Sample Optional Parameters
<Parameters>
<Parameter Name = "WebsiteName">MyDomain.com</Parameter>
<Parameter Name = "DNSZoneName">MyDomain.com</Parameter>
<Parameter Name = "Language">French</Parameter>
</Parameters>
Sample SOAP Request
POST /HC7API/DNSManager.asmx HTTP/1.1
Host: your-domain.com
Content-Type: text/xml; charset=utf-8
Content-Length: length
SOAPAction: "http://tempuri.org/GetDNSZones"
<?xml version="1.0" encoding="utf-8"?>
<soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
<soap:Body>
<GetDNSZones xmlns="http://tempuri.org/">
<HostUserName>host</HostUserName>
<HostPassword>host123</HostPassword>
<OwnerName>david</OwnerName>
<OptionalParam>xml</OptionalParam>
</GetDNSZones>
</soap:Body>
</soap:Envelope>
Sample HTTP Request
POST /HC7API/DNSManager.asmx/GetDNSZones HTTP/1.1
Host: your-domain.com
Content-Type: application/x-www-form-urlencoded
Content-Length: length
HostUserName=host&HostPassword=host123&OwnerName=david&OptionalParam=xml
Sample C# Code
public DNSManager.Response GetDNSZones(string strHostUserName, string strHostPassword, string strOwnerName)
{
try
{
DNSManager.DNSManager oDNS = new DNSManager.DNSManager();
DNSManager.Response oResponse = new DNSManager.Response();
XmlDocument oDoc = new XmlDocument();
//Adding root node
XmlNode xOptionalParam = oDoc.CreateNode(XmlNodeType.Element,"Parameters","");
//Adding sub nodes
XmlNode xParameter = oDoc.CreateNode(XmlNodeType.Element,"Parameter","");
XmlAttribute xAttribute = oDoc.CreateAttribute("Name");
xAttribute.Value = "WebsiteName";
xParameter.Attributes.Append(xAttribute);
xParameter.InnerText = "MyDomain.com";
xOptionalParam.AppendChild(xParameter);
.......
.......
.......
oResponse = oDNS.GetDNSZones(strHostUserName, strHostPassword, strOwnerName,
OptionalParam);
}
catch
{
}
return oResponse;
}
Sample Response
<Response>
<Method>GetDNSZones</Method>
<Status>true</Status>
<ErrorCode>74900001</ErrorCode>
<ErrorDescription>Operation completed successfully.</ErrorDescription>
<Result>
<DNSZones xmlns="">
<RecordCount>4</RecordCount>
<RecordRow>
<ZoneName>MyDomain.com</ZoneName>
<Owner>david</Owner>
<ServerName>abc</ServerName>
<ServerIP>127.0.0.1</ServerIP>
<ZoneFile>
;
; Database file MyDomain.com.dns for MyDomain.com zone
; Zone version: 1
MyDomain.com. IN SOA ns1.domain.com. admin.domain.com. (
2007100305 ;serial
3600 ;refresh
600 ;retry
1209600 ;expire
3600 ) ;ttl
;
; Zone NS Records
;
MyDomain.com. IN NS ns1.domain.com.
MyDomain.com. IN NS ns2.domain.com.
MyDomain.com. IN A 127.0.0.1
ftp.MyDomain.com. IN CNAME MyDomain.com.
www.MyDomain.com. IN CNAME MyDomain.com.
MyDomain.com. IN MX 10 mail.MyDomain.com.
MyDomain.com. IN MX 15 MyDomain.com.
mail.MyDomain.com. IN A 127.0.0.1
</ZoneFile>
</RecordRow>
.......
.......
.......
</DNSZones>
</Result>
</Response>