dnsimple 4.3.0 → 4.4.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (46) hide show
  1. checksums.yaml +4 -4
  2. data/.rubocop.yml +5 -0
  3. data/.rubocop_dnsimple.yml +28 -8
  4. data/.travis.yml +12 -7
  5. data/CHANGELOG.md +7 -0
  6. data/LICENSE.txt +1 -1
  7. data/README.md +1 -1
  8. data/lib/dnsimple/client.rb +1 -1
  9. data/lib/dnsimple/client/certificates.rb +185 -28
  10. data/lib/dnsimple/client/registrar.rb +5 -5
  11. data/lib/dnsimple/struct.rb +2 -0
  12. data/lib/dnsimple/struct/certificate.rb +9 -0
  13. data/lib/dnsimple/struct/certificate_purchase.rb +25 -0
  14. data/lib/dnsimple/struct/certificate_renewal.rb +28 -0
  15. data/lib/dnsimple/struct/domain_registration.rb +0 -3
  16. data/lib/dnsimple/struct/domain_renewal.rb +0 -3
  17. data/lib/dnsimple/struct/domain_transfer.rb +0 -3
  18. data/lib/dnsimple/struct/extended_attribute.rb +1 -1
  19. data/lib/dnsimple/struct/service.rb +1 -1
  20. data/lib/dnsimple/struct/whoami.rb +2 -2
  21. data/lib/dnsimple/version.rb +1 -1
  22. data/spec/dnsimple/client/certificates_spec.rb +225 -1
  23. data/spec/dnsimple/client/collaborators_spec.rb +1 -1
  24. data/spec/dnsimple/client/contacts_spec.rb +1 -1
  25. data/spec/dnsimple/client/domains_delegation_signer_records_spec.rb +1 -1
  26. data/spec/dnsimple/client/domains_dnssec_spec.rb +2 -2
  27. data/spec/dnsimple/client/domains_email_forwards_spec.rb +1 -1
  28. data/spec/dnsimple/client/domains_pushes_spec.rb +1 -1
  29. data/spec/dnsimple/client/domains_spec.rb +3 -3
  30. data/spec/dnsimple/client/registrar_spec.rb +3 -3
  31. data/spec/dnsimple/client/registrar_whois_privacy_spec.rb +3 -3
  32. data/spec/dnsimple/client/services_spec.rb +1 -1
  33. data/spec/dnsimple/client/tlds_spec.rb +7 -7
  34. data/spec/dnsimple/client/zones_records_spec.rb +2 -2
  35. data/spec/dnsimple/client/zones_spec.rb +2 -2
  36. data/spec/fixtures.http/{transferDomainOut → authorizeDomainTransferOut}/success.http +0 -0
  37. data/spec/fixtures.http/getCertificate/success.http +1 -1
  38. data/spec/fixtures.http/issueLetsencryptCertificate/success.http +21 -0
  39. data/spec/fixtures.http/issueRenewalLetsencryptCertificate/success.http +21 -0
  40. data/spec/fixtures.http/listCertificates/success.http +1 -1
  41. data/spec/fixtures.http/purchaseLetsencryptCertificate/success.http +21 -0
  42. data/spec/fixtures.http/purchaseRenewalLetsencryptCertificate/success.http +21 -0
  43. data/spec/fixtures.http/whoami/success-account.http +1 -1
  44. data/spec/fixtures.http/whoami/success-user.http +1 -1
  45. data/spec/fixtures.http/whoami/success.http +1 -1
  46. metadata +15 -5
@@ -55,7 +55,7 @@ describe Dnsimple::Client, ".domains" do
55
55
  it "exposes the pagination information" do
56
56
  response = subject.email_forwards(account_id, domain_id)
57
57
 
58
- expect(response.respond_to?(:page)).to be_truthy
58
+ expect(response.respond_to?(:page)).to be(true)
59
59
  expect(response.page).to eq(1)
60
60
  expect(response.per_page).to be_a(Integer)
61
61
  expect(response.total_entries).to be_a(Integer)
@@ -76,7 +76,7 @@ describe Dnsimple::Client, ".domains" do
76
76
  it "exposes the pagination information" do
77
77
  response = subject.pushes(account_id)
78
78
 
79
- expect(response.respond_to?(:page)).to be_truthy
79
+ expect(response.respond_to?(:page)).to be(true)
80
80
  expect(response.page).to eq(1)
81
81
  expect(response.per_page).to be_a(Integer)
82
82
  expect(response.total_entries).to be_a(Integer)
@@ -60,7 +60,7 @@ describe Dnsimple::Client, ".domains" do
60
60
  it "exposes the pagination information" do
61
61
  response = subject.domains(account_id)
62
62
 
63
- expect(response.respond_to?(:page)).to be_truthy
63
+ expect(response.respond_to?(:page)).to be(true)
64
64
  expect(response.page).to eq(1)
65
65
  expect(response.per_page).to be_a(Integer)
66
66
  expect(response.total_entries).to be_a(Integer)
@@ -148,8 +148,8 @@ describe Dnsimple::Client, ".domains" do
148
148
  expect(result.registrant_id).to eq(nil)
149
149
  expect(result.name).to eq("example-alpha.com")
150
150
  expect(result.state).to eq("hosted")
