growsurf-ruby 1.6.0 → 1.7.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 30767eaf7fe9df6cf0d79676d5d398e9f05fcabaaab4fe397589a4e21b4e81d5
4
- data.tar.gz: 2565e6b7e6a9c36e189dfe6d118f94893ccdba2e2c168b9364ebcd447d95698b
3
+ metadata.gz: 4c4264a852ff0ca77180179c1831e2d321d98f71c95fa4a8b0ba7ebb8e46e0f9
4
+ data.tar.gz: 04a8a7f10fd055630f07be8787ad0508941ec6378d81b05039a6281dee7c4da3
5
5
  SHA512:
6
- metadata.gz: e00037e4aa5f320e67e261d2a812c473972f198a2afc7b005894a8b87cc936fc973ad2d256bc72295dce87204aeed9238080d68ba255ea55a089907b802b7791
7
- data.tar.gz: b346f82c3569cf54bb3d317d3eace7e362afa4066774eb943a660ca07e4400bfe8da7a128102fbedf3556be380ccf6bf016b31e3cdf54466f83b238bc915b6a0
6
+ metadata.gz: 6d821a1c07c9ba393abb5c9ff3c0c08c39670f614f04f994043128bd9273f622e2f5fbe875631c7eda38bc4ba7ae77614c67b95aa43b882a663986e4cb3308ea
7
+ data.tar.gz: c6ab8613be7ab066109361b167e586c8e3dd40918dbc5b22079dfa657fa51fbd0caa638efa00dabba21df32c9466bf0ba666906bc2d11af795d96e6cca26f8f2
data/CHANGELOG.md CHANGED
@@ -1,5 +1,29 @@
1
1
  # Changelog
2
2
 
