From 2e5837af7518398762724a5b52b780012daba5df Mon Sep 17 00:00:00 2001 From: DX-Bandwidth Date: Tue, 20 Jan 2026 14:12:56 +0000 Subject: [PATCH] Generate SDK with OpenAPI Generator Version --- .openapi-generator/FILES | 2 + Bandwidth.Standard.sln | 10 +- README.md | 1 + api/openapi.yaml | 105 +++++++++++++++-- bandwidth.yml | 63 +++++++++- docs/BlockedWebhook.md | 2 +- docs/CustomTooManyRequestsError.md | 11 ++ docs/FailureWebhook.md | 2 +- docs/MessagesApi.md | 5 +- ...ChannelChannelListRBMObjectAllOfContent.md | 2 +- docs/RbmMessageMedia.md | 2 +- docs/TfvStatus.md | 3 +- docs/VerificationDenialWebhook.md | 2 +- docs/VerificationRequest.md | 1 + docs/VerificationUpdateRequest.md | 1 + docs/VerificationWebhook.md | 2 +- src/Bandwidth.Standard/Api/MessagesApi.cs | 16 +-- .../Model/BlockedWebhook.cs | 4 +- .../Model/CustomTooManyRequestsError.cs | 109 ++++++++++++++++++ .../Model/FailureWebhook.cs | 4 +- src/Bandwidth.Standard/Model/LookupResult.cs | 4 +- src/Bandwidth.Standard/Model/RbmActionBase.cs | 2 +- .../Model/RbmMessageMedia.cs | 4 +- .../Model/RbmSuggestionResponse.cs | 2 +- src/Bandwidth.Standard/Model/TfvStatus.cs | 27 ++++- .../Model/VerificationDenialWebhook.cs | 4 +- .../Model/VerificationRequest.cs | 25 +++- .../Model/VerificationUpdateRequest.cs | 25 +++- .../Model/VerificationWebhook.cs | 4 +- 29 files changed, 389 insertions(+), 55 deletions(-) create mode 100644 docs/CustomTooManyRequestsError.md create mode 100644 src/Bandwidth.Standard/Model/CustomTooManyRequestsError.cs diff --git a/.openapi-generator/FILES b/.openapi-generator/FILES index 9fa5c7fe..4ea64983 100644 --- a/.openapi-generator/FILES +++ b/.openapi-generator/FILES @@ -47,6 +47,7 @@ docs/CreateMessageRequestError.md docs/CreateMultiChannelMessageResponse.md docs/CreateSyncLookupResponse.md docs/CreateSyncLookupResponseData.md +docs/CustomTooManyRequestsError.md docs/DeactivationEventEnum.md docs/DisconnectCallback.md docs/Diversion.md @@ -264,6 +265,7 @@ src/Bandwidth.Standard/Model/CreateMessageRequestError.cs src/Bandwidth.Standard/Model/CreateMultiChannelMessageResponse.cs src/Bandwidth.Standard/Model/CreateSyncLookupResponse.cs src/Bandwidth.Standard/Model/CreateSyncLookupResponseData.cs +src/Bandwidth.Standard/Model/CustomTooManyRequestsError.cs src/Bandwidth.Standard/Model/DeactivationEventEnum.cs src/Bandwidth.Standard/Model/DisconnectCallback.cs src/Bandwidth.Standard/Model/Diversion.cs diff --git a/Bandwidth.Standard.sln b/Bandwidth.Standard.sln index 45670746..17ea04bc 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", "{1B496B75-0E81-41BC-86C2-73D16188960A}" +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Bandwidth.Standard", "src\Bandwidth.Standard\Bandwidth.Standard.csproj", "{3169CA47-72BD-4861-8006-EA3ED1D104BB}" 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 - {1B496B75-0E81-41BC-86C2-73D16188960A}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {1B496B75-0E81-41BC-86C2-73D16188960A}.Debug|Any CPU.Build.0 = Debug|Any CPU - {1B496B75-0E81-41BC-86C2-73D16188960A}.Release|Any CPU.ActiveCfg = Release|Any CPU - {1B496B75-0E81-41BC-86C2-73D16188960A}.Release|Any CPU.Build.0 = Release|Any CPU + {3169CA47-72BD-4861-8006-EA3ED1D104BB}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {3169CA47-72BD-4861-8006-EA3ED1D104BB}.Debug|Any CPU.Build.0 = Debug|Any CPU + {3169CA47-72BD-4861-8006-EA3ED1D104BB}.Release|Any CPU.ActiveCfg = Release|Any CPU + {3169CA47-72BD-4861-8006-EA3ED1D104BB}.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/README.md b/README.md index 63e41ead..bdcf2f22 100644 --- a/README.md +++ b/README.md @@ -211,6 +211,7 @@ Class | Method | HTTP request | Description - [Model.CreateMultiChannelMessageResponse](docs/CreateMultiChannelMessageResponse.md) - [Model.CreateSyncLookupResponse](docs/CreateSyncLookupResponse.md) - [Model.CreateSyncLookupResponseData](docs/CreateSyncLookupResponseData.md) + - [Model.CustomTooManyRequestsError](docs/CustomTooManyRequestsError.md) - [Model.DeactivationEventEnum](docs/DeactivationEventEnum.md) - [Model.DisconnectCallback](docs/DisconnectCallback.md) - [Model.Diversion](docs/Diversion.md) diff --git a/api/openapi.yaml b/api/openapi.yaml index 9cd4e5ce..ad0809ef 100644 --- a/api/openapi.yaml +++ b/api/openapi.yaml @@ -389,7 +389,10 @@ paths: url: https://messaging.bandwidth.com/api/v2 /users/{accountId}/messages: get: - description: Returns a list of messages based on query parameters. + description: | + Returns a list of messages based on query parameters. + + **Rate Limit:** This endpoint is rate limited to 3500 requests per 5 minutes per Source IP address. Exceeding the limit returns HTTP 429 with a `Retry-After` header. operationId: listMessages parameters: - description: Your Bandwidth Account ID. @@ -699,6 +702,12 @@ paths: schema: $ref: '#/components/schemas/messagingRequestError' description: Not Found + "405": + content: + application/json: + schema: + $ref: '#/components/schemas/messagingRequestError' + description: Method Not Allowed "415": content: application/json: @@ -709,8 +718,16 @@ paths: content: application/json: schema: - $ref: '#/components/schemas/messagingRequestError' + $ref: '#/components/schemas/customTooManyRequestsError' description: Too Many Requests + headers: + Retry-After: + description: The number of seconds to wait before retrying the request. + explode: false + schema: + example: 300 + type: integer + style: simple "500": content: application/json: @@ -7409,6 +7426,20 @@ components: schema: $ref: '#/components/schemas/multiChannelError' description: Internal Server Error + customTooManyRequestsError: + content: + application/json: + schema: + $ref: '#/components/schemas/customTooManyRequestsError' + description: Too Many Requests + headers: + Retry-After: + description: The number of seconds to wait before retrying the request. + explode: false + schema: + example: 300 + type: integer + style: simple createCallResponse: content: application/json: @@ -8735,7 +8766,9 @@ components: rbmMessageMedia: properties: media: - $ref: '#/components/schemas/rbmMessageContentFile' + items: + $ref: '#/components/schemas/rbmMessageContentFile' + type: array suggestions: description: An array of suggested actions for the recipient. items: @@ -9615,6 +9648,24 @@ components: - segmentCount - time - to + customTooManyRequestsError: + example: + description: Rate limit exceeded. Wait for Retry-After time before sending + another request. + type: rate_limit_exceeded + properties: + type: + example: rate_limit_exceeded + type: string + description: + example: Rate limit exceeded. Wait for Retry-After time before sending another + request. + type: string + required: + - description + - type + title: CustomTooManyRequestsError + type: object callbackMethodEnum: default: POST description: The HTTP method to use to deliver the callback. GET or POST. Default @@ -13623,13 +13674,11 @@ components: description: Unique identifier (UUID) generated by Bandwidth to assist in tracking the verification status of a toll-free number - included in all webhook payloads. example: acde070d-8c4c-4f0d-9d8a-162843c10333 - format: uuid type: string internalTicketNumberForWebhook: description: Unique identifier (UUID) generated by Bandwidth to assist in tracking the verification status of a toll-free number. example: acde070d-8c4c-4f0d-9d8a-162843c10333 - format: uuid type: string businessContactPhoneNumber: description: Contact telephone number @@ -13728,6 +13777,16 @@ components: description: Indicates whether the content is age-gated. example: false type: boolean + cvToken: + description: "The token provided by Campaign Verify to validate your political\ + \ use case. Only required for 527 political organizations. If you are\ + \ not a 527 political organization, this field should be omitted. If you\ + \ pass an empty string, it will be passed along and potentially rejected." + example: cv.user123|sess456|mno|tfree|read_write|X7yZ9aBcDeFgHiJkLmNoPqRsTuVwXyZ0123456789aBcDeFgHiJkLmNoPqRsTuVwXyZ0123456789aBcDeFgHiJkLmNoPqRsTuVwXyZ0123456789aBcDeFgHiJkLmNoPqRsTuVwXyZ0123456789aBcDeFgHiJkLmNoPqRsTuVwXyZ0123456789aBcDeFgHiJkLmNoPqRsTuVwXyZ0123456789aBcDeFgHiJkLmNoPqRsTuVwXyZ0123456789aBcDeFgHiJkLmNoPqRsTuVwXyZ0123456789aBcDeFgHiJkLmNoPqRsTuVwXyZ0123456789aBcDeFgHiJkLmNoPqRsTuVwXyZ0123456789aBcDeFgHiJkLmNoPqRsTuVwXyZ0123456789aBcDeFgHiJkLmNoPqRsTuVwXyZ0123456789aBcDeFgHiJkLmNoPqRsTuVw + maxLength: 500 + minLength: 0 + nullable: true + type: string required: - businessAddress - businessContact @@ -13822,6 +13881,16 @@ components: description: Indicates whether the content is age-gated. example: false type: boolean + cvToken: + description: "The token provided by Campaign Verify to validate your political\ + \ use case. Only required for 527 political organizations. If you are\ + \ not a 527 political organization, this field should be omitted. If you\ + \ pass an empty string, it will be passed along and potentially rejected." + example: cv.user123|sess456|mno|tfree|read_write|X7yZ9aBcDeFgHiJkLmNoPqRsTuVwXyZ0123456789aBcDeFgHiJkLmNoPqRsTuVwXyZ0123456789aBcDeFgHiJkLmNoPqRsTuVwXyZ0123456789aBcDeFgHiJkLmNoPqRsTuVwXyZ0123456789aBcDeFgHiJkLmNoPqRsTuVwXyZ0123456789aBcDeFgHiJkLmNoPqRsTuVwXyZ0123456789aBcDeFgHiJkLmNoPqRsTuVwXyZ0123456789aBcDeFgHiJkLmNoPqRsTuVwXyZ0123456789aBcDeFgHiJkLmNoPqRsTuVwXyZ0123456789aBcDeFgHiJkLmNoPqRsTuVwXyZ0123456789aBcDeFgHiJkLmNoPqRsTuVwXyZ0123456789aBcDeFgHiJkLmNoPqRsTuVwXyZ0123456789aBcDeFgHiJkLmNoPqRsTuVw + maxLength: 500 + minLength: 0 + nullable: true + type: string required: - businessAddress - businessContact @@ -13909,7 +13978,6 @@ components: description: Unique identifier (UUID) generated by Bandwidth to assist in tracking the verification status of a toll-free number. example: acde070d-8c4c-4f0d-9d8a-162843c10333 - format: uuid type: string type: object verificationDenialWebhook: @@ -13945,7 +14013,6 @@ components: description: Unique identifier (UUID) generated by Bandwidth to assist in tracking the verification status of a toll-free number. example: acde070d-8c4c-4f0d-9d8a-162843c10333 - format: uuid type: string phoneNumber: description: Toll-free telephone number in E.164 format. @@ -13995,7 +14062,6 @@ components: description: Unique identifier (UUID) generated by Bandwidth to assist in tracking the verification status of a toll-free number. example: acde070d-8c4c-4f0d-9d8a-162843c10333 - format: uuid type: string type: object blockedWebhook: @@ -14018,7 +14084,6 @@ components: description: Unique identifier (UUID) generated by Bandwidth to assist in tracking the verification status of a toll-free number. example: acde070d-8c4c-4f0d-9d8a-162843c10333 - format: uuid type: string blocked: description: Whether a Toll-Free Verification is blocked. This attribute @@ -14484,6 +14549,7 @@ components: useCaseSummary: Text summarizing the use case for the toll-free number declineReasonDescription: Invalid Information - Can't Validate URL - Website is not accessible / not available + cvToken: cv.user123|sess456|mno|tfree|read_write|X7yZ9aBcDeFgHiJkLmNoPqRsTuVwXyZ0123456789aBcDeFgHiJkLmNoPqRsTuVwXyZ0123456789aBcDeFgHiJkLmNoPqRsTuVwXyZ0123456789aBcDeFgHiJkLmNoPqRsTuVwXyZ0123456789aBcDeFgHiJkLmNoPqRsTuVwXyZ0123456789aBcDeFgHiJkLmNoPqRsTuVwXyZ0123456789aBcDeFgHiJkLmNoPqRsTuVwXyZ0123456789aBcDeFgHiJkLmNoPqRsTuVwXyZ0123456789aBcDeFgHiJkLmNoPqRsTuVwXyZ0123456789aBcDeFgHiJkLmNoPqRsTuVwXyZ0123456789aBcDeFgHiJkLmNoPqRsTuVwXyZ0123456789aBcDeFgHiJkLmNoPqRsTuVwXyZ0123456789aBcDeFgHiJkLmNoPqRsTuVw status: VERIFIED properties: phoneNumber: @@ -14501,7 +14567,6 @@ components: tracking the verification status of a toll-free number - included in all webhook payloads. example: acde070d-8c4c-4f0d-9d8a-162843c10333 - format: uuid type: string declineReasonDescription: description: Explanation for why a verification request was declined. @@ -14536,6 +14601,16 @@ components: attribute will only be defined when the number is blocked. example: Toll-free number was used to send spam messages type: string + cvToken: + description: "The token provided by Campaign Verify to validate your political\ + \ use case. Only required for 527 political organizations. If you are\ + \ not a 527 political organization, this field should be omitted. If you\ + \ pass an empty string, it will be passed along and potentially rejected." + example: cv.user123|sess456|mno|tfree|read_write|X7yZ9aBcDeFgHiJkLmNoPqRsTuVwXyZ0123456789aBcDeFgHiJkLmNoPqRsTuVwXyZ0123456789aBcDeFgHiJkLmNoPqRsTuVwXyZ0123456789aBcDeFgHiJkLmNoPqRsTuVwXyZ0123456789aBcDeFgHiJkLmNoPqRsTuVwXyZ0123456789aBcDeFgHiJkLmNoPqRsTuVwXyZ0123456789aBcDeFgHiJkLmNoPqRsTuVwXyZ0123456789aBcDeFgHiJkLmNoPqRsTuVwXyZ0123456789aBcDeFgHiJkLmNoPqRsTuVwXyZ0123456789aBcDeFgHiJkLmNoPqRsTuVwXyZ0123456789aBcDeFgHiJkLmNoPqRsTuVwXyZ0123456789aBcDeFgHiJkLmNoPqRsTuVwXyZ0123456789aBcDeFgHiJkLmNoPqRsTuVw + maxLength: 500 + minLength: 0 + nullable: true + type: string type: object tfvSubmissionInfo: example: @@ -14660,6 +14735,16 @@ components: nullable: true pattern: "^[ -~]{16,64}$" type: string + cvToken: + description: "The token provided by Campaign Verify to validate your political\ + \ use case. Only required for 527 political organizations. If you are not\ + \ a 527 political organization, this field should be omitted. If you pass\ + \ an empty string, it will be passed along and potentially rejected." + example: cv.user123|sess456|mno|tfree|read_write|X7yZ9aBcDeFgHiJkLmNoPqRsTuVwXyZ0123456789aBcDeFgHiJkLmNoPqRsTuVwXyZ0123456789aBcDeFgHiJkLmNoPqRsTuVwXyZ0123456789aBcDeFgHiJkLmNoPqRsTuVwXyZ0123456789aBcDeFgHiJkLmNoPqRsTuVwXyZ0123456789aBcDeFgHiJkLmNoPqRsTuVwXyZ0123456789aBcDeFgHiJkLmNoPqRsTuVwXyZ0123456789aBcDeFgHiJkLmNoPqRsTuVwXyZ0123456789aBcDeFgHiJkLmNoPqRsTuVwXyZ0123456789aBcDeFgHiJkLmNoPqRsTuVwXyZ0123456789aBcDeFgHiJkLmNoPqRsTuVwXyZ0123456789aBcDeFgHiJkLmNoPqRsTuVwXyZ0123456789aBcDeFgHiJkLmNoPqRsTuVw + maxLength: 500 + minLength: 0 + nullable: true + type: string rbmCardContent_media: allOf: - $ref: '#/components/schemas/rbmMessageContentFile' diff --git a/bandwidth.yml b/bandwidth.yml index d7c32953..4c32a6b9 100644 --- a/bandwidth.yml +++ b/bandwidth.yml @@ -163,7 +163,13 @@ paths: /users/{accountId}/messages: get: summary: List Messages - description: Returns a list of messages based on query parameters. + description: > + Returns a list of messages based on query parameters. + + + **Rate Limit:** This endpoint is rate limited to 3500 requests per 5 + minutes per Source IP address. Exceeding the limit returns HTTP 429 with + a `Retry-After` header. operationId: listMessages tags: - Messages @@ -207,10 +213,12 @@ paths: $ref: '#/components/responses/messagingForbiddenError' '404': $ref: '#/components/responses/messagingNotFoundError' + '405': + $ref: '#/components/responses/messagingMethodNotAllowedError' '415': $ref: '#/components/responses/messagingInvalidMediaTypeError' '429': - $ref: '#/components/responses/messagingTooManyRequestsError' + $ref: '#/components/responses/customTooManyRequestsError' '500': $ref: '#/components/responses/messagingInternalServerError' post: @@ -2257,7 +2265,9 @@ components: type: object properties: media: - $ref: '#/components/schemas/rbmMessageContentFile' + type: array + items: + $ref: '#/components/schemas/rbmMessageContentFile' suggestions: $ref: '#/components/schemas/multiChannelFullActions' required: @@ -2944,6 +2954,21 @@ components: - direction - to - from + customTooManyRequestsError: + title: CustomTooManyRequestsError + type: object + properties: + type: + type: string + example: rate_limit_exceeded + description: + type: string + example: >- + Rate limit exceeded. Wait for Retry-After time before sending + another request. + required: + - type + - description callbackMethodEnum: type: string nullable: true @@ -5875,7 +5900,6 @@ components: type: object internalTicketNumber: type: string - format: uuid description: >- Unique identifier (UUID) generated by Bandwidth to assist in tracking the verification status of a toll-free number - included in all webhook @@ -5883,7 +5907,6 @@ components: example: acde070d-8c4c-4f0d-9d8a-162843c10333 internalTicketNumberForWebhook: type: string - format: uuid description: >- Unique identifier (UUID) generated by Bandwidth to assist in tracking the verification status of a toll-free number. @@ -5956,6 +5979,8 @@ components: $ref: '#/components/schemas/helpMessageResponse' ageGatedContent: $ref: '#/components/schemas/ageGatedContent' + cvToken: + $ref: '#/components/schemas/cvToken' verificationUpdateRequest: type: object required: @@ -6005,6 +6030,8 @@ components: $ref: '#/components/schemas/helpMessageResponse' ageGatedContent: $ref: '#/components/schemas/ageGatedContent' + cvToken: + $ref: '#/components/schemas/cvToken' tfvBasicAuthentication: type: object properties: @@ -6456,6 +6483,8 @@ components: $ref: '#/components/schemas/blocked' blockedReason: $ref: '#/components/schemas/blockedReason' + cvToken: + $ref: '#/components/schemas/cvToken' tfvSubmissionInfo: type: object properties: @@ -6520,6 +6549,18 @@ components: nullable: true pattern: ^[ -~]{16,64}$ type: string + cvToken: + type: string + description: >- + The token provided by Campaign Verify to validate your political use + case. Only required for 527 political organizations. If you are not a + 527 political organization, this field should be omitted. If you pass an + empty string, it will be passed along and potentially rejected. + minLength: 0 + maxLength: 500 + nullable: true + example: >- + cv.user123|sess456|mno|tfree|read_write|X7yZ9aBcDeFgHiJkLmNoPqRsTuVwXyZ0123456789aBcDeFgHiJkLmNoPqRsTuVwXyZ0123456789aBcDeFgHiJkLmNoPqRsTuVwXyZ0123456789aBcDeFgHiJkLmNoPqRsTuVwXyZ0123456789aBcDeFgHiJkLmNoPqRsTuVwXyZ0123456789aBcDeFgHiJkLmNoPqRsTuVwXyZ0123456789aBcDeFgHiJkLmNoPqRsTuVwXyZ0123456789aBcDeFgHiJkLmNoPqRsTuVwXyZ0123456789aBcDeFgHiJkLmNoPqRsTuVwXyZ0123456789aBcDeFgHiJkLmNoPqRsTuVwXyZ0123456789aBcDeFgHiJkLmNoPqRsTuVwXyZ0123456789aBcDeFgHiJkLmNoPqRsTuVwXyZ0123456789aBcDeFgHiJkLmNoPqRsTuVw responses: createMessageResponse: description: Accepted @@ -6734,6 +6775,18 @@ components: - type: internal-server-error description: Internal server error. No further information available source: {} + customTooManyRequestsError: + description: Too Many Requests + headers: + Retry-After: + description: The number of seconds to wait before retrying the request. + schema: + type: integer + example: 300 + content: + application/json: + schema: + $ref: '#/components/schemas/customTooManyRequestsError' createCallResponse: description: Created headers: diff --git a/docs/BlockedWebhook.md b/docs/BlockedWebhook.md index 2447c63a..6c1987a3 100644 --- a/docs/BlockedWebhook.md +++ b/docs/BlockedWebhook.md @@ -7,7 +7,7 @@ Name | Type | Description | Notes **AccountId** | **string** | User's account ID. | [optional] **PhoneNumber** | **string** | Toll-free telephone number in E.164 format. | [optional] **Status** | **TfvCallbackStatusEnum** | | [optional] -**InternalTicketNumber** | **Guid** | Unique identifier (UUID) generated by Bandwidth to assist in tracking the verification status of a toll-free number. | [optional] +**InternalTicketNumber** | **string** | Unique identifier (UUID) generated by Bandwidth to assist in tracking the verification status of a toll-free number. | [optional] **Blocked** | **bool** | Whether a Toll-Free Verification is blocked. This attribute will only be defined when the number is blocked. | [optional] **BlockedReason** | **string** | The reason why the Toll-Free Verification is blocked. This attribute will only be defined when the number is blocked. | [optional] diff --git a/docs/CustomTooManyRequestsError.md b/docs/CustomTooManyRequestsError.md new file mode 100644 index 00000000..f7c193af --- /dev/null +++ b/docs/CustomTooManyRequestsError.md @@ -0,0 +1,11 @@ +# Bandwidth.Standard.Model.CustomTooManyRequestsError + +## Properties + +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**Type** | **string** | | +**Description** | **string** | | + +[[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/docs/FailureWebhook.md b/docs/FailureWebhook.md index 74fefe57..ee69d41d 100644 --- a/docs/FailureWebhook.md +++ b/docs/FailureWebhook.md @@ -9,7 +9,7 @@ Name | Type | Description | Notes **ErrorCode** | **string** | An error code indicating what error was encountered. This code can be interpreted as an HTTP status code in regards to the error that was encountered. | [optional] **ErrorMessage** | **string** | A description of the error that was encountered. | [optional] **Errors** | **List<string>** | Details of the errors that were encountered when processing the request. | [optional] -**InternalTicketNumber** | **Guid** | Unique identifier (UUID) generated by Bandwidth to assist in tracking the verification status of a toll-free number. | [optional] +**InternalTicketNumber** | **string** | Unique identifier (UUID) generated by Bandwidth to assist in tracking the verification status of a toll-free number. | [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/docs/MessagesApi.md b/docs/MessagesApi.md index ddd281a3..b850fd91 100644 --- a/docs/MessagesApi.md +++ b/docs/MessagesApi.md @@ -121,7 +121,7 @@ catch (ApiException e) List Messages -Returns a list of messages based on query parameters. +Returns a list of messages based on query parameters. **Rate Limit:** This endpoint is rate limited to 3500 requests per 5 minutes per Source IP address. Exceeding the limit returns HTTP 429 with a `Retry-After` header. ### Example ```csharp @@ -267,8 +267,9 @@ catch (ApiException e) | **401** | Unauthorized | - | | **403** | Forbidden | - | | **404** | Not Found | - | +| **405** | Method Not Allowed | - | | **415** | Unsupported Media Type | - | -| **429** | Too Many Requests | - | +| **429** | Too Many Requests | * Retry-After - The number of seconds to wait before retrying the request.
| | **500** | Internal Server Error | - | [[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md) diff --git a/docs/MultiChannelChannelListRBMObjectAllOfContent.md b/docs/MultiChannelChannelListRBMObjectAllOfContent.md index bd919a25..74015b4a 100644 --- a/docs/MultiChannelChannelListRBMObjectAllOfContent.md +++ b/docs/MultiChannelChannelListRBMObjectAllOfContent.md @@ -7,7 +7,7 @@ Name | Type | Description | Notes ------------ | ------------- | ------------- | ------------- **Text** | **string** | The text associated with the message. Must be 3270 characters or less | **Suggestions** | [**List<MultiChannelAction>**](MultiChannelAction.md) | An array of suggested actions for the recipient. | [optional] -**Media** | [**RbmMessageContentFile**](RbmMessageContentFile.md) | | +**Media** | [**List<RbmMessageContentFile>**](RbmMessageContentFile.md) | | **Orientation** | **StandaloneCardOrientationEnum** | | **ThumbnailImageAlignment** | **ThumbnailAlignmentEnum** | | **CardContent** | [**RbmCardContent**](RbmCardContent.md) | | diff --git a/docs/RbmMessageMedia.md b/docs/RbmMessageMedia.md index 7a0e5aad..cc1c7349 100644 --- a/docs/RbmMessageMedia.md +++ b/docs/RbmMessageMedia.md @@ -4,7 +4,7 @@ Name | Type | Description | Notes ------------ | ------------- | ------------- | ------------- -**Media** | [**RbmMessageContentFile**](RbmMessageContentFile.md) | | +**Media** | [**List<RbmMessageContentFile>**](RbmMessageContentFile.md) | | **Suggestions** | [**List<MultiChannelAction>**](MultiChannelAction.md) | An array of suggested actions for the recipient. | [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/docs/TfvStatus.md b/docs/TfvStatus.md index 169a3b9a..8ffb666f 100644 --- a/docs/TfvStatus.md +++ b/docs/TfvStatus.md @@ -6,7 +6,7 @@ Name | Type | Description | Notes ------------ | ------------- | ------------- | ------------- **PhoneNumber** | **string** | Toll-free telephone number in E.164 format. | [optional] **Status** | **TfvStatusEnum** | | [optional] -**InternalTicketNumber** | **Guid** | Unique identifier (UUID) generated by Bandwidth to assist in tracking the verification status of a toll-free number - included in all webhook payloads. | [optional] +**InternalTicketNumber** | **string** | Unique identifier (UUID) generated by Bandwidth to assist in tracking the verification status of a toll-free number - included in all webhook payloads. | [optional] **DeclineReasonDescription** | **string** | Explanation for why a verification request was declined. | [optional] **ResubmitAllowed** | **bool** | Whether a Toll-Free Verification request qualifies for resubmission via PUT. | [optional] **CreatedDateTime** | **DateTime** | Date and time the verification request was created. | [optional] @@ -14,6 +14,7 @@ Name | Type | Description | Notes **Submission** | [**TfvSubmissionInfo**](TfvSubmissionInfo.md) | | [optional] **Blocked** | **bool** | Whether a Toll-Free Verification is blocked. This attribute will only be defined when the number is blocked. | [optional] **BlockedReason** | **string** | The reason why the Toll-Free Verification is blocked. This attribute will only be defined when the number is blocked. | [optional] +**CvToken** | **string** | The token provided by Campaign Verify to validate your political use case. Only required for 527 political organizations. If you are not a 527 political organization, this field should be omitted. If you pass an empty string, it will be passed along and potentially rejected. | [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/docs/VerificationDenialWebhook.md b/docs/VerificationDenialWebhook.md index 8764138c..87564364 100644 --- a/docs/VerificationDenialWebhook.md +++ b/docs/VerificationDenialWebhook.md @@ -8,7 +8,7 @@ Name | Type | Description | Notes **AdditionalDenialReasons** | [**List<AdditionalDenialReason>**](AdditionalDenialReason.md) | An optional list of denial reasons in addition to declineReasonDescription when multiple reasons apply. | [optional] **DeclineReasonDescription** | **string** | Explanation for why a verification request was declined. | [optional] **DenialStatusCode** | **int** | Reason code for denial. | [optional] -**InternalTicketNumber** | **Guid** | Unique identifier (UUID) generated by Bandwidth to assist in tracking the verification status of a toll-free number. | [optional] +**InternalTicketNumber** | **string** | Unique identifier (UUID) generated by Bandwidth to assist in tracking the verification status of a toll-free number. | [optional] **PhoneNumber** | **string** | Toll-free telephone number in E.164 format. | [optional] **ResubmitAllowed** | **bool** | Whether a Toll-Free Verification request qualifies for resubmission via PUT. | [optional] **Status** | **string** | | [optional] [default to "UNVERIFIED"] diff --git a/docs/VerificationRequest.md b/docs/VerificationRequest.md index 1cc6e1e6..47068170 100644 --- a/docs/VerificationRequest.md +++ b/docs/VerificationRequest.md @@ -22,6 +22,7 @@ Name | Type | Description | Notes **BusinessEntityType** | **BusinessEntityTypeEnum** | | [optional] **HelpMessageResponse** | **string** | A message that gets sent to users requesting help. | [optional] **AgeGatedContent** | **bool** | Indicates whether the content is age-gated. | [optional] +**CvToken** | **string** | The token provided by Campaign Verify to validate your political use case. Only required for 527 political organizations. If you are not a 527 political organization, this field should be omitted. If you pass an empty string, it will be passed along and potentially rejected. | [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/docs/VerificationUpdateRequest.md b/docs/VerificationUpdateRequest.md index 20b585d4..ca59c898 100644 --- a/docs/VerificationUpdateRequest.md +++ b/docs/VerificationUpdateRequest.md @@ -21,6 +21,7 @@ Name | Type | Description | Notes **BusinessEntityType** | **BusinessEntityTypeEnum** | | [optional] **HelpMessageResponse** | **string** | A message that gets sent to users requesting help. | [optional] **AgeGatedContent** | **bool** | Indicates whether the content is age-gated. | [optional] +**CvToken** | **string** | The token provided by Campaign Verify to validate your political use case. Only required for 527 political organizations. If you are not a 527 political organization, this field should be omitted. If you pass an empty string, it will be passed along and potentially rejected. | [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/docs/VerificationWebhook.md b/docs/VerificationWebhook.md index beb3236c..36710752 100644 --- a/docs/VerificationWebhook.md +++ b/docs/VerificationWebhook.md @@ -7,7 +7,7 @@ Name | Type | Description | Notes **AccountId** | **string** | User's account ID. | [optional] **PhoneNumber** | **string** | Toll-free telephone number in E.164 format. | [optional] **Status** | **TfvCallbackStatusEnum** | | [optional] -**InternalTicketNumber** | **Guid** | Unique identifier (UUID) generated by Bandwidth to assist in tracking the verification status of a toll-free number. | [optional] +**InternalTicketNumber** | **string** | Unique identifier (UUID) generated by Bandwidth to assist in tracking the verification status of a toll-free number. | [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/Api/MessagesApi.cs b/src/Bandwidth.Standard/Api/MessagesApi.cs index 7b11fb04..4d3a8e17 100644 --- a/src/Bandwidth.Standard/Api/MessagesApi.cs +++ b/src/Bandwidth.Standard/Api/MessagesApi.cs @@ -57,7 +57,7 @@ public interface IMessagesApiSync : IApiAccessor /// List Messages /// /// - /// Returns a list of messages based on query parameters. + /// Returns a list of messages based on query parameters. **Rate Limit:** This endpoint is rate limited to 3500 requests per 5 minutes per Source IP address. Exceeding the limit returns HTTP 429 with a `Retry-After` header. /// /// Thrown when fails to make API call /// Your Bandwidth Account ID. @@ -96,7 +96,7 @@ public interface IMessagesApiSync : IApiAccessor /// List Messages /// /// - /// Returns a list of messages based on query parameters. + /// Returns a list of messages based on query parameters. **Rate Limit:** This endpoint is rate limited to 3500 requests per 5 minutes per Source IP address. Exceeding the limit returns HTTP 429 with a `Retry-After` header. /// /// Thrown when fails to make API call /// Your Bandwidth Account ID. @@ -170,7 +170,7 @@ public interface IMessagesApiAsync : IApiAccessor /// List Messages /// /// - /// Returns a list of messages based on query parameters. + /// Returns a list of messages based on query parameters. **Rate Limit:** This endpoint is rate limited to 3500 requests per 5 minutes per Source IP address. Exceeding the limit returns HTTP 429 with a `Retry-After` header. /// /// Thrown when fails to make API call /// Your Bandwidth Account ID. @@ -210,7 +210,7 @@ public interface IMessagesApiAsync : IApiAccessor /// List Messages /// /// - /// Returns a list of messages based on query parameters. + /// Returns a list of messages based on query parameters. **Rate Limit:** This endpoint is rate limited to 3500 requests per 5 minutes per Source IP address. Exceeding the limit returns HTTP 429 with a `Retry-After` header. /// /// Thrown when fails to make API call /// Your Bandwidth Account ID. @@ -574,7 +574,7 @@ public Bandwidth.Standard.Client.ApiResponse CreateMessageWithHttpInfo( } /// - /// List Messages Returns a list of messages based on query parameters. + /// List Messages Returns a list of messages based on query parameters. **Rate Limit:** This endpoint is rate limited to 3500 requests per 5 minutes per Source IP address. Exceeding the limit returns HTTP 429 with a `Retry-After` header. /// /// Thrown when fails to make API call /// Your Bandwidth Account ID. @@ -614,7 +614,7 @@ public Bandwidth.Standard.Client.ApiResponse CreateMessageWithHttpInfo( } /// - /// List Messages Returns a list of messages based on query parameters. + /// List Messages Returns a list of messages based on query parameters. **Rate Limit:** This endpoint is rate limited to 3500 requests per 5 minutes per Source IP address. Exceeding the limit returns HTTP 429 with a `Retry-After` header. /// /// Thrown when fails to make API call /// Your Bandwidth Account ID. @@ -828,7 +828,7 @@ public Bandwidth.Standard.Client.ApiResponse CreateMessageWithHttpInfo( } /// - /// List Messages Returns a list of messages based on query parameters. + /// List Messages Returns a list of messages based on query parameters. **Rate Limit:** This endpoint is rate limited to 3500 requests per 5 minutes per Source IP address. Exceeding the limit returns HTTP 429 with a `Retry-After` header. /// /// Thrown when fails to make API call /// Your Bandwidth Account ID. @@ -869,7 +869,7 @@ public Bandwidth.Standard.Client.ApiResponse CreateMessageWithHttpInfo( } /// - /// List Messages Returns a list of messages based on query parameters. + /// List Messages Returns a list of messages based on query parameters. **Rate Limit:** This endpoint is rate limited to 3500 requests per 5 minutes per Source IP address. Exceeding the limit returns HTTP 429 with a `Retry-After` header. /// /// Thrown when fails to make API call /// Your Bandwidth Account ID. diff --git a/src/Bandwidth.Standard/Model/BlockedWebhook.cs b/src/Bandwidth.Standard/Model/BlockedWebhook.cs index 7e6b7d5a..e5eb0bcd 100644 --- a/src/Bandwidth.Standard/Model/BlockedWebhook.cs +++ b/src/Bandwidth.Standard/Model/BlockedWebhook.cs @@ -47,7 +47,7 @@ public partial class BlockedWebhook : IValidatableObject /// Unique identifier (UUID) generated by Bandwidth to assist in tracking the verification status of a toll-free number.. /// Whether a Toll-Free Verification is blocked. This attribute will only be defined when the number is blocked.. /// The reason why the Toll-Free Verification is blocked. This attribute will only be defined when the number is blocked.. - public BlockedWebhook(string accountId = default(string), string phoneNumber = default(string), TfvCallbackStatusEnum? status = default(TfvCallbackStatusEnum?), Guid internalTicketNumber = default(Guid), bool blocked = default(bool), string blockedReason = default(string)) + public BlockedWebhook(string accountId = default(string), string phoneNumber = default(string), TfvCallbackStatusEnum? status = default(TfvCallbackStatusEnum?), string internalTicketNumber = default(string), bool blocked = default(bool), string blockedReason = default(string)) { this.AccountId = accountId; this.PhoneNumber = phoneNumber; @@ -79,7 +79,7 @@ public partial class BlockedWebhook : IValidatableObject /// Unique identifier (UUID) generated by Bandwidth to assist in tracking the verification status of a toll-free number. /// acde070d-8c4c-4f0d-9d8a-162843c10333 [DataMember(Name = "internalTicketNumber", EmitDefaultValue = false)] - public Guid InternalTicketNumber { get; set; } + public string InternalTicketNumber { get; set; } /// /// Whether a Toll-Free Verification is blocked. This attribute will only be defined when the number is blocked. diff --git a/src/Bandwidth.Standard/Model/CustomTooManyRequestsError.cs b/src/Bandwidth.Standard/Model/CustomTooManyRequestsError.cs new file mode 100644 index 00000000..01b738fb --- /dev/null +++ b/src/Bandwidth.Standard/Model/CustomTooManyRequestsError.cs @@ -0,0 +1,109 @@ +/* + * Bandwidth + * + * Bandwidth's Communication APIs + * + * The version of the OpenAPI document: 1.0.0 + * Contact: letstalk@bandwidth.com + * Generated by: https://github.com/openapitools/openapi-generator.git + */ + + +using System; +using System.Collections; +using System.Collections.Generic; +using System.Collections.ObjectModel; +using System.Linq; +using System.IO; +using System.Runtime.Serialization; +using System.Text; +using System.Text.RegularExpressions; +using Newtonsoft.Json; +using Newtonsoft.Json.Converters; +using Newtonsoft.Json.Linq; +using System.ComponentModel.DataAnnotations; +using OpenAPIDateConverter = Bandwidth.Standard.Client.OpenAPIDateConverter; + +namespace Bandwidth.Standard.Model +{ + /// + /// CustomTooManyRequestsError + /// + [DataContract(Name = "customTooManyRequestsError")] + public partial class CustomTooManyRequestsError : IValidatableObject + { + /// + /// Initializes a new instance of the class. + /// + [JsonConstructorAttribute] + protected CustomTooManyRequestsError() { } + /// + /// Initializes a new instance of the class. + /// + /// type (required). + /// description (required). + public CustomTooManyRequestsError(string type = default(string), string description = default(string)) + { + // to ensure "type" is required (not null) + if (type == null) + { + throw new ArgumentNullException("type is a required property for CustomTooManyRequestsError and cannot be null"); + } + this.Type = type; + // to ensure "description" is required (not null) + if (description == null) + { + throw new ArgumentNullException("description is a required property for CustomTooManyRequestsError and cannot be null"); + } + this.Description = description; + } + + /// + /// Gets or Sets Type + /// + /// rate_limit_exceeded + [DataMember(Name = "type", IsRequired = true, EmitDefaultValue = true)] + public string Type { get; set; } + + /// + /// Gets or Sets Description + /// + /// Rate limit exceeded. Wait for Retry-After time before sending another request. + [DataMember(Name = "description", IsRequired = true, EmitDefaultValue = true)] + public string Description { get; set; } + + /// + /// Returns the string presentation of the object + /// + /// String presentation of the object + public override string ToString() + { + StringBuilder sb = new StringBuilder(); + sb.Append("class CustomTooManyRequestsError {\n"); + sb.Append(" Type: ").Append(Type).Append("\n"); + sb.Append(" Description: ").Append(Description).Append("\n"); + sb.Append("}\n"); + return sb.ToString(); + } + + /// + /// Returns the JSON string presentation of the object + /// + /// JSON string presentation of the object + public virtual string ToJson() + { + return Newtonsoft.Json.JsonConvert.SerializeObject(this, Newtonsoft.Json.Formatting.Indented); + } + + /// + /// To validate all properties of the instance + /// + /// Validation context + /// Validation Result + IEnumerable IValidatableObject.Validate(ValidationContext validationContext) + { + yield break; + } + } + +} diff --git a/src/Bandwidth.Standard/Model/FailureWebhook.cs b/src/Bandwidth.Standard/Model/FailureWebhook.cs index 68ec307e..feb427df 100644 --- a/src/Bandwidth.Standard/Model/FailureWebhook.cs +++ b/src/Bandwidth.Standard/Model/FailureWebhook.cs @@ -41,7 +41,7 @@ public partial class FailureWebhook : IValidatableObject /// A description of the error that was encountered.. /// Details of the errors that were encountered when processing the request.. /// Unique identifier (UUID) generated by Bandwidth to assist in tracking the verification status of a toll-free number.. - public FailureWebhook(string accountId = default(string), string phoneNumber = default(string), string errorCode = default(string), string errorMessage = default(string), List errors = default(List), Guid internalTicketNumber = default(Guid)) + public FailureWebhook(string accountId = default(string), string phoneNumber = default(string), string errorCode = default(string), string errorMessage = default(string), List errors = default(List), string internalTicketNumber = default(string)) { this.AccountId = accountId; this.PhoneNumber = phoneNumber; @@ -96,7 +96,7 @@ public partial class FailureWebhook : IValidatableObject /// Unique identifier (UUID) generated by Bandwidth to assist in tracking the verification status of a toll-free number. /// acde070d-8c4c-4f0d-9d8a-162843c10333 [DataMember(Name = "internalTicketNumber", EmitDefaultValue = false)] - public Guid InternalTicketNumber { get; set; } + public string InternalTicketNumber { get; set; } /// /// Returns the string presentation of the object diff --git a/src/Bandwidth.Standard/Model/LookupResult.cs b/src/Bandwidth.Standard/Model/LookupResult.cs index e566406b..549bafe1 100644 --- a/src/Bandwidth.Standard/Model/LookupResult.cs +++ b/src/Bandwidth.Standard/Model/LookupResult.cs @@ -130,7 +130,7 @@ public partial class LookupResult : IValidatableObject /// [DNI-Only](#section/DNI-Only). The date the phone number entered the status described in `latestMessageDeliveryStatus`. Think of this as the \"start time\" for that status. Value resets every time the `latestMessageDeliveryStatus` changes. /// /// [DNI-Only](#section/DNI-Only). The date the phone number entered the status described in `latestMessageDeliveryStatus`. Think of this as the \"start time\" for that status. Value resets every time the `latestMessageDeliveryStatus` changes. - /// Thu Jun 19 20:00:00 EDT 2025 + /// Fri Jun 20 00:00:00 UTC 2025 [DataMember(Name = "initialMessageDeliveryStatusDate", EmitDefaultValue = false)] [JsonConverter(typeof(OpenAPIDateConverter))] public DateTime InitialMessageDeliveryStatusDate { get; set; } @@ -139,7 +139,7 @@ public partial class LookupResult : IValidatableObject /// [DNI-Only](#section/DNI-Only). The date bandwidth last received delivery status information for this phone number. Use this field to understand how up-to-date the `latestMessageDeliveryStatus` is. Value resets every time the `latestMessageDeliveryStatus` changes. /// /// [DNI-Only](#section/DNI-Only). The date bandwidth last received delivery status information for this phone number. Use this field to understand how up-to-date the `latestMessageDeliveryStatus` is. Value resets every time the `latestMessageDeliveryStatus` changes. - /// Fri Jun 20 20:00:00 EDT 2025 + /// Sat Jun 21 00:00:00 UTC 2025 [DataMember(Name = "latestMessageDeliveryStatusDate", EmitDefaultValue = false)] [JsonConverter(typeof(OpenAPIDateConverter))] public DateTime LatestMessageDeliveryStatusDate { get; set; } diff --git a/src/Bandwidth.Standard/Model/RbmActionBase.cs b/src/Bandwidth.Standard/Model/RbmActionBase.cs index e7864304..329e5f87 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@731d0d5c + /// [B@f98cff [DataMember(Name = "postbackData", IsRequired = true, EmitDefaultValue = true)] public byte[] PostbackData { get; set; } diff --git a/src/Bandwidth.Standard/Model/RbmMessageMedia.cs b/src/Bandwidth.Standard/Model/RbmMessageMedia.cs index 96a89251..0967a508 100644 --- a/src/Bandwidth.Standard/Model/RbmMessageMedia.cs +++ b/src/Bandwidth.Standard/Model/RbmMessageMedia.cs @@ -42,7 +42,7 @@ protected RbmMessageMedia() { } /// /// media (required). /// An array of suggested actions for the recipient.. - public RbmMessageMedia(RbmMessageContentFile media = default(RbmMessageContentFile), List suggestions = default(List)) + public RbmMessageMedia(List media = default(List), List suggestions = default(List)) { // to ensure "media" is required (not null) if (media == null) @@ -57,7 +57,7 @@ protected RbmMessageMedia() { } /// Gets or Sets Media /// [DataMember(Name = "media", IsRequired = true, EmitDefaultValue = true)] - public RbmMessageContentFile Media { get; set; } + public List Media { get; set; } /// /// An array of suggested actions for the recipient. diff --git a/src/Bandwidth.Standard/Model/RbmSuggestionResponse.cs b/src/Bandwidth.Standard/Model/RbmSuggestionResponse.cs index 732e4594..567aaa4a 100644 --- a/src/Bandwidth.Standard/Model/RbmSuggestionResponse.cs +++ b/src/Bandwidth.Standard/Model/RbmSuggestionResponse.cs @@ -55,7 +55,7 @@ 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@731d0d5c + /// [B@f98cff [DataMember(Name = "postbackData", EmitDefaultValue = false)] public byte[] PostbackData { get; set; } diff --git a/src/Bandwidth.Standard/Model/TfvStatus.cs b/src/Bandwidth.Standard/Model/TfvStatus.cs index fbe325d1..76e29c98 100644 --- a/src/Bandwidth.Standard/Model/TfvStatus.cs +++ b/src/Bandwidth.Standard/Model/TfvStatus.cs @@ -51,7 +51,8 @@ public partial class TfvStatus : IValidatableObject /// submission. /// Whether a Toll-Free Verification is blocked. This attribute will only be defined when the number is blocked.. /// The reason why the Toll-Free Verification is blocked. This attribute will only be defined when the number is blocked.. - public TfvStatus(string phoneNumber = default(string), TfvStatusEnum? status = default(TfvStatusEnum?), Guid internalTicketNumber = default(Guid), string declineReasonDescription = default(string), bool resubmitAllowed = default(bool), DateTime createdDateTime = default(DateTime), DateTime modifiedDateTime = default(DateTime), TfvSubmissionInfo submission = default(TfvSubmissionInfo), bool blocked = default(bool), string blockedReason = default(string)) + /// The token provided by Campaign Verify to validate your political use case. Only required for 527 political organizations. If you are not a 527 political organization, this field should be omitted. If you pass an empty string, it will be passed along and potentially rejected.. + public TfvStatus(string phoneNumber = default(string), TfvStatusEnum? status = default(TfvStatusEnum?), string internalTicketNumber = default(string), string declineReasonDescription = default(string), bool resubmitAllowed = default(bool), DateTime createdDateTime = default(DateTime), DateTime modifiedDateTime = default(DateTime), TfvSubmissionInfo submission = default(TfvSubmissionInfo), bool blocked = default(bool), string blockedReason = default(string), string cvToken = default(string)) { this.PhoneNumber = phoneNumber; this.Status = status; @@ -63,6 +64,7 @@ public partial class TfvStatus : IValidatableObject this.Submission = submission; this.Blocked = blocked; this.BlockedReason = blockedReason; + this.CvToken = cvToken; } /// @@ -79,7 +81,7 @@ public partial class TfvStatus : IValidatableObject /// Unique identifier (UUID) generated by Bandwidth to assist in tracking the verification status of a toll-free number - included in all webhook payloads. /// acde070d-8c4c-4f0d-9d8a-162843c10333 [DataMember(Name = "internalTicketNumber", EmitDefaultValue = false)] - public Guid InternalTicketNumber { get; set; } + public string InternalTicketNumber { get; set; } /// /// Explanation for why a verification request was declined. @@ -135,6 +137,14 @@ public partial class TfvStatus : IValidatableObject [DataMember(Name = "blockedReason", EmitDefaultValue = false)] public string BlockedReason { get; set; } + /// + /// The token provided by Campaign Verify to validate your political use case. Only required for 527 political organizations. If you are not a 527 political organization, this field should be omitted. If you pass an empty string, it will be passed along and potentially rejected. + /// + /// The token provided by Campaign Verify to validate your political use case. Only required for 527 political organizations. If you are not a 527 political organization, this field should be omitted. If you pass an empty string, it will be passed along and potentially rejected. + /// cv.user123|sess456|mno|tfree|read_write|X7yZ9aBcDeFgHiJkLmNoPqRsTuVwXyZ0123456789aBcDeFgHiJkLmNoPqRsTuVwXyZ0123456789aBcDeFgHiJkLmNoPqRsTuVwXyZ0123456789aBcDeFgHiJkLmNoPqRsTuVwXyZ0123456789aBcDeFgHiJkLmNoPqRsTuVwXyZ0123456789aBcDeFgHiJkLmNoPqRsTuVwXyZ0123456789aBcDeFgHiJkLmNoPqRsTuVwXyZ0123456789aBcDeFgHiJkLmNoPqRsTuVwXyZ0123456789aBcDeFgHiJkLmNoPqRsTuVwXyZ0123456789aBcDeFgHiJkLmNoPqRsTuVwXyZ0123456789aBcDeFgHiJkLmNoPqRsTuVwXyZ0123456789aBcDeFgHiJkLmNoPqRsTuVwXyZ0123456789aBcDeFgHiJkLmNoPqRsTuVw + [DataMember(Name = "cvToken", EmitDefaultValue = true)] + public string CvToken { get; set; } + /// /// Returns the string presentation of the object /// @@ -153,6 +163,7 @@ public override string ToString() sb.Append(" Submission: ").Append(Submission).Append("\n"); sb.Append(" Blocked: ").Append(Blocked).Append("\n"); sb.Append(" BlockedReason: ").Append(BlockedReason).Append("\n"); + sb.Append(" CvToken: ").Append(CvToken).Append("\n"); sb.Append("}\n"); return sb.ToString(); } @@ -194,6 +205,18 @@ IEnumerable IValidatableObject.Validate(ValidationContext vali } } + // CvToken (string) maxLength + if (this.CvToken != null && this.CvToken.Length > 500) + { + yield return new ValidationResult("Invalid value for CvToken, length must be less than 500.", new [] { "CvToken" }); + } + + // CvToken (string) minLength + if (this.CvToken != null && this.CvToken.Length < 0) + { + yield return new ValidationResult("Invalid value for CvToken, length must be greater than 0.", new [] { "CvToken" }); + } + yield break; } } diff --git a/src/Bandwidth.Standard/Model/VerificationDenialWebhook.cs b/src/Bandwidth.Standard/Model/VerificationDenialWebhook.cs index 8ae7ba17..46b7066a 100644 --- a/src/Bandwidth.Standard/Model/VerificationDenialWebhook.cs +++ b/src/Bandwidth.Standard/Model/VerificationDenialWebhook.cs @@ -45,7 +45,7 @@ public partial class VerificationDenialWebhook : IValidatableObject /// status (default to "UNVERIFIED"). /// Whether a Toll-Free Verification is blocked. This attribute will only be defined when the number is blocked.. /// The reason why the Toll-Free Verification is blocked. This attribute will only be defined when the number is blocked.. - public VerificationDenialWebhook(string accountId = default(string), List additionalDenialReasons = default(List), string declineReasonDescription = default(string), int denialStatusCode = default(int), Guid internalTicketNumber = default(Guid), string phoneNumber = default(string), bool resubmitAllowed = default(bool), string status = @"UNVERIFIED", bool blocked = default(bool), string blockedReason = default(string)) + public VerificationDenialWebhook(string accountId = default(string), List additionalDenialReasons = default(List), string declineReasonDescription = default(string), int denialStatusCode = default(int), string internalTicketNumber = default(string), string phoneNumber = default(string), bool resubmitAllowed = default(bool), string status = @"UNVERIFIED", bool blocked = default(bool), string blockedReason = default(string)) { this.AccountId = accountId; this.AdditionalDenialReasons = additionalDenialReasons; @@ -98,7 +98,7 @@ public partial class VerificationDenialWebhook : IValidatableObject /// Unique identifier (UUID) generated by Bandwidth to assist in tracking the verification status of a toll-free number. /// acde070d-8c4c-4f0d-9d8a-162843c10333 [DataMember(Name = "internalTicketNumber", EmitDefaultValue = false)] - public Guid InternalTicketNumber { get; set; } + public string InternalTicketNumber { get; set; } /// /// Toll-free telephone number in E.164 format. diff --git a/src/Bandwidth.Standard/Model/VerificationRequest.cs b/src/Bandwidth.Standard/Model/VerificationRequest.cs index 04991333..987aabe5 100644 --- a/src/Bandwidth.Standard/Model/VerificationRequest.cs +++ b/src/Bandwidth.Standard/Model/VerificationRequest.cs @@ -70,7 +70,8 @@ protected VerificationRequest() { } /// businessEntityType. /// A message that gets sent to users requesting help.. /// Indicates whether the content is age-gated.. - public VerificationRequest(Address businessAddress = default(Address), Contact businessContact = default(Contact), int messageVolume = default(int), List phoneNumbers = default(List), string useCase = default(string), string useCaseSummary = default(string), string productionMessageContent = default(string), OptInWorkflow optInWorkflow = default(OptInWorkflow), string additionalInformation = default(string), string isvReseller = default(string), string privacyPolicyUrl = default(string), string termsAndConditionsUrl = default(string), string businessDba = default(string), string businessRegistrationNumber = default(string), BusinessRegistrationTypeEnum? businessRegistrationType = default(BusinessRegistrationTypeEnum?), BusinessEntityTypeEnum? businessEntityType = default(BusinessEntityTypeEnum?), string helpMessageResponse = default(string), bool ageGatedContent = default(bool)) + /// The token provided by Campaign Verify to validate your political use case. Only required for 527 political organizations. If you are not a 527 political organization, this field should be omitted. If you pass an empty string, it will be passed along and potentially rejected.. + public VerificationRequest(Address businessAddress = default(Address), Contact businessContact = default(Contact), int messageVolume = default(int), List phoneNumbers = default(List), string useCase = default(string), string useCaseSummary = default(string), string productionMessageContent = default(string), OptInWorkflow optInWorkflow = default(OptInWorkflow), string additionalInformation = default(string), string isvReseller = default(string), string privacyPolicyUrl = default(string), string termsAndConditionsUrl = default(string), string businessDba = default(string), string businessRegistrationNumber = default(string), BusinessRegistrationTypeEnum? businessRegistrationType = default(BusinessRegistrationTypeEnum?), BusinessEntityTypeEnum? businessEntityType = default(BusinessEntityTypeEnum?), string helpMessageResponse = default(string), bool ageGatedContent = default(bool), string cvToken = default(string)) { // to ensure "businessAddress" is required (not null) if (businessAddress == null) @@ -125,6 +126,7 @@ protected VerificationRequest() { } this.BusinessEntityType = businessEntityType; this.HelpMessageResponse = helpMessageResponse; this.AgeGatedContent = ageGatedContent; + this.CvToken = cvToken; } /// @@ -247,6 +249,14 @@ protected VerificationRequest() { } [DataMember(Name = "ageGatedContent", EmitDefaultValue = true)] public bool AgeGatedContent { get; set; } + /// + /// The token provided by Campaign Verify to validate your political use case. Only required for 527 political organizations. If you are not a 527 political organization, this field should be omitted. If you pass an empty string, it will be passed along and potentially rejected. + /// + /// The token provided by Campaign Verify to validate your political use case. Only required for 527 political organizations. If you are not a 527 political organization, this field should be omitted. If you pass an empty string, it will be passed along and potentially rejected. + /// cv.user123|sess456|mno|tfree|read_write|X7yZ9aBcDeFgHiJkLmNoPqRsTuVwXyZ0123456789aBcDeFgHiJkLmNoPqRsTuVwXyZ0123456789aBcDeFgHiJkLmNoPqRsTuVwXyZ0123456789aBcDeFgHiJkLmNoPqRsTuVwXyZ0123456789aBcDeFgHiJkLmNoPqRsTuVwXyZ0123456789aBcDeFgHiJkLmNoPqRsTuVwXyZ0123456789aBcDeFgHiJkLmNoPqRsTuVwXyZ0123456789aBcDeFgHiJkLmNoPqRsTuVwXyZ0123456789aBcDeFgHiJkLmNoPqRsTuVwXyZ0123456789aBcDeFgHiJkLmNoPqRsTuVwXyZ0123456789aBcDeFgHiJkLmNoPqRsTuVwXyZ0123456789aBcDeFgHiJkLmNoPqRsTuVwXyZ0123456789aBcDeFgHiJkLmNoPqRsTuVw + [DataMember(Name = "cvToken", EmitDefaultValue = true)] + public string CvToken { get; set; } + /// /// Returns the string presentation of the object /// @@ -273,6 +283,7 @@ public override string ToString() sb.Append(" BusinessEntityType: ").Append(BusinessEntityType).Append("\n"); sb.Append(" HelpMessageResponse: ").Append(HelpMessageResponse).Append("\n"); sb.Append(" AgeGatedContent: ").Append(AgeGatedContent).Append("\n"); + sb.Append(" CvToken: ").Append(CvToken).Append("\n"); sb.Append("}\n"); return sb.ToString(); } @@ -377,6 +388,18 @@ IEnumerable IValidatableObject.Validate(ValidationContext vali yield return new ValidationResult("Invalid value for HelpMessageResponse, length must be less than 500.", new [] { "HelpMessageResponse" }); } + // CvToken (string) maxLength + if (this.CvToken != null && this.CvToken.Length > 500) + { + yield return new ValidationResult("Invalid value for CvToken, length must be less than 500.", new [] { "CvToken" }); + } + + // CvToken (string) minLength + if (this.CvToken != null && this.CvToken.Length < 0) + { + yield return new ValidationResult("Invalid value for CvToken, length must be greater than 0.", new [] { "CvToken" }); + } + yield break; } } diff --git a/src/Bandwidth.Standard/Model/VerificationUpdateRequest.cs b/src/Bandwidth.Standard/Model/VerificationUpdateRequest.cs index a6e9a17e..04eb9c7c 100644 --- a/src/Bandwidth.Standard/Model/VerificationUpdateRequest.cs +++ b/src/Bandwidth.Standard/Model/VerificationUpdateRequest.cs @@ -69,7 +69,8 @@ protected VerificationUpdateRequest() { } /// businessEntityType. /// A message that gets sent to users requesting help.. /// Indicates whether the content is age-gated.. - public VerificationUpdateRequest(Address businessAddress = default(Address), Contact businessContact = default(Contact), int messageVolume = default(int), string useCase = default(string), string useCaseSummary = default(string), string productionMessageContent = default(string), OptInWorkflow optInWorkflow = default(OptInWorkflow), string additionalInformation = default(string), string isvReseller = default(string), string privacyPolicyUrl = default(string), string termsAndConditionsUrl = default(string), string businessDba = default(string), string businessRegistrationNumber = default(string), BusinessRegistrationTypeEnum? businessRegistrationType = default(BusinessRegistrationTypeEnum?), BusinessEntityTypeEnum? businessEntityType = default(BusinessEntityTypeEnum?), string helpMessageResponse = default(string), bool ageGatedContent = default(bool)) + /// The token provided by Campaign Verify to validate your political use case. Only required for 527 political organizations. If you are not a 527 political organization, this field should be omitted. If you pass an empty string, it will be passed along and potentially rejected.. + public VerificationUpdateRequest(Address businessAddress = default(Address), Contact businessContact = default(Contact), int messageVolume = default(int), string useCase = default(string), string useCaseSummary = default(string), string productionMessageContent = default(string), OptInWorkflow optInWorkflow = default(OptInWorkflow), string additionalInformation = default(string), string isvReseller = default(string), string privacyPolicyUrl = default(string), string termsAndConditionsUrl = default(string), string businessDba = default(string), string businessRegistrationNumber = default(string), BusinessRegistrationTypeEnum? businessRegistrationType = default(BusinessRegistrationTypeEnum?), BusinessEntityTypeEnum? businessEntityType = default(BusinessEntityTypeEnum?), string helpMessageResponse = default(string), bool ageGatedContent = default(bool), string cvToken = default(string)) { // to ensure "businessAddress" is required (not null) if (businessAddress == null) @@ -118,6 +119,7 @@ protected VerificationUpdateRequest() { } this.BusinessEntityType = businessEntityType; this.HelpMessageResponse = helpMessageResponse; this.AgeGatedContent = ageGatedContent; + this.CvToken = cvToken; } /// @@ -234,6 +236,14 @@ protected VerificationUpdateRequest() { } [DataMember(Name = "ageGatedContent", EmitDefaultValue = true)] public bool AgeGatedContent { get; set; } + /// + /// The token provided by Campaign Verify to validate your political use case. Only required for 527 political organizations. If you are not a 527 political organization, this field should be omitted. If you pass an empty string, it will be passed along and potentially rejected. + /// + /// The token provided by Campaign Verify to validate your political use case. Only required for 527 political organizations. If you are not a 527 political organization, this field should be omitted. If you pass an empty string, it will be passed along and potentially rejected. + /// cv.user123|sess456|mno|tfree|read_write|X7yZ9aBcDeFgHiJkLmNoPqRsTuVwXyZ0123456789aBcDeFgHiJkLmNoPqRsTuVwXyZ0123456789aBcDeFgHiJkLmNoPqRsTuVwXyZ0123456789aBcDeFgHiJkLmNoPqRsTuVwXyZ0123456789aBcDeFgHiJkLmNoPqRsTuVwXyZ0123456789aBcDeFgHiJkLmNoPqRsTuVwXyZ0123456789aBcDeFgHiJkLmNoPqRsTuVwXyZ0123456789aBcDeFgHiJkLmNoPqRsTuVwXyZ0123456789aBcDeFgHiJkLmNoPqRsTuVwXyZ0123456789aBcDeFgHiJkLmNoPqRsTuVwXyZ0123456789aBcDeFgHiJkLmNoPqRsTuVwXyZ0123456789aBcDeFgHiJkLmNoPqRsTuVwXyZ0123456789aBcDeFgHiJkLmNoPqRsTuVw + [DataMember(Name = "cvToken", EmitDefaultValue = true)] + public string CvToken { get; set; } + /// /// Returns the string presentation of the object /// @@ -259,6 +269,7 @@ public override string ToString() sb.Append(" BusinessEntityType: ").Append(BusinessEntityType).Append("\n"); sb.Append(" HelpMessageResponse: ").Append(HelpMessageResponse).Append("\n"); sb.Append(" AgeGatedContent: ").Append(AgeGatedContent).Append("\n"); + sb.Append(" CvToken: ").Append(CvToken).Append("\n"); sb.Append("}\n"); return sb.ToString(); } @@ -363,6 +374,18 @@ IEnumerable IValidatableObject.Validate(ValidationContext vali yield return new ValidationResult("Invalid value for HelpMessageResponse, length must be less than 500.", new [] { "HelpMessageResponse" }); } + // CvToken (string) maxLength + if (this.CvToken != null && this.CvToken.Length > 500) + { + yield return new ValidationResult("Invalid value for CvToken, length must be less than 500.", new [] { "CvToken" }); + } + + // CvToken (string) minLength + if (this.CvToken != null && this.CvToken.Length < 0) + { + yield return new ValidationResult("Invalid value for CvToken, length must be greater than 0.", new [] { "CvToken" }); + } + yield break; } } diff --git a/src/Bandwidth.Standard/Model/VerificationWebhook.cs b/src/Bandwidth.Standard/Model/VerificationWebhook.cs index 6318cfab..11d76cb1 100644 --- a/src/Bandwidth.Standard/Model/VerificationWebhook.cs +++ b/src/Bandwidth.Standard/Model/VerificationWebhook.cs @@ -45,7 +45,7 @@ public partial class VerificationWebhook : IValidatableObject /// Toll-free telephone number in E.164 format.. /// status. /// Unique identifier (UUID) generated by Bandwidth to assist in tracking the verification status of a toll-free number.. - public VerificationWebhook(string accountId = default(string), string phoneNumber = default(string), TfvCallbackStatusEnum? status = default(TfvCallbackStatusEnum?), Guid internalTicketNumber = default(Guid)) + public VerificationWebhook(string accountId = default(string), string phoneNumber = default(string), TfvCallbackStatusEnum? status = default(TfvCallbackStatusEnum?), string internalTicketNumber = default(string)) { this.AccountId = accountId; this.PhoneNumber = phoneNumber; @@ -75,7 +75,7 @@ public partial class VerificationWebhook : IValidatableObject /// Unique identifier (UUID) generated by Bandwidth to assist in tracking the verification status of a toll-free number. /// acde070d-8c4c-4f0d-9d8a-162843c10333 [DataMember(Name = "internalTicketNumber", EmitDefaultValue = false)] - public Guid InternalTicketNumber { get; set; } + public string InternalTicketNumber { get; set; } /// /// Returns the string presentation of the object