svix 1.24.0 → 1.26.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 (45) hide show
  1. checksums.yaml +4 -4
  2. data/Gemfile.lock +2 -2
  3. data/lib/svix/api/authentication_api.rb +87 -0
  4. data/lib/svix/api/endpoint_api.rb +277 -2
  5. data/lib/svix/api/events_api.rb +3 -3
  6. data/lib/svix/api/message_api.rb +317 -101
  7. data/lib/svix/api/transformation_template_api.rb +195 -24
  8. data/lib/svix/models/auth_token_out.rb +284 -0
  9. data/lib/svix/models/create_message_token_in.rb +250 -0
  10. data/lib/svix/models/create_stream_in.rb +225 -0
  11. data/lib/svix/models/endpoint_created_event_data.rb +1 -0
  12. data/lib/svix/models/endpoint_deleted_event_data.rb +1 -0
  13. data/lib/svix/models/endpoint_mtls_config_in.rb +15 -19
  14. data/lib/svix/models/endpoint_oauth_config_in.rb +13 -2
  15. data/lib/svix/models/endpoint_updated_event_data.rb +1 -0
  16. data/lib/svix/models/environment_settings_out.rb +15 -4
  17. data/lib/svix/models/event_in.rb +223 -0
  18. data/lib/svix/models/event_out.rb +237 -0
  19. data/lib/svix/models/event_stream_out.rb +253 -0
  20. data/lib/svix/models/event_type_from_open_api.rb +280 -0
  21. data/lib/svix/models/event_type_import_open_api_in.rb +13 -1
  22. data/lib/svix/models/event_type_import_open_api_out_data.rb +16 -4
  23. data/lib/svix/models/event_type_in.rb +38 -1
  24. data/lib/svix/models/event_type_out.rb +38 -1
  25. data/lib/svix/models/event_type_patch.rb +38 -1
  26. data/lib/svix/models/event_type_update.rb +38 -1
  27. data/lib/svix/models/hubspot_oauth_config_in.rb +223 -0
  28. data/lib/svix/models/{oauth_payload_out.rb → incoming_webhook_payload_out.rb} +3 -3
  29. data/lib/svix/models/kafka_security_protocol_type.rb +38 -0
  30. data/lib/svix/models/list_response_sink_out.rb +259 -0
  31. data/lib/svix/models/{message_stream_out.rb → message_events_out.rb} +3 -3
  32. data/lib/svix/models/message_subscriber_auth_token_out.rb +237 -0
  33. data/lib/svix/models/{oauth_payload_in.rb → o_auth_payload_in.rb} +3 -3
  34. data/lib/svix/models/o_auth_payload_out.rb +239 -0
  35. data/lib/svix/models/{oauth2_grant_type.rb → oauth2_grant_type_in.rb} +4 -3
  36. data/lib/svix/models/settings_in.rb +15 -4
  37. data/lib/svix/models/settings_out.rb +15 -4
  38. data/lib/svix/models/sink_in.rb +107 -0
  39. data/lib/svix/models/sink_in_one_of.rb +285 -0
  40. data/lib/svix/models/sink_in_one_of1.rb +313 -0
  41. data/lib/svix/models/sink_in_one_of2.rb +321 -0
  42. data/lib/svix/models/sink_in_one_of3.rb +271 -0
  43. data/lib/svix/models/sink_out.rb +107 -0
  44. data/lib/svix/version.rb +1 -1
  45. metadata +24 -6
@@ -21,6 +21,9 @@ module Svix
21
21
 
22
22
  attr_accessor :feature_flag
23
23
 
24
+ # The event type group's name
25
+ attr_accessor :group_name
26
+
24
27
  # The event type's name
25
28
  attr_accessor :name
26
29
 
@@ -33,6 +36,7 @@ module Svix
33
36
  :'archived' => :'archived',
34
37
  :'description' => :'description',
35
38
  :'feature_flag' => :'featureFlag',
