growsurf-ruby 1.1.0 → 1.1.2

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: fcb7132df27f55fa865460e439a8f461ff5d039b0bc3100b052e1075820a7fe1
4
- data.tar.gz: 8d7e3c55e11ee1a6963845234ec97e2fb52c622682029a68021a77243ea7625f
3
+ metadata.gz: d8076462c15a156d463bf26bb5f654d2baf7a6795204be7b8ef79a9dd2ae2053
4
+ data.tar.gz: da320558ee220ff66aac11869a410cdcb402084b9563985763da99c47cce1755
5
5
  SHA512:
6
- metadata.gz: 987fef5597c1023a9e38ade57af6eca87941bac68e020218ba5c98de77c37e55d14276b635da9bc5e3db02b301e765d98aa1ccaa27df02bc4112ae035fb56973
7
- data.tar.gz: 0cbd34d217187beb4ea216f81c179e8f9c0a670e7965cc17ba95ae197766b603b0143e75c4c8eb4ef07c3e8435165272a81737c03d38c176842e7dc6ae39158d
6
+ metadata.gz: d5c1d9647d05936815ddae19a40e12a06cf4d1ed469f27c86dc03b543b3abd9895923e494c4bb0f7a28ba50c0c219bafa78276c0feb15d94f08b43d40b59f908
7
+ data.tar.gz: fe5bcdf5683be8d8dbf038f33ca365d66d5959f5c3d3a5b7e9c8e9717e0970564d8d5ac9b6d625bbf1af24edda057405aacefd9f4a35e6cd7c48f2aac1023a51
data/CHANGELOG.md CHANGED
@@ -1,5 +1,19 @@
1
1
  # Changelog
2
2
 
