wefunder 1.0.1 → 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 +33 -11
  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,13 +14,13 @@ require 'date'
14
14
  require 'time'
15
15
 
16
16
  module WefunderGenerated
17
- class AttributionStatsEnvelope
18
- attr_accessor :data
17
+ class CreateOfferingMemberLinkRequest
18
+ attr_accessor :member_link
19
19
 
20
20
  # Attribute mapping from ruby-style variable name to JSON key.
21
21
  def self.attribute_map
22
22
  {
23
- :'data' => :'data'
23
+ :'member_link' => :'member_link'
24
24
  }
25
25
  end
26
26
 
@@ -32,7 +32,7 @@ module WefunderGenerated
32
32
  # Attribute type mapping.
33
33
  def self.openapi_types
34
34
  {
35
- :'data' => :'AttributionStats'
35
+ :'member_link' => :'MemberLinkCreateInput'
36
36
  }
37
37
  end
38
38
 
@@ -46,19 +46,19 @@ module WefunderGenerated
46
46
  # @param [Hash] attributes Model attributes in the form of hash
47
47
  def initialize(attributes = {})
48
48
  if (!attributes.is_a?(Hash))
49
- fail ArgumentError, "The input argument (attributes) must be a hash in `WefunderGenerated::AttributionStatsEnvelope` initialize method"
49
+ fail ArgumentError, "The input argument (attributes) must be a hash in `WefunderGenerated::CreateOfferingMemberLinkRequest` initialize method"
50
50
  end
51
51
 
52
52
  # check to see if the attribute exists and convert string to symbol for hash key
53
53
  attributes = attributes.each_with_object({}) { |(k, v), h|
54
54
  if (!self.class.attribute_map.key?(k.to_sym))
55
- fail ArgumentError, "`#{k}` is not a valid attribute in `WefunderGenerated::AttributionStatsEnvelope`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
55
+ fail ArgumentError, "`#{k}` is not a valid attribute in `WefunderGenerated::CreateOfferingMemberLinkRequest`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
56
56
  end
57
57
  h[k.to_sym] = v
58
58
  }
59
59
 
60
- if attributes.key?(:'data')
61
- self.data = attributes[:'data']
60
+ if attributes.key?(:'member_link')
61
+ self.member_link = attributes[:'member_link']
62
62
  end
63
63
  end
64
64
 
@@ -82,7 +82,7 @@ module WefunderGenerated
82
82
  def ==(o)
83
83
  return true if self.equal?(o)
84
84
  self.class == o.class &&
85
- data == o.data
85
+ member_link == o.member_link
86
86
  end
87
87
 
88
88
  # @see the `==` method
@@ -94,7 +94,7 @@ module WefunderGenerated
94
94
  # Calculates hash code according to all attributes.
95
95
  # @return [Integer] Hash code
96
96
  def hash
97
- [data].hash
97
+ [member_link].hash
98
98
  end
99
99
 
100
100
  # Builds the object from hash
@@ -14,47 +14,29 @@ require 'date'
14
14
  require 'time'
15
15
 
16
16
  module WefunderGenerated
17
- class CreatePartnerInviteRequest
18
- attr_accessor :direction
17
+ class CreateReferralCodeRequest
18
+ # Your name for the code, e.g. a campaign or newsletter issue.
19
+ attr_accessor :label
19
20
 
20
- # Required for founder_to_partner direction
21
+ # Credit only investments in this company (`co_…`). Omit both `company_id` and `offering_id` for a code that credits any company. Fixed at creation.
21
22
  attr_accessor :company_id
22
23
 
