wefunder 1.0.0 → 1.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 (113) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +35 -13
  3. data/lib/wefunder/client.rb +127 -12
  4. data/lib/wefunder/version.rb +1 -1
  5. data/lib/wefunder/webhooks.rb +5 -2
  6. data/lib/wefunder_generated/api/activity_api.rb +0 -92
  7. data/lib/wefunder_generated/api/explore_api.rb +24 -6
  8. data/lib/wefunder_generated/api/intents_api.rb +2 -2
  9. data/lib/wefunder_generated/api/investment_delta_api.rb +4 -4
  10. data/lib/wefunder_generated/api/investments_api.rb +2 -2
  11. data/lib/wefunder_generated/api/member_links_api.rb +287 -0
  12. data/lib/wefunder_generated/api/partner_invites_sessions_api.rb +374 -0
  13. data/lib/wefunder_generated/api/portfolio_api.rb +2 -2
  14. data/lib/wefunder_generated/api/referral_codes_api.rb +374 -0
  15. data/lib/wefunder_generated/api/syndicate_deals_api.rb +2 -140
  16. data/lib/wefunder_generated/api/syndicate_members_api.rb +216 -0
  17. data/lib/wefunder_generated/api/syndicate_statistics_api.rb +2 -2
  18. data/lib/wefunder_generated/api/users_api.rb +4 -4
  19. data/lib/wefunder_generated/models/audit_event_attributes.rb +1 -0
  20. data/lib/wefunder_generated/models/campaign.rb +1 -1
  21. data/lib/wefunder_generated/models/company_attributes.rb +88 -1
  22. data/lib/wefunder_generated/models/company_disclosures_attributes_ratios.rb +13 -2
  23. data/lib/wefunder_generated/models/create_intent_request.rb +2 -2
  24. data/lib/wefunder_generated/models/{webhook_subscription_with_secret2_envelope.rb → create_offering_investment_session_request.rb} +17 -10
  25. data/lib/wefunder_generated/models/{attribution_stats_envelope.rb → create_offering_member_link_request.rb} +10 -10
  26. data/lib/wefunder_generated/models/{create_partner_invite_request.rb → create_referral_code_request.rb} +58 -63
  27. data/lib/wefunder_generated/models/{attribution_stats_period.rb → create_syndicate_join_session_request.rb} +17 -19
  28. data/lib/wefunder_generated/models/{anonymized_attribution.rb → create_syndicate_join_session_request_join_session.rb} +81 -53
  29. data/lib/wefunder_generated/models/create_webhook_endpoint_request.rb +11 -1
  30. data/lib/wefunder_generated/models/fiscal_year_financials.rb +25 -1
  31. data/lib/wefunder_generated/models/intent_attributes.rb +1 -0
  32. data/lib/wefunder_generated/models/investment_delta_record.rb +4 -4
  33. data/lib/wefunder_generated/models/investment_session_attributes.rb +1 -0
  34. data/lib/wefunder_generated/models/investment_session_create_input.rb +13 -2
  35. data/lib/wefunder_generated/models/investment_session_envelope.rb +1 -1
  36. data/lib/wefunder_generated/models/invite_link_attributes.rb +47 -4
  37. data/lib/wefunder_generated/models/invite_link_attributes_events_inner.rb +12 -1
  38. data/lib/wefunder_generated/models/invite_link_envelope.rb +1 -1
  39. data/lib/wefunder_generated/models/{full_attribution_status.rb → member_link.rb} +34 -24
  40. data/lib/wefunder_generated/models/{marketing_partner.rb → member_link_attributes.rb} +60 -44
  41. data/lib/wefunder_generated/models/{attribution_me_envelope.rb → member_link_create_input.rb} +40 -10
  42. data/lib/wefunder_generated/models/{spv_with_meta_envelope.rb → member_link_envelope.rb} +5 -5
  43. data/lib/wefunder_generated/models/{spv_list_envelope.rb → member_link_list_envelope.rb} +5 -5
  44. data/lib/wefunder_generated/models/{full_attribution_investor.rb → member_link_list_envelope_meta.rb} +28 -29
  45. data/lib/wefunder_generated/models/offering_attributes.rb +34 -1
  46. data/lib/wefunder_generated/models/offering_list_envelope_meta.rb +57 -3
  47. data/lib/wefunder_generated/models/portfolio_company_ref.rb +16 -5
  48. data/lib/wefunder_generated/models/portfolio_position_attributes.rb +13 -2
  49. data/lib/wefunder_generated/models/portfolio_security_terms.rb +15 -2
  50. data/lib/wefunder_generated/models/{spv_status.rb → referral_code.rb} +4 -4
  51. data/lib/wefunder_generated/models/{webhook_subscription.rb → referral_code_attributes.rb} +51 -63
  52. data/lib/wefunder_generated/models/{anonymized_attribution_status.rb → referral_code_attributes_target.rb} +36 -27
  53. data/lib/wefunder_generated/models/{spv_status_envelope.rb → referral_code_envelope.rb} +5 -5
  54. data/lib/wefunder_generated/models/{spv_with_meta_envelope_meta.rb → referral_code_envelope_meta.rb} +3 -3
  55. data/lib/wefunder_generated/models/{partner_investor_list_envelope.rb → referral_code_list_envelope.rb} +5 -5
  56. data/lib/wefunder_generated/models/{attribution_campaign_summary.rb → referral_code_list_envelope_meta.rb} +36 -35
  57. data/lib/wefunder_generated/models/{spv_status_attributes.rb → referral_code_stats_company.rb} +70 -47
  58. data/lib/wefunder_generated/models/referral_code_stats_envelope.rb +223 -0
  59. data/lib/wefunder_generated/models/{partner_investor.rb → referral_code_stats_envelope_data.rb} +4 -5
  60. data/lib/wefunder_generated/models/{syndicate_deal_finalize_intent_envelope_meta.rb → referral_code_stats_envelope_data_attributes.rb} +56 -10
  61. data/lib/wefunder_generated/models/{webhook_endpoint_envelope_meta.rb → referral_code_stats_envelope_meta.rb} +32 -4
  62. data/lib/wefunder_generated/models/{full_attribution.rb → referral_code_utm.rb} +130 -56
  63. data/lib/wefunder_generated/models/{attribution_me.rb → referral_code_visits.rb} +23 -25
  64. data/lib/wefunder_generated/models/{attribution_campaign_access.rb → referral_cohort.rb} +29 -28
  65. data/lib/wefunder_generated/models/referral_cohort_investors.rb +224 -0
  66. data/lib/wefunder_generated/models/syndicate_attributes.rb +11 -1
  67. data/lib/wefunder_generated/models/{syndicate_deal_close_intent_envelope.rb → syndicate_deal_created_envelope.rb} +5 -5
  68. data/lib/wefunder_generated/models/{attribution_campaign_summary_list_envelope.rb → syndicate_deal_created_envelope_meta.rb} +11 -12
  69. data/lib/wefunder_generated/models/{attribution_user.rb → syndicate_deal_created_envelope_meta_target_company.rb} +5 -14
  70. data/lib/wefunder_generated/models/{marketing_partner_envelope.rb → syndicate_deal_readiness_envelope.rb} +4 -4
  71. data/lib/wefunder_generated/models/syndicate_deal_readiness_envelope_data.rb +267 -0
  72. data/lib/wefunder_generated/models/{attribution_partner.rb → syndicate_deal_readiness_envelope_data_attributes.rb} +27 -33
  73. data/lib/wefunder_generated/models/{webhook_delivery.rb → syndicate_deal_readiness_item.rb} +55 -61
  74. data/lib/wefunder_generated/models/syndicate_statistics_attributes.rb +2 -2
  75. data/lib/wefunder_generated/models/test_webhook_endpoint_request.rb +2 -2
  76. data/lib/wefunder_generated/models/{webhook_test_result_envelope.rb → update_referral_code_request.rb} +47 -10
  77. data/lib/wefunder_generated/models/user_attributes.rb +1 -0
  78. data/lib/wefunder_generated/models/webhook_endpoint_attributes.rb +23 -1
  79. data/lib/wefunder_generated/models/webhook_endpoint_envelope.rb +1 -1
  80. data/lib/wefunder_generated/models/webhook_endpoint_test_result_envelope.rb +1 -1
  81. data/lib/wefunder_generated.rb +38 -63
  82. metadata +40 -65
  83. data/lib/wefunder_generated/api/attribution_api.rb +0 -182
  84. data/lib/wefunder_generated/api/attribution_partners_api.rb +0 -392
  85. data/lib/wefunder_generated/api/attribution_webhooks_api.rb +0 -504
  86. data/lib/wefunder_generated/models/anonymized_attribution_attribution.rb +0 -330
  87. data/lib/wefunder_generated/models/attributed_investment_list_envelope.rb +0 -226
  88. data/lib/wefunder_generated/models/attributed_investment_list_envelope_data_inner.rb +0 -105
  89. data/lib/wefunder_generated/models/attributed_investment_list_envelope_meta.rb +0 -295
  90. data/lib/wefunder_generated/models/attribution_stats.rb +0 -266
  91. data/lib/wefunder_generated/models/attribution_stats_by_campaign_inner.rb +0 -232
  92. data/lib/wefunder_generated/models/attribution_stats_by_source_inner.rb +0 -232
  93. data/lib/wefunder_generated/models/attribution_stats_quality_breakdown.rb +0 -236
  94. data/lib/wefunder_generated/models/attribution_stats_totals.rb +0 -245
  95. data/lib/wefunder_generated/models/create_webhook_subscription_request.rb +0 -263
  96. data/lib/wefunder_generated/models/full_attribution_attribution.rb +0 -326
  97. data/lib/wefunder_generated/models/partner_investment_list_envelope.rb +0 -225
  98. data/lib/wefunder_generated/models/partner_investor_attributes.rb +0 -264
  99. data/lib/wefunder_generated/models/partner_invite.rb +0 -360
  100. data/lib/wefunder_generated/models/partner_invite_envelope.rb +0 -214
  101. data/lib/wefunder_generated/models/partner_invite_list_envelope.rb +0 -216
  102. data/lib/wefunder_generated/models/register_as_partner_request.rb +0 -232
  103. data/lib/wefunder_generated/models/syndicate_deal_close_intent_envelope_meta.rb +0 -214
  104. data/lib/wefunder_generated/models/syndicate_deal_finalize_intent_envelope.rb +0 -224
  105. data/lib/wefunder_generated/models/webhook_subscription_envelope.rb +0 -214
  106. data/lib/wefunder_generated/models/webhook_subscription_list_envelope.rb +0 -225
  107. data/lib/wefunder_generated/models/webhook_subscription_list_envelope_meta.rb +0 -225
  108. data/lib/wefunder_generated/models/webhook_subscription_with_recent_deliveries_envelope.rb +0 -214
  109. data/lib/wefunder_generated/models/webhook_subscription_with_recent_deliveries_envelope_data.rb +0 -322
  110. data/lib/wefunder_generated/models/webhook_subscription_with_secret2_envelope_data.rb +0 -320
  111. data/lib/wefunder_generated/models/webhook_subscription_with_secret_envelope.rb +0 -214
  112. data/lib/wefunder_generated/models/webhook_subscription_with_secret_envelope_data.rb +0 -320
  113. data/lib/wefunder_generated/models/webhook_test_result.rb +0 -233
