bandwidth-sdk 14.1.3 → 15.0.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 (102) hide show
  1. checksums.yaml +4 -4
  2. data/Gemfile.lock +10 -10
  3. data/README.md +34 -1
  4. data/bandwidth.yml +640 -58
  5. data/coverage/.last_run.json +1 -1
  6. data/coverage/.resultset.json +210 -6
  7. data/coverage/index.html +14901 -12699
  8. data/docs/CardWidthEnum.md +15 -0
  9. data/docs/CreateMultiChannelMessageResponse.md +22 -0
  10. data/docs/ErrorObject.md +20 -0
  11. data/docs/Link.md +20 -0
  12. data/docs/Message.md +1 -1
  13. data/docs/MessageCallback.md +3 -1
  14. data/docs/MessageRequest.md +1 -1
  15. data/docs/MmsMessageContent.md +20 -0
  16. data/docs/MultiChannelAction.md +89 -0
  17. data/docs/MultiChannelActionCalendarEvent.md +30 -0
  18. data/docs/MultiChannelApi.md +80 -0
  19. data/docs/MultiChannelCallbackData.md +26 -0
  20. data/docs/MultiChannelChannelListObject.md +24 -0
  21. data/docs/MultiChannelChannelListObjectContent.md +55 -0
  22. data/docs/MultiChannelMessageCallbackData.md +32 -0
  23. data/docs/MultiChannelMessageChannelEnum.md +15 -0
  24. data/docs/MultiChannelMessageData.md +34 -0
  25. data/docs/MultiChannelMessageDirectionEnum.md +15 -0
  26. data/docs/MultiChannelMessageRequest.md +26 -0
  27. data/docs/MultiChannelStatusEnum.md +15 -0
  28. data/docs/RbmActionBase.md +22 -0
  29. data/docs/RbmActionDial.md +24 -0
  30. data/docs/RbmActionOpenUrl.md +24 -0
  31. data/docs/RbmActionTypeEnum.md +15 -0
  32. data/docs/RbmActionViewLocation.md +28 -0
  33. data/docs/RbmCardContent.md +24 -0
  34. data/docs/RbmCardContentMedia.md +22 -0
  35. data/docs/RbmMediaHeightEnum.md +15 -0
  36. data/docs/RbmMessageCarouselCard.md +22 -0
  37. data/docs/RbmMessageContentFile.md +20 -0
  38. data/docs/RbmMessageContentRichCard.md +49 -0
  39. data/docs/RbmMessageContentText.md +20 -0
  40. data/docs/RbmMessageMedia.md +20 -0
  41. data/docs/RbmStandaloneCard.md +24 -0
  42. data/docs/SmsMessageContent.md +18 -0
  43. data/docs/StandaloneCardOrientationEnum.md +15 -0
  44. data/docs/TfvStatus.md +5 -1
  45. data/docs/TfvSubmissionInfo.md +8 -2
  46. data/docs/ThumbnailAlignmentEnum.md +15 -0
  47. data/docs/VerificationDenialWebhook.md +5 -1
  48. data/docs/VerificationRequest.md +7 -1
  49. data/docs/VerificationUpdateRequest.md +8 -2
  50. data/lib/bandwidth-sdk/api/multi_channel_api.rb +96 -0
  51. data/lib/bandwidth-sdk/configuration.rb +6 -0
  52. data/lib/bandwidth-sdk/models/bxml/verbs/phone_number.rb +1 -0
  53. data/lib/bandwidth-sdk/models/card_width_enum.rb +40 -0
  54. data/lib/bandwidth-sdk/models/create_multi_channel_message_response.rb +234 -0
  55. data/lib/bandwidth-sdk/models/error_object.rb +221 -0
  56. data/lib/bandwidth-sdk/models/link.rb +221 -0
  57. data/lib/bandwidth-sdk/models/message.rb +1 -1
  58. data/lib/bandwidth-sdk/models/message_callback.rb +16 -5
  59. data/lib/bandwidth-sdk/models/message_request.rb +1 -1
  60. data/lib/bandwidth-sdk/models/mms_message_content.rb +244 -0
  61. data/lib/bandwidth-sdk/models/multi_channel_action.rb +61 -0
  62. data/lib/bandwidth-sdk/models/multi_channel_action_calendar_event.rb +419 -0
  63. data/lib/bandwidth-sdk/models/multi_channel_callback_data.rb +272 -0
  64. data/lib/bandwidth-sdk/models/multi_channel_channel_list_object.rb +291 -0
  65. data/lib/bandwidth-sdk/models/multi_channel_channel_list_object_content.rb +108 -0
  66. data/lib/bandwidth-sdk/models/multi_channel_message_callback_data.rb +302 -0
  67. data/lib/bandwidth-sdk/models/multi_channel_message_channel_enum.rb +41 -0
  68. data/lib/bandwidth-sdk/models/multi_channel_message_data.rb +312 -0
  69. data/lib/bandwidth-sdk/models/multi_channel_message_direction_enum.rb +40 -0
  70. data/lib/bandwidth-sdk/models/multi_channel_message_request.rb +310 -0
  71. data/lib/bandwidth-sdk/models/multi_channel_status_enum.rb +42 -0
  72. data/lib/bandwidth-sdk/models/rbm_action_base.rb +313 -0
  73. data/lib/bandwidth-sdk/models/rbm_action_dial.rb +337 -0
  74. data/lib/bandwidth-sdk/models/rbm_action_open_url.rb +356 -0
  75. data/lib/bandwidth-sdk/models/rbm_action_type_enum.rb +44 -0
  76. data/lib/bandwidth-sdk/models/rbm_action_view_location.rb +383 -0
  77. data/lib/bandwidth-sdk/models/rbm_card_content.rb +301 -0
  78. data/lib/bandwidth-sdk/models/rbm_card_content_media.rb +313 -0
  79. data/lib/bandwidth-sdk/models/rbm_media_height_enum.rb +41 -0
  80. data/lib/bandwidth-sdk/models/rbm_message_carousel_card.rb +309 -0
  81. data/lib/bandwidth-sdk/models/rbm_message_content_file.rb +268 -0
  82. data/lib/bandwidth-sdk/models/rbm_message_content_rich_card.rb +104 -0
  83. data/lib/bandwidth-sdk/models/rbm_message_content_text.rb +270 -0
  84. data/lib/bandwidth-sdk/models/rbm_message_media.rb +250 -0
  85. data/lib/bandwidth-sdk/models/rbm_standalone_card.rb +304 -0
  86. data/lib/bandwidth-sdk/models/sms_message_content.rb +239 -0
  87. data/lib/bandwidth-sdk/models/standalone_card_orientation_enum.rb +40 -0
  88. data/lib/bandwidth-sdk/models/tfv_status.rb +24 -4
  89. data/lib/bandwidth-sdk/models/tfv_status_enum.rb +1 -3
  90. data/lib/bandwidth-sdk/models/tfv_submission_info.rb +35 -5
  91. data/lib/bandwidth-sdk/models/thumbnail_alignment_enum.rb +40 -0
  92. data/lib/bandwidth-sdk/models/verification_denial_webhook.rb +24 -4
  93. data/lib/bandwidth-sdk/models/verification_request.rb +35 -5
  94. data/lib/bandwidth-sdk/models/verification_update_request.rb +35 -5
  95. data/lib/bandwidth-sdk/version.rb +1 -1
  96. data/lib/bandwidth-sdk.rb +34 -1
  97. data/spec/smoke/conferences_api_spec.rb +4 -4
  98. data/spec/smoke/multi_channel_api_spec.rb +40 -0
  99. data/spec/smoke/transcriptions_api_spec.rb +1 -1
  100. data/spec/unit/api/multi_channel_api_spec.rb +59 -0
  101. data/spec/unit/models/bxml/verbs/phone_number_spec.rb +6 -4
  102. metadata +117 -45
