dnsimple 5.2.0 → 6.0.0

Sign up to get free protection for your applications and to get access to all the features.
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 -38
  5. data/.rubocop_todo.yml +63 -5
  6. data/.travis.yml +7 -3
  7. data/CHANGELOG.md +10 -0
  8. data/CONTRIBUTING.md +2 -2
  9. data/Gemfile +3 -1
  10. data/LICENSE.txt +1 -1
  11. data/README.md +4 -4
  12. data/lib/dnsimple/client.rb +11 -3
  13. data/lib/dnsimple/client/domains.rb +0 -18
  14. data/lib/dnsimple/client/registrar.rb +20 -0
  15. data/lib/dnsimple/client/registrar_whois_privacy.rb +1 -1
  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.rb +1 -0
  20. data/lib/dnsimple/struct/certificate.rb +0 -19
  21. data/lib/dnsimple/struct/domain.rb +0 -20
  22. data/lib/dnsimple/struct/domain_price.rb +24 -0
  23. data/lib/dnsimple/version.rb +1 -1
  24. data/spec/dnsimple/client/certificates_spec.rb +0 -1
  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 +1 -29
  31. data/spec/dnsimple/client/registrar_delegation_spec.rb +2 -2
  32. data/spec/dnsimple/client/registrar_spec.rb +46 -3
  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 +0 -1
  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 +0 -1
  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 +0 -1
  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 +0 -1
  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 +0 -1
  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 +0 -1
  108. data/spec/fixtures.http/issueRenewalLetsencryptCertificate/success.http +0 -1
  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 +0 -1
  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 +0 -1
  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 +0 -1
  146. data/spec/fixtures.http/purchaseRenewalLetsencryptCertificate/success.http +0 -1
  147. data/spec/fixtures.http/registerDomain/success.http +0 -1
  148. data/spec/fixtures.http/renewDomain/error-tooearly.http +0 -1
  149. data/spec/fixtures.http/renewDomain/success.http +0 -1
  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 +0 -1
  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
@@ -112,6 +112,7 @@ describe Dnsimple::Client, ".zones" do
112
112
 
113
113
  describe "#create_zone_record" do
114
114
  let(:account_id) { 1010 }
115
+ let(:attributes) { { type: "A", name: "www", content: "127.0.0.1", regions: %w(global) } }
115
116
  let(:zone_id) { "example.com" }
116
117
 
117
118
  before do
@@ -119,7 +120,6 @@ describe Dnsimple::Client, ".zones" do
119
120
  .to_return(read_http_fixture("createZoneRecord/created.http"))
120
121
  end
121
122
 
122
- let(:attributes) { { type: "A", name: "www", content: "127.0.0.1", regions: %w(global) } }
123
123
 
124
124
  it "builds the correct request" do
125
125
  subject.create_zone_record(account_id, zone_id, attributes)
@@ -216,6 +216,7 @@ describe Dnsimple::Client, ".zones" do
216
216
 
217
217
  describe "#update_zone_record" do
218
218
  let(:account_id) { 1010 }
219
+ let(:attributes) { { content: "mxb.example.com", priority: "20", regions: ['global'] } }
219
220
  let(:zone_id) { "example.com" }
220
221
  let(:record_id) { 5 }
221
222
 
@@ -224,7 +225,6 @@ describe Dnsimple::Client, ".zones" do
224
225
  .to_return(read_http_fixture("updateZoneRecord/success.http"))
225
226
  end
226
227
 
227
- let(:attributes) { { content: "mxb.example.com", priority: "20", regions: ['global'] } }
228
228
 
229
229
  it "builds the correct request" do
230
230
  subject.update_zone_record(account_id, zone_id, record_id, attributes)
@@ -89,7 +89,7 @@ describe Dnsimple::Client, ".zones" do
89
89
  expect(WebMock).to have_requested(:get, "https://api.dnsimple.test/v2/#{account_id}/zones?page=1&per_page=100&sort=name:desc")
90
90
  end
91
91
 
92
- it "supports sorting" do
92
+ it "supports filtering" do
93
93
  subject.all_zones(account_id, filter: { name_like: "zone.test" })
94
94
 
95
95
  expect(WebMock).to have_requested(:get, "https://api.dnsimple.test/v2/#{account_id}/zones?page=1&per_page=100&name_like=zone.test")
@@ -2,7 +2,6 @@ HTTP/1.1 200 OK
2
2
  Server: nginx
3
3
  Date: Tue, 14 Jun 2016 12:02:58 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: 2391
@@ -2,7 +2,6 @@ HTTP/1.1 200 OK
2
2
  Server: nginx
