dnsimple 12.2.0 → 13.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.
Files changed (38) hide show
  1. checksums.yaml +4 -4
  2. data/.github/dependabot.yml +7 -0
  3. data/.github/workflows/ci.yml +3 -4
  4. data/.github/workflows/release.yml +2 -2
  5. data/.github/workflows/sync-test-fixtures.yml +2 -2
  6. data/CHANGELOG.md +30 -0
  7. data/CONTRIBUTING.md +2 -0
  8. data/RELEASING.md +3 -1
  9. data/lib/dnsimple/client/domains_pushes.rb +6 -3
  10. data/lib/dnsimple/struct/account.rb +3 -0
  11. data/lib/dnsimple/struct/certificate.rb +0 -3
  12. data/lib/dnsimple/struct/domain.rb +2 -2
  13. data/lib/dnsimple/struct/domain_price.rb +2 -2
  14. data/lib/dnsimple/struct/domain_registration.rb +2 -2
  15. data/lib/dnsimple/struct/domain_transfer.rb +3 -0
  16. data/lib/dnsimple/struct/zone_record.rb +1 -0
  17. data/lib/dnsimple/version.rb +1 -1
  18. data/test/dnsimple/client/accounts_test.rb +11 -0
  19. data/test/dnsimple/client/billing_test.rb +14 -1
  20. data/test/dnsimple/client/certificates_test.rb +0 -1
  21. data/test/dnsimple/client/domains_pushes_test.rb +12 -0
  22. data/test/dnsimple/client/domains_test.rb +1 -1
  23. data/test/dnsimple/client/registrar_test.rb +10 -7
  24. data/test/fixtures.http/accounts/success-account.http +1 -1
  25. data/test/fixtures.http/accounts/success-user.http +1 -1
  26. data/test/fixtures.http/cancelDomainTransfer/success.http +1 -1
  27. data/test/fixtures.http/getDomain/success.http +1 -1
  28. data/test/fixtures.http/getDomainPrices/success.http +1 -1
  29. data/test/fixtures.http/getDomainRegistration/success.http +1 -1
  30. data/test/fixtures.http/getDomainTransfer/success.http +1 -1
  31. data/test/fixtures.http/listAccounts/success-account.http +1 -1
  32. data/test/fixtures.http/listAccounts/success-user.http +1 -1
  33. data/test/fixtures.http/listCharges/success.http +1 -1
  34. data/test/fixtures.http/registerDomain/success.http +1 -1
  35. data/test/fixtures.http/transferDomain/success.http +1 -1
  36. data/test/fixtures.http/whoami/success-account.http +1 -1
  37. data/test/fixtures.http/whoami/success.http +1 -1
  38. metadata +2 -2
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 7f407171557923f494c7021338188386bc8960ce0f4b5d8d054a599370e1c9bb
4
- data.tar.gz: 9770d96251d504107ce14afcedf3cade478902ac1533f1836103fca8cf4fe584
3
+ metadata.gz: 637783627a04f5443865b91941ff82803977bf89357346098125d5997e9a39dd
4
+ data.tar.gz: d1558294e61dd2f131124d5f53ca72c530a8266d8f91275e5a396eebc38071e3
5
5
  SHA512:
6
- metadata.gz: 519a34dc4c836058cb9edae0c185abb3c270f1ebac1b5b22202a1b198e148736aff3cc4e002082901656621e71e26a78e0fe5012df6d9421f7129e876e30c6d5
7
- data.tar.gz: d5fad291abd99d373d66158a954780f2b278ccc3d95d01f7552f9689ae8bd5d7f9a91816b127818fc38c1c53f44680c9cce9542cd073f5f4ab8c0c2443543453
6
+ metadata.gz: 1a5328d695bb89fc66b0bd9df582d560c66f0517a627007be24eeac63029417f042bf6fa455e1795103ef38e2df4a2805e85bcf41d5b0cf2db97f2a1a8387dad
7
+ data.tar.gz: de5a226b078b273fe798088a13c494464364d4dc7808a8e1f486c26e6324c6a54834d76ed9d91583dd7f5ade984a72e7feca49bfde44c044cd03cc1d11cb74b4
@@ -17,3 +17,10 @@ updates:
17
17
  labels:
18
18
  - task
19
19
  - dependencies
20
+ cooldown:
21
+ default-days: 3
22
+ groups:
23
+ actions-patch-minor:
24
+ update-types:
25
+ - patch
26
+ - minor
@@ -18,7 +18,7 @@ jobs:
18
18
  runs-on: ubuntu-latest
19
19
  steps:
20
20
  - name: Checkout Code
