[AdamsNames]

Home
Register
Payment
Edit
Whois
Clients
Bulk
Forms

domquery($domain) : Domain querying

A simple query operation, similar to the traditional whois server. The first argument is the domain name to query and the hash returned has up to three tags:

Hash returned by domquery()
Hash KeyDescription
domain Hash of domain data:
KeyDescription
domainDomain Name
registeredRegistration date (YYYY-MM-DD)
orgRegistrant
adminAdmin. Contact
techTech. Contact
billBilling Contact
rrArray of resource records
idObject identifier
found
1if the domain was found
0otherwise
error An array of error messages which may include:
CodeDescription
310Invalid argument format
320Invalid domain name
500Fatal error in query

Including contact details

A second, optional, scalar argument, will expand the contact details if true. Instead of returning each contact's identifier, the contact is expanded and its details are returned instead.

Example

Querying a normal domain

Request

domquery('xmlrpcdemo.tc')


<methodCall>
  <methodName>domquery</methodName>
  <params>
    <param>
      <value><string>xmlrpcdemo.tc</string></value>
    </param>
  </params>
</methodCall>

Return

{
  'found' => '1',
  'domain' => {
    'org' => 'adams550a',
    'registered' => '2001-03-21',
    'id' => 'xmlr3585s',
    'domain' => 'xmlrpcdemo.tc',
    'rr' => [
      {
        'rclass' => 'ns',
        'rdata' => 'ns1.acme.com',
        'rname' => ''
      },
      {
        'rclass' => 'ns',
        'rdata' => 'ns2.acme.com',
        'rname' => ''
      }
    ],
    'admin' => 'per4073.tc',
    'tech' => 'per4073.tc',
    'bill' => 'per4073.tc'
  },
  'error' => []
}
<?xml version="1.0" encoding="UTF-8"?>
<methodResponse>
  <params>
    <param>
      <value>
        <struct>
          <member>
            <name>domain</name>
            <value>
              <struct>
		<member>
                 <name>admin</name>
                 <value><string>per4073.tc</string></value>
                </member>
                <member>
                  <name>registered</name>
                  <value><string>2001-03-21</string></value>
                </member>
                <member>
                  <name>domain</name>
                  <value><string>xmlrpcdemo.tc</string></value>
                </member>
                <member>
                  <name>org</name>
                  <value><string>adams550a</string></value>
                </member>
                <member>
                  <name>tech</name>
                  <value><string>per4073.tc</string></value>
                </member>
                <member>
                  <name>id</name>
                  <value><string>xmlr3585s</string></value>
                </member>
                <member>
                  <name>rr</name>
                  <value>
                    <array>
                      <data>
                        <value>
                          <struct>
                            <member>
                              <name>rclass</name>
                              <value><string>ns</string></value>
                            </member>
                            <member>
                              <name>rdata</name>
                              <value><string>ns1.acme.com</string></value>
                            </member>
                            <member>
                              <name>rname</name>
                              <value><string/></value>
                            </member>
                          </struct>
                        </value>
                        <value>
                          <struct>
                            <member>
                              <name>rclass</name>
                              <value><string>ns</string></value>
                            </member>
                            <member>
                              <name>rdata</name>
                              <value><string>ns2.acme.com</string></value>
                            </member>
                            <member>
                              <name>rname</name>
                              <value><string/></value>
                            </member>
                          </struct>
                        </value>
                      </data>
                    </array>
                  </value>
                </member>
                <member>
                  <name>bill</name>
                  <value><string>per4073.tc</string></value>
                </member>
              </struct>
            </value>
          </member>
          <member>
            <name>error</name>
            <value>
              <array><data/></array>
            </value>
          </member>
          <member>
            <name>found</name>
            <value>
              <int>1</int>
            </value>
          </member>
        </struct>
      </value>
    </param>
  </params>
</methodResponse>

Querying an unregistered domain

Request

domquery('xxxmlrpcdemo.tc')

<?xml version="1.0" encoding="UTF-8"?>
<methodCall>
  <methodName>domquery</methodName>
  <params>
    <param>
      <value><string>xxxmlrpcdemo.tc</string></value>
    </param>
  </params>
</methodCall>

Return

{
  'found' => '0',
  'error' => []
}
<?xml version="1.0" encoding="UTF-8"?>
<methodResponse>
  <params>
    <param>
      <value>
        <struct>
          <member>
            <name>error</name>
            <value>
              <array><data/></array>
            </value>
          </member>
          <member>
            <name>found</name>
            <value>
              <int>0</int>
            </value>
          </member>
        </struct>
      </value>
    </param>
  </params>
</methodResponse>

Querying a non-AdamsNames domain