@@ -0,0 +1,15 @@
1
+ # Bandwidth::RbmActionTypeEnum
2
+
3
+ ## Properties
4
+
5
+ | Name | Type | Description | Notes |
6
+ | ---- | ---- | ----------- | ----- |
7
+
8
+ ## Example
9
+
10
+ ```ruby
11
+ require 'bandwidth-sdk'
12
+
13
+ instance = Bandwidth::RbmActionTypeEnum.new()
14
+ ```
15
+
@@ -0,0 +1,28 @@
1
+ # Bandwidth::RbmActionViewLocation
2
+
3
+ ## Properties
4
+
5
+ | Name | Type | Description | Notes |
6
+ | ---- | ---- | ----------- | ----- |
7
+ | **type** | [**RbmActionTypeEnum**](RbmActionTypeEnum.md) | | |
8
+ | **text** | **String** | Displayed text for user to click | |
9
+ | **post_back_data** | **String** | Base64 payload the customer receives when the reply is clicked. | |
10
+ | **latitude** | **Float** | The latitude of the location. | |
11
+ | **longitude** | **Float** | The longitude of the location. | |
12
+ | **label** | **String** | The label of the location. | [optional] |
13
+
14
+ ## Example
15
+
16
+ ```ruby
17
+ require 'bandwidth-sdk'
18
+
19
+ instance = Bandwidth::RbmActionViewLocation.new(
20
+ type: null,
21
+ text: Hello world,
22
+ post_back_data: U0dWc2JHOGdkMjl5YkdRPQ==,
23
+ latitude: 37.7749,
24
+ longitude: -122.4194,
25
+ label: San Francisco
26
+ )
27
+ ```
28
+
@@ -0,0 +1,24 @@
1
+ # Bandwidth::RbmCardContent
2
+
3
+ ## Properties
4
+
5
+ | Name | Type | Description | Notes |
6
+ | ---- | ---- | ----------- | ----- |
7
+ | **title** | **String** | The title of the card. Must be 200 characters or less. | [optional] |
8
+ | **description** | **String** | The description of the card. Must be 2000 characters or less. | [optional] |
9
+ | **media** | [**RbmCardContentMedia**](RbmCardContentMedia.md) | | [optional] |
10
+ | **suggestions** | [**Array<MultiChannelAction>**](MultiChannelAction.md) | An array of suggested actions for the recipient that will be displayed on the rich card. | [optional] |
11
+
12
+ ## Example
13
+
14
+ ```ruby
15
+ require 'bandwidth-sdk'
16
+
17
+ instance = Bandwidth::RbmCardContent.new(
18
+ title: Bandwidth,
19
+ description: Bandwidth is a communications platform as a service (CPaaS) company.,
20
+ media: null,
21
+ suggestions: null
22
+ )
23
+ ```
24
+
@@ -0,0 +1,22 @@
1
+ # Bandwidth::RbmCardContentMedia
2
+
3
+ ## Properties
4
+
5
+ | Name | Type | Description | Notes |
6
+ | ---- | ---- | ----------- | ----- |
7
+ | **file_url** | **String** | The URL of the media file. 100MB is the maximum file size. | |
8
+ | **thumbnail_url** | **String** | The URL of the thumbnail image. Applies only to video file media. | [optional] |
9
+ | **height** | [**RbmMediaHeightEnum**](RbmMediaHeightEnum.md) | | |
10
+
11
+ ## Example
12
+
13
+ ```ruby
14
+ require 'bandwidth-sdk'
15
+
16
+ instance = Bandwidth::RbmCardContentMedia.new(
17
+ file_url: https://dev.bandwidth.com/images/bandwidth-logo.png,
18
+ thumbnail_url: https://dev.bandwidth.com/images/bandwidth-logo.png,
19
+ height: null
20
+ )
21
+ ```
22
+
@@ -0,0 +1,15 @@
1
+ # Bandwidth::RbmMediaHeightEnum
2
+
3
+ ## Properties
4
+
5
+ | Name | Type | Description | Notes |
6
+ | ---- | ---- | ----------- | ----- |
7
+
8
+ ## Example
9
+
10
+ ```ruby
11
+ require 'bandwidth-sdk'
12
+
13
+ instance = Bandwidth::RbmMediaHeightEnum.new()
14
+ ```
15
+
@@ -0,0 +1,22 @@
1
+ # Bandwidth::RbmMessageCarouselCard
2
+
3
+ ## Properties
4
+
5
+ | Name | Type | Description | Notes |
6
+ | ---- | ---- | ----------- | ----- |
7
+ | **card_width** | [**CardWidthEnum**](CardWidthEnum.md) | | |
8
+ | **card_contents** | [**Array<RbmCardContent>**](RbmCardContent.md) | | |
9
+ | **suggestions** | [**Array<MultiChannelAction>**](MultiChannelAction.md) | An array of suggested actions for the recipient. | [optional] |
10
+
11
+ ## Example
12
+
13
+ ```ruby
14
+ require 'bandwidth-sdk'
15
+
16
+ instance = Bandwidth::RbmMessageCarouselCard.new(
17
+ card_width: null,
18
+ card_contents: null,
19
+ suggestions: null
20
+ )
21
+ ```
22
+
@@ -0,0 +1,20 @@
1
+ # Bandwidth::RbmMessageContentFile
2
+
3
+ ## Properties
4
+
5
+ | Name | Type | Description | Notes |
6
+ | ---- | ---- | ----------- | ----- |
7
+ | **file_url** | **String** | The URL of the media file. 100MB is the maximum file size. | |
8
+ | **thumbnail_url** | **String** | The URL of the thumbnail image. Applies only to video file media. | [optional] |
9
+
10
+ ## Example
11
+
12
+ ```ruby
13
+ require 'bandwidth-sdk'
14
+
15
+ instance = Bandwidth::RbmMessageContentFile.new(
16
+ file_url: https://dev.bandwidth.com/images/bandwidth-logo.png,
17
+ thumbnail_url: https://dev.bandwidth.com/images/bandwidth-logo.png
18
+ )
19
+ ```
20
+
@@ -0,0 +1,49 @@
1
+ # Bandwidth::RbmMessageContentRichCard
2
+
3
+ ## Class instance methods
4
+
5
+ ### `openapi_one_of`
6
+
7
+ Returns the list of classes defined in oneOf.
8
+
9
+ #### Example
10
+
11
+ ```ruby
12
+ require 'bandwidth-sdk'
13
+
14
+ Bandwidth::RbmMessageContentRichCard.openapi_one_of
15
+ # =>
16
+ # [
17
+ # :'RbmMessageCarouselCard',
18
+ # :'RbmStandaloneCard'
19
+ # ]
20
+ ```
21
+
22
+ ### build
23
+
24
+ Find the appropriate object from the `openapi_one_of` list and casts the data into it.
25
+
26
+ #### Example
27
+
28
+ ```ruby
29
+ require 'bandwidth-sdk'
30
+
31
+ Bandwidth::RbmMessageContentRichCard.build(data)
32
+ # => #<RbmMessageCarouselCard:0x00007fdd4aab02a0>
33
+
34
+ Bandwidth::RbmMessageContentRichCard.build(data_that_doesnt_match)
35
+ # => nil
36
+ ```
37
+
38
+ #### Parameters
39
+
40
+ | Name | Type | Description |
41
+ | ---- | ---- | ----------- |
42
+ | **data** | **Mixed** | data to be matched against the list of oneOf items |
43
+
44
+ #### Return type
45
+
46
+ - `RbmMessageCarouselCard`
47
+ - `RbmStandaloneCard`
48
+ - `nil` (if no type matches)
49
+
@@ -0,0 +1,20 @@
1
+ # Bandwidth::RbmMessageContentText
2
+
3
+ ## Properties
4
+
5
+ | Name | Type | Description | Notes |
6
+ | ---- | ---- | ----------- | ----- |
7
+ | **text** | **String** | The text associated with the message. Must be 3270 characters or less | |
8
+ | **suggestions** | [**Array&lt;MultiChannelAction&gt;**](MultiChannelAction.md) | An array of suggested actions for the recipient. | [optional] |
9
+
10
+ ## Example
11
+
12
+ ```ruby
13
+ require 'bandwidth-sdk'
14
+
15
+ instance = Bandwidth::RbmMessageContentText.new(
16
+ text: Hello world,
17
+ suggestions: null
18
+ )
19
+ ```
20
+
@@ -0,0 +1,20 @@
1
+ # Bandwidth::RbmMessageMedia
2
+
3
+ ## Properties
4
+
5
+ | Name | Type | Description | Notes |
6
+ | ---- | ---- | ----------- | ----- |
7
+ | **media** | [**RbmMessageContentFile**](RbmMessageContentFile.md) | | |
8
+ | **suggestions** | [**Array&lt;MultiChannelAction&gt;**](MultiChannelAction.md) | An array of suggested actions for the recipient. | [optional] |
9
+
10
+ ## Example
11
+
12
+ ```ruby
13
+ require 'bandwidth-sdk'
14
+
15
+ instance = Bandwidth::RbmMessageMedia.new(
16
+ media: null,
17
+ suggestions: null
18
+ )
19
+ ```
20
+
@@ -0,0 +1,24 @@
1
+ # Bandwidth::RbmStandaloneCard
2
+
3
+ ## Properties
4
+
5
+ | Name | Type | Description | Notes |
6
+ | ---- | ---- | ----------- | ----- |
7
+ | **orientation** | [**StandaloneCardOrientationEnum**](StandaloneCardOrientationEnum.md) | | |
8
+ | **thumbnail_image_alignment** | [**ThumbnailAlignmentEnum**](ThumbnailAlignmentEnum.md) | | |
9
+ | **card_content** | [**RbmCardContent**](RbmCardContent.md) | | |
10
+ | **suggestions** | [**Array&lt;MultiChannelAction&gt;**](MultiChannelAction.md) | An array of suggested actions for the recipient. | [optional] |
11
+
12
+ ## Example
13
+
14
+ ```ruby
15
+ require 'bandwidth-sdk'
16
+
17
+ instance = Bandwidth::RbmStandaloneCard.new(
18
+ orientation: null,
19
+ thumbnail_image_alignment: null,
20
+ card_content: null,
21
+ suggestions: null
22
+ )
23
+ ```
24
+
@@ -0,0 +1,18 @@
1
+ # Bandwidth::SmsMessageContent
2
+
3
+ ## Properties
4
+
5
+ | Name | Type | Description | Notes |
6
+ | ---- | ---- | ----------- | ----- |
7
+ | **text** | **String** | The contents of the text message. Must be 2048 characters or less. | |
8
+
9
+ ## Example
10
+
11
+ ```ruby
12
+ require 'bandwidth-sdk'
13
+
14
+ instance = Bandwidth::SmsMessageContent.new(
15
+ text: Hello world
16
+ )
17
+ ```
18
+
@@ -0,0 +1,15 @@
1
+ # Bandwidth::StandaloneCardOrientationEnum
2
+
3
+ ## Properties
4
+
5
+ | Name | Type | Description | Notes |
6
+ | ---- | ---- | ----------- | ----- |
7
+
8
+ ## Example
9
+
10
+ ```ruby
11
+ require 'bandwidth-sdk'
12
+
13
+ instance = Bandwidth::StandaloneCardOrientationEnum.new()
14
+ ```
15
+
data/docs/TfvStatus.md CHANGED
@@ -12,6 +12,8 @@
12
12
  | **created_date_time** | **Time** | Date and time the verification request was created. | [optional] |
