dnsimple 5.0.0 → 6.0.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.
Files changed (167) hide show
  1. checksums.yaml +4 -4
  2. data/.gitignore +3 -0
  3. data/.rubocop.yml +4 -1
  4. data/.rubocop_dnsimple.yml +1 -23
  5. data/.rubocop_todo.yml +63 -5
  6. data/.travis.yml +7 -3
  7. data/CHANGELOG.md +17 -0
  8. data/CONTRIBUTING.md +8 -2
  9. data/Gemfile +3 -1
  10. data/LICENSE.txt +1 -1
  11. data/README.md +4 -4
  12. data/lib/dnsimple/client/domains.rb +1 -19
  13. data/lib/dnsimple/client/registrar.rb +20 -0
  14. data/lib/dnsimple/client/registrar_whois_privacy.rb +1 -1
  15. data/lib/dnsimple/client.rb +11 -3
  16. data/lib/dnsimple/default.rb +1 -1
  17. data/lib/dnsimple/extra.rb +1 -1
  18. data/lib/dnsimple/response.rb +1 -3
  19. data/lib/dnsimple/struct/certificate.rb +2 -2
  20. data/lib/dnsimple/struct/domain.rb +2 -3
  21. data/lib/dnsimple/struct/domain_price.rb +24 -0
  22. data/lib/dnsimple/struct.rb +1 -0
  23. data/lib/dnsimple/version.rb +1 -1
  24. data/spec/dnsimple/client/certificates_spec.rb +33 -33
  25. data/spec/dnsimple/client/client_service_spec.rb +1 -1
  26. data/spec/dnsimple/client/contacts_spec.rb +2 -2
  27. data/spec/dnsimple/client/domains_delegation_signer_records_spec.rb +1 -1
  28. data/spec/dnsimple/client/domains_email_forwards_spec.rb +8 -8
  29. data/spec/dnsimple/client/domains_pushes_spec.rb +2 -2
  30. data/spec/dnsimple/client/domains_spec.rb +14 -41
  31. data/spec/dnsimple/client/registrar_delegation_spec.rb +2 -2
  32. data/spec/dnsimple/client/registrar_spec.rb +62 -19
  33. data/spec/dnsimple/client/services_domains_spec.rb +2 -4
  34. data/spec/dnsimple/client/services_spec.rb +1 -3
  35. data/spec/dnsimple/client/templates_records_spec.rb +1 -1
  36. data/spec/dnsimple/client/templates_spec.rb +2 -2
  37. data/spec/dnsimple/client/webhooks_spec.rb +1 -1
  38. data/spec/dnsimple/client/zones_records_spec.rb +2 -2
  39. data/spec/dnsimple/client/zones_spec.rb +1 -1
  40. data/spec/fixtures.http/accounts/success-account.http +0 -1
  41. data/spec/fixtures.http/accounts/success-user.http +0 -1
  42. data/spec/fixtures.http/addCollaborator/invite-success.http +0 -1
  43. data/spec/fixtures.http/addCollaborator/success.http +0 -1
  44. data/spec/fixtures.http/appliedServices/success.http +0 -1
  45. data/spec/fixtures.http/cancelDomainTransfer/success.http +18 -30
  46. data/spec/fixtures.http/changeDomainDelegation/success.http +0 -1
  47. data/spec/fixtures.http/changeDomainDelegationToVanity/success.http +0 -1
  48. data/spec/fixtures.http/checkDomain/success.http +0 -1
  49. data/spec/fixtures.http/checkDomainPremiumPrice/error_400_not_a_premium_domain.http +18 -0
  50. data/spec/fixtures.http/checkDomainPremiumPrice/error_400_tld_not_supported.http +18 -0
  51. data/spec/fixtures.http/checkDomainPremiumPrice/success.http +20 -0
  52. data/spec/fixtures.http/checkZoneDistribution/error.http +0 -1
  53. data/spec/fixtures.http/checkZoneDistribution/failure.http +0 -1
  54. data/spec/fixtures.http/checkZoneDistribution/success.http +0 -1
  55. data/spec/fixtures.http/checkZoneRecordDistribution/error.http +0 -1
  56. data/spec/fixtures.http/checkZoneRecordDistribution/failure.http +0 -1
  57. data/spec/fixtures.http/checkZoneRecordDistribution/success.http +0 -1
  58. data/spec/fixtures.http/createContact/created.http +0 -1
  59. data/spec/fixtures.http/createDelegationSignerRecord/created.http +0 -1
  60. data/spec/fixtures.http/createDelegationSignerRecord/validation-error.http +0 -1
  61. data/spec/fixtures.http/createDomain/created.http +20 -16
  62. data/spec/fixtures.http/createEmailForward/created.http +21 -17
  63. data/spec/fixtures.http/createPrimaryServer/created.http +21 -0
  64. data/spec/fixtures.http/createSecondaryZone/created.http +21 -0
  65. data/spec/fixtures.http/createTemplate/created.http +0 -1
  66. data/spec/fixtures.http/createTemplateRecord/created.http +0 -1
  67. data/spec/fixtures.http/createWebhook/created.http +0 -1
  68. data/spec/fixtures.http/createZoneRecord/created-apex.http +0 -1
  69. data/spec/fixtures.http/createZoneRecord/created.http +0 -1
  70. data/spec/fixtures.http/deleteContact/error-contact-in-use.http +18 -0
  71. data/spec/fixtures.http/deleteEmailForward/success.http +12 -7
  72. data/spec/fixtures.http/disableDnssec/not-enabled.http +0 -1
  73. data/spec/fixtures.http/disableWhoisPrivacy/success.http +0 -1
  74. data/spec/fixtures.http/downloadCertificate/success.http +0 -1
  75. data/spec/fixtures.http/enableDnssec/success.http +0 -1
  76. data/spec/fixtures.http/enableVanityNameServers/success.http +0 -1
  77. data/spec/fixtures.http/enableWhoisPrivacy/created.http +0 -1
  78. data/spec/fixtures.http/enableWhoisPrivacy/success.http +0 -1
  79. data/spec/fixtures.http/getCertificate/success.http +10 -11
  80. data/spec/fixtures.http/getCertificatePrivateKey/success.http +0 -1
  81. data/spec/fixtures.http/getContact/success.http +0 -1
  82. data/spec/fixtures.http/getDelegationSignerRecord/success.http +0 -1
  83. data/spec/fixtures.http/getDnssec/success.http +0 -1
  84. data/spec/fixtures.http/getDomain/success.http +13 -9
  85. data/spec/fixtures.http/getDomainDelegation/success-empty.http +0 -1
  86. data/spec/fixtures.http/getDomainDelegation/success.http +0 -1
  87. data/spec/fixtures.http/getDomainPremiumPrice/failure.http +0 -1
  88. data/spec/fixtures.http/getDomainPremiumPrice/success.http +0 -1
  89. data/spec/fixtures.http/getDomainPrices/failure.http +19 -0
  90. data/spec/fixtures.http/getDomainPrices/success.http +21 -0
  91. data/spec/fixtures.http/getDomainTransfer/success.http +20 -30
  92. data/spec/fixtures.http/getEmailForward/success.http +14 -10
  93. data/spec/fixtures.http/getPrimaryServer/success.http +21 -0
  94. data/spec/fixtures.http/getService/success.http +0 -1
  95. data/spec/fixtures.http/getTemplate/success.http +0 -1
  96. data/spec/fixtures.http/getTemplateRecord/success.http +0 -1
  97. data/spec/fixtures.http/getTld/success.http +0 -1
  98. data/spec/fixtures.http/getTldExtendedAttributes/success-attributes.http +0 -1
  99. data/spec/fixtures.http/getTldExtendedAttributes/success-noattributes.http +0 -1
  100. data/spec/fixtures.http/getTldExtendedAttributes/success.http +0 -1
  101. data/spec/fixtures.http/getWebhook/success.http +0 -1
  102. data/spec/fixtures.http/getWhoisPrivacy/success.http +0 -1
  103. data/spec/fixtures.http/getZone/success.http +0 -1
  104. data/spec/fixtures.http/getZoneFile/success.http +0 -1
  105. data/spec/fixtures.http/getZoneRecord/success.http +0 -1
  106. data/spec/fixtures.http/initiatePush/success.http +0 -1
  107. data/spec/fixtures.http/issueLetsencryptCertificate/success.http +18 -21
  108. data/spec/fixtures.http/issueRenewalLetsencryptCertificate/success.http +18 -21
  109. data/spec/fixtures.http/linkPrimaryServer/success.http +21 -0
  110. data/spec/fixtures.http/listAccounts/success-account.http +0 -1
  111. data/spec/fixtures.http/listAccounts/success-user.http +0 -1
  112. data/spec/fixtures.http/listCertificates/success.http +10 -11
  113. data/spec/fixtures.http/listCollaborators/success.http +0 -1
  114. data/spec/fixtures.http/listContacts/success.http +0 -1
  115. data/spec/fixtures.http/listDelegationSignerRecords/success.http +0 -1
  116. data/spec/fixtures.http/listDomains/success.http +20 -16
  117. data/spec/fixtures.http/listEmailForwards/success.http +0 -1
  118. data/spec/fixtures.http/listPrimaryServers/success.http +21 -0
  119. data/spec/fixtures.http/listPushes/success.http +0 -1
  120. data/spec/fixtures.http/listServices/success.http +0 -1
  121. data/spec/fixtures.http/listTemplateRecords/success.http +0 -1
  122. data/spec/fixtures.http/listTemplates/success.http +0 -1
  123. data/spec/fixtures.http/listTlds/success.http +0 -1
  124. data/spec/fixtures.http/listWebhooks/success.http +0 -1
  125. data/spec/fixtures.http/listZoneRecords/success.http +0 -1
  126. data/spec/fixtures.http/listZones/success.http +0 -1
  127. data/spec/fixtures.http/method-not-allowed.http +0 -1
  128. data/spec/fixtures.http/notfound-certificate.http +0 -1
  129. data/spec/fixtures.http/notfound-collaborator.http +0 -1
  130. data/spec/fixtures.http/notfound-contact.http +0 -1
  131. data/spec/fixtures.http/notfound-delegationsignerrecord.http +0 -1
  132. data/spec/fixtures.http/notfound-domain.http +0 -1
  133. data/spec/fixtures.http/notfound-domainpush.http +0 -1
  134. data/spec/fixtures.http/notfound-emailforward.http +0 -1
  135. data/spec/fixtures.http/notfound-record.http +0 -1
  136. data/spec/fixtures.http/notfound-template.http +0 -1
  137. data/spec/fixtures.http/notfound-webhook.http +0 -1
  138. data/spec/fixtures.http/notfound-whoisprivacy.http +0 -1
  139. data/spec/fixtures.http/notfound-zone.http +0 -1
  140. data/spec/fixtures.http/oauthAccessToken/error-invalid-request.http +0 -1
  141. data/spec/fixtures.http/oauthAccessToken/success.http +0 -1
  142. data/spec/fixtures.http/pages-1of3.http +0 -1
  143. data/spec/fixtures.http/pages-2of3.http +0 -1
  144. data/spec/fixtures.http/pages-3of3.http +0 -1
  145. data/spec/fixtures.http/purchaseLetsencryptCertificate/success.http +20 -21
  146. data/spec/fixtures.http/purchaseRenewalLetsencryptCertificate/success.http +20 -21
  147. data/spec/fixtures.http/registerDomain/success.http +1 -2
  148. data/spec/fixtures.http/renewDomain/error-tooearly.http +0 -1
  149. data/spec/fixtures.http/renewDomain/success.http +1 -2
  150. data/spec/fixtures.http/renewWhoisPrivacy/success.http +0 -1
  151. data/spec/fixtures.http/renewWhoisPrivacy/whois-privacy-duplicated-order.http +0 -1
  152. data/spec/fixtures.http/renewWhoisPrivacy/whois-privacy-not-found.http +0 -1
  153. data/spec/fixtures.http/response.http +0 -1
  154. data/spec/fixtures.http/transferDomain/error-indnsimple.http +0 -1
  155. data/spec/fixtures.http/transferDomain/error-missing-authcode.http +0 -1
  156. data/spec/fixtures.http/transferDomain/success.http +1 -2
  157. data/spec/fixtures.http/unlinkPrimaryServer/success.http +21 -0
  158. data/spec/fixtures.http/updateContact/success.http +0 -1
  159. data/spec/fixtures.http/updateTemplate/success.http +0 -1
  160. data/spec/fixtures.http/updateZoneRecord/success.http +0 -1
  161. data/spec/fixtures.http/validation-error.http +0 -1
  162. data/spec/fixtures.http/whoami/success-account.http +0 -1
  163. data/spec/fixtures.http/whoami/success-user.http +0 -1
  164. data/spec/fixtures.http/whoami/success.http +0 -1
  165. data/spec/spec_helper.rb +1 -1
  166. metadata +31 -8
  167. data/spec/fixtures.http/resetDomainToken/success.http +0 -17
