bandwidth-sdk 17.0.1 → 17.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 (229) hide show
  1. checksums.yaml +4 -4
  2. data/Gemfile.lock +2 -2
  3. data/README.md +18 -0
  4. data/bandwidth-sdk.gemspec +1 -2
  5. data/bandwidth.yml +7 -0
  6. data/coverage/.last_run.json +1 -1
  7. data/coverage/.resultset.json +198 -387
  8. data/coverage/index.html +5842 -7703
  9. data/custom_templates/README.mustache +4 -1
  10. data/custom_templates/api_client.mustache +254 -0
  11. data/custom_templates/configuration.mustache +545 -0
  12. data/custom_templates/gem.mustache +2 -0
  13. data/docs/CallsApi.md +20 -5
  14. data/docs/ConferencesApi.md +36 -9
  15. data/docs/MFAApi.md +12 -3
  16. data/docs/MediaApi.md +16 -4
  17. data/docs/MessagesApi.md +8 -2
  18. data/docs/MultiChannelApi.md +4 -1
  19. data/docs/PhoneNumberLookupApi.md +12 -3
  20. data/docs/RecordingsApi.md +40 -10
  21. data/docs/StatisticsApi.md +4 -1
  22. data/docs/TollFreeVerificationApi.md +36 -9
  23. data/docs/TranscriptionsApi.md +12 -3
  24. data/lib/bandwidth-sdk/api/calls_api.rb +6 -6
  25. data/lib/bandwidth-sdk/api/conferences_api.rb +10 -10
  26. data/lib/bandwidth-sdk/api/media_api.rb +5 -5
  27. data/lib/bandwidth-sdk/api/messages_api.rb +3 -3
  28. data/lib/bandwidth-sdk/api/mfa_api.rb +4 -4
  29. data/lib/bandwidth-sdk/api/multi_channel_api.rb +2 -2
  30. data/lib/bandwidth-sdk/api/phone_number_lookup_api.rb +4 -4
  31. data/lib/bandwidth-sdk/api/recordings_api.rb +11 -11
  32. data/lib/bandwidth-sdk/api/statistics_api.rb +2 -2
  33. data/lib/bandwidth-sdk/api/toll_free_verification_api.rb +13 -13
  34. data/lib/bandwidth-sdk/api/transcriptions_api.rb +4 -4
  35. data/lib/bandwidth-sdk/api_client.rb +9 -5
  36. data/lib/bandwidth-sdk/api_error.rb +1 -1
  37. data/lib/bandwidth-sdk/api_model_base.rb +88 -0
  38. data/lib/bandwidth-sdk/configuration.rb +50 -1
  39. data/lib/bandwidth-sdk/models/account_statistics.rb +11 -78
  40. data/lib/bandwidth-sdk/models/additional_denial_reason.rb +41 -78
  41. data/lib/bandwidth-sdk/models/address.rb +23 -90
  42. data/lib/bandwidth-sdk/models/answer_callback.rb +11 -78
  43. data/lib/bandwidth-sdk/models/async_lookup_request.rb +11 -78
  44. data/lib/bandwidth-sdk/models/blocked_webhook.rb +13 -80
  45. data/lib/bandwidth-sdk/models/bridge_complete_callback.rb +11 -78
  46. data/lib/bandwidth-sdk/models/bridge_target_complete_callback.rb +11 -78
  47. data/lib/bandwidth-sdk/models/business_entity_type_enum.rb +1 -1
  48. data/lib/bandwidth-sdk/models/business_registration_type_enum.rb +1 -1
  49. data/lib/bandwidth-sdk/models/call_direction_enum.rb +1 -1
  50. data/lib/bandwidth-sdk/models/call_recording_metadata.rb +11 -78
  51. data/lib/bandwidth-sdk/models/call_state.rb +11 -78
  52. data/lib/bandwidth-sdk/models/call_state_enum.rb +1 -1
  53. data/lib/bandwidth-sdk/models/call_transcription.rb +11 -78
  54. data/lib/bandwidth-sdk/models/call_transcription_detected_language_enum.rb +1 -1
  55. data/lib/bandwidth-sdk/models/call_transcription_metadata.rb +11 -78
  56. data/lib/bandwidth-sdk/models/call_transcription_response.rb +11 -78
  57. data/lib/bandwidth-sdk/models/call_transcription_track_enum.rb +1 -1
  58. data/lib/bandwidth-sdk/models/callback.rb +1 -1
  59. data/lib/bandwidth-sdk/models/callback_method_enum.rb +1 -1
  60. data/lib/bandwidth-sdk/models/card_width_enum.rb +1 -1
  61. data/lib/bandwidth-sdk/models/code_request.rb +11 -78
  62. data/lib/bandwidth-sdk/models/completed_lookup_status_enum.rb +1 -1
  63. data/lib/bandwidth-sdk/models/conference.rb +11 -78
  64. data/lib/bandwidth-sdk/models/conference_completed_callback.rb +11 -78
  65. data/lib/bandwidth-sdk/models/conference_created_callback.rb +11 -78
  66. data/lib/bandwidth-sdk/models/conference_member.rb +11 -78
  67. data/lib/bandwidth-sdk/models/conference_member_exit_callback.rb +11 -78
  68. data/lib/bandwidth-sdk/models/conference_member_join_callback.rb +11 -78
  69. data/lib/bandwidth-sdk/models/conference_recording_available_callback.rb +11 -78
  70. data/lib/bandwidth-sdk/models/conference_recording_metadata.rb +11 -78
  71. data/lib/bandwidth-sdk/models/conference_redirect_callback.rb +11 -78
  72. data/lib/bandwidth-sdk/models/conference_state_enum.rb +1 -1
  73. data/lib/bandwidth-sdk/models/contact.rb +19 -86
  74. data/lib/bandwidth-sdk/models/create_async_bulk_lookup_response.rb +11 -78
  75. data/lib/bandwidth-sdk/models/create_async_bulk_lookup_response_data.rb +11 -78
  76. data/lib/bandwidth-sdk/models/create_call.rb +41 -78
  77. data/lib/bandwidth-sdk/models/create_call_response.rb +81 -78
  78. data/lib/bandwidth-sdk/models/create_message_request_error.rb +31 -78
  79. data/lib/bandwidth-sdk/models/create_multi_channel_message_response.rb +11 -78
  80. data/lib/bandwidth-sdk/models/create_sync_lookup_response.rb +11 -78
  81. data/lib/bandwidth-sdk/models/create_sync_lookup_response_data.rb +11 -78
  82. data/lib/bandwidth-sdk/models/deactivation_event_enum.rb +1 -1
  83. data/lib/bandwidth-sdk/models/disconnect_callback.rb +11 -78
  84. data/lib/bandwidth-sdk/models/diversion.rb +11 -78
  85. data/lib/bandwidth-sdk/models/dtmf_callback.rb +11 -78
  86. data/lib/bandwidth-sdk/models/error.rb +11 -78
  87. data/lib/bandwidth-sdk/models/error_object.rb +41 -78
  88. data/lib/bandwidth-sdk/models/error_source.rb +11 -78
  89. data/lib/bandwidth-sdk/models/failure_webhook.rb +13 -80
  90. data/lib/bandwidth-sdk/models/field_error.rb +11 -78
  91. data/lib/bandwidth-sdk/models/file_format_enum.rb +1 -1
  92. data/lib/bandwidth-sdk/models/gather_callback.rb +11 -78
  93. data/lib/bandwidth-sdk/models/get_async_bulk_lookup_response.rb +11 -78
  94. data/lib/bandwidth-sdk/models/get_async_bulk_lookup_response_data.rb +11 -78
  95. data/lib/bandwidth-sdk/models/in_progress_lookup_status_enum.rb +1 -1
  96. data/lib/bandwidth-sdk/models/inbound_callback.rb +61 -78
  97. data/lib/bandwidth-sdk/models/inbound_callback_message.rb +81 -78
  98. data/lib/bandwidth-sdk/models/inbound_callback_type_enum.rb +1 -1
  99. data/lib/bandwidth-sdk/models/initiate_callback.rb +11 -78
  100. data/lib/bandwidth-sdk/models/latest_message_delivery_status_enum.rb +1 -1
  101. data/lib/bandwidth-sdk/models/line_type_enum.rb +1 -1
  102. data/lib/bandwidth-sdk/models/link.rb +11 -78
  103. data/lib/bandwidth-sdk/models/link_schema.rb +11 -78
  104. data/lib/bandwidth-sdk/models/links_object.rb +11 -78
  105. data/lib/bandwidth-sdk/models/list_message_direction_enum.rb +1 -1
  106. data/lib/bandwidth-sdk/models/list_message_item.rb +11 -78
  107. data/lib/bandwidth-sdk/models/lookup_error_response.rb +11 -78
  108. data/lib/bandwidth-sdk/models/lookup_error_schema.rb +11 -78
  109. data/lib/bandwidth-sdk/models/lookup_error_schema_meta.rb +11 -78
  110. data/lib/bandwidth-sdk/models/lookup_result.rb +11 -78
  111. data/lib/bandwidth-sdk/models/machine_detection_complete_callback.rb +11 -78
  112. data/lib/bandwidth-sdk/models/machine_detection_configuration.rb +11 -78
  113. data/lib/bandwidth-sdk/models/machine_detection_mode_enum.rb +1 -1
  114. data/lib/bandwidth-sdk/models/machine_detection_result.rb +11 -78
  115. data/lib/bandwidth-sdk/models/media.rb +11 -78
  116. data/lib/bandwidth-sdk/models/message.rb +11 -78
  117. data/lib/bandwidth-sdk/models/message_direction_enum.rb +1 -1
  118. data/lib/bandwidth-sdk/models/message_request.rb +31 -78
  119. data/lib/bandwidth-sdk/models/message_status_enum.rb +1 -1
  120. data/lib/bandwidth-sdk/models/message_type_enum.rb +1 -1
  121. data/lib/bandwidth-sdk/models/messages_list.rb +11 -78
  122. data/lib/bandwidth-sdk/models/messaging_code_response.rb +11 -78
  123. data/lib/bandwidth-sdk/models/messaging_request_error.rb +31 -78
  124. data/lib/bandwidth-sdk/models/mfa_forbidden_request_error.rb +11 -78
  125. data/lib/bandwidth-sdk/models/mfa_request_error.rb +11 -78
  126. data/lib/bandwidth-sdk/models/mfa_unauthorized_request_error.rb +11 -78
  127. data/lib/bandwidth-sdk/models/mms_message_content.rb +11 -78
  128. data/lib/bandwidth-sdk/models/mms_message_content_file.rb +11 -78
  129. data/lib/bandwidth-sdk/models/multi_channel_action.rb +3 -4
  130. data/lib/bandwidth-sdk/models/multi_channel_action_calendar_event.rb +41 -78
  131. data/lib/bandwidth-sdk/models/multi_channel_channel_list_mms_object.rb +51 -78
  132. data/lib/bandwidth-sdk/models/multi_channel_channel_list_mms_response_object.rb +61 -78
  133. data/lib/bandwidth-sdk/models/multi_channel_channel_list_object_base.rb +41 -78
  134. data/lib/bandwidth-sdk/models/multi_channel_channel_list_owner_object.rb +21 -78
  135. data/lib/bandwidth-sdk/models/multi_channel_channel_list_rbm_object.rb +51 -78
  136. data/lib/bandwidth-sdk/models/multi_channel_channel_list_rbm_object_all_of_content.rb +3 -4
  137. data/lib/bandwidth-sdk/models/multi_channel_channel_list_rbm_response_object.rb +61 -78
  138. data/lib/bandwidth-sdk/models/multi_channel_channel_list_request_object.rb +3 -4
  139. data/lib/bandwidth-sdk/models/multi_channel_channel_list_response_object.rb +3 -4
  140. data/lib/bandwidth-sdk/models/multi_channel_channel_list_sms_object.rb +51 -78
  141. data/lib/bandwidth-sdk/models/multi_channel_channel_list_sms_response_object.rb +61 -78
  142. data/lib/bandwidth-sdk/models/multi_channel_error.rb +11 -78
  143. data/lib/bandwidth-sdk/models/multi_channel_message_channel_enum.rb +1 -1
  144. data/lib/bandwidth-sdk/models/multi_channel_message_content.rb +11 -78
  145. data/lib/bandwidth-sdk/models/multi_channel_message_request.rb +21 -78
  146. data/lib/bandwidth-sdk/models/multi_channel_message_response_data.rb +41 -78
  147. data/lib/bandwidth-sdk/models/opt_in_workflow.rb +25 -82
  148. data/lib/bandwidth-sdk/models/page_info.rb +11 -78
  149. data/lib/bandwidth-sdk/models/priority_enum.rb +1 -1
  150. data/lib/bandwidth-sdk/models/product_type_enum.rb +1 -1
  151. data/lib/bandwidth-sdk/models/rbm_action_base.rb +21 -78
  152. data/lib/bandwidth-sdk/models/rbm_action_dial.rb +31 -78
  153. data/lib/bandwidth-sdk/models/rbm_action_open_url.rb +21 -78
  154. data/lib/bandwidth-sdk/models/rbm_action_type_enum.rb +1 -1
  155. data/lib/bandwidth-sdk/models/rbm_action_view_location.rb +41 -78
  156. data/lib/bandwidth-sdk/models/rbm_card_content.rb +11 -78
  157. data/lib/bandwidth-sdk/models/rbm_card_content_media.rb +21 -78
  158. data/lib/bandwidth-sdk/models/rbm_location_response.rb +11 -78
  159. data/lib/bandwidth-sdk/models/rbm_media_height_enum.rb +1 -1
  160. data/lib/bandwidth-sdk/models/rbm_message_carousel_card.rb +21 -78
  161. data/lib/bandwidth-sdk/models/rbm_message_content_file.rb +11 -78
  162. data/lib/bandwidth-sdk/models/rbm_message_content_rich_card.rb +3 -4
  163. data/lib/bandwidth-sdk/models/rbm_message_content_text.rb +11 -78
  164. data/lib/bandwidth-sdk/models/rbm_message_media.rb +21 -78
  165. data/lib/bandwidth-sdk/models/rbm_standalone_card.rb +41 -78
  166. data/lib/bandwidth-sdk/models/rbm_suggestion_response.rb +11 -78
  167. data/lib/bandwidth-sdk/models/recording_available_callback.rb +11 -78
  168. data/lib/bandwidth-sdk/models/recording_complete_callback.rb +11 -78
  169. data/lib/bandwidth-sdk/models/recording_state_enum.rb +1 -1
  170. data/lib/bandwidth-sdk/models/recording_transcription_metadata.rb +11 -78
  171. data/lib/bandwidth-sdk/models/recording_transcriptions.rb +11 -78
  172. data/lib/bandwidth-sdk/models/redirect_callback.rb +11 -78
  173. data/lib/bandwidth-sdk/models/redirect_method_enum.rb +1 -1
  174. data/lib/bandwidth-sdk/models/sms_message_content.rb +11 -78
  175. data/lib/bandwidth-sdk/models/standalone_card_orientation_enum.rb +1 -1
  176. data/lib/bandwidth-sdk/models/status_callback.rb +61 -78
  177. data/lib/bandwidth-sdk/models/status_callback_message.rb +81 -78
  178. data/lib/bandwidth-sdk/models/status_callback_type_enum.rb +6 -6
  179. data/lib/bandwidth-sdk/models/stir_shaken.rb +11 -78
  180. data/lib/bandwidth-sdk/models/sync_lookup_request.rb +11 -78
  181. data/lib/bandwidth-sdk/models/telephone_number.rb +11 -78
  182. data/lib/bandwidth-sdk/models/tfv_basic_authentication.rb +11 -78
  183. data/lib/bandwidth-sdk/models/tfv_callback_status_enum.rb +1 -1
  184. data/lib/bandwidth-sdk/models/tfv_error.rb +11 -78
  185. data/lib/bandwidth-sdk/models/tfv_status.rb +13 -80
  186. data/lib/bandwidth-sdk/models/tfv_status_enum.rb +1 -1
  187. data/lib/bandwidth-sdk/models/tfv_submission_info.rb +21 -88
  188. data/lib/bandwidth-sdk/models/tfv_submission_wrapper.rb +11 -78
  189. data/lib/bandwidth-sdk/models/thumbnail_alignment_enum.rb +1 -1
  190. data/lib/bandwidth-sdk/models/transcribe_recording.rb +11 -78
  191. data/lib/bandwidth-sdk/models/transcription.rb +11 -78
  192. data/lib/bandwidth-sdk/models/transcription_available_callback.rb +11 -78
  193. data/lib/bandwidth-sdk/models/transfer_answer_callback.rb +11 -78
  194. data/lib/bandwidth-sdk/models/transfer_complete_callback.rb +11 -78
  195. data/lib/bandwidth-sdk/models/transfer_disconnect_callback.rb +11 -78
  196. data/lib/bandwidth-sdk/models/update_call.rb +11 -78
  197. data/lib/bandwidth-sdk/models/update_call_recording.rb +21 -78
  198. data/lib/bandwidth-sdk/models/update_conference.rb +11 -78
  199. data/lib/bandwidth-sdk/models/update_conference_member.rb +11 -78
  200. data/lib/bandwidth-sdk/models/verification_denial_webhook.rb +13 -80
  201. data/lib/bandwidth-sdk/models/verification_request.rb +51 -88
  202. data/lib/bandwidth-sdk/models/verification_update_request.rb +51 -88
  203. data/lib/bandwidth-sdk/models/verification_webhook.rb +13 -80
  204. data/lib/bandwidth-sdk/models/verify_code_request.rb +13 -80
  205. data/lib/bandwidth-sdk/models/verify_code_response.rb +11 -78
  206. data/lib/bandwidth-sdk/models/voice_api_error.rb +11 -78
  207. data/lib/bandwidth-sdk/models/voice_code_response.rb +11 -78
  208. data/lib/bandwidth-sdk/models/webhook_subscription.rb +13 -80
  209. data/lib/bandwidth-sdk/models/webhook_subscription_basic_authentication.rb +11 -78
  210. data/lib/bandwidth-sdk/models/webhook_subscription_request_schema.rb +15 -82
  211. data/lib/bandwidth-sdk/models/webhook_subscription_type_enum.rb +1 -1
  212. data/lib/bandwidth-sdk/models/webhook_subscriptions_list_body.rb +21 -78
  213. data/lib/bandwidth-sdk/version.rb +2 -2
  214. data/lib/bandwidth-sdk.rb +2 -1
  215. data/openapitools.json +1 -1
  216. data/spec/smoke/calls_api_spec.rb +50 -76
  217. data/spec/smoke/conferences_api_spec.rb +7 -5
  218. data/spec/smoke/media_api_spec.rb +4 -2
  219. data/spec/smoke/messages_api_spec.rb +9 -4
  220. data/spec/smoke/mfa_api_spec.rb +9 -4
  221. data/spec/smoke/multi_channel_api_spec.rb +4 -2
  222. data/spec/smoke/phone_number_lookup_api_spec.rb +6 -4
  223. data/spec/smoke/recordings_api_spec.rb +7 -33
  224. data/spec/smoke/statistics_api_spec.rb +16 -8
  225. data/spec/smoke/toll_free_verification_api_spec.rb +6 -4
  226. data/spec/smoke/transcriptions_api_spec.rb +7 -5
  227. data/spec/spec_helper.rb +2 -0
  228. data/spec/unit/models/verify_code_request_spec.rb +1 -1
  229. metadata +5 -2