3
3
  Date: Tue, 14 Jun 2016 12:05: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: 2390
@@ -2,7 +2,6 @@ HTTP/1.1 201 Created
2
2
  Server: nginx
3
3
  Date: Fri, 07 Oct 2016 08:51:12 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 201 Created
2
2
  Server: nginx
3
3
  Date: Fri, 07 Oct 2016 08:53:41 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 200 OK
2
2
  Server: nginx
3
3
  Date: Wed, 15 Jun 2016 11:09:44 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 202 Accepted
2
2
  Server: nginx
3
3
  Date: Fri, 05 Jun 2020 18:09:42 GMT
4
4
  Content-Type: application/json; charset=utf-8
5
- Transfer-Encoding: identity
6
5
  Connection: keep-alive
7
6
  X-RateLimit-Limit: 2400
8
7
  X-RateLimit-Remaining: 2394
@@ -2,7 +2,6 @@ HTTP/1.1 200 OK
2
2
  Server: nginx
3
3
  Date: Thu, 24 Mar 2016 11:17:01 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: Mon, 11 Jul 2016 09:40: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: 2400
8
7
  X-RateLimit-Remaining: 2399
@@ -2,7 +2,6 @@ HTTP/1.1 200 OK
2
2
  Server: nginx
3
3
  Date: Fri, 26 Feb 2016 16:04:05 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
@@ -0,0 +1,18 @@
1
+ HTTP/1.1 400 Bad Request
2
+ Server: nginx
3
+ Date: Mon, 27 Jul 2020 13:43:02 GMT
4
+ Content-Type: application/json; charset=utf-8
5
+ Connection: keep-alive
6
+ X-RateLimit-Limit: 4800
7
+ X-RateLimit-Remaining: 4786
8
+ X-RateLimit-Reset: 1595859922
9
+ Cache-Control: no-cache
10
+ X-Request-Id: 382b409c-0f90-4758-af3b-0bccd31a9d0d
11
+ X-Runtime: 1.346405
12
+ X-Frame-Options: DENY
13
+ X-Content-Type-Options: nosniff
14
+ X-XSS-Protection: 1; mode=block
15
+ X-Download-Options: noopen
16
+ X-Permitted-Cross-Domain-Policies: none
17
+
18
+ {"message":"`cocotero.love` is not a premium domain for registration"}
@@ -0,0 +1,18 @@
1
+ HTTP/1.1 400 Bad Request
2
+ Server: nginx
3
+ Date: Mon, 27 Jul 2020 13:41:23 GMT
4
+ Content-Type: application/json; charset=utf-8
5
+ Connection: keep-alive
6
+ X-RateLimit-Limit: 2400
7
+ X-RateLimit-Remaining: 2398
8
+ X-RateLimit-Reset: 1595860823
9
+ Cache-Control: no-cache
10
+ X-Request-Id: 6986cca3-4f57-4814-9e81-1c484d61c7ea
11
+ X-Runtime: 0.007339
12
+ X-Frame-Options: DENY
13
+ X-Content-Type-Options: nosniff
14
+ X-XSS-Protection: 1; mode=block
15
+ X-Download-Options: noopen
16
+ X-Permitted-Cross-Domain-Policies: none
17
+
18
+ {"message":"TLD .LOVE is not supported"}
@@ -0,0 +1,20 @@
1
+ HTTP/1.1 200 OK
2
+ Server: nginx
3
+ Date: Mon, 27 Jul 2020 13:58:50 GMT
4
+ Content-Type: application/json; charset=utf-8
5
+ Connection: keep-alive
6
+ X-RateLimit-Limit: 4800
7
+ X-RateLimit-Remaining: 4769
8
+ X-RateLimit-Reset: 1595859923
9
+ ETag: W/"54b4776b898065f2f551fc33465d0936"
10
+ Cache-Control: max-age=0, private, must-revalidate
11
+ X-Request-Id: 75c5090e-8000-4e95-a516-ffd09383f641
12
+ X-Runtime: 2.380524
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":{"premium_price":"2640.00","action":"registration"}}
@@ -2,7 +2,6 @@ HTTP/1.1 504 Gateway Timeout
2
2
  Server: nginx
3
3
  Date: Mon, 30 Oct 2017 09:09:41 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: Mon, 30 Oct 2017 09:09:41 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: Mon, 30 Oct 2017 09:09:41 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 504 Gateway Timeout
2
2
  Server: nginx
3
3
  Date: Mon, 18 Dec 2017 10:54: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: 2397
@@ -2,7 +2,6 @@ HTTP/1.1 200 OK
2
2
  Server: nginx