@@ -2,7 +2,6 @@ HTTP/1.1 404 Not Found
2
2
  Server: nginx
3
3
  Date: Tue, 19 Jul 2016 08:56:34 GMT
4
4
  Content-Type: application/json; charset=utf-8
5
- Transfer-Encoding: chunked
6
5
  Connection: keep-alive
7
6
  Cache-Control: no-cache
8
7
  X-Request-Id: 9a51fa7e-cc9b-498b-bf8d-ee3b2819c0c6
@@ -2,7 +2,6 @@ HTTP/1.1 404 Not Found
2
2
  Server: nginx
3
3
  Date: Mon, 21 Nov 2016 09:32:48 GMT
4
4
  Content-Type: application/json; charset=utf-8
5
- Transfer-Encoding: chunked
6
5
  Connection: keep-alive
7
6
  Cache-Control: no-cache
8
7
  X-Request-Id: 3e76b10b-412c-42ef-87d1-f8ff327df997
@@ -2,7 +2,6 @@ HTTP/1.1 404 Not Found
2
2
  Server: nginx
3
3
  Date: Tue, 19 Jan 2016 21:04:48 GMT
4
4
  Content-Type: application/json; charset=utf-8
5
- Transfer-Encoding: chunked
6
5
  Connection: keep-alive