39
+ :'group_name' => :'groupName',
36
40
  :'name' => :'name',
37
41
  :'schemas' => :'schemas'
38
42
  }
@@ -49,6 +53,7 @@ module Svix
49
53
  :'archived' => :'Boolean',
50
54
  :'description' => :'String',
51
55
  :'feature_flag' => :'String',
56
+ :'group_name' => :'String',
52
57
  :'name' => :'String',
53
58
  :'schemas' => :'Hash<String, Object>'
54
59
  }
@@ -58,6 +63,7 @@ module Svix
58
63
  def self.openapi_nullable
59
64
  Set.new([
60
65
  :'feature_flag',
66
+ :'group_name',
61
67
  :'schemas'
62
68
  ])
63
69
  end
@@ -91,6 +97,10 @@ module Svix
91
97
  self.feature_flag = attributes[:'feature_flag']
92
98
  end
93
99
 
100
+ if attributes.key?(:'group_name')
101
+ self.group_name = attributes[:'group_name']
102
+ end
103
+
94
104
  if attributes.key?(:'name')
95
105
  self.name = attributes[:'name']
96
106
  end
@@ -119,6 +129,15 @@ module Svix
119
129
  invalid_properties.push("invalid value for \"feature_flag\", must conform to the pattern #{pattern}.")
120
130
  end
121
131
 
132
+ if !@group_name.nil? && @group_name.to_s.length > 256
133
+ invalid_properties.push('invalid value for "group_name", the character length must be smaller than or equal to 256.')
134
+ end
135
+
136
+ pattern = Regexp.new(/^[a-zA-Z0-9\-_.]+$/)
137
+ if !@group_name.nil? && @group_name !~ pattern
138
+ invalid_properties.push("invalid value for \"group_name\", must conform to the pattern #{pattern}.")
139
+ end
140
+
122
141
  if @name.nil?
123
142
  invalid_properties.push('invalid value for "name", name cannot be nil.')
124
143
  end
@@ -141,6 +160,8 @@ module Svix
141
160
  return false if @description.nil?
142
161
  return false if !@feature_flag.nil? && @feature_flag.to_s.length > 256
143
162
  return false if !@feature_flag.nil? && @feature_flag !~ Regexp.new(/^[a-zA-Z0-9\-_.]+$/)
163
+ return false if !@group_name.nil? && @group_name.to_s.length > 256
164
+ return false if !@group_name.nil? && @group_name !~ Regexp.new(/^[a-zA-Z0-9\-_.]+$/)
144
165
  return false if @name.nil?
145
166
  return false if @name.to_s.length > 256
146
167
  return false if @name !~ Regexp.new(/^[a-zA-Z0-9\-_.]+$/)
@@ -162,6 +183,21 @@ module Svix
162
183
  @feature_flag = feature_flag
163
184
  end
164
185
 
186
+ # Custom attribute writer method with validation
187
+ # @param [Object] group_name Value to be assigned
188
+ def group_name=(group_name)
189
+ if !group_name.nil? && group_name.to_s.length > 256
190
+ fail ArgumentError, 'invalid value for "group_name", the character length must be smaller than or equal to 256.'
191
+ end
192
+
193
+ pattern = Regexp.new(/^[a-zA-Z0-9\-_.]+$/)
194
+ if !group_name.nil? && group_name !~ pattern
195
+ fail ArgumentError, "invalid value for \"group_name\", must conform to the pattern #{pattern}."
196
+ end
197
+
198
+ @group_name = group_name
199
+ end
200
+
165
201
  # Custom attribute writer method with validation
166
202
  # @param [Object] name Value to be assigned
167
203
  def name=(name)
@@ -189,6 +225,7 @@ module Svix
189
225
  archived == o.archived &&
190
226
  description == o.description &&
191
227
  feature_flag == o.feature_flag &&
228
+ group_name == o.group_name &&
192
229
  name == o.name &&
193
230
  schemas == o.schemas
194
231
  end