@@ -6,7 +6,7 @@
6
6
  The version of the OpenAPI document: 1.0.0
7
7
  Contact: letstalk@bandwidth.com
8
8
  Generated by: https://openapi-generator.tech
9
- Generator version: 7.8.0
9
+ Generator version: 7.17.0
10
10
 
11
11
  =end
12
12
 
@@ -14,7 +14,7 @@ require 'date'
14
14
  require 'time'
15
15
 
16
16
  module Bandwidth
17
- class MultiChannelChannelListRBMResponseObject
17
+ class MultiChannelChannelListRBMResponseObject < ApiModelBase
18
18
  # The sender ID of the message. This could be an alphanumeric sender ID.
19
19
  attr_accessor :from
20
20
 
@@ -61,9 +61,14 @@ module Bandwidth
61
61
  }
62
62
  end
63
63
 
64
+ # Returns attribute mapping this model knows about
65
+ def self.acceptable_attribute_map
66
+ attribute_map
67
+ end
68
+
64
69
  # Returns all the JSON keys this model knows about
65
70
  def self.acceptable_attributes
66
- attribute_map.values
71
+ acceptable_attribute_map.values
67
72
  end
68
73
 
69
74
  # Attribute type mapping.
@@ -99,9 +104,10 @@ module Bandwidth
99
104
  end