7
6
  Status: 404 Not Found
8
7
  Cache-Control: no-cache
@@ -2,7 +2,6 @@ HTTP/1.1 404 Not Found
2
2
  Server: nginx
3
3
  Date: Thu, 04 Feb 2016 14:44:56 GMT
4
4
  Content-Type: application/json; charset=utf-8
5
- Transfer-Encoding: chunked
6
5
  Connection: keep-alive
7
6
  Status: 404 Not Found
8
7
  Cache-Control: no-cache
@@ -2,7 +2,6 @@ HTTP/1.1 404 Not Found
2
2
  Server: nginx
3
3
  Date: Wed, 16 Dec 2015 22:07:20 GMT
4
4
  Content-Type: application/json; charset=utf-8
5
- Transfer-Encoding: chunked
6
5
  Connection: keep-alive
7
6
  Strict-Transport-Security: max-age=31536000
8
7
  Cache-Control: no-cache
@@ -2,7 +2,6 @@ HTTP/1.1 404 Not Found
2
2
  Server: nginx
3
3
  Date: Thu, 04 Feb 2016 14:44:56 GMT
4
4
  Content-Type: application/json; charset=utf-8
5
- Transfer-Encoding: chunked
6
5
  Connection: keep-alive
7
6
  Status: 404 Not Found
8
7
  Cache-Control: no-cache
@@ -2,7 +2,6 @@ HTTP/1.1 404 Not Found
2
2
  Server: nginx
3
3
  Date: Thu, 04 Feb 2016 14:44:56 GMT
4
4
  Content-Type: application/json; charset=utf-8
5
- Transfer-Encoding: chunked
6
5
  Connection: keep-alive
7
6
  Status: 404 Not Found
8
7
  Cache-Control: no-cache
@@ -2,7 +2,6 @@ HTTP/1.1 404 Not Found
2
2
  Server: nginx
3
3
  Date: Fri, 22 Jan 2016 16:46:07 GMT
4
4
  Content-Type: application/json; charset=utf-8
5
- Transfer-Encoding: chunked
6
5
  Connection: keep-alive
7
6
  Status: 404 Not Found
8
7
  Cache-Control: no-cache
@@ -2,7 +2,6 @@ HTTP/1.1 404 Not Found
2
2
  Server: nginx
3
3
  Date: Wed, 04 May 2016 09:35:45 GMT
4
4
  Content-Type: application/json; charset=utf-8
5
- Transfer-Encoding: chunked
6
5
  Connection: keep-alive
7
6
  Status: 404 Not Found
8
7
  Cache-Control: no-cache
@@ -2,7 +2,6 @@ HTTP/1.1 404 Not Found
2
2
  Server: nginx
3
3
  Date: Thu, 03 Mar 2016 11:55:29 GMT
4
4
  Content-Type: application/json; charset=utf-8
5
- Transfer-Encoding: chunked
6
5
  Connection: keep-alive
7
6
  Status: 404 Not Found
8
7
  Cache-Control: no-cache
@@ -2,7 +2,6 @@ HTTP/1.1 404 Not Found
2
2
  Server: nginx