21
- uses: actions/checkout@v6
21
+ uses: actions/checkout@v7
22
22
  - name: Run markdownlint-cli
23
23
  uses: nosborn/github-action-markdown-cli@v3.5.0
24
24
  with:
@@ -38,11 +38,10 @@ jobs:
38
38
  - '3.4'
39
39
  - '4.0'
40
40
  - 'ruby-head'
41
- - 'truffleruby-head'
42
41
  steps:
43
- - uses: actions/checkout@v6
42
+ - uses: actions/checkout@v7
44
43
  - name: Set up Ruby
45
- uses: ruby/setup-ruby@v1
44
+ uses: ruby/setup-ruby@v1.322.0
46
45
  with:
47
46
  ruby-version: ${{ matrix.ruby-version }}
48
47
  bundler-cache: true
@@ -11,7 +11,7 @@ jobs:
11
11
  runs-on: ubuntu-latest
12
12
  steps:
13
13
  - name: Wait for CI to pass
14
- uses: lewagon/wait-on-check-action@v1.5.0
14
+ uses: lewagon/wait-on-check-action@v1.9.1
15
15
  with:
16
16
  ref: ${{ github.sha }}
17
17
  running-workflow-name: Wait for CI
@@ -23,7 +23,7 @@ jobs:
23
23
  needs: wait-for-ci
24
24
  runs-on: ubuntu-latest
25
25
  steps:
26
- - uses: actions/checkout@v6
26
+ - uses: actions/checkout@v7
27
27
 
28
28
  - name: Release Gem
29
29
  uses: simplyqio/publish-rubygems-action@2.0.0
@@ -9,7 +9,7 @@ jobs:
9
9
  runs-on: ubuntu-latest
10
10
  steps:
11
11
  - name: Checkout repository
12
- uses: actions/checkout@v6
12
+ uses: actions/checkout@v7
13
13
  - name: Sync fixtures
14
14
  id: sync
15
15
  run: |
@@ -19,7 +19,7 @@ jobs:
19
19
  rsync -a --delete "$TMP_DIR/dnsimple-developer-main/fixtures/v2/api/" test/fixtures.http/
20
20
  echo "now=$(date +'%Y-%m-%d %H:%M:%S')" >> "$GITHUB_OUTPUT"
21
21
  - name: Create PR with synced fixtures
22
- uses: peter-evans/create-pull-request@v7
22
+ uses: peter-evans/create-pull-request@v8
23
23
  with:
24
24
  sign-commits: true
25
25
  add-paths: test/fixtures.http
data/CHANGELOG.md CHANGED
@@ -2,6 +2,36 @@
2
2
 