@@ -202,7 +239,7 @@ module Svix
202
239
  # Calculates hash code according to all attributes.
203
240
  # @return [Integer] Hash code
204
241
  def hash
205
- [archived, description, feature_flag, name, schemas].hash
242
+ [archived, description, feature_flag, group_name, name, schemas].hash
206
243
  end
207
244
 
208
245
  # Builds the object from hash
@@ -23,6 +23,9 @@ module Svix
23
23
 
24
24
  attr_accessor :feature_flag
25
25
 
26
+ # The event type group's name
27
+ attr_accessor :group_name
28
+
26
29
  # The event type's name
27
30
  attr_accessor :name
28
31
 
@@ -38,6 +41,7 @@ module Svix
38
41
  :'created_at' => :'createdAt',
39
42
  :'description' => :'description',
40
43
  :'feature_flag' => :'featureFlag',
44
+ :'group_name' => :'groupName',
41
45
  :'name' => :'name',
42
46
  :'schemas' => :'schemas',
43
47
  :'updated_at' => :'updatedAt'
@@ -56,6 +60,7 @@ module Svix
56
60
  :'created_at' => :'Time',
57
61
  :'description' => :'String',
58
62
  :'feature_flag' => :'String',
63
+ :'group_name' => :'String',
59
64
  :'name' => :'String',
60
65
  :'schemas' => :'Hash<String, Object>',
61
66
  :'updated_at' => :'Time'
@@ -66,6 +71,7 @@ module Svix
66
71
  def self.openapi_nullable
67
72
  Set.new([
68
73
  :'feature_flag',
74
+ :'group_name',
69
75
  :'schemas',
70
76
  ])
71
77
  end
@@ -103,6 +109,10 @@ module Svix
103
109
  self.feature_flag = attributes[:'feature_flag']
104
110
  end
105
111
 
112
+ if attributes.key?(:'group_name')
113
+ self.group_name = attributes[:'group_name']
114
+ end
115
+
106
116
  if attributes.key?(:'name')
107
117
  self.name = attributes[:'name']
108
118
  end
@@ -139,6 +149,15 @@ module Svix
139
149
  invalid_properties.push("invalid value for \"feature_flag\", must conform to the pattern #{pattern}.")
140
150
  end
141
151
 
152
+ if !@group_name.nil? && @group_name.to_s.length > 256
153
+ invalid_properties.push('invalid value for "group_name", the character length must be smaller than or equal to 256.')
154
+ end
155
+
156
+ pattern = Regexp.new(/^[a-zA-Z0-9\-_.]+$/)
157
+ if !@group_name.nil? && @group_name !~ pattern
158
+ invalid_properties.push("invalid value for \"group_name\", must conform to the pattern #{pattern}.")
159
+ end
160
+
142
161
  if @name.nil?
143
162
  invalid_properties.push('invalid value for "name", name cannot be nil.')
144
163
  end
@@ -166,6 +185,8 @@ module Svix
166
185
  return false if @description.nil?
167
186
  return false if !@feature_flag.nil? && @feature_flag.to_s.length > 256
168
187
  return false if !@feature_flag.nil? && @feature_flag !~ Regexp.new(/^[a-zA-Z0-9\-_.]+$/)
188
+ return false if !@group_name.nil? && @group_name.to_s.length > 256
189
+ return false if !@group_name.nil? && @group_name !~ Regexp.new(/^[a-zA-Z0-9\-_.]+$/)
169
190
  return false if @name.nil?
170
191
  return false if @name.to_s.length > 256
171
192
  return false if @name !~ Regexp.new(/^[a-zA-Z0-9\-_.]+$/)
@@ -188,6 +209,21 @@ module Svix
188
209
  @feature_flag = feature_flag
189
210
  end
190
211
 