3
3
  Date: Sat, 13 Feb 2016 14:34:32 GMT
4
4
  Content-Type: application/json; charset=utf-8
5
- Transfer-Encoding: chunked
6
5
  Connection: keep-alive
7
6
  Status: 404 Not Found
8
7
  Cache-Control: no-cache
@@ -2,7 +2,6 @@ HTTP/1.1 404 Not Found
2
2
  Server: nginx
3
3
  Date: Fri, 22 Jan 2016 16:46:02 GMT
4
4
  Content-Type: application/json; charset=utf-8
5
- Transfer-Encoding: chunked
6
5
  Connection: keep-alive
7
6
  Status: 404 Not Found
8
7
  Cache-Control: no-cache
@@ -2,7 +2,6 @@ HTTP/1.1 400 Bad Request
2
2
  Server: nginx
3
3
  Date: Mon, 08 Feb 2016 21:24:19 GMT
4
4
  Content-Type: application/json; charset=utf-8
5
- Transfer-Encoding: chunked
6
5
  Connection: keep-alive
7
6
  X-RateLimit-Limit: 30
8
7
  X-RateLimit-Remaining: 29
@@ -2,7 +2,6 @@ HTTP/1.1 200 OK
2
2
  Server: nginx
3
3
  Date: Mon, 08 Feb 2016 21:24:19 GMT
4
4
  Content-Type: application/json; charset=utf-8
5
- Transfer-Encoding: chunked
6
5
  Connection: keep-alive
7
6
  Status: 200 OK
8
7
  X-RateLimit-Limit: 30
@@ -2,7 +2,6 @@ HTTP/1.1 200 OK
2
2
  Server: nginx
3
3
  Date: Wed, 16 Dec 2015 13:36:11 GMT
4
4
  Content-Type: application/json; charset=utf-8
5
- Transfer-Encoding: chunked
6
5
  Connection: keep-alive
7
6
  X-RateLimit-Limit: 4000
8
7
  X-RateLimit-Remaining: 3997
@@ -2,7 +2,6 @@ HTTP/1.1 200 OK
2
2
  Server: nginx
3
3
  Date: Wed, 16 Dec 2015 13:36:11 GMT
4
4
  Content-Type: application/json; charset=utf-8
5
- Transfer-Encoding: chunked
6
5
  Connection: keep-alive
7
6
  X-RateLimit-Limit: 4000
8
7
  X-RateLimit-Remaining: 3997
@@ -2,7 +2,6 @@ HTTP/1.1 200 OK
2
2
  Server: nginx
3
3
  Date: Wed, 16 Dec 2015 13:36:11 GMT
4
4
  Content-Type: application/json; charset=utf-8
5
- Transfer-Encoding: chunked
6
5
  Connection: keep-alive
7
6
  X-RateLimit-Limit: 4000
8
7
  X-RateLimit-Remaining: 3997
@@ -1,21 +1,20 @@
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}}
1
+ HTTP/1.1 201 Created
2
+ Server: nginx
3
+ Date: Thu, 18 Jun 2020 18:54:17 GMT
4
+ Content-Type: application/json; charset=utf-8
5
+ Connection: keep-alive
6
+ X-RateLimit-Limit: 4800
7
+ X-RateLimit-Remaining: 4799
8
+ X-RateLimit-Reset: 1592510057
9
+ ETag: W/"36ffdd6505ed488a3aeeaace031c5869"
10
+ Cache-Control: max-age=0, private, must-revalidate
11
+ X-Request-Id: 4e99c95d-6d19-48ea-8d63-e68432631c90
12
+ X-Runtime: 0.098745
13
+ X-Frame-Options: DENY
14
+ X-Content-Type-Options: nosniff
15
+ X-XSS-Protection: 1; mode=block
16
+ X-Download-Options: noopen
17
+ X-Permitted-Cross-Domain-Policies: none
18
+ Strict-Transport-Security: max-age=31536000
19
+
20
+ {"data":{"id":101967,"certificate_id":101967,"state":"new","auto_renew":false,"created_at":"2020-06-18T18:54:17Z","updated_at":"2020-06-18T18:54:17Z"}}
@@ -1,21 +1,20 @@
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"}}
1
+ HTTP/1.1 201 Created
2
+ Server: nginx
3
+ Date: Thu, 18 Jun 2020 19:56:20 GMT
4
+ Content-Type: application/json; charset=utf-8
5
+ Connection: keep-alive
6
+ X-RateLimit-Limit: 4800
7
+ X-RateLimit-Remaining: 4799
8
+ X-RateLimit-Reset: 1592513780
9
+ ETag: W/"84dd908f85153590082766bd8d1f1056"
10
+ Cache-Control: max-age=0, private, must-revalidate
11
+ X-Request-Id: f43f4d80-a7eb-43d3-b1ec-95eba413894e
12
+ X-Runtime: 0.091216
13
+ X-Frame-Options: DENY
14
+ X-Content-Type-Options: nosniff
15
+ X-XSS-Protection: 1; mode=block
16
+ X-Download-Options: noopen
17
+ X-Permitted-Cross-Domain-Policies: none
18
+ Strict-Transport-Security: max-age=31536000
19
+
20
+ {"data":{"id":65082,"old_certificate_id":101967,"new_certificate_id":101972,"state":"new","auto_renew":false,"created_at":"2020-06-18T19:56:20Z","updated_at":"2020-06-18T19:56:20Z"}}
@@ -2,7 +2,6 @@ HTTP/1.1 201 Created
2
2
  Server: nginx
3
3
  Date: Fri, 09 Dec 2016 19:35:38 GMT
4
4
  Content-Type: application/json; charset=utf-8
5
- Transfer-Encoding: chunked
6
5
  Connection: keep-alive
7
6
  X-RateLimit-Limit: 2400
8
7
  X-RateLimit-Remaining: 2396