3
3
  This project uses [Semantic Versioning 2.0.0](http://semver.org/), the format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/).
4
4
 
5
+ ## 13.1.0 - 2026-09-17
6
+
7
+ ### Deprecated
8
+
9
+ - Deprecated `parent_id` in `Dnsimple::Struct::ZoneRecord`. The value is always `nil`, and the attribute will be removed in the next major version. (#486)
10
+
11
+ ## 13.0.0 - 2026-05-05
12
+
13
+ ### Changed
14
+
15
+ - **BREAKING**: Renamed `trustee_service` to `trustee` in `Domain`, `DomainRegistration`, and `DomainTransfer`. (#472)
16
+ - **BREAKING**: Renamed `trustee_service_price` to `trustee_price` in `DomainPrice`. (#472)
17
+ - Updated the `listCharges` test fixture to include a certificate purchase entry demonstrating that `product_reference` is a string even when it represents a numeric ID. (#468)
18
+
19
+ ### Removed
20
+
21
+ - **BREAKING**: Removed the deprecated `contact_id` attribute from the `Certificate` struct. The field was deprecated on 2022-05-17 and is no longer required for certificate operations. (#465)
22
+
23
+ ## 12.3.0 - 2026-04-15
24
+
25
+ ### Added
26
+
27
+ - Added `new_account_identifier` option to `initiate_push` for initiating domain pushes by account identifier. (#462)
28
+ - Added `name` to `Account`. (#462)
29
+ - Added support for trustee service in domain transfers. (#464)
30
+
31
+ ### Deprecated
32
+
33
+ - Deprecated `new_account_email` option in `initiate_push`. Use `new_account_identifier` instead. (#462)
34
+
5
35
  ## 12.2.0 - 2026-03-23
6
36
 
7
37
  ### Added
data/CONTRIBUTING.md CHANGED
@@ -32,3 +32,5 @@ When you submit a PR, tests will also be run on the [continuous integration envi
32
32
  ## Changelog
33
33
 
34
34
  We follow the [Common Changelog](https://common-changelog.org/) format for changelog entries.
35
+
36
+ Add new entries to the `## Unreleased` section at the top of `CHANGELOG.md`. When a change requires a major version, append `(requires major version)` to its entry, for example `- Drop support for Ruby < X.Y (requires major version)`. The release process uses this tag to select the next version.
data/RELEASING.md CHANGED
@@ -21,6 +21,8 @@ This document describes the steps to release a new version of DNSimple/Ruby.
21
21
  - **MINOR** version for backwards-compatible functionality additions
22
22
  - **PATCH** version for backwards-compatible bug fixes
23
23
 
24
+ Check the `## Unreleased` section in `CHANGELOG.md` for entries tagged `(requires major version)`. Any such entry requires a **MAJOR** version, whatever the other entries are. Raising the minimum supported Ruby version is always a breaking change, so its changelog entry must carry this tag.
25
+
24
26
  2. **Update the version file** with the new version
25
27
 
26
28
  Edit `version.rb` and update the `VERSION` constant:
@@ -37,7 +39,7 @@ This document describes the steps to release a new version of DNSimple/Ruby.
37
39
 
38
40
  4. **Update the changelog** with the new version
39
41
 
40
- Finalize the `## main` section in `CHANGELOG.md` assigning the version.
42
+ Finalize the `## Unreleased` section in `CHANGELOG.md` assigning the version.
41
43
 
42
44
  5. **Commit the new version**
43
45
 
@@ -7,19 +7,22 @@ module Dnsimple
7
7
  #
8
8
  # @see https://developer.dnsimple.com/v2/domains/pushes/#initiate
9
9
  #
10
- # @example Initiate a domain pushe for example.com:
10
+ # @example Initiate a domain push for example.com using a domain push identifier:
11
+ # client.domains.initiate_push(1010, "example.com", new_account_identifier: "abc123")
12
+ #
13
+ # @example Initiate a domain push for example.com using an account email (deprecated):
11
14
  # client.domains.initiate_push(1010, "example.com", new_account_email: "admin@target-account.test")
12
15
  #
13
16
  # @param account_id [Integer] the account ID
14
17
  # @param domain_id [#to_s] The domain ID or domain name
15
18
  # @param attributes [Hash]
16
- # @option attributes [String] :new_account_email the target account email (mandatory)
19
+ # @option attributes [String] :new_account_identifier the target account identifier
20
+ # @option attributes [String] :new_account_email the target account email (deprecated, use :new_account_identifier instead)
17
21
  # @param options [Hash]
18
22
  # @return [Dnsimple::Response<Dnsimple::Struct::DomainPush>]
19
23
  #
20
24
  # @raise [Dnsimple::RequestError]
21
25
  def initiate_push(account_id, domain_id, attributes, options = {})
22
- Extra.validate_mandatory_attributes(attributes, [:new_account_email])
23
26
  response = client.post(Client.versioned("/%s/domains/%s/pushes" % [account_id, domain_id]), attributes, options)
24
27
 
25
28
  Dnsimple::Response.new(response, Struct::DomainPush.new(response["data"]))
@@ -9,6 +9,9 @@ module Dnsimple
9
9
  # @return [String] The account email.
10
10
  attr_accessor :email
11
11
 
12
+ # @return [String] The account name.
13
+ attr_accessor :name
14
+
12
15
  # @return [String] The identifier of the plan the account is subscribed to.
13
16
  attr_accessor :plan_identifier
14
17
  end
@@ -9,9 +9,6 @@ module Dnsimple
9
9
  # @return [Integer] The associated domain ID.
10
10
  attr_accessor :domain_id
11
11
 
12
- # @return [Integer] The associated contact ID.
13
- attr_accessor :contact_id
14
-
15
12
  # @return [String] The certificate common name.
16
13
  attr_accessor :common_name
17
14
 
@@ -27,8 +27,8 @@ module Dnsimple
27
27
  # @return [Bool] True if the domain WHOIS privacy is enabled, false otherwise.
28
28
  attr_accessor :private_whois
29
29
 
30
- # @return [Bool] True if the domain Trustee service is enabled, false otherwise.
31
- attr_accessor :trustee_service
30
+ # @return [Bool] True if the domain trustee is enabled, false otherwise.
31
+ attr_accessor :trustee
32
32
 
33
33
  # @return [String] The timestamp when domain will expire.
34
34
  attr_accessor :expires_at
@@ -18,8 +18,8 @@ module Dnsimple
18
18
  # @return [Float] The price for transfer
19
19
  attr_accessor :transfer_price
20
20
 
21
- # @return [Float] The Trustee service price
22
- attr_accessor :trustee_service_price
21
+ # @return [Float] The trustee price
22
+ attr_accessor :trustee_price
23
23
  end
24
24
  end
25
25
  end
@@ -24,8 +24,8 @@ module Dnsimple
24
24
  # @return [Bool] True if the domain WHOIS privacy was requested.
25
25
  attr_accessor :whois_privacy
26
26
 
27
- # @return [Bool] True if the domain Trustee service was requested.
28
- attr_accessor :trustee_service
27
+ # @return [Bool] True if trustee was requested.
28
+ attr_accessor :trustee
29
29
 
30
30
  # @return [String] When the domain renewal was created in DNSimple.
31
31
  attr_accessor :created_at
@@ -21,6 +21,9 @@ module Dnsimple
21
21
  # @return [Bool] True if the domain WHOIS privacy was requested.
22
22
  attr_accessor :whois_privacy
23
23
 
24
+ # @return [Bool] True if trustee was requested.
25
+ attr_accessor :trustee
26
+
24
27
  # @return [String,nil] The reason if transfer failed.
25
28
  attr_accessor :status_description
26
29
 
@@ -10,6 +10,7 @@ module Dnsimple
10
10
  attr_accessor :zone_id
11
11
 
12
12
  # @return [Integer] The ID of the parent record, if this record is dependent on another record.
13
+ # @deprecated The value is always nil, and the attribute will be removed in the next major version.
13
14
  attr_accessor :parent_id
14
15
 
15
16
  # @return [String] The type of record, in uppercase.
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module Dnsimple
4
- VERSION = "12.2.0"
4
+ VERSION = "13.1.0"
5
5
  end
@@ -30,4 +30,15 @@ class AccountsTest < Minitest::Test
30
30
  assert_kind_of(Dnsimple::Struct::Account, result.first)
31
31
  assert_kind_of(Dnsimple::Struct::Account, result.last)
32
32
  end
33
+
34
+ test "returns the account name" do
35
+ stub_request(:get, %r{/v2/accounts$})
36
+ .to_return(read_http_fixture("listAccounts/success-account.http"))
37
+
38
+ response = @subject.accounts
39
+
40
+ result = response.data.first
41
+
42
+ assert_equal("John", result.name)
43
+ end
33
44
  end
@@ -41,7 +41,7 @@ class BillingTest < Minitest::Test
41
41
 
42
42
  assert_kind_of(Dnsimple::PaginatedResponse, response)
43
43
  assert_kind_of(Array, response.data)
44
- assert_equal(3, response.data.size)
44
+ assert_equal(4, response.data.size)
45
45
 
46
46
  response.data.each do |result|
47
47
  assert_kind_of(Dnsimple::Struct::Charge, result)
@@ -57,6 +57,19 @@ class BillingTest < Minitest::Test
57
57
  assert_equal("14.5", response.data[0].items[0].amount.to_s("F"))
58
58
  end
59
59
 
60
+ test "returns certificate-purchase charges with string product reference" do
61
+ stub_request(:get, %r{/v2/#{@account_id}/billing/charges})
62
+ .to_return(read_http_fixture("listCharges/success.http"))
63
+
64
+ response = @subject.charges(@account_id)
65
+ cert_charge = response.data[3]
66
+
67
+ assert_equal("5-2", cert_charge.reference)
68
+ assert_equal("certificate-purchase", cert_charge.items[0].product_type)
69
+ assert_kind_of(String, cert_charge.items[0].product_reference)
70
+ assert_equal("42", cert_charge.items[0].product_reference)
71
+ end
72
+
60
73
  test "supports filters" do
61
74
  stub_request(:get, %r{/v2/#{@account_id}/billing/charges})
62
75
  .to_return(read_http_fixture("listCharges/success.http"))
@@ -134,7 +134,6 @@ class CertificatesTest < Minitest::Test
134
134
  assert_kind_of(Dnsimple::Struct::Certificate, result)
135
135
  assert_equal(101967, result.id)
136
136
  assert_equal(289333, result.domain_id)
137
- assert_equal(2511, result.contact_id)
138
137
  assert_equal("www.bingo.pizza", result.common_name)
139
138
  assert_empty(result.alternate_names)
140
139
  assert_equal(1, result.years)
@@ -36,6 +36,18 @@ class DomainsPushesTest < Minitest::Test
36
36
  assert_kind_of(Integer, result.id)
37
37
  end
38
38
 
39
+ test "initiate push with account identifier builds correct request" do
40
+ stub_request(:post, %r{/v2/#{@account_id}/domains/#{@domain_id}/pushes$})
41
+ .to_return(read_http_fixture("initiatePush/success.http"))
42
+
43
+ attributes = { new_account_identifier: "abc123" }
44
+ @subject.initiate_push(@account_id, @domain_id, attributes)
45
+
46
+ assert_requested(:post, "https://api.dnsimple.test/v2/#{@account_id}/domains/#{@domain_id}/pushes",
47
+ body: attributes,
48
+ headers: { "Accept" => "application/json" })
49
+ end
50
+
39
51
  test "pushes builds correct request" do
40
52
  stub_request(:get, %r{/v2/2020/pushes})
41
53
  .to_return(read_http_fixture("listPushes/success.http"))
@@ -172,7 +172,7 @@ class DomainsTest < Minitest::Test
172
172
  assert_equal("registered", result.state)
173
173
  refute(result.auto_renew)
174
174
  refute(result.private_whois)
175
- refute(result.trustee_service)
175
+ refute(result.trustee)
176
176
  assert_equal("2021-06-05T02:15:00Z", result.expires_at)
177
177
  assert_equal("2020-06-04T19:15:14Z", result.created_at)
178
178
  assert_equal("2020-06-04T19:15:21Z", result.updated_at)
@@ -62,10 +62,10 @@ class RegistrarTest < Minitest::Test
62
62
  assert_in_delta(20.0, result.registration_price)
63
63
  assert_in_delta(20.0, result.renewal_price)
64
64
  assert_in_delta(20.0, result.transfer_price)
65
- if result.trustee_service_price.nil?
66
- assert_nil result.trustee_service_price
65
+ if result.trustee_price.nil?
66
+ assert_nil result.trustee_price
67
67
  else
68
- assert_in_delta(20.0, result.trustee_service_price)
68
+ assert_in_delta(20.0, result.trustee_price)
69
69
  end
70
70
  end
71
71
 
@@ -83,7 +83,7 @@ class RegistrarTest < Minitest::Test
83
83
  stub_request(:post, %r{/v2/#{@account_id}/registrar/domains/.+/registrations$})
84
84
  .to_return(read_http_fixture("registerDomain/success.http"))
85
85
 
86
- attributes = { registrant_id: "10", trustee_service: true }
86
+ attributes = { registrant_id: "10", trustee: true }
87
87
  @subject.register_domain(@account_id, domain_name = "example.com", attributes)
88
88
 
89
89
  assert_requested(:post, "https://api.dnsimple.test/v2/#{@account_id}/registrar/domains/#{domain_name}/registrations",
@@ -105,7 +105,7 @@ class RegistrarTest < Minitest::Test
105
105
  assert_kind_of(Dnsimple::Struct::DomainRegistration, result)
106
106
  assert_kind_of(Integer, result.id)
107
107
  assert_kind_of(Integer, result.domain_id)
108
- refute(result.trustee_service)
108
+ refute(result.trustee)
109
109
  end
110
110
 
111
111
  test "register domain when attributes are incomplete raises argument error" do
@@ -138,7 +138,7 @@ class RegistrarTest < Minitest::Test
138
138
  assert_kind_of(Dnsimple::Struct::DomainRegistration, result)
139
139
  assert_kind_of(Integer, result.id)
140
140
  assert_kind_of(Integer, result.domain_id)
141
- refute(result.trustee_service)
141
+ refute(result.trustee)
142
142
  end
143
143
 
144
144
 
@@ -211,7 +211,7 @@ class RegistrarTest < Minitest::Test
211
211
  stub_request(:post, %r{/v2/#{@account_id}/registrar/domains/.+/transfers$})
212
212
  .to_return(read_http_fixture("transferDomain/success.http"))
213
213
 
214
- attributes = { registrant_id: "10", auth_code: "x1y2z3" }
214
+ attributes = { registrant_id: "10", auth_code: "x1y2z3", trustee: true }
215
215
  @subject.transfer_domain(@account_id, domain_name = "example.com", attributes)
216
216
 
217
217
  assert_requested(:post, "https://api.dnsimple.test/v2/#{@account_id}/registrar/domains/#{domain_name}/transfers",
@@ -233,6 +233,7 @@ class RegistrarTest < Minitest::Test
233
233
  assert_kind_of(Dnsimple::Struct::DomainTransfer, result)
234
234
  assert_kind_of(Integer, result.id)
235
235
  assert_kind_of(Integer, result.domain_id)
236
+ refute(result.trustee)
236
237
  end
237
238
 
238
239
  test "transfer domain when attributes are incomplete raises argument error" do
@@ -288,6 +289,7 @@ class RegistrarTest < Minitest::Test
288
289
  assert_equal("cancelled", result.state)
289
290
  refute(result.auto_renew)
290
291
  refute(result.whois_privacy)
292
+ refute(result.trustee)
291
293
  assert_equal("Canceled by customer", result.status_description)
292
294
  assert_equal("2020-06-05T18:08:00Z", result.created_at)
293
295
  assert_equal("2020-06-05T18:10:01Z", result.updated_at)
@@ -321,6 +323,7 @@ class RegistrarTest < Minitest::Test
321
323
  assert_equal("transferring", result.state)
322
324
  refute(result.auto_renew)
323
325
  refute(result.whois_privacy)
326
+ refute(result.trustee)
324
327
  assert_nil(result.status_description)
325
328
  assert_equal("2020-06-05T18:08:00Z", result.created_at)
326
329
  assert_equal("2020-06-05T18:08:04Z", result.updated_at)
@@ -17,4 +17,4 @@ x-permitted-cross-domain-policies: none
17
17
  x-xss-protection: 1; mode=block
18
18
  strict-transport-security: max-age=31536000
19
19
 
20
- {"data":[{"id":123,"email":"john@example.com","plan_identifier":"dnsimple-personal","created_at":"2011-09-11T17:15:58Z","updated_at":"2016-06-03T15:02:26Z"}]}
20
+ {"data":[{"id":123,"email":"john@example.com","name":"John","plan_identifier":"dnsimple-personal","created_at":"2011-09-11T17:15:58Z","updated_at":"2016-06-03T15:02:26Z"}]}
@@ -17,5 +17,5 @@ x-permitted-cross-domain-policies: none
17
17
  x-xss-protection: 1; mode=block
18
18
  strict-transport-security: max-age=31536000
19
19
 
20
- {"data":[{"id":123,"email":"john@example.com","plan_identifier":"dnsimple-personal","created_at":"2011-09-11T17:15:58Z","updated_at":"2016-06-03T15:02:26Z"},{"id":456,"email":"ops@company.com","plan_identifier":"teams-v1-monthly","created_at":"2012-03-16T16:02:54Z","updated_at":"2016-06-14T11:23:16Z"}]}
20
+ {"data":[{"id":123,"email":"john@example.com","name":"John","plan_identifier":"dnsimple-personal","created_at":"2011-09-11T17:15:58Z","updated_at":"2016-06-03T15:02:26Z"},{"id":456,"email":"ops@company.com","name":"Ops Company","plan_identifier":"teams-v1-monthly","created_at":"2012-03-16T16:02:54Z","updated_at":"2016-06-14T11:23:16Z"}]}
21
21
 
@@ -15,4 +15,4 @@ x-xss-protection: 1; mode=block
15
15
  x-download-options: noopen
16
16
  x-permitted-cross-domain-policies: none
17
17
 
18
- {"data":{"id":361,"domain_id":182245,"registrant_id":2715,"state":"transferring","auto_renew":false,"whois_privacy":false,"status_description":null,"created_at":"2020-06-05T18:08:00Z","updated_at":"2020-06-05T18:08:04Z"}}
18
+ {"data":{"id":361,"domain_id":182245,"registrant_id":2715,"state":"transferring","auto_renew":false,"whois_privacy":false,"trustee":false,"status_description":null,"created_at":"2020-06-05T18:08:00Z","updated_at":"2020-06-05T18:08:04Z"}}
@@ -17,4 +17,4 @@ x-download-options: noopen
17
17
  x-permitted-cross-domain-policies: none
18
18
  strict-transport-security: max-age=31536000
19
19
 
20
- {"data":{"id":181984,"account_id":1385,"registrant_id":2715,"name":"example-alpha.com","unicode_name":"example-alpha.com","state":"registered","auto_renew":false,"private_whois":false,"trustee_service":false,"expires_on":"2021-06-05","expires_at":"2021-06-05T02:15:00Z","created_at":"2020-06-04T19:15:14Z","updated_at":"2020-06-04T19:15:21Z"}}
20
+ {"data":{"id":181984,"account_id":1385,"registrant_id":2715,"name":"example-alpha.com","unicode_name":"example-alpha.com","state":"registered","auto_renew":false,"private_whois":false,"trustee":false,"expires_on":"2021-06-05","expires_at":"2021-06-05T02:15:00Z","created_at":"2020-06-04T19:15:14Z","updated_at":"2020-06-04T19:15:21Z"}}
@@ -18,4 +18,4 @@ x-permitted-cross-domain-policies: none
18
18
  content-security-policy: frame-ancestors 'none'
19
19
  strict-transport-security: max-age=31536000
20
20
 
21
- {"data":{"domain":"bingo.pizza","premium":true,"registration_price":20.0,"renewal_price":20.0,"transfer_price":20.0,"restore_price":20.0,"trustee_service_price":20.0}}
21
+ {"data":{"domain":"bingo.pizza","premium":true,"registration_price":20.0,"renewal_price":20.0,"transfer_price":20.0,"restore_price":20.0,"trustee_price":20.0}}
@@ -17,4 +17,4 @@ x-download-options: noopen
17
17
  x-permitted-cross-domain-policies: none
18
18
  strict-transport-security: max-age=31536000
19
19
 
20
- {"data":{"id":361,"domain_id":104040,"registrant_id":2715,"period":1,"state":"registering","auto_renew":false,"whois_privacy":false,"trustee_service":false,"created_at":"2023-01-27T17:44:32Z","updated_at":"2023-01-27T17:44:40Z"}}
20
+ {"data":{"id":361,"domain_id":104040,"registrant_id":2715,"period":1,"state":"registering","auto_renew":false,"whois_privacy":false,"trustee":false,"created_at":"2023-01-27T17:44:32Z","updated_at":"2023-01-27T17:44:40Z"}}
@@ -17,4 +17,4 @@ x-download-options: noopen
17
17
  x-permitted-cross-domain-policies: none
18
18
  strict-transport-security: max-age=31536000
19
19
 
20
- {"data":{"id":361,"domain_id":182245,"registrant_id":2715,"state":"cancelled","auto_renew":false,"whois_privacy":false,"status_description":"Canceled by customer","created_at":"2020-06-05T18:08:00Z","updated_at":"2020-06-05T18:10:01Z"}}
20
+ {"data":{"id":361,"domain_id":182245,"registrant_id":2715,"state":"cancelled","auto_renew":false,"whois_privacy":false,"trustee":false,"status_description":"Canceled by customer","created_at":"2020-06-05T18:08:00Z","updated_at":"2020-06-05T18:10:01Z"}}
@@ -17,4 +17,4 @@ x-permitted-cross-domain-policies: none
17
17
  x-xss-protection: 1; mode=block
18
18
  strict-transport-security: max-age=31536000
19
19
 
20
- {"data":[{"id":123,"email":"john@example.com","plan_identifier":"dnsimple-personal","created_at":"2011-09-11T17:15:58Z","updated_at":"2016-06-03T15:02:26Z"}]}
20
+ {"data":[{"id":123,"email":"john@example.com","name":"John","plan_identifier":"dnsimple-personal","created_at":"2011-09-11T17:15:58Z","updated_at":"2016-06-03T15:02:26Z"}]}
@@ -17,4 +17,4 @@ x-permitted-cross-domain-policies: none
17
17
  x-xss-protection: 1; mode=block
18
18
  strict-transport-security: max-age=31536000
19
19
 
20
- {"data":[{"id":123,"email":"john@example.com","plan_identifier":"dnsimple-personal","created_at":"2011-09-11T17:15:58Z","updated_at":"2016-06-03T15:02:26Z"},{"id":456,"email":"ops@company.com","plan_identifier":"teams-v1-monthly","created_at":"2012-03-16T16:02:54Z","updated_at":"2016-06-14T11:23:16Z"}]}
20
+ {"data":[{"id":123,"email":"john@example.com","name":"John","plan_identifier":"dnsimple-personal","created_at":"2011-09-11T17:15:58Z","updated_at":"2016-06-03T15:02:26Z"},{"id":456,"email":"ops@company.com","name":"Ops Company","plan_identifier":"teams-v1-monthly","created_at":"2012-03-16T16:02:54Z","updated_at":"2016-06-14T11:23:16Z"}]}
@@ -9,4 +9,4 @@ cache-control: no-store, must-revalidate, private, max-age=0
9
9
  x-request-id: a57a87c8-626a-4361-9fb8-b55ca9be8e5d
10
10
  x-runtime: 0.060526
11
11
 
12
- {"data":[{"invoiced_at":"2023-08-17T05:53:36Z","total_amount":"14.50","balance_amount":"0.00","reference":"1-2","state":"collected","items":[{"description":"Register bubble-registered.com","amount":"14.50","product_id":1,"product_type":"domain-registration","product_reference":"bubble-registered.com"}]},{"invoiced_at":"2023-08-17T05:57:53Z","total_amount":"14.50","balance_amount":"0.00","reference":"2-2","state":"refunded","items":[{"description":"Register example.com","amount":"14.50","product_id":2,"product_type":"domain-registration","product_reference":"example.com"}]},{"invoiced_at":"2023-10-24T07:49:05Z","total_amount":"1099999.99","balance_amount":"0.00","reference":"4-2","state":"collected","items":[{"description":"Test Line Item 1","amount":"99999.99","product_id":null,"product_type":"manual","product_reference":null},{"description":"Test Line Item 2","amount":"1000000.00","product_id":null,"product_type":"manual","product_reference":null}]}],"pagination":{"current_page":1,"per_page":30,"total_entries":3,"total_pages":1}}
12
+ {"data":[{"invoiced_at":"2023-08-17T05:53:36Z","total_amount":"14.50","balance_amount":"0.00","reference":"1-2","state":"collected","items":[{"description":"Register bubble-registered.com","amount":"14.50","product_id":1,"product_type":"domain-registration","product_reference":"bubble-registered.com"}]},{"invoiced_at":"2023-08-17T05:57:53Z","total_amount":"14.50","balance_amount":"0.00","reference":"2-2","state":"refunded","items":[{"description":"Register example.com","amount":"14.50","product_id":2,"product_type":"domain-registration","product_reference":"example.com"}]},{"invoiced_at":"2023-10-24T07:49:05Z","total_amount":"1099999.99","balance_amount":"0.00","reference":"4-2","state":"collected","items":[{"description":"Test Line Item 1","amount":"99999.99","product_id":null,"product_type":"manual","product_reference":null},{"description":"Test Line Item 2","amount":"1000000.00","product_id":null,"product_type":"manual","product_reference":null}]},{"invoiced_at":"2023-10-24T09:00:00Z","total_amount":"20.00","balance_amount":"0.00","reference":"5-2","state":"collected","items":[{"description":"Purchase Certificate www.bubble-registered.com","amount":"20.00","product_id":42,"product_type":"certificate-purchase","product_reference":"42"}]}],"pagination":{"current_page":1,"per_page":30,"total_entries":4,"total_pages":1}}
@@ -17,4 +17,4 @@ x-permitted-cross-domain-policies: none
17
17
  x-xss-protection: 1; mode=block
18
18
  strict-transport-security: max-age=31536000
19
19
 
20
- {"data":{"id":1,"domain_id":999,"registrant_id":2,"period":1,"state":"new","auto_renew":false,"whois_privacy":false,"trustee_service":false,"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,"trustee":false,"created_at":"2016-12-09T19:35:31Z","updated_at":"2016-12-09T19:35:31Z"}}
@@ -17,4 +17,4 @@ x-permitted-cross-domain-policies: none
17
17
  x-xss-protection: 1; mode=block
18
18
  strict-transport-security: max-age=31536000
19
19
 
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"}}
20
+ {"data":{"id":1,"domain_id":999,"registrant_id":2,"state":"transferring","auto_renew":false,"whois_privacy":false,"trustee":false,"created_at":"2016-12-09T19:43:41Z","updated_at":"2016-12-09T19:43:43Z"}}
@@ -12,4 +12,4 @@ x-request-id: 15a7f3a5-7ee5-4e36-ac5a-8c21c2e1fffd
12
12
  x-runtime: 0.141588
13
13
  strict-transport-security: max-age=31536000
14
14
 
15
- {"data":{"user":null,"account":{"id":1,"email":"example-account@example.com","plan_identifier":"teams-v1-monthly","created_at":"2015-09-18T23:04:37Z","updated_at":"2016-06-09T20:03:39Z"}}}
15
+ {"data":{"user":null,"account":{"id":1,"email":"example-account@example.com","name":"Example Account","plan_identifier":"teams-v1-monthly","created_at":"2015-09-18T23:04:37Z","updated_at":"2016-06-09T20:03:39Z"}}}
@@ -12,4 +12,4 @@ x-request-id: 15a7f3a5-7ee5-4e36-ac5a-8c21c2e1fffd
12
12
  x-runtime: 0.141588
13
13
  strict-transport-security: max-age=31536000
14
14
 
15
- {"data":{"user":null,"account":{"id":1,"email":"example-account@example.com","plan_identifier":"teams-v1-monthly","created_at":"2015-09-18T23:04:37Z","updated_at":"2016-06-09T20:03:39Z"}}}
15
+ {"data":{"user":null,"account":{"id":1,"email":"example-account@example.com","name":"Example Account","plan_identifier":"teams-v1-monthly","created_at":"2015-09-18T23:04:37Z","updated_at":"2016-06-09T20:03:39Z"}}}
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: 12.2.0
4
+ version: 13.1.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - DNSimple
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2026-03-23 00:00:00.000000000 Z
11
+ date: 2026-09-17 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: httparty