@@ -14,35 +14,26 @@ require 'date'
14
14
  require 'time'
15
15
 
16
16
  module WefunderGenerated
17
- # Full attribution data with investor PII (Tier 2 - founders only). Returned when detail_level=full is requested by an authorized founder.
18
- class FullAttribution
19
- # Real Wefunder investment ID
20
- attr_accessor :investment_id
17
+ # Optional UTM presets. On a visit that carries this code, each preset fills the matching `utm_*` field when the link leaves it blank; a value on the link always wins. Each value is at most 100 printable ASCII characters. `source` and `campaign` may not start with `wf_`.
18
+ class ReferralCodeUtm
19
+ attr_accessor :source
21
20
 
22
- # Opaque token (same as anonymized response)
23
- attr_accessor :investment_token
21
+ attr_accessor :medium
24
22
 
25
- attr_accessor :investor
23
+ attr_accessor :campaign
26
24
 
27
- # Exact investment amount in dollars
28
- attr_accessor :amount
25
+ attr_accessor :content
29
26
 
30
- attr_accessor :invested_at
31
-
32
- attr_accessor :status
33
-
34
- attr_accessor :attribution
27
+ attr_accessor :term
35
28
 
36
29
  # Attribute mapping from ruby-style variable name to JSON key.
37
30
  def self.attribute_map
