lib/namecheap/dns.rb in namecheap-0.2.0 vs lib/namecheap/dns.rb in namecheap-0.3.0
- old
+ new
@@ -1,51 +1,56 @@
module Namecheap
class Dns < Api
+ # Sets domain to use Namecheap's default DNS servers.
+ # @see http://developer.namecheap.com/docs/doku.php?id=api-reference:domains.dns:setdefault
def set_default(sld, tld, options = {})
- args = options.clone
- args['SLD'] = sld
- args['TLD'] = tld
- api_call('namecheap.domains.dns.setDefault', args)
+ options = {:SLD => sld, :TLD => tld}.merge(options)
+ get 'domains.dns.setDefault', options
end
+ # Sets domain to use custom DNS servers.
+ # @see http://developer.namecheap.com/docs/doku.php?id=api-reference:domains.dns:setcustom
def set_custom(sld, tld, nameservers = [], options = {})
- args = options.clone
- args['SLD'] = sld
- args['TLD'] = tld
- args['Nameservers'] = nameservers.respond_to?(:join) ? nameservers.join(',') : nameservers
- api_call('namecheap.domains.dns.setCustom', args)
+ if nameservers.respond_to?(:join)
+ nameservers = nameservers.join(',')
+ end
+
+ options = {:SLD => sld, :TLD => tld, :Nameservers => nameservers}.merge(options)
+ get 'domains.dns.setCustom', options
end
+ # Gets a list of DNS servers associated with the requested domain.
+ # @see http://developer.namecheap.com/docs/doku.php?id=api-reference:domains.dns:getlist
def get_list(sld, tld, options = {})
- args = options.clone
- args['SLD'] = sld
- args['TLD'] = tld
- api_call('namecheap.domains.dns.getList', args)
+ options = {:SLD => sld, :TLD => tld}.merge(options)
+ get 'domains.dns.getList', options
end
+ # Retrieves DNS host record settings for the requested domain.
+ # @see http://developer.namecheap.com/docs/doku.php?id=api-reference:domains.dns:gethosts
def get_hosts(sld, tld, options = {})
- args = options.clone
- args['SLD'] = sld
- args['TLD'] = tld
- api_call('namecheap.domains.dns.getHosts', args)
+ options = {:SLD => sld, :TLD => tld}.merge(options)
+ get 'domains.dns.getHosts', options
end
+ # Gets email forwarding settings for the requested domain.
+ # @see http://developer.namecheap.com/docs/doku.php?id=api-reference:domains.dns:getemailforwarding
def get_email_forwarding(domain, options = {})
- args = options.clone
- args['DomainName'] = domain
- api_call('namecheap.domains.dns.getEmailForwarding', args)
+ options = {:DomainName => domain}.merge(options)
+ get 'domains.dns.getEmailForwarding', options
end
+ # Sets email forwarding for a domain name.
+ # @see http://developer.namecheap.com/docs/doku.php?id=api-reference:domains.dns:setemailforwarding
def set_email_forwarding(domain, options = {})
- args = options.clone
- args['DomainName'] = domain
- api_call('namecheap.domains.dns.setEmailForwarding', args)
+ options = {:DomainName => domain}.merge(options)
+ get 'domains.dns.setEmailForwarding', options
end
+ # Sets DNS host records settings for the requested domain.
+ # @see http://developer.namecheap.com/docs/doku.php?id=api-reference:domains.dns:sethosts
def set_hosts(sld, tld, options = {})
- args = options.clone
- args['SLD'] = sld
- args['TLD'] = tld
- api_call('namecheap.domains.dns.setHosts', args)
+ options = {:SLD => sld, :TLD => tld}.merge(options)
+ get 'domains.dns.setHosts', options
end
end
end