diff --git a/api/openapi.yaml b/api/openapi.yaml
index 93b86f0..936140f 100644
--- a/api/openapi.yaml
+++ b/api/openapi.yaml
@@ -294,9 +294,9 @@ paths:
- Media
put:
description: |-
- Upload a file. You may add headers to the request in order to provide some control to your media file.
+ Upload a file.
- If a file is uploaded with the same name as a file that already exists under this account, the previous file will be overwritten.
+ Filename should always be unique. Reusing filenames may result in the wrong media being sent.
A list of supported media types can be found at [Bandwidth Support](https://www.bandwidth.com/support/en/articles/12823220-what-mms-file-types-are-supported).
operationId: uploadMedia
@@ -331,8 +331,9 @@ paths:
schema:
type: string
style: simple
- - description: General-header field is used to specify directives that MUST
- be obeyed by all caching mechanisms along the request/response chain.
+ - description: Pass-through header stored with the media and returned when the
+ media is retrieved by the user. Does not affect internal server caching
+ behavior.
example: no-cache
explode: false
in: header
@@ -4836,7 +4837,12 @@ paths:
callbacks:
tfVerificationStatus:
$ref: '#/components/callbacks/tfVerificationStatus'
- description: Submit a request for verification of a toll-free phone number.
+ description: |-
+ Submit a request for verification of a toll-free phone number.
+
+ **Upcoming change (effective January 2027):** If any phone number in the request already has a verification in progress, the request will be rejected with a `409 Conflict`.
+ This check is all-or-nothing: if a single phone number conflicts, the entire request is rejected and **none** of the phone numbers in the request are submitted.
+ Today, these requests are accepted with a `202`.
operationId: requestTollFreeVerification
parameters:
- description: Your Bandwidth Account ID.
@@ -4893,6 +4899,16 @@ paths:
schema:
$ref: '#/components/schemas/tfvError'
description: Method Not Allowed
+ "409":
+ content:
+ application/json:
+ example:
+ description: "TFV request already in progress for phone number: +18005551234"
+ type: conflict
+ schema:
+ $ref: '#/components/schemas/tfvError'
+ description: Conflict. A toll-free verification for the phone number is
+ already in progress.
"429":
content:
application/json:
@@ -4928,7 +4944,10 @@ paths:
url: https://api.bandwidth.com/api/v2
/accounts/{accountId}/phoneNumbers/{phoneNumber}/tollFreeVerification:
delete:
- description: Delete a toll-free verification submission for a toll-free number.
+ description: |-
+ Delete a toll-free verification submission for a toll-free number.
+
+ **Upcoming change (effective January 2027):** If a verification for the phone number is in progress, it will be cancelled and the submission will then be deleted asynchronously.
operationId: deleteVerificationRequest
parameters:
- description: Your Bandwidth Account ID.
@@ -5140,6 +5159,9 @@ paths:
description: |-
Updates a toll-free verification request.
Submissions are only eligible for resubmission for 7 days within being processed and if resubmission is allowed (resubmitAllowed field is true).
+ Returns a `404` if no verification request exists for the phone number, and a `400` if the existing request is not eligible for resubmission.
+
+ **Upcoming change (effective January 2027):** If a verification for the phone number is in progress, the update will be rejected with a `409 Conflict`.
operationId: updateTollFreeVerificationRequest
parameters:
- description: Your Bandwidth Account ID.
@@ -5196,6 +5218,15 @@ paths:
schema:
$ref: '#/components/schemas/tfvError'
description: Forbidden
+ "404":
+ content:
+ application/json:
+ example:
+ description: Cannot find the requested resource.
+ type: Not Found
+ schema:
+ $ref: '#/components/schemas/tfvError'
+ description: Cannot find the requested resource.
"405":
content:
application/json:
@@ -5205,6 +5236,16 @@ paths:
schema:
$ref: '#/components/schemas/tfvError'
description: Method Not Allowed
+ "409":
+ content:
+ application/json:
+ example:
+ description: "TFV request already in progress for phone number: +18005551234"
+ type: conflict
+ schema:
+ $ref: '#/components/schemas/tfvError'
+ description: Conflict. A toll-free verification for the phone number is
+ already in progress.
"429":
content:
application/json:
@@ -7246,8 +7287,8 @@ components:
type: string
style: simple
cacheControl:
- description: General-header field is used to specify directives that MUST be
- obeyed by all caching mechanisms along the request/response chain.
+ description: Pass-through header stored with the media and returned when the
+ media is retrieved by the user. Does not affect internal server caching behavior.
example: no-cache
explode: false
in: header
@@ -8898,6 +8939,16 @@ components:
schema:
$ref: '#/components/schemas/tfvError'
description: Cannot find the requested resource.
+ tfvConflictResponse:
+ content:
+ application/json:
+ example:
+ description: "TFV request already in progress for phone number: +18005551234"
+ type: conflict
+ schema:
+ $ref: '#/components/schemas/tfvError'
+ description: Conflict. A toll-free verification for the phone number is already
+ in progress.
tfvNotAllowedResponse:
content:
application/json:
diff --git a/bandwidth.yml b/bandwidth.yml
index 53949fe..61b41e7 100644
--- a/bandwidth.yml
+++ b/bandwidth.yml
@@ -88,12 +88,11 @@ paths:
put:
summary: Upload Media
description: >-
- Upload a file. You may add headers to the request in order to provide
- some control to your media file.
+ Upload a file.
- If a file is uploaded with the same name as a file that already exists
- under this account, the previous file will be overwritten.
+ Filename should always be unique. Reusing filenames may result in the
+ wrong media being sent.
A list of supported media types can be found at [Bandwidth
@@ -1404,7 +1403,19 @@ paths:
tags:
- Toll-Free Verification
summary: Request Toll-Free Verification
- description: Submit a request for verification of a toll-free phone number.
+ description: >-
+ Submit a request for verification of a toll-free phone number.
+
+
+ **Upcoming change (effective January 2027):** If any phone number in the
+ request already has a verification in progress, the request will be
+ rejected with a `409 Conflict`.
+
+ This check is all-or-nothing: if a single phone number conflicts, the
+ entire request is rejected and **none** of the phone numbers in the
+ request are submitted.
+
+ Today, these requests are accepted with a `202`.
operationId: requestTollFreeVerification
parameters:
- $ref: '#/components/parameters/accountId4'
@@ -1421,6 +1432,8 @@ paths:
$ref: '#/components/responses/tfvForbiddenResponse'
'405':
$ref: '#/components/responses/tfvNotAllowedResponse'
+ '409':
+ $ref: '#/components/responses/tfvConflictResponse'
'429':
$ref: '#/components/responses/tfvTooManyRequestsResponse'
'500':
@@ -1477,6 +1490,14 @@ paths:
Submissions are only eligible for resubmission for 7 days within being
processed and if resubmission is allowed (resubmitAllowed field is
true).
+
+ Returns a `404` if no verification request exists for the phone number,
+ and a `400` if the existing request is not eligible for resubmission.
+
+
+ **Upcoming change (effective January 2027):** If a verification for the
+ phone number is in progress, the update will be rejected with a `409
+ Conflict`.
operationId: updateTollFreeVerificationRequest
parameters:
- $ref: '#/components/parameters/accountId4'
@@ -1492,8 +1513,12 @@ paths:
$ref: '#/components/responses/tfvUnauthorizedResponse'
'403':
$ref: '#/components/responses/tfvForbiddenResponse'
+ '404':
+ $ref: '#/components/responses/tfvNotFoundResponse'
'405':
$ref: '#/components/responses/tfvNotAllowedResponse'
+ '409':
+ $ref: '#/components/responses/tfvConflictResponse'
'429':
$ref: '#/components/responses/tfvTooManyRequestsResponse'
'500':
@@ -1504,7 +1529,13 @@ paths:
tfVerificationStatus:
$ref: '#/components/callbacks/tfVerificationStatus'
delete:
- description: Delete a toll-free verification submission for a toll-free number.
+ description: >-
+ Delete a toll-free verification submission for a toll-free number.
+
+
+ **Upcoming change (effective January 2027):** If a verification for the
+ phone number is in progress, it will be cancelled and the submission
+ will then be deleted asynchronously.
operationId: deleteVerificationRequest
parameters:
- $ref: '#/components/parameters/accountId4'
@@ -8072,6 +8103,17 @@ components:
example:
description: Cannot find the requested resource.
type: Not Found
+ tfvConflictResponse:
+ description: >-
+ Conflict. A toll-free verification for the phone number is already in
+ progress.
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/tfvError'
+ example:
+ description: 'TFV request already in progress for phone number: +18005551234'
+ type: conflict
tfvNotAllowedResponse:
description: Method Not Allowed
content:
@@ -8256,8 +8298,8 @@ components:
style: simple
explode: false
description: >-
- General-header field is used to specify directives that MUST be obeyed
- by all caching mechanisms along the request/response chain.
+ Pass-through header stored with the media and returned when the media is
+ retrieved by the user. Does not affect internal server caching behavior.
example: no-cache
schema:
type: string
diff --git a/docs/MediaApi.md b/docs/MediaApi.md
index 76ba4b0..41eb310 100644
--- a/docs/MediaApi.md
+++ b/docs/MediaApi.md
@@ -332,7 +332,7 @@ catch (ApiException e)
Upload Media
-Upload a file. You may add headers to the request in order to provide some control to your media file. If a file is uploaded with the same name as a file that already exists under this account, the previous file will be overwritten. A list of supported media types can be found at [Bandwidth Support](https://www.bandwidth.com/support/en/articles/12823220-what-mms-file-types-are-supported).
+Upload a file. Filename should always be unique. Reusing filenames may result in the wrong media being sent. A list of supported media types can be found at [Bandwidth Support](https://www.bandwidth.com/support/en/articles/12823220-what-mms-file-types-are-supported).
### Example
```csharp
@@ -361,7 +361,7 @@ namespace Example
var mediaId = bw.png; // string | The ID of the media file.
var body = new System.IO.MemoryStream(System.IO.File.ReadAllBytes("/path/to/file.txt")); // System.IO.Stream |
var contentType = audio/wav; // string | The media type of the entity-body. (optional)
- var cacheControl = no-cache; // string | General-header field is used to specify directives that MUST be obeyed by all caching mechanisms along the request/response chain. (optional)
+ var cacheControl = no-cache; // string | Pass-through header stored with the media and returned when the media is retrieved by the user. Does not affect internal server caching behavior. (optional)
try
{
@@ -404,7 +404,7 @@ catch (ApiException e)
| **mediaId** | **string** | The ID of the media file. | |
| **body** | **System.IO.Stream****System.IO.Stream** | | |
| **contentType** | **string** | The media type of the entity-body. | [optional] |
-| **cacheControl** | **string** | General-header field is used to specify directives that MUST be obeyed by all caching mechanisms along the request/response chain. | [optional] |
+| **cacheControl** | **string** | Pass-through header stored with the media and returned when the media is retrieved by the user. Does not affect internal server caching behavior. | [optional] |
### Return type
diff --git a/docs/TollFreeVerificationApi.md b/docs/TollFreeVerificationApi.md
index bb69f97..a135cc0 100644
--- a/docs/TollFreeVerificationApi.md
+++ b/docs/TollFreeVerificationApi.md
@@ -127,7 +127,7 @@ catch (ApiException e)
Delete a Toll-Free Verification Submission
-Delete a toll-free verification submission for a toll-free number.
+Delete a toll-free verification submission for a toll-free number. **Upcoming change (effective January 2027):** If a verification for the phone number is in progress, it will be cancelled and the submission will then be deleted asynchronously.
### Example
```csharp
@@ -644,7 +644,7 @@ catch (ApiException e)
Request Toll-Free Verification
-Submit a request for verification of a toll-free phone number.
+Submit a request for verification of a toll-free phone number. **Upcoming change (effective January 2027):** If any phone number in the request already has a verification in progress, the request will be rejected with a `409 Conflict`. This check is all-or-nothing: if a single phone number conflicts, the entire request is rejected and **none** of the phone numbers in the request are submitted. Today, these requests are accepted with a `202`.
### Example
```csharp
@@ -734,6 +734,7 @@ void (empty response body)
| **401** | Unauthorized | - |
| **403** | Forbidden | - |
| **405** | Method Not Allowed | - |
+| **409** | Conflict. A toll-free verification for the phone number is already in progress. | - |
| **429** | Too Many Requests | - |
| **500** | Internal Server Error | - |
| **503** | Service Unavailable | - |
@@ -746,7 +747,7 @@ void (empty response body)
Update Toll-Free Verification Request
-Updates a toll-free verification request. Submissions are only eligible for resubmission for 7 days within being processed and if resubmission is allowed (resubmitAllowed field is true).
+Updates a toll-free verification request. Submissions are only eligible for resubmission for 7 days within being processed and if resubmission is allowed (resubmitAllowed field is true). Returns a `404` if no verification request exists for the phone number, and a `400` if the existing request is not eligible for resubmission. **Upcoming change (effective January 2027):** If a verification for the phone number is in progress, the update will be rejected with a `409 Conflict`.
### Example
```csharp
@@ -837,7 +838,9 @@ void (empty response body)
| **400** | Bad Request | - |
| **401** | Unauthorized | - |
| **403** | Forbidden | - |
+| **404** | Cannot find the requested resource. | - |
| **405** | Method Not Allowed | - |
+| **409** | Conflict. A toll-free verification for the phone number is already in progress. | - |
| **429** | Too Many Requests | - |
| **500** | Internal Server Error | - |
| **503** | Service Unavailable | - |
diff --git a/src/Bandwidth.Standard/Api/MediaApi.cs b/src/Bandwidth.Standard/Api/MediaApi.cs
index ec4c852..901201e 100644
--- a/src/Bandwidth.Standard/Api/MediaApi.cs
+++ b/src/Bandwidth.Standard/Api/MediaApi.cs
@@ -107,14 +107,14 @@ public interface IMediaApiSync : IApiAccessor
/// Upload Media
///
///
- /// Upload a file. You may add headers to the request in order to provide some control to your media file. If a file is uploaded with the same name as a file that already exists under this account, the previous file will be overwritten. A list of supported media types can be found at [Bandwidth Support](https://www.bandwidth.com/support/en/articles/12823220-what-mms-file-types-are-supported).
+ /// Upload a file. Filename should always be unique. Reusing filenames may result in the wrong media being sent. A list of supported media types can be found at [Bandwidth Support](https://www.bandwidth.com/support/en/articles/12823220-what-mms-file-types-are-supported).
///
/// Thrown when fails to make API call
/// This is your 7-digit Bandwidth Account ID, as shown in the Bandwidth App. The older ID format (`u-be8dvafwrs63rwpm7pfil4b`) is deprecated. **When migrating to OAuth authentication, you must use the 7-digit Account ID.**
/// The ID of the media file.
///
/// The media type of the entity-body. (optional)
- /// General-header field is used to specify directives that MUST be obeyed by all caching mechanisms along the request/response chain. (optional)
+ /// Pass-through header stored with the media and returned when the media is retrieved by the user. Does not affect internal server caching behavior. (optional)
/// Index associated with the operation.
///
void UploadMedia(string accountId, string mediaId, System.IO.Stream body, string contentType = default(string), string cacheControl = default(string), int operationIndex = 0);
@@ -123,14 +123,14 @@ public interface IMediaApiSync : IApiAccessor
/// Upload Media
///
///
- /// Upload a file. You may add headers to the request in order to provide some control to your media file. If a file is uploaded with the same name as a file that already exists under this account, the previous file will be overwritten. A list of supported media types can be found at [Bandwidth Support](https://www.bandwidth.com/support/en/articles/12823220-what-mms-file-types-are-supported).
+ /// Upload a file. Filename should always be unique. Reusing filenames may result in the wrong media being sent. A list of supported media types can be found at [Bandwidth Support](https://www.bandwidth.com/support/en/articles/12823220-what-mms-file-types-are-supported).
///
/// Thrown when fails to make API call
/// This is your 7-digit Bandwidth Account ID, as shown in the Bandwidth App. The older ID format (`u-be8dvafwrs63rwpm7pfil4b`) is deprecated. **When migrating to OAuth authentication, you must use the 7-digit Account ID.**
/// The ID of the media file.
///
/// The media type of the entity-body. (optional)
- /// General-header field is used to specify directives that MUST be obeyed by all caching mechanisms along the request/response chain. (optional)
+ /// Pass-through header stored with the media and returned when the media is retrieved by the user. Does not affect internal server caching behavior. (optional)
/// Index associated with the operation.
/// ApiResponse of Object(void)
ApiResponse