38
31
  {
39
- :'investment_id' => :'investment_id',
40
- :'investment_token' => :'investment_token',
41
- :'investor' => :'investor',
42
- :'amount' => :'amount',
43
- :'invested_at' => :'invested_at',
44
- :'status' => :'status',
45
- :'attribution' => :'attribution'
32
+ :'source' => :'source',
33
+ :'medium' => :'medium',
34
+ :'campaign' => :'campaign',
35
+ :'content' => :'content',
36
+ :'term' => :'term'
46
37
  }
47
38
  end
48
39
 
@@ -54,13 +45,11 @@ module WefunderGenerated
54
45
  # Attribute type mapping.
55
46
  def self.openapi_types
56
47
  {
57
- :'investment_id' => :'Integer',
58
- :'investment_token' => :'String',
59
- :'investor' => :'FullAttributionInvestor',
60
- :'amount' => :'Float',
61
- :'invested_at' => :'Time',
62
- :'status' => :'FullAttributionStatus',
63
- :'attribution' => :'FullAttributionAttribution'
48
+ :'source' => :'String',
49
+ :'medium' => :'String',
50
+ :'campaign' => :'String',
51
+ :'content' => :'String',
52
+ :'term' => :'String'
64
53
  }
65
54
  end
66
55
 
@@ -74,43 +63,35 @@ module WefunderGenerated
74
63
  # @param [Hash] attributes Model attributes in the form of hash