3
+ ## [1.1.2](https://github.com/growsurf/growsurf-ruby/compare/v1.1.1...v1.1.2) (2026-07-11)
4
+
5
+
6
+ ### Bug Fixes
7
+
8
+ * support retry-safe API key rotation ([939cd05](https://github.com/growsurf/growsurf-ruby/commit/939cd054446d85e411652ae77d37d4351c1ad6ab))
9
+
10
+ ## [1.1.1](https://github.com/growsurf/growsurf-ruby/compare/v1.1.0...v1.1.1) (2026-07-09)
11
+
12
+
13
+ ### Bug Fixes
14
+
15
+ * remove referral screenshot REST surface ([7d543f7](https://github.com/growsurf/growsurf-ruby/commit/7d543f7a3dfa1db1f3d0ce5c556d897945d844b1))
16
+
3
17
  ## [1.1.0](https://github.com/growsurf/growsurf-ruby/compare/v1.0.0...v1.1.0) (2026-07-08)
4
18
 
5
19
 
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.1.0"
20
+ gem "growsurf-ruby", "~> 1.1.2"
21
21
  ```
22
22
 
23
23
  <!-- x-release-please-end -->
@@ -84,6 +84,7 @@ module GrowsurfRuby
84
84
  max_retries: max_retries,
85
85
  initial_retry_delay: initial_retry_delay,
86
86
  max_retry_delay: max_retry_delay,
87
+ idempotency_header: "Idempotency-Key",
87
88
  headers: headers
88
89
  )
89
90
 
@@ -5,13 +5,13 @@ module GrowsurfRuby
5
5
  # @see GrowsurfRuby::Resources::Account#rotate_api_key
6
6
  class AccountRotateAPIKeyResponse < GrowsurfRuby::Internal::Type::BaseModel
7
7
  # @!attribute api_key
8
- # The new API key. The previous key is revoked immediately.
8
+ # The new API key. Store it now; the key used for rotation stops working immediately.
9
9
  #
10
10
  # @return [String]
11
11
  required :api_key, String, api_name: :apiKey
12
12
 
13
13
  # @!method initialize(api_key:)
14
- # @param api_key [String] The new API key. The previous key is revoked immediately.
14
+ # @param api_key [String] The new API key. Store it now; the key used for rotation stops working immediately.
15
15
  end
16
16
  end
17
17
  end
@@ -82,7 +82,5 @@ module GrowsurfRuby
82
82
 
83
83
  ReferralList = GrowsurfRuby::Models::ReferralList
84
84
 
85
- ReferralFlowScreenshotsResponse = GrowsurfRuby::Models::ReferralFlowScreenshotsResponse
86
-
87
85
  RewardTaxValuation = GrowsurfRuby::Models::RewardTaxValuation
88
86
  end
@@ -4,9 +4,10 @@ module GrowsurfRuby
4
4
  module Resources
5
5
  class Account
6
6
  # Creates a new GrowSurf account. This is the only endpoint that does not require
7
- # an API key. The response includes an API key for the new account, but the key is
8
- # locked until the account's email address is verified: authenticated endpoints
9
- # outside the `Accounts` group return a `403` with error code
7
+ # an API key. The response includes an API key for the new account, shown once
8
+ # in the response. The key is locked until the account's email address is
9
+ # verified: authenticated endpoints outside the `Accounts` group return a `403`
10
+ # with error code
10
11
  # `EMAIL_NOT_VERIFIED_ERROR` until then (resend the email via `POST
11
12
  # /account/verification-email`, then retry). A welcome email is sent to the
12
13
  # address with the verification link and a set-password link for dashboard
@@ -91,10 +92,12 @@ module GrowsurfRuby
91
92
  )
92
93
  end
93
94
 
94
- # Generates a new API key and immediately revokes the old one. The key used to make
95
- # this request stops working as soon as the response is returned — update every
96
- # integration that used the old key with the new one. The account owner is
97
- # notified by email whenever the key is rotated.
95
+ # Generates a new API key and invalidates the key used for the request. The SDK
96
+ # sends a retry-safe `Idempotency-Key`, so automatic retries return the same
97
+ # replacement. Store the returned key, then update every integration that used
98
+ # the old key. The account owner is notified by email whenever the key is rotated.
99
+ # Requires an API key with `api_key:rotate`. This operation is available only through
100
+ # the REST API or a GrowSurf API SDK, not through MCP.
98
101
  #
99
102
  # @overload rotate_api_key(request_options: {})
100
103
  #
@@ -33,7 +33,8 @@ module GrowsurfRuby
33
33
  )
34
34
  end
35
35
 
36
- # Approves a manually approved reward earned by a participant.
36
+ # Approves a manually approved reward earned by a participant. Requires
37
+ # `reward:write`. Passing `fulfill: true` also requires `reward:fulfill`.
37
38
  #
38
39
  # @overload approve(reward_id, id:, fulfill: nil, request_options: {})
39
40
  #
@@ -63,7 +64,7 @@ module GrowsurfRuby
63
64
  )
64
65
  end
65
66
 
66
- # Marks an approved participant reward as fulfilled.
67
+ # Marks an approved participant reward as fulfilled. Requires `reward:fulfill`.
67
68
  #
68
69
  # @overload fulfill(reward_id, id:, request_options: {})
69
70
  #
@@ -163,25 +163,6 @@ module GrowsurfRuby
163
163
  )
164
164
  end
165
165
 
166
- # Captures two preview screenshots for the program: the authenticated referrer
167
- # view and the referred-friend view.
168
- #
169
- # @overload get_referral_flow_screenshots(id, request_options: {})
170
- #
171
- # @param id [String] GrowSurf program ID.
172
- #
173
- # @param request_options [GrowsurfRuby::RequestOptions, Hash{Symbol=>Object}, nil]
174
- #
175
- # @return [GrowsurfRuby::Models::ReferralFlowScreenshotsResponse]
176
- def get_referral_flow_screenshots(id, params = {})
177
- @client.request(
178
- method: :get,
179
- path: ["campaign/%1$s/referral-flow-screenshots", id],
180
- model: GrowsurfRuby::Models::ReferralFlowScreenshotsResponse,
181
- options: params[:request_options]
182
- )
183
- end
184
-
185
166
  # Some parameter documentations has been truncated, see
186
167
  # {GrowsurfRuby::Models::CampaignCreateMobileParticipantTokenParams} for more
187
168
  # details.
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module GrowsurfRuby
4
- VERSION = "1.1.0"
4
+ VERSION = "1.1.2"
5
5
  end
