From 1a1435d2adbd368cd0216c28b4e33c408934c421 Mon Sep 17 00:00:00 2001 From: DX-Bandwidth Date: Fri, 19 Jun 2026 17:20:03 +0000 Subject: [PATCH 1/2] Generate SDK with OpenAPI Generator Version --- Bandwidth.Standard.sln | 10 +++++----- api/openapi.yaml | 17 ++++++++++------ bandwidth.yml | 20 ++++++++++++------- docs/InboundCallbackTypeEnum.md | 2 +- docs/RbmSuggestionResponse.md | 1 + .../Model/InboundCallbackTypeEnum.cs | 10 +++++----- src/Bandwidth.Standard/Model/RbmActionBase.cs | 2 +- .../Model/RbmSuggestionResponse.cs | 15 ++++++++++++-- 8 files changed, 50 insertions(+), 27 deletions(-) diff --git a/Bandwidth.Standard.sln b/Bandwidth.Standard.sln index 20a88144..49ff43c0 100644 --- a/Bandwidth.Standard.sln +++ b/Bandwidth.Standard.sln @@ -2,7 +2,7 @@ Microsoft Visual Studio Solution File, Format Version 12.00 # Visual Studio 14 VisualStudioVersion = 14.0.25420.1 MinimumVisualStudioVersion = 10.0.40219.1 -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Bandwidth.Standard", "src\Bandwidth.Standard\Bandwidth.Standard.csproj", "{7AA0ED8A-8E3C-40C0-9782-CD7900DB5B67}" +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Bandwidth.Standard", "src\Bandwidth.Standard\Bandwidth.Standard.csproj", "{612BC740-F2E6-4466-87AE-403F47F2323F}" EndProject Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Bandwidth.Standard.Test", "src\Bandwidth.Standard.Test\Bandwidth.Standard.Test.csproj", "{19F1DEBC-DE5E-4517-8062-F000CD499087}" EndProject @@ -12,10 +12,10 @@ Global Release|Any CPU = Release|Any CPU EndGlobalSection GlobalSection(ProjectConfigurationPlatforms) = postSolution - {7AA0ED8A-8E3C-40C0-9782-CD7900DB5B67}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {7AA0ED8A-8E3C-40C0-9782-CD7900DB5B67}.Debug|Any CPU.Build.0 = Debug|Any CPU - {7AA0ED8A-8E3C-40C0-9782-CD7900DB5B67}.Release|Any CPU.ActiveCfg = Release|Any CPU - {7AA0ED8A-8E3C-40C0-9782-CD7900DB5B67}.Release|Any CPU.Build.0 = Release|Any CPU + {612BC740-F2E6-4466-87AE-403F47F2323F}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {612BC740-F2E6-4466-87AE-403F47F2323F}.Debug|Any CPU.Build.0 = Debug|Any CPU + {612BC740-F2E6-4466-87AE-403F47F2323F}.Release|Any CPU.ActiveCfg = Release|Any CPU + {612BC740-F2E6-4466-87AE-403F47F2323F}.Release|Any CPU.Build.0 = Release|Any CPU {19F1DEBC-DE5E-4517-8062-F000CD499087}.Debug|Any CPU.ActiveCfg = Debug|Any CPU {19F1DEBC-DE5E-4517-8062-F000CD499087}.Debug|Any CPU.Build.0 = Debug|Any CPU {19F1DEBC-DE5E-4517-8062-F000CD499087}.Release|Any CPU.ActiveCfg = Release|Any CPU diff --git a/api/openapi.yaml b/api/openapi.yaml index 344fb1e5..8d7e9ff8 100644 --- a/api/openapi.yaml +++ b/api/openapi.yaml @@ -6343,8 +6343,8 @@ components:

This Inbound Message Webhook is an envelope containing either a received (MO) message to your message-enabled Bandwidth telephone number or a multichannel client's response to a suggestion response or location request. -

The payload type will be one of message-received, suggestion-response, or location-request-response. -

Note that suggestion-response and location-request-response callback types are pertinent only for RBM messages sent from the /messages/multiChannel endpoint. +

The payload type will be one of message-received, suggestion-response, or requested-location-response. +