75
64
  def initialize(attributes = {})
76
65
  if (!attributes.is_a?(Hash))
77
- fail ArgumentError, "The input argument (attributes) must be a hash in `WefunderGenerated::FullAttribution` initialize method"
66
+ fail ArgumentError, "The input argument (attributes) must be a hash in `WefunderGenerated::ReferralCodeUtm` initialize method"
78
67
  end
79
68
 
80
69
  # check to see if the attribute exists and convert string to symbol for hash key
81
70
  attributes = attributes.each_with_object({}) { |(k, v), h|
82
71
  if (!self.class.attribute_map.key?(k.to_sym))
83
- fail ArgumentError, "`#{k}` is not a valid attribute in `WefunderGenerated::FullAttribution`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
72
+ fail ArgumentError, "`#{k}` is not a valid attribute in `WefunderGenerated::ReferralCodeUtm`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
84
73
  end
85
74
  h[k.to_sym] = v
86
75
  }
87
76
 
88
- if attributes.key?(:'investment_id')
89
- self.investment_id = attributes[:'investment_id']
90
- end
91
-
92
- if attributes.key?(:'investment_token')
93
- self.investment_token = attributes[:'investment_token']
94
- end
95
-
96
- if attributes.key?(:'investor')
97
- self.investor = attributes[:'investor']
77
+ if attributes.key?(:'source')
78
+ self.source = attributes[:'source']
98
79
  end
99
80
 
100
- if attributes.key?(:'amount')
101
- self.amount = attributes[:'amount']
81
+ if attributes.key?(:'medium')
82
+ self.medium = attributes[:'medium']
102
83
  end
103
84
 
104
- if attributes.key?(:'invested_at')
105
- self.invested_at = attributes[:'invested_at']
85
+ if attributes.key?(:'campaign')
86
+ self.campaign = attributes[:'campaign']
106
87
  end
107
88
 
108
- if attributes.key?(:'status')
109
- self.status = attributes[:'status']
89
+ if attributes.key?(:'content')
90
+ self.content = attributes[:'content']
110
91
  end
111
92
 
112
- if attributes.key?(:'attribution')
113
- self.attribution = attributes[:'attribution']
93
+ if attributes.key?(:'term')
94
+ self.term = attributes[:'term']
114
95
  end
115
96
  end
116
97
 
@@ -119,6 +100,26 @@ module WefunderGenerated
119
100
  def list_invalid_properties
120
101
  warn '[DEPRECATED] the `list_invalid_properties` method is obsolete'
121
102
  invalid_properties = Array.new
103
+ if !@source.nil? && @source.to_s.length > 100
104
+ invalid_properties.push('invalid value for "source", the character length must be smaller than or equal to 100.')
105
+ end
106
+
107
+ if !@medium.nil? && @medium.to_s.length > 100
108
+ invalid_properties.push('invalid value for "medium", the character length must be smaller than or equal to 100.')
109
+ end
110
+
111
+ if !@campaign.nil? && @campaign.to_s.length > 100
112
+ invalid_properties.push('invalid value for "campaign", the character length must be smaller than or equal to 100.')
113
+ end
114
+
115
+ if !@content.nil? && @content.to_s.length > 100
116
+ invalid_properties.push('invalid value for "content", the character length must be smaller than or equal to 100.')
117
+ end
118
+
119
+ if !@term.nil? && @term.to_s.length > 100
120
+ invalid_properties.push('invalid value for "term", the character length must be smaller than or equal to 100.')
121
+ end
122
+
122
123
  invalid_properties