Request

domquery('xmlrpcdemo.com')

<?xml version="1.0" encoding="UTF-8"?>
<methodCall>
  <methodName>domquery</methodName>
  <params>
    <param>
      <value><string>xmlrpcdemo.com</string></value>
    </param>
  </params>
</methodCall>

Return

{
  'error' => [
    [
      320,
      'Domain is not a possible AdamsNames domain'
    ]
  ]
}
<?xml version="1.0" encoding="UTF-8"?>
<methodResponse>
  <params>
    <param>
      <value>
        <struct>
          <member>
            <name>error</name>
            <value>
              <array>
                <data>
                  <value>
                    <array>
                      <data>
                        <value>
                          <int>320</int>
                        </value>
                        <value>
                          <string>Domain is not a possible...</string>
                        </value>
                      </data>
                    </array>
                  </value>
                </data>
              </array>
            </value>
          </member>
        </struct>
      </value>
    </param>
  </params>
</methodResponse>

Querying a normal domain and contacts

Request

domquery('xmlrpcdemo.tc', 1)

<?xml version="1.0" encoding="UTF-8"?>
<methodCall>
  <methodName>domquery</methodName>
  <params>
    <param>
      <value><string>xmlrpcdemo.tc</string></value>
    </param>
    <param>
      <value>
        <int>1</int>
      </value>
    </param>
  </params>
</methodCall>

Return