23
- # Required for founder_to_partner direction
24
- attr_accessor :partner_email
25
-
26
- # 1=anonymized (default), 2=detailed (future)
27
- attr_accessor :access_level
28
-
29
- class EnumAttributeValidator
30
- attr_reader :datatype
31
- attr_reader :allowable_values
32
-
33
- def initialize(datatype, allowable_values)
34
- @allowable_values = allowable_values.map do |value|
35
- case datatype.to_s
36
- when /Integer/i
37
- value.to_i
38
- when /Float/i
39
- value.to_f
40
- else
41
- value
42
- end
43
- end
44
- end
24
+ # Credit only investments in this offering's company (`ofr_…`). The offering must be publicly visible. Fixed at creation.
25
+ attr_accessor :offering_id
45
26
 
46
- def valid?(value)
47
- !value || allowable_values.include?(value)
48
- end
49
- end
27
+ attr_accessor :utm
28
+
29
+ # Free-form metadata for your own use, at most 4 KB.
30
+ attr_accessor :metadata
50
31
 
51
32
  # Attribute mapping from ruby-style variable name to JSON key.
52
33
  def self.attribute_map
53
34
  {
54
- :'direction' => :'direction',
35
+ :'label' => :'label',
55
36
  :'company_id' => :'company_id',
56
- :'partner_email' => :'partner_email',
57
- :'access_level' => :'access_level'
37
+ :'offering_id' => :'offering_id',
38
+ :'utm' => :'utm',
39
+ :'metadata' => :'metadata'
58
40
  }
59
41
  end
60
42
 
@@ -66,10 +48,11 @@ module WefunderGenerated
66
48
  # Attribute type mapping.
67
49
  def self.openapi_types
68
50
  {
69
- :'direction' => :'String',
70
- :'company_id' => :'Integer',
71
- :'partner_email' => :'String',
72
- :'access_level' => :'Integer'
51
+ :'label' => :'String',
52
+ :'company_id' => :'String',
53
+ :'offering_id' => :'String',
54
+ :'utm' => :'ReferralCodeUtm',
55
+ :'metadata' => :'Hash<String, Object>'
73
56
  }
74
57
  end
75
58
 
@@ -83,35 +66,39 @@ module WefunderGenerated
83
66
  # @param [Hash] attributes Model attributes in the form of hash
84
67
  def initialize(attributes = {})
85
68
  if (!attributes.is_a?(Hash))
86
- fail ArgumentError, "The input argument (attributes) must be a hash in `WefunderGenerated::CreatePartnerInviteRequest` initialize method"
69
+ fail ArgumentError, "The input argument (attributes) must be a hash in `WefunderGenerated::CreateReferralCodeRequest` initialize method"
87
70
  end
88
71
 
89
72
  # check to see if the attribute exists and convert string to symbol for hash key
90
73
  attributes = attributes.each_with_object({}) { |(k, v), h|
91
74
  if (!self.class.attribute_map.key?(k.to_sym))
92
- fail ArgumentError, "`#{k}` is not a valid attribute in `WefunderGenerated::CreatePartnerInviteRequest`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
75
+ fail ArgumentError, "`#{k}` is not a valid attribute in `WefunderGenerated::CreateReferralCodeRequest`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
93
76
  end
94
77
  h[k.to_sym] = v
95
78
  }
96
79
 
97
- if attributes.key?(:'direction')
98
- self.direction = attributes[:'direction']
80
+ if attributes.key?(:'label')
81
+ self.label = attributes[:'label']
99
82
  else
100
- self.direction = nil
83
+ self.label = nil
101
84
  end
102
85
 
103
86
  if attributes.key?(:'company_id')
104
87
  self.company_id = attributes[:'company_id']
105
88
  end
106
89
 
107
- if attributes.key?(:'partner_email')
108
- self.partner_email = attributes[:'partner_email']
90
+ if attributes.key?(:'offering_id')
91
+ self.offering_id = attributes[:'offering_id']
109
92
  end
110
93
 