212
+ # Custom attribute writer method with validation
213
+ # @param [Object] group_name Value to be assigned
214
+ def group_name=(group_name)
215
+ if !group_name.nil? && group_name.to_s.length > 256
216
+ fail ArgumentError, 'invalid value for "group_name", the character length must be smaller than or equal to 256.'
217
+ end
218
+
219
+ pattern = Regexp.new(/^[a-zA-Z0-9\-_.]+$/)
220
+ if !group_name.nil? && group_name !~ pattern
221
+ fail ArgumentError, "invalid value for \"group_name\", must conform to the pattern #{pattern}."
222
+ end
223
+
224
+ @group_name = group_name
225
+ end
226
+
191
227
  # Custom attribute writer method with validation
192
228
  # @param [Object] name Value to be assigned
193
229
  def name=(name)
@@ -216,6 +252,7 @@ module Svix
216
252
  created_at == o.created_at &&
217
253
  description == o.description &&
218
254
  feature_flag == o.feature_flag &&
255
+ group_name == o.group_name &&
219
256
  name == o.name &&
220
257
  schemas == o.schemas &&
221
258
  updated_at == o.updated_at
@@ -230,7 +267,7 @@ module Svix
230
267
  # Calculates hash code according to all attributes.
231
268
  # @return [Integer] Hash code
232
269
  def hash
233
- [archived, created_at, description, feature_flag, name, schemas, updated_at].hash
270
+ [archived, created_at, description, feature_flag, group_name, name, schemas, updated_at].hash
234
271
  end
235
272
 
236
273
  # Builds the object from hash
@@ -21,6 +21,9 @@ module Svix
21
21
 
22
22
  attr_accessor :feature_flag
23
23
 
24
+ # The event type group's name
25
+ attr_accessor :group_name
26
+
24
27
  attr_accessor :schemas
25
28
 
26
29
  # Attribute mapping from ruby-style variable name to JSON key.
@@ -29,6 +32,7 @@ module Svix
29
32
  :'archived' => :'archived',
30
33
  :'description' => :'description',
31
34
  :'feature_flag' => :'featureFlag',
35
+ :'group_name' => :'groupName',
32
36
  :'schemas' => :'schemas'
33
37
  }
34
38
  end
@@ -44,6 +48,7 @@ module Svix
44
48
  :'archived' => :'Boolean',
45
49
  :'description' => :'String',
46
50
  :'feature_flag' => :'String',
51
+ :'group_name' => :'String',
47
52
  :'schemas' => :'Hash<String, Object>'
48
53
  }
49
54
  end
@@ -52,6 +57,7 @@ module Svix
52
57
  def self.openapi_nullable
53
58
  Set.new([
54
59
  :'feature_flag',
60
+ :'group_name',
55
61
  :'schemas'
56
62
  ])
57
63
  end
@@ -83,6 +89,10 @@ module Svix
83
89
  self.feature_flag = attributes[:'feature_flag']
84
90
  end
85
91
 
92
+ if attributes.key?(:'group_name')
93
+ self.group_name = attributes[:'group_name']
94
+ end
95
+
86
96
  if attributes.key?(:'schemas')
87
97
  if (value = attributes[:'schemas']).is_a?(Hash)
88
98
  self.schemas = value
@@ -103,6 +113,15 @@ module Svix
103
113
  invalid_properties.push("invalid value for \"feature_flag\", must conform to the pattern #{pattern}.")
104
114
  end
105
115
 
116
+ if !@group_name.nil? && @group_name.to_s.length > 256
117
+ invalid_properties.push('invalid value for "group_name", the character length must be smaller than or equal to 256.')
118
+ end
119
+
120
+ pattern = Regexp.new(/^[a-zA-Z0-9\-_.]+$/)
121
+ if !@group_name.nil? && @group_name !~ pattern
122
+ invalid_properties.push("invalid value for \"group_name\", must conform to the pattern #{pattern}.")
123
+ end
124
+
106
125
  invalid_properties
107
126
  end
108
127
 
@@ -111,6 +130,8 @@ module Svix
111
130
  def valid?