data/lib/growsurf_ruby.rb CHANGED
@@ -136,7 +136,6 @@ require_relative "growsurf_ruby/models/participant_commission_list"
136
136
  require_relative "growsurf_ruby/models/participant_list"
137
137
  require_relative "growsurf_ruby/models/participant_payout_list"
138
138
  require_relative "growsurf_ruby/models/referral_list"
139
- require_relative "growsurf_ruby/models/referral_flow_screenshots_response"
140
139
  require_relative "growsurf_ruby/models/reward_tax_valuation"
141
140
  require_relative "growsurf_ruby/models"
142
141
  require_relative "growsurf_ruby/resources/account"
@@ -11,13 +11,13 @@ module GrowsurfRuby
11
11
  )
12
12
  end
13
13
 
14
- # The new API key. The previous key is revoked immediately.
14
+ # The new API key. Store it now; the key used for rotation stops working immediately.
15
15
  sig { returns(String) }
16
16
  attr_accessor :api_key
17
17
 
18
18
  sig { params(api_key: String).returns(T.attached_class) }
19
19
  def self.new(
20
- # The new API key. The previous key is revoked immediately.
20
+ # The new API key. Store it now; the key used for rotation stops working immediately.
21
21
  api_key:
22
22
  )
23
23
  end
@@ -49,8 +49,5 @@ module GrowsurfRuby
49
49
 
50
50
  ReferralList = GrowsurfRuby::Models::ReferralList
51
51
 
52
- ReferralFlowScreenshotsResponse =
53
- GrowsurfRuby::Models::ReferralFlowScreenshotsResponse
54
-
55
52
  RewardTaxValuation = GrowsurfRuby::Models::RewardTaxValuation
56
53
  end
@@ -4,9 +4,10 @@ module GrowsurfRuby
4
4
  module Resources
5
5
  class Account
6
6
  # Creates a new GrowSurf account. This is the only endpoint that does not require
7
- # an API key. The response includes an API key for the new account, but the key is
8
- # locked until the account's email address is verified: authenticated endpoints
9
- # outside the `Accounts` group return a `403` with error code
7
+ # an API key. The response includes an API key for the new account, shown once
8
+ # in the response. The key is locked until the account's email address is
9
+ # verified: authenticated endpoints outside the `Accounts` group return a `403`
10
+ # with error code
10
11
  # `EMAIL_NOT_VERIFIED_ERROR` until then (resend the email via `POST
11
12
  # /account/verification-email`, then retry). A welcome email is sent to the
12
13
  # address with the verification link and a set-password link for dashboard
@@ -67,10 +68,12 @@ module GrowsurfRuby
67
68
  )
68
69
  end
69
70
 
70
- # Generates a new API key and immediately revokes the old one. The key used to make
71
- # this request stops working as soon as the response is returned — update every
72
- # integration that used the old key with the new one. The account owner is
73
- # notified by email whenever the key is rotated.
71
+ # Generates a new API key and invalidates the key used for the request. The SDK
72
+ # sends a retry-safe `Idempotency-Key`, so automatic retries return the same
73
+ # replacement. Store the returned key, then update every integration that used
74
+ # the old key. The account owner is notified by email whenever the key is rotated.
75
+ # Requires an API key with `api_key:rotate`. This operation is available only through
76
+ # the REST API or a GrowSurf API SDK, not through MCP.
74
77
  sig do
75
78
  params(request_options: GrowsurfRuby::RequestOptions::OrHash).returns(
76
79
  GrowsurfRuby::Models::AccountRotateAPIKeyResponse
@@ -23,7 +23,8 @@ module GrowsurfRuby
23
23
  )
24
24
  end
25
25
 
26
- # Approves a manually approved reward earned by a participant.
26
+ # Approves a manually approved reward earned by a participant. Requires
27
+ # `reward:write`. Passing `fulfill: true` also requires `reward:fulfill`.
27
28
  sig do
28
29
  params(
29
30
  reward_id: String,
@@ -43,7 +44,7 @@ module GrowsurfRuby
43
44
  )
44
45
  end
45
46
 
46
- # Marks an approved participant reward as fulfilled.
47
+ # Marks an approved participant reward as fulfilled. Requires `reward:fulfill`.
47
48
  sig do