111
- if attributes.key?(:'access_level')
112
- self.access_level = attributes[:'access_level']
113
- else
114
- self.access_level = 1
94
+ if attributes.key?(:'utm')
95
+ self.utm = attributes[:'utm']
96
+ end
97
+
98
+ if attributes.key?(:'metadata')
99
+ if (value = attributes[:'metadata']).is_a?(Hash)
100
+ self.metadata = value
101
+ end
115
102
  end
116
103
  end
117
104
 
@@ -120,8 +107,12 @@ module WefunderGenerated
120
107
  def list_invalid_properties
121
108
  warn '[DEPRECATED] the `list_invalid_properties` method is obsolete'
122
109
  invalid_properties = Array.new
123
- if @direction.nil?
124
- invalid_properties.push('invalid value for "direction", direction cannot be nil.')
110
+ if @label.nil?
111
+ invalid_properties.push('invalid value for "label", label cannot be nil.')
112
+ end
113
+
114
+ if @label.to_s.length > 200
115
+ invalid_properties.push('invalid value for "label", the character length must be smaller than or equal to 200.')
125
116
  end
126
117
 
127
118
  invalid_properties
@@ -131,20 +122,23 @@ module WefunderGenerated
131
122
  # @return true if the model is valid
132
123
  def valid?
133
124
  warn '[DEPRECATED] the `valid?` method is obsolete'
134
- return false if @direction.nil?
135
- direction_validator = EnumAttributeValidator.new('String', ["partner_to_founder", "founder_to_partner"])
136
- return false unless direction_validator.valid?(@direction)
125
+ return false if @label.nil?
126
+ return false if @label.to_s.length > 200
137
127
  true
138
128
  end
139
129
 
140
- # Custom attribute writer method checking allowed values (enum).
141
- # @param [Object] direction Object to be assigned
142
- def direction=(direction)
143
- validator = EnumAttributeValidator.new('String', ["partner_to_founder", "founder_to_partner"])
144
- unless validator.valid?(direction)
145
- fail ArgumentError, "invalid value for \"direction\", must be one of #{validator.allowable_values}."
130
+ # Custom attribute writer method with validation
131
+ # @param [Object] label Value to be assigned
132
+ def label=(label)
133
+ if label.nil?
134
+ fail ArgumentError, 'label cannot be nil'
146
135
  end
147
- @direction = direction
136
+
137
+ if label.to_s.length > 200
138
+ fail ArgumentError, 'invalid value for "label", the character length must be smaller than or equal to 200.'
139
+ end
140
+
141
+ @label = label
148
142
  end
149
143
 
150
144
  # Checks equality by comparing each attribute.
@@ -152,10 +146,11 @@ module WefunderGenerated
152
146
  def ==(o)
153
147
  return true if self.equal?(o)
154
148
  self.class == o.class &&
155
- direction == o.direction &&
149
+ label == o.label &&
156
150
  company_id == o.company_id &&
157
- partner_email == o.partner_email &&
158
- access_level == o.access_level
151
+ offering_id == o.offering_id &&
152
+ utm == o.utm &&
153
+ metadata == o.metadata
159
154
  end
160
155
 
161
156
  # @see the `==` method
@@ -167,7 +162,7 @@ module WefunderGenerated
167
162
  # Calculates hash code according to all attributes.
168
163
  # @return [Integer] Hash code
169
164
  def hash
170
- [direction, company_id, partner_email, access_level].hash
165
+ [label, company_id, offering_id, utm, metadata].hash
171
166
  end
172
167
 
173
168
  # Builds the object from hash
@@ -14,16 +14,13 @@ require 'date'
14
14
  require 'time'
15
15
 
16
16
  module WefunderGenerated
17
- class AttributionStatsPeriod
18
- attr_accessor :start_date
19
-
20
- attr_accessor :end_date
17
+ class CreateSyndicateJoinSessionRequest
18
+ attr_accessor :join_session
21
19
 
22
20
  # Attribute mapping from ruby-style variable name to JSON key.
23
21
  def self.attribute_map