13
13
  | **modified_date_time** | **Time** | Date and time the verification request was last modified. | [optional] |
14
14
  | **submission** | [**TfvSubmissionInfo**](TfvSubmissionInfo.md) | | [optional] |
15
+ | **blocked** | **Boolean** | Whether a Toll-Free Verification is blocked. This attribute will only be defined when the number is blocked. (Not Available Until 5/28/2025) | [optional] |
16
+ | **blocked_reason** | **String** | The reason why the Toll-Free Verification is blocked. This attribute will only be defined when the number is blocked. (Not Available Until 5/28/2025) | [optional] |
15
17
 
16
18
  ## Example
17
19
 
@@ -26,7 +28,9 @@ instance = Bandwidth::TfvStatus.new(
26
28
  resubmit_allowed: true,
27
29
  created_date_time: 2021-06-08T06:45:13Z,
28
30
  modified_date_time: 2021-06-08T06:45:13Z,
29
- submission: null
31
+ submission: null,
32
+ blocked: true,
33
+ blocked_reason: Toll-free number was used to send spam messages
30
34
  )
31
35
  ```
32
36
 
@@ -13,6 +13,9 @@
13
13
  | **opt_in_workflow** | [**OptInWorkflow**](OptInWorkflow.md) | | [optional] |
14
14
  | **additional_information** | **String** | Any additional information. | [optional] |
15
15
  | **isv_reseller** | **String** | ISV name. | [optional] |
16
+ | **privacy_policy_url** | **String** | The Toll-Free Verification request privacy policy URL. (Not Available Until 5/28/2025) | [optional] |
17
+ | **terms_and_conditions_url** | **String** | The Toll-Free Verification request terms and conditions policy URL. (Not Available Until 5/28/2025) | [optional] |
18
+ | **business_dba** | **String** | The company &#39;Doing Business As&#39;. (Not Available Until 5/28/2025) | [optional] |
16
19
 
17
20
  ## Example
18
21
 
@@ -27,8 +30,11 @@ instance = Bandwidth::TfvSubmissionInfo.new(
27
30
  use_case_summary: Text summarizing the use case for the toll-free number,
28
31
  production_message_content: Production message content,
29
32
  opt_in_workflow: null,
30
- additional_information: null,
31
- isv_reseller: Test ISV
33
+ additional_information: Any additional information,
34
+ isv_reseller: Test ISV,
35
+ privacy_policy_url: http://your-company.com/privacyPolicyUrl.pdf,
36
+ terms_and_conditions_url: http://your-company.com/termsAndConditionsUrl.pdf,
37
+ business_dba: SecondCompany Name
32
38
  )
33
39
  ```