123
124
  end
124
125
 
@@ -126,21 +127,94 @@ module WefunderGenerated
126
127
  # @return true if the model is valid
127
128
  def valid?
128
129
  warn '[DEPRECATED] the `valid?` method is obsolete'
130
+ return false if !@source.nil? && @source.to_s.length > 100
131
+ return false if !@medium.nil? && @medium.to_s.length > 100
132
+ return false if !@campaign.nil? && @campaign.to_s.length > 100
133
+ return false if !@content.nil? && @content.to_s.length > 100
134
+ return false if !@term.nil? && @term.to_s.length > 100
129
135
  true
130
136
  end
131
137
 
138
+ # Custom attribute writer method with validation
139
+ # @param [Object] source Value to be assigned
140
+ def source=(source)
141
+ if source.nil?
142
+ fail ArgumentError, 'source cannot be nil'
143
+ end
144
+
145
+ if source.to_s.length > 100
146
+ fail ArgumentError, 'invalid value for "source", the character length must be smaller than or equal to 100.'
147
+ end
148
+
149
+ @source = source
150
+ end
151
+
152
+ # Custom attribute writer method with validation
153
+ # @param [Object] medium Value to be assigned
154
+ def medium=(medium)
155
+ if medium.nil?
156
+ fail ArgumentError, 'medium cannot be nil'
157
+ end
158
+
159
+ if medium.to_s.length > 100
160
+ fail ArgumentError, 'invalid value for "medium", the character length must be smaller than or equal to 100.'
161
+ end
162
+
163
+ @medium = medium
164
+ end
165
+
166
+ # Custom attribute writer method with validation
167
+ # @param [Object] campaign Value to be assigned
168
+ def campaign=(campaign)
169
+ if campaign.nil?
170
+ fail ArgumentError, 'campaign cannot be nil'
171
+ end
172
+
173
+ if campaign.to_s.length > 100
174
+ fail ArgumentError, 'invalid value for "campaign", the character length must be smaller than or equal to 100.'
175
+ end
176
+
177
+ @campaign = campaign
178
+ end
179
+
180
+ # Custom attribute writer method with validation
181
+ # @param [Object] content Value to be assigned
182
+ def content=(content)
183
+ if content.nil?
184
+ fail ArgumentError, 'content cannot be nil'
185
+ end
186
+
187
+ if content.to_s.length > 100
188
+ fail ArgumentError, 'invalid value for "content", the character length must be smaller than or equal to 100.'
189
+ end
190
+
191
+ @content = content
192
+ end
193
+
194
+ # Custom attribute writer method with validation
195
+ # @param [Object] term Value to be assigned
196
+ def term=(term)
197
+ if term.nil?
198
+ fail ArgumentError, 'term cannot be nil'
199
+ end
200
+
201
+ if term.to_s.length > 100
202
+ fail ArgumentError, 'invalid value for "term", the character length must be smaller than or equal to 100.'
203
+ end
204
+
205
+ @term = term
206
+ end
207
+
132
208
  # Checks equality by comparing each attribute.
133
209
  # @param [Object] Object to be compared
134
210
  def ==(o)
135
211
  return true if self.equal?(o)
136
212
  self.class == o.class &&
137
- investment_id == o.investment_id &&
138
- investment_token == o.investment_token &&
139
- investor == o.investor &&
140
- amount == o.amount &&
141
- invested_at == o.invested_at &&
142
- status == o.status &&
143
- attribution == o.attribution
213
+ source == o.source &&
214
+ medium == o.medium &&
215
+ campaign == o.campaign &&
216
+ content == o.content &&
217
+ term == o.term
144
218
  end
145
219
 
146
220
  # @see the `==` method
@@ -152,7 +226,7 @@ module WefunderGenerated
152
226
  # Calculates hash code according to all attributes.
153
227
  # @return [Integer] Hash code
154
228
  def hash
155
- [investment_id, investment_token, investor, amount, invested_at, status, attribution].hash
229
+ [source, medium, campaign, content, term].hash
156
230
  end
157
231
 
158
232
  # Builds the object from hash
@@ -14,19 +14,20 @@ require 'date'
14
14
  require 'time'
15
15
 
16
16
  module WefunderGenerated