3
3
  Date: Mon, 18 Dec 2017 10:54:13 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 200 OK
2
2
  Server: nginx
3
3
  Date: Mon, 18 Dec 2017 10:48:06 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 201 Created
2
2
  Server: nginx
3
3
  Date: Tue, 19 Jan 2016 20:50:26 GMT
4
4
  Content-Type: application/json; charset=utf-8
5
- Transfer-Encoding: chunked
6
5
  Connection: keep-alive
7
6
  Status: 201 Created
8
7
  X-RateLimit-Limit: 4000
@@ -2,7 +2,6 @@ HTTP/1.1 201 Created
2
2
  Server: nginx
3
3
  Date: Fri, 03 Mar 2017 15:24:00 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 400 Bad Request
2
2
  Server: nginx
3
3
  Date: Fri, 03 Mar 2017 15:20:28 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
@@ -2,7 +2,6 @@ HTTP/1.1 201 Created
2
2
  Server: nginx
3
3
  Date: Thu, 04 Jun 2020 19:47:05 GMT
4
4
  Content-Type: application/json; charset=utf-8
5
- Transfer-Encoding: identity
6
5
  Connection: keep-alive
7
6
  X-RateLimit-Limit: 2400
8
7
  X-RateLimit-Remaining: 2378
@@ -1,17 +1,21 @@
1
- HTTP/1.1 201 Created
2
- Server: nginx
3
- Date: Thu, 04 Feb 2016 14:26:51 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: 3991
10
- X-RateLimit-Reset: 1454596042
11
- ETag: W/"10dd958c5a3a43eec0af1d8da655cab0"
12
- Cache-Control: max-age=0, private, must-revalidate
13
- X-Request-Id: fca523a2-aad9-49e6-a828-a0e7711a8501
14
- X-Runtime: 1.711621
15
- Strict-Transport-Security: max-age=31536000
16
-
17
- {"data":{"id":17706,"domain_id":228963,"from":"jim@a-domain.com","to":"jim@another.com","created_at":"2016-02-04T14:26:50Z","updated_at":"2016-02-04T14:26:50Z"}}
1
+ HTTP/1.1 201 Created
2
+ Server: nginx
3
+ Date: Mon, 25 Jan 2021 13:54:40 GMT
4
+ Content-Type: application/json; charset=utf-8
5
+ Connection: keep-alive
6
+ X-RateLimit-Limit: 4800
7
+ X-RateLimit-Remaining: 4772
8
+ X-RateLimit-Reset: 1611583415
9
+ ETag: W/"80ad3ad1e115a8123193447fa003f68a"
10
+ Cache-Control: max-age=0, private, must-revalidate
11
+ X-Request-Id: 1086590f-0e65-4010-8636-031400a662bf
12
+ X-Runtime: 0.880228
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":41872,"domain_id":235146,"alias_email":"example@dnsimple.xyz","destination_email":"example@example.com","created_at":"2021-01-25T13:54:40Z","updated_at":"2021-01-25T13:54:40Z","from":"example@dnsimple.xyz","to":"example@example.com"}}
@@ -0,0 +1,21 @@
1
+ HTTP/1.1 201 Created
2
+ Server: nginx
3
+ Date: Wed, 17 Mar 2021 23:08:42 GMT
4
+ Content-Type: application/json; charset=utf-8
5
+ Connection: keep-alive
6
+ X-RateLimit-Limit: 2400
7
+ X-RateLimit-Remaining: 2388
8
+ X-RateLimit-Reset: 1616024599
9
+ ETag: W/"ceda02163217bdb9e6850e2c36cbf163"
10
+ Cache-Control: max-age=0, private, must-revalidate
11
+ X-Request-Id: 24ed1594-6701-475b-b66b-f85f9fe69736
12
+ X-Runtime: 0.162800
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"}}
@@ -0,0 +1,21 @@
1
+ HTTP/1.1 201 Created
2
+ Server: nginx
3
+ Date: Wed, 17 Mar 2021 23:44:27 GMT
4
+ Content-Type: application/json; charset=utf-8
5
+ Connection: keep-alive
6
+ X-RateLimit-Limit: 2400
7
+ X-RateLimit-Remaining: 2398
8
+ X-RateLimit-Reset: 1616028241
9
+ ETag: W/"9726e9abb694bb7a61777076d14158fd"
10
+ Cache-Control: max-age=0, private, must-revalidate
11
+ X-Request-Id: 967ead79-85e7-4950-aa70-52da90f9abcc
12
+ X-Runtime: 0.294142
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":734,"account_id":531,"name":"secondaryexample.com","reverse":false,"secondary":true,"last_transferred_at":null,"created_at":"2021-03-17T23:44:27Z","updated_at":"2021-03-17T23:44:27Z"}}
@@ -2,7 +2,6 @@ HTTP/1.1 201 Created
2
2
  Server: nginx