@@ -18,4 +17,4 @@ X-Permitted-Cross-Domain-Policies: none
18
17
  X-XSS-Protection: 1; mode=block
19
18
  Strict-Transport-Security: max-age=31536000
20
19
 
21
- {"data":{"id":1,"domain_id":999,"registrant_id":2,"period":1,"state":"new","auto_renew":false,"whois_privacy":false,"premium_price":null,"created_at":"2016-12-09T19:35:31Z","updated_at":"2016-12-09T19:35:31Z"}}
20
+ {"data":{"id":1,"domain_id":999,"registrant_id":2,"period":1,"state":"new","auto_renew":false,"whois_privacy":false,"created_at":"2016-12-09T19:35:31Z","updated_at":"2016-12-09T19:35:31Z"}}
@@ -2,7 +2,6 @@ HTTP/1.1 400 Bad Request
2
2
  Server: nginx
3
3
  Date: Mon, 15 Feb 2016 15:06:35 GMT
4
4
  Content-Type: application/json; charset=utf-8
5
- Transfer-Encoding: chunked
6
5
  Connection: keep-alive
7
6
  Status: 400 Bad Request
8
7
  X-RateLimit-Limit: 4000
@@ -2,7 +2,6 @@ HTTP/1.1 201 Created
2
2
  Server: nginx
3
3
  Date: Fri, 09 Dec 2016 19:46:57 GMT
4
4
  Content-Type: application/json; charset=utf-8
5
- Transfer-Encoding: chunked
6
5
  Connection: keep-alive
7
6
  X-RateLimit-Limit: 2400
8
7
  X-RateLimit-Remaining: 2394
@@ -18,4 +17,4 @@ X-Permitted-Cross-Domain-Policies: none
18
17
  X-XSS-Protection: 1; mode=block
19
18
  Strict-Transport-Security: max-age=31536000
20
19
 
21
- {"data":{"id":1,"domain_id":999,"period":1,"state":"new","premium_price":null,"created_at":"2016-12-09T19:46:45Z","updated_at":"2016-12-09T19:46:45Z"}}
20
+ {"data":{"id":1,"domain_id":999,"period":1,"state":"new","created_at":"2016-12-09T19:46:45Z","updated_at":"2016-12-09T19:46:45Z"}}
@@ -2,7 +2,6 @@ HTTP/1.1 201 Created
2
2
  Server: nginx
3
3
  Date: Thu, 10 Jan 2019 12:12:50 GMT
4
4
  Content-Type: application/json; charset=utf-8
5
- Transfer-Encoding: chunked
6
5
  Connection: keep-alive
7
6
  X-RateLimit-Limit: 2400
8
7
  X-RateLimit-Remaining: 2398
@@ -2,7 +2,6 @@ HTTP/1.1 400 Bad Request
2
2
  Server: nginx
3
3
  Date: Thu, 10 Jan 2019 12:13:21 GMT
4
4
  Content-Type: application/json; charset=utf-8
5
- Transfer-Encoding: chunked
6
5
  Connection: keep-alive
7
6
  X-RateLimit-Limit: 2400
8
7
  X-RateLimit-Remaining: 2397
@@ -2,7 +2,6 @@ HTTP/1.1 400 Bad Request
2
2
  Server: nginx
3
3
  Date: Thu, 10 Jan 2019 12:11:39 GMT
4
4
  Content-Type: application/json; charset=utf-8
5
- Transfer-Encoding: chunked
6
5
  Connection: keep-alive
7
6
  X-RateLimit-Limit: 2400
8
7
  X-RateLimit-Remaining: 2399
@@ -2,7 +2,6 @@ HTTP/1.1 200 OK
2
2
  Server: nginx
3
3
  Date: Fri, 18 Dec 2015 15:19:37 GMT
4
4
  Content-Type: application/json; charset=utf-8
5
- Transfer-Encoding: chunked
6
5
  Connection: keep-alive
7
6
  X-RateLimit-Limit: 4000
8
7
  X-RateLimit-Remaining: 3991
@@ -2,7 +2,6 @@ HTTP/1.1 400 Bad Request
2
2
  Server: nginx
3
3
  Date: Sun, 21 Feb 2016 13:11:54 GMT
4
4
  Content-Type: application/json; charset=utf-8
5
- Transfer-Encoding: chunked
6
5
  Connection: keep-alive
7
6
  Status: 400 Bad Request
8
7
  X-RateLimit-Limit: 4000
@@ -2,7 +2,6 @@ HTTP/1.1 400 Bad Request
2
2
  Server: nginx
3
3
  Date: Sun, 21 Feb 2016 13:11:11 GMT
4
4
  Content-Type: application/json; charset=utf-8
5
- Transfer-Encoding: chunked
6
5
  Connection: keep-alive
7
6
  Status: 400 Bad Request
8
7
  X-RateLimit-Limit: 4000
@@ -2,7 +2,6 @@ HTTP/1.1 201 Created
2
2
  Server: nginx
3
3
  Date: Fri, 09 Dec 2016 19:43:43 GMT
4
4
  Content-Type: application/json; charset=utf-8
5
- Transfer-Encoding: chunked
6
5
  Connection: keep-alive
7
6
  X-RateLimit-Limit: 2400
8
7
  X-RateLimit-Remaining: 2395
@@ -18,4 +17,4 @@ X-Permitted-Cross-Domain-Policies: none
18
17
  X-XSS-Protection: 1; mode=block
19
18
  Strict-Transport-Security: max-age=31536000
20
19
 