17
- class AttributionMe
18
- attr_accessor :user
17
+ class ReferralCodeVisits
18
+ attr_accessor :visits
19
19
 
20
- attr_accessor :partner
20
+ attr_accessor :unique_visitors
21
21
 
22
- attr_accessor :campaigns
22
+ # The last full UTC day the visit numbers include.
23
+ attr_accessor :visits_as_of
23
24
 
24
25
  # Attribute mapping from ruby-style variable name to JSON key.
25
26
  def self.attribute_map
26
27
  {
27
- :'user' => :'user',
28
- :'partner' => :'partner',
29
- :'campaigns' => :'campaigns'
28
+ :'visits' => :'visits',
29
+ :'unique_visitors' => :'unique_visitors',
30
+ :'visits_as_of' => :'visits_as_of'
30
31
  }
31
32
  end
32
33
 
@@ -38,16 +39,15 @@ module WefunderGenerated
38
39
  # Attribute type mapping.
39
40
  def self.openapi_types
40
41
  {
41
- :'user' => :'AttributionUser',
42
- :'partner' => :'AttributionPartner',
43
- :'campaigns' => :'Array<AttributionCampaignAccess>'
42
+ :'visits' => :'Integer',
43
+ :'unique_visitors' => :'Integer',
44
+ :'visits_as_of' => :'Date'
44
45
  }
45
46
  end
46
47
 
47
48
  # List of attributes with nullable: true
48
49
  def self.openapi_nullable
49
50
  Set.new([
50
- :'partner',
51
51
  ])
52
52
  end
53
53
 
@@ -55,29 +55,27 @@ module WefunderGenerated
55
55
  # @param [Hash] attributes Model attributes in the form of hash
56
56
  def initialize(attributes = {})
57
57
  if (!attributes.is_a?(Hash))
58
- fail ArgumentError, "The input argument (attributes) must be a hash in `WefunderGenerated::AttributionMe` initialize method"
58
+ fail ArgumentError, "The input argument (attributes) must be a hash in `WefunderGenerated::ReferralCodeVisits` initialize method"
59
59
  end
60
60
 
61
61
  # check to see if the attribute exists and convert string to symbol for hash key
62
62
  attributes = attributes.each_with_object({}) { |(k, v), h|
63
63
  if (!self.class.attribute_map.key?(k.to_sym))
64
- fail ArgumentError, "`#{k}` is not a valid attribute in `WefunderGenerated::AttributionMe`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
64
+ fail ArgumentError, "`#{k}` is not a valid attribute in `WefunderGenerated::ReferralCodeVisits`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
65
65
  end
66
66
  h[k.to_sym] = v
67
67
  }
68
68
 
69
- if attributes.key?(:'user')
70
- self.user = attributes[:'user']
69
+ if attributes.key?(:'visits')
70
+ self.visits = attributes[:'visits']
71
71
  end
72
72
 
73
- if attributes.key?(:'partner')
74
- self.partner = attributes[:'partner']
73
+ if attributes.key?(:'unique_visitors')
74
+ self.unique_visitors = attributes[:'unique_visitors']
75
75
  end
76
76
 
77
- if attributes.key?(:'campaigns')
78
- if (value = attributes[:'campaigns']).is_a?(Array)
79
- self.campaigns = value
80
- end
77
+ if attributes.key?(:'visits_as_of')
78
+ self.visits_as_of = attributes[:'visits_as_of']
81
79
  end
82
80
  end
83
81
 
@@ -101,9 +99,9 @@ module WefunderGenerated
101
99
  def ==(o)
102
100
  return true if self.equal?(o)
103
101
  self.class == o.class &&
104
- user == o.user &&
105
- partner == o.partner &&
106
- campaigns == o.campaigns
102
+ visits == o.visits &&
103
+ unique_visitors == o.unique_visitors &&
104
+ visits_as_of == o.visits_as_of
107
105
  end
108
106
 
109
107
  # @see the `==` method
@@ -115,7 +113,7 @@ module WefunderGenerated
115
113
  # Calculates hash code according to all attributes.
116
114
  # @return [Integer] Hash code
117
115
  def hash
118
- [user, partner, campaigns].hash
116
+ [visits, unique_visitors, visits_as_of].hash
119
117
  end
120
118
 
121
119
  # Builds the object from hash
@@ -14,22 +14,23 @@ require 'date'
14
14
  require 'time'
15
15
 
16
16
  module WefunderGenerated