100
105
 
101
106
  # check to see if the attribute exists and convert string to symbol for hash key
107
+ acceptable_attribute_map = self.class.acceptable_attribute_map
102
108
  attributes = attributes.each_with_object({}) { |(k, v), h|
103
- if (!self.class.attribute_map.key?(k.to_sym))
104
- fail ArgumentError, "`#{k}` is not a valid attribute in `Bandwidth::MultiChannelChannelListRBMResponseObject`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
109
+ if (!acceptable_attribute_map.key?(k.to_sym))
110
+ fail ArgumentError, "`#{k}` is not a valid attribute in `Bandwidth::MultiChannelChannelListRBMResponseObject`. Please check the name to make sure it's valid. List of attributes: " + acceptable_attribute_map.keys.inspect
105
111
  end
106
112
  h[k.to_sym] = v
107
113
  }
@@ -177,6 +183,56 @@ module Bandwidth
177
183
  true
178
184
  end
179
185
 
186
+ # Custom attribute writer method with validation
187
+ # @param [Object] from Value to be assigned
188
+ def from=(from)
189
+ if from.nil?
190
+ fail ArgumentError, 'from cannot be nil'
191
+ end
192
+
193
+ @from = from
194
+ end
195
+
196
+ # Custom attribute writer method with validation
197
+ # @param [Object] application_id Value to be assigned
198
+ def application_id=(application_id)
199
+ if application_id.nil?
200
+ fail ArgumentError, 'application_id cannot be nil'
201
+ end
202
+
203
+ @application_id = application_id
204
+ end
205
+
206
+ # Custom attribute writer method with validation
207
+ # @param [Object] channel Value to be assigned
208
+ def channel=(channel)
209
+ if channel.nil?
210
+ fail ArgumentError, 'channel cannot be nil'
211
+ end
212
+
213
+ @channel = channel
214
+ end
215
+
216
+ # Custom attribute writer method with validation
217
+ # @param [Object] content Value to be assigned
218
+ def content=(content)
219
+ if content.nil?
220
+ fail ArgumentError, 'content cannot be nil'
221
+ end
222
+
223
+ @content = content
224
+ end
225
+
226
+ # Custom attribute writer method with validation
227
+ # @param [Object] owner Value to be assigned
228
+ def owner=(owner)
229
+ if owner.nil?
230
+ fail ArgumentError, 'owner cannot be nil'
231
+ end
232
+
233
+ @owner = owner
234
+ end
235
+
180
236
  # Checks equality by comparing each attribute.