Note that suggestion-response and requested-location-response callback types are pertinent only for RBM messages sent from the /messages/multiChannel endpoint.

Please visit Webhooks

required: true responses: @@ -7062,7 +7062,7 @@ components: tag: "{\"myTag\": \"myTagValue\"}" updateEndpointBxmlRequestExample: summary: Update Endpoint BXML Request Example - value: + value: endpointDisconnectedEventExample: summary: Endpoint Disconnected Event value: @@ -10504,6 +10504,11 @@ components: maxLength: 2048 title: Post Back Data type: string + pairedMessageId: + description: Corresponding parent message ID (MT). + example: 1752697342534u24xerqdukke523x + nullable: true + type: string type: object rbmLocationResponse: properties: @@ -10531,7 +10536,7 @@ components: message-failed: '#/components/schemas/statusCallback' message-read: '#/components/schemas/statusCallback' message-received: '#/components/schemas/inboundCallback' - request-location-response: '#/components/schemas/inboundCallback' + requested-location-response: '#/components/schemas/inboundCallback' suggestion-response: '#/components/schemas/inboundCallback' propertyName: type oneOf: @@ -10637,11 +10642,11 @@ components: description: |- The possible inbound callback types originating from MO messages or multichannel message client responses: - `message-received` indicates an MO message from a Bandwidth user's client to a Bandwidth number. - - `request-location-response` indicates a response to a location request sent by the Bandwidth user's client after receiving an RBM message. + - `requested-location-response` indicates a response to a location request sent by the Bandwidth user's client after receiving an RBM message. - `suggestion-response` indicates a response to a suggestion sent by the Bandwidth user's client after receiving an RBM message. enum: - message-received - - request-location-response + - requested-location-response - suggestion-response example: message-received type: string diff --git a/bandwidth.yml b/bandwidth.yml index 5e2bc9b3..a380e26d 100644 --- a/bandwidth.yml +++ b/bandwidth.yml @@ -2889,6 +2889,11 @@ components: example: Yes, I would like to proceed postbackData: $ref: '#/components/schemas/rbmActionPostbackData' + pairedMessageId: + type: string + nullable: true + description: Corresponding parent message ID (MT). + example: 1752697342534u24xerqdukke523x rbmLocationResponse: type: object properties: @@ -2925,7 +2930,7 @@ components: message-failed: '#/components/schemas/statusCallback' message-read: '#/components/schemas/statusCallback' message-received: '#/components/schemas/inboundCallback' - request-location-response: '#/components/schemas/inboundCallback' + requested-location-response: '#/components/schemas/inboundCallback' suggestion-response: '#/components/schemas/inboundCallback' statusCallback: type: object @@ -3035,14 +3040,15 @@ components: - `message-received` indicates an MO message from a Bandwidth user's client to a Bandwidth number. - - `request-location-response` indicates a response to a location request - sent by the Bandwidth user's client after receiving an RBM message. + - `requested-location-response` indicates a response to a location + request sent by the Bandwidth user's client after receiving an RBM + message. - `suggestion-response` indicates a response to a suggestion sent by the Bandwidth user's client after receiving an RBM message. enum: - message-received - - request-location-response + - requested-location-response - suggestion-response example: message-received statusCallbackMessage: @@ -9154,7 +9160,7 @@ components: tag: '{"myTag": "myTagValue"}' updateEndpointBxmlRequestExample: summary: Update Endpoint BXML Request Example - value: + value: endpointDisconnectedEventExample: summary: Endpoint Disconnected Event value: @@ -9678,10 +9684,10 @@ components:

The payload type will be one of message-received, suggestion-response, or - location-request-response. + requested-location-response.