48
49
  params(
49
50
  reward_id: String,
@@ -135,21 +135,6 @@ module GrowsurfRuby
135
135
  )
136
136
  end
137
137
 
138
- # Captures two preview screenshots for the program: the authenticated referrer
139
- # view and the referred-friend view.
140
- sig do
141
- params(
142
- id: String,
143
- request_options: GrowsurfRuby::RequestOptions::OrHash
144
- ).returns(GrowsurfRuby::Models::ReferralFlowScreenshotsResponse)
145
- end
146
- def get_referral_flow_screenshots(
147
- # GrowSurf program ID.
148
- id,
149
- request_options: {}
150
- )
151
- end
152
-
153
138
  # Creates or returns a participant using the same input behavior as Add
154
139
  # Participant, then returns a participant-scoped token for GrowSurf mobile SDK
155
140
  # participant endpoints. Use this endpoint from your backend after your mobile app
@@ -41,7 +41,5 @@ module GrowsurfRuby
41
41
 
42
42
  class ReferralList = GrowsurfRuby::Models::ReferralList
43
43
 
44
- class ReferralFlowScreenshotsResponse = GrowsurfRuby::Models::ReferralFlowScreenshotsResponse
45
-
46
44
  class RewardTaxValuation = GrowsurfRuby::Models::RewardTaxValuation
47
45
  end
@@ -52,11 +52,6 @@ module GrowsurfRuby
52
52
  ?request_options: GrowsurfRuby::request_opts
53
53
  ) -> GrowsurfRuby::CampaignAPI
54
54
 