24
22
  {
25
- :'start_date' => :'start_date',
26
- :'end_date' => :'end_date'
23
+ :'join_session' => :'join_session'
27
24
  }
28
25
  end
29
26
 
@@ -35,8 +32,7 @@ module WefunderGenerated
35
32
  # Attribute type mapping.
36
33
  def self.openapi_types
37
34
  {
38
- :'start_date' => :'Date',
39
- :'end_date' => :'Date'
35
+ :'join_session' => :'CreateSyndicateJoinSessionRequestJoinSession'
40
36
  }
41
37
  end
42
38
 
@@ -50,23 +46,21 @@ module WefunderGenerated
50
46
  # @param [Hash] attributes Model attributes in the form of hash
51
47
  def initialize(attributes = {})
52
48
  if (!attributes.is_a?(Hash))
53
- fail ArgumentError, "The input argument (attributes) must be a hash in `WefunderGenerated::AttributionStatsPeriod` initialize method"
49
+ fail ArgumentError, "The input argument (attributes) must be a hash in `WefunderGenerated::CreateSyndicateJoinSessionRequest` initialize method"
54
50
  end
55
51
 
56
52
  # check to see if the attribute exists and convert string to symbol for hash key
57
53
  attributes = attributes.each_with_object({}) { |(k, v), h|
58
54
  if (!self.class.attribute_map.key?(k.to_sym))
59
- fail ArgumentError, "`#{k}` is not a valid attribute in `WefunderGenerated::AttributionStatsPeriod`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
55
+ fail ArgumentError, "`#{k}` is not a valid attribute in `WefunderGenerated::CreateSyndicateJoinSessionRequest`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
60
56
  end
61
57
  h[k.to_sym] = v
62
58
  }
63
59
 
64
- if attributes.key?(:'start_date')
65
- self.start_date = attributes[:'start_date']
66
- end
67
-
68
- if attributes.key?(:'end_date')
69
- self.end_date = attributes[:'end_date']
60
+ if attributes.key?(:'join_session')
61
+ self.join_session = attributes[:'join_session']
62
+ else
63
+ self.join_session = nil
70
64
  end
71
65
  end
72
66
 
@@ -75,6 +69,10 @@ module WefunderGenerated
75
69
  def list_invalid_properties
76
70
  warn '[DEPRECATED] the `list_invalid_properties` method is obsolete'
77
71
  invalid_properties = Array.new
72
+ if @join_session.nil?
73
+ invalid_properties.push('invalid value for "join_session", join_session cannot be nil.')
74
+ end
75
+
78
76
  invalid_properties
79
77
  end
80
78
 
@@ -82,6 +80,7 @@ module WefunderGenerated
82
80
  # @return true if the model is valid
83
81
  def valid?
84
82
  warn '[DEPRECATED] the `valid?` method is obsolete'
83
+ return false if @join_session.nil?
85
84
  true
86
85
  end
87
86
 
@@ -90,8 +89,7 @@ module WefunderGenerated
90
89
  def ==(o)
91
90
  return true if self.equal?(o)
92
91
  self.class == o.class &&
93
- start_date == o.start_date &&
94
- end_date == o.end_date
92
+ join_session == o.join_session
95
93
  end
96
94
 
97
95
  # @see the `==` method
@@ -103,7 +101,7 @@ module WefunderGenerated
103
101
  # Calculates hash code according to all attributes.
104
102
  # @return [Integer] Hash code
105
103
  def hash
106
- [start_date, end_date].hash
104
+ [join_session].hash
107
105
  end
108
106
 
109
107
  # Builds the object from hash
@@ -14,23 +14,23 @@ require 'date'
14
14
  require 'time'
15
15
 
16
16
  module WefunderGenerated
17
- # An attributed investment with anonymized investor data. No PII is exposed - investor identity is represented by opaque tokens.
18
- class AnonymizedAttribution
19
- # Opaque token identifying the investment (32 characters)
20
- attr_accessor :investment_token
17
+ class CreateSyndicateJoinSessionRequestJoinSession
18
+ attr_accessor :email
21
19
 