Note that suggestion-response and - location-request-response callback types are + requested-location-response callback types are pertinent only for RBM messages sent from the /messages/multiChannel endpoint. diff --git a/docs/InboundCallbackTypeEnum.md b/docs/InboundCallbackTypeEnum.md index 987f11ef..5151f844 100644 --- a/docs/InboundCallbackTypeEnum.md +++ b/docs/InboundCallbackTypeEnum.md @@ -1,5 +1,5 @@ # Bandwidth.Standard.Model.InboundCallbackTypeEnum -The possible inbound callback types originating from MO messages or multichannel message client responses: - `message-received` indicates an MO message from a Bandwidth user's client to a Bandwidth number. - `request-location-response` indicates a response to a location request sent by the Bandwidth user's client after receiving an RBM message. - `suggestion-response` indicates a response to a suggestion sent by the Bandwidth user's client after receiving an RBM message. +The possible inbound callback types originating from MO messages or multichannel message client responses: - `message-received` indicates an MO message from a Bandwidth user's client to a Bandwidth number. - `requested-location-response` indicates a response to a location request sent by the Bandwidth user's client after receiving an RBM message. - `suggestion-response` indicates a response to a suggestion sent by the Bandwidth user's client after receiving an RBM message. ## Properties diff --git a/docs/RbmSuggestionResponse.md b/docs/RbmSuggestionResponse.md index eb00fe01..0e83472c 100644 --- a/docs/RbmSuggestionResponse.md +++ b/docs/RbmSuggestionResponse.md @@ -6,6 +6,7 @@ Name | Type | Description | Notes ------------ | ------------- | ------------- | ------------- **Text** | **string** | The text associated with the suggestion response. | [optional] **PostbackData** | **byte[]** | Base64 payload the customer receives when the reply is clicked. | [optional] +**PairedMessageId** | **string** | Corresponding parent message ID (MT). | [optional] [[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) diff --git a/src/Bandwidth.Standard/Model/InboundCallbackTypeEnum.cs b/src/Bandwidth.Standard/Model/InboundCallbackTypeEnum.cs index 5e39ce34..dac703fe 100644 --- a/src/Bandwidth.Standard/Model/InboundCallbackTypeEnum.cs +++ b/src/Bandwidth.Standard/Model/InboundCallbackTypeEnum.cs @@ -27,9 +27,9 @@ namespace Bandwidth.Standard.Model { ///