21
- {"data":{"id":1,"domain_id":999,"registrant_id":2,"state":"transferring","auto_renew":false,"whois_privacy":false,"premium_price":null,"created_at":"2016-12-09T19:43:41Z","updated_at":"2016-12-09T19:43:43Z"}}
20
+ {"data":{"id":1,"domain_id":999,"registrant_id":2,"state":"transferring","auto_renew":false,"whois_privacy":false,"created_at":"2016-12-09T19:43:41Z","updated_at":"2016-12-09T19:43:43Z"}}
@@ -0,0 +1,21 @@
1
+ HTTP/1.1 200 OK
2
+ Server: nginx
3
+ Date: Wed, 17 Mar 2021 23:36:43 GMT
4
+ Content-Type: application/json; charset=utf-8
5
+ Connection: keep-alive
6
+ X-RateLimit-Limit: 2400
7
+ X-RateLimit-Remaining: 2383
8
+ X-RateLimit-Reset: 1616024599
9
+ ETag: W/"ceda02163217bdb9e6850e2c36cbf163"
10
+ Cache-Control: max-age=0, private, must-revalidate
11
+ X-Request-Id: 789c6feb-63e1-40d6-b2b6-f569b23a507c
12
+ X-Runtime: 0.270968
13
+ X-Frame-Options: DENY
14
+ X-Content-Type-Options: nosniff
15
+ X-XSS-Protection: 1; mode=block
16
+ X-Download-Options: noopen
17
+ X-Permitted-Cross-Domain-Policies: none
18
+ Content-Security-Policy: frame-ancestors 'none'
19
+ Strict-Transport-Security: max-age=31536000
20
+
21
+ {"data":{"id":4,"account_id":531,"name":"PrimaryProduction","ip":"1.2.3.4","port":53,"linked_secondary_zones":[],"created_at":"2021-03-17T23:08:42Z","updated_at":"2021-03-17T23:08:42Z"}}
@@ -2,7 +2,6 @@ HTTP/1.1 200 OK
2
2
  Server: nginx
3
3
  Date: Tue, 19 Jan 2016 21:28:13 GMT
4
4
  Content-Type: application/json; charset=utf-8
5
- Transfer-Encoding: chunked
6
5
  Connection: keep-alive
7
6
  Status: 200 OK
8
7
  X-RateLimit-Limit: 4000
@@ -2,7 +2,6 @@ HTTP/1.1 200 OK
2
2
  Server: nginx
3
3
  Date: Thu, 24 Mar 2016 11:04:55 GMT
4
4
  Content-Type: application/json; charset=utf-8
5
- Transfer-Encoding: chunked
6
5
  Connection: keep-alive
7
6
  Status: 200 OK
8
7
  X-RateLimit-Limit: 2400
@@ -2,7 +2,6 @@ HTTP/1.1 200 OK
2
2
  Server: nginx
3
3
  Date: Wed, 05 Oct 2016 09:59:48 GMT
4
4
  Content-Type: application/json; charset=utf-8
5
- Transfer-Encoding: chunked
6
5
  Connection: keep-alive
7
6
  X-RateLimit-Limit: 2400
8
7
  X-RateLimit-Remaining: 2393
@@ -2,7 +2,6 @@ HTTP/1.1 400 Bad Request
2
2
  Server: nginx
3
3
  Date: Wed, 23 Nov 2016 08:12:57 GMT
4
4
  Content-Type: application/json; charset=utf-8
5
- Transfer-Encoding: chunked
6
5
  Connection: keep-alive
7
6
  X-RateLimit-Limit: 2400
8
7
  X-RateLimit-Remaining: 2396
@@ -2,7 +2,6 @@ HTTP/1.1 200 OK
2
2
  Server: nginx
3
3
  Date: Fri, 18 Dec 2015 15:19:37 GMT
4
4
  Content-Type: application/json; charset=utf-8
5
- Transfer-Encoding: chunked
6
5
  Connection: keep-alive
7
6
  X-RateLimit-Limit: 4000
8
7
  X-RateLimit-Remaining: 3991
@@ -2,7 +2,6 @@ HTTP/1.1 200 OK
2
2
  Server: nginx
3
3
  Date: Fri, 18 Dec 2015 15:19:37 GMT
4
4
  Content-Type: application/json; charset=utf-8
5
- Transfer-Encoding: chunked
6
5
  Connection: keep-alive
7
6
  X-RateLimit-Limit: 4000
8
7
  X-RateLimit-Remaining: 3991
@@ -2,7 +2,6 @@ HTTP/1.1 200 OK
2
2
  Server: nginx
3
3
  Date: Fri, 18 Dec 2015 15:19:37 GMT
4
4
  Content-Type: application/json; charset=utf-8
5
- Transfer-Encoding: chunked
6
5
  Connection: keep-alive
7
6
  X-RateLimit-Limit: 4000
8
7
  X-RateLimit-Remaining: 3991
data/spec/spec_helper.rb CHANGED
@@ -7,7 +7,7 @@ if ENV['COVERALL']
7
7
  Coveralls.wear!
8
8
  end
9
9
 
10
- $:.unshift(File.dirname(__FILE__) + '/lib')
10
+ $:.unshift("#{File.dirname(__FILE__)}/lib")
11
11
  require 'dnsimple'
12
12
 
13
13
  unless defined?(SPEC_ROOT)
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: dnsimple
3
3
  version: !ruby/object:Gem::Version
4
- version: 5.0.0
4
+ version: 6.0.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - DNSimple
8
- autorequire:
8
+ autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2020-05-21 00:00:00.000000000 Z
11
+ date: 2021-04-20 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: httparty
@@ -150,6 +150,7 @@ files:
150
150
  - lib/dnsimple/struct/domain.rb
151
151
  - lib/dnsimple/struct/domain_check.rb
152
152
  - lib/dnsimple/struct/domain_premium_price.rb
153
+ - lib/dnsimple/struct/domain_price.rb
153
154
  - lib/dnsimple/struct/domain_push.rb
154
155
  - lib/dnsimple/struct/domain_registration.rb
155
156
  - lib/dnsimple/struct/domain_renewal.rb