55
- def get_referral_flow_screenshots: (
56
- String id,
57
- ?request_options: GrowsurfRuby::request_opts
58
- ) -> GrowsurfRuby::Models::ReferralFlowScreenshotsResponse
59
-
60
55
  def create_mobile_participant_token: (
61
56
  String id,
62
57
  email: String,
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.1.0
4
+ version: 1.1.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Growsurf
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2026-07-08 00:00:00.000000000 Z
11
+ date: 2026-07-11 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: cgi
@@ -152,7 +152,6 @@ files:
152
152
  - lib/growsurf_ruby/models/participant_commission_list.rb
153
153
  - lib/growsurf_ruby/models/participant_list.rb
154
154
  - lib/growsurf_ruby/models/participant_payout_list.rb
155
- - lib/growsurf_ruby/models/referral_flow_screenshots_response.rb
156
155
  - lib/growsurf_ruby/models/referral_list.rb
157
156
  - lib/growsurf_ruby/models/reward_tax_valuation.rb
158
157
  - lib/growsurf_ruby/request_options.rb
@@ -271,7 +270,6 @@ files:
271
270
  - rbi/growsurf_ruby/models/participant_commission_list.rbi
272
271
  - rbi/growsurf_ruby/models/participant_list.rbi
273
272
  - rbi/growsurf_ruby/models/participant_payout_list.rbi
274
- - rbi/growsurf_ruby/models/referral_flow_screenshots_response.rbi
275
273
  - rbi/growsurf_ruby/models/referral_list.rbi
276
274
  - rbi/growsurf_ruby/models/reward_tax_valuation.rbi
277
275
  - rbi/growsurf_ruby/request_options.rbi
@@ -389,7 +387,6 @@ files:
389
387
  - sig/growsurf_ruby/models/participant_commission_list.rbs
390
388
  - sig/growsurf_ruby/models/participant_list.rbs
391
389
  - sig/growsurf_ruby/models/participant_payout_list.rbs
392
- - sig/growsurf_ruby/models/referral_flow_screenshots_response.rbs
393
390
  - sig/growsurf_ruby/models/referral_list.rbs
394
391
  - sig/growsurf_ruby/models/reward_tax_valuation.rbs
395
392
  - sig/growsurf_ruby/request_options.rbs
@@ -1,72 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- module GrowsurfRuby
4
- module Models
5
- # @see GrowsurfRuby::Resources::Campaign#get_referral_flow_screenshots
6
- class ReferralFlowScreenshotsResponse < GrowsurfRuby::Internal::Type::BaseModel
7
- # @!attribute referrer
8
- # Screenshot of the referral flow as a signed-in referrer sees it.
9
- #
10
- # @return [GrowsurfRuby::Models::ReferralFlowScreenshotsResponse::ReferralFlowScreenshot]
11
- required :referrer, -> { GrowsurfRuby::Models::ReferralFlowScreenshotsResponse::ReferralFlowScreenshot }
12
-
13
- # @!attribute referred_friend
14
- # Screenshot of the referral flow as the referred friend sees it.
15
- #
16
- # @return [GrowsurfRuby::Models::ReferralFlowScreenshotsResponse::ReferralFlowScreenshot]
17
- required :referred_friend,
18
- -> { GrowsurfRuby::Models::ReferralFlowScreenshotsResponse::ReferralFlowScreenshot },
19
- api_name: :referredFriend
20
-
21
- # @!attribute generated_at
22
- # When the screenshots were generated, as a Unix timestamp in milliseconds.
23
- #
24
- # @return [Integer]
25
- required :generated_at, Integer, api_name: :generatedAt
26
-
27
- # @!method initialize(referrer:, referred_friend:, generated_at:)
28
- #
29
- # @param referrer [GrowsurfRuby::Models::ReferralFlowScreenshotsResponse::ReferralFlowScreenshot] Screenshot of the referral flow as a signed-in referrer sees it.
30
- #
31
- # @param referred_friend [GrowsurfRuby::Models::ReferralFlowScreenshotsResponse::ReferralFlowScreenshot] Screenshot of the referral flow as the referred friend sees it.
32
- #
33
- # @param generated_at [Integer] When the screenshots were generated, as a Unix timestamp in milliseconds.
34
-
35
- class ReferralFlowScreenshot < GrowsurfRuby::Internal::Type::BaseModel
36
- # @!attribute view
37
- # The referral-flow view captured in this screenshot.
38
- #
39
- # @return [String]
40
- required :view, String
41
-
42
- # @!attribute url
43
- # Image URL for the generated screenshot.
44
- #
45
- # @return [String]
46
- required :url, String
47
-
48
- # @!attribute width
49
- # Screenshot viewport width in CSS pixels.
50
- #
51
- # @return [Integer]
52
- required :width, Integer
53
-
54
- # @!attribute height
55
- # Screenshot viewport height in CSS pixels.
56
- #
57
- # @return [Integer]
58
- required :height, Integer
59
-
60
- # @!method initialize(view:, url:, width:, height:)
61
- #
62
- # @param view [String] The referral-flow view captured in this screenshot.
63
- #
64
- # @param url [String] Image URL for the generated screenshot.
65
- #
66
- # @param width [Integer] Screenshot viewport width in CSS pixels.
67
- #
68
- # @param height [Integer] Screenshot viewport height in CSS pixels.
69
- end
70
- end
71
- end
72
- end
@@ -1,94 +0,0 @@
1
- # typed: strong
2
-
3
- module GrowsurfRuby
4
- module Models
5
- class ReferralFlowScreenshotsResponse < GrowsurfRuby::Internal::Type::BaseModel
6
- OrHash =
7
- T.type_alias do
8
- T.any(
9
- GrowsurfRuby::Models::ReferralFlowScreenshotsResponse,
10
- GrowsurfRuby::Internal::AnyHash
11
- )
12
- end
13
-
14
- sig { returns(GrowsurfRuby::Models::ReferralFlowScreenshotsResponse::ReferralFlowScreenshot) }
15
- attr_reader :referrer
16
-
17
- sig do
18
- params(
19
- referrer: GrowsurfRuby::Models::ReferralFlowScreenshotsResponse::ReferralFlowScreenshot::OrHash
20
- ).void
21
- end
22
- attr_writer :referrer
23
-
24
- sig { returns(GrowsurfRuby::Models::ReferralFlowScreenshotsResponse::ReferralFlowScreenshot) }
25
- attr_reader :referred_friend
26
-
27
- sig do
28
- params(
29
- referred_friend: GrowsurfRuby::Models::ReferralFlowScreenshotsResponse::ReferralFlowScreenshot::OrHash
30
- ).void
31
- end
32
- attr_writer :referred_friend
33
-
34
- sig { returns(Integer) }
35
- attr_accessor :generated_at
36
-
37
- sig do
38
- params(
39
- referrer: GrowsurfRuby::Models::ReferralFlowScreenshotsResponse::ReferralFlowScreenshot::OrHash,
40
- referred_friend: GrowsurfRuby::Models::ReferralFlowScreenshotsResponse::ReferralFlowScreenshot::OrHash,
41
- generated_at: Integer
42
- ).returns(T.attached_class)
43
- end
44
- def self.new(referrer:, referred_friend:, generated_at:)
45
- end
46
-
47
- sig do
48
- override.returns(
49
- {
50
- referrer: GrowsurfRuby::Models::ReferralFlowScreenshotsResponse::ReferralFlowScreenshot,
51
- referred_friend: GrowsurfRuby::Models::ReferralFlowScreenshotsResponse::ReferralFlowScreenshot,
52
- generated_at: Integer
53
- }
54
- )
55
- end
56
- def to_hash
57
- end
58
-
59
- class ReferralFlowScreenshot < GrowsurfRuby::Internal::Type::BaseModel
60
- OrHash =
61
- T.type_alias do
62
- T.any(
63
- GrowsurfRuby::Models::ReferralFlowScreenshotsResponse::ReferralFlowScreenshot,
64
- GrowsurfRuby::Internal::AnyHash
65
- )
66
- end
67
-
68
- sig { returns(String) }
69
- attr_accessor :view
70
-
71
- sig { returns(String) }
72
- attr_accessor :url
73
-
74
- sig { returns(Integer) }
75
- attr_accessor :width
76
-
77
- sig { returns(Integer) }
78
- attr_accessor :height
79
-
80
- sig do
81
- params(view: String, url: String, width: Integer, height: Integer).returns(T.attached_class)
82
- end
83
- def self.new(view:, url:, width:, height:)
84
- end
85
-
86
- sig do
87
- override.returns({view: String, url: String, width: Integer, height: Integer})
88
- end
89
- def to_hash
90
- end
91
- end
92
- end
93
- end
94
- end
@@ -1,54 +0,0 @@
1
- module GrowsurfRuby
2
- module Models
3
- type referral_flow_screenshots_response =
4
- {
5
- referrer: GrowsurfRuby::Models::ReferralFlowScreenshotsResponse::ReferralFlowScreenshot,
6
- referred_friend: GrowsurfRuby::Models::ReferralFlowScreenshotsResponse::ReferralFlowScreenshot,
7
- generated_at: Integer
8
- }
9
-
10
- class ReferralFlowScreenshotsResponse < GrowsurfRuby::Internal::Type::BaseModel
11
- attr_accessor referrer: GrowsurfRuby::Models::ReferralFlowScreenshotsResponse::ReferralFlowScreenshot
12
-
13
- attr_accessor referred_friend: GrowsurfRuby::Models::ReferralFlowScreenshotsResponse::ReferralFlowScreenshot
14
-
15
- attr_accessor generated_at: Integer
16
-
17
- def initialize: (
18
- referrer: GrowsurfRuby::Models::ReferralFlowScreenshotsResponse::ReferralFlowScreenshot,
19
- referred_friend: GrowsurfRuby::Models::ReferralFlowScreenshotsResponse::ReferralFlowScreenshot,
20
- generated_at: Integer
21
- ) -> void
22
-
23
- def to_hash: -> {
24
- referrer: GrowsurfRuby::Models::ReferralFlowScreenshotsResponse::ReferralFlowScreenshot,
25
- referred_friend: GrowsurfRuby::Models::ReferralFlowScreenshotsResponse::ReferralFlowScreenshot,
26
- generated_at: Integer
27
- }
28
-
29
- class ReferralFlowScreenshot < GrowsurfRuby::Internal::Type::BaseModel
30
- attr_accessor view: String
31
-
32
- attr_accessor url: String
33
-
34
- attr_accessor width: Integer
35
-
36
- attr_accessor height: Integer
37
-
38
- def initialize: (
39
- view: String,
40
- url: String,
41
- width: Integer,
42
- height: Integer
43
- ) -> void
44
-
45
- def to_hash: -> {
46
- view: String,
47
- url: String,
48
- width: Integer,
49
- height: Integer
50
- }
51
- end
52
- end
53
- end
54
- end