{
  'found' => '1',
  'domain' => {
    'org' => {
      'registered' => '2001-03-21',
      'email' => 'test@adamsnames.tc',
      'id' => 'adams550a',
      'address' => 'Cambridge',
      'fax' => '',
      'cc' => 'uk',
      'name' => 'AdamsNames Tests',
      'phone' => '1234'
    },
    'registered' => '2001-03-21',
    'id' => 'xmlr3585s',
    'domain' => 'xmlrpcdemo.tc',
    'rr' => [
      {
        'rclass' => 'ns',
        'rdata' => 'ns1.acme.com',
        'rname' => ''
      },
      {
        'rclass' => 'ns',
        'rdata' => 'ns2.acme.com',
        'rname' => ''
      }
    ],
    'admin' => {
      'registered' => '1998-08-28',
      'email' => 'person@adamsnames.tc',
      'id' => 'per4073.tc',
      'address' => '3 Adams Road\\nCAMBRIDGE\\nCB3 9AD',
      'fax' => '',
      'cc' => 'uk',
      'name' => 'AdamsNames',
      'phone' => '1'
    },
    'tech' => {
      'registered' => '1998-08-28',
      'email' => 'person@adamsnames.tc',
      'id' => 'per4073.tc',
      'address' => '3 Adams Road\\nCAMBRIDGE\\nCB3 9AD',
      'fax' => '',
      'cc' => 'uk',
      'name' => 'AdamsNames',
      'phone' => '1'
    },
    'bill' => {
      'registered' => '1998-08-28',
      'email' => 'person@adamsnames.tc',
      'id' => 'per4073.tc',
      'address' => '3 Adams Road\\nCAMBRIDGE\\nCB3 9AD',
      'fax' => '',
      'cc' => 'uk',
      'name' => 'AdamsNames',
      'phone' => '1'
    }
  },
  'error' => []
}
<?xml version="1.0" encoding="UTF-8"?>
<methodResponse>
  <params>
    <param>
      <value>
        <struct>
          <member>
            <name>domain</name>
            <value>
              <struct>
                <member>
                  <name>admin</name>
                  <value>
                    <struct>
                      <member>
                        <name>registered</name>
                        <value><string>1998-08-28</string></value>
                      </member>
                      <member>
                        <name>name</name>
                        <value><string>AdamsNames</string></value>
                      </member>
                      <member>
                        <name>phone</name>
                        <value>
                          <int>1</int>
                        </value>
                      </member>
                      <member>
                        <name>email</name>
                        <value><string>person@adamsnames.tc</string></value>
                      </member>
                      <member>
                        <name>cc</name>
                        <value><string>uk</string></value>
                      </member>
                      <member>
                        <name>fax</name>
                        <value><string/></value>
                      </member>
                      <member>
                        <name>address</name>
                        <value>
                          <string>3 Adams Road\nCAMBRIDGE...</string>
                        </value>
                      </member>
                      <member>
                        <name>id</name>
                        <value><string>per4073.tc</string></value>
                      </member>
                    </struct>
                  </value>
                </member>
                <member>
                  <name>registered</name>
                  <value><string>2001-03-21</string></value>
                </member>
                <member>
                  <name>domain</name>
                  <value><string>xmlrpcdemo.tc</string></value>
                </member>
                <member>
                  <name>org</name>
                  <value>
                    <struct>
                      <member>
                        <name>registered</name>
                        <value><string>2001-03-21</string></value>
                      </member>
                      <member>
                        <name>name</name>
                        <value><string>AdamsNames Tests</string></value>
                      </member>
                      <member>
                        <name>phone</name>
                        <value>
                          <int>1234</int>
                        </value>
                      </member>
                      <member>
                        <name>email</name>
                        <value><string>test@adamsnames.tc</string></value>
                      </member>
                      <member>
                        <name>cc</name>
                        <value><string>uk</string></value>
                      </member>
                      <member>
                        <name>fax</name>
                        <value><string/></value>
                      </member>
                      <member>
                        <name>address</name>
                        <value><string>Cambridge</string></value>
                      </member>
                      <member>
                        <name>id</name>
                        <value><string>adams550a</string></value>
                      </member>
                    </struct>
                  </value>
                </member>
                <member>
                  <name>tech</name>
                  <value>
                    <struct>
                      <member>
                        <name>registered</name>
                        <value><string>1998-08-28</string></value>
                      </member>
                      <member>
                        <name>name</name>
                        <value><string>AdamsNames</string></value>
                      </member>
                      <member>
                        <name>phone</name>
                        <value>
                          <int>1</int>
                        </value>
                      </member>
                      <member>
                        <name>email</name>
                        <value><string>person@adamsnames.tc</string></value>
                      </member>
                      <member>
                        <name>cc</name>
                        <value><string>uk</string></value>
                      </member>
                      <member>
                        <name>fax</name>
                        <value><string/></value>
                      </member>
                      <member>
                        <name>address</name>
                        <value>
                          <string>3 Adams Road\nCAMBRIDGE...</string>
                        </value>
                      </member>
                      <member>
                        <name>id</name>
                        <value><string>per4073.tc</string></value>
                      </member>
                    </struct>
                  </value>
                </member>
                <member>
                  <name>id</name>
                  <value><string>xmlr3585s</string></value>
                </member>
                <member>
                  <name>rr</name>
                  <value>
                    <array>
                      <data>
                        <value>
                          <struct>
                            <member>
                              <name>rclass</name>
                              <value><string>ns</string></value>
                            </member>
                            <member>
                              <name>rdata</name>
                              <value><string>ns1.acme.com</string></value>
                            </member>
                            <member>
                              <name>rname</name>
                              <value><string/></value>
                            </member>
                          </struct>
                        </value>
                        <value>
                          <struct>
                            <member>
                              <name>rclass</name>
                              <value><string>ns</string></value>
                            </member>
                            <member>
                              <name>rdata</name>
                              <value><string>ns2.acme.com</string></value>
                            </member>
                            <member>
                              <name>rname</name>
                              <value><string/></value>
                            </member>
                          </struct>
                        </value>
                      </data>
                    </array>
                  </value>
                </member>
                <member>
                  <name>bill</name>
                  <value>
                    <struct>
                      <member>
                        <name>registered</name>
                        <value><string>1998-08-28</string></value>
                      </member>
                      <member>
                        <name>name</name>
                        <value><string>AdamsNames</string></value>
                      </member>
                      <member>
                        <name>phone</name>
                        <value>
                          <int>1</int>
                        </value>
                      </member>
                      <member>
                        <name>email</name>
                        <value><string>person@adamsnames.tc</string></value>
                      </member>
                      <member>
                        <name>cc</name>
                        <value><string>uk</string></value>
                      </member>
                      <member>
                        <name>fax</name>
                        <value><string/></value>
                      </member>
                      <member>
                        <name>address</name>
                        <value>
                          <string>3 Adams Road\nCAMBRIDGE...</string>
                        </value>
                      </member>
                      <member>
                        <name>id</name>
                        <value><string>per4073.tc</string></value>
                      </member>
                    </struct>
                  </value>
                </member>
              </struct>
            </value>
          </member>
          <member>
            <name>error</name>
            <value>
              <array><data/></array>
            </value>
          </member>
          <member>
            <name>found</name>
            <value>
              <int>1</int>
            </value>
          </member>
        </struct>
      </value>
    </param>
  </params>
</methodResponse>

AdamsNames Limited is registered as a Company in England and Wales.
Registration Number: 3714632, VAT Registration Number: GB 731 9129 38.
Registered Office: Reg'd Office: 9 Quy Court, Colliers Lane, Stow-cum-Quy, Cambridge, CB25 9AU, UK
The Webmaster
URL: http://www.adamsnames.com//api/xmlrpc-doc/domquery.html
Last modified: Thu Apr 29 13:05:02 2004