34
40
 
@@ -0,0 +1,15 @@
1
+ # Bandwidth::ThumbnailAlignmentEnum
2
+
3
+ ## Properties
4
+
5
+ | Name | Type | Description | Notes |
6
+ | ---- | ---- | ----------- | ----- |
7
+
8
+ ## Example
9
+
10
+ ```ruby
11
+ require 'bandwidth-sdk'
12
+
13
+ instance = Bandwidth::ThumbnailAlignmentEnum.new()
14
+ ```
15
+
@@ -12,6 +12,8 @@
12
12
  | **phone_number** | **String** | Toll-free telephone number in E.164 format. | [optional] |
13
13
  | **resubmit_allowed** | **Boolean** | Whether a Toll-Free Verification request qualifies for resubmission via PUT. | [optional] |
14
14
  | **status** | **String** | | [optional][default to &#39;UNVERIFIED&#39;] |
15
+ | **blocked** | **Boolean** | Whether a Toll-Free Verification is blocked. This attribute will only be defined when the number is blocked. (Not Available Until 5/28/2025) | [optional] |
16
+ | **blocked_reason** | **String** | The reason why the Toll-Free Verification is blocked. This attribute will only be defined when the number is blocked. (Not Available Until 5/28/2025) | [optional] |
15
17
 
16
18
  ## Example
17
19
 
@@ -26,7 +28,9 @@ instance = Bandwidth::VerificationDenialWebhook.new(
26
28
  internal_ticket_number: acde070d-8c4c-4f0d-9d8a-162843c10333,
27
29
  phone_number: +18005555555,
28
30
  resubmit_allowed: true,
29
- status: UNVERIFIED
31
+ status: UNVERIFIED,
32
+ blocked: true,
33
+ blocked_reason: Toll-free number was used to send spam messages
30
34
  )
31
35
  ```
32
36
 
@@ -14,6 +14,9 @@
14
14
  | **opt_in_workflow** | [**OptInWorkflow**](OptInWorkflow.md) | | |
15
15
  | **additional_information** | **String** | Any additional information. | [optional] |
16
16
  | **isv_reseller** | **String** | ISV name. | [optional] |
17
+ | **privacy_policy_url** | **String** | The Toll-Free Verification request privacy policy URL. (Not Available Until 5/28/2025) | [optional] |
18
+ | **terms_and_conditions_url** | **String** | The Toll-Free Verification request terms and conditions policy URL. (Not Available Until 5/28/2025) | [optional] |
19
+ | **business_dba** | **String** | The company &#39;Doing Business As&#39;. (Not Available Until 5/28/2025) | [optional] |
17
20
 
18
21
  ## Example
19
22
 
@@ -30,7 +33,10 @@ instance = Bandwidth::VerificationRequest.new(
30
33
  production_message_content: Production message content,
31
34
  opt_in_workflow: null,
32
35
  additional_information: Any additional information,
33
- isv_reseller: Test ISV
36
+ isv_reseller: Test ISV,
37
+ privacy_policy_url: http://your-company.com/privacyPolicyUrl.pdf,
38
+ terms_and_conditions_url: http://your-company.com/termsAndConditionsUrl.pdf,
39
+ business_dba: SecondCompany Name
34
40
  )
35
41
  ```
36
42
 
@@ -13,6 +13,9 @@
13
13
  | **opt_in_workflow** | [**OptInWorkflow**](OptInWorkflow.md) | | |
14
14
  | **additional_information** | **String** | Any additional information. | [optional] |
15
15
  | **isv_reseller** | **String** | ISV name. | [optional] |
16
+ | **privacy_policy_url** | **String** | The Toll-Free Verification request privacy policy URL. (Not Available Until 5/28/2025) | [optional] |
17
+ | **terms_and_conditions_url** | **String** | The Toll-Free Verification request terms and conditions policy URL. (Not Available Until 5/28/2025) | [optional] |
18
+ | **business_dba** | **String** | The company &#39;Doing Business As&#39;. (Not Available Until 5/28/2025) | [optional] |
16
19
 
17
20
  ## Example
18
21
 
@@ -27,8 +30,11 @@ instance = Bandwidth::VerificationUpdateRequest.new(
27
30
  use_case_summary: Text summarizing the use case for the toll-free number,
28
31
  production_message_content: Production message content,
29
32
  opt_in_workflow: null,
30
- additional_information: null,
31
- isv_reseller: Test ISV
33
+ additional_information: Any additional information,
34
+ isv_reseller: Test ISV,
35
+ privacy_policy_url: http://your-company.com/privacyPolicyUrl.pdf,
36
+ terms_and_conditions_url: http://your-company.com/termsAndConditionsUrl.pdf,
37
+ business_dba: SecondCompany Name
32
38
  )
33
39
  ```
34
40
 
@@ -0,0 +1,96 @@
1
+ =begin
2
+ #Bandwidth
3
+
4
+ #Bandwidth's Communication APIs
5
+
6
+ The version of the OpenAPI document: 1.0.0
7
+ Contact: letstalk@bandwidth.com
8
+ Generated by: https://openapi-generator.tech
9
+ Generator version: 7.8.0
10
+
11
+ =end
12
+
13
+ require 'cgi'
14
+
15
+ module Bandwidth
16
+ class MultiChannelApi
17
+ attr_accessor :api_client
18
+
19
+ def initialize(api_client = ApiClient.default)
20
+ @api_client = api_client
21
+ end
22
+ # Create Multi-Channel Message
23
+ # Endpoint for sending Multi-Channel messages.
24
+ # @param account_id [String] Your Bandwidth Account ID.
25
+ # @param multi_channel_message_request [MultiChannelMessageRequest]
26
+ # @param [Hash] opts the optional parameters
27
+ # @return [CreateMultiChannelMessageResponse]
28
+ def create_multi_channel_message(account_id, multi_channel_message_request, opts = {})
29
+ data, _status_code, _headers = create_multi_channel_message_with_http_info(account_id, multi_channel_message_request, opts)
30
+ data
31
+ end
32
+
33
+ # Create Multi-Channel Message
34
+ # Endpoint for sending Multi-Channel messages.
35
+ # @param account_id [String] Your Bandwidth Account ID.
36
+ # @param multi_channel_message_request [MultiChannelMessageRequest]
37
+ # @param [Hash] opts the optional parameters
38
+ # @return [Array<(CreateMultiChannelMessageResponse, Integer, Hash)>] CreateMultiChannelMessageResponse data, response status code and response headers
39
+ def create_multi_channel_message_with_http_info(account_id, multi_channel_message_request, opts = {})
40
+ if @api_client.config.debugging
41
+ @api_client.config.logger.debug 'Calling API: MultiChannelApi.create_multi_channel_message ...'
42
+ end
43
+ # verify the required parameter 'account_id' is set
44
+ if @api_client.config.client_side_validation && account_id.nil?
45
+ fail ArgumentError, "Missing the required parameter 'account_id' when calling MultiChannelApi.create_multi_channel_message"
46
+ end
47
+ # verify the required parameter 'multi_channel_message_request' is set
48
+ if @api_client.config.client_side_validation && multi_channel_message_request.nil?
49
+ fail ArgumentError, "Missing the required parameter 'multi_channel_message_request' when calling MultiChannelApi.create_multi_channel_message"
50
+ end
51
+ # resource path
52
+ local_var_path = '/users/{accountId}/messages/multiChannel'.sub('{' + 'accountId' + '}', CGI.escape(account_id.to_s))
53
+
54
+ # query parameters
55
+ query_params = opts[:query_params] || {}
56
+
57
+ # header parameters
58
+ header_params = opts[:header_params] || {}
59
+ # HTTP header 'Accept' (if needed)
60
+ header_params['Accept'] = @api_client.select_header_accept(['application/json']) unless header_params['Accept']
61
+ # HTTP header 'Content-Type'
62
+ content_type = @api_client.select_header_content_type(['application/json'])
63
+ if !content_type.nil?
64
+ header_params['Content-Type'] = content_type
65
+ end
66
+
67
+ # form parameters
68
+ form_params = opts[:form_params] || {}
69
+
70
+ # http body (model)
71
+ post_body = opts[:debug_body] || @api_client.object_to_http_body(multi_channel_message_request)
72
+
73
+ # return_type
74
+ return_type = opts[:debug_return_type] || 'CreateMultiChannelMessageResponse'
75
+
76
+ # auth_names
77
+ auth_names = opts[:debug_auth_names] || ['Basic']
78
+
79
+ new_options = opts.merge(
80
+ :operation => :"MultiChannelApi.create_multi_channel_message",
81
+ :header_params => header_params,
82
+ :query_params => query_params,
83
+ :form_params => form_params,
84
+ :body => post_body,
85
+ :auth_names => auth_names,
86
+ :return_type => return_type
87
+ )
88
+
89
+ data, status_code, headers = @api_client.call_api(:POST, local_var_path, new_options)
90
+ if @api_client.config.debugging
91
+ @api_client.config.logger.debug "API called: MultiChannelApi#create_multi_channel_message\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
92
+ end
93
+ return data, status_code, headers
94
+ end
95
+ end
96
+ end
@@ -408,6 +408,12 @@ module Bandwidth
408
408
  description: "Production",
409
409
  }
410
410
  ],
411
+ "MultiChannelApi.create_multi_channel_message": [
412
+ {
413
+ url: "https://messaging.bandwidth.com/api/v2",
414
+ description: "Production",
415
+ }
416
+ ],
411
417
  "PhoneNumberLookupApi.create_lookup": [
412
418
  {
413
419
  url: "https://numbers.bandwidth.com/api/v1",
@@ -19,6 +19,7 @@ module Bandwidth
19
19
  fallback_username: 'fallbackUsername', # Optional [String]: The username to send in the HTTP request to transferAnswerFallbackUrl. Defaults to None.
20
20
  fallback_password: 'fallbackPassword', # Optional [String]: The password to send in the HTTP request to transferAnswerFallbackUrl. Defaults to None.
21
21
  tag: 'tag', # Optional [String]: A custom string that will be sent with these and all future callbacks unless overwritten by a future tag attribute or cleared. May be cleared by setting tag="" Max length 256 characters. Defaults to None.
22
+ uui: 'uui', # Optional [String]: The value of the User-To-User header to send within the initial INVITE. Must include the encoding parameter as specified in RFC 7433. Only base64, jwt and hex encoding are currently allowed. This value, including the encoding specifier, may not exceed 256 characters.
22
23
  }
23
24
  end
24
25
  end
@@ -0,0 +1,40 @@
1
+ =begin
2
+ #Bandwidth
3
+
4
+ #Bandwidth's Communication APIs
5
+
6
+ The version of the OpenAPI document: 1.0.0
7
+ Contact: letstalk@bandwidth.com
8
+ Generated by: https://openapi-generator.tech
9
+ Generator version: 7.8.0
10
+
11
+ =end
12
+
13
+ require 'date'
14
+ require 'time'
15
+
16
+ module Bandwidth
17
+ class CardWidthEnum
18
+ SMALL = 'SMALL'.freeze
19
+ MEDIUM = 'MEDIUM'.freeze
20
+
21
+ def self.all_vars
22
+ @all_vars ||= [SMALL, MEDIUM].freeze
23
+ end
24
+
25
+ # Builds the enum from string
26
+ # @param [String] The enum value in the form of the string
27
+ # @return [String] The enum value
28
+ def self.build_from_hash(value)
29
+ new.build_from_hash(value)
30
+ end
31
+
32
+ # Builds the enum from string
33
+ # @param [String] The enum value in the form of the string
34
+ # @return [String] The enum value
35
+ def build_from_hash(value)
36
+ return value if CardWidthEnum.all_vars.include?(value)
37
+ raise "Invalid ENUM value #{value} for class #CardWidthEnum"
38
+ end
39
+ end
40
+ end