181
237
  # @param [Object] Object to be compared
182
238
  def ==(o)
@@ -224,61 +280,6 @@ module Bandwidth
224
280
  new(transformed_hash)
225
281
  end
226
282
 
227
- # Deserializes the data based on type
228
- # @param string type Data type
229
- # @param string value Value to be deserialized
230
- # @return [Object] Deserialized data
231
- def self._deserialize(type, value)
232
- case type.to_sym
233
- when :Time
234
- Time.parse(value)
235
- when :Date
236
- Date.parse(value)
237
- when :String
238
- value.to_s
239
- when :Integer
240
- value.to_i
241
- when :Float
242
- value.to_f
243
- when :Boolean
244
- if value.to_s =~ /\A(true|t|yes|y|1)\z/i
245
- true
246
- else
247
- false
248
- end
249
- when :Object
250
- # generic object (usually a Hash), return directly
251
- value
252
- when /\AArray<(?<inner_type>.+)>\z/
253
- inner_type = Regexp.last_match[:inner_type]
254
- value.map { |v| _deserialize(inner_type, v) }
255
- when /\AHash<(?<k_type>.+?), (?<v_type>.+)>\z/
256
- k_type = Regexp.last_match[:k_type]
257
- v_type = Regexp.last_match[:v_type]
258
- {}.tap do |hash|
259
- value.each do |k, v|
260
- hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
261
- end
262
- end
263
- else # model
264
- # models (e.g. Pet) or oneOf
265
- klass = Bandwidth.const_get(type)
266
- klass.respond_to?(:openapi_any_of) || klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value)
267
- end
268
- end
269
-
270
- # Returns the string representation of the object
271
- # @return [String] String presentation of the object
272
- def to_s
273
- to_hash.to_s
274
- end
275
-
276
- # to_body is an alias to to_hash (backward compatibility)
277
- # @return [Hash] Returns the object in the form of hash
278
- def to_body
279
- to_hash
280
- end
281
-
282
283
  # Returns the object in the form of hash