3
+ ## [1.7.1](https://github.com/growsurf/growsurf-ruby/compare/v1.7.0...v1.7.1) (2026-09-18)
4
+
5
+
6
+ ### Bug Fixes
7
+
8
+ * **package:** point package homepage at growsurf.com ([e66cfd8](https://github.com/growsurf/growsurf-ruby/commit/e66cfd8b5fd28146af8b4f079a1b866ff777ff2c))
9
+
10
+
11
+ ### Chores
12
+
13
+ * merge dev into main ([efe1594](https://github.com/growsurf/growsurf-ruby/commit/efe1594d2f1d5a49f3c42c831cade3d1143bc144))
14
+
15
+ ## [1.7.0](https://github.com/growsurf/growsurf-ruby/compare/v1.6.0...v1.7.0) (2026-09-17)
16
+
17
+
18
+ ### Features
19
+
20
+ * **api:** add metadata filter to campaign.listParticipants ([8ac3946](https://github.com/growsurf/growsurf-ruby/commit/8ac3946c277c4c7f7fa67883fd37c683a200c0a1))
21
+
22
+
23
+ ### Chores
24
+
25
+ * refresh Gemfile.lock for 1.6.0 and keep it current on release PRs ([b767b23](https://github.com/growsurf/growsurf-ruby/commit/b767b238c2c52bc3fc9d55efa85a6d95a52164dd))
26
+
3
27
  ## [1.6.0](https://github.com/growsurf/growsurf-ruby/compare/v1.5.1...v1.6.0) (2026-09-14)
4
28
 
5
29
 
data/README.md CHANGED
@@ -17,7 +17,7 @@ To use this gem, install via Bundler by adding the following to your application
17
17
  <!-- x-release-please-start-version -->
18
18
 
19
19
  ```ruby
20
- gem "growsurf-ruby", "~> 1.6.0"
20
+ gem "growsurf-ruby", "~> 1.7.1"
21
21
  ```
22
22
 
23
23
  <!-- x-release-please-end -->
@@ -18,17 +18,27 @@ module GrowsurfRuby
18
18
  # @return [Integer, nil]
19
19
  optional :limit, Integer
20
20
 
21
+ # @!attribute metadata
22
+ # Return only participants whose metadata matches every given key and value
23
+ # exactly. Send each pair as `metadata[key]=value`. Up to 3 keys per request.
24
+ # Values compare as strings, which is how metadata is stored.
25
+ #
26
+ # @return [Hash{Symbol=>String}, nil]
27
+ optional :metadata, GrowsurfRuby::Internal::Type::HashOf[String]
28
+
21
29
  # @!attribute next_id
22
30
  # ID to start the next paged result set with.
23
31
  #
24
32
  # @return [String, nil]
25
33
  optional :next_id, String
26
34
 
27
- # @!method initialize(id:, limit: nil, next_id: nil, request_options: {})
35
+ # @!method initialize(id:, limit: nil, metadata: nil, next_id: nil, request_options: {})
28
36
  # @param id [String]
29
37
  #
30
38
  # @param limit [Integer] Number of results to return. Maximum 100.
31
39
  #
40
+ # @param metadata [Hash{Symbol=>String}] Return only participants whose metadata matches every given key and value exac
41
+ #
32
42
  # @param next_id [String] ID to start the next paged result set with.
33
43
  #
34
44
  # @param request_options [GrowsurfRuby::RequestOptions, Hash{Symbol=>Object}]
@@ -377,12 +377,14 @@ module GrowsurfRuby
377
377
 
378
378
  # Retrieves a paged list of participants in a program.
379
379
  #
380
- # @overload list_participants(id, limit: nil, next_id: nil, request_options: {})
380
+ # @overload list_participants(id, limit: nil, metadata: nil, next_id: nil, request_options: {})
381
381
  #
382
382
  # @param id [String] GrowSurf program ID.
383
383
  #
384
384
  # @param limit [Integer] Number of results to return. Maximum 100.
385
385
  #
386
+ # @param metadata [Hash{Symbol=>String}] Return only participants whose metadata matches every given key and value exac
387
+ #
386
388
  # @param next_id [String] ID to start the next paged result set with.
387
389
  #
388
390
  # @param request_options [GrowsurfRuby::RequestOptions, Hash{Symbol=>Object}, nil]
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module GrowsurfRuby
4
- VERSION = "1.6.0"
4
+ VERSION = "1.7.1"
5
5
  end
@@ -24,6 +24,15 @@ module GrowsurfRuby
24
24
  sig { params(limit: Integer).void }
25
25
  attr_writer :limit
26
26
 
27
+ # Return only participants whose metadata matches every given key and value
28
+ # exactly. Send each pair as `metadata[key]=value`. Up to 3 keys per request.
29
+ # Values compare as strings, which is how metadata is stored.
30
+ sig { returns(T.nilable(T::Hash[Symbol, String])) }
31
+ attr_reader :metadata
32
+
33
+ sig { params(metadata: T::Hash[Symbol, String]).void }
34
+ attr_writer :metadata
35
+
27
36
  # ID to start the next paged result set with.
28
37
  sig { returns(T.nilable(String)) }
29
38
  attr_reader :next_id
@@ -35,6 +44,7 @@ module GrowsurfRuby
35
44
  params(
36
45
  id: String,
37
46
  limit: Integer,
47
+ metadata: T::Hash[Symbol, String],
38
48
  next_id: String,
39
49
  request_options: GrowsurfRuby::RequestOptions::OrHash
40
50
  ).returns(T.attached_class)
@@ -43,6 +53,10 @@ module GrowsurfRuby
43
53
  id:,
44
54
  # Number of results to return. Maximum 100.
45
55
  limit: nil,
56
+ # Return only participants whose metadata matches every given key and value
57
+ # exactly. Send each pair as `metadata[key]=value`. Up to 3 keys per request.
58
+ # Values compare as strings, which is how metadata is stored.
59
+ metadata: nil,
46
60
  # ID to start the next paged result set with.
47
61
  next_id: nil,
48
62
  request_options: {}
@@ -54,6 +68,7 @@ module GrowsurfRuby
54
68
  {
55
69
  id: String,
56
70
  limit: Integer,
71
+ metadata: T::Hash[Symbol, String],
57
72
  next_id: String,
58
73
  request_options: GrowsurfRuby::RequestOptions
59
74
  }
@@ -325,6 +325,7 @@ module GrowsurfRuby
325
325
  params(
326
326
  id: String,
327
327
  limit: Integer,
328
+ metadata: T::Hash[Symbol, String],
328
329
  next_id: String,
329
330
  request_options: GrowsurfRuby::RequestOptions::OrHash
330
331
  ).returns(GrowsurfRuby::ParticipantList)
@@ -334,6 +335,10 @@ module GrowsurfRuby
334
335
  id,
335
336
  # Number of results to return. Maximum 100.
336
337
  limit: nil,
338
+ # Return only participants whose metadata matches every given key and value
339
+ # exactly. Send each pair as `metadata[key]=value`. Up to 3 keys per request.
340
+ # Values compare as strings, which is how metadata is stored.
341
+ metadata: nil,
337
342
  # ID to start the next paged result set with.
338
343
  next_id: nil,
339
344
  request_options: {}
@@ -1,7 +1,12 @@
1
1
  module GrowsurfRuby
2
2
  module Models
3
3
  type campaign_list_participants_params =
4
- { id: String, limit: Integer, next_id: String }
4
+ {
5
+ id: String,
6
+ limit: Integer,
7
+ metadata: ::Hash[Symbol, String],
8
+ next_id: String
9
+ }
5
10
  & GrowsurfRuby::Internal::Type::request_parameters
6
11
 
7
12
  class CampaignListParticipantsParams < GrowsurfRuby::Internal::Type::BaseModel
@@ -14,6 +19,10 @@ module GrowsurfRuby
14
19
 
15
20
  def limit=: (Integer) -> Integer
16
21
 
22
+ attr_reader metadata: ::Hash[Symbol, String]?
23
+
24
+ def metadata=: (::Hash[Symbol, String]) -> ::Hash[Symbol, String]
25
+
17
26
  attr_reader next_id: String?
18
27
 
19
28
  def next_id=: (String) -> String
@@ -21,6 +30,7 @@ module GrowsurfRuby
21
30
  def initialize: (
22
31
  id: String,
23
32
  ?limit: Integer,
33
+ ?metadata: ::Hash[Symbol, String],
24
34
  ?next_id: String,
25
35
  ?request_options: GrowsurfRuby::request_opts
26
36
  ) -> void
@@ -28,6 +38,7 @@ module GrowsurfRuby
28
38
  def to_hash: -> {
29
39
  id: String,
30
40
  limit: Integer,
41
+ metadata: ::Hash[Symbol, String],
31
42
  next_id: String,
32
43
  request_options: GrowsurfRuby::RequestOptions
33
44
  }
@@ -115,6 +115,7 @@ module GrowsurfRuby
115
115
  def list_participants: (
116
116
  String id,
117
117
  ?limit: Integer,
118
+ ?metadata: ::Hash[Symbol, String],
118
119
  ?next_id: String,
119
120
  ?request_options: GrowsurfRuby::request_opts
120
121
  ) -> GrowsurfRuby::ParticipantList
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: growsurf-ruby
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.6.0
4
+ version: 1.7.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Growsurf
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2026-09-14 00:00:00.000000000 Z
11
+ date: 2026-09-18 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: cgi
@@ -515,11 +515,12 @@ files:
515
515
  - sig/growsurf_ruby/resources/campaign/webhooks.rbs
516
516
  - sig/growsurf_ruby/resources/team.rbs
517
517
  - sig/growsurf_ruby/version.rbs
518
- homepage: https://gemdocs.org/gems/growsurf-ruby
518
+ homepage: https://growsurf.com/
519
519
  licenses:
520
520
  - Apache-2.0
521
521
  metadata:
522
- homepage_uri: https://gemdocs.org/gems/growsurf-ruby
522
+ homepage_uri: https://growsurf.com/
523
+ documentation_uri: https://gemdocs.org/gems/growsurf-ruby
523
524
  source_code_uri: https://github.com/growsurf/growsurf-ruby
524
525
  rubygems_mfa_required: 'false'
525
526
  post_install_message: