diff --git a/.openapi-generator/FILES b/.openapi-generator/FILES
index 665ecea..10b44bd 100644
--- a/.openapi-generator/FILES
+++ b/.openapi-generator/FILES
@@ -60,6 +60,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
@@ -247,6 +248,7 @@ models/create-message-request-error.ts
models/create-multi-channel-message-response.ts
models/create-sync-lookup-response-data.ts
models/create-sync-lookup-response.ts
+models/custom-too-many-requests-error.ts
models/deactivation-event-enum.ts
models/disconnect-callback.ts
models/diversion.ts
diff --git a/README.md b/README.md
index 1f44d1e..e53d08e 100644
--- a/README.md
+++ b/README.md
@@ -203,6 +203,7 @@ Class | Method | HTTP request | Description
- [CreateMultiChannelMessageResponse](docs/CreateMultiChannelMessageResponse.md)
- [CreateSyncLookupResponse](docs/CreateSyncLookupResponse.md)
- [CreateSyncLookupResponseData](docs/CreateSyncLookupResponseData.md)
+ - [CustomTooManyRequestsError](docs/CustomTooManyRequestsError.md)
- [DeactivationEventEnum](docs/DeactivationEventEnum.md)
- [DisconnectCallback](docs/DisconnectCallback.md)
- [Diversion](docs/Diversion.md)
diff --git a/api/messages-api.ts b/api/messages-api.ts
index 2b00916..fe57286 100644
--- a/api/messages-api.ts
+++ b/api/messages-api.ts
@@ -24,6 +24,8 @@ import { BASE_PATH, COLLECTION_FORMATS, type RequestArgs, BaseAPI, RequiredError
// @ts-ignore
import type { CreateMessageRequestError } from '../models';
// @ts-ignore
+import type { CustomTooManyRequestsError } from '../models';
+// @ts-ignore
import type { ListMessageDirectionEnum } from '../models';
// @ts-ignore
import type { Message } from '../models';
@@ -93,7 +95,7 @@ export const MessagesApiAxiosParamCreator = function (configuration?: Configurat
};
},
/**
- * 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.
* @summary List Messages
* @param {string} accountId Your Bandwidth Account ID.
* @param {string} [messageId] The ID of the message to search for. Special characters need to be encoded using URL encoding. Message IDs could come in different formats, e.g., 9e0df4ca-b18d-40d7-a59f-82fcdf5ae8e6 and 1589228074636lm4k2je7j7jklbn2 are valid message ID formats. Note that you must include at least one query parameter.
@@ -293,7 +295,7 @@ export const MessagesApiFp = function(configuration?: Configuration) {
return (axios, basePath) => createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath);
},
/**
- * 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.
* @summary List Messages
* @param {string} accountId Your Bandwidth Account ID.
* @param {string} [messageId] The ID of the message to search for. Special characters need to be encoded using URL encoding. Message IDs could come in different formats, e.g., 9e0df4ca-b18d-40d7-a59f-82fcdf5ae8e6 and 1589228074636lm4k2je7j7jklbn2 are valid message ID formats. Note that you must include at least one query parameter.
@@ -353,7 +355,7 @@ export const MessagesApiFactory = function (configuration?: Configuration, baseP
return localVarFp.createMessage(accountId, messageRequest, options).then((request) => request(axios, basePath));
},
/**
- * 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.
* @summary List Messages
* @param {string} accountId Your Bandwidth Account ID.
* @param {string} [messageId] The ID of the message to search for. Special characters need to be encoded using URL encoding. Message IDs could come in different formats, e.g., 9e0df4ca-b18d-40d7-a59f-82fcdf5ae8e6 and 1589228074636lm4k2je7j7jklbn2 are valid message ID formats. Note that you must include at least one query parameter.
@@ -409,7 +411,7 @@ export class MessagesApi extends BaseAPI {
}
/**
- * 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.
* @summary List Messages
* @param {string} accountId Your Bandwidth Account ID.
* @param {string} [messageId] The ID of the message to search for. Special characters need to be encoded using URL encoding. Message IDs could come in different formats, e.g., 9e0df4ca-b18d-40d7-a59f-82fcdf5ae8e6 and 1589228074636lm4k2je7j7jklbn2 are valid message ID formats. Note that you must include at least one query parameter.
diff --git a/bandwidth.yml b/bandwidth.yml
index d7c3295..4c32a6b 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/CustomTooManyRequestsError.md b/docs/CustomTooManyRequestsError.md
new file mode 100644
index 0000000..4d22dc5
--- /dev/null
+++ b/docs/CustomTooManyRequestsError.md
@@ -0,0 +1,22 @@
+# CustomTooManyRequestsError
+
+
+## Properties
+
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**type** | **string** | | [default to undefined]
+**description** | **string** | | [default to undefined]
+
+## Example
+
+```typescript
+import { CustomTooManyRequestsError } from 'bandwidth-sdk';
+
+const instance: CustomTooManyRequestsError = {
+ type,
+ description,
+};
+```
+
+[[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 0a01251..9202261 100644
--- a/docs/MessagesApi.md
+++ b/docs/MessagesApi.md
@@ -74,7 +74,7 @@ const { status, data } = await apiInstance.createMessage(
# **listMessages**
> MessagesList listMessages()
-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
@@ -204,8 +204,9 @@ const { status, data } = await apiInstance.listMessages(
|**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 4d566be..dc887e8 100644
--- a/docs/MultiChannelChannelListRBMObjectAllOfContent.md
+++ b/docs/MultiChannelChannelListRBMObjectAllOfContent.md
@@ -8,7 +8,7 @@ Name | Type | Description | Notes
------------ | ------------- | ------------- | -------------
**text** | **string** | The text associated with the message. Must be 3270 characters or less | [default to undefined]
**suggestions** | [**Array<MultiChannelAction>**](MultiChannelAction.md) | An array of suggested actions for the recipient. | [optional] [default to undefined]
-**media** | [**RbmMessageContentFile**](RbmMessageContentFile.md) | | [default to undefined]
+**media** | [**Array<RbmMessageContentFile>**](RbmMessageContentFile.md) | | [default to undefined]
**orientation** | [**StandaloneCardOrientationEnum**](StandaloneCardOrientationEnum.md) | | [default to undefined]
**thumbnailImageAlignment** | [**ThumbnailAlignmentEnum**](ThumbnailAlignmentEnum.md) | | [default to undefined]
**cardContent** | [**RbmCardContent**](RbmCardContent.md) | | [default to undefined]
diff --git a/docs/RbmMessageMedia.md b/docs/RbmMessageMedia.md
index a941751..c184653 100644
--- a/docs/RbmMessageMedia.md
+++ b/docs/RbmMessageMedia.md
@@ -5,7 +5,7 @@
Name | Type | Description | Notes
------------ | ------------- | ------------- | -------------
-**media** | [**RbmMessageContentFile**](RbmMessageContentFile.md) | | [default to undefined]
+**media** | [**Array<RbmMessageContentFile>**](RbmMessageContentFile.md) | | [default to undefined]
**suggestions** | [**Array<MultiChannelAction>**](MultiChannelAction.md) | An array of suggested actions for the recipient. | [optional] [default to undefined]
## Example
diff --git a/docs/TfvStatus.md b/docs/TfvStatus.md
index fea78e2..8e471e6 100644
--- a/docs/TfvStatus.md
+++ b/docs/TfvStatus.md
@@ -15,6 +15,7 @@ Name | Type | Description | Notes
**submission** | [**TfvSubmissionInfo**](TfvSubmissionInfo.md) | | [optional] [default to undefined]
**blocked** | **boolean** | Whether a Toll-Free Verification is blocked. This attribute will only be defined when the number is blocked. | [optional] [default to undefined]
**blockedReason** | **string** | The reason why the Toll-Free Verification is blocked. This attribute will only be defined when the number is blocked. | [optional] [default to undefined]
+**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] [default to undefined]
## Example
@@ -32,6 +33,7 @@ const instance: TfvStatus = {
submission,
blocked,
blockedReason,
+ cvToken,
};
```
diff --git a/docs/VerificationRequest.md b/docs/VerificationRequest.md
index 7071e56..4e2ee4f 100644
--- a/docs/VerificationRequest.md
+++ b/docs/VerificationRequest.md
@@ -23,6 +23,7 @@ Name | Type | Description | Notes
**businessEntityType** | [**BusinessEntityTypeEnum**](BusinessEntityTypeEnum.md) | | [optional] [default to undefined]
**helpMessageResponse** | **string** | A message that gets sent to users requesting help. | [optional] [default to undefined]
**ageGatedContent** | **boolean** | Indicates whether the content is age-gated. | [optional] [default to undefined]
+**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] [default to undefined]
## Example
@@ -48,6 +49,7 @@ const instance: VerificationRequest = {
businessEntityType,
helpMessageResponse,
ageGatedContent,
+ cvToken,
};
```
diff --git a/docs/VerificationUpdateRequest.md b/docs/VerificationUpdateRequest.md
index a372076..d4bd61f 100644
--- a/docs/VerificationUpdateRequest.md
+++ b/docs/VerificationUpdateRequest.md
@@ -22,6 +22,7 @@ Name | Type | Description | Notes
**businessEntityType** | [**BusinessEntityTypeEnum**](BusinessEntityTypeEnum.md) | | [optional] [default to undefined]
**helpMessageResponse** | **string** | A message that gets sent to users requesting help. | [optional] [default to undefined]
**ageGatedContent** | **boolean** | Indicates whether the content is age-gated. | [optional] [default to undefined]
+**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] [default to undefined]
## Example
@@ -46,6 +47,7 @@ const instance: VerificationUpdateRequest = {
businessEntityType,
helpMessageResponse,
ageGatedContent,
+ cvToken,
};
```
diff --git a/models/custom-too-many-requests-error.ts b/models/custom-too-many-requests-error.ts
new file mode 100644
index 0000000..6bc28db
--- /dev/null
+++ b/models/custom-too-many-requests-error.ts
@@ -0,0 +1,21 @@
+/* tslint:disable */
+/* eslint-disable */
+/**
+ * Bandwidth
+ * Bandwidth\'s Communication APIs
+ *
+ * The version of the OpenAPI document: 1.0.0
+ * Contact: letstalk@bandwidth.com
+ *
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
+ * https://openapi-generator.tech
+ * Do not edit the class manually.
+ */
+
+
+
+export interface CustomTooManyRequestsError {
+ 'type': string;
+ 'description': string;
+}
+
diff --git a/models/index.ts b/models/index.ts
index 7900f52..c69c202 100644
--- a/models/index.ts
+++ b/models/index.ts
@@ -41,6 +41,7 @@ export * from './create-message-request-error';
export * from './create-multi-channel-message-response';
export * from './create-sync-lookup-response';
export * from './create-sync-lookup-response-data';
+export * from './custom-too-many-requests-error';
export * from './deactivation-event-enum';
export * from './disconnect-callback';
export * from './diversion';
diff --git a/models/rbm-message-media.ts b/models/rbm-message-media.ts
index c196bef..7a953d3 100644
--- a/models/rbm-message-media.ts
+++ b/models/rbm-message-media.ts
@@ -21,7 +21,7 @@ import type { MultiChannelAction } from './multi-channel-action';
import type { RbmMessageContentFile } from './rbm-message-content-file';
export interface RbmMessageMedia {
- 'media': RbmMessageContentFile;
+ 'media': Array;
/**
* An array of suggested actions for the recipient.
*/
diff --git a/models/tfv-status.ts b/models/tfv-status.ts
index 8330fcf..a20f39d 100644
--- a/models/tfv-status.ts
+++ b/models/tfv-status.ts
@@ -55,6 +55,10 @@ export interface TfvStatus {
* The reason why the Toll-Free Verification is blocked. This attribute will only be defined when the number is blocked.
*/
'blockedReason'?: 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.
+ */
+ 'cvToken'?: string | null;
}
diff --git a/models/verification-request.ts b/models/verification-request.ts
index 409b383..80569ad 100644
--- a/models/verification-request.ts
+++ b/models/verification-request.ts
@@ -84,6 +84,10 @@ export interface VerificationRequest {
* Indicates whether the content is age-gated.
*/
'ageGatedContent'?: boolean;
+ /**
+ * 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.
+ */
+ 'cvToken'?: string | null;
}
diff --git a/models/verification-update-request.ts b/models/verification-update-request.ts
index 5e6d90e..85c83e3 100644
--- a/models/verification-update-request.ts
+++ b/models/verification-update-request.ts
@@ -83,6 +83,10 @@ export interface VerificationUpdateRequest {
* Indicates whether the content is age-gated.
*/
'ageGatedContent'?: boolean;
+ /**
+ * 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.
+ */
+ 'cvToken'?: string | null;
}