112
131
  return false if !@feature_flag.nil? && @feature_flag.to_s.length > 256
113
132
  return false if !@feature_flag.nil? && @feature_flag !~ Regexp.new(/^[a-zA-Z0-9\-_.]+$/)
133
+ return false if !@group_name.nil? && @group_name.to_s.length > 256
134
+ return false if !@group_name.nil? && @group_name !~ Regexp.new(/^[a-zA-Z0-9\-_.]+$/)
114
135
  true
115
136
  end
116
137
 
@@ -129,6 +150,21 @@ module Svix
129
150
  @feature_flag = feature_flag
130
151
  end
131
152
 
153
+ # Custom attribute writer method with validation
154
+ # @param [Object] group_name Value to be assigned
155
+ def group_name=(group_name)
156
+ if !group_name.nil? && group_name.to_s.length > 256
157
+ fail ArgumentError, 'invalid value for "group_name", the character length must be smaller than or equal to 256.'
158
+ end
159
+
160
+ pattern = Regexp.new(/^[a-zA-Z0-9\-_.]+$/)
161
+ if !group_name.nil? && group_name !~ pattern
162
+ fail ArgumentError, "invalid value for \"group_name\", must conform to the pattern #{pattern}."
163
+ end
164
+
165
+ @group_name = group_name
166
+ end
167
+
132
168
  # Checks equality by comparing each attribute.
133
169
  # @param [Object] Object to be compared
134
170
  def ==(o)
@@ -137,6 +173,7 @@ module Svix
137
173
  archived == o.archived &&
138
174
  description == o.description &&
139
175
  feature_flag == o.feature_flag &&
176
+ group_name == o.group_name &&
140
177
  schemas == o.schemas
141
178
  end
142
179
 
@@ -149,7 +186,7 @@ module Svix
149
186
  # Calculates hash code according to all attributes.
150
187
  # @return [Integer] Hash code
151
188
  def hash
152
- [archived, description, feature_flag, schemas].hash
189
+ [archived, description, feature_flag, group_name, schemas].hash
153
190
  end
154
191
 
155
192
  # Builds the object from hash
@@ -21,6 +21,9 @@ module Svix
21
21
 
22
22
  attr_accessor :feature_flag
23
23
 
24
+ # The event type group's name
25
+ attr_accessor :group_name
26
+
24
27
  # The schema for the event type for a specific version as a JSON schema.
25
28
  attr_accessor :schemas
26
29
 
@@ -30,6 +33,7 @@ module Svix
30
33
  :'archived' => :'archived',
31
34
  :'description' => :'description',
32
35
  :'feature_flag' => :'featureFlag',
36
+ :'group_name' => :'groupName',
33
37
  :'schemas' => :'schemas'
34
38
  }
35
39
  end
@@ -45,6 +49,7 @@ module Svix
45
49
  :'archived' => :'Boolean',
46
50
  :'description' => :'String',
47
51
  :'feature_flag' => :'String',
52
+ :'group_name' => :'String',
48
53
  :'schemas' => :'Hash<String, Object>'
49
54
  }
50
55
  end
@@ -53,6 +58,7 @@ module Svix
53
58
  def self.openapi_nullable
54
59
  Set.new([
55
60
  :'feature_flag',
61
+ :'group_name',
56
62
  :'schemas'
57
63
  ])
58
64
  end
@@ -86,6 +92,10 @@ module Svix
86
92
  self.feature_flag = attributes[:'feature_flag']
87
93
  end
88
94
 
95
+ if attributes.key?(:'group_name')
96
+ self.group_name = attributes[:'group_name']
97
+ end
98
+
89
99
  if attributes.key?(:'schemas')
90
100
  if (value = attributes[:'schemas']).is_a?(Hash)
91
101
  self.schemas = value
@@ -110,6 +120,15 @@ module Svix
110
120
  invalid_properties.push("invalid value for \"feature_flag\", must conform to the pattern #{pattern}.")
111
121
  end