17
- class AttributionCampaignAccess
18
- attr_accessor :id
17
+ class ReferralCohort
18
+ # ISO week, Monday to Sunday UTC.
19
+ attr_accessor :week
19
20
 
20
- attr_accessor :company_name
21
+ attr_accessor :investors
21
22
 
22
- attr_accessor :company_id
23
+ attr_accessor :policy_version
23
24
 
24
- attr_accessor :access_level
25
+ attr_accessor :published_at
25
26
 
26
27
  # Attribute mapping from ruby-style variable name to JSON key.
27
28
  def self.attribute_map
28
29
  {
29
- :'id' => :'id',
30
- :'company_name' => :'company_name',
31
- :'company_id' => :'company_id',
32
- :'access_level' => :'access_level'
30
+ :'week' => :'week',
31
+ :'investors' => :'investors',
32
+ :'policy_version' => :'policy_version',
33
+ :'published_at' => :'published_at'
33
34
  }
34
35
  end
35
36
 
@@ -41,10 +42,10 @@ module WefunderGenerated
41
42
  # Attribute type mapping.
42
43
  def self.openapi_types
43
44
  {
44
- :'id' => :'Integer',
45
- :'company_name' => :'String',
46
- :'company_id' => :'Integer',
47
- :'access_level' => :'Integer'
45
+ :'week' => :'String',
46
+ :'investors' => :'ReferralCohortInvestors',
47
+ :'policy_version' => :'Integer',
48
+ :'published_at' => :'Time'
48
49
  }
49
50
  end
50
51
 
@@ -58,31 +59,31 @@ module WefunderGenerated
58
59
  # @param [Hash] attributes Model attributes in the form of hash
59
60
  def initialize(attributes = {})
60
61
  if (!attributes.is_a?(Hash))
61
- fail ArgumentError, "The input argument (attributes) must be a hash in `WefunderGenerated::AttributionCampaignAccess` initialize method"
62
+ fail ArgumentError, "The input argument (attributes) must be a hash in `WefunderGenerated::ReferralCohort` initialize method"
62
63
  end
63
64
 
64
65
  # check to see if the attribute exists and convert string to symbol for hash key
65
66
  attributes = attributes.each_with_object({}) { |(k, v), h|
66
67
  if (!self.class.attribute_map.key?(k.to_sym))
67
- fail ArgumentError, "`#{k}` is not a valid attribute in `WefunderGenerated::AttributionCampaignAccess`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
68
+ fail ArgumentError, "`#{k}` is not a valid attribute in `WefunderGenerated::ReferralCohort`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
68
69
  end
69
70
  h[k.to_sym] = v
70
71
  }
71
72
 
72
- if attributes.key?(:'id')
73
- self.id = attributes[:'id']
73
+ if attributes.key?(:'week')
74
+ self.week = attributes[:'week']
74
75
  end
75
76
 
76
- if attributes.key?(:'company_name')
77
- self.company_name = attributes[:'company_name']
77
+ if attributes.key?(:'investors')
78
+ self.investors = attributes[:'investors']
78
79
  end
79
80
 
80
- if attributes.key?(:'company_id')
81
- self.company_id = attributes[:'company_id']
81
+ if attributes.key?(:'policy_version')
82
+ self.policy_version = attributes[:'policy_version']
82
83
  end
83
84
 
84
- if attributes.key?(:'access_level')
85
- self.access_level = attributes[:'access_level']
85
+ if attributes.key?(:'published_at')
86
+ self.published_at = attributes[:'published_at']
86
87
  end
87
88
  end
88
89
 
@@ -106,10 +107,10 @@ module WefunderGenerated
106
107
  def ==(o)
107
108
  return true if self.equal?(o)
108
109
  self.class == o.class &&
109
- id == o.id &&
110
- company_name == o.company_name &&
111
- company_id == o.company_id &&
112
- access_level == o.access_level
110
+ week == o.week &&
111
+ investors == o.investors &&
112
+ policy_version == o.policy_version &&
113
+ published_at == o.published_at
113
114
  end
114
115
 
115
116
  # @see the `==` method
@@ -121,7 +122,7 @@ module WefunderGenerated
121
122
  # Calculates hash code according to all attributes.
122
123
  # @return [Integer] Hash code
123
124
  def hash
124
- [id, company_name, company_id, access_level].hash
125
+ [week, investors, policy_version, published_at].hash
125
126
  end
126
127
 
127
128
  # Builds the object from hash