3
3
  Date: Thu, 24 Mar 2016 11:09:16 GMT
4
4
  Content-Type: application/json; charset=utf-8
5
- Transfer-Encoding: chunked
6
5
  Connection: keep-alive
7
6
  Status: 201 Created
8
7
  X-RateLimit-Limit: 2400
@@ -2,7 +2,6 @@ HTTP/1.1 201 Created
2
2
  Server: nginx
3
3
  Date: Tue, 03 May 2016 07:51:33 GMT
4
4
  Content-Type: application/json; charset=utf-8
5
- Transfer-Encoding: chunked
6
5
  Connection: keep-alive
7
6
  Status: 201 Created
8
7
  X-RateLimit-Limit: 2400
@@ -2,7 +2,6 @@ HTTP/1.1 201 Created
2
2
  Server: nginx
3
3
  Date: Mon, 15 Feb 2016 17:04:38 GMT
4
4
  Content-Type: application/json; charset=utf-8
5
- Transfer-Encoding: chunked
6
5
  Connection: keep-alive
7
6
  Status: 201 Created
8
7
  X-RateLimit-Limit: 4000
@@ -2,7 +2,6 @@ HTTP/1.1 201 Created
2
2
  Server: nginx
3
3
  Date: Thu, 07 Jan 2016 17:45:13 GMT
4
4
  Content-Type: application/json; charset=utf-8
5
- Transfer-Encoding: chunked
6
5
  Connection: keep-alive
7
6
  Status: 201 Created
8
7
  X-RateLimit-Limit: 4000
@@ -2,7 +2,6 @@ HTTP/1.1 201 Created
2
2
  Server: nginx
3
3
  Date: Thu, 07 Jan 2016 17:45:13 GMT
4
4
  Content-Type: application/json; charset=utf-8
5
- Transfer-Encoding: chunked
6
5
  Connection: keep-alive
7
6
  Status: 201 Created
8
7
  X-RateLimit-Limit: 4000
@@ -0,0 +1,18 @@
1
+ HTTP/1.1 400 Bad Request
2
+ Server: nginx
3
+ Date: Wed, 11 Apr 2018 10:50:21 GMT
4
+ Content-Type: application/json; charset=utf-8
5
+ Connection: keep-alive
6
+ X-RateLimit-Limit: 2400
7
+ X-RateLimit-Remaining: 2397
8
+ X-RateLimit-Reset: 1523447401
9
+ Cache-Control: no-cache
10
+ X-Request-Id: 8d9f3de7-6e42-4a16-82eb-e2434dd58008
11
+ X-Runtime: 0.271090
12
+ X-Content-Type-Options: nosniff
13
+ X-Download-Options: noopen
14
+ X-Frame-Options: DENY
15
+ X-Permitted-Cross-Domain-Policies: none
16
+ X-XSS-Protection: 1; mode=block
17
+
18
+ {"message":"The contact cannot be deleted because it's currently in use"}
@@ -1,13 +1,18 @@
1
1
  HTTP/1.1 204 No Content
2
2
  Server: nginx
3
- Date: Thu, 04 Feb 2016 17:14:52 GMT
3
+ Date: Mon, 25 Jan 2021 13:56:43 GMT
4
4
  Connection: keep-alive
5
- Status: 204 No Content
6
- X-RateLimit-Limit: 4000
7
- X-RateLimit-Remaining: 3999
8
- X-RateLimit-Reset: 1454609692
5
+ X-RateLimit-Limit: 4800
6
+ X-RateLimit-Remaining: 4765
7
+ X-RateLimit-Reset: 1611583416
9
8
  Cache-Control: no-cache
10
- X-Request-Id: 716d181c-495d-47ab-ab79-391a70e8abe1
11
- X-Runtime: 0.145208
9
+ X-Request-Id: bfaceb73-4fd3-4490-8528-472ec1df3526
10
+ X-Runtime: 0.506670
11
+ X-Frame-Options: DENY
12
+ X-Content-Type-Options: nosniff
13
+ X-XSS-Protection: 1; mode=block
14
+ X-Download-Options: noopen
15
+ X-Permitted-Cross-Domain-Policies: none
16
+ Content-Security-Policy: frame-ancestors 'none'
12
17
  Strict-Transport-Security: max-age=31536000
13
18