@@ -218,6 +219,9 @@ files:
218
219
  - spec/fixtures.http/changeDomainDelegationFromVanity/success.http
219
220
  - spec/fixtures.http/changeDomainDelegationToVanity/success.http
220
221
  - spec/fixtures.http/checkDomain/success.http
222
+ - spec/fixtures.http/checkDomainPremiumPrice/error_400_not_a_premium_domain.http
223
+ - spec/fixtures.http/checkDomainPremiumPrice/error_400_tld_not_supported.http
224
+ - spec/fixtures.http/checkDomainPremiumPrice/success.http
221
225
  - spec/fixtures.http/checkZoneDistribution/error.http
222
226
  - spec/fixtures.http/checkZoneDistribution/failure.http
223
227
  - spec/fixtures.http/checkZoneDistribution/success.http
@@ -229,11 +233,14 @@ files:
229
233
  - spec/fixtures.http/createDelegationSignerRecord/validation-error.http
230
234
  - spec/fixtures.http/createDomain/created.http
231
235
  - spec/fixtures.http/createEmailForward/created.http
236
+ - spec/fixtures.http/createPrimaryServer/created.http
237
+ - spec/fixtures.http/createSecondaryZone/created.http
232
238
  - spec/fixtures.http/createTemplate/created.http
233
239
  - spec/fixtures.http/createTemplateRecord/created.http
234
240
  - spec/fixtures.http/createWebhook/created.http
235
241
  - spec/fixtures.http/createZoneRecord/created-apex.http
236
242
  - spec/fixtures.http/createZoneRecord/created.http
243
+ - spec/fixtures.http/deleteContact/error-contact-in-use.http
237
244
  - spec/fixtures.http/deleteContact/success.http
238
245
  - spec/fixtures.http/deleteDelegationSignerRecord/success.http
239
246
  - spec/fixtures.http/deleteDomain/success.http
@@ -263,8 +270,11 @@ files:
263
270
  - spec/fixtures.http/getDomainDelegation/success.http
264
271
  - spec/fixtures.http/getDomainPremiumPrice/failure.http
265
272
  - spec/fixtures.http/getDomainPremiumPrice/success.http
273
+ - spec/fixtures.http/getDomainPrices/failure.http
274
+ - spec/fixtures.http/getDomainPrices/success.http
266
275
  - spec/fixtures.http/getDomainTransfer/success.http
267
276
  - spec/fixtures.http/getEmailForward/success.http
277
+ - spec/fixtures.http/getPrimaryServer/success.http
268
278
  - spec/fixtures.http/getService/success.http
269
279
  - spec/fixtures.http/getTemplate/success.http
270
280
  - spec/fixtures.http/getTemplateRecord/success.http
@@ -280,6 +290,7 @@ files:
280
290
  - spec/fixtures.http/initiatePush/success.http
281
291
  - spec/fixtures.http/issueLetsencryptCertificate/success.http
282
292
  - spec/fixtures.http/issueRenewalLetsencryptCertificate/success.http
293
+ - spec/fixtures.http/linkPrimaryServer/success.http
283
294
  - spec/fixtures.http/listAccounts/success-account.http
284
295
  - spec/fixtures.http/listAccounts/success-user.http
285
296
  - spec/fixtures.http/listCertificates/success.http
@@ -288,6 +299,7 @@ files:
288
299
  - spec/fixtures.http/listDelegationSignerRecords/success.http
289
300
  - spec/fixtures.http/listDomains/success.http
290
301
  - spec/fixtures.http/listEmailForwards/success.http
302
+ - spec/fixtures.http/listPrimaryServers/success.http
291
303
  - spec/fixtures.http/listPushes/success.http
292
304
  - spec/fixtures.http/listServices/success.http
293
305
  - spec/fixtures.http/listTemplateRecords/success.http
@@ -324,13 +336,13 @@ files:
324
336
  - spec/fixtures.http/renewWhoisPrivacy/success.http
325
337
  - spec/fixtures.http/renewWhoisPrivacy/whois-privacy-duplicated-order.http
326
338
  - spec/fixtures.http/renewWhoisPrivacy/whois-privacy-not-found.http
327
- - spec/fixtures.http/resetDomainToken/success.http
328
339
  - spec/fixtures.http/response.http
329
340
  - spec/fixtures.http/success-with-malformed-json.http
330
341
  - spec/fixtures.http/transferDomain/error-indnsimple.http
331
342
  - spec/fixtures.http/transferDomain/error-missing-authcode.http
332
343
  - spec/fixtures.http/transferDomain/success.http
333
344
  - spec/fixtures.http/unapplyService/success.http
345
+ - spec/fixtures.http/unlinkPrimaryServer/success.http
334
346
  - spec/fixtures.http/updateContact/success.http
335
347
  - spec/fixtures.http/updateTemplate/success.http
336
348
  - spec/fixtures.http/updateZoneRecord/success.http
@@ -344,7 +356,7 @@ files:
344
356
  homepage: https://github.com/dnsimple/dnsimple-ruby
345
357
  licenses: []
346
358
  metadata: {}
347
- post_install_message:
359
+ post_install_message:
348
360
  rdoc_options: []
349
361
  require_paths:
350
362
  - lib
@@ -359,8 +371,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement
359
371
  - !ruby/object:Gem::Version
360
372
  version: '0'
361
373
  requirements: []
362
- rubygems_version: 3.1.2
363
- signing_key:
374
+ rubygems_version: 3.2.3
375
+ signing_key:
364
376
  specification_version: 4
365
377
  summary: The DNSimple API client for Ruby
366
378
  test_files:
@@ -410,6 +422,9 @@ test_files:
410
422
  - spec/fixtures.http/changeDomainDelegationFromVanity/success.http
411
423
  - spec/fixtures.http/changeDomainDelegationToVanity/success.http
412
424
  - spec/fixtures.http/checkDomain/success.http