112
122
 
123
+ if !@group_name.nil? && @group_name.to_s.length > 256
124
+ invalid_properties.push('invalid value for "group_name", the character length must be smaller than or equal to 256.')
125
+ end
126
+
127
+ pattern = Regexp.new(/^[a-zA-Z0-9\-_.]+$/)
128
+ if !@group_name.nil? && @group_name !~ pattern
129
+ invalid_properties.push("invalid value for \"group_name\", must conform to the pattern #{pattern}.")
130
+ end
131
+
113
132
  invalid_properties
114
133
  end
115
134
 
@@ -119,6 +138,8 @@ module Svix
119
138
  return false if @description.nil?
120
139
  return false if !@feature_flag.nil? && @feature_flag.to_s.length > 256
121
140
  return false if !@feature_flag.nil? && @feature_flag !~ Regexp.new(/^[a-zA-Z0-9\-_.]+$/)
141
+ return false if !@group_name.nil? && @group_name.to_s.length > 256
142
+ return false if !@group_name.nil? && @group_name !~ Regexp.new(/^[a-zA-Z0-9\-_.]+$/)
122
143
  true
123
144
  end
124
145
 
@@ -137,6 +158,21 @@ module Svix
137
158
  @feature_flag = feature_flag
138
159
  end
139
160
 
161
+ # Custom attribute writer method with validation
162
+ # @param [Object] group_name Value to be assigned
163
+ def group_name=(group_name)
164
+ if !group_name.nil? && group_name.to_s.length > 256
165
+ fail ArgumentError, 'invalid value for "group_name", the character length must be smaller than or equal to 256.'
166
+ end
167
+
168
+ pattern = Regexp.new(/^[a-zA-Z0-9\-_.]+$/)
169
+ if !group_name.nil? && group_name !~ pattern
170
+ fail ArgumentError, "invalid value for \"group_name\", must conform to the pattern #{pattern}."
171
+ end
172
+
173
+ @group_name = group_name
174
+ end
175
+
140
176
  # Checks equality by comparing each attribute.
141
177
  # @param [Object] Object to be compared
142
178
  def ==(o)
@@ -145,6 +181,7 @@ module Svix
145
181
  archived == o.archived &&
146
182
  description == o.description &&
147
183
  feature_flag == o.feature_flag &&
184
+ group_name == o.group_name &&
148
185
  schemas == o.schemas
149
186
  end
150
187
 
@@ -157,7 +194,7 @@ module Svix
157
194
  # Calculates hash code according to all attributes.
158
195
  # @return [Integer] Hash code
159
196
  def hash
160
- [archived, description, feature_flag, schemas].hash
197
+ [archived, description, feature_flag, group_name, schemas].hash
161
198
  end
162
199
 
163
200
  # Builds the object from hash
