dnsimple 2.0.0 → 2.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/CHANGELOG.markdown +5 -2
- data/dnsimple.gemspec +1 -1
- data/lib/dnsimple/client/certificates.rb +11 -11
- data/lib/dnsimple/client/clients.rb +4 -2
- data/lib/dnsimple/client/contacts.rb +19 -15
- data/lib/dnsimple/client/domains.rb +23 -19
- data/lib/dnsimple/client/{domains_autorenewals.rb → domains_autorenewal.rb} +7 -7
- data/lib/dnsimple/client/domains_forwards.rb +13 -12
- data/lib/dnsimple/client/domains_privacy.rb +6 -6
- data/lib/dnsimple/client/domains_records.rb +14 -13
- data/lib/dnsimple/client/domains_sharing.rb +10 -9
- data/lib/dnsimple/client/domains_zones.rb +3 -3
- data/lib/dnsimple/client/name_servers.rb +14 -14
- data/lib/dnsimple/client/registrar.rb +17 -15
- data/lib/dnsimple/client/services.rb +7 -6
- data/lib/dnsimple/client/services_domains.rb +12 -12
- data/lib/dnsimple/client/templates.rb +18 -30
- data/lib/dnsimple/client/templates_domains.rb +23 -0
- data/lib/dnsimple/client/templates_records.rb +15 -15
- data/lib/dnsimple/client/users.rb +7 -5
- data/lib/dnsimple/version.rb +1 -1
- data/spec/dnsimple/client/certificates_spec.rb +2 -2
- data/spec/dnsimple/client/contacts_spec.rb +22 -22
- data/spec/dnsimple/client/domains_autorenewals_spec.rb +4 -4
- data/spec/dnsimple/client/domains_forwards_spec.rb +8 -8
- data/spec/dnsimple/client/domains_privacy_spec.rb +4 -4
- data/spec/dnsimple/client/domains_records_spec.rb +11 -11
- data/spec/dnsimple/client/domains_sharing_spec.rb +6 -6
- data/spec/dnsimple/client/domains_spec.rb +15 -15
- data/spec/dnsimple/client/domains_zones_spec.rb +2 -2
- data/spec/dnsimple/client/name_servers_spec.rb +1 -1
- data/spec/dnsimple/client/registrar_spec.rb +9 -9
- data/spec/dnsimple/client/services_spec.rb +3 -3
- data/spec/dnsimple/client/templates_domains_spec.rb +38 -0
- data/spec/dnsimple/client/templates_records_spec.rb +10 -10
- data/spec/dnsimple/client/templates_spec.rb +21 -53
- data/spec/files/contacts/{get → contact}/success.http +0 -0
- data/spec/files/contacts/{list → contacts}/success.http +0 -0
- data/spec/files/contacts/{create → create_contact}/badrequest-missingcontact.http +0 -0
- data/spec/files/contacts/{create → create_contact}/badrequest-validationerror.http +0 -0
- data/spec/files/contacts/{create → create_contact}/created.http +0 -0
- data/spec/files/contacts/{delete → delete_contact}/success-204.http +0 -0
- data/spec/files/contacts/{delete → delete_contact}/success.http +0 -0
- data/spec/files/contacts/{notfound.http → notfound-contact.http} +0 -0
- data/spec/files/contacts/{update → update_contact}/success.http +0 -0
- data/spec/files/domains/{create → create_domain}/created.http +0 -0
- data/spec/files/{domains_forwards/create → domains/create_forward}/created.http +0 -0
- data/spec/files/{domains_sharing/create → domains/create_membership}/success.http +0 -0
- data/spec/files/{domains_records/create → domains/create_record}/created.http +0 -0
- data/spec/files/domains/{delete → delete_domain}/success-204.http +0 -0
- data/spec/files/domains/{delete → delete_domain}/success.http +0 -0
- data/spec/files/{domains_forwards/delete → domains/delete_forward}/success.http +0 -0
- data/spec/files/{domains_sharing/delete → domains/delete_membership}/success.http +0 -0
- data/spec/files/{domains_records/delete → domains/delete_record}/success-204.http +0 -0
- data/spec/files/{domains_records/delete → domains/delete_record}/success.http +0 -0
- data/spec/files/{domains_autorenewal/disable → domains/disable_auto_renewal}/success.http +0 -0
- data/spec/files/{domains_privacy/disable → domains/disable_whois_privacy}/success.http +0 -0
- data/spec/files/domains/{get → domain}/success.http +0 -0
- data/spec/files/domains/{list → domains}/success.http +0 -0
- data/spec/files/{domains_autorenewal/enable → domains/enable_auto_renewal}/success.http +0 -0
- data/spec/files/{domains_privacy/enable → domains/enable_whois_privacy}/success.http +0 -0
- data/spec/files/{domains_forwards/get → domains/forward}/success.http +0 -0
- data/spec/files/{domains_forwards/list → domains/forwards}/success.http +0 -0
- data/spec/files/{domains_sharing/list → domains/memberships}/success.http +0 -0
- data/spec/files/domains/{notfound.http → notfound-domain.http} +0 -0
- data/spec/files/{domains_forwards/notfound.http → domains/notfound-forward.http} +0 -0
- data/spec/files/{domains_sharing/notfound.http → domains/notfound-membership.http} +0 -0
- data/spec/files/{domains_records/get → domains/record}/success.http +0 -0
- data/spec/files/{domains_records/list → domains/records}/success.http +0 -0
- data/spec/files/{domains_records/update → domains/update_record}/success.http +0 -0
- data/spec/files/{domains_zones/get → domains/zone}/success.http +0 -0
- data/spec/files/nameservers/{list → name_servers}/success.http +0 -0
- data/spec/files/{registrar_extended_attributes/list → registrar/extended_attributes}/success.http +0 -0
- data/spec/files/{registrar_prices/list → registrar/prices}/success.http +0 -0
- data/spec/files/services/{notfound.http → notfound-service.http} +0 -0
- data/spec/files/services/{get → service}/success.http +0 -0
- data/spec/files/services/{list → services}/success.http +0 -0
- data/spec/files/subscriptions/{get → subscription}/success.http +0 -0
- data/spec/files/templates/{apply → apply_template}/success.http +0 -0
- data/spec/files/templates/{create → create_template}/created.http +0 -0
- data/spec/files/templates/{delete → delete_template}/success-204.http +0 -0
- data/spec/files/templates/{delete → delete_template}/success.http +0 -0
- data/spec/files/templates/{notfound.http → notfound-template.http} +0 -0
- data/spec/files/templates/{get → template}/success.http +0 -0
- data/spec/files/templates/{list → templates}/success.http +0 -0
- data/spec/files/templates/{update → update_template}/success.http +0 -0
- data/spec/files/templates_records/{create → create_record}/created.http +0 -0
- data/spec/files/templates_records/{delete → delete_record}/success-204.http +0 -0
- data/spec/files/templates_records/{delete → delete_record}/success.http +0 -0
- data/spec/files/templates_records/{notfound.http → notfound-template-record.http} +0 -0
- data/spec/files/templates_records/{get → record}/success.http +0 -0
- data/spec/files/templates_records/{list → records}/success.http +0 -0
- data/spec/files/templates_records/{update → update_record}/success.http +0 -0
- metadata +121 -130
- data/spec/files/domains_autorenewal/notfound-domain.http +0 -19
- data/spec/files/domains_forwards/notfound-domain.http +0 -19
- data/spec/files/domains_privacy/notfound-domain.http +0 -19
- data/spec/files/domains_records/notfound.http +0 -17
- data/spec/files/domains_sharing/notfound-domain.http +0 -19
- data/spec/files/domains_zones/notfound-domain.http +0 -19
|
@@ -8,8 +8,8 @@ module Dnsimple
|
|
|
8
8
|
#
|
|
9
9
|
# @param [#to_s] domain The domain id or domain name.
|
|
10
10
|
# @param [Hash] options
|
|
11
|
-
#
|
|
12
11
|
# @return [Array<Struct::Record>]
|
|
12
|
+
#
|
|
13
13
|
# @raise [NotFoundError]
|
|
14
14
|
# @raise [RequestError] When the request fails.
|
|
15
15
|
def records(domain, options = {})
|
|
@@ -17,6 +17,7 @@ module Dnsimple
|
|
|
17
17
|
|
|
18
18
|
response.map { |r| Struct::Record.new(r["record"]) }
|
|
19
19
|
end
|
|
20
|
+
alias :list_record :records
|
|
20
21
|
|
|
21
22
|
# Creates a record for a domain.
|
|
22
23
|
#
|
|
@@ -24,13 +25,13 @@ module Dnsimple
|
|
|
24
25
|
#
|
|
25
26
|
# @param [#to_s] domain The domain id or domain name.
|
|
26
27
|
# @param [Hash] attributes
|
|
27
|
-
#
|
|
28
28
|
# @return [Struct::Record]
|
|
29
|
+
#
|
|
29
30
|
# @raise [NotFoundError]
|
|
30
31
|
# @raise [RequestError] When the request fails.
|
|
31
|
-
def create_record(domain, attributes = {})
|
|
32
|
+
def create_record(domain, attributes = {}, options = {})
|
|
32
33
|
Extra.validate_mandatory_attributes(attributes, [:name, :record_type, :content])
|
|
33
|
-
options = { record: attributes }
|
|
34
|
+
options = options.merge({ record: attributes })
|
|
34
35
|
response = client.post("v1/domains/#{domain}/records", options)
|
|
35
36
|
|
|
36
37
|
Struct::Record.new(response["record"])
|
|
@@ -42,12 +43,12 @@ module Dnsimple
|
|
|
42
43
|
#
|
|
43
44
|
# @param [#to_s] domain The domain id or domain name.
|
|
44
45
|
# @param [Fixnum] record The record id.
|
|
45
|
-
#
|
|
46
46
|
# @return [Struct::Record]
|
|
47
|
+
#
|
|
47
48
|
# @raise [NotFoundError]
|
|
48
49
|
# @raise [RequestError] When the request fails.
|
|
49
|
-
def record(domain, record)
|
|
50
|
-
response = client.get("v1/domains/#{domain}/records/#{record}")
|
|
50
|
+
def record(domain, record, options = {})
|
|
51
|
+
response = client.get("v1/domains/#{domain}/records/#{record}", options)
|
|
51
52
|
|
|
52
53
|
Struct::Record.new(response["record"])
|
|
53
54
|
end
|
|
@@ -59,12 +60,12 @@ module Dnsimple
|
|
|
59
60
|
# @param [#to_s] domain The domain id or domain name.
|
|
60
61
|
# @param [Fixnum] record The record id.
|
|
61
62
|
# @param [Hash] attributes
|
|
62
|
-
#
|
|
63
63
|
# @return [Struct::Record]
|
|
64
|
+
#
|
|
64
65
|
# @raise [NotFoundError]
|
|
65
66
|
# @raise [RequestError] When the request fails.
|
|
66
|
-
def update_record(domain, record, attributes = {})
|
|
67
|
-
options = { record: attributes }
|
|
67
|
+
def update_record(domain, record, attributes = {}, options = {})
|
|
68
|
+
options = options.merge({ record: attributes })
|
|
68
69
|
response = client.put("v1/domains/#{domain}/records/#{record}", options)
|
|
69
70
|
|
|
70
71
|
Struct::Record.new(response["record"])
|
|
@@ -76,12 +77,12 @@ module Dnsimple
|
|
|
76
77
|
#
|
|
77
78
|
# @param [#to_s] domain The domain id or domain name.
|
|
78
79
|
# @param [Fixnum] record The record id.
|
|
79
|
-
#
|
|
80
80
|
# @return [void]
|
|
81
|
+
#
|
|
81
82
|
# @raise [NotFoundError]
|
|
82
83
|
# @raise [RequestError] When the request fails.
|
|
83
|
-
def delete_record(domain, record)
|
|
84
|
-
client.delete("v1/domains/#{domain}/records/#{record}")
|
|
84
|
+
def delete_record(domain, record, options = {})
|
|
85
|
+
client.delete("v1/domains/#{domain}/records/#{record}", options)
|
|
85
86
|
end
|
|
86
87
|
|
|
87
88
|
end
|
|
@@ -7,15 +7,16 @@ module Dnsimple
|
|
|
7
7
|
# @see http://developer.dnsimple.com/domains/sharing/#list
|
|
8
8
|
#
|
|
9
9
|
# @param [#to_s] domain The domain id or domain name.
|
|
10
|
-
#
|
|
11
10
|
# @return [Array<Struct::Membership>]
|
|
11
|
+
#
|
|
12
12
|
# @raise [NotFoundError]
|
|
13
13
|
# @raise [RequestError] When the request fails.
|
|
14
|
-
def memberships(domain)
|
|
15
|
-
response = client.get("v1/domains/#{domain}/memberships")
|
|
14
|
+
def memberships(domain, options = {})
|
|
15
|
+
response = client.get("v1/domains/#{domain}/memberships", options)
|
|
16
16
|
|
|
17
17
|
response.map { |r| Struct::Membership.new(r["membership"]) }
|
|
18
18
|
end
|
|
19
|
+
alias :list_memberships :memberships
|
|
19
20
|
|
|
20
21
|
# Shares a domain.
|
|
21
22
|
#
|
|
@@ -23,12 +24,12 @@ module Dnsimple
|
|
|
23
24
|
#
|
|
24
25
|
# @param [#to_s] domain The domain id or domain name.
|
|
25
26
|
# @param [String] email
|
|
26
|
-
#
|
|
27
27
|
# @return [Struct::Membership]
|
|
28
|
+
#
|
|
28
29
|
# @raise [NotFoundError]
|
|
29
30
|
# @raise [RequestError] When the request fails.
|
|
30
|
-
def create_membership(domain, email)
|
|
31
|
-
options = { membership: { email: email }}
|
|
31
|
+
def create_membership(domain, email, options = {})
|
|
32
|
+
options = options.merge({ membership: { email: email }})
|
|
32
33
|
response = client.post("v1/domains/#{domain}/memberships", options)
|
|
33
34
|
|
|
34
35
|
Struct::Membership.new(response["membership"])
|
|
@@ -40,12 +41,12 @@ module Dnsimple
|
|
|
40
41
|
#
|
|
41
42
|
# @param [#to_s] domain The domain id or domain name.
|
|
42
43
|
# @param [Fixnum] membership The membership id.
|
|
43
|
-
#
|
|
44
44
|
# @return [void]
|
|
45
|
+
#
|
|
45
46
|
# @raise [NotFoundError]
|
|
46
47
|
# @raise [RequestError] When the request fails.
|
|
47
|
-
def delete_membership(domain, membership)
|
|
48
|
-
client.delete("v1/domains/#{domain}/memberships/#{membership}")
|
|
48
|
+
def delete_membership(domain, membership, options = {})
|
|
49
|
+
client.delete("v1/domains/#{domain}/memberships/#{membership}", options)
|
|
49
50
|
end
|
|
50
51
|
|
|
51
52
|
end
|
|
@@ -7,12 +7,12 @@ module Dnsimple
|
|
|
7
7
|
# @see http://developer.dnsimple.com/domains/zones/#get
|
|
8
8
|
#
|
|
9
9
|
# @param [#to_s] domain The domain id or domain name.
|
|
10
|
-
#
|
|
11
10
|
# @return [String]
|
|
11
|
+
#
|
|
12
12
|
# @raise [NotFoundError]
|
|
13
13
|
# @raise [RequestError] When the request fails.
|
|
14
|
-
def zone(domain)
|
|
15
|
-
response = client.get("v1/domains/#{domain}/zone")
|
|
14
|
+
def zone(domain, options = {})
|
|
15
|
+
response = client.get("v1/domains/#{domain}/zone", options)
|
|
16
16
|
|
|
17
17
|
response["zone"]
|
|
18
18
|
end
|
|
@@ -7,17 +7,17 @@ module Dnsimple
|
|
|
7
7
|
# @see http://developer.dnsimple.com/domains/nameservers/#list
|
|
8
8
|
#
|
|
9
9
|
# @param [#to_s] domain The domain id or domain name.
|
|
10
|
-
#
|
|
11
10
|
# @return [Array<String>] The delegates name servers.
|
|
11
|
+
#
|
|
12
12
|
# @raise [NotFoundError]
|
|
13
13
|
# @raise [RequestError] When the request fails.
|
|
14
|
-
def name_servers(domain)
|
|
15
|
-
response = client.get("v1/domains/#{domain}/name_servers")
|
|
14
|
+
def name_servers(domain, options = {})
|
|
15
|
+
response = client.get("v1/domains/#{domain}/name_servers", options)
|
|
16
16
|
|
|
17
17
|
response.parsed_response
|
|
18
18
|
end
|
|
19
|
-
|
|
20
19
|
alias :list :name_servers
|
|
20
|
+
alias :list_name_servers :name_servers
|
|
21
21
|
|
|
22
22
|
# Changes the name servers for a domain.
|
|
23
23
|
#
|
|
@@ -25,13 +25,13 @@ module Dnsimple
|
|
|
25
25
|
#
|
|
26
26
|
# @param [#to_s] domain The domain id or domain name.
|
|
27
27
|
# @param [Array<String>] servers The name server list.
|
|
28
|
-
#
|
|
29
28
|
# @return [Array<String>] The delegates name servers.
|
|
29
|
+
#
|
|
30
30
|
# @raise [NotFoundError]
|
|
31
31
|
# @raise [RequestError] When the request fails.
|
|
32
|
-
def change(domain, servers)
|
|
33
|
-
servers
|
|
34
|
-
options
|
|
32
|
+
def change(domain, servers, options = {})
|
|
33
|
+
servers = servers.inject({}) { |hash, server| hash.merge("ns#{hash.length + 1}" => server) }
|
|
34
|
+
options = options.merge({ name_servers: servers })
|
|
35
35
|
response = client.post("v1/domains/#{domain}/name_servers", options)
|
|
36
36
|
|
|
37
37
|
response.parsed_response
|
|
@@ -45,11 +45,11 @@ module Dnsimple
|
|
|
45
45
|
# @param [#to_s] domain The domain id or domain name.
|
|
46
46
|
# @param [String] name The hostname to register.
|
|
47
47
|
# @param [String] ip The hostname IP address.
|
|
48
|
-
#
|
|
49
48
|
# @return [void]
|
|
49
|
+
#
|
|
50
50
|
# @raise [RequestError] When the request fails.
|
|
51
|
-
def register(domain, name, ip)
|
|
52
|
-
options = { name_server: { name: name, ip: ip } }
|
|
51
|
+
def register(domain, name, ip, options = {})
|
|
52
|
+
options = options.merge({ name_server: { name: name, ip: ip } })
|
|
53
53
|
client.post("v1/domains/#{domain}/registry_name_servers", options)
|
|
54
54
|
end
|
|
55
55
|
|
|
@@ -59,11 +59,11 @@ module Dnsimple
|
|
|
59
59
|
#
|
|
60
60
|
# @param [#to_s] domain The domain id or domain name.
|
|
61
61
|
# @param [String] name The hostname to register.
|
|
62
|
-
#
|
|
63
62
|
# @return [void]
|
|
63
|
+
#
|
|
64
64
|
# @raise [RequestError] When the request fails.
|
|
65
|
-
def deregister(domain, name)
|
|
66
|
-
client.delete("v1/domains/#{domain}/registry_name_servers/#{name}")
|
|
65
|
+
def deregister(domain, name, options = {})
|
|
66
|
+
client.delete("v1/domains/#{domain}/registry_name_servers/#{name}", options)
|
|
67
67
|
end
|
|
68
68
|
|
|
69
69
|
end
|
|
@@ -7,12 +7,12 @@ module Dnsimple
|
|
|
7
7
|
# @see http://developer.dnsimple.com/domains/registry/#check
|
|
8
8
|
#
|
|
9
9
|
# @param [#to_s] name The domain name to check.
|
|
10
|
-
#
|
|
11
10
|
# @return [Hash] The response containing the status, price, and more details.
|
|
11
|
+
#
|
|
12
12
|
# @raise [RequestError] When the request fails.
|
|
13
|
-
def check(name)
|
|
13
|
+
def check(name, options = {})
|
|
14
14
|
response = begin
|
|
15
|
-
client.get("v1/domains/#{name}/check")
|
|
15
|
+
client.get("v1/domains/#{name}/check", options)
|
|
16
16
|
rescue NotFoundError => e
|
|
17
17
|
e.response
|
|
18
18
|
end
|
|
@@ -25,11 +25,11 @@ module Dnsimple
|
|
|
25
25
|
# @see http://developer.dnsimple.com/domains/registry/#check
|
|
26
26
|
#
|
|
27
27
|
# @param [#to_s] name The domain name to check.
|
|
28
|
-
#
|
|
29
28
|
# @return [Boolean] true if the domain is available
|
|
29
|
+
#
|
|
30
30
|
# @raise [RequestError] When the request fails.
|
|
31
|
-
def available?(name)
|
|
32
|
-
check(name)["status"] == "available"
|
|
31
|
+
def available?(name, options = {})
|
|
32
|
+
check(name, options)["status"] == "available"
|
|
33
33
|
end
|
|
34
34
|
|
|
35
35
|
# Registers a domain.
|
|
@@ -40,8 +40,8 @@ module Dnsimple
|
|
|
40
40
|
# @param [Fixnum] registrant_id The id of the contact to use as registrant.
|
|
41
41
|
# @param [Hash] extended_attributes
|
|
42
42
|
# @param [Hash] options
|
|
43
|
-
#
|
|
44
43
|
# @return [Struct::Domain]
|
|
44
|
+
#
|
|
45
45
|
# @raise [RequestError] When the request fails.
|
|
46
46
|
def register(name, registrant_id, extended_attributes = {}, options = {})
|
|
47
47
|
options = Extra.deep_merge(options, { domain: { name: name, registrant_id: registrant_id }, extended_attribute: extended_attributes })
|
|
@@ -59,8 +59,8 @@ module Dnsimple
|
|
|
59
59
|
# @param [Fixnum] registrant_id The id of the contact to use as registrant.
|
|
60
60
|
# @param [Hash] extended_attributes
|
|
61
61
|
# @param [Hash] options
|
|
62
|
-
#
|
|
63
62
|
# @return [Struct::TransferOrder]
|
|
63
|
+
#
|
|
64
64
|
# @raise [RequestError] When the request fails.
|
|
65
65
|
def transfer(name, auth_code, registrant_id, extended_attributes = {}, options = {})
|
|
66
66
|
options = Extra.deep_merge(options, { domain: { name: name, registrant_id: registrant_id }, extended_attribute: extended_attributes, transfer_order: { authinfo: auth_code }})
|
|
@@ -75,8 +75,8 @@ module Dnsimple
|
|
|
75
75
|
#
|
|
76
76
|
# @param [#to_s] name The domain name to renew.
|
|
77
77
|
# @param [Hash] options
|
|
78
|
-
#
|
|
79
78
|
# @return [Struct::Domain]
|
|
79
|
+
#
|
|
80
80
|
# @raise [RequestError] When the request fails.
|
|
81
81
|
def renew(name, options = {})
|
|
82
82
|
options = Extra.deep_merge(options, { domain: { name: name }})
|
|
@@ -91,27 +91,29 @@ module Dnsimple
|
|
|
91
91
|
# @see http://developer.dnsimple.com/registrar/extended-attributes/#list
|
|
92
92
|
#
|
|
93
93
|
# @param [#to_s] tld The TLD name.
|
|
94
|
-
#
|
|
95
94
|
# @return [Array<Struct::ExtendedAttribute>]
|
|
95
|
+
#
|
|
96
96
|
# @raise [RequestError] When the request fails.
|
|
97
|
-
def
|
|
98
|
-
response = client.get("v1/extended_attributes/#{tld}")
|
|
97
|
+
def extended_attributes(tld, options = {})
|
|
98
|
+
response = client.get("v1/extended_attributes/#{tld}", options)
|
|
99
99
|
|
|
100
100
|
response.map { |r| Struct::ExtendedAttribute.new(r) }
|
|
101
101
|
end
|
|
102
|
-
|
|
102
|
+
alias :list_extended_attributes :extended_attributes
|
|
103
103
|
|
|
104
104
|
# List all the TLD prices.
|
|
105
105
|
#
|
|
106
106
|
# @see http://developer.dnsimple.com/registrar/prices/#list
|
|
107
107
|
#
|
|
108
108
|
# @return [Array<Struct::Price>]
|
|
109
|
+
#
|
|
109
110
|
# @raise [RequestError] When the request fails.
|
|
110
|
-
def
|
|
111
|
-
response = client.get("v1/prices")
|
|
111
|
+
def prices(options = {})
|
|
112
|
+
response = client.get("v1/prices", options)
|
|
112
113
|
|
|
113
114
|
response.map { |r| Struct::Price.new(r["price"]) }
|
|
114
115
|
end
|
|
116
|
+
alias :list_prices :prices
|
|
115
117
|
|
|
116
118
|
end
|
|
117
119
|
end
|
|
@@ -7,26 +7,27 @@ module Dnsimple
|
|
|
7
7
|
# @see http://developer.dnsimple.com/services/#list
|
|
8
8
|
#
|
|
9
9
|
# @return [Array<Struct::Service>]
|
|
10
|
+
#
|
|
10
11
|
# @raise [RequestError] When the request fails.
|
|
11
|
-
def services
|
|
12
|
-
response = client.get("v1/services")
|
|
12
|
+
def services(options = {})
|
|
13
|
+
response = client.get("v1/services", options)
|
|
13
14
|
|
|
14
15
|
response.map { |r| Struct::Service.new(r["service"]) }
|
|
15
16
|
end
|
|
16
|
-
|
|
17
17
|
alias :list :services
|
|
18
|
+
alias :list_services :services
|
|
18
19
|
|
|
19
20
|
# Gets a service.
|
|
20
21
|
#
|
|
21
22
|
# @see http://developer.dnsimple.com/services/#get
|
|
22
23
|
#
|
|
23
24
|
# @param [Fixnum] service The service id.
|
|
24
|
-
#
|
|
25
25
|
# @return [Struct::Service]
|
|
26
|
+
#
|
|
26
27
|
# @raise [NotFoundError]
|
|
27
28
|
# @raise [RequestError] When the request fails.
|
|
28
|
-
def service(service)
|
|
29
|
-
response = client.get("v1/services/#{service}")
|
|
29
|
+
def service(service, options = {})
|
|
30
|
+
response = client.get("v1/services/#{service}", options)
|
|
30
31
|
|
|
31
32
|
Struct::Service.new(response["service"])
|
|
32
33
|
end
|
|
@@ -7,12 +7,12 @@ module Dnsimple
|
|
|
7
7
|
# @see http://developer.dnsimple.com/services/#applied
|
|
8
8
|
#
|
|
9
9
|
# @param [#to_s] domain The domain id or domain name.
|
|
10
|
-
#
|
|
11
10
|
# @return [Array<Struct::Service>]
|
|
11
|
+
#
|
|
12
12
|
# @raise [NotFoundError]
|
|
13
13
|
# @raise [RequestError] When the request fails.
|
|
14
|
-
def applied(domain)
|
|
15
|
-
response = client.get("v1/domains/#{domain}/applied_services")
|
|
14
|
+
def applied(domain, options = {})
|
|
15
|
+
response = client.get("v1/domains/#{domain}/applied_services", options)
|
|
16
16
|
|
|
17
17
|
response.map { |r| Struct::Service.new(r["service"]) }
|
|
18
18
|
end
|
|
@@ -22,12 +22,12 @@ module Dnsimple
|
|
|
22
22
|
# @see http://developer.dnsimple.com/services/#available
|
|
23
23
|
#
|
|
24
24
|
# @param [#to_s] domain The domain id or domain name.
|
|
25
|
-
#
|
|
26
25
|
# @return [Array<Struct::Service>]
|
|
26
|
+
#
|
|
27
27
|
# @raise [NotFoundError]
|
|
28
28
|
# @raise [RequestError] When the request fails.
|
|
29
|
-
def available(domain)
|
|
30
|
-
response = client.get("v1/domains/#{domain}/available_services")
|
|
29
|
+
def available(domain, options = {})
|
|
30
|
+
response = client.get("v1/domains/#{domain}/available_services", options)
|
|
31
31
|
|
|
32
32
|
response.map { |r| Struct::Service.new(r["service"]) }
|
|
33
33
|
end
|
|
@@ -38,12 +38,12 @@ module Dnsimple
|
|
|
38
38
|
#
|
|
39
39
|
# @param [#to_s] domain The domain id or domain name.
|
|
40
40
|
# @param [Fixnum] service The service id.
|
|
41
|
-
#
|
|
42
41
|
# @return [void]
|
|
42
|
+
#
|
|
43
43
|
# @raise [NotFoundError]
|
|
44
44
|
# @raise [RequestError] When the request fails.
|
|
45
|
-
def apply(domain, service)
|
|
46
|
-
options = { service: { id: service }}
|
|
45
|
+
def apply(domain, service, options = {})
|
|
46
|
+
options = Extra.deep_merge(options, { service: { id: service }})
|
|
47
47
|
response = client.post("v1/domains/#{domain}/applied_services", options)
|
|
48
48
|
response.code == 200
|
|
49
49
|
end
|
|
@@ -54,12 +54,12 @@ module Dnsimple
|
|
|
54
54
|
#
|
|
55
55
|
# @param [#to_s] domain The domain id or domain name.
|
|
56
56
|
# @param [Fixnum] service The service id.
|
|
57
|
-
#
|
|
58
57
|
# @return [void]
|
|
58
|
+
#
|
|
59
59
|
# @raise [NotFoundError]
|
|
60
60
|
# @raise [RequestError] When the request fails.
|
|
61
|
-
def unapply(domain, service)
|
|
62
|
-
response = client.delete("v1/domains/#{domain}/applied_services/#{service}")
|
|
61
|
+
def unapply(domain, service, options = {})
|
|
62
|
+
response = client.delete("v1/domains/#{domain}/applied_services/#{service}", options)
|
|
63
63
|
response.code == 200
|
|
64
64
|
end
|
|
65
65
|
|
|
@@ -7,42 +7,44 @@ module Dnsimple
|
|
|
7
7
|
# @see http://developer.dnsimple.com/templates/#list
|
|
8
8
|
#
|
|
9
9
|
# @return [Array<Struct::Template>]
|
|
10
|
+
#
|
|
10
11
|
# @raise [RequestError] When the request fails.
|
|
11
|
-
def templates
|
|
12
|
-
response = client.get("v1/templates")
|
|
12
|
+
def templates(options = {})
|
|
13
|
+
response = client.get("v1/templates", options)
|
|
13
14
|
|
|
14
15
|
response.map { |r| Struct::Template.new(r["dns_template"]) }
|
|
15
16
|
end
|
|
16
|
-
|
|
17
17
|
alias :list :templates
|
|
18
|
+
alias :list_templates :templates
|
|
18
19
|
|
|
19
20
|
# Creates a template in the account.
|
|
20
21
|
#
|
|
21
22
|
# @see http://developer.dnsimple.com/templates/#create
|
|
22
23
|
#
|
|
23
24
|
# @param [Hash] attributes
|
|
24
|
-
#
|
|
25
25
|
# @return [Struct::Template]
|
|
26
|
+
#
|
|
26
27
|
# @raise [RequestError] When the request fails.
|
|
27
|
-
def
|
|
28
|
+
def create_template(attributes = {}, options = {})
|
|
28
29
|
Extra.validate_mandatory_attributes(attributes, [:name, :short_name])
|
|
29
|
-
options = { dns_template: attributes }
|
|
30
|
+
options = options.merge({ dns_template: attributes })
|
|
30
31
|
response = client.post("v1/templates", options)
|
|
31
32
|
|
|
32
33
|
Struct::Template.new(response["dns_template"])
|
|
33
34
|
end
|
|
35
|
+
alias :create :create_template
|
|
34
36
|
|
|
35
37
|
# Gets a template from the account.
|
|
36
38
|
#
|
|
37
39
|
# @see http://developer.dnsimple.com/templates/#get
|
|
38
40
|
#
|
|
39
41
|
# @param [#to_s] template The template id or short-name.
|
|
40
|
-
#
|
|
41
42
|
# @return [Struct::Template]
|
|
43
|
+
#
|
|
42
44
|
# @raise [NotFoundError]
|
|
43
45
|
# @raise [RequestError] When the request fails.
|
|
44
|
-
def template(template)
|
|
45
|
-
response = client.get("v1/templates/#{template}")
|
|
46
|
+
def template(template, options = {})
|
|
47
|
+
response = client.get("v1/templates/#{template}", options)
|
|
46
48
|
|
|
47
49
|
Struct::Template.new(response["dns_template"])
|
|
48
50
|
end
|
|
@@ -53,16 +55,17 @@ module Dnsimple
|
|
|
53
55
|
#
|
|
54
56
|
# @param [#to_s] template The template id or short-name.
|
|
55
57
|
# @param [Hash] attributes
|
|
56
|
-
#
|
|
57
58
|
# @return [Struct::Template]
|
|
59
|
+
#
|
|
58
60
|
# @raise [NotFoundError]
|
|
59
61
|
# @raise [RequestError] When the request fails.
|
|
60
|
-
def
|
|
61
|
-
options = { dns_template: attributes }
|
|
62
|
+
def update_template(template, attributes = {}, options = {})
|
|
63
|
+
options = options.merge({ dns_template: attributes })
|
|
62
64
|
response = client.put("v1/templates/#{template}", options)
|
|
63
65
|
|
|
64
66
|
Struct::Template.new(response["dns_template"])
|
|
65
67
|
end
|
|
68
|
+
alias :update :update_template
|
|
66
69
|
|
|
67
70
|
# Deletes a template from the account.
|
|
68
71
|
#
|
|
@@ -71,29 +74,14 @@ module Dnsimple
|
|
|
71
74
|
# @see http://developer.dnsimple.com/templates/#delete
|
|
72
75
|
#
|
|
73
76
|
# @param [#to_s] template The template id or short-name.
|
|
74
|
-
#
|
|
75
77
|
# @return [void]
|
|
76
|
-
# @raise [NotFoundError]
|
|
77
|
-
# @raise [RequestError] When the request fails.
|
|
78
|
-
def delete(template)
|
|
79
|
-
client.delete("v1/templates/#{template}")
|
|
80
|
-
end
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
# Applies the template to the domain.
|
|
84
78
|
#
|
|
85
|
-
# @see http://developer.dnsimple.com/templates/#apply
|
|
86
|
-
#
|
|
87
|
-
# @param [#to_s] domain The domain id or domain name.
|
|
88
|
-
# @param [#to_s] template The template id or short-name.
|
|
89
|
-
#
|
|
90
|
-
# @return [void]
|
|
91
79
|
# @raise [NotFoundError]
|
|
92
80
|
# @raise [RequestError] When the request fails.
|
|
93
|
-
def
|
|
94
|
-
|
|
95
|
-
response.code == 200
|
|
81
|
+
def delete_template(template, options = {})
|
|
82
|
+
client.delete("v1/templates/#{template}", options)
|
|
96
83
|
end
|
|
84
|
+
alias :delete :delete_template
|
|
97
85
|
|
|
98
86
|
end
|
|
99
87
|
end
|