- /// The possible inbound callback types originating from MO messages or multichannel message client responses: - `message-received` indicates an MO message from a Bandwidth user's client to a Bandwidth number. - `request-location-response` indicates a response to a location request sent by the Bandwidth user's client after receiving an RBM message. - `suggestion-response` indicates a response to a suggestion sent by the Bandwidth user's client after receiving an RBM message. + /// The possible inbound callback types originating from MO messages or multichannel message client responses: - `message-received` indicates an MO message from a Bandwidth user's client to a Bandwidth number. - `requested-location-response` indicates a response to a location request sent by the Bandwidth user's client after receiving an RBM message. - `suggestion-response` indicates a response to a suggestion sent by the Bandwidth user's client after receiving an RBM message. /// - /// The possible inbound callback types originating from MO messages or multichannel message client responses: - `message-received` indicates an MO message from a Bandwidth user's client to a Bandwidth number. - `request-location-response` indicates a response to a location request sent by the Bandwidth user's client after receiving an RBM message. - `suggestion-response` indicates a response to a suggestion sent by the Bandwidth user's client after receiving an RBM message. + /// The possible inbound callback types originating from MO messages or multichannel message client responses: - `message-received` indicates an MO message from a Bandwidth user's client to a Bandwidth number. - `requested-location-response` indicates a response to a location request sent by the Bandwidth user's client after receiving an RBM message. - `suggestion-response` indicates a response to a suggestion sent by the Bandwidth user's client after receiving an RBM message. [JsonConverter(typeof(StringEnumConverter))] public enum InboundCallbackTypeEnum { @@ -40,10 +40,10 @@ public enum InboundCallbackTypeEnum MessageReceived = 1, /// - /// Enum RequestLocationResponse for value: request-location-response + /// Enum RequestedLocationResponse for value: requested-location-response /// - [EnumMember(Value = "request-location-response")] - RequestLocationResponse = 2, + [EnumMember(Value = "requested-location-response")] + RequestedLocationResponse = 2, /// /// Enum SuggestionResponse for value: suggestion-response diff --git a/src/Bandwidth.Standard/Model/RbmActionBase.cs b/src/Bandwidth.Standard/Model/RbmActionBase.cs index 605318fb..9f3005e4 100644 --- a/src/Bandwidth.Standard/Model/RbmActionBase.cs +++ b/src/Bandwidth.Standard/Model/RbmActionBase.cs @@ -78,7 +78,7 @@ protected RbmActionBase() { } /// Base64 payload the customer receives when the reply is clicked. /// /// Base64 payload the customer receives when the reply is clicked. - /// [B@3c205259 + /// [B@2b76ecd5 [DataMember(Name = "postbackData", IsRequired = true, EmitDefaultValue = true)] public byte[] PostbackData { get; set; } diff --git a/src/Bandwidth.Standard/Model/RbmSuggestionResponse.cs b/src/Bandwidth.Standard/Model/RbmSuggestionResponse.cs index faa91723..5ea253c5 100644 --- a/src/Bandwidth.Standard/Model/RbmSuggestionResponse.cs +++ b/src/Bandwidth.Standard/Model/RbmSuggestionResponse.cs @@ -37,10 +37,12 @@ public partial class RbmSuggestionResponse : IValidatableObject /// /// The text associated with the suggestion response.. /// Base64 payload the customer receives when the reply is clicked.. - public RbmSuggestionResponse(string text = default(string), byte[] postbackData = default(byte[])) + /// Corresponding parent message ID (MT).. + public RbmSuggestionResponse(string text = default(string), byte[] postbackData = default(byte[]), string pairedMessageId = default(string)) { this.Text = text; this.PostbackData = postbackData; + this.PairedMessageId = pairedMessageId; } /// @@ -55,10 +57,18 @@ public partial class RbmSuggestionResponse : IValidatableObject /// Base64 payload the customer receives when the reply is clicked. /// /// Base64 payload the customer receives when the reply is clicked. - /// [B@3c205259 + /// [B@2b76ecd5 [DataMember(Name = "postbackData", EmitDefaultValue = false)] public byte[] PostbackData { get; set; } + /// + /// Corresponding parent message ID (MT). + /// + /// Corresponding parent message ID (MT). + /// 1752697342534u24xerqdukke523x + [DataMember(Name = "pairedMessageId", EmitDefaultValue = true)] + public string PairedMessageId { get; set; } + /// /// Returns the string presentation of the object /// @@ -69,6 +79,7 @@ public override string ToString() sb.Append("class RbmSuggestionResponse {\n"); sb.Append(" Text: ").Append(Text).Append("\n"); sb.Append(" PostbackData: ").Append(PostbackData).Append("\n"); + sb.Append(" PairedMessageId: ").Append(PairedMessageId).Append("\n"); sb.Append("}\n"); return sb.ToString(); } From cd401a2be728f34e40d1ead7fd2680d48b78de06 Mon Sep 17 00:00:00 2001 From: ckoegel Date: Fri, 19 Jun 2026 14:45:17 -0400 Subject: [PATCH 2/2] unit test --- .../Unit/Model/RbmSuggestionResponseTests.cs | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) diff --git a/src/Bandwidth.Standard.Test/Unit/Model/RbmSuggestionResponseTests.cs b/src/Bandwidth.Standard.Test/Unit/Model/RbmSuggestionResponseTests.cs index 9d639f5c..c8b5bb01 100644 --- a/src/Bandwidth.Standard.Test/Unit/Model/RbmSuggestionResponseTests.cs +++ b/src/Bandwidth.Standard.Test/Unit/Model/RbmSuggestionResponseTests.cs @@ -37,7 +37,8 @@ public RbmSuggestionResponseTests() { instance = new RbmSuggestionResponse( text: "Sample suggestion text", - postbackData: new byte[] { 1, 2, 3 } + postbackData: new byte[] { 1, 2, 3 }, + pairedMessageId: "12345" ); } @@ -74,5 +75,15 @@ public void PostbackDataTest() Assert.IsType(instance.PostbackData); Assert.Equal(new byte[] { 1, 2, 3 }, instance.PostbackData); } + + /// + /// Test the property 'PairedMessageId' + /// + [Fact] + public void PairedMessageIdTest() + { + Assert.IsType(instance.PairedMessageId); + Assert.Equal("12345", instance.PairedMessageId); + } } }