22
- # Opaque token identifying the investor (32 characters). Same investor gets different tokens for different campaigns.
23
- attr_accessor :investor_token
20
+ attr_accessor :name
24
21
 
25
- # Investment amount tier (not exact value). Ranges: small ($1-999), medium ($1,000-9,999), large ($10,000+)
26
- attr_accessor :amount_tier
22
+ attr_accessor :mode
27
23
 
28
- # When the investment was applied
29
- attr_accessor :invested_at
24
+ attr_accessor :display
30
25
 
31
- attr_accessor :status
26
+ # Whether the resulting membership needs manager approval before it is joined.
27
+ attr_accessor :require_approval
32
28
 
33
- attr_accessor :attribution
29
+ # HTTPS URL to send the recipient to after they finish.
30
+ attr_accessor :success_url
31
+
32
+ # HTTPS URL to send the recipient to if they cancel.
33
+ attr_accessor :cancel_url
34
34
 
35
35
  class EnumAttributeValidator
36
36
  attr_reader :datatype
@@ -57,12 +57,13 @@ module WefunderGenerated
57
57
  # Attribute mapping from ruby-style variable name to JSON key.
58
58
  def self.attribute_map
59
59
  {
60
- :'investment_token' => :'investment_token',
61
- :'investor_token' => :'investor_token',
62
- :'amount_tier' => :'amount_tier',
63
- :'invested_at' => :'invested_at',
64
- :'status' => :'status',
65
- :'attribution' => :'attribution'
60
+ :'email' => :'email',
61
+ :'name' => :'name',
62
+ :'mode' => :'mode',
63
+ :'display' => :'display',
64
+ :'require_approval' => :'require_approval',
65
+ :'success_url' => :'success_url',
66
+ :'cancel_url' => :'cancel_url'
66
67
  }
67
68
  end
68
69
 
@@ -74,12 +75,13 @@ module WefunderGenerated
74
75
  # Attribute type mapping.
75
76
  def self.openapi_types
76
77
  {
77
- :'investment_token' => :'String',
78
- :'investor_token' => :'String',
79
- :'amount_tier' => :'String',
80
- :'invested_at' => :'Time',
81
- :'status' => :'AnonymizedAttributionStatus',
82
- :'attribution' => :'AnonymizedAttributionAttribution'
78
+ :'email' => :'String',
79
+ :'name' => :'String',
80
+ :'mode' => :'String',
81
+ :'display' => :'String',
82
+ :'require_approval' => :'Boolean',
83
+ :'success_url' => :'String',
84
+ :'cancel_url' => :'String'
83
85
  }
84
86
  end
85
87
 
@@ -93,39 +95,47 @@ module WefunderGenerated
93
95
  # @param [Hash] attributes Model attributes in the form of hash
94
96
  def initialize(attributes = {})
95
97
  if (!attributes.is_a?(Hash))
96
- fail ArgumentError, "The input argument (attributes) must be a hash in `WefunderGenerated::AnonymizedAttribution` initialize method"
98
+ fail ArgumentError, "The input argument (attributes) must be a hash in `WefunderGenerated::CreateSyndicateJoinSessionRequestJoinSession` initialize method"
97
99
  end
98
100
 
99
101
  # check to see if the attribute exists and convert string to symbol for hash key
100
102
  attributes = attributes.each_with_object({}) { |(k, v), h|
101
103
  if (!self.class.attribute_map.key?(k.to_sym))
102
- fail ArgumentError, "`#{k}` is not a valid attribute in `WefunderGenerated::AnonymizedAttribution`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
104
+ fail ArgumentError, "`#{k}` is not a valid attribute in `WefunderGenerated::CreateSyndicateJoinSessionRequestJoinSession`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
103
105
  end
104
106
  h[k.to_sym] = v
105
107
  }
106
108
 
107
- if attributes.key?(:'investment_token')
108
- self.investment_token = attributes[:'investment_token']
109
+ if attributes.key?(:'email')
110
+ self.email = attributes[:'email']
111
+ else
112
+ self.email = nil
113
+ end
114
+
115
+ if attributes.key?(:'name')
116
+ self.name = attributes[:'name']
109
117
  end
110
118
 
111
- if attributes.key?(:'investor_token')
112
- self.investor_token = attributes[:'investor_token']
119
+ if attributes.key?(:'mode')
120
+ self.mode = attributes[:'mode']
121
+ else
122
+ self.mode = 'hosted'
113
123
  end
114
124
 
115
- if attributes.key?(:'amount_tier')
116
- self.amount_tier = attributes[:'amount_tier']
125
+ if attributes.key?(:'display')
126
+ self.display = attributes[:'display']
117
127
  end
118
128
 
119
- if attributes.key?(:'invested_at')
120
- self.invested_at = attributes[:'invested_at']
129
+ if attributes.key?(:'require_approval')
130
+ self.require_approval = attributes[:'require_approval']
121
131
  end
122
132
 
123
- if attributes.key?(:'status')
124
- self.status = attributes[:'status']
133
+ if attributes.key?(:'success_url')
134
+ self.success_url = attributes[:'success_url']
125
135
  end
126
136
 
127
- if attributes.key?(:'attribution')
128
- self.attribution = attributes[:'attribution']
137
+ if attributes.key?(:'cancel_url')
138
+ self.cancel_url = attributes[:'cancel_url']
129
139
  end
130
140
  end
131
141
 
@@ -134,6 +144,10 @@ module WefunderGenerated
134
144
  def list_invalid_properties
135
145
  warn '[DEPRECATED] the `list_invalid_properties` method is obsolete'
136
146
  invalid_properties = Array.new
147
+ if @email.nil?
148
+ invalid_properties.push('invalid value for "email", email cannot be nil.')
149
+ end
150
+
137
151
  invalid_properties
138
152
  end
139
153
 
@@ -141,19 +155,32 @@ module WefunderGenerated
141
155
  # @return true if the model is valid
142
156
  def valid?
143
157
  warn '[DEPRECATED] the `valid?` method is obsolete'
144
- amount_tier_validator = EnumAttributeValidator.new('String', ["small", "medium", "large"])
145
- return false unless amount_tier_validator.valid?(@amount_tier)
158
+ return false if @email.nil?
159
+ mode_validator = EnumAttributeValidator.new('String', ["hosted"])
160
+ return false unless mode_validator.valid?(@mode)
161
+ display_validator = EnumAttributeValidator.new('String', ["redirect", "popup"])
162
+ return false unless display_validator.valid?(@display)
146
163
  true
147
164
  end
148
165
 
149
166
  # Custom attribute writer method checking allowed values (enum).
150
- # @param [Object] amount_tier Object to be assigned
151
- def amount_tier=(amount_tier)
152
- validator = EnumAttributeValidator.new('String', ["small", "medium", "large"])
153
- unless validator.valid?(amount_tier)
154
- fail ArgumentError, "invalid value for \"amount_tier\", must be one of #{validator.allowable_values}."
167
+ # @param [Object] mode Object to be assigned
168
+ def mode=(mode)
169
+ validator = EnumAttributeValidator.new('String', ["hosted"])
170
+ unless validator.valid?(mode)
171
+ fail ArgumentError, "invalid value for \"mode\", must be one of #{validator.allowable_values}."
172
+ end
173
+ @mode = mode
174
+ end
175
+
176
+ # Custom attribute writer method checking allowed values (enum).
177
+ # @param [Object] display Object to be assigned
178
+ def display=(display)
179
+ validator = EnumAttributeValidator.new('String', ["redirect", "popup"])
180
+ unless validator.valid?(display)
181
+ fail ArgumentError, "invalid value for \"display\", must be one of #{validator.allowable_values}."
155
182
  end