151
- expect(result.auto_renew).to eq(false)
152
- expect(result.private_whois).to eq(false)
151
+ expect(result.auto_renew).to be(false)
152
+ expect(result.private_whois).to be(false)
153
153
  expect(result.expires_on).to eq(nil)
154
154
  expect(result.created_at).to eq("2014-12-06T15:56:55Z")
155
155
  expect(result.updated_at).to eq("2015-12-09T00:20:56Z")
@@ -27,8 +27,8 @@ describe Dnsimple::Client, ".registrar" do
27
27
  result = response.data
28
28
  expect(result).to be_a(Dnsimple::Struct::DomainCheck)
29
29
  expect(result.domain).to eq("ruby.codes")
30
- expect(result.available).to be_truthy
31
- expect(result.premium).to be_truthy
30
+ expect(result.available).to be(true)
31
+ expect(result.premium).to be(true)
32
32
  end
33
33
  end
34
34
 
@@ -217,7 +217,7 @@ describe Dnsimple::Client, ".registrar" do
217
217
 
218
218
  before do
219
219
  stub_request(:post, %r{/v2/#{account_id}/registrar/domains/.+/authorize_transfer_out$})
220
- .to_return(read_http_fixture("transferDomainOut/success.http"))
220
+ .to_return(read_http_fixture("authorizeDomainTransferOut/success.http"))
221
221
  end
222
222
 
223
223
  it "builds the correct request" do
@@ -27,7 +27,7 @@ describe Dnsimple::Client, ".registrar" do
27
27
  result = response.data
28
28
  expect(result).to be_a(Dnsimple::Struct::WhoisPrivacy)
29
29
  expect(result.domain_id).to be_kind_of(Integer)
30
- expect(result.enabled).to be_truthy
30
+ expect(result.enabled).to be(true)
31
31
  expect(result.expires_on).to be_kind_of(String)
32
32
  end
33
33
  end
@@ -56,7 +56,7 @@ describe Dnsimple::Client, ".registrar" do
56
56
  result = response.data
57
57
  expect(result).to be_a(Dnsimple::Struct::WhoisPrivacy)
58
58
  expect(result.domain_id).to be_kind_of(Integer)
59
- expect(result.enabled).to be_truthy
59
+ expect(result.enabled).to be(true)
60
60
  expect(result.expires_on).to be_kind_of(String)
61
61
  end
62
62
  end
@@ -111,7 +111,7 @@ describe Dnsimple::Client, ".registrar" do
111
111
  result = response.data
112
112
  expect(result).to be_a(Dnsimple::Struct::WhoisPrivacy)
113
113
  expect(result.domain_id).to be_kind_of(Integer)
114
- expect(result.enabled).to be_falsey
114
+ expect(result.enabled).to be(false)
115
115
  expect(result.expires_on).to be_kind_of(String)
116
116
  end
117
117
  end
@@ -98,7 +98,7 @@ describe Dnsimple::Client, ".services" do
98
98
  expect(service.sid).to eq("service1")
99
99
  expect(service.description).to eq("First service example.")
100
100
  expect(service.setup_description).to be_nil
101
- expect(service.requires_setup).to eq(true)
101
+ expect(service.requires_setup).to be(true)
102
102
  expect(service.default_subdomain).to be_nil
103
103
 
104
104
  settings = service.settings
@@ -51,7 +51,7 @@ describe Dnsimple::Client, ".tlds" do
51
51
  it "exposes the pagination information" do
52
52
  response = subject.tlds
53
53
 
54
- expect(response.respond_to?(:page)).to be_truthy
54
+ expect(response.respond_to?(:page)).to be(true)
55
55
  expect(response.page).to eq(1)
56
56
  expect(response.per_page).to be_a(Integer)
57
57
  expect(response.total_entries).to be_a(Integer)
@@ -98,13 +98,13 @@ describe Dnsimple::Client, ".tlds" do
98
98
  expect(result).to be_a(Dnsimple::Struct::Tld)
99
99
  expect(result.tld).to eq('com')
100
100
  expect(result.tld_type).to eq(1)
101
- expect(result.whois_privacy).to eq(true)
102
- expect(result.auto_renew_only).to eq(false)
103
- expect(result.idn).to eq(true)
101
+ expect(result.whois_privacy).to be(true)
102
+ expect(result.auto_renew_only).to be(false)
103
+ expect(result.idn).to be(true)
104
104
  expect(result.minimum_registration).to eq(1)
105
- expect(result.registration_enabled).to eq(true)
106
- expect(result.renewal_enabled).to eq(true)
107
- expect(result.transfer_enabled).to eq(true)
105
+ expect(result.registration_enabled).to be(true)
106
+ expect(result.renewal_enabled).to be(true)
107
+ expect(result.transfer_enabled).to be(true)
108
108
  end
109
109
  end
110
110
 
@@ -62,7 +62,7 @@ describe Dnsimple::Client, ".zones" do
62
62
  it "exposes the pagination information" do
63
63
  response = subject.records(account_id, zone_id)
64
64
 
65
- expect(response.respond_to?(:page)).to be_truthy
65
+ expect(response.respond_to?(:page)).to be(true)
66
66
  expect(response.page).to eq(1)
67
67
  expect(response.per_page).to be_a(Integer)
68
68
  expect(response.total_entries).to be_a(Integer)
@@ -183,7 +183,7 @@ describe Dnsimple::Client, ".zones" do
183
183
  expect(result.content).to eq("mxa.example.com")
184
184
  expect(result.ttl).to eq(600)
185
185
  expect(result.priority).to eq(10)
186
- expect(result.system_record).to eq(false)
186
+ expect(result.system_record).to be(false)
187
187
  expect(result.regions).to eq(%w(SV1 IAD))
188
188
  expect(result.created_at).to eq("2016-10-05T09:51:35Z")
189
189
  expect(result.updated_at).to eq("2016-10-05T09:51:35Z")
@@ -60,7 +60,7 @@ describe Dnsimple::Client, ".zones" do
60
60
  it "exposes the pagination information" do
61
61
  response = subject.zones(account_id)
62
62
 
63
- expect(response.respond_to?(:page)).to be_truthy
63
+ expect(response.respond_to?(:page)).to be(true)
64
64
  expect(response.page).to eq(1)
65
65
  expect(response.per_page).to be_a(Integer)
66
66
  expect(response.total_entries).to be_a(Integer)
@@ -118,7 +118,7 @@ describe Dnsimple::Client, ".zones" do
118
118
  expect(result.id).to eq(1)
119
119
  expect(result.account_id).to eq(1010)
120
120
  expect(result.name).to eq("example-alpha.com")
121
- expect(result.reverse).to eq(false)
121
+ expect(result.reverse).to be(false)
122
122
  expect(result.created_at).to eq("2015-04-23T07:40:03Z")
123
123
  expect(result.updated_at).to eq("2015-04-23T07:40:03Z")
124
124
  end
@@ -18,4 +18,4 @@ X-Permitted-Cross-Domain-Policies: none
18
18
  X-XSS-Protection: 1; mode=block
19
19
  Strict-Transport-Security: max-age=31536000
20
20
 
21
- {"data":{"id":1,"domain_id":2,"name":"www","common_name":"www.weppos.net","years":1,"csr":"-----BEGIN CERTIFICATE REQUEST-----\nMIICljCCAX4CAQAwGTEXMBUGA1UEAwwOd3d3LndlcHBvcy5uZXQwggEiMA0GCSqG\nSIb3DQEBAQUAA4IBDwAwggEKAoIBAQC3MJwx9ahBG3kAwRjQdRvYZqtovUaxY6jp\nhd09975gO+2eYPDbc1yhNftVJ4KBT0zdEqzX0CwIlxE1MsnZ2YOsC7IJO531hMBp\ndBxM4tSG07xPz70AVUi9rY6YCUoJHmxoFbclpHFbtXZocR393WyzUK8047uM2mlz\n03AZKcMdyfeuo2/9TcxpTSCkklGqwqS9wtTogckaDHJDoBunAkMioGfOSMe7Yi6E\nYRtG4yPJYsDaq2yPJWV8+i0PFR1Wi5RCnPt0YdQWstHuZrxABi45+XVkzKtz3TUc\nYxrvPBucVa6uzd953u8CixNFkiOefvb/dajsv1GIwH6/Cvc1ftz1AgMBAAGgODA2\nBgkqhkiG9w0BCQ4xKTAnMCUGA1UdEQQeMByCDnd3dy53ZXBwb3MubmV0ggp3ZXBw\nb3MubmV0MA0GCSqGSIb3DQEBCwUAA4IBAQCDnVBO9RdJX0eFeZzlv5c8yG8duhKP\nl0Vl+V88fJylb/cbNj9qFPkKTK0vTXmS2XUFBChKPtLucp8+Z754UswX+QCsdc7U\nTTSG0CkyilcSubdZUERGej1XfrVQhrokk7Fu0Jh3BdT6REP0SIDTpA8ku/aRQiAp\np+h19M37S7+w/DMGDAq2LSX8jOpJ1yIokRDyLZpmwyLxutC21DXMGoJ3xZeUFrUT\nqRNwzkn2dJzgTrPkzhaXalUBqv+nfXHqHaWljZa/O0NVCFrHCdTdd53/6EE2Yabv\nq5SFTkRCpaxrvM/7a8Tr4ixD1/VKD6rw3+WC00000000000000000000\n-----END CERTIFICATE REQUEST-----\n","state":"issued","authority_identifier":"letsencrypt","created_at":"2016-06-11T18:47:08Z","updated_at":"2016-06-11T18:47:37Z","expires_on":"2016-09-09"}}
21
+ {"data":{"id":1,"domain_id":2,"contact_id":3,"name":"www","common_name":"www.weppos.net","years":1,"csr":"-----BEGIN CERTIFICATE REQUEST-----\nMIICljCCAX4CAQAwGTEXMBUGA1UEAwwOd3d3LndlcHBvcy5uZXQwggEiMA0GCSqG\nSIb3DQEBAQUAA4IBDwAwggEKAoIBAQC3MJwx9ahBG3kAwRjQdRvYZqtovUaxY6jp\nhd09975gO+2eYPDbc1yhNftVJ4KBT0zdEqzX0CwIlxE1MsnZ2YOsC7IJO531hMBp\ndBxM4tSG07xPz70AVUi9rY6YCUoJHmxoFbclpHFbtXZocR393WyzUK8047uM2mlz\n03AZKcMdyfeuo2/9TcxpTSCkklGqwqS9wtTogckaDHJDoBunAkMioGfOSMe7Yi6E\nYRtG4yPJYsDaq2yPJWV8+i0PFR1Wi5RCnPt0YdQWstHuZrxABi45+XVkzKtz3TUc\nYxrvPBucVa6uzd953u8CixNFkiOefvb/dajsv1GIwH6/Cvc1ftz1AgMBAAGgODA2\nBgkqhkiG9w0BCQ4xKTAnMCUGA1UdEQQeMByCDnd3dy53ZXBwb3MubmV0ggp3ZXBw\nb3MubmV0MA0GCSqGSIb3DQEBCwUAA4IBAQCDnVBO9RdJX0eFeZzlv5c8yG8duhKP\nl0Vl+V88fJylb/cbNj9qFPkKTK0vTXmS2XUFBChKPtLucp8+Z754UswX+QCsdc7U\nTTSG0CkyilcSubdZUERGej1XfrVQhrokk7Fu0Jh3BdT6REP0SIDTpA8ku/aRQiAp\np+h19M37S7+w/DMGDAq2LSX8jOpJ1yIokRDyLZpmwyLxutC21DXMGoJ3xZeUFrUT\nqRNwzkn2dJzgTrPkzhaXalUBqv+nfXHqHaWljZa/O0NVCFrHCdTdd53/6EE2Yabv\nq5SFTkRCpaxrvM/7a8Tr4ixD1/VKD6rw3+WC00000000000000000000\n-----END CERTIFICATE REQUEST-----\n","state":"issued","auto_renew":false,"alternate_names":["weppos.net", "www.weppos.net"],"authority_identifier":"letsencrypt","created_at":"2016-06-11T18:47:08Z","updated_at":"2016-06-11T18:47:37Z","expires_on":"2016-09-09"}}
@@ -0,0 +1,21 @@
1
+ HTTP/1.1 202 Accepted
2
+ Server: nginx
3
+ Date: Wed, 18 Oct 2017 15:42:19 GMT
4
+ Content-Type: application/json; charset=utf-8
5
+ Transfer-Encoding: chunked
6
+ Connection: keep-alive
7
+ X-RateLimit-Limit: 2400
8
+ X-RateLimit-Remaining: 2398
9
+ X-RateLimit-Reset: 1508344833
10
+ ETag: W/"2d6bbf090ba2144b097e33cb3d8964e4"
11
+ Cache-Control: max-age=0, private, must-revalidate
12
+ X-Request-Id: 50628584-cc2f-4543-8775-4f7c8196078b
13
+ X-Runtime: 0.771481
14
+ X-Content-Type-Options: nosniff
15
+ X-Download-Options: noopen
16
+ X-Frame-Options: DENY
17
+ X-Permitted-Cross-Domain-Policies: none
18
+ X-XSS-Protection: 1; mode=block
19
+ Strict-Transport-Security: max-age=31536000
20
+
21
+ {"data":{"id":200,"domain_id":300,"contact_id":100,"name":"www","common_name":"www.example.com","years":1,"csr":null,"state":"requesting","auto_renew":false,"alternate_names":[],"authority_identifier":"letsencrypt","created_at":"2017-10-18T15:40:32Z","updated_at":"2017-10-18T15:42:18Z","expires_on":null}}
@@ -0,0 +1,21 @@
1
+ HTTP/1.1 202 Accepted
2
+ Server: nginx
3
+ Date: Thu, 19 Oct 2017 08:22:17 GMT
4
+ Content-Type: application/json; charset=utf-8
5
+ Transfer-Encoding: chunked
6
+ Connection: keep-alive
7
+ X-RateLimit-Limit: 2400
8
+ X-RateLimit-Remaining: 2398
9
+ X-RateLimit-Reset: 1508404733
10
+ ETag: W/"8dfa538f5255d47f11d016dbb1c26059"
11
+ Cache-Control: max-age=0, private, must-revalidate
12
+ X-Request-Id: 185ad43f-1e34-43fb-a4aa-0359c9f95f2d
13
+ X-Runtime: 0.853294
14
+ X-Content-Type-Options: nosniff
15
+ X-Download-Options: noopen
16
+ X-Frame-Options: DENY
17
+ X-Permitted-Cross-Domain-Policies: none
18
+ X-XSS-Protection: 1; mode=block
19
+ Strict-Transport-Security: max-age=31536000
20
+
21
+ {"data":{"id":300,"domain_id":300,"contact_id":100,"name":"www","common_name":"www.example.com","years":1,"csr":null,"state":"requesting","auto_renew":false,"alternate_names":[],"authority_identifier":"letsencrypt","created_at":"2017-10-19T08:18:53Z","updated_at":"2017-10-19T08:22:17Z","expires_on":null}}
@@ -18,4 +18,4 @@ X-Permitted-Cross-Domain-Policies: none
18
18
  X-XSS-Protection: 1; mode=block
19
19
  Strict-Transport-Security: max-age=31536000
20
20
 
21
- {"data":[{"id":1,"domain_id":10,"name":"www","common_name":"www.weppos.net","years":1,"csr":"-----BEGIN CERTIFICATE REQUEST-----\nMIICljCCAX4CAQAwGTEXMBUGA1UEAwwOd3d3LndlcHBvcy5uZXQwggEiMA0GCSqG\nSIb3DQEBAQUAA4IBDwAwggEKAoIBAQC3MJwx9ahBG3kAwRjQdRvYZqtovUaxY6jp\nhd09975gO+2eYPDbc1yhNftVJ4KBT0zdEqzX0CwIlxE1MsnZ2YOsC7IJO531hMBp\ndBxM4tSG07xPz70AVUi9rY6YCUoJHmxoFbclpHFbtXZocR393WyzUK8047uM2mlz\n03AZKcMdyfeuo2/9TcxpTSCkklGqwqS9wtTogckaDHJDoBunAkMioGfOSMe7Yi6E\nYRtG4yPJYsDaq2yPJWV8+i0PFR1Wi5RCnPt0YdQWstHuZrxABi45+XVkzKtz3TUc\nYxrvPBucVa6uzd953u8CixNFkiOefvb/dajsv1GIwH6/Cvc1ftz1AgMBAAGgODA2\nBgkqhkiG9w0BCQ4xKTAnMCUGA1UdEQQeMByCDnd3dy53ZXBwb3MubmV0ggp3ZXBw\nb3MubmV0MA0GCSqGSIb3DQEBCwUAA4IBAQCDnVBO9RdJX0eFeZzlv5c8yG8duhKP\n0000000000000/cbNj9qFPkKTK0vTXmS2XUFBChKPtLucp8+Z754UswX+QCsdc7U\nTTSG0CkyilcSubdZUERGej1XfrVQhrokk7Fu0Jh3BdT6REP0SIDTpA8ku/aRQiAp\np+h19M37S7+w/DMGDAq2LSX8jOpJ1yIokRDyLZpmwyLxutC21DXMGoJ3xZeUFrUT\nqRNwzkn2dJzgTrPkzhaXalUBqv+nfXHqHaWljZa/O0NVCFrHCdTdd53/6EE2Yabv\nq5SFTkRCpaxrvM/7a8Tr4ixD1/VKD6rw3+WCvyS4GWK7knhiI1nZH3PI\n-----END CERTIFICATE REQUEST-----\n","state":"issued","authority_identifier":"letsencrypt","created_at":"2016-06-11T18:47:08Z","updated_at":"2016-06-11T18:47:37Z","expires_on":"2016-09-09"},{"id":2,"domain_id":10,"name":"www","common_name":"www.weppos.net","years":1,"csr":"-----BEGIN CERTIFICATE REQUEST-----\nMIICljCCAX4CAQAwGTEXMBUGA1UEAwwOd3d3LndlcHBvcy5uZXQwggEiMA0GCSqG\nSIb3DQEBAQUAA4IBDwAwggEKAoIBAQDEhv18Sz4nQtjCDseXREuFIZW88yK7M5gM\nw2WuVmxTfn3MGprPtIevPJ0gzR4foMpnOKjR/wW8DpbvvNPNo5FAsYf+mr84rMft\nUjOQWfqcraWWHmss/Ytq45uTie8M1/C4Pr+FFfbOwwWz/DqVao5RQ34q+LIPpV62\nwRkg0m14FqT8gjNNM0XAsrfT7M+kvfsS+FbyJ7G9K0tj3wgqaEuKAQtJn7MPflM8\nfG0TqLJ+NSuI/Zfmtol3XzBD/AoViu0F8Sqp5OR8Ej4ZdmbKR+om+U+MX9LwF8MD\nwCtMAIaGF4JkgrpiGrbAKIpXwkuxJ8wWrkwhxu18z/OhJEBW+wFjAgMBAAGgODA2\nBgkqhkiG9w0BCQ4xKTAnMCUGA1UdEQQeMByCDnd3dy53ZXBwb3MubmV0ggp3ZXBw\nb3MubmV0MA0GCSqGSIb3DQEBCwUAA4IBAQBuDDwhTjU7pAGHU1dUthfznvFqjY2I\n7CNEaUSxlXdxyZs34cwx28F7iMDE8Gh7B3QkuS3c2CTtAQsxnWKebgLYJ8w8XLN1\n9mZtNhT8yXKzLDfC9KuzKw467sbxYf8bLsuyFdQ8sBNp+8es9OwVgYsPwZ4NBtOn\nQlwtBBBdxrF5zCQgQXZsFmymf/o4nLU66ouW1MVjoG608dthoBYiIIiPRx3c+Rjd\ni8JHn2qIKF7AJfJy/H8TLgtE1bt08tfDA9ztuX2zb/lvXrVu4aLBjOF+Fn3b+EqX\n6gR0m+Id0b3t3ORN1QU0SBiyrXXJbo6E+cpYKeWlnkf0000000000000\n-----END CERTIFICATE REQUEST-----\n","state":"issued","authority_identifier":"letsencrypt","created_at":"2016-05-25T15:56:06Z","updated_at":"2016-05-25T17:10:39Z","expires_on":null}],"pagination":{"current_page":1,"per_page":30,"total_entries":2,"total_pages":1}}
21
+ {"data":[{"id":1,"domain_id":10,"contact_id":3,"name":"www","common_name":"www.weppos.net","years":1,"csr":"-----BEGIN CERTIFICATE REQUEST-----\nMIICljCCAX4CAQAwGTEXMBUGA1UEAwwOd3d3LndlcHBvcy5uZXQwggEiMA0GCSqG\nSIb3DQEBAQUAA4IBDwAwggEKAoIBAQC3MJwx9ahBG3kAwRjQdRvYZqtovUaxY6jp\nhd09975gO+2eYPDbc1yhNftVJ4KBT0zdEqzX0CwIlxE1MsnZ2YOsC7IJO531hMBp\ndBxM4tSG07xPz70AVUi9rY6YCUoJHmxoFbclpHFbtXZocR393WyzUK8047uM2mlz\n03AZKcMdyfeuo2/9TcxpTSCkklGqwqS9wtTogckaDHJDoBunAkMioGfOSMe7Yi6E\nYRtG4yPJYsDaq2yPJWV8+i0PFR1Wi5RCnPt0YdQWstHuZrxABi45+XVkzKtz3TUc\nYxrvPBucVa6uzd953u8CixNFkiOefvb/dajsv1GIwH6/Cvc1ftz1AgMBAAGgODA2\nBgkqhkiG9w0BCQ4xKTAnMCUGA1UdEQQeMByCDnd3dy53ZXBwb3MubmV0ggp3ZXBw\nb3MubmV0MA0GCSqGSIb3DQEBCwUAA4IBAQCDnVBO9RdJX0eFeZzlv5c8yG8duhKP\n0000000000000/cbNj9qFPkKTK0vTXmS2XUFBChKPtLucp8+Z754UswX+QCsdc7U\nTTSG0CkyilcSubdZUERGej1XfrVQhrokk7Fu0Jh3BdT6REP0SIDTpA8ku/aRQiAp\np+h19M37S7+w/DMGDAq2LSX8jOpJ1yIokRDyLZpmwyLxutC21DXMGoJ3xZeUFrUT\nqRNwzkn2dJzgTrPkzhaXalUBqv+nfXHqHaWljZa/O0NVCFrHCdTdd53/6EE2Yabv\nq5SFTkRCpaxrvM/7a8Tr4ixD1/VKD6rw3+WCvyS4GWK7knhiI1nZH3PI\n-----END CERTIFICATE REQUEST-----\n","state":"issued","auto_renew":false,"alternate_names":[],"authority_identifier":"letsencrypt","created_at":"2016-06-11T18:47:08Z","updated_at":"2016-06-11T18:47:37Z","expires_on":"2016-09-09"},{"id":2,"domain_id":10,"contact_id":3,"name":"www","common_name":"www.weppos.net","years":1,"csr":"-----BEGIN CERTIFICATE REQUEST-----\nMIICljCCAX4CAQAwGTEXMBUGA1UEAwwOd3d3LndlcHBvcy5uZXQwggEiMA0GCSqG\nSIb3DQEBAQUAA4IBDwAwggEKAoIBAQDEhv18Sz4nQtjCDseXREuFIZW88yK7M5gM\nw2WuVmxTfn3MGprPtIevPJ0gzR4foMpnOKjR/wW8DpbvvNPNo5FAsYf+mr84rMft\nUjOQWfqcraWWHmss/Ytq45uTie8M1/C4Pr+FFfbOwwWz/DqVao5RQ34q+LIPpV62\nwRkg0m14FqT8gjNNM0XAsrfT7M+kvfsS+FbyJ7G9K0tj3wgqaEuKAQtJn7MPflM8\nfG0TqLJ+NSuI/Zfmtol3XzBD/AoViu0F8Sqp5OR8Ej4ZdmbKR+om+U+MX9LwF8MD\nwCtMAIaGF4JkgrpiGrbAKIpXwkuxJ8wWrkwhxu18z/OhJEBW+wFjAgMBAAGgODA2\nBgkqhkiG9w0BCQ4xKTAnMCUGA1UdEQQeMByCDnd3dy53ZXBwb3MubmV0ggp3ZXBw\nb3MubmV0MA0GCSqGSIb3DQEBCwUAA4IBAQBuDDwhTjU7pAGHU1dUthfznvFqjY2I\n7CNEaUSxlXdxyZs34cwx28F7iMDE8Gh7B3QkuS3c2CTtAQsxnWKebgLYJ8w8XLN1\n9mZtNhT8yXKzLDfC9KuzKw467sbxYf8bLsuyFdQ8sBNp+8es9OwVgYsPwZ4NBtOn\nQlwtBBBdxrF5zCQgQXZsFmymf/o4nLU66ouW1MVjoG608dthoBYiIIiPRx3c+Rjd\ni8JHn2qIKF7AJfJy/H8TLgtE1bt08tfDA9ztuX2zb/lvXrVu4aLBjOF+Fn3b+EqX\n6gR0m+Id0b3t3ORN1QU0SBiyrXXJbo6E+cpYKeWlnkf0000000000000\n-----END CERTIFICATE REQUEST-----\n","state":"issued","auto_renew":false,"alternate_names":[],"authority_identifier":"letsencrypt","created_at":"2016-05-25T15:56:06Z","updated_at":"2016-05-25T17:10:39Z","expires_on":null}],"pagination":{"current_page":1,"per_page":30,"total_entries":2,"total_pages":1}}
@@ -0,0 +1,21 @@
1
+ HTTP/1.1 201 Created
2
+ Server: nginx
3
+ Date: Wed, 18 Oct 2017 15:40:32 GMT
4
+ Content-Type: application/json; charset=utf-8
5
+ Transfer-Encoding: chunked
6
+ Connection: keep-alive
7
+ X-RateLimit-Limit: 2400
8
+ X-RateLimit-Remaining: 2399
9
+ X-RateLimit-Reset: 1508344832
10
+ ETag: W/"88b289ef19331082113a0c9cb32376da"
11
+ Cache-Control: max-age=0, private, must-revalidate
12
+ X-Request-Id: 119f2d5b-2521-49ec-804d-715a10eeabc6
13
+ X-Runtime: 0.095302
14
+ X-Content-Type-Options: nosniff
15
+ X-Download-Options: noopen
16
+ X-Frame-Options: DENY
17
+ X-Permitted-Cross-Domain-Policies: none
18
+ X-XSS-Protection: 1; mode=block
19
+ Strict-Transport-Security: max-age=31536000
20
+
21
+ {"data":{"id":300,"certificate_id":300,"state":"requesting","auto_renew":false,"created_at":"2017-10-19T08:18:53Z","updated_at":"2017-10-19T08:22:17Z","expires_on":null}}
@@ -0,0 +1,21 @@
1
+ HTTP/1.1 201 Created
2
+ Server: nginx
3
+ Date: Thu, 19 Oct 2017 08:18:53 GMT
4
+ Content-Type: application/json; charset=utf-8
5
+ Transfer-Encoding: chunked
6
+ Connection: keep-alive
7
+ X-RateLimit-Limit: 2400
8
+ X-RateLimit-Remaining: 2399
9
+ X-RateLimit-Reset: 1508404733
10
+ ETag: W/"bda500d2cac6b1c4903e77e8113e9cdf"
11
+ Cache-Control: max-age=0, private, must-revalidate
12
+ X-Request-Id: 64115047-ced5-40d1-b673-e2fc51ad7587
13
+ X-Runtime: 0.072374
14
+ X-Content-Type-Options: nosniff
15
+ X-Download-Options: noopen
16
+ X-Frame-Options: DENY
17
+ X-Permitted-Cross-Domain-Policies: none
18
+ X-XSS-Protection: 1; mode=block
19
+ Strict-Transport-Security: max-age=31536000
20
+
21
+ {"data":{"id":999,"old_certificate_id":200,"new_certificate_id":300,"state":"new","auto_renew":false,"created_at":"2017-10-19T08:18:53Z","updated_at":"2017-10-19T08:18:53Z"}}
@@ -13,4 +13,4 @@ X-Request-Id: 15a7f3a5-7ee5-4e36-ac5a-8c21c2e1fffd
13
13
  X-Runtime: 0.141588
14
14
  Strict-Transport-Security: max-age=31536000
15
15
 
16
- {"data":{"user":null,"account":{"id":1,"email":"example-account@example.com"}}}
16
+ {"data":{"user":null,"account":{"id":1,"email":"example-account@example.com","plan_identifier":"dnsimple-professional","created_at":"2015-09-18T23:04:37Z","updated_at":"2016-06-09T20:03:39Z"}}}
@@ -13,4 +13,4 @@ X-Request-Id: 15a7f3a5-7ee5-4e36-ac5a-8c21c2e1fffd
13
13
  X-Runtime: 0.141588
14
14
  Strict-Transport-Security: max-age=31536000
15
15
 
16
- {"data":{"user":{"id":1,"email":"example-user@example.com"},"account":null}}
16
+ {"data":{"user":{"id":1,"email":"example-user@example.com","created_at":"2015-09-18T23:04:37Z","updated_at":"2016-06-09T20:03:39Z"},"account":null}}
@@ -13,4 +13,4 @@ X-Request-Id: 15a7f3a5-7ee5-4e36-ac5a-8c21c2e1fffd
13
13
  X-Runtime: 0.141588
14
14
  Strict-Transport-Security: max-age=31536000
15
15
 
16
- {"data":{"user":null,"account":{"id":1,"email":"example-account@example.com"}}}
16
+ {"data":{"user":null,"account":{"id":1,"email":"example-account@example.com","plan_identifier":"dnsimple-professional","created_at":"2015-09-18T23:04:37Z","updated_at":"2016-06-09T20:03:39Z"}}}
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: dnsimple
3
3
  version: !ruby/object:Gem::Version
4
- version: 4.3.0
4
+ version: 4.4.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Anthony Eden
@@ -11,7 +11,7 @@ authors:
11
11
  autorequire:
12
12
  bindir: bin
13
13
  cert_chain: []
14
- date: 2017-06-20 00:00:00.000000000 Z
14
+ date: 2018-01-23 00:00:00.000000000 Z
15
15
  dependencies:
16
16
  - !ruby/object:Gem::Dependency
17
17
  name: httparty
@@ -146,6 +146,8 @@ files:
146
146
  - lib/dnsimple/struct/account.rb
147
147
  - lib/dnsimple/struct/certificate.rb
148
148
  - lib/dnsimple/struct/certificate_bundle.rb
149
+ - lib/dnsimple/struct/certificate_purchase.rb
150
+ - lib/dnsimple/struct/certificate_renewal.rb
149
151
  - lib/dnsimple/struct/collaborator.rb
150
152
  - lib/dnsimple/struct/contact.rb
151
153
  - lib/dnsimple/struct/delegation_signer_record.rb
@@ -210,6 +212,7 @@ files:
210
212
  - spec/fixtures.http/appliedServices/success.http
211
213
  - spec/fixtures.http/applyService/success.http
212
214
  - spec/fixtures.http/applyTemplate/success.http
215
+ - spec/fixtures.http/authorizeDomainTransferOut/success.http
213
216
  - spec/fixtures.http/badgateway.http
214
217
  - spec/fixtures.http/changeDomainDelegation/success.http
215
218
  - spec/fixtures.http/changeDomainDelegationFromVanity/success.http
@@ -268,6 +271,8 @@ files:
268
271
  - spec/fixtures.http/getZoneFile/success.http
269
272
  - spec/fixtures.http/getZoneRecord/success.http
270
273
  - spec/fixtures.http/initiatePush/success.http
274
+ - spec/fixtures.http/issueLetsencryptCertificate/success.http
275
+ - spec/fixtures.http/issueRenewalLetsencryptCertificate/success.http
271
276
  - spec/fixtures.http/listAccounts/success-account.http
272
277
  - spec/fixtures.http/listAccounts/success-user.http
273
278
  - spec/fixtures.http/listCertificates/success.http
@@ -302,6 +307,8 @@ files:
302
307
  - spec/fixtures.http/pages-1of3.http
303
308
  - spec/fixtures.http/pages-2of3.http
304
309
  - spec/fixtures.http/pages-3of3.http
310
+ - spec/fixtures.http/purchaseLetsencryptCertificate/success.http
311
+ - spec/fixtures.http/purchaseRenewalLetsencryptCertificate/success.http
305
312
  - spec/fixtures.http/registerDomain/success.http
306
313
  - spec/fixtures.http/rejectPush/success.http
307
314
  - spec/fixtures.http/removeCollaborator/success.http
@@ -313,7 +320,6 @@ files:
313
320
  - spec/fixtures.http/transferDomain/error-indnsimple.http
314
321
  - spec/fixtures.http/transferDomain/error-missing-authcode.http
315
322
  - spec/fixtures.http/transferDomain/success.http
316
- - spec/fixtures.http/transferDomainOut/success.http
317
323
  - spec/fixtures.http/unapplyService/success.http
318
324
  - spec/fixtures.http/updateContact/success.http
319
325
  - spec/fixtures.http/updateTemplate/success.http
@@ -344,7 +350,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
344
350
  version: '0'
345
351
  requirements: []
346
352
  rubyforge_project:
347
- rubygems_version: 2.6.10
353
+ rubygems_version: 2.6.13
348
354
  signing_key:
349
355
  specification_version: 4
350
356
  summary: The DNSimple API client for Ruby
@@ -387,6 +393,7 @@ test_files:
387
393
  - spec/fixtures.http/appliedServices/success.http
388
394
  - spec/fixtures.http/applyService/success.http
389
395
  - spec/fixtures.http/applyTemplate/success.http
396
+ - spec/fixtures.http/authorizeDomainTransferOut/success.http
390
397
  - spec/fixtures.http/badgateway.http
391
398
  - spec/fixtures.http/changeDomainDelegation/success.http
392
399
  - spec/fixtures.http/changeDomainDelegationFromVanity/success.http
@@ -445,6 +452,8 @@ test_files:
445
452
  - spec/fixtures.http/getZoneFile/success.http
446
453
  - spec/fixtures.http/getZoneRecord/success.http
447
454
  - spec/fixtures.http/initiatePush/success.http
455
+ - spec/fixtures.http/issueLetsencryptCertificate/success.http
456
+ - spec/fixtures.http/issueRenewalLetsencryptCertificate/success.http
448
457
  - spec/fixtures.http/listAccounts/success-account.http
449
458
  - spec/fixtures.http/listAccounts/success-user.http
450
459
  - spec/fixtures.http/listCertificates/success.http
@@ -479,6 +488,8 @@ test_files:
479
488
  - spec/fixtures.http/pages-1of3.http
480
489
  - spec/fixtures.http/pages-2of3.http
481
490
  - spec/fixtures.http/pages-3of3.http
491
+ - spec/fixtures.http/purchaseLetsencryptCertificate/success.http
492
+ - spec/fixtures.http/purchaseRenewalLetsencryptCertificate/success.http
482
493
  - spec/fixtures.http/registerDomain/success.http
483
494
  - spec/fixtures.http/rejectPush/success.http
484
495
  - spec/fixtures.http/removeCollaborator/success.http
@@ -490,7 +501,6 @@ test_files:
490
501
  - spec/fixtures.http/transferDomain/error-indnsimple.http
491
502
  - spec/fixtures.http/transferDomain/error-missing-authcode.http
492
503
  - spec/fixtures.http/transferDomain/success.http
493
- - spec/fixtures.http/transferDomainOut/success.http
494
504
  - spec/fixtures.http/unapplyService/success.http
495
505
  - spec/fixtures.http/updateContact/success.http
496
506
  - spec/fixtures.http/updateTemplate/success.http