283
284
  # @return [Hash] Returns the object in the form of hash
284
285
  def to_hash
@@ -294,23 +295,5 @@ module Bandwidth
294
295
  end
295
296
  hash
296
297
  end
297
-
298
- # Outputs non-array value in the form of hash
299
- # For object, use to_hash. Otherwise, just return the value
300
- # @param [Object] value Any valid value
301
- # @return [Hash] Returns the value in the form of hash
302
- def _to_hash(value)
303
- if value.is_a?(Array)
304
- value.compact.map { |v| _to_hash(v) }
305
- elsif value.is_a?(Hash)
306
- {}.tap do |hash|
307
- value.each { |k, v| hash[k] = _to_hash(v) }
308
- end
309
- elsif value.respond_to? :to_hash
310
- value.to_hash
311
- else
312
- value
313
- end
314
- end
315
298
  end
316
299
  end
@@ -6,7 +6,7 @@
6
6
  The version of the OpenAPI document: 1.0.0
7
7
  Contact: letstalk@bandwidth.com
8
8
  Generated by: https://openapi-generator.tech
9
- Generator version: 7.8.0
9
+ Generator version: 7.17.0
10
10
 
11
11
  =end
12
12
 
@@ -38,8 +38,7 @@ module Bandwidth
38
38
  openapi_any_of.each do |klass|
39
39
  begin
40
40
  next if klass == :AnyType # "nullable: true"
41
- typed_data = find_and_cast_into_type(klass, data)
42
- return typed_data if typed_data
41
+ return find_and_cast_into_type(klass, data)
43
42
  rescue # rescue all errors so we keep iterating even if the current item lookup raises
44
43
  end
45
44
  end
@@ -65,7 +64,7 @@ module Bandwidth
65
64
  when 'Time'
66
65
  return Time.parse(data)
67
66
  when 'Date'
68
- return Date.parse(data)
67
+ return Date.iso8601(data)
69
68
  when 'String'
70
69
  return data if data.instance_of?(String)
71
70
  when 'Object' # "type: object"
@@ -6,7 +6,7 @@
6
6
  The version of the OpenAPI document: 1.0.0
7
7
  Contact: letstalk@bandwidth.com
8
8
  Generated by: https://openapi-generator.tech
9
- Generator version: 7.8.0
9
+ Generator version: 7.17.0
10
10
 
11
11
  =end
12
12
 
@@ -38,8 +38,7 @@ module Bandwidth
38
38
  openapi_any_of.each do |klass|
39
39
  begin
40
40
  next if klass == :AnyType # "nullable: true"
41
- typed_data = find_and_cast_into_type(klass, data)
42
- return typed_data if typed_data
41
+ return find_and_cast_into_type(klass, data)
43
42
  rescue # rescue all errors so we keep iterating even if the current item lookup raises
44
43
  end
45
44
  end
@@ -65,7 +64,7 @@ module Bandwidth
65
64
  when 'Time'
66
65
  return Time.parse(data)
67
66
  when 'Date'
68
- return Date.parse(data)
67
+ return Date.iso8601(data)
69
68
  when 'String'
70
69
  return data if data.instance_of?(String)
71
70
  when 'Object' # "type: object"
@@ -6,7 +6,7 @@
6
6
  The version of the OpenAPI document: 1.0.0
7
7
  Contact: letstalk@bandwidth.com
8
8
  Generated by: https://openapi-generator.tech
9
- Generator version: 7.8.0
9
+ Generator version: 7.17.0
10
10
 
11
11
  =end
12
12
 
@@ -14,7 +14,7 @@ require 'date'
14
14
  require 'time'
15
15
 
16
16
  module Bandwidth
17
- class MultiChannelChannelListSMSObject
17
+ class MultiChannelChannelListSMSObject < ApiModelBase
18
18
  # The sender ID of the message. This could be an alphanumeric sender ID.
19
19
  attr_accessor :from
20
20
 
@@ -57,9 +57,14 @@ module Bandwidth
57
57
  }
58
58
  end
59
59
 
60
+ # Returns attribute mapping this model knows about
61
+ def self.acceptable_attribute_map
62
+ attribute_map
63
+ end
64
+
60
65
  # Returns all the JSON keys this model knows about
61
66
  def self.acceptable_attributes
62
- attribute_map.values
67
+ acceptable_attribute_map.values
63
68
  end
64
69
 
65
70
  # Attribute type mapping.
@@ -93,9 +98,10 @@ module Bandwidth
93
98
  end
94
99
 
95
100
  # check to see if the attribute exists and convert string to symbol for hash key
101
+ acceptable_attribute_map = self.class.acceptable_attribute_map
96
102
  attributes = attributes.each_with_object({}) { |(k, v), h|
97
- if (!self.class.attribute_map.key?(k.to_sym))
98
- fail ArgumentError, "`#{k}` is not a valid attribute in `Bandwidth::MultiChannelChannelListSMSObject`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
103
+ if (!acceptable_attribute_map.key?(k.to_sym))
104
+ fail ArgumentError, "`#{k}` is not a valid attribute in `Bandwidth::MultiChannelChannelListSMSObject`. Please check the name to make sure it's valid. List of attributes: " + acceptable_attribute_map.keys.inspect
99
105
  end
100
106
  h[k.to_sym] = v
101
107
  }
@@ -160,6 +166,46 @@ module Bandwidth
160
166
  true
161
167
  end
162
168
 
169
+ # Custom attribute writer method with validation
170
+ # @param [Object] from Value to be assigned
171
+ def from=(from)
172
+ if from.nil?
173
+ fail ArgumentError, 'from cannot be nil'
174
+ end
175
+
176
+ @from = from
177
+ end
178
+
179
+ # Custom attribute writer method with validation
180
+ # @param [Object] application_id Value to be assigned
181
+ def application_id=(application_id)
182
+ if application_id.nil?
183
+ fail ArgumentError, 'application_id cannot be nil'
184
+ end
185
+
186
+ @application_id = application_id
187
+ end
188
+
189
+ # Custom attribute writer method with validation
190
+ # @param [Object] channel Value to be assigned
191
+ def channel=(channel)
192
+ if channel.nil?
193
+ fail ArgumentError, 'channel cannot be nil'
194
+ end
195
+
196
+ @channel = channel
197
+ end
198
+
199
+ # Custom attribute writer method with validation
200
+ # @param [Object] content Value to be assigned
201
+ def content=(content)
202
+ if content.nil?
203
+ fail ArgumentError, 'content cannot be nil'
204
+ end
205
+
206
+ @content = content
207
+ end
208
+
163
209
  # Checks equality by comparing each attribute.
164
210
  # @param [Object] Object to be compared
165
211
  def ==(o)
@@ -206,61 +252,6 @@ module Bandwidth
206
252
  new(transformed_hash)
207
253
  end
208
254
 
209
- # Deserializes the data based on type
210
- # @param string type Data type
211
- # @param string value Value to be deserialized
212
- # @return [Object] Deserialized data
213
- def self._deserialize(type, value)
214
- case type.to_sym
215
- when :Time
216
- Time.parse(value)
217
- when :Date
218
- Date.parse(value)
219
- when :String
220
- value.to_s
221
- when :Integer
222
- value.to_i
223
- when :Float
224
- value.to_f
225
- when :Boolean
226
- if value.to_s =~ /\A(true|t|yes|y|1)\z/i
227
- true
228
- else
229
- false
230
- end
231
- when :Object
232
- # generic object (usually a Hash), return directly
233
- value
234
- when /\AArray<(?<inner_type>.+)>\z/
235
- inner_type = Regexp.last_match[:inner_type]
236
- value.map { |v| _deserialize(inner_type, v) }
237
- when /\AHash<(?<k_type>.+?), (?<v_type>.+)>\z/
238
- k_type = Regexp.last_match[:k_type]
239
- v_type = Regexp.last_match[:v_type]
240
- {}.tap do |hash|
241
- value.each do |k, v|
242
- hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
243
- end
244
- end
245
- else # model
246
- # models (e.g. Pet) or oneOf
247
- klass = Bandwidth.const_get(type)
248
- klass.respond_to?(:openapi_any_of) || klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value)
249
- end
250
- end
251
-
252
- # Returns the string representation of the object
253
- # @return [String] String presentation of the object
254
- def to_s
255
- to_hash.to_s
256
- end
257
-
258
- # to_body is an alias to to_hash (backward compatibility)
259
- # @return [Hash] Returns the object in the form of hash
260
- def to_body
261
- to_hash
262
- end
263
-
264
255
  # Returns the object in the form of hash
265
256
  # @return [Hash] Returns the object in the form of hash
266
257
  def to_hash
@@ -276,23 +267,5 @@ module Bandwidth
276
267
  end
277
268
  hash
278
269
  end
279
-
280
- # Outputs non-array value in the form of hash
281
- # For object, use to_hash. Otherwise, just return the value
282
- # @param [Object] value Any valid value
283
- # @return [Hash] Returns the value in the form of hash
284
- def _to_hash(value)
285
- if value.is_a?(Array)
286
- value.compact.map { |v| _to_hash(v) }
287
- elsif value.is_a?(Hash)
288
- {}.tap do |hash|
289
- value.each { |k, v| hash[k] = _to_hash(v) }
290
- end
291
- elsif value.respond_to? :to_hash
292
- value.to_hash
293
- else
294
- value
295
- end
296
- end
297
270
  end
298
271
  end
@@ -6,7 +6,7 @@
6
6
  The version of the OpenAPI document: 1.0.0
7
7
  Contact: letstalk@bandwidth.com
8
8
  Generated by: https://openapi-generator.tech
9
- Generator version: 7.8.0
9
+ Generator version: 7.17.0
10
10
 
11
11
  =end
12
12
 
@@ -14,7 +14,7 @@ require 'date'
14
14
  require 'time'
15
15
 
16
16
  module Bandwidth
17
- class MultiChannelChannelListSMSResponseObject
17
+ class MultiChannelChannelListSMSResponseObject < ApiModelBase
18
18
  # The sender ID of the message. This could be an alphanumeric sender ID.
19
19
  attr_accessor :from
20
20
 
@@ -61,9 +61,14 @@ module Bandwidth
61
61
  }
62
62
  end
63
63
 
64
+ # Returns attribute mapping this model knows about
65
+ def self.acceptable_attribute_map
66
+ attribute_map
67
+ end
68
+
64
69
  # Returns all the JSON keys this model knows about
65
70
  def self.acceptable_attributes
66
- attribute_map.values
71
+ acceptable_attribute_map.values
67
72
  end
68
73
 
69
74
  # Attribute type mapping.
@@ -99,9 +104,10 @@ module Bandwidth
99
104
  end
100
105
 
101
106
  # check to see if the attribute exists and convert string to symbol for hash key
107
+ acceptable_attribute_map = self.class.acceptable_attribute_map
102
108
  attributes = attributes.each_with_object({}) { |(k, v), h|
103
- if (!self.class.attribute_map.key?(k.to_sym))
104
- fail ArgumentError, "`#{k}` is not a valid attribute in `Bandwidth::MultiChannelChannelListSMSResponseObject`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
109
+ if (!acceptable_attribute_map.key?(k.to_sym))
110
+ fail ArgumentError, "`#{k}` is not a valid attribute in `Bandwidth::MultiChannelChannelListSMSResponseObject`. Please check the name to make sure it's valid. List of attributes: " + acceptable_attribute_map.keys.inspect
105
111
  end
106
112
  h[k.to_sym] = v
107
113
  }
@@ -177,6 +183,56 @@ module Bandwidth
177
183
  true
178
184
  end
179
185
 
186
+ # Custom attribute writer method with validation
187
+ # @param [Object] from Value to be assigned
188
+ def from=(from)
189
+ if from.nil?
190
+ fail ArgumentError, 'from cannot be nil'
191
+ end
192
+
193
+ @from = from
194
+ end
195
+
196
+ # Custom attribute writer method with validation
197
+ # @param [Object] application_id Value to be assigned
198
+ def application_id=(application_id)
199
+ if application_id.nil?
200
+ fail ArgumentError, 'application_id cannot be nil'
201
+ end
202
+
203
+ @application_id = application_id
204
+ end
205
+
206
+ # Custom attribute writer method with validation
207
+ # @param [Object] channel Value to be assigned
208
+ def channel=(channel)
209
+ if channel.nil?
210
+ fail ArgumentError, 'channel cannot be nil'
211
+ end
212
+
213
+ @channel = channel
214
+ end
215
+
216
+ # Custom attribute writer method with validation
217
+ # @param [Object] content Value to be assigned
218
+ def content=(content)
219
+ if content.nil?
220
+ fail ArgumentError, 'content cannot be nil'
221
+ end
222
+
223
+ @content = content
224
+ end
225
+
226
+ # Custom attribute writer method with validation
227
+ # @param [Object] owner Value to be assigned
228
+ def owner=(owner)
229
+ if owner.nil?
230
+ fail ArgumentError, 'owner cannot be nil'
231
+ end
232
+
233
+ @owner = owner
234
+ end
235
+
180
236
  # Checks equality by comparing each attribute.
181
237
  # @param [Object] Object to be compared
182
238
  def ==(o)
@@ -224,61 +280,6 @@ module Bandwidth
224
280
  new(transformed_hash)
225
281
  end
226
282
 
227
- # Deserializes the data based on type
228
- # @param string type Data type
229
- # @param string value Value to be deserialized
230
- # @return [Object] Deserialized data
231
- def self._deserialize(type, value)
232
- case type.to_sym
233
- when :Time
234
- Time.parse(value)
235
- when :Date
236
- Date.parse(value)
237
- when :String
238
- value.to_s
239
- when :Integer
240
- value.to_i
241
- when :Float
242
- value.to_f
243
- when :Boolean
244
- if value.to_s =~ /\A(true|t|yes|y|1)\z/i
245
- true
246
- else
247
- false
248
- end
249
- when :Object
250
- # generic object (usually a Hash), return directly
251
- value
252
- when /\AArray<(?<inner_type>.+)>\z/
253
- inner_type = Regexp.last_match[:inner_type]
254
- value.map { |v| _deserialize(inner_type, v) }
255
- when /\AHash<(?<k_type>.+?), (?<v_type>.+)>\z/
256
- k_type = Regexp.last_match[:k_type]
257
- v_type = Regexp.last_match[:v_type]
258
- {}.tap do |hash|
259
- value.each do |k, v|
260
- hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
261
- end
262
- end
263
- else # model
264
- # models (e.g. Pet) or oneOf
265
- klass = Bandwidth.const_get(type)
266
- klass.respond_to?(:openapi_any_of) || klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value)
267
- end
268
- end
269
-
270
- # Returns the string representation of the object
271
- # @return [String] String presentation of the object
272
- def to_s
273
- to_hash.to_s
274
- end
275
-
276
- # to_body is an alias to to_hash (backward compatibility)
277
- # @return [Hash] Returns the object in the form of hash
278
- def to_body
279
- to_hash
280
- end
281
-
282
283
  # Returns the object in the form of hash
283
284
  # @return [Hash] Returns the object in the form of hash
284
285
  def to_hash
@@ -294,23 +295,5 @@ module Bandwidth
294
295
  end
295
296
  hash
296
297
  end
297
-
298
- # Outputs non-array value in the form of hash
299
- # For object, use to_hash. Otherwise, just return the value
300
- # @param [Object] value Any valid value
301
- # @return [Hash] Returns the value in the form of hash
302
- def _to_hash(value)
303
- if value.is_a?(Array)
304
- value.compact.map { |v| _to_hash(v) }
305
- elsif value.is_a?(Hash)
306
- {}.tap do |hash|
307
- value.each { |k, v| hash[k] = _to_hash(v) }
308
- end
309
- elsif value.respond_to? :to_hash
310
- value.to_hash
311
- else
312
- value
313
- end
314
- end
315
298
  end
316
299
  end