425
+ - spec/fixtures.http/checkDomainPremiumPrice/error_400_not_a_premium_domain.http
426
+ - spec/fixtures.http/checkDomainPremiumPrice/error_400_tld_not_supported.http
427
+ - spec/fixtures.http/checkDomainPremiumPrice/success.http
413
428
  - spec/fixtures.http/checkZoneDistribution/error.http
414
429
  - spec/fixtures.http/checkZoneDistribution/failure.http
415
430
  - spec/fixtures.http/checkZoneDistribution/success.http
@@ -421,11 +436,14 @@ test_files:
421
436
  - spec/fixtures.http/createDelegationSignerRecord/validation-error.http
422
437
  - spec/fixtures.http/createDomain/created.http
423
438
  - spec/fixtures.http/createEmailForward/created.http
439
+ - spec/fixtures.http/createPrimaryServer/created.http
440
+ - spec/fixtures.http/createSecondaryZone/created.http
424
441
  - spec/fixtures.http/createTemplate/created.http
425
442
  - spec/fixtures.http/createTemplateRecord/created.http
426
443
  - spec/fixtures.http/createWebhook/created.http
427
444
  - spec/fixtures.http/createZoneRecord/created-apex.http
428
445
  - spec/fixtures.http/createZoneRecord/created.http
446
+ - spec/fixtures.http/deleteContact/error-contact-in-use.http
429
447
  - spec/fixtures.http/deleteContact/success.http
430
448
  - spec/fixtures.http/deleteDelegationSignerRecord/success.http
431
449
  - spec/fixtures.http/deleteDomain/success.http
@@ -455,8 +473,11 @@ test_files:
455
473
  - spec/fixtures.http/getDomainDelegation/success.http
456
474
  - spec/fixtures.http/getDomainPremiumPrice/failure.http
457
475
  - spec/fixtures.http/getDomainPremiumPrice/success.http
476
+ - spec/fixtures.http/getDomainPrices/failure.http
477
+ - spec/fixtures.http/getDomainPrices/success.http
458
478
  - spec/fixtures.http/getDomainTransfer/success.http
459
479
  - spec/fixtures.http/getEmailForward/success.http
480
+ - spec/fixtures.http/getPrimaryServer/success.http
460
481
  - spec/fixtures.http/getService/success.http
461
482
  - spec/fixtures.http/getTemplate/success.http
462
483
  - spec/fixtures.http/getTemplateRecord/success.http
@@ -472,6 +493,7 @@ test_files:
472
493
  - spec/fixtures.http/initiatePush/success.http
473
494
  - spec/fixtures.http/issueLetsencryptCertificate/success.http
474
495
  - spec/fixtures.http/issueRenewalLetsencryptCertificate/success.http
496
+ - spec/fixtures.http/linkPrimaryServer/success.http
475
497
  - spec/fixtures.http/listAccounts/success-account.http
476
498
  - spec/fixtures.http/listAccounts/success-user.http
477
499
  - spec/fixtures.http/listCertificates/success.http
@@ -480,6 +502,7 @@ test_files:
480
502
  - spec/fixtures.http/listDelegationSignerRecords/success.http
481
503
  - spec/fixtures.http/listDomains/success.http
482
504
  - spec/fixtures.http/listEmailForwards/success.http
505
+ - spec/fixtures.http/listPrimaryServers/success.http
483
506
  - spec/fixtures.http/listPushes/success.http
484
507
  - spec/fixtures.http/listServices/success.http
485
508
  - spec/fixtures.http/listTemplateRecords/success.http
@@ -516,13 +539,13 @@ test_files:
516
539
  - spec/fixtures.http/renewWhoisPrivacy/success.http
517
540
  - spec/fixtures.http/renewWhoisPrivacy/whois-privacy-duplicated-order.http
518
541
  - spec/fixtures.http/renewWhoisPrivacy/whois-privacy-not-found.http
519
- - spec/fixtures.http/resetDomainToken/success.http
520
542
  - spec/fixtures.http/response.http
521
543
  - spec/fixtures.http/success-with-malformed-json.http
522
544
  - spec/fixtures.http/transferDomain/error-indnsimple.http
523
545
  - spec/fixtures.http/transferDomain/error-missing-authcode.http
524
546
  - spec/fixtures.http/transferDomain/success.http
525
547
  - spec/fixtures.http/unapplyService/success.http
548
+ - spec/fixtures.http/unlinkPrimaryServer/success.http
526
549
  - spec/fixtures.http/updateContact/success.http
527
550
  - spec/fixtures.http/updateTemplate/success.http
528
551
  - spec/fixtures.http/updateZoneRecord/success.http
@@ -1,17 +0,0 @@
1
- HTTP/1.1 201 Created
2
- Server: nginx
3
- Date: Thu, 04 Feb 2016 10:13:19 GMT
4
- Content-Type: application/json; charset=utf-8
5
- Transfer-Encoding: chunked
6
- Connection: keep-alive
7
- Status: 201 Created
8
- X-RateLimit-Limit: 4000
9
- X-RateLimit-Remaining: 3999
10
- X-RateLimit-Reset: 1454584399
11
- ETag: W/"834381fd3fd0896e344e3fad9e77ab97"
12
- Cache-Control: max-age=0, private, must-revalidate
13
- X-Request-Id: bf1b3976-2edd-4ea6-b606-1d60eaa0403d
14
- X-Runtime: 0.075404
15
- Strict-Transport-Security: max-age=31536000
16
-
17
- {"data":{"id":1,"account_id":1010,"registrant_id":null,"name":"example-alpha.com","unicode_name":"example-alpha.com","token":"domain-token","state":"hosted","auto_renew":false,"private_whois":false,"expires_on":null,"created_at":"2014-12-06T15:56:55Z","updated_at":"2015-12-09T00:20:56Z"}}