@@ -0,0 +1,223 @@
1
+ =begin
2
+ #Svix API
3
+
4
+ #No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
5
+
6
+ The version of the OpenAPI document: 1.1.1
7
+
8
+ Generated by: https://openapi-generator.tech
9
+ OpenAPI Generator version: 5.2.0
10
+
11
+ =end
12
+
13
+ require 'date'
14
+ require 'time'
15
+
16
+ module Svix
17
+ class HubspotOauthConfigIn
18
+ attr_accessor :refresh_token
19
+
20
+ # Attribute mapping from ruby-style variable name to JSON key.
21
+ def self.attribute_map
22
+ {
23
+ :'refresh_token' => :'refresh_token'
24
+ }
25
+ end
26
+
27
+ # Returns all the JSON keys this model knows about
28
+ def self.acceptable_attributes
29
+ attribute_map.values
30
+ end
31
+
32
+ # Attribute type mapping.
33
+ def self.openapi_types
34
+ {
35
+ :'refresh_token' => :'String'
36
+ }
37
+ end
38
+
39
+ # List of attributes with nullable: true
40
+ def self.openapi_nullable
41
+ Set.new([
42
+ ])
43
+ end
44
+
45
+ # Initializes the object
46
+ # @param [Hash] attributes Model attributes in the form of hash
47
+ def initialize(attributes = {})
48
+ if (!attributes.is_a?(Hash))
49
+ fail ArgumentError, "The input argument (attributes) must be a hash in `Svix::HubspotOauthConfigIn` initialize method"
50
+ end
51
+
52
+ # check to see if the attribute exists and convert string to symbol for hash key
53
+ attributes = attributes.each_with_object({}) { |(k, v), h|
54
+ if (!self.class.attribute_map.key?(k.to_sym))
55
+ fail ArgumentError, "`#{k}` is not a valid attribute in `Svix::HubspotOauthConfigIn`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
56
+ end
57
+ h[k.to_sym] = v
58
+ }
59
+
60
+ if attributes.key?(:'refresh_token')
61
+ self.refresh_token = attributes[:'refresh_token']
62
+ end
63
+ end
64
+
65
+ # Show invalid properties with the reasons. Usually used together with valid?
66
+ # @return Array for valid properties with the reasons
67
+ def list_invalid_properties
68
+ invalid_properties = Array.new
69
+ if @refresh_token.nil?
70
+ invalid_properties.push('invalid value for "refresh_token", refresh_token cannot be nil.')
71
+ end
72
+
73
+ invalid_properties
74
+ end
75
+
76
+ # Check to see if the all the properties in the model are valid
77
+ # @return true if the model is valid
78
+ def valid?
79
+ return false if @refresh_token.nil?
80
+ true
81
+ end
82
+
83
+ # Checks equality by comparing each attribute.
84
+ # @param [Object] Object to be compared
85
+ def ==(o)
86
+ return true if self.equal?(o)
87
+ self.class == o.class &&
88
+ refresh_token == o.refresh_token
89
+ end
90
+
91
+ # @see the `==` method
92
+ # @param [Object] Object to be compared
93
+ def eql?(o)
94
+ self == o
95
+ end
96
+
97
+ # Calculates hash code according to all attributes.
98
+ # @return [Integer] Hash code
99
+ def hash
100
+ [refresh_token].hash
101
+ end
102
+
103
+ # Builds the object from hash
104
+ # @param [Hash] attributes Model attributes in the form of hash
105
+ # @return [Object] Returns the model itself
106
+ def self.build_from_hash(attributes)
107
+ new.build_from_hash(attributes)
108
+ end
109
+
110
+ # Builds the object from hash
111
+ # @param [Hash] attributes Model attributes in the form of hash
112
+ # @return [Object] Returns the model itself
113
+ def build_from_hash(attributes)
114
+ return nil unless attributes.is_a?(Hash)
115
+ self.class.openapi_types.each_pair do |key, type|
116
+ if attributes[self.class.attribute_map[key]].nil? && self.class.openapi_nullable.include?(key)
117
+ self.send("#{key}=", nil)
118
+ elsif type =~ /\AArray<(.*)>/i
119
+ # check to ensure the input is an array given that the attribute
120
+ # is documented as an array but the input is not
121
+ if attributes[self.class.attribute_map[key]].is_a?(Array)
122
+ self.send("#{key}=", attributes[self.class.attribute_map[key]].map { |v| _deserialize($1, v) })
123
+ end
124
+ elsif !attributes[self.class.attribute_map[key]].nil?
125
+ self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
126
+ end
127
+ end
128
+
129
+ self
130
+ end
131
+
132
+ # Deserializes the data based on type
133
+ # @param string type Data type
134
+ # @param string value Value to be deserialized
135
+ # @return [Object] Deserialized data
136
+ def _deserialize(type, value)
137
+ case type.to_sym
138
+ when :Time
139
+ Time.parse(value)
140
+ when :Date
141
+ Date.parse(value)
142
+ when :String
143
+ value.to_s
144
+ when :Integer
145
+ value.to_i
146
+ when :Float
147
+ value.to_f
148
+ when :Boolean
149
+ if value.to_s =~ /\A(true|t|yes|y|1)\z/i
150
+ true
151
+ else
152
+ false
153
+ end
154
+ when :Object
155
+ # generic object (usually a Hash), return directly
156
+ value
157
+ when /\AArray<(?<inner_type>.+)>\z/
158
+ inner_type = Regexp.last_match[:inner_type]
159
+ value.map { |v| _deserialize(inner_type, v) }
160
+ when /\AHash<(?<k_type>.+?), (?<v_type>.+)>\z/
161
+ k_type = Regexp.last_match[:k_type]
162
+ v_type = Regexp.last_match[:v_type]
163
+ {}.tap do |hash|
164
+ value.each do |k, v|
165
+ hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
166
+ end
167
+ end
168
+ else # model
169
+ # models (e.g. Pet) or oneOf
170
+ klass = Svix.const_get(type)
171
+ klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value)
172
+ end
173
+ end
174
+
175
+ # Returns the string representation of the object
176
+ # @return [String] String presentation of the object
177
+ def to_s
178
+ to_hash.to_s
179
+ end
180
+
181
+ # to_body is an alias to to_hash (backward compatibility)
182
+ # @return [Hash] Returns the object in the form of hash
183
+ def to_body
184
+ to_hash
185
+ end
186
+
187
+ # Returns the object in the form of hash
188
+ # @return [Hash] Returns the object in the form of hash
189
+ def to_hash
190
+ hash = {}
191
+ self.class.attribute_map.each_pair do |attr, param|
192
+ value = self.send(attr)
193
+ if value.nil?
194
+ is_nullable = self.class.openapi_nullable.include?(attr)
195
+ next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
196
+ end
197
+
198
+ hash[param] = _to_hash(value)
199
+ end
200
+ hash
201
+ end
202
+
203
+ # Outputs non-array value in the form of hash
204
+ # For object, use to_hash. Otherwise, just return the value
205
+ # @param [Object] value Any valid value
206
+ # @return [Hash] Returns the value in the form of hash
207
+ def _to_hash(value)
208
+ if value.is_a?(Array)
209
+ value.compact.map { |v| _to_hash(v) }
210
+ elsif value.is_a?(Hash)
211
+ {}.tap do |hash|
212
+ value.each { |k, v| hash[k] = _to_hash(v) }
213
+ end
214
+ elsif value.respond_to? :to_hash
215
+ value.to_hash
216
+ else
217
+ value
218
+ end
219
+ end
220
+
221
+ end
222
+
223
+ end
@@ -14,7 +14,7 @@ require 'date'
14
14
  require 'time'
15
15
 
16
16
  module Svix
17
- class OauthPayloadOut
17
+ class IncomingWebhookPayloadOut
18
18
  attr_accessor :channel
19
19
 
20
20
  attr_accessor :error
@@ -57,13 +57,13 @@ module Svix
57
57
  # @param [Hash] attributes Model attributes in the form of hash
58
58
  def initialize(attributes = {})
59
59
  if (!attributes.is_a?(Hash))
60
- fail ArgumentError, "The input argument (attributes) must be a hash in `Svix::OauthPayloadOut` initialize method"
60
+ fail ArgumentError, "The input argument (attributes) must be a hash in `Svix::IncomingWebhookPayloadOut` initialize method"
61
61
  end
62
62
 
63
63
  # check to see if the attribute exists and convert string to symbol for hash key
64
64
  attributes = attributes.each_with_object({}) { |(k, v), h|
65
65
  if (!self.class.attribute_map.key?(k.to_sym))
66
- fail ArgumentError, "`#{k}` is not a valid attribute in `Svix::OauthPayloadOut`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
66
+ fail ArgumentError, "`#{k}` is not a valid attribute in `Svix::IncomingWebhookPayloadOut`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
67
67
  end
68
68
  h[k.to_sym] = v
69
69
  }