156
- @amount_tier = amount_tier
183
+ @display = display
157
184
  end
158
185
 
159
186
  # Checks equality by comparing each attribute.
@@ -161,12 +188,13 @@ module WefunderGenerated
161
188
  def ==(o)
162
189
  return true if self.equal?(o)
163
190
  self.class == o.class &&
164
- investment_token == o.investment_token &&
165
- investor_token == o.investor_token &&
166
- amount_tier == o.amount_tier &&
167
- invested_at == o.invested_at &&
168
- status == o.status &&
169
- attribution == o.attribution
191
+ email == o.email &&
192
+ name == o.name &&
193
+ mode == o.mode &&
194
+ display == o.display &&
195
+ require_approval == o.require_approval &&
196
+ success_url == o.success_url &&
197
+ cancel_url == o.cancel_url
170
198
  end
171
199
 
172
200
  # @see the `==` method
@@ -178,7 +206,7 @@ module WefunderGenerated
178
206
  # Calculates hash code according to all attributes.
179
207
  # @return [Integer] Hash code
180
208
  def hash
181
- [investment_token, investor_token, amount_tier, invested_at, status, attribution].hash
209
+ [email, name, mode, display, require_approval, success_url, cancel_url].hash
182
210
  end
183
211
 
184
212
  # Builds the object from hash
@@ -18,6 +18,9 @@ module WefunderGenerated
18
18
  # Public HTTPS URL to receive deliveries (private/internal IPs rejected).
19
19
  attr_accessor :url
20
20
 
21
+ # Bind the endpoint to one active installation of your app (`inst_…`) instead of creating an app-wide endpoint. An unknown or revoked id is 404. An installation token may omit this (it always binds to its own installation); a user token may bind only to an installation its holder has a role on at or above the installation's granted tier. Bound endpoints are live-only, capped at 5 per installation, idempotent on (installation, url, mode), and their `url` is returned only in this response.
22
+ attr_accessor :installation
23
+
21
24
  # Event names to subscribe to (from the event catalog). At least one.
22
25
  attr_accessor :events
23
26
 
@@ -49,6 +52,7 @@ module WefunderGenerated
49
52
  def self.attribute_map
50
53
  {
51
54
  :'url' => :'url',
55
+ :'installation' => :'installation',
52
56
  :'events' => :'events',
53
57
  :'mode' => :'mode'
54
58
  }
@@ -63,6 +67,7 @@ module WefunderGenerated
63
67
  def self.openapi_types
64
68
  {
65
69
  :'url' => :'String',
70
+ :'installation' => :'String',
66
71
  :'events' => :'Array<String>',
67
72
  :'mode' => :'String'
68
73
  }
@@ -95,6 +100,10 @@ module WefunderGenerated
95
100
  self.url = nil
96
101
  end
97
102
 
103
+ if attributes.key?(:'installation')
104
+ self.installation = attributes[:'installation']
105
+ end
106
+
98
107
  if attributes.key?(:'events')
99
108
  if (value = attributes[:'events']).is_a?(Array)
100
109
  self.events = value
@@ -158,6 +167,7 @@ module WefunderGenerated
158
167
  return true if self.equal?(o)
159
168
  self.class == o.class &&
160
169
  url == o.url &&
170
+ installation == o.installation &&
161
171
  events == o.events &&
162
172
  mode == o.mode
163
173
  end
@@ -171,7 +181,7 @@ module WefunderGenerated
171
181
  # Calculates hash code according to all attributes.
172
182
  # @return [Integer] Hash code
173
183
  def hash
174
- [url, events, mode].hash
184
+ [url, installation, events, mode].hash
175
185
  end
176
186
 
177
187
  # Builds the object from hash