diff --git a/.openapi-generator/FILES b/.openapi-generator/FILES
index f3d589ac..2b0b0aee 100644
--- a/.openapi-generator/FILES
+++ b/.openapi-generator/FILES
@@ -16,6 +16,8 @@ docs/ApplicationResult.md
docs/AvailableNumber.md
docs/AvailableNumberList.md
docs/BargeInReason.md
+docs/BlobListResponse.md
+docs/BlobResult.md
docs/BuyIncomingNumberRequest.md
docs/CallControlWebhook.md
docs/CallDirection.md
@@ -35,6 +37,7 @@ docs/ConferenceRecordingStatusWebhook.md
docs/ConferenceResult.md
docs/ConferenceStatus.md
docs/ConferenceStatusWebhook.md
+docs/CreateBlobRequest.md
docs/CreateConference.md
docs/CreateConferenceRequest.md
docs/CreateConferenceWebhook.md
@@ -81,6 +84,7 @@ docs/MessageResult.md
docs/MessageStatus.md
docs/MessageStatusWebhook.md
docs/MessagesList.md
+docs/ModifyBlobRequest.md
docs/MutableResourceModel.md
docs/OutDial.md
docs/OutDialApiConnectWebhook.md
@@ -91,6 +95,7 @@ docs/Park.md
docs/Pause.md
docs/PerclCommand.md
docs/PerclScript.md
+docs/PlatformError.md
docs/Play.md
docs/PlayBeep.md
docs/PlayEarlyMedia.md
@@ -111,6 +116,7 @@ docs/RedirectWebhook.md
docs/Reject.md
docs/RemoveFromConference.md
docs/RemoveFromQueueNotificationWebhook.md
+docs/ReplaceBlobRequest.md
docs/RequestType.md
docs/SMSTenDLCBrand.md
docs/SMSTenDLCBrandAltBusinessIdType.md
@@ -138,6 +144,8 @@ docs/Sms.md
docs/StartRecordCall.md
docs/TFN.md
docs/TFNCampaign.md
+docs/TTSEngine.md
+docs/TTSEngineName.md
docs/TerminateConference.md
docs/TranscribeReason.md
docs/TranscribeTermReason.md
@@ -168,6 +176,8 @@ src/freeclimb.Test/Model/ApplicationResultTests.cs
src/freeclimb.Test/Model/AvailableNumberListTests.cs
src/freeclimb.Test/Model/AvailableNumberTests.cs
src/freeclimb.Test/Model/BargeInReasonTests.cs
+src/freeclimb.Test/Model/BlobListResponseTests.cs
+src/freeclimb.Test/Model/BlobResultTests.cs
src/freeclimb.Test/Model/BuyIncomingNumberRequestTests.cs
src/freeclimb.Test/Model/CallControlWebhookTests.cs
src/freeclimb.Test/Model/CallDirectionTests.cs
@@ -187,6 +197,7 @@ src/freeclimb.Test/Model/ConferenceRecordingStatusWebhookTests.cs
src/freeclimb.Test/Model/ConferenceResultTests.cs
src/freeclimb.Test/Model/ConferenceStatusTests.cs
src/freeclimb.Test/Model/ConferenceStatusWebhookTests.cs
+src/freeclimb.Test/Model/CreateBlobRequestTests.cs
src/freeclimb.Test/Model/CreateConferenceRequestTests.cs
src/freeclimb.Test/Model/CreateConferenceTests.cs
src/freeclimb.Test/Model/CreateConferenceWebhookTests.cs
@@ -232,6 +243,7 @@ src/freeclimb.Test/Model/MessageResultTests.cs
src/freeclimb.Test/Model/MessageStatusTests.cs
src/freeclimb.Test/Model/MessageStatusWebhookTests.cs
src/freeclimb.Test/Model/MessagesListTests.cs
+src/freeclimb.Test/Model/ModifyBlobRequestTests.cs
src/freeclimb.Test/Model/MutableResourceModelTests.cs
src/freeclimb.Test/Model/OutDialApiConnectWebhookTests.cs
src/freeclimb.Test/Model/OutDialConnectWebhookTests.cs
@@ -242,6 +254,7 @@ src/freeclimb.Test/Model/ParkTests.cs
src/freeclimb.Test/Model/PauseTests.cs
src/freeclimb.Test/Model/PerclCommandTests.cs
src/freeclimb.Test/Model/PerclScriptTests.cs
+src/freeclimb.Test/Model/PlatformErrorTests.cs
src/freeclimb.Test/Model/PlayBeepTests.cs
src/freeclimb.Test/Model/PlayEarlyMediaTests.cs
src/freeclimb.Test/Model/PlayTests.cs
@@ -262,6 +275,7 @@ src/freeclimb.Test/Model/RedirectWebhookTests.cs
src/freeclimb.Test/Model/RejectTests.cs
src/freeclimb.Test/Model/RemoveFromConferenceTests.cs
src/freeclimb.Test/Model/RemoveFromQueueNotificationWebhookTests.cs
+src/freeclimb.Test/Model/ReplaceBlobRequestTests.cs
src/freeclimb.Test/Model/RequestTypeTests.cs
src/freeclimb.Test/Model/SMSTenDLCBrandAltBusinessIdTypeTests.cs
src/freeclimb.Test/Model/SMSTenDLCBrandEntityTypeTests.cs
@@ -289,6 +303,8 @@ src/freeclimb.Test/Model/SmsTests.cs
src/freeclimb.Test/Model/StartRecordCallTests.cs
src/freeclimb.Test/Model/TFNCampaignTests.cs
src/freeclimb.Test/Model/TFNTests.cs
+src/freeclimb.Test/Model/TTSEngineNameTests.cs
+src/freeclimb.Test/Model/TTSEngineTests.cs
src/freeclimb.Test/Model/TerminateConferenceTests.cs
src/freeclimb.Test/Model/TranscribeReasonTests.cs
src/freeclimb.Test/Model/TranscribeTermReasonTests.cs
@@ -334,6 +350,8 @@ src/freeclimb/Model/ApplicationResult.cs
src/freeclimb/Model/AvailableNumber.cs
src/freeclimb/Model/AvailableNumberList.cs
src/freeclimb/Model/BargeInReason.cs
+src/freeclimb/Model/BlobListResponse.cs
+src/freeclimb/Model/BlobResult.cs
src/freeclimb/Model/BuyIncomingNumberRequest.cs
src/freeclimb/Model/CallControlWebhook.cs
src/freeclimb/Model/CallDirection.cs
@@ -353,6 +371,7 @@ src/freeclimb/Model/ConferenceRecordingStatusWebhook.cs
src/freeclimb/Model/ConferenceResult.cs
src/freeclimb/Model/ConferenceStatus.cs
src/freeclimb/Model/ConferenceStatusWebhook.cs
+src/freeclimb/Model/CreateBlobRequest.cs
src/freeclimb/Model/CreateConference.cs
src/freeclimb/Model/CreateConferenceRequest.cs
src/freeclimb/Model/CreateConferenceWebhook.cs
@@ -398,6 +417,7 @@ src/freeclimb/Model/MessageResult.cs
src/freeclimb/Model/MessageStatus.cs
src/freeclimb/Model/MessageStatusWebhook.cs
src/freeclimb/Model/MessagesList.cs
+src/freeclimb/Model/ModifyBlobRequest.cs
src/freeclimb/Model/MutableResourceModel.cs
src/freeclimb/Model/OutDial.cs
src/freeclimb/Model/OutDialApiConnectWebhook.cs
@@ -408,6 +428,7 @@ src/freeclimb/Model/Park.cs
src/freeclimb/Model/Pause.cs
src/freeclimb/Model/PerclCommand.cs
src/freeclimb/Model/PerclScript.cs
+src/freeclimb/Model/PlatformError.cs
src/freeclimb/Model/Play.cs
src/freeclimb/Model/PlayBeep.cs
src/freeclimb/Model/PlayEarlyMedia.cs
@@ -428,6 +449,7 @@ src/freeclimb/Model/RedirectWebhook.cs
src/freeclimb/Model/Reject.cs
src/freeclimb/Model/RemoveFromConference.cs
src/freeclimb/Model/RemoveFromQueueNotificationWebhook.cs
+src/freeclimb/Model/ReplaceBlobRequest.cs
src/freeclimb/Model/RequestType.cs
src/freeclimb/Model/SMSTenDLCBrand.cs
src/freeclimb/Model/SMSTenDLCBrandAltBusinessIdType.cs
@@ -455,6 +477,8 @@ src/freeclimb/Model/Sms.cs
src/freeclimb/Model/StartRecordCall.cs
src/freeclimb/Model/TFN.cs
src/freeclimb/Model/TFNCampaign.cs
+src/freeclimb/Model/TTSEngine.cs
+src/freeclimb/Model/TTSEngineName.cs
src/freeclimb/Model/TerminateConference.cs
src/freeclimb/Model/TranscribeReason.cs
src/freeclimb/Model/TranscribeTermReason.cs
diff --git a/CHANGELOG.md b/CHANGELOG.md
index b6da521a..cccf1c12 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -9,6 +9,19 @@ This project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.htm
None
+
+
+## [5.3.0] - 2025-10-21
+
+### Added
+
+- Add models for new TTS models and engine setup
+- Add models and default api methods for Blob API
+
+### Removed
+
+- Deprecated query params when searching incoming phone numbers
+
## [5.2.0] - 2025-09-24
diff --git a/README.md b/README.md
index 205b0f29..4f484cc0 100644
--- a/README.md
+++ b/README.md
@@ -5,7 +5,7 @@ FreeClimb is a cloud-based application programming interface (API) that puts the
This C# SDK is automatically generated by the [OpenAPI Generator](https://openapi-generator.tech) project:
- API version: 1.0.0
-- SDK version: 5.2.0
+- SDK version: 5.3.0
- Generator version: 7.9.0
- Build package: org.openapitools.codegen.languages.CSharpClientCodegen
For more information, please visit [https://www.freeclimb.com/support/](https://www.freeclimb.com/support/)
@@ -125,12 +125,14 @@ Class | Method | HTTP request | Description
*DefaultApi* | [**CreateAConference**](docs/DefaultApi.md#createaconference) | **POST** /Accounts/{accountId}/Conferences | Create a Conference
*DefaultApi* | [**CreateAQueue**](docs/DefaultApi.md#createaqueue) | **POST** /Accounts/{accountId}/Queues | Create a Queue
*DefaultApi* | [**CreateAnApplication**](docs/DefaultApi.md#createanapplication) | **POST** /Accounts/{accountId}/Applications | Create an application
+*DefaultApi* | [**CreateBlob**](docs/DefaultApi.md#createblob) | **POST** /Accounts/{accountId}/Blobs | Create a Blob
*DefaultApi* | [**CreateExport**](docs/DefaultApi.md#createexport) | **POST** /Accounts/{accountId}/Exports | Create an Export
*DefaultApi* | [**CreateKnowledgeBaseCompletion**](docs/DefaultApi.md#createknowledgebasecompletion) | **POST** /Accounts/{accountId}/KnowledgeBases/{knowledgeBaseId}/Completion | Query the knowledge base
*DefaultApi* | [**DeleteARecording**](docs/DefaultApi.md#deletearecording) | **DELETE** /Accounts/{accountId}/Recordings/{recordingId} | Delete a Recording
*DefaultApi* | [**DeleteAnApplication**](docs/DefaultApi.md#deleteanapplication) | **DELETE** /Accounts/{accountId}/Applications/{applicationId} | Delete an application
*DefaultApi* | [**DeleteAnExport**](docs/DefaultApi.md#deleteanexport) | **DELETE** /Accounts/{accountId}/Exports/{exportId} | Delete an Export
*DefaultApi* | [**DeleteAnIncomingNumber**](docs/DefaultApi.md#deleteanincomingnumber) | **DELETE** /Accounts/{accountId}/IncomingPhoneNumbers/{phoneNumberId} | Delete an Incoming Number
+*DefaultApi* | [**DeleteBlob**](docs/DefaultApi.md#deleteblob) | **DELETE** /Accounts/{accountId}/Blobs/{blobId} | Delete Blob
*DefaultApi* | [**DequeueAMember**](docs/DefaultApi.md#dequeueamember) | **POST** /Accounts/{accountId}/Queues/{queueId}/Members/{callId} | Dequeue a Member
*DefaultApi* | [**DequeueHeadMember**](docs/DefaultApi.md#dequeueheadmember) | **POST** /Accounts/{accountId}/Queues/{queueId}/Members/Front | Dequeue Head Member
*DefaultApi* | [**DownloadARecordingFile**](docs/DefaultApi.md#downloadarecordingfile) | **GET** /Accounts/{accountId}/Recordings/{recordingId}/Download | Download a Recording File
@@ -147,6 +149,7 @@ Class | Method | HTTP request | Description
*DefaultApi* | [**GetAnExport**](docs/DefaultApi.md#getanexport) | **GET** /Accounts/{accountId}/Exports/{exportId} | Get an Export
*DefaultApi* | [**GetAnIncomingNumber**](docs/DefaultApi.md#getanincomingnumber) | **GET** /Accounts/{accountId}/IncomingPhoneNumbers/{phoneNumberId} | Get an Incoming Number
*DefaultApi* | [**GetAnSmsMessage**](docs/DefaultApi.md#getansmsmessage) | **GET** /Accounts/{accountId}/Messages/{messageId} | Get an SMS Message
+*DefaultApi* | [**GetBlob**](docs/DefaultApi.md#getblob) | **GET** /Accounts/{accountId}/Blobs/{blobId} | Get Blob
*DefaultApi* | [**GetHeadMember**](docs/DefaultApi.md#getheadmember) | **GET** /Accounts/{accountId}/Queues/{queueId}/Members/Front | Get Head Member
*DefaultApi* | [**GetTenDLCSmsBrand**](docs/DefaultApi.md#gettendlcsmsbrand) | **GET** /Accounts/{accountId}/Messages/10DLC/Brands/{brandId} | Get a 10DLC SMS Brand
*DefaultApi* | [**GetTenDLCSmsBrands**](docs/DefaultApi.md#gettendlcsmsbrands) | **GET** /Accounts/{accountId}/Messages/10DLC/Brands | Get list of SMS 10DLC Brands
@@ -160,6 +163,7 @@ Class | Method | HTTP request | Description
*DefaultApi* | [**ListAllAccountLogs**](docs/DefaultApi.md#listallaccountlogs) | **GET** /Accounts/{accountId}/Logs | List All Account Logs
*DefaultApi* | [**ListApplications**](docs/DefaultApi.md#listapplications) | **GET** /Accounts/{accountId}/Applications | List applications
*DefaultApi* | [**ListAvailableNumbers**](docs/DefaultApi.md#listavailablenumbers) | **GET** /AvailablePhoneNumbers | List available numbers
+*DefaultApi* | [**ListBlobs**](docs/DefaultApi.md#listblobs) | **GET** /Accounts/{accountId}/Blobs | List Blobs belonging to an account.
*DefaultApi* | [**ListCallLogs**](docs/DefaultApi.md#listcalllogs) | **GET** /Accounts/{accountId}/Calls/{callId}/Logs | List Call Logs
*DefaultApi* | [**ListCallRecordings**](docs/DefaultApi.md#listcallrecordings) | **GET** /Accounts/{accountId}/Calls/{callId}/Recordings | List Call Recordings
*DefaultApi* | [**ListCalls**](docs/DefaultApi.md#listcalls) | **GET** /Accounts/{accountId}/Calls | List Calls
@@ -173,7 +177,9 @@ Class | Method | HTTP request | Description
*DefaultApi* | [**ListSmsMessages**](docs/DefaultApi.md#listsmsmessages) | **GET** /Accounts/{accountId}/Messages | List SMS Messages
*DefaultApi* | [**MakeACall**](docs/DefaultApi.md#makeacall) | **POST** /Accounts/{accountId}/Calls | Make a Call
*DefaultApi* | [**MakeAWebrtcJwt**](docs/DefaultApi.md#makeawebrtcjwt) | **POST** /Accounts/{accountId}/Calls/WebRTC/Token | Make a JWT for WebRTC calling
+*DefaultApi* | [**ModifyBlob**](docs/DefaultApi.md#modifyblob) | **PATCH** /Accounts/{accountId}/Blobs/{blobId} | Modify Blob
*DefaultApi* | [**RemoveAParticipant**](docs/DefaultApi.md#removeaparticipant) | **DELETE** /Accounts/{accountId}/Conferences/{conferenceId}/Participants/{callId} | Remove a Participant
+*DefaultApi* | [**ReplaceBlob**](docs/DefaultApi.md#replaceblob) | **PUT** /Accounts/{accountId}/Blobs/{blobId} | Replace Blob
*DefaultApi* | [**SendAnSmsMessage**](docs/DefaultApi.md#sendansmsmessage) | **POST** /Accounts/{accountId}/Messages | Send an SMS Message
*DefaultApi* | [**StreamARecordingFile**](docs/DefaultApi.md#streamarecordingfile) | **GET** /Accounts/{accountId}/Recordings/{recordingId}/Stream | Stream a Recording File
*DefaultApi* | [**UpdateAConference**](docs/DefaultApi.md#updateaconference) | **POST** /Accounts/{accountId}/Conferences/{conferenceId} | Update a Conference
@@ -202,6 +208,8 @@ Class | Method | HTTP request | Description
- [Model.AvailableNumber](docs/AvailableNumber.md)
- [Model.AvailableNumberList](docs/AvailableNumberList.md)
- [Model.BargeInReason](docs/BargeInReason.md)
+ - [Model.BlobListResponse](docs/BlobListResponse.md)
+ - [Model.BlobResult](docs/BlobResult.md)
- [Model.BuyIncomingNumberRequest](docs/BuyIncomingNumberRequest.md)
- [Model.CallControlWebhook](docs/CallControlWebhook.md)
- [Model.CallDirection](docs/CallDirection.md)
@@ -221,6 +229,7 @@ Class | Method | HTTP request | Description
- [Model.ConferenceResult](docs/ConferenceResult.md)
- [Model.ConferenceStatus](docs/ConferenceStatus.md)
- [Model.ConferenceStatusWebhook](docs/ConferenceStatusWebhook.md)
+ - [Model.CreateBlobRequest](docs/CreateBlobRequest.md)
- [Model.CreateConference](docs/CreateConference.md)
- [Model.CreateConferenceRequest](docs/CreateConferenceRequest.md)
- [Model.CreateConferenceWebhook](docs/CreateConferenceWebhook.md)
@@ -266,6 +275,7 @@ Class | Method | HTTP request | Description
- [Model.MessageStatus](docs/MessageStatus.md)
- [Model.MessageStatusWebhook](docs/MessageStatusWebhook.md)
- [Model.MessagesList](docs/MessagesList.md)
+ - [Model.ModifyBlobRequest](docs/ModifyBlobRequest.md)
- [Model.MutableResourceModel](docs/MutableResourceModel.md)
- [Model.OutDial](docs/OutDial.md)
- [Model.OutDialApiConnectWebhook](docs/OutDialApiConnectWebhook.md)
@@ -276,6 +286,7 @@ Class | Method | HTTP request | Description
- [Model.Pause](docs/Pause.md)
- [Model.PerclCommand](docs/PerclCommand.md)
- [Model.PerclScript](docs/PerclScript.md)
+ - [Model.PlatformError](docs/PlatformError.md)
- [Model.Play](docs/Play.md)
- [Model.PlayBeep](docs/PlayBeep.md)
- [Model.PlayEarlyMedia](docs/PlayEarlyMedia.md)
@@ -296,6 +307,7 @@ Class | Method | HTTP request | Description
- [Model.Reject](docs/Reject.md)
- [Model.RemoveFromConference](docs/RemoveFromConference.md)
- [Model.RemoveFromQueueNotificationWebhook](docs/RemoveFromQueueNotificationWebhook.md)
+ - [Model.ReplaceBlobRequest](docs/ReplaceBlobRequest.md)
- [Model.RequestType](docs/RequestType.md)
- [Model.SMSTenDLCBrand](docs/SMSTenDLCBrand.md)
- [Model.SMSTenDLCBrandAltBusinessIdType](docs/SMSTenDLCBrandAltBusinessIdType.md)
@@ -323,6 +335,8 @@ Class | Method | HTTP request | Description
- [Model.StartRecordCall](docs/StartRecordCall.md)
- [Model.TFN](docs/TFN.md)
- [Model.TFNCampaign](docs/TFNCampaign.md)
+ - [Model.TTSEngine](docs/TTSEngine.md)
+ - [Model.TTSEngineName](docs/TTSEngineName.md)
- [Model.TerminateConference](docs/TerminateConference.md)
- [Model.TranscribeReason](docs/TranscribeReason.md)
- [Model.TranscribeTermReason](docs/TranscribeTermReason.md)
diff --git a/api/openapi.yaml b/api/openapi.yaml
index bcc0aad1..66d26976 100644
--- a/api/openapi.yaml
+++ b/api/openapi.yaml
@@ -31,6 +31,8 @@ paths:
name: accountId
required: true
schema:
+ example: AC170e4c66d358aa1755931da0452561933d1b8fd5
+ pattern: "AC[0-9a-fA-F]{40}"
type: string
style: simple
x-account-id: true
@@ -42,7 +44,6 @@ paths:
$ref: '#/components/schemas/AccountResult'
description: Account Details
summary: Get an Account
- tags: []
post:
operationId: update-an-account
parameters:
@@ -52,6 +53,8 @@ paths:
name: accountId
required: true
schema:
+ example: AC170e4c66d358aa1755931da0452561933d1b8fd5
+ pattern: "AC[0-9a-fA-F]{40}"
type: string
style: simple
x-account-id: true
@@ -65,7 +68,6 @@ paths:
"204":
description: Successful Account update
summary: Manage an account
- tags: []
/Accounts/{accountId}/Applications/{applicationId}:
delete:
deprecated: false
@@ -77,6 +79,8 @@ paths:
name: accountId
required: true
schema:
+ example: AC170e4c66d358aa1755931da0452561933d1b8fd5
+ pattern: "AC[0-9a-fA-F]{40}"
type: string
style: simple
x-account-id: true
@@ -92,7 +96,6 @@ paths:
"204":
description: Successful application deletion
summary: Delete an application
- tags: []
get:
deprecated: false
operationId: get-an-application
@@ -103,6 +106,8 @@ paths:
name: accountId
required: true
schema:
+ example: AC170e4c66d358aa1755931da0452561933d1b8fd5
+ pattern: "AC[0-9a-fA-F]{40}"
type: string
style: simple
x-account-id: true
@@ -122,7 +127,6 @@ paths:
$ref: '#/components/schemas/ApplicationResult'
description: Application Details
summary: Get an Application
- tags: []
post:
deprecated: false
operationId: update-an-application
@@ -133,6 +137,8 @@ paths:
name: accountId
required: true
schema:
+ example: AC170e4c66d358aa1755931da0452561933d1b8fd5
+ pattern: "AC[0-9a-fA-F]{40}"
type: string
style: simple
x-account-id: true
@@ -158,7 +164,6 @@ paths:
$ref: '#/components/schemas/ApplicationResult'
description: Update Application
summary: Update an application
- tags: []
/Accounts/{accountId}/Applications:
get:
deprecated: false
@@ -179,6 +184,8 @@ paths:
name: accountId
required: true
schema:
+ example: AC170e4c66d358aa1755931da0452561933d1b8fd5
+ pattern: "AC[0-9a-fA-F]{40}"
type: string
style: simple
x-account-id: true
@@ -190,7 +197,6 @@ paths:
$ref: '#/components/schemas/ApplicationList'
description: List of Applications
summary: List applications
- tags: []
x-is-paginated: true
post:
deprecated: false
@@ -202,6 +208,8 @@ paths:
name: accountId
required: true
schema:
+ example: AC170e4c66d358aa1755931da0452561933d1b8fd5
+ pattern: "AC[0-9a-fA-F]{40}"
type: string
style: simple
x-account-id: true
@@ -219,7 +227,6 @@ paths:
$ref: '#/components/schemas/ApplicationResult'
description: Application successfuly created
summary: Create an application
- tags: []
/AvailablePhoneNumbers:
get:
deprecated: false
@@ -318,7 +325,6 @@ paths:
$ref: '#/components/schemas/AvailableNumberList'
description: Available Numbers List
summary: List available numbers
- tags: []
x-is-paginated: true
/Accounts/{accountId}/IncomingPhoneNumbers/{phoneNumberId}:
delete:
@@ -331,6 +337,8 @@ paths:
name: accountId
required: true
schema:
+ example: AC170e4c66d358aa1755931da0452561933d1b8fd5
+ pattern: "AC[0-9a-fA-F]{40}"
type: string
style: simple
x-account-id: true
@@ -346,7 +354,6 @@ paths:
"204":
description: Successful Incoming Number deletion.
summary: Delete an Incoming Number
- tags: []
get:
deprecated: false
operationId: get-an-incoming-number
@@ -357,6 +364,8 @@ paths:
name: accountId
required: true
schema:
+ example: AC170e4c66d358aa1755931da0452561933d1b8fd5
+ pattern: "AC[0-9a-fA-F]{40}"
type: string
style: simple
x-account-id: true
@@ -376,7 +385,6 @@ paths:
$ref: '#/components/schemas/IncomingNumberResult'
description: Incoming Phone Number result.
summary: Get an Incoming Number
- tags: []
post:
deprecated: false
operationId: update-an-incoming-number
@@ -387,6 +395,8 @@ paths:
name: accountId
required: true
schema:
+ example: AC170e4c66d358aa1755931da0452561933d1b8fd5
+ pattern: "AC[0-9a-fA-F]{40}"
type: string
style: simple
x-account-id: true
@@ -412,7 +422,6 @@ paths:
$ref: '#/components/schemas/IncomingNumberResult'
description: Updated Incoming Phone Number
summary: Update an Incoming Number
- tags: []
/Accounts/{accountId}/IncomingPhoneNumbers:
get:
deprecated: false
@@ -424,6 +433,8 @@ paths:
name: accountId
required: true
schema:
+ example: AC170e4c66d358aa1755931da0452561933d1b8fd5
+ pattern: "AC[0-9a-fA-F]{40}"
type: string
style: simple
x-account-id: true
@@ -481,28 +492,6 @@ paths:
default: false
type: boolean
style: form
- - deprecated: true
- description: Indicates whether the phone number can handle Calls. Typically
- set to true for all numbers.
- explode: true
- in: query
- name: voiceEnabled
- required: false
- schema:
- default: true
- type: boolean
- style: form
- - deprecated: true
- description: Indication of whether the phone number can handle sending and
- receiving SMS messages. Typically set to true for all numbers.
- explode: true
- in: query
- name: smsEnabled
- required: false
- schema:
- default: true
- type: boolean
- style: form
- description: Indication of whether the phone number has a campaign associated
with it
explode: true
@@ -579,7 +568,6 @@ paths:
$ref: '#/components/schemas/IncomingNumberList'
description: List of Incoming Phone Numbers
summary: List Incoming Numbers
- tags: []
x-is-paginated: true
post:
deprecated: false
@@ -591,6 +579,8 @@ paths:
name: accountId
required: true
schema:
+ example: AC170e4c66d358aa1755931da0452561933d1b8fd5
+ pattern: "AC[0-9a-fA-F]{40}"
type: string
style: simple
x-account-id: true
@@ -609,7 +599,6 @@ paths:
$ref: '#/components/schemas/IncomingNumberResult'
description: Successful Incoming Number transaction
summary: Buy a Phone Number
- tags: []
/Accounts/{accountId}/KnowledgeBases/{knowledgeBaseId}/Completion:
post:
deprecated: false
@@ -621,6 +610,8 @@ paths:
name: accountId
required: true
schema:
+ example: AC170e4c66d358aa1755931da0452561933d1b8fd5
+ pattern: "AC[0-9a-fA-F]{40}"
type: string
style: simple
x-account-id: true
@@ -646,7 +637,6 @@ paths:
$ref: '#/components/schemas/CompletionResult'
description: KnowledgeaBase completion response
summary: Query the knowledge base
- tags: []
/Accounts/{accountId}/Calls/{callId}:
get:
deprecated: false
@@ -658,6 +648,8 @@ paths:
name: accountId
required: true
schema:
+ example: AC170e4c66d358aa1755931da0452561933d1b8fd5
+ pattern: "AC[0-9a-fA-F]{40}"
type: string
style: simple
x-account-id: true
@@ -677,7 +669,6 @@ paths:
$ref: '#/components/schemas/CallResult'
description: Call Resource
summary: Get a Call
- tags: []
post:
deprecated: false
operationId: update-a-live-call
@@ -688,6 +679,8 @@ paths:
name: accountId
required: true
schema:
+ example: AC170e4c66d358aa1755931da0452561933d1b8fd5
+ pattern: "AC[0-9a-fA-F]{40}"
type: string
style: simple
x-account-id: true
@@ -710,7 +703,6 @@ paths:
"202":
description: Successfully queued call
summary: Update a Live Call
- tags: []
/Accounts/{accountId}/Calls:
get:
deprecated: false
@@ -796,6 +788,8 @@ paths:
name: accountId
required: true
schema:
+ example: AC170e4c66d358aa1755931da0452561933d1b8fd5
+ pattern: "AC[0-9a-fA-F]{40}"
type: string
style: simple
x-account-id: true
@@ -823,7 +817,6 @@ paths:
$ref: '#/components/schemas/CallList'
description: Successful retrieved call list
summary: List Calls
- tags: []
x-is-paginated: true
post:
deprecated: false
@@ -835,6 +828,8 @@ paths:
name: accountId
required: true
schema:
+ example: AC170e4c66d358aa1755931da0452561933d1b8fd5
+ pattern: "AC[0-9a-fA-F]{40}"
type: string
style: simple
x-account-id: true
@@ -852,7 +847,6 @@ paths:
$ref: '#/components/schemas/CallResult'
description: Call that was created
summary: Make a Call
- tags: []
/Accounts/{accountId}/Calls/{callId}/Recordings:
get:
deprecated: false
@@ -873,6 +867,8 @@ paths:
name: accountId
required: true
schema:
+ example: AC170e4c66d358aa1755931da0452561933d1b8fd5
+ pattern: "AC[0-9a-fA-F]{40}"
type: string
style: simple
x-account-id: true
@@ -892,7 +888,6 @@ paths:
$ref: '#/components/schemas/RecordingList'
description: List of recordings for a call
summary: List Call Recordings
- tags: []
x-is-paginated: true
/Accounts/{accountId}/Calls/{callId}/Logs:
get:
@@ -905,6 +900,8 @@ paths:
name: accountId
required: true
schema:
+ example: AC170e4c66d358aa1755931da0452561933d1b8fd5
+ pattern: "AC[0-9a-fA-F]{40}"
type: string
style: simple
x-account-id: true
@@ -924,7 +921,6 @@ paths:
$ref: '#/components/schemas/LogList'
description: Logs for this call
summary: List Call Logs
- tags: []
x-is-paginated: true
/Accounts/{accountId}/Calls/WebRTC/Token:
post:
@@ -936,6 +932,8 @@ paths:
name: accountId
required: true
schema:
+ example: AC170e4c66d358aa1755931da0452561933d1b8fd5
+ pattern: "AC[0-9a-fA-F]{40}"
type: string
style: simple
x-account-id: true
@@ -1002,6 +1000,8 @@ paths:
name: accountId
required: true
schema:
+ example: AC170e4c66d358aa1755931da0452561933d1b8fd5
+ pattern: "AC[0-9a-fA-F]{40}"
type: string
style: simple
x-account-id: true
@@ -1013,7 +1013,6 @@ paths:
$ref: '#/components/schemas/ConferenceList'
description: List of Conferences
summary: List Conferences
- tags: []
x-is-paginated: true
post:
deprecated: false
@@ -1025,6 +1024,8 @@ paths:
name: accountId
required: true
schema:
+ example: AC170e4c66d358aa1755931da0452561933d1b8fd5
+ pattern: "AC[0-9a-fA-F]{40}"
type: string
style: simple
x-account-id: true
@@ -1042,7 +1043,6 @@ paths:
$ref: '#/components/schemas/ConferenceResult'
description: Details of created conference
summary: Create a Conference
- tags: []
/Accounts/{accountId}/Conferences/{conferenceId}:
get:
deprecated: false
@@ -1054,6 +1054,8 @@ paths:
name: accountId
required: true
schema:
+ example: AC170e4c66d358aa1755931da0452561933d1b8fd5
+ pattern: "AC[0-9a-fA-F]{40}"
type: string
style: simple
x-account-id: true
@@ -1073,7 +1075,6 @@ paths:
$ref: '#/components/schemas/ConferenceResult'
description: Successfully retrieved conference
summary: Get a Conference
- tags: []
post:
deprecated: false
operationId: update-a-conference
@@ -1084,6 +1085,8 @@ paths:
name: accountId
required: true
schema:
+ example: AC170e4c66d358aa1755931da0452561933d1b8fd5
+ pattern: "AC[0-9a-fA-F]{40}"
type: string
style: simple
x-account-id: true
@@ -1105,7 +1108,6 @@ paths:
"204":
description: Successful conference details update
summary: Update a Conference
- tags: []
/Accounts/{accountId}/Conferences/{conferenceId}/Participants/{callId}:
delete:
deprecated: false
@@ -1117,6 +1119,8 @@ paths:
name: accountId
required: true
schema:
+ example: AC170e4c66d358aa1755931da0452561933d1b8fd5
+ pattern: "AC[0-9a-fA-F]{40}"
type: string
style: simple
x-account-id: true
@@ -1140,7 +1144,6 @@ paths:
"204":
description: Successfully deleted conference participant
summary: Remove a Participant
- tags: []
get:
deprecated: false
operationId: get-a-participant
@@ -1151,6 +1154,8 @@ paths:
name: accountId
required: true
schema:
+ example: AC170e4c66d358aa1755931da0452561933d1b8fd5
+ pattern: "AC[0-9a-fA-F]{40}"
type: string
style: simple
x-account-id: true
@@ -1178,7 +1183,6 @@ paths:
$ref: '#/components/schemas/ConferenceParticipantResult'
description: Successfully retrieved conference participant
summary: Get a Participant
- tags: []
post:
deprecated: false
operationId: update-a-participant
@@ -1189,6 +1193,8 @@ paths:
name: accountId
required: true
schema:
+ example: AC170e4c66d358aa1755931da0452561933d1b8fd5
+ pattern: "AC[0-9a-fA-F]{40}"
type: string
style: simple
x-account-id: true
@@ -1222,7 +1228,6 @@ paths:
$ref: '#/components/schemas/ConferenceParticipantResult'
description: Successfully retrieved conference participant
summary: Update a Participant
- tags: []
/Accounts/{accountId}/Conferences/{conferenceId}/Participants:
get:
deprecated: false
@@ -1258,6 +1263,8 @@ paths:
name: accountId
required: true
schema:
+ example: AC170e4c66d358aa1755931da0452561933d1b8fd5
+ pattern: "AC[0-9a-fA-F]{40}"
type: string
style: simple
x-account-id: true
@@ -1277,7 +1284,6 @@ paths:
$ref: '#/components/schemas/ConferenceParticipantList'
description: Successfully retrieved conference participant list
summary: List Participants
- tags: []
x-is-paginated: true
/Accounts/{accountId}/Conferences/{conferenceId}/Recordings:
get:
@@ -1306,6 +1312,8 @@ paths:
name: accountId
required: true
schema:
+ example: AC170e4c66d358aa1755931da0452561933d1b8fd5
+ pattern: "AC[0-9a-fA-F]{40}"
type: string
style: simple
x-account-id: true
@@ -1325,7 +1333,6 @@ paths:
$ref: '#/components/schemas/RecordingList'
description: List of Recordings
summary: List Conference Recordings
- tags: []
x-is-paginated: true
/Accounts/{accountId}/Queues/{queueId}:
get:
@@ -1338,6 +1345,8 @@ paths:
name: accountId
required: true
schema:
+ example: AC170e4c66d358aa1755931da0452561933d1b8fd5
+ pattern: "AC[0-9a-fA-F]{40}"
type: string
style: simple
x-account-id: true
@@ -1357,7 +1366,6 @@ paths:
$ref: '#/components/schemas/QueueResult'
description: Successfully retrieved queue
summary: Get a Queue
- tags: []
post:
deprecated: false
operationId: update-a-queue
@@ -1368,6 +1376,8 @@ paths:
name: accountId
required: true
schema:
+ example: AC170e4c66d358aa1755931da0452561933d1b8fd5
+ pattern: "AC[0-9a-fA-F]{40}"
type: string
style: simple
x-account-id: true
@@ -1393,7 +1403,6 @@ paths:
$ref: '#/components/schemas/QueueResult'
description: Successfully updated queue
summary: Update a Queue
- tags: []
/Accounts/{accountId}/Queues:
get:
deprecated: false
@@ -1414,6 +1423,8 @@ paths:
name: accountId
required: true
schema:
+ example: AC170e4c66d358aa1755931da0452561933d1b8fd5
+ pattern: "AC[0-9a-fA-F]{40}"
type: string
style: simple
x-account-id: true
@@ -1425,7 +1436,6 @@ paths:
$ref: '#/components/schemas/QueueList'
description: Successfuly retrieved queue list
summary: List Active Queues
- tags: []
x-is-paginated: true
post:
deprecated: false
@@ -1437,6 +1447,8 @@ paths:
name: accountId
required: true
schema:
+ example: AC170e4c66d358aa1755931da0452561933d1b8fd5
+ pattern: "AC[0-9a-fA-F]{40}"
type: string
style: simple
x-account-id: true
@@ -1454,7 +1466,6 @@ paths:
$ref: '#/components/schemas/QueueResult'
description: Successfuly created queue
summary: Create a Queue
- tags: []
/Accounts/{accountId}/Queues/{queueId}/Members/Front:
get:
deprecated: false
@@ -1466,6 +1477,8 @@ paths:
name: accountId
required: true
schema:
+ example: AC170e4c66d358aa1755931da0452561933d1b8fd5
+ pattern: "AC[0-9a-fA-F]{40}"
type: string
style: simple
x-account-id: true
@@ -1486,7 +1499,6 @@ paths:
$ref: '#/components/schemas/QueueMember'
description: Successfully retrieved queue member
summary: Get Head Member
- tags: []
post:
deprecated: false
operationId: dequeue-head-member
@@ -1497,6 +1509,8 @@ paths:
name: accountId
required: true
schema:
+ example: AC170e4c66d358aa1755931da0452561933d1b8fd5
+ pattern: "AC[0-9a-fA-F]{40}"
type: string
style: simple
x-account-id: true
@@ -1516,7 +1530,6 @@ paths:
$ref: '#/components/schemas/QueueMember'
description: Accepted dequeue request
summary: Dequeue Head Member
- tags: []
/Accounts/{accountId}/Queues/{queueId}/Members:
get:
deprecated: false
@@ -1528,6 +1541,8 @@ paths:
name: accountId
required: true
schema:
+ example: AC170e4c66d358aa1755931da0452561933d1b8fd5
+ pattern: "AC[0-9a-fA-F]{40}"
type: string
style: simple
x-account-id: true
@@ -1548,7 +1563,6 @@ paths:
$ref: '#/components/schemas/QueueMemberList'
description: Successfully retrieved queue member list
summary: List Members
- tags: []
x-is-paginated: true
/Accounts/{accountId}/Queues/{queueId}/Members/{callId}:
get:
@@ -1561,6 +1575,8 @@ paths:
name: accountId
required: true
schema:
+ example: AC170e4c66d358aa1755931da0452561933d1b8fd5
+ pattern: "AC[0-9a-fA-F]{40}"
type: string
style: simple
x-account-id: true
@@ -1589,7 +1605,6 @@ paths:
$ref: '#/components/schemas/QueueMember'
description: Successfully retrieved a queue member
summary: Get a Member
- tags: []
post:
deprecated: false
operationId: dequeue-a-member
@@ -1600,6 +1615,8 @@ paths:
name: accountId
required: true
schema:
+ example: AC170e4c66d358aa1755931da0452561933d1b8fd5
+ pattern: "AC[0-9a-fA-F]{40}"
type: string
style: simple
x-account-id: true
@@ -1628,7 +1645,6 @@ paths:
$ref: '#/components/schemas/QueueMember'
description: Accepted dequeue request
summary: Dequeue a Member
- tags: []
/Accounts/{accountId}/Logs:
get:
deprecated: false
@@ -1640,6 +1656,8 @@ paths:
name: accountId
required: true
schema:
+ example: AC170e4c66d358aa1755931da0452561933d1b8fd5
+ pattern: "AC[0-9a-fA-F]{40}"
type: string
style: simple
x-account-id: true
@@ -1651,7 +1669,6 @@ paths:
$ref: '#/components/schemas/LogList'
description: Successfully retrieved log list
summary: List All Account Logs
- tags: []
x-is-paginated: true
post:
deprecated: false
@@ -1663,6 +1680,8 @@ paths:
name: accountId
required: true
schema:
+ example: AC170e4c66d358aa1755931da0452561933d1b8fd5
+ pattern: "AC[0-9a-fA-F]{40}"
type: string
style: simple
x-account-id: true
@@ -1681,7 +1700,6 @@ paths:
$ref: '#/components/schemas/LogList'
description: Successfully retrieved log list
summary: Filter Logs
- tags: []
x-is-paginated: true
/Accounts/{accountId}/Recordings:
get:
@@ -1718,6 +1736,8 @@ paths:
name: accountId
required: true
schema:
+ example: AC170e4c66d358aa1755931da0452561933d1b8fd5
+ pattern: "AC[0-9a-fA-F]{40}"
type: string
style: simple
x-account-id: true
@@ -1729,7 +1749,6 @@ paths:
$ref: '#/components/schemas/RecordingList'
description: List of Recordings
summary: List Recordings
- tags: []
x-is-paginated: true
/Accounts/{accountId}/Recordings/{recordingId}:
delete:
@@ -1742,6 +1761,8 @@ paths:
name: accountId
required: true
schema:
+ example: AC170e4c66d358aa1755931da0452561933d1b8fd5
+ pattern: "AC[0-9a-fA-F]{40}"
type: string
style: simple
x-account-id: true
@@ -1757,7 +1778,6 @@ paths:
"204":
description: Recording Deleted
summary: Delete a Recording
- tags: []
get:
deprecated: false
operationId: get-a-recording
@@ -1768,6 +1788,8 @@ paths:
name: accountId
required: true
schema:
+ example: AC170e4c66d358aa1755931da0452561933d1b8fd5
+ pattern: "AC[0-9a-fA-F]{40}"
type: string
style: simple
x-account-id: true
@@ -1787,7 +1809,6 @@ paths:
$ref: '#/components/schemas/RecordingResult'
description: ""
summary: Get a Recording
- tags: []
/Accounts/{accountId}/Recordings/{recordingId}/Stream:
get:
deprecated: false
@@ -1799,6 +1820,8 @@ paths:
name: accountId
required: true
schema:
+ example: AC170e4c66d358aa1755931da0452561933d1b8fd5
+ pattern: "AC[0-9a-fA-F]{40}"
type: string
style: simple
x-account-id: true
@@ -1813,13 +1836,12 @@ paths:
responses:
"200":
content:
- audio/x-wav:
+ audio/wav:
schema:
format: binary
type: string
- description: Streaming a Recording represented with audio/x-wav mime-type
+ description: Streaming a Recording represented with audio/wav mime-type
summary: Stream a Recording File
- tags: []
/Accounts/{accountId}/Recordings/{recordingId}/Download:
get:
deprecated: false
@@ -1831,6 +1853,8 @@ paths:
name: accountId
required: true
schema:
+ example: AC170e4c66d358aa1755931da0452561933d1b8fd5
+ pattern: "AC[0-9a-fA-F]{40}"
type: string
style: simple
x-account-id: true
@@ -1845,13 +1869,12 @@ paths:
responses:
"200":
content:
- audio/x-wav:
+ audio/wav:
schema:
format: binary
type: string
- description: Download a Recording file represented with audio/x-wav mime-type
+ description: Download a Recording file represented with audio/wav mime-type
summary: Download a Recording File
- tags: []
/Accounts/{accountId}/Messages:
get:
deprecated: false
@@ -1863,6 +1886,8 @@ paths:
name: accountId
required: true
schema:
+ example: AC170e4c66d358aa1755931da0452561933d1b8fd5
+ pattern: "AC[0-9a-fA-F]{40}"
type: string
style: simple
x-account-id: true
@@ -1941,7 +1966,6 @@ paths:
$ref: '#/components/schemas/MessagesList'
description: List of messages
summary: List SMS Messages
- tags: []
x-is-paginated: true
post:
deprecated: false
@@ -1953,6 +1977,8 @@ paths:
name: accountId
required: true
schema:
+ example: AC170e4c66d358aa1755931da0452561933d1b8fd5
+ pattern: "AC[0-9a-fA-F]{40}"
type: string
style: simple
x-account-id: true
@@ -1971,7 +1997,6 @@ paths:
$ref: '#/components/schemas/MessageResult'
description: The message has been accepted.
summary: Send an SMS Message
- tags: []
/Accounts/{accountId}/Messages/{messageId}:
get:
deprecated: false
@@ -1983,6 +2008,8 @@ paths:
name: accountId
required: true
schema:
+ example: AC170e4c66d358aa1755931da0452561933d1b8fd5
+ pattern: "AC[0-9a-fA-F]{40}"
type: string
style: simple
x-account-id: true
@@ -2002,7 +2029,6 @@ paths:
$ref: '#/components/schemas/MessageResult'
description: The specific SMS message that’s been processed by FreeClimb
summary: Get an SMS Message
- tags: []
/Accounts/{accountId}/Messages/10DLC/Campaigns:
get:
deprecated: false
@@ -2014,6 +2040,8 @@ paths:
name: accountId
required: true
schema:
+ example: AC170e4c66d358aa1755931da0452561933d1b8fd5
+ pattern: "AC[0-9a-fA-F]{40}"
type: string
style: simple
x-account-id: true
@@ -2074,7 +2102,6 @@ paths:
$ref: '#/components/schemas/SMSTenDLCCampaignsListResult'
description: The list SMS 10DLC campaigns
summary: Get list of SMS 10DLC Campaigns
- tags: []
x-is-paginated: true
/Accounts/{accountId}/Messages/10DLC/Campaigns/{campaignId}:
get:
@@ -2087,6 +2114,8 @@ paths:
name: accountId
required: true
schema:
+ example: AC170e4c66d358aa1755931da0452561933d1b8fd5
+ pattern: "AC[0-9a-fA-F]{40}"
type: string
style: simple
x-account-id: true
@@ -2106,7 +2135,6 @@ paths:
$ref: '#/components/schemas/SMSTenDLCCampaign'
description: The specific SMS 10DLC Campaign that’s been processed by FreeClimb
summary: Get a 10DLC SMS Campaign
- tags: []
/Accounts/{accountId}/Messages/10DLC/PartnerCampaigns:
get:
deprecated: false
@@ -2118,6 +2146,8 @@ paths:
name: accountId
required: true
schema:
+ example: AC170e4c66d358aa1755931da0452561933d1b8fd5
+ pattern: "AC[0-9a-fA-F]{40}"
type: string
style: simple
x-account-id: true
@@ -2186,7 +2216,6 @@ paths:
$ref: '#/components/schemas/SMSTenDLCPartnerCampaignsListResult'
description: The list SMS 10DLC partner campaigns
summary: Get list of SMS 10DLC Partner Campaigns
- tags: []
x-is-paginated: true
/Accounts/{accountId}/Messages/10DLC/PartnerCampaigns/{campaignId}:
get:
@@ -2199,6 +2228,8 @@ paths:
name: accountId
required: true
schema:
+ example: AC170e4c66d358aa1755931da0452561933d1b8fd5
+ pattern: "AC[0-9a-fA-F]{40}"
type: string
style: simple
x-account-id: true
@@ -2219,7 +2250,6 @@ paths:
description: The specific SMS 10DLC Partner Campaign that’s been processed
by FreeClimb
summary: Get a 10DLC SMS Partner Campaign
- tags: []
/Accounts/{accountId}/Messages/10DLC/Brands:
get:
deprecated: false
@@ -2231,6 +2261,8 @@ paths:
name: accountId
required: true
schema:
+ example: AC170e4c66d358aa1755931da0452561933d1b8fd5
+ pattern: "AC[0-9a-fA-F]{40}"
type: string
style: simple
x-account-id: true
@@ -2280,7 +2312,6 @@ paths:
$ref: '#/components/schemas/SMSTenDLCBrandsListResult'
description: The list SMS 10DLC brands
summary: Get list of SMS 10DLC Brands
- tags: []
x-is-paginated: true
/Accounts/{accountId}/Messages/10DLC/Brands/{brandId}:
get:
@@ -2293,6 +2324,8 @@ paths:
name: accountId
required: true
schema:
+ example: AC170e4c66d358aa1755931da0452561933d1b8fd5
+ pattern: "AC[0-9a-fA-F]{40}"
type: string
style: simple
x-account-id: true
@@ -2312,7 +2345,6 @@ paths:
$ref: '#/components/schemas/SMSTenDLCBrand'
description: The specific SMS 10DLC Brand that’s been processed by FreeClimb
summary: Get a 10DLC SMS Brand
- tags: []
/Accounts/{accountId}/Messages/TollFree/Campaigns:
get:
deprecated: false
@@ -2324,6 +2356,8 @@ paths:
name: accountId
required: true
schema:
+ example: AC170e4c66d358aa1755931da0452561933d1b8fd5
+ pattern: "AC[0-9a-fA-F]{40}"
type: string
style: simple
x-account-id: true
@@ -2351,7 +2385,6 @@ paths:
$ref: '#/components/schemas/SMSTollFreeCampaignsListResult'
description: The list toll-free campaigns
summary: Get list of TollFree Campaigns
- tags: []
x-is-paginated: true
/Accounts/{accountId}/Messages/TollFree/Campaigns/{campaignId}:
get:
@@ -2364,6 +2397,8 @@ paths:
name: accountId
required: true
schema:
+ example: AC170e4c66d358aa1755931da0452561933d1b8fd5
+ pattern: "AC[0-9a-fA-F]{40}"
type: string
style: simple
x-account-id: true
@@ -2384,7 +2419,6 @@ paths:
description: The specific SMS TollFree Campaign that’s been processed by
FreeClimb
summary: Get a TollFree SMS Campaign
- tags: []
/Accounts/{accountId}/Exports:
get:
operationId: list-exports
@@ -2395,6 +2429,8 @@ paths:
name: accountId
required: true
schema:
+ example: AC170e4c66d358aa1755931da0452561933d1b8fd5
+ pattern: "AC[0-9a-fA-F]{40}"
type: string
style: simple
x-account-id: true
@@ -2422,7 +2458,6 @@ paths:
$ref: '#/components/schemas/ExportList'
description: Successful retrieved export list
summary: List Exports
- tags: []
x-is-paginated: true
post:
operationId: create-export
@@ -2433,6 +2468,8 @@ paths:
name: accountId
required: true
schema:
+ example: AC170e4c66d358aa1755931da0452561933d1b8fd5
+ pattern: "AC[0-9a-fA-F]{40}"
type: string
style: simple
x-account-id: true
@@ -2450,7 +2487,6 @@ paths:
$ref: '#/components/schemas/ExportResult'
description: Export successfully created
summary: Create an Export
- tags: []
/Accounts/{accountId}/Exports/{exportId}:
delete:
deprecated: false
@@ -2462,6 +2498,8 @@ paths:
name: accountId
required: true
schema:
+ example: AC170e4c66d358aa1755931da0452561933d1b8fd5
+ pattern: "AC[0-9a-fA-F]{40}"
type: string
style: simple
x-account-id: true
@@ -2477,7 +2515,6 @@ paths:
"204":
description: Successful Export deletion
summary: Delete an Export
- tags: []
get:
deprecated: false
operationId: get-an-export
@@ -2488,6 +2525,8 @@ paths:
name: accountId
required: true
schema:
+ example: AC170e4c66d358aa1755931da0452561933d1b8fd5
+ pattern: "AC[0-9a-fA-F]{40}"
type: string
style: simple
x-account-id: true
@@ -2507,7 +2546,6 @@ paths:
$ref: '#/components/schemas/ExportResult'
description: Export Details
summary: Get an Export
- tags: []
/Accounts/{accountId}/Exports/{exportId}/Download:
get:
deprecated: false
@@ -2519,6 +2557,8 @@ paths:
name: accountId
required: true
schema:
+ example: AC170e4c66d358aa1755931da0452561933d1b8fd5
+ pattern: "AC[0-9a-fA-F]{40}"
type: string
style: simple
x-account-id: true
@@ -2538,7 +2578,627 @@ paths:
type: string
description: Export Details
summary: Download an Export
- tags: []
+ /Accounts/{accountId}/Blobs:
+ get:
+ description: List Blobs belonging to an account. Results are returned in paginated
+ lists mirroring other listing features in the API.
+ operationId: list-blobs
+ parameters:
+ - description: ID of the account
+ explode: false
+ in: path
+ name: accountId
+ required: true
+ schema:
+ example: AC170e4c66d358aa1755931da0452561933d1b8fd5
+ pattern: "AC[0-9a-fA-F]{40}"
+ type: string
+ style: simple
+ x-account-id: true
+ responses:
+ "200":
+ content:
+ application/json:
+ example:
+ total: 2
+ start: 0
+ end: 1
+ page: 0
+ numPages: 1
+ pageSize: 100
+ nextPageUri: null
+ blobs:
+ - blobId: BL387ec3f6e03b340553f35f29c8f118cdf3eae08a
+ accountId: AC3ff5d5aed7fde9e6659673d850cbd18ea8bfca78
+ alias: my-blob-alias
+ revision: 1
+ dateCreated: 2006-01-02T15:04:05.000Z
+ dateUpdated: 2006-01-02T15:04:05.000Z
+ expiresAt: 2006-01-02T15:04:05.000Z
+ blob:
+ field0: value0
+ field1: 1
+ field2: true
+ - blobId: BL487ec3f6e03b340553f35f29c8f118cdf3eae08b
+ accountId: AC3ff5d5aed7fde9e6659673d850cbd18ea8bfca78
+ alias: another-blob
+ revision: 1
+ dateCreated: 2006-01-02T16:04:05.000Z
+ dateUpdated: 2006-01-02T16:04:05.000Z
+ expiresAt: 2006-01-02T16:04:05.000Z
+ blob:
+ data: example
+ schema:
+ $ref: '#/components/schemas/BlobListResponse'
+ description: Single page of blob list results.
+ "400":
+ content:
+ application/json:
+ example:
+ code: 80
+ call: Missing Required Parameter(s)
+ url: https://docs.freeclimb.com/reference/error-and-warning-dictionary#80
+ schema:
+ $ref: '#/components/schemas/PlatformError'
+ description: Generic platform bad request.
+ "500":
+ content:
+ application/json:
+ example:
+ code: 0
+ call: Internal Failure
+ url: https://docs.freeclimb.com/reference/error-and-warning-dictionary#0
+ schema:
+ $ref: '#/components/schemas/PlatformError'
+ description: Generic platform internal error.
+ "504":
+ content:
+ application/json:
+ example:
+ code: 0
+ call: Internal Failure
+ url: https://docs.freeclimb.com/reference/error-and-warning-dictionary#0
+ schema:
+ $ref: '#/components/schemas/PlatformError'
+ description: gateway timeout error
+ summary: List Blobs belonging to an account.
+ x-is-paginated: true
+ post:
+ description: Create a new Blob belonging to the requesting account.
+ operationId: create-blob
+ parameters:
+ - description: ID of the account
+ explode: false
+ in: path
+ name: accountId
+ required: true
+ schema:
+ example: AC170e4c66d358aa1755931da0452561933d1b8fd5
+ pattern: "AC[0-9a-fA-F]{40}"
+ type: string
+ style: simple
+ x-account-id: true
+ requestBody:
+ content:
+ application/json:
+ examples:
+ plain_empty_blob:
+ value:
+ blob: {}
+ setting_blob_content:
+ value:
+ blob:
+ key0: value0
+ key1: 1
+ key2:
+ keyA: true
+ keyB:
+ - 1
+ - 1
+ - 2
+ - 3
+ - 5
+ - 8
+ - 13
+ - 21
+ setting_alias_blob:
+ value:
+ alias: my_custom_blob_identifier
+ blob:
+ key: value
+ setting_expiresAt_blob:
+ value:
+ expiresAt: 2025-01-04T15:04:05.060Z
+ blob:
+ key: 45
+ setting_everything_blob:
+ value:
+ alias: my_custom_blob_identifier
+ expiresAt: 2025-01-04T15:04:05.060Z
+ blob:
+ key0: value
+ key1: 45
+ schema:
+ $ref: '#/components/schemas/CreateBlobRequest'
+ description: An object defining a new blob. A request body must be provided
+ but the blob may be empty.
+ required: true
+ responses:
+ "201":
+ content:
+ application/json:
+ examples:
+ plain_empty_blob:
+ value:
+ revision: 1
+ dateCreated: 2025-01-02T15:04:05.000Z
+ dateUpdated: 2025-01-02T15:04:05.000Z
+ accountId: AC387ec3f6e03b340553f35f29c8f118cdf3eae08a
+ alias: BL387ec3f6e03b340553f35f29c8f118cdf3eae08a
+ blobId: BL387ec3f6e03b340553f35f29c8f118cdf3eae08a
+ expiresAt: 2025-01-03T00:04:05.000Z
+ blob: {}
+ setting_blob_content:
+ value:
+ revision: 1
+ dateCreated: 2025-01-02T15:04:05.000Z
+ dateUpdated: 2025-01-02T15:04:05.000Z
+ accountId: AC387ec3f6e03b340553f35f29c8f118cdf3eae08a
+ alias: BL387ec3f6e03b340553f35f29c8f118cdf3eae08a
+ blobId: BL387ec3f6e03b340553f35f29c8f118cdf3eae08a
+ expiresAt: 2025-01-03T00:04:05.000Z
+ blob:
+ key0: value0
+ key1: 1
+ key2:
+ keyA: true
+ keyB:
+ - 1
+ - 1
+ - 2
+ - 3
+ - 5
+ - 8
+ - 13
+ - 21
+ setting_alias_blob:
+ value:
+ revision: 1
+ dateCreated: 2025-01-02T15:04:05.000Z
+ dateUpdated: 2025-01-02T15:04:05.000Z
+ accountId: AC387ec3f6e03b340553f35f29c8f118cdf3eae08a
+ alias: my_custom_blob_identifier
+ blobId: BL387ec3f6e03b340553f35f29c8f118cdf3eae08a
+ expiresAt: 2025-01-03T00:04:05.000Z
+ blob:
+ key: value
+ setting_expiresAt_blob:
+ value:
+ revision: 1
+ dateCreated: 2025-01-02T15:04:05.000Z
+ dateUpdated: 2025-01-02T15:04:05.000Z
+ accountId: AC387ec3f6e03b340553f35f29c8f118cdf3eae08a
+ alias: BL387ec3f6e03b340553f35f29c8f118cdf3eae08a
+ blobId: BL387ec3f6e03b340553f35f29c8f118cdf3eae08a
+ expiresAt: 2025-01-04T15:04:05.060Z
+ blob:
+ key: 45
+ setting_everything_blob:
+ value:
+ revision: 1
+ dateCreated: 2025-01-02T15:04:05.000Z
+ dateUpdated: 2025-01-02T15:04:05.000Z
+ accountId: AC387ec3f6e03b340553f35f29c8f118cdf3eae08a
+ blobId: BL387ec3f6e03b340553f35f29c8f118cdf3eae08a
+ alias: my_custom_blob_identifier
+ expiresAt: 2025-01-04T15:04:05.060Z
+ blob:
+ key0: value
+ key1: 45
+ schema:
+ $ref: '#/components/schemas/BlobResult'
+ description: Successful creation of a new blob.
+ "400":
+ content:
+ application/json:
+ example:
+ code: 80
+ call: Missing Required Parameter(s)
+ url: https://docs.freeclimb.com/reference/error-and-warning-dictionary#80
+ schema:
+ $ref: '#/components/schemas/PlatformError'
+ description: Generic platform bad request.
+ "409":
+ content:
+ application/json:
+ example:
+ code: 108
+ call: Request conflicts with another resource
+ url: https://docs.freeclimb.com/reference/error-and-warning-dictionary#108
+ details:
+ explanation: alias already exists for another blob on this account
+ schema:
+ $ref: '#/components/schemas/PlatformError'
+ description: A blob with the provided alias already exists oln the requesting
+ account and so this new blob is rejected as there cannot be duplicate
+ alises.
+ "413":
+ content:
+ application/json:
+ example:
+ code: 80
+ call: Missing Required Parameter(s)
+ url: https://docs.freeclimb.com/reference/error-and-warning-dictionary#80
+ details:
+ explanation: blob exceeds per-blob size limit
+ schema:
+ $ref: '#/components/schemas/PlatformError'
+ description: The blob exceeded one of the size limits. Either it itself
+ is too large or it would push the total sum of all blobs over the account's
+ limit.
+ "422":
+ content:
+ application/json:
+ example:
+ code: 9
+ call: Invalid JSON
+ url: https://docs.freeclimb.com/reference/error-and-warning-dictionary#9
+ schema:
+ $ref: '#/components/schemas/PlatformError'
+ description: Generic platform unprocessible entity response.
+ "500":
+ content:
+ application/json:
+ example:
+ code: 0
+ call: Internal Failure
+ url: https://docs.freeclimb.com/reference/error-and-warning-dictionary#0
+ schema:
+ $ref: '#/components/schemas/PlatformError'
+ description: Generic platform internal error.
+ summary: Create a Blob
+ summary: Operations affecting the whole set of Blobs belonging to an account.
+ /Accounts/{accountId}/Blobs/{blobId}:
+ delete:
+ description: "Deletes a blob or specific keys from a blob. If no keys are specified\
+ \ in the request body, the entire blob is deleted (returns 204). If specific\
+ \ keys are provided, only those keys are removed and the remaining blob is\
+ \ returned (returns 200)."
+ operationId: delete-blob
+ parameters:
+ - description: ID of the account
+ explode: false
+ in: path
+ name: accountId
+ required: true
+ schema:
+ example: AC170e4c66d358aa1755931da0452561933d1b8fd5
+ pattern: "AC[0-9a-fA-F]{40}"
+ type: string
+ style: simple
+ x-account-id: true
+ - description: String that uniquely identifies this Blob resource.
+ explode: false
+ in: path
+ name: blobId
+ required: true
+ schema:
+ $ref: '#/components/schemas/blobId'
+ style: simple
+ responses:
+ "200":
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/BlobResult'
+ description: "Blob keys deleted successfully, remaining blob returned."
+ "204":
+ description: Successful operation
+ "404":
+ content:
+ application/json:
+ example:
+ code: 1
+ call: Not Found
+ url: https://docs.freeclimb.com/reference/error-and-warning-dictionary#1
+ schema:
+ $ref: '#/components/schemas/PlatformError'
+ description: Generic platform not found error.
+ "422":
+ content:
+ application/json:
+ example:
+ code: 9
+ call: Invalid JSON
+ url: https://docs.freeclimb.com/reference/error-and-warning-dictionary#9
+ schema:
+ $ref: '#/components/schemas/PlatformError'
+ description: Generic platform unprocessible entity response.
+ "500":
+ content:
+ application/json:
+ example:
+ code: 0
+ call: Internal Failure
+ url: https://docs.freeclimb.com/reference/error-and-warning-dictionary#0
+ schema:
+ $ref: '#/components/schemas/PlatformError'
+ description: Generic platform internal error.
+ "504":
+ content:
+ application/json:
+ example:
+ code: 0
+ call: Internal Failure
+ url: https://docs.freeclimb.com/reference/error-and-warning-dictionary#0
+ schema:
+ $ref: '#/components/schemas/PlatformError'
+ description: gateway timeout error
+ summary: Delete Blob
+ get:
+ description: Retrieves a specified blob
+ operationId: get-blob
+ parameters:
+ - description: ID of the account
+ explode: false
+ in: path
+ name: accountId
+ required: true
+ schema:
+ example: AC170e4c66d358aa1755931da0452561933d1b8fd5
+ pattern: "AC[0-9a-fA-F]{40}"
+ type: string
+ style: simple
+ x-account-id: true
+ - description: String that uniquely identifies this Blob resource.
+ explode: false
+ in: path
+ name: blobId
+ required: true
+ schema:
+ $ref: '#/components/schemas/blobId'
+ style: simple
+ responses:
+ "200":
+ content:
+ application/json:
+ example:
+ blobId: BL387ec3f6e03b340553f35f29c8f118cdf3eae08a
+ accountId: AC3ff5d5aed7fde9e6659673d850cbd18ea8bfca78
+ alias: my-blob-alias
+ revision: 1
+ dateCreated: 2006-01-02T15:04:05.000Z
+ dateUpdated: 2006-01-02T15:04:05.000Z
+ expiresAt: 2006-01-02T15:04:05.000Z
+ blob:
+ field0: value0
+ field1: 1
+ field2: true
+ schema:
+ $ref: '#/components/schemas/BlobResult'
+ description: Retrieve a Blob.
+ "404":
+ content:
+ application/json:
+ example:
+ code: 1
+ call: Not Found
+ url: https://docs.freeclimb.com/reference/error-and-warning-dictionary#1
+ schema:
+ $ref: '#/components/schemas/PlatformError'
+ description: Generic platform not found error.
+ "500":
+ content:
+ application/json:
+ example:
+ code: 0
+ call: Internal Failure
+ url: https://docs.freeclimb.com/reference/error-and-warning-dictionary#0
+ schema:
+ $ref: '#/components/schemas/PlatformError'
+ description: Generic platform internal error.
+ "504":
+ content:
+ application/json:
+ example:
+ code: 0
+ call: Internal Failure
+ url: https://docs.freeclimb.com/reference/error-and-warning-dictionary#0
+ schema:
+ $ref: '#/components/schemas/PlatformError'
+ description: gateway timeout error
+ summary: Get Blob
+ patch:
+ description: "Modifys a pre existing blob by either adding new fields, or modifying\
+ \ existing fields"
+ operationId: modify-blob
+ parameters:
+ - description: ID of the account
+ explode: false
+ in: path
+ name: accountId
+ required: true
+ schema:
+ example: AC170e4c66d358aa1755931da0452561933d1b8fd5
+ pattern: "AC[0-9a-fA-F]{40}"
+ type: string
+ style: simple
+ x-account-id: true
+ - description: String that uniquely identifies this Blob resource.
+ explode: false
+ in: path
+ name: blobId
+ required: true
+ schema:
+ $ref: '#/components/schemas/blobId'
+ style: simple
+ requestBody:
+ content:
+ application/json:
+ example:
+ alias: new_conversation_id
+ blob:
+ field0: value0_redux
+ field4: value4
+ schema:
+ $ref: '#/components/schemas/ModifyBlobRequest'
+ description: Request body to specify keys to modify. Or new keys to add onto
+ the already existing blob
+ required: true
+ responses:
+ "200":
+ content:
+ application/json:
+ example:
+ blobId: BL387ec3f6e03b340553f35f29c8f118cdf3eae08a
+ accountId: AC3ff5d5aed7fde9e6659673d850cbd18ea8bfca78
+ alias: new_conversation_id
+ revision: 2
+ dateCreated: 2006-01-02T15:04:05.000Z
+ dateUpdated: 2006-01-02T15:04:05.000Z
+ expiresAt: 2006-01-02T15:04:05.000Z
+ blob:
+ field0: value0_redux
+ field4: value4
+ schema:
+ $ref: '#/components/schemas/BlobResult'
+ description: "Blob keys successfully modified, updated blob returned."
+ "404":
+ content:
+ application/json:
+ example:
+ code: 1
+ call: Not Found
+ url: https://docs.freeclimb.com/reference/error-and-warning-dictionary#1
+ schema:
+ $ref: '#/components/schemas/PlatformError'
+ description: Generic platform not found error.
+ "409":
+ content:
+ application/json:
+ example:
+ code: 108
+ call: ResourceConflict
+ url: https://docs.freeclimb.com/reference/error-and-warning-dictionary#108
+ schema:
+ $ref: '#/components/schemas/PlatformError'
+ description: Generic platform status conflict error.
+ "413":
+ content:
+ application/json:
+ example:
+ code: 3
+ call: BadRequestBody
+ url: https://docs.freeclimb.com/reference/error-and-warning-dictionary#3
+ schema:
+ $ref: '#/components/schemas/PlatformError'
+ description: Generic platform status request entity too large.
+ "500":
+ content:
+ application/json:
+ example:
+ code: 0
+ call: Internal Failure
+ url: https://docs.freeclimb.com/reference/error-and-warning-dictionary#0
+ schema:
+ $ref: '#/components/schemas/PlatformError'
+ description: Generic platform internal error.
+ summary: Modify Blob
+ put:
+ description: Replaces the blob content with the provided values.
+ operationId: replace-blob
+ parameters:
+ - description: ID of the account
+ explode: false
+ in: path
+ name: accountId
+ required: true
+ schema:
+ example: AC170e4c66d358aa1755931da0452561933d1b8fd5
+ pattern: "AC[0-9a-fA-F]{40}"
+ type: string
+ style: simple
+ x-account-id: true
+ - description: String that uniquely identifies this Blob resource.
+ explode: false
+ in: path
+ name: blobId
+ required: true
+ schema:
+ $ref: '#/components/schemas/blobId'
+ style: simple
+ requestBody:
+ content:
+ application/json:
+ example:
+ blob:
+ field0: value0_redux
+ field4: value4
+ schema:
+ $ref: '#/components/schemas/ReplaceBlobRequest'
+ description: JSON object containing blob key the contents of which will be
+ used to override the enitre blob contents.
+ required: true
+ responses:
+ "200":
+ content:
+ application/json:
+ example:
+ blobId: BL387ec3f6e03b340553f35f29c8f118cdf3eae08a
+ accountId: AC3ff5d5aed7fde9e6659673d850cbd18ea8bfca78
+ alias: new_conversation_id
+ revision: 2
+ dateCreated: 2006-01-02T15:04:05.000Z
+ dateUpdated: 2006-01-02T15:04:05.000Z
+ expiresAt: 2006-01-02T15:04:05.000Z
+ blob:
+ field0: value0_redux
+ field4: value4
+ schema:
+ $ref: '#/components/schemas/BlobResult'
+ description: Replaces all keys in blob with those provided.
+ "404":
+ content:
+ application/json:
+ example:
+ code: 1
+ call: Not Found
+ url: https://docs.freeclimb.com/reference/error-and-warning-dictionary#1
+ schema:
+ $ref: '#/components/schemas/PlatformError'
+ description: Generic platform not found error.
+ "409":
+ content:
+ application/json:
+ example:
+ code: 108
+ call: ResourceConflict
+ url: https://docs.freeclimb.com/reference/error-and-warning-dictionary#108
+ schema:
+ $ref: '#/components/schemas/PlatformError'
+ description: Generic platform status conflict error.
+ "413":
+ content:
+ application/json:
+ example:
+ code: 3
+ call: BadRequestBody
+ url: https://docs.freeclimb.com/reference/error-and-warning-dictionary#3
+ schema:
+ $ref: '#/components/schemas/PlatformError'
+ description: Generic platform status request entity too large.
+ "500":
+ content:
+ application/json:
+ example:
+ code: 0
+ call: Internal Failure
+ url: https://docs.freeclimb.com/reference/error-and-warning-dictionary#0
+ schema:
+ $ref: '#/components/schemas/PlatformError'
+ description: Generic platform internal error.
+ summary: Replace Blob
+ summary: Operations affecting an individual blob belonging to an account.
components:
parameters:
AccountId:
@@ -2548,6 +3208,8 @@ components:
name: accountId
required: true
schema:
+ example: AC170e4c66d358aa1755931da0452561933d1b8fd5
+ pattern: "AC[0-9a-fA-F]{40}"
type: string
style: simple
x-account-id: true
@@ -2596,7 +3258,89 @@ components:
schema:
type: boolean
style: form
+ responses:
+ success204:
+ description: Successful operation
+ error400:
+ content:
+ application/json:
+ example:
+ code: 80
+ call: Missing Required Parameter(s)
+ url: https://docs.freeclimb.com/reference/error-and-warning-dictionary#80
+ schema:
+ $ref: '#/components/schemas/PlatformError'
+ description: Generic platform bad request.
+ error404:
+ content:
+ application/json:
+ example:
+ code: 1
+ call: Not Found
+ url: https://docs.freeclimb.com/reference/error-and-warning-dictionary#1
+ schema:
+ $ref: '#/components/schemas/PlatformError'
+ description: Generic platform not found error.
+ error409:
+ content:
+ application/json:
+ example:
+ code: 108
+ call: ResourceConflict
+ url: https://docs.freeclimb.com/reference/error-and-warning-dictionary#108
+ schema:
+ $ref: '#/components/schemas/PlatformError'
+ description: Generic platform status conflict error.
+ error413:
+ content:
+ application/json:
+ example:
+ code: 3
+ call: BadRequestBody
+ url: https://docs.freeclimb.com/reference/error-and-warning-dictionary#3
+ schema:
+ $ref: '#/components/schemas/PlatformError'
+ description: Generic platform status request entity too large.
+ error422:
+ content:
+ application/json:
+ example:
+ code: 9
+ call: Invalid JSON
+ url: https://docs.freeclimb.com/reference/error-and-warning-dictionary#9
+ schema:
+ $ref: '#/components/schemas/PlatformError'
+ description: Generic platform unprocessible entity response.
+ error500:
+ content:
+ application/json:
+ example:
+ code: 0
+ call: Internal Failure
+ url: https://docs.freeclimb.com/reference/error-and-warning-dictionary#0
+ schema:
+ $ref: '#/components/schemas/PlatformError'
+ description: Generic platform internal error.
+ error504:
+ content:
+ application/json:
+ example:
+ code: 0
+ call: Internal Failure
+ url: https://docs.freeclimb.com/reference/error-and-warning-dictionary#0
+ schema:
+ $ref: '#/components/schemas/PlatformError'
+ description: gateway timeout error
schemas:
+ accountId:
+ example: AC0534faec6b32da45f36166674d65b3903f784141
+ pattern: "AC[0-9a-fA-F]{40}"
+ type: string
+ blobId:
+ description: Identifier which can be used to reference this blob in future interations.
+ example: BL88615a9b4ca7e9aad57d9057773fc74268b9caf7
+ pattern: "BL[0-9a-fA-F]{40}"
+ type: string
AccountStatus:
description: "The status of this account. It is one of: active, suspended, or\
\ closed."
@@ -5719,6 +6463,40 @@ components:
\ in response to the `leaveConferenceUrl` attribute."
x-percl-command: RemoveFromConference
x-no-properties: true
+ TTSEngineName:
+ description: The engine to use for the TTS. The complete list of valid values
+ for the engine attribute is shown below.
+ enum:
+ - freeclimb.standard
+ - freeclimb.neural
+ - ElevenLabs
+ type: string
+ x-enum: true
+ x-enum-varnames:
+ - FREECLIMB_STANDARD
+ - FREECLIMB_NEURAL
+ - ELEVEN_LABS
+ x-enum-mapping:
+ - enum: freeclimb.standard
+ varname: FREECLIMB_STANDARD
+ - enum: freeclimb.neural
+ varname: FREECLIMB_NEURAL
+ - enum: ElevenLabs
+ varname: ELEVEN_LABS
+ TTSEngine:
+ properties:
+ name:
+ $ref: '#/components/schemas/TTSEngineName'
+ parameters:
+ additionalProperties: true
+ description: Parameters for the TTS engine. The parameters are specific
+ to the engine and are documented in the engine's documentation.
+ properties: {}
+ type: object
+ x-is-map: true
+ x-is-object: true
+ type: object
+ x-is-object: true
Say:
allOf:
- $ref: '#/components/schemas/PerclCommand'
@@ -5734,6 +6512,8 @@ components:
the accent and pronunciations to be usde for the TTS. The complete list
of valid values for the language attribute is shown below.
type: string
+ engine:
+ $ref: '#/components/schemas/TTSEngine'
loop:
default: 1
description: Number of times the text is said. Specifying '0' causes the
@@ -5745,7 +6525,6 @@ components:
type: boolean
required:
- text
- type: object
description: The `Say` command provides Text-To-Speech (TTS) support. It converts
text to speech and then renders it in a female voice back to the caller. `Say`
is useful in cases where it's difficult to pre-record a prompt for any reason.
@@ -6263,9 +7042,7 @@ components:
shortCode: true
phoneNumber: phoneNumber
campaignId: campaignId
- smsEnabled: true
region: region
- voiceEnabled: true
properties:
capabilities:
$ref: '#/components/schemas/Capabilities'
@@ -6278,17 +7055,6 @@ components:
\ number: +18003608245)."
nullable: true
type: string
- voiceEnabled:
- deprecated: true
- description: Typically set to true for all numbers.
- nullable: true
- type: boolean
- smsEnabled:
- deprecated: true
- description: Indicates whether the phone number can send and receive SMS
- messages.
- nullable: true
- type: boolean
region:
description: The state or province of this phone number.
nullable: true
@@ -6324,9 +7090,7 @@ components:
shortCode: true
phoneNumber: phoneNumber
campaignId: campaignId
- smsEnabled: true
region: region
- voiceEnabled: true
- country: country
capabilities:
voice: true
@@ -6336,9 +7100,7 @@ components:
shortCode: true
phoneNumber: phoneNumber
campaignId: campaignId
- smsEnabled: true
region: region
- voiceEnabled: true
start: 6
pageSize: 2
end: 1
@@ -6386,18 +7148,6 @@ components:
description: Country of this phone number.
nullable: true
type: string
- voiceEnabled:
- deprecated: true
- description: Indicates whether the phone number can handle Calls. Typically
- set to true for all numbers.
- nullable: true
- type: boolean
- smsEnabled:
- deprecated: true
- description: Indication of whether the phone number can handle sending
- and receiving SMS messages. Typically set to true for all numbers.
- nullable: true
- type: boolean
offnet:
description: The offnet field is a boolean representing whether the number
is offnet registered or not. This field will be rendered only for requests
@@ -6420,11 +7170,9 @@ components:
phoneNumberId: phoneNumberId
dateUpdated: dateUpdated
revision: 0
- voiceEnabled: true
accountId: accountId
dateCreated: dateCreated
phoneNumber: phoneNumber
- smsEnabled: true
alias: alias
offnet: true
applicationId: applicationId
@@ -6477,11 +7225,9 @@ components:
phoneNumberId: phoneNumberId
dateUpdated: dateUpdated
revision: 0
- voiceEnabled: true
accountId: accountId
dateCreated: dateCreated
phoneNumber: phoneNumber
- smsEnabled: true
alias: alias
offnet: true
applicationId: applicationId
@@ -6500,11 +7246,9 @@ components:
phoneNumberId: phoneNumberId
dateUpdated: dateUpdated
revision: 0
- voiceEnabled: true
accountId: accountId
dateCreated: dateCreated
phoneNumber: phoneNumber
- smsEnabled: true
alias: alias
offnet: true
applicationId: applicationId
@@ -9045,6 +9789,174 @@ components:
- resourceType
type: object
x-is-object: true
+ CreateBlobRequest:
+ additionalProperties: false
+ example:
+ blob: "{}"
+ alias: alias
+ expiresAt: 2006-01-02T15:04:05.000Z
+ properties:
+ alias:
+ description: Custom identifier for this blob that is unique for the owning
+ account. It will be set to the blobId by default if not provided.
+ maxLength: 64
+ type: string
+ expiresAt:
+ description: An RFC3339 timestamp with millisecond resolution. This timestamp
+ defines the time at which this blob will delete itself. It must not be
+ more than 48 hours in the future and will default to 9 hours in the future
+ if not provided.
+ example: 2006-01-02T15:04:05.000Z
+ type: string
+ blob:
+ type: object
+ x-is-object: true
+ x-is-required: true
+ required:
+ - blob
+ type: object
+ x-is-object: true
+ ModifyBlobRequest:
+ example:
+ blob: "{}"
+ alias: alias
+ properties:
+ blob:
+ type: object
+ x-is-object: true
+ x-is-required: true
+ alias:
+ description: Custom identifier for this blob that is unique for the owning
+ account. It will be set to the blobId by default if not provided.
+ maxLength: 64
+ type: string
+ required:
+ - blob
+ type: object
+ x-is-object: true
+ ReplaceBlobRequest:
+ example:
+ blob: "{}"
+ properties:
+ blob:
+ type: object
+ x-is-object: true
+ x-is-required: true
+ required:
+ - blob
+ type: object
+ x-is-object: true
+ BlobResult:
+ example:
+ accountId: AC0534faec6b32da45f36166674d65b3903f784141
+ dateCreated: 2000-01-23T04:56:07.000+00:00
+ blob: "{}"
+ blobId: BL88615a9b4ca7e9aad57d9057773fc74268b9caf7
+ alias: alias
+ expiresAt: 2000-01-23T04:56:07.000+00:00
+ revision: 7
+ dateUpdated: 2000-01-23T04:56:07.000+00:00
+ properties:
+ blobId:
+ description: Identifier which can be used to reference this blob in future
+ interations.
+ example: BL88615a9b4ca7e9aad57d9057773fc74268b9caf7
+ pattern: "BL[0-9a-fA-F]{40}"
+ type: string
+ accountId:
+ example: AC0534faec6b32da45f36166674d65b3903f784141
+ pattern: "AC[0-9a-fA-F]{40}"
+ type: string
+ alias:
+ description: Custom identifier for this blob that is unique for the owning
+ account. It will be set to the blobId by default if not provided in the
+ creation request.
+ maxLength: 64
+ type: string
+ revision:
+ type: integer
+ dateCreated:
+ description: An RFC3339 timestamp with millisecond resolution. It represents
+ the time this blob was created.
+ format: date-time
+ type: string
+ x-is-date-time: true
+ dateUpdated:
+ description: "An RFC3339 timestamp with millisecond resolution. It represents\
+ \ the time this blob was last modified, which at creation will always\
+ \ equal dateCreated."
+ format: date-time
+ type: string
+ x-is-date-time: true
+ expiresAt:
+ description: An RFC3339 timestamp with millisecond resolution. It represents
+ the time at which this blob will expire and self delete.
+ format: date-time
+ type: string
+ x-is-date-time: true
+ blob:
+ description: Blob content
+ type: object
+ x-is-object: true
+ type: object
+ x-is-object: true
+ BlobListResponse:
+ allOf:
+ - $ref: '#/components/schemas/PaginationModel'
+ - properties:
+ blobs:
+ items:
+ $ref: '#/components/schemas/BlobResult'
+ type: array
+ x-is-list: true
+ type: object
+ example:
+ numPages: 5
+ blobs:
+ - accountId: AC0534faec6b32da45f36166674d65b3903f784141
+ dateCreated: 2000-01-23T04:56:07.000+00:00
+ blob: "{}"
+ blobId: BL88615a9b4ca7e9aad57d9057773fc74268b9caf7
+ alias: alias
+ expiresAt: 2000-01-23T04:56:07.000+00:00
+ revision: 7
+ dateUpdated: 2000-01-23T04:56:07.000+00:00
+ - accountId: AC0534faec6b32da45f36166674d65b3903f784141
+ dateCreated: 2000-01-23T04:56:07.000+00:00
+ blob: "{}"
+ blobId: BL88615a9b4ca7e9aad57d9057773fc74268b9caf7
+ alias: alias
+ expiresAt: 2000-01-23T04:56:07.000+00:00
+ revision: 7
+ dateUpdated: 2000-01-23T04:56:07.000+00:00
+ total: 0
+ nextPageUri: nextPageUri
+ start: 6
+ pageSize: 2
+ end: 1
+ page: 5
+ type: object
+ x-is-object: true
+ x-implements: Pagination
+ PlatformError:
+ description: Standard error structure returned by platform.
+ example:
+ code: 0
+ call: Internal Failure
+ url: https://docs.freeclimb.com/reference/error-and-warning-dictionary#0
+ properties:
+ code:
+ type: integer
+ call:
+ type: string
+ url:
+ format: uri-reference
+ type: string
+ details:
+ type: object
+ x-is-object: true
+ type: object
+ x-is-object: true
AccountResult_allOf_subresourceUris:
description: The list of subresources for this account.
nullable: true
diff --git a/docs/AvailableNumber.md b/docs/AvailableNumber.md
index f1cc6c5f..11fc40dd 100644
--- a/docs/AvailableNumber.md
+++ b/docs/AvailableNumber.md
@@ -7,8 +7,6 @@ Name | Type | Description | Notes
**Capabilities** | [**Capabilities**](Capabilities.md) | | [optional]
**CampaignId** | **string** | The campaign ID generated by the campaign registry | [optional]
**PhoneNumber** | **string** | The phone number, in E.164 format (+ country code and phone number: +18003608245). | [optional]
-**VoiceEnabled** | **bool?** | Typically set to true for all numbers. | [optional]
-**SmsEnabled** | **bool?** | Indicates whether the phone number can send and receive SMS messages. | [optional]
**Region** | **string** | The state or province of this phone number. | [optional]
**Country** | **string** | The country of this phone number. | [optional]
diff --git a/docs/BlobListResponse.md b/docs/BlobListResponse.md
new file mode 100644
index 00000000..1e207c86
--- /dev/null
+++ b/docs/BlobListResponse.md
@@ -0,0 +1,17 @@
+# freeclimb.Model.BlobListResponse
+
+## Properties
+
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**Total** | **int?** | Total amount of requested resource. | [optional]
+**Start** | **int?** | Resource index at start of current page | [optional]
+**End** | **int?** | Resource index at end of current page | [optional]
+**Page** | **int?** | Current page | [optional]
+**NumPages** | **int?** | Total number of pages | [optional]
+**PageSize** | **int?** | Number of items per page | [optional]
+**NextPageUri** | **string** | Uri to retrieve the next page of items | [optional]
+**Blobs** | [**List<BlobResult>**](BlobResult.md) | | [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/BlobResult.md b/docs/BlobResult.md
new file mode 100644
index 00000000..a6ce1da1
--- /dev/null
+++ b/docs/BlobResult.md
@@ -0,0 +1,17 @@
+# freeclimb.Model.BlobResult
+
+## Properties
+
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**BlobId** | **string** | Identifier which can be used to reference this blob in future interations. | [optional]
+**AccountId** | **string** | | [optional]
+**Alias** | **string** | Custom identifier for this blob that is unique for the owning account. It will be set to the blobId by default if not provided in the creation request. | [optional]
+**Revision** | **int** | | [optional]
+**DateCreated** | **DateTime** | An RFC3339 timestamp with millisecond resolution. It represents the time this blob was created. | [optional]
+**DateUpdated** | **DateTime** | An RFC3339 timestamp with millisecond resolution. It represents the time this blob was last modified, which at creation will always equal dateCreated. | [optional]
+**ExpiresAt** | **DateTime** | An RFC3339 timestamp with millisecond resolution. It represents the time at which this blob will expire and self delete. | [optional]
+**Blob** | **Object** | Blob content | [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/CreateBlobRequest.md b/docs/CreateBlobRequest.md
new file mode 100644
index 00000000..53577d35
--- /dev/null
+++ b/docs/CreateBlobRequest.md
@@ -0,0 +1,12 @@
+# freeclimb.Model.CreateBlobRequest
+
+## Properties
+
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**Alias** | **string** | Custom identifier for this blob that is unique for the owning account. It will be set to the blobId by default if not provided. | [optional]
+**ExpiresAt** | **string** | An RFC3339 timestamp with millisecond resolution. This timestamp defines the time at which this blob will delete itself. It must not be more than 48 hours in the future and will default to 9 hours in the future if not provided. | [optional]
+**Blob** | **Object** | |
+
+[[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/DefaultApi.md b/docs/DefaultApi.md
index 662cc209..c73af291 100644
--- a/docs/DefaultApi.md
+++ b/docs/DefaultApi.md
@@ -8,12 +8,14 @@ All URIs are relative to *https://www.freeclimb.com/apiserver*
| [**CreateAConference**](DefaultApi.md#createaconference) | **POST** /Accounts/{accountId}/Conferences | Create a Conference |
| [**CreateAQueue**](DefaultApi.md#createaqueue) | **POST** /Accounts/{accountId}/Queues | Create a Queue |
| [**CreateAnApplication**](DefaultApi.md#createanapplication) | **POST** /Accounts/{accountId}/Applications | Create an application |
+| [**CreateBlob**](DefaultApi.md#createblob) | **POST** /Accounts/{accountId}/Blobs | Create a Blob |
| [**CreateExport**](DefaultApi.md#createexport) | **POST** /Accounts/{accountId}/Exports | Create an Export |
| [**CreateKnowledgeBaseCompletion**](DefaultApi.md#createknowledgebasecompletion) | **POST** /Accounts/{accountId}/KnowledgeBases/{knowledgeBaseId}/Completion | Query the knowledge base |
| [**DeleteARecording**](DefaultApi.md#deletearecording) | **DELETE** /Accounts/{accountId}/Recordings/{recordingId} | Delete a Recording |
| [**DeleteAnApplication**](DefaultApi.md#deleteanapplication) | **DELETE** /Accounts/{accountId}/Applications/{applicationId} | Delete an application |
| [**DeleteAnExport**](DefaultApi.md#deleteanexport) | **DELETE** /Accounts/{accountId}/Exports/{exportId} | Delete an Export |
| [**DeleteAnIncomingNumber**](DefaultApi.md#deleteanincomingnumber) | **DELETE** /Accounts/{accountId}/IncomingPhoneNumbers/{phoneNumberId} | Delete an Incoming Number |
+| [**DeleteBlob**](DefaultApi.md#deleteblob) | **DELETE** /Accounts/{accountId}/Blobs/{blobId} | Delete Blob |
| [**DequeueAMember**](DefaultApi.md#dequeueamember) | **POST** /Accounts/{accountId}/Queues/{queueId}/Members/{callId} | Dequeue a Member |
| [**DequeueHeadMember**](DefaultApi.md#dequeueheadmember) | **POST** /Accounts/{accountId}/Queues/{queueId}/Members/Front | Dequeue Head Member |
| [**DownloadARecordingFile**](DefaultApi.md#downloadarecordingfile) | **GET** /Accounts/{accountId}/Recordings/{recordingId}/Download | Download a Recording File |
@@ -30,6 +32,7 @@ All URIs are relative to *https://www.freeclimb.com/apiserver*
| [**GetAnExport**](DefaultApi.md#getanexport) | **GET** /Accounts/{accountId}/Exports/{exportId} | Get an Export |
| [**GetAnIncomingNumber**](DefaultApi.md#getanincomingnumber) | **GET** /Accounts/{accountId}/IncomingPhoneNumbers/{phoneNumberId} | Get an Incoming Number |
| [**GetAnSmsMessage**](DefaultApi.md#getansmsmessage) | **GET** /Accounts/{accountId}/Messages/{messageId} | Get an SMS Message |
+| [**GetBlob**](DefaultApi.md#getblob) | **GET** /Accounts/{accountId}/Blobs/{blobId} | Get Blob |
| [**GetHeadMember**](DefaultApi.md#getheadmember) | **GET** /Accounts/{accountId}/Queues/{queueId}/Members/Front | Get Head Member |
| [**GetTenDLCSmsBrand**](DefaultApi.md#gettendlcsmsbrand) | **GET** /Accounts/{accountId}/Messages/10DLC/Brands/{brandId} | Get a 10DLC SMS Brand |
| [**GetTenDLCSmsBrands**](DefaultApi.md#gettendlcsmsbrands) | **GET** /Accounts/{accountId}/Messages/10DLC/Brands | Get list of SMS 10DLC Brands |
@@ -43,6 +46,7 @@ All URIs are relative to *https://www.freeclimb.com/apiserver*
| [**ListAllAccountLogs**](DefaultApi.md#listallaccountlogs) | **GET** /Accounts/{accountId}/Logs | List All Account Logs |
| [**ListApplications**](DefaultApi.md#listapplications) | **GET** /Accounts/{accountId}/Applications | List applications |
| [**ListAvailableNumbers**](DefaultApi.md#listavailablenumbers) | **GET** /AvailablePhoneNumbers | List available numbers |
+| [**ListBlobs**](DefaultApi.md#listblobs) | **GET** /Accounts/{accountId}/Blobs | List Blobs belonging to an account. |
| [**ListCallLogs**](DefaultApi.md#listcalllogs) | **GET** /Accounts/{accountId}/Calls/{callId}/Logs | List Call Logs |
| [**ListCallRecordings**](DefaultApi.md#listcallrecordings) | **GET** /Accounts/{accountId}/Calls/{callId}/Recordings | List Call Recordings |
| [**ListCalls**](DefaultApi.md#listcalls) | **GET** /Accounts/{accountId}/Calls | List Calls |
@@ -56,7 +60,9 @@ All URIs are relative to *https://www.freeclimb.com/apiserver*
| [**ListSmsMessages**](DefaultApi.md#listsmsmessages) | **GET** /Accounts/{accountId}/Messages | List SMS Messages |
| [**MakeACall**](DefaultApi.md#makeacall) | **POST** /Accounts/{accountId}/Calls | Make a Call |
| [**MakeAWebrtcJwt**](DefaultApi.md#makeawebrtcjwt) | **POST** /Accounts/{accountId}/Calls/WebRTC/Token | Make a JWT for WebRTC calling |
+| [**ModifyBlob**](DefaultApi.md#modifyblob) | **PATCH** /Accounts/{accountId}/Blobs/{blobId} | Modify Blob |
| [**RemoveAParticipant**](DefaultApi.md#removeaparticipant) | **DELETE** /Accounts/{accountId}/Conferences/{conferenceId}/Participants/{callId} | Remove a Participant |
+| [**ReplaceBlob**](DefaultApi.md#replaceblob) | **PUT** /Accounts/{accountId}/Blobs/{blobId} | Replace Blob |
| [**SendAnSmsMessage**](DefaultApi.md#sendansmsmessage) | **POST** /Accounts/{accountId}/Messages | Send an SMS Message |
| [**StreamARecordingFile**](DefaultApi.md#streamarecordingfile) | **GET** /Accounts/{accountId}/Recordings/{recordingId}/Stream | Stream a Recording File |
| [**UpdateAConference**](DefaultApi.md#updateaconference) | **POST** /Accounts/{accountId}/Conferences/{conferenceId} | Update a Conference |
@@ -455,6 +461,110 @@ catch (ApiException e)
[[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)
+
+# **CreateBlob**
+> BlobResult CreateBlob (CreateBlobRequest createBlobRequest)
+
+Create a Blob
+
+Create a new Blob belonging to the requesting account.
+
+### Example
+```csharp
+using System.Collections.Generic;
+using System.Diagnostics;
+using freeclimb.Api;
+using freeclimb.Client;
+using freeclimb.Model;
+
+namespace Example
+{
+ public class CreateBlobExample
+ {
+ public static void Main()
+ {
+ Configuration config = new Configuration();
+ config.BasePath = "https://www.freeclimb.com/apiserver";
+ // Configure HTTP basic authorization: fc
+ config.Username = "YOUR_USERNAME";
+ config.Password = "YOUR_PASSWORD";
+
+ var apiInstance = new DefaultApi(config);
+
+ var createBlobRequest = new CreateBlobRequest(); // CreateBlobRequest | An object defining a new blob. A request body must be provided but the blob may be empty.
+
+ try
+ {
+ // Create a Blob
+ BlobResult result = apiInstance.CreateBlob(createBlobRequest);
+ Debug.WriteLine(result);
+ }
+ catch (ApiException e)
+ {
+ Debug.Print("Exception when calling DefaultApi.CreateBlob: " + e.Message);
+ Debug.Print("Status Code: " + e.ErrorCode);
+ Debug.Print(e.StackTrace);
+ }
+ }
+ }
+}
+```
+
+#### Using the CreateBlobWithHttpInfo variant
+This returns an ApiResponse object which contains the response data, status code and headers.
+
+```csharp
+try
+{
+ // Create a Blob
+ ApiResponse response = apiInstance.CreateBlobWithHttpInfo(createBlobRequest);
+ Debug.Write("Status Code: " + response.StatusCode);
+ Debug.Write("Response Headers: " + response.Headers);
+ Debug.Write("Response Body: " + response.Data);
+}
+catch (ApiException e)
+{
+ Debug.Print("Exception when calling DefaultApi.CreateBlobWithHttpInfo: " + e.Message);
+ Debug.Print("Status Code: " + e.ErrorCode);
+ Debug.Print(e.StackTrace);
+}
+```
+
+### Parameters
+
+| Name | Type | Description | Notes |
+|------|------|-------------|-------|
+
+
+| **createBlobRequest** | [**CreateBlobRequest**](CreateBlobRequest.md) | An object defining a new blob. A request body must be provided but the blob may be empty. | |
+
+
+### Return type
+
+[**BlobResult**](BlobResult.md)
+
+### Authorization
+
+[fc](../README.md#fc)
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json
+
+
+### HTTP response details
+| Status code | Description | Response headers |
+|-------------|-------------|------------------|
+| **201** | Successful creation of a new blob. | - |
+| **400** | Generic platform bad request. | - |
+| **409** | A blob with the provided alias already exists oln the requesting account and so this new blob is rejected as there cannot be duplicate alises. | - |
+| **413** | The blob exceeded one of the size limits. Either it itself is too large or it would push the total sum of all blobs over the account's limit. | - |
+| **422** | Generic platform unprocessible entity response. | - |
+| **500** | Generic platform internal 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)
+
# **CreateExport**
> ExportResult CreateExport (ExportRequest? exportRequest = null)
@@ -1025,6 +1135,110 @@ void (empty response body)
[[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)
+
+# **DeleteBlob**
+> BlobResult DeleteBlob (string blobId)
+
+Delete Blob
+
+Deletes a blob or specific keys from a blob. If no keys are specified in the request body, the entire blob is deleted (returns 204). If specific keys are provided, only those keys are removed and the remaining blob is returned (returns 200).
+
+### Example
+```csharp
+using System.Collections.Generic;
+using System.Diagnostics;
+using freeclimb.Api;
+using freeclimb.Client;
+using freeclimb.Model;
+
+namespace Example
+{
+ public class DeleteBlobExample
+ {
+ public static void Main()
+ {
+ Configuration config = new Configuration();
+ config.BasePath = "https://www.freeclimb.com/apiserver";
+ // Configure HTTP basic authorization: fc
+ config.Username = "YOUR_USERNAME";
+ config.Password = "YOUR_PASSWORD";
+
+ var apiInstance = new DefaultApi(config);
+
+ var blobId = "blobId_example"; // string | String that uniquely identifies this Blob resource.
+
+ try
+ {
+ // Delete Blob
+ BlobResult result = apiInstance.DeleteBlob(blobId);
+ Debug.WriteLine(result);
+ }
+ catch (ApiException e)
+ {
+ Debug.Print("Exception when calling DefaultApi.DeleteBlob: " + e.Message);
+ Debug.Print("Status Code: " + e.ErrorCode);
+ Debug.Print(e.StackTrace);
+ }
+ }
+ }
+}
+```
+
+#### Using the DeleteBlobWithHttpInfo variant
+This returns an ApiResponse object which contains the response data, status code and headers.
+
+```csharp
+try
+{
+ // Delete Blob
+ ApiResponse response = apiInstance.DeleteBlobWithHttpInfo(blobId);
+ Debug.Write("Status Code: " + response.StatusCode);
+ Debug.Write("Response Headers: " + response.Headers);
+ Debug.Write("Response Body: " + response.Data);
+}
+catch (ApiException e)
+{
+ Debug.Print("Exception when calling DefaultApi.DeleteBlobWithHttpInfo: " + e.Message);
+ Debug.Print("Status Code: " + e.ErrorCode);
+ Debug.Print(e.StackTrace);
+}
+```
+
+### Parameters
+
+| Name | Type | Description | Notes |
+|------|------|-------------|-------|
+
+
+| **blobId** | **string** | String that uniquely identifies this Blob resource. | |
+
+
+### Return type
+
+[**BlobResult**](BlobResult.md)
+
+### Authorization
+
+[fc](../README.md#fc)
+
+### HTTP request headers
+
+ - **Content-Type**: Not defined
+ - **Accept**: application/json
+
+
+### HTTP response details
+| Status code | Description | Response headers |
+|-------------|-------------|------------------|
+| **200** | Blob keys deleted successfully, remaining blob returned. | - |
+| **204** | Successful operation | - |
+| **404** | Generic platform not found error. | - |
+| **422** | Generic platform unprocessible entity response. | - |
+| **500** | Generic platform internal error. | - |
+| **504** | gateway timeout 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)
+
# **DequeueAMember**
> QueueMember DequeueAMember (string queueId, string callId)
@@ -1310,13 +1524,13 @@ catch (ApiException e)
### HTTP request headers
- **Content-Type**: Not defined
- - **Accept**: audio/x-wav
+ - **Accept**: audio/wav
### HTTP response details
| Status code | Description | Response headers |
|-------------|-------------|------------------|
-| **200** | Download a Recording file represented with audio/x-wav mime-type | - |
+| **200** | Download a Recording file represented with audio/wav mime-type | - |
[[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)
@@ -2582,6 +2796,108 @@ catch (ApiException e)
[[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)
+
+# **GetBlob**
+> BlobResult GetBlob (string blobId)
+
+Get Blob
+
+Retrieves a specified blob
+
+### Example
+```csharp
+using System.Collections.Generic;
+using System.Diagnostics;
+using freeclimb.Api;
+using freeclimb.Client;
+using freeclimb.Model;
+
+namespace Example
+{
+ public class GetBlobExample
+ {
+ public static void Main()
+ {
+ Configuration config = new Configuration();
+ config.BasePath = "https://www.freeclimb.com/apiserver";
+ // Configure HTTP basic authorization: fc
+ config.Username = "YOUR_USERNAME";
+ config.Password = "YOUR_PASSWORD";
+
+ var apiInstance = new DefaultApi(config);
+
+ var blobId = "blobId_example"; // string | String that uniquely identifies this Blob resource.
+
+ try
+ {
+ // Get Blob
+ BlobResult result = apiInstance.GetBlob(blobId);
+ Debug.WriteLine(result);
+ }
+ catch (ApiException e)
+ {
+ Debug.Print("Exception when calling DefaultApi.GetBlob: " + e.Message);
+ Debug.Print("Status Code: " + e.ErrorCode);
+ Debug.Print(e.StackTrace);
+ }
+ }
+ }
+}
+```
+
+#### Using the GetBlobWithHttpInfo variant
+This returns an ApiResponse object which contains the response data, status code and headers.
+
+```csharp
+try
+{
+ // Get Blob
+ ApiResponse response = apiInstance.GetBlobWithHttpInfo(blobId);
+ Debug.Write("Status Code: " + response.StatusCode);
+ Debug.Write("Response Headers: " + response.Headers);
+ Debug.Write("Response Body: " + response.Data);
+}
+catch (ApiException e)
+{
+ Debug.Print("Exception when calling DefaultApi.GetBlobWithHttpInfo: " + e.Message);
+ Debug.Print("Status Code: " + e.ErrorCode);
+ Debug.Print(e.StackTrace);
+}
+```
+
+### Parameters
+
+| Name | Type | Description | Notes |
+|------|------|-------------|-------|
+
+
+| **blobId** | **string** | String that uniquely identifies this Blob resource. | |
+
+
+### Return type
+
+[**BlobResult**](BlobResult.md)
+
+### Authorization
+
+[fc](../README.md#fc)
+
+### HTTP request headers
+
+ - **Content-Type**: Not defined
+ - **Accept**: application/json
+
+
+### HTTP response details
+| Status code | Description | Response headers |
+|-------------|-------------|------------------|
+| **200** | Retrieve a Blob. | - |
+| **404** | Generic platform not found error. | - |
+| **500** | Generic platform internal error. | - |
+| **504** | gateway timeout 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)
+
# **GetHeadMember**
> QueueMember GetHeadMember (string queueId)
@@ -3858,6 +4174,101 @@ catch (ApiException e)
[[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)
+
+# **ListBlobs**
+> BlobListResponse ListBlobs ()
+
+List Blobs belonging to an account.
+
+List Blobs belonging to an account. Results are returned in paginated lists mirroring other listing features in the API.
+
+### Example
+```csharp
+using System.Collections.Generic;
+using System.Diagnostics;
+using freeclimb.Api;
+using freeclimb.Client;
+using freeclimb.Model;
+
+namespace Example
+{
+ public class ListBlobsExample
+ {
+ public static void Main()
+ {
+ Configuration config = new Configuration();
+ config.BasePath = "https://www.freeclimb.com/apiserver";
+ // Configure HTTP basic authorization: fc
+ config.Username = "YOUR_USERNAME";
+ config.Password = "YOUR_PASSWORD";
+
+ var apiInstance = new DefaultApi(config);
+
+ try
+ {
+ // List Blobs belonging to an account.
+ BlobListResponse result = apiInstance.ListBlobs();
+ Debug.WriteLine(result);
+ }
+ catch (ApiException e)
+ {
+ Debug.Print("Exception when calling DefaultApi.ListBlobs: " + e.Message);
+ Debug.Print("Status Code: " + e.ErrorCode);
+ Debug.Print(e.StackTrace);
+ }
+ }
+ }
+}
+```
+
+#### Using the ListBlobsWithHttpInfo variant
+This returns an ApiResponse object which contains the response data, status code and headers.
+
+```csharp
+try
+{
+ // List Blobs belonging to an account.
+ ApiResponse response = apiInstance.ListBlobsWithHttpInfo();
+ Debug.Write("Status Code: " + response.StatusCode);
+ Debug.Write("Response Headers: " + response.Headers);
+ Debug.Write("Response Body: " + response.Data);
+}
+catch (ApiException e)
+{
+ Debug.Print("Exception when calling DefaultApi.ListBlobsWithHttpInfo: " + e.Message);
+ Debug.Print("Status Code: " + e.ErrorCode);
+ Debug.Print(e.StackTrace);
+}
+```
+
+### Parameters
+
+
+
+### Return type
+
+[**BlobListResponse**](BlobListResponse.md)
+
+### Authorization
+
+[fc](../README.md#fc)
+
+### HTTP request headers
+
+ - **Content-Type**: Not defined
+ - **Accept**: application/json
+
+
+### HTTP response details
+| Status code | Description | Response headers |
+|-------------|-------------|------------------|
+| **200** | Single page of blob list results. | - |
+| **400** | Generic platform bad request. | - |
+| **500** | Generic platform internal error. | - |
+| **504** | gateway timeout 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)
+
# **ListCallLogs**
> LogList ListCallLogs (string callId)
@@ -4506,7 +4917,7 @@ catch (ApiException e)
# **ListIncomingNumbers**
-> IncomingNumberList ListIncomingNumbers (string? phoneNumber = null, string? alias = null, string? region = null, string? country = null, string? applicationId = null, bool? hasApplication = null, bool? voiceEnabled = null, bool? smsEnabled = null, bool? hasCampaign = null, bool? capabilitiesVoice = null, bool? capabilitiesSms = null, bool? capabilitiesTollFree = null, bool? capabilitiesTenDLC = null, bool? capabilitiesShortCode = null, string? tfnCampaignId = null, bool? offnet = null)
+> IncomingNumberList ListIncomingNumbers (string? phoneNumber = null, string? alias = null, string? region = null, string? country = null, string? applicationId = null, bool? hasApplication = null, bool? hasCampaign = null, bool? capabilitiesVoice = null, bool? capabilitiesSms = null, bool? capabilitiesTollFree = null, bool? capabilitiesTenDLC = null, bool? capabilitiesShortCode = null, string? tfnCampaignId = null, bool? offnet = null)
List Incoming Numbers
@@ -4544,10 +4955,6 @@ namespace Example
var hasApplication = false; // bool? | Indication of whether the phone number has an application linked to it. (optional) (default to false)
- var voiceEnabled = true; // bool? | Indicates whether the phone number can handle Calls. Typically set to true for all numbers. (optional) (default to true)
-
- var smsEnabled = true; // bool? | Indication of whether the phone number can handle sending and receiving SMS messages. Typically set to true for all numbers. (optional) (default to true)
-
var hasCampaign = true; // bool? | Indication of whether the phone number has a campaign associated with it (optional)
var capabilitiesVoice = true; // bool? | (optional)
@@ -4567,7 +4974,7 @@ namespace Example
try
{
// List Incoming Numbers
- IncomingNumberList result = apiInstance.ListIncomingNumbers(phoneNumber, alias, region, country, applicationId, hasApplication, voiceEnabled, smsEnabled, hasCampaign, capabilitiesVoice, capabilitiesSms, capabilitiesTollFree, capabilitiesTenDLC, capabilitiesShortCode, tfnCampaignId, offnet);
+ IncomingNumberList result = apiInstance.ListIncomingNumbers(phoneNumber, alias, region, country, applicationId, hasApplication, hasCampaign, capabilitiesVoice, capabilitiesSms, capabilitiesTollFree, capabilitiesTenDLC, capabilitiesShortCode, tfnCampaignId, offnet);
Debug.WriteLine(result);
}
catch (ApiException e)
@@ -4588,7 +4995,7 @@ This returns an ApiResponse object which contains the response data, status code
try
{
// List Incoming Numbers
- ApiResponse response = apiInstance.ListIncomingNumbersWithHttpInfo(phoneNumber, alias, region, country, applicationId, hasApplication, voiceEnabled, smsEnabled, hasCampaign, capabilitiesVoice, capabilitiesSms, capabilitiesTollFree, capabilitiesTenDLC, capabilitiesShortCode, tfnCampaignId, offnet);
+ ApiResponse response = apiInstance.ListIncomingNumbersWithHttpInfo(phoneNumber, alias, region, country, applicationId, hasApplication, hasCampaign, capabilitiesVoice, capabilitiesSms, capabilitiesTollFree, capabilitiesTenDLC, capabilitiesShortCode, tfnCampaignId, offnet);
Debug.Write("Status Code: " + response.StatusCode);
Debug.Write("Response Headers: " + response.Headers);
Debug.Write("Response Body: " + response.Data);
@@ -4619,10 +5026,6 @@ catch (ApiException e)
| **hasApplication** | **bool?** | Indication of whether the phone number has an application linked to it. | [optional] [default to false] |
-| **voiceEnabled** | **bool?** | Indicates whether the phone number can handle Calls. Typically set to true for all numbers. | [optional] [default to true] |
-
-| **smsEnabled** | **bool?** | Indication of whether the phone number can handle sending and receiving SMS messages. Typically set to true for all numbers. | [optional] [default to true] |
-
| **hasCampaign** | **bool?** | Indication of whether the phone number has a campaign associated with it | [optional] |
| **capabilitiesVoice** | **bool?** | | [optional] |
@@ -5291,6 +5694,113 @@ catch (ApiException e)
[[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)
+
+# **ModifyBlob**
+> BlobResult ModifyBlob (string blobId, ModifyBlobRequest modifyBlobRequest)
+
+Modify Blob
+
+Modifys a pre existing blob by either adding new fields, or modifying existing fields
+
+### Example
+```csharp
+using System.Collections.Generic;
+using System.Diagnostics;
+using freeclimb.Api;
+using freeclimb.Client;
+using freeclimb.Model;
+
+namespace Example
+{
+ public class ModifyBlobExample
+ {
+ public static void Main()
+ {
+ Configuration config = new Configuration();
+ config.BasePath = "https://www.freeclimb.com/apiserver";
+ // Configure HTTP basic authorization: fc
+ config.Username = "YOUR_USERNAME";
+ config.Password = "YOUR_PASSWORD";
+
+ var apiInstance = new DefaultApi(config);
+
+ var blobId = "blobId_example"; // string | String that uniquely identifies this Blob resource.
+
+ var modifyBlobRequest = new ModifyBlobRequest(); // ModifyBlobRequest | Request body to specify keys to modify. Or new keys to add onto the already existing blob
+
+ try
+ {
+ // Modify Blob
+ BlobResult result = apiInstance.ModifyBlob(blobId, modifyBlobRequest);
+ Debug.WriteLine(result);
+ }
+ catch (ApiException e)
+ {
+ Debug.Print("Exception when calling DefaultApi.ModifyBlob: " + e.Message);
+ Debug.Print("Status Code: " + e.ErrorCode);
+ Debug.Print(e.StackTrace);
+ }
+ }
+ }
+}
+```
+
+#### Using the ModifyBlobWithHttpInfo variant
+This returns an ApiResponse object which contains the response data, status code and headers.
+
+```csharp
+try
+{
+ // Modify Blob
+ ApiResponse response = apiInstance.ModifyBlobWithHttpInfo(blobId, modifyBlobRequest);
+ Debug.Write("Status Code: " + response.StatusCode);
+ Debug.Write("Response Headers: " + response.Headers);
+ Debug.Write("Response Body: " + response.Data);
+}
+catch (ApiException e)
+{
+ Debug.Print("Exception when calling DefaultApi.ModifyBlobWithHttpInfo: " + e.Message);
+ Debug.Print("Status Code: " + e.ErrorCode);
+ Debug.Print(e.StackTrace);
+}
+```
+
+### Parameters
+
+| Name | Type | Description | Notes |
+|------|------|-------------|-------|
+
+
+| **blobId** | **string** | String that uniquely identifies this Blob resource. | |
+
+| **modifyBlobRequest** | [**ModifyBlobRequest**](ModifyBlobRequest.md) | Request body to specify keys to modify. Or new keys to add onto the already existing blob | |
+
+
+### Return type
+
+[**BlobResult**](BlobResult.md)
+
+### Authorization
+
+[fc](../README.md#fc)
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json
+
+
+### HTTP response details
+| Status code | Description | Response headers |
+|-------------|-------------|------------------|
+| **200** | Blob keys successfully modified, updated blob returned. | - |
+| **404** | Generic platform not found error. | - |
+| **409** | Generic platform status conflict error. | - |
+| **413** | Generic platform status request entity too large. | - |
+| **500** | Generic platform internal 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)
+
# **RemoveAParticipant**
> void RemoveAParticipant (string conferenceId, string callId)
@@ -5388,6 +5898,113 @@ void (empty response body)
[[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)
+
+# **ReplaceBlob**
+> BlobResult ReplaceBlob (string blobId, ReplaceBlobRequest replaceBlobRequest)
+
+Replace Blob
+
+Replaces the blob content with the provided values.
+
+### Example
+```csharp
+using System.Collections.Generic;
+using System.Diagnostics;
+using freeclimb.Api;
+using freeclimb.Client;
+using freeclimb.Model;
+
+namespace Example
+{
+ public class ReplaceBlobExample
+ {
+ public static void Main()
+ {
+ Configuration config = new Configuration();
+ config.BasePath = "https://www.freeclimb.com/apiserver";
+ // Configure HTTP basic authorization: fc
+ config.Username = "YOUR_USERNAME";
+ config.Password = "YOUR_PASSWORD";
+
+ var apiInstance = new DefaultApi(config);
+
+ var blobId = "blobId_example"; // string | String that uniquely identifies this Blob resource.
+
+ var replaceBlobRequest = new ReplaceBlobRequest(); // ReplaceBlobRequest | JSON object containing blob key the contents of which will be used to override the enitre blob contents.
+
+ try
+ {
+ // Replace Blob
+ BlobResult result = apiInstance.ReplaceBlob(blobId, replaceBlobRequest);
+ Debug.WriteLine(result);
+ }
+ catch (ApiException e)
+ {
+ Debug.Print("Exception when calling DefaultApi.ReplaceBlob: " + e.Message);
+ Debug.Print("Status Code: " + e.ErrorCode);
+ Debug.Print(e.StackTrace);
+ }
+ }
+ }
+}
+```
+
+#### Using the ReplaceBlobWithHttpInfo variant
+This returns an ApiResponse object which contains the response data, status code and headers.
+
+```csharp
+try
+{
+ // Replace Blob
+ ApiResponse response = apiInstance.ReplaceBlobWithHttpInfo(blobId, replaceBlobRequest);
+ Debug.Write("Status Code: " + response.StatusCode);
+ Debug.Write("Response Headers: " + response.Headers);
+ Debug.Write("Response Body: " + response.Data);
+}
+catch (ApiException e)
+{
+ Debug.Print("Exception when calling DefaultApi.ReplaceBlobWithHttpInfo: " + e.Message);
+ Debug.Print("Status Code: " + e.ErrorCode);
+ Debug.Print(e.StackTrace);
+}
+```
+
+### Parameters
+
+| Name | Type | Description | Notes |
+|------|------|-------------|-------|
+
+
+| **blobId** | **string** | String that uniquely identifies this Blob resource. | |
+
+| **replaceBlobRequest** | [**ReplaceBlobRequest**](ReplaceBlobRequest.md) | JSON object containing blob key the contents of which will be used to override the enitre blob contents. | |
+
+
+### Return type
+
+[**BlobResult**](BlobResult.md)
+
+### Authorization
+
+[fc](../README.md#fc)
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json
+
+
+### HTTP response details
+| Status code | Description | Response headers |
+|-------------|-------------|------------------|
+| **200** | Replaces all keys in blob with those provided. | - |
+| **404** | Generic platform not found error. | - |
+| **409** | Generic platform status conflict error. | - |
+| **413** | Generic platform status request entity too large. | - |
+| **500** | Generic platform internal 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)
+
# **SendAnSmsMessage**
> MessageResult SendAnSmsMessage (MessageRequest messageRequest)
@@ -5572,13 +6189,13 @@ catch (ApiException e)
### HTTP request headers
- **Content-Type**: Not defined
- - **Accept**: audio/x-wav
+ - **Accept**: audio/wav
### HTTP response details
| Status code | Description | Response headers |
|-------------|-------------|------------------|
-| **200** | Streaming a Recording represented with audio/x-wav mime-type | - |
+| **200** | Streaming a Recording represented with audio/wav mime-type | - |
[[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/IncomingNumberResult.md b/docs/IncomingNumberResult.md
index 1324253d..c8779506 100644
--- a/docs/IncomingNumberResult.md
+++ b/docs/IncomingNumberResult.md
@@ -17,8 +17,6 @@ Name | Type | Description | Notes
**Alias** | **string** | Description for this phone number. Typically the conventionally-formatted version of the phone number. | [optional]
**Region** | **string** | State or province of this phone number. | [optional]
**Country** | **string** | Country of this phone number. | [optional]
-**VoiceEnabled** | **bool?** | Indicates whether the phone number can handle Calls. Typically set to true for all numbers. | [optional]
-**SmsEnabled** | **bool?** | Indication of whether the phone number can handle sending and receiving SMS messages. Typically set to true for all numbers. | [optional]
**Offnet** | **bool?** | The offnet field is a boolean representing whether the number is offnet registered or not. This field will be rendered only for requests to the IncomingPhone number resource. | [optional]
**Tfn** | [**TFN**](TFN.md) | | [optional]
diff --git a/docs/ModifyBlobRequest.md b/docs/ModifyBlobRequest.md
new file mode 100644
index 00000000..811f5a08
--- /dev/null
+++ b/docs/ModifyBlobRequest.md
@@ -0,0 +1,11 @@
+# freeclimb.Model.ModifyBlobRequest
+
+## Properties
+
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**Blob** | **Object** | |
+**Alias** | **string** | Custom identifier for this blob that is unique for the owning account. It will be set to the blobId by default if not provided. | [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/PlatformError.md b/docs/PlatformError.md
new file mode 100644
index 00000000..ec40332c
--- /dev/null
+++ b/docs/PlatformError.md
@@ -0,0 +1,14 @@
+# freeclimb.Model.PlatformError
+
+Standard error structure returned by platform.
+## Properties
+
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**Code** | **int** | | [optional]
+**Call** | **string** | | [optional]
+**Url** | **string** | | [optional]
+**Details** | **Object** | | [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/ReplaceBlobRequest.md b/docs/ReplaceBlobRequest.md
new file mode 100644
index 00000000..8d897917
--- /dev/null
+++ b/docs/ReplaceBlobRequest.md
@@ -0,0 +1,10 @@
+# freeclimb.Model.ReplaceBlobRequest
+
+## Properties
+
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**Blob** | **Object** | |
+
+[[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/Say.md b/docs/Say.md
index 8d13ee85..0f06cf00 100644
--- a/docs/Say.md
+++ b/docs/Say.md
@@ -8,6 +8,7 @@ Name | Type | Description | Notes
**Command** | **string** | Name of PerCL Command (this is automatically derived from mapping configuration and should not be manually supplied in any arguments) | [optional]
**Text** | **string** | The message to be played to the caller using TTS. The size of the string is limited to 4 KB (or 4,096 bytes). An empty string will cause the command to be skipped. |
**Language** | **string** | Language and (by implication) the locale to use. This implies the accent and pronunciations to be usde for the TTS. The complete list of valid values for the language attribute is shown below. | [optional]
+**Engine** | [**TTSEngine**](TTSEngine.md) | | [optional]
**Loop** | **int** | Number of times the text is said. Specifying '0' causes the `Say` action to loop until the Call is hung up. | [optional] [default to 1]
**PrivacyMode** | **bool** | Parameter `privacyMode` will not log the `text` as required by PCI compliance. | [optional]
diff --git a/docs/TTSEngine.md b/docs/TTSEngine.md
new file mode 100644
index 00000000..f59d1575
--- /dev/null
+++ b/docs/TTSEngine.md
@@ -0,0 +1,11 @@
+# freeclimb.Model.TTSEngine
+
+## Properties
+
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**Name** | **TTSEngineName** | | [optional]
+**Parameters** | **Dictionary<string, Object>** | Parameters for the TTS engine. The parameters are specific to the engine and are documented in the engine's documentation. | [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/TTSEngineName.md b/docs/TTSEngineName.md
new file mode 100644
index 00000000..0c40b5a8
--- /dev/null
+++ b/docs/TTSEngineName.md
@@ -0,0 +1,13 @@
+# freeclimb.Enums.TTSEngineName
+
+The engine to use for the TTS. The complete list of valid values for the engine attribute is shown below.
+## Properties
+
+Name | Value | Notes
+------------ | ------------- | -------------
+**FREECLIMB_STANDARD** | freeclimb.standard | Represented in C# as 1
+**FREECLIMB_NEURAL** | freeclimb.neural | Represented in C# as 2
+**ELEVEN_LABS** | ElevenLabs | Represented in C# as 3
+
+[[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/freeclimb.sln b/freeclimb.sln
index 9bf5f551..19b9d34c 100644
--- a/freeclimb.sln
+++ b/freeclimb.sln
@@ -2,7 +2,7 @@ Microsoft Visual Studio Solution File, Format Version 12.00
# Visual Studio 2012
VisualStudioVersion = 12.0.0.0
MinimumVisualStudioVersion = 10.0.0.1
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "freeclimb", "src\freeclimb\freeclimb.csproj", "{000BEE0D-B28A-498C-A45D-8343355D4105}"
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "freeclimb", "src\freeclimb\freeclimb.csproj", "{3C0B655F-1836-46E6-9B2B-D21201060C3C}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "freeclimb.Test", "src\freeclimb.Test\freeclimb.Test.csproj", "{19F1DEBC-DE5E-4517-8062-F000CD499087}"
EndProject
@@ -12,10 +12,10 @@ Global
Release|Any CPU = Release|Any CPU
EndGlobalSection
GlobalSection(ProjectConfigurationPlatforms) = postSolution
- {000BEE0D-B28A-498C-A45D-8343355D4105}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
- {000BEE0D-B28A-498C-A45D-8343355D4105}.Debug|Any CPU.Build.0 = Debug|Any CPU
- {000BEE0D-B28A-498C-A45D-8343355D4105}.Release|Any CPU.ActiveCfg = Release|Any CPU
- {000BEE0D-B28A-498C-A45D-8343355D4105}.Release|Any CPU.Build.0 = Release|Any CPU
+ {3C0B655F-1836-46E6-9B2B-D21201060C3C}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {3C0B655F-1836-46E6-9B2B-D21201060C3C}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {3C0B655F-1836-46E6-9B2B-D21201060C3C}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {3C0B655F-1836-46E6-9B2B-D21201060C3C}.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/src/freeclimb.Test/Api/DefaultApiTests.cs b/src/freeclimb.Test/Api/DefaultApiTests.cs
index bf0fa1d3..7a7bbf4b 100644
--- a/src/freeclimb.Test/Api/DefaultApiTests.cs
+++ b/src/freeclimb.Test/Api/DefaultApiTests.cs
@@ -40,8 +40,8 @@ public DefaultApiTests()
{
Configuration config = new Configuration();
config.BasePath = "http://127.0.0.1:4010/";
- config.Username = "TEST-ACCOUNT-ID";
- config.Password = "TEST-API-KEY";
+ config.Username = "AC0123456789abcdefABCDEF0123456789abcdef00";
+ config.Password = "123ABC123ABC123ABC123ABC123ABC123ABCID";
instance = new DefaultApi(config);
}
@@ -107,6 +107,18 @@ public void CreateAnApplicationTest()
Assert.IsAssignableFrom(response);
}
+ ///
+ /// Test CreateBlob
+ ///
+ [Fact]
+ public void CreateBlobTest()
+ {
+ CreateBlobRequest createBlobRequest = createBlobRequestTestValue();
+
+ var response = instance.CreateBlob(createBlobRequest);
+ Assert.IsAssignableFrom(response);
+ }
+
///
/// Test CreateExport
///
@@ -180,6 +192,18 @@ public void DeleteAnIncomingNumberTest()
instance.DeleteAnIncomingNumber(phoneNumberId);
}
+ ///
+ /// Test DeleteBlob
+ ///
+ [Fact]
+ public void DeleteBlobTest()
+ {
+ string blobId = blobIdTestValue();
+
+ var response = instance.DeleteBlob(blobId);
+ Assert.IsAssignableFrom(response);
+ }
+
///
/// Test DequeueAMember
///
@@ -376,6 +400,18 @@ public void GetAnSmsMessageTest()
Assert.IsAssignableFrom(response);
}
+ ///
+ /// Test GetBlob
+ ///
+ [Fact]
+ public void GetBlobTest()
+ {
+ string blobId = blobIdTestValue();
+
+ var response = instance.GetBlob(blobId);
+ Assert.IsAssignableFrom(response);
+ }
+
///
/// Test GetHeadMember
///
@@ -555,6 +591,16 @@ public void ListAvailableNumbersTest()
Assert.IsAssignableFrom(response);
}
+ ///
+ /// Test ListBlobs
+ ///
+ [Fact]
+ public void ListBlobsTest()
+ {
+ var response = instance.ListBlobs();
+ Assert.IsAssignableFrom(response);
+ }
+
///
/// Test ListCallLogs
///
@@ -688,10 +734,6 @@ public void ListIncomingNumbersTest()
bool? hasApplication = hasApplicationTestValue();
- bool? voiceEnabled = voiceEnabledTestValue();
-
- bool? smsEnabled = smsEnabledTestValue();
-
bool? hasCampaign = hasCampaignTestValue();
bool? capabilitiesVoice = capabilitiesVoiceTestValue();
@@ -715,8 +757,6 @@ public void ListIncomingNumbersTest()
country,
applicationId,
hasApplication,
- voiceEnabled,
- smsEnabled,
hasCampaign,
capabilitiesVoice,
capabilitiesSms,
@@ -834,6 +874,20 @@ public void MakeAWebrtcJwtTest()
Assert.IsAssignableFrom(response);
}
+ ///
+ /// Test ModifyBlob
+ ///
+ [Fact]
+ public void ModifyBlobTest()
+ {
+ string blobId = blobIdTestValue();
+
+ ModifyBlobRequest modifyBlobRequest = modifyBlobRequestTestValue();
+
+ var response = instance.ModifyBlob(blobId, modifyBlobRequest);
+ Assert.IsAssignableFrom(response);
+ }
+
///
/// Test RemoveAParticipant
///
@@ -847,6 +901,20 @@ public void RemoveAParticipantTest()
instance.RemoveAParticipant(conferenceId, callId);
}
+ ///
+ /// Test ReplaceBlob
+ ///
+ [Fact]
+ public void ReplaceBlobTest()
+ {
+ string blobId = blobIdTestValue();
+
+ ReplaceBlobRequest replaceBlobRequest = replaceBlobRequestTestValue();
+
+ var response = instance.ReplaceBlob(blobId, replaceBlobRequest);
+ Assert.IsAssignableFrom(response);
+ }
+
///
/// Test SendAnSmsMessage
///
@@ -1147,6 +1215,21 @@ public void ListAvailableNumbersGetNextPageTest()
Assert.IsAssignableFrom(nextPageResponse);
}
+ ///
+ /// Test ListBlobs
+ ///
+ [Fact]
+ public void ListBlobsGetNextPageTest()
+ {
+ var response = instance.ListBlobs();
+ //Assert.IsType(response);
+ Assert.IsAssignableFrom(response);
+ response.NextPageUri = "/Accounts/{accountId}/Blobs?cursor=1";
+ var nextPageResponse = instance.GetNextPage(response);
+ //Assert.IsType(response);
+ Assert.IsAssignableFrom(nextPageResponse);
+ }
+
///
/// Test ListCallLogs
///
@@ -1311,10 +1394,6 @@ public void ListIncomingNumbersGetNextPageTest()
bool? hasApplication = hasApplicationTestValue();
- bool? voiceEnabled = voiceEnabledTestValue();
-
- bool? smsEnabled = smsEnabledTestValue();
-
bool? hasCampaign = hasCampaignTestValue();
bool? capabilitiesVoice = capabilitiesVoiceTestValue();
@@ -1338,8 +1417,6 @@ public void ListIncomingNumbersGetNextPageTest()
country,
applicationId,
hasApplication,
- voiceEnabled,
- smsEnabled,
hasCampaign,
capabilitiesVoice,
capabilitiesSms,
@@ -1461,22 +1538,22 @@ public void ListSmsMessagesGetNextPageTest()
private string accountIdTestValue()
{
- return "AC0000000000000000000000000000000000000000";
+ return "AC0123456789abcdefABCDEF0123456789abcdef00";
}
private string applicationIdTestValue()
{
- return "AP0000000000000000000000000000000000000000";
+ return "AP0123456789abcdefABCDEF0123456789abcdef00";
}
private string recordingIdTestValue()
{
- return "RC0000000000000000000000000000000000000000";
+ return "RC0123456789abcdefABCDEF0123456789abcdef00";
}
private string callIdTestValue()
{
- return "CA0000000000000000000000000000000000000000";
+ return "CA0123456789abcdefABCDEF0123456789abcdef00";
}
private string phoneNumberTestValue()
@@ -1486,22 +1563,22 @@ private string phoneNumberTestValue()
private string phoneNumberIdTestValue()
{
- return "PN0000000000000000000000000000000000000000";
+ return "PN0123456789abcdefABCDEF0123456789abcdef00";
}
private string queueIdTestValue()
{
- return "QU0000000000000000000000000000000000000000";
+ return "QU0123456789abcdefABCDEF0123456789abcdef00";
}
private string conferenceIdTestValue()
{
- return "CN0000000000000000000000000000000000000000";
+ return "CN0123456789abcdefABCDEF0123456789abcdef00";
}
private string messageIdTestValue()
{
- return "ME0000000000000000000000000000000000000000";
+ return "ME0123456789abcdefABCDEF0123456789abcdef00";
}
private string aliasTestValue()
@@ -1686,8 +1763,6 @@ private AvailableNumberList availableNumberListTestValue()
capabilities,
"TEST-CAMPAIGN",
"+18003608245",
- true,
- true,
"US",
"IL"
);
@@ -1695,8 +1770,6 @@ private AvailableNumberList availableNumberListTestValue()
capabilities,
"TEST-CAMPAIGN",
phoneNumberTestValue(),
- true,
- true,
"US",
"IL"
);
@@ -2070,5 +2143,30 @@ private ExportRequest exportRequestTestValue()
{
return null;
}
+
+ private CreateBlobRequest createBlobRequestTestValue()
+ {
+ return new CreateBlobRequest("test_alias", "test_expiration", new { });
+ }
+
+ private string blobIdTestValue()
+ {
+ return "BL0123456789abcdefABCDEF0123456789abcdef00";
+ }
+
+ private List keyTestArray()
+ {
+ return new List() { "test_key" };
+ }
+
+ private ModifyBlobRequest modifyBlobRequestTestValue()
+ {
+ return new ModifyBlobRequest(new { }, "test_alias");
+ }
+
+ private ReplaceBlobRequest replaceBlobRequestTestValue()
+ {
+ return new ReplaceBlobRequest(new { });
+ }
}
}
diff --git a/src/freeclimb.Test/Enums/TTSEngineNameTests.cs b/src/freeclimb.Test/Enums/TTSEngineNameTests.cs
new file mode 100644
index 00000000..fbecba16
--- /dev/null
+++ b/src/freeclimb.Test/Enums/TTSEngineNameTests.cs
@@ -0,0 +1,133 @@
+/*
+ * FreeClimb API
+ *
+ * FreeClimb is a cloud-based application programming interface (API) that puts the power of the Vail platform in your hands. FreeClimb simplifies the process of creating applications that can use a full range of telephony features without requiring specialized or on-site telephony equipment. Using the FreeClimb REST API to write applications is easy! You have the option to use the language of your choice or hit the API directly. Your application can execute a command by issuing a RESTful request to the FreeClimb API. The base URL to send HTTP requests to the FreeClimb REST API is: /apiserver. FreeClimb authenticates and processes your request.
+ *
+ * The version of the OpenAPI document: 1.0.0
+ * Contact: support@freeclimb.com
+ * Generated by: https://github.com/openapitools/openapi-generator.git
+ */
+
+
+using System;
+using System.Collections;
+using System.Collections.Generic;
+using System.IO;
+using System.Linq;
+using System.Reflection;
+using freeclimb.Client;
+using freeclimb.Enums;
+using freeclimb.Model;
+using freeclimb.Test;
+using Newtonsoft.Json;
+using Xunit;
+
+namespace freeclimb.Test.Enums
+{
+ ///
+ /// Class for testing TTSEngineName
+ ///
+ ///
+ /// This file is automatically generated by OpenAPI Generator (https://openapi-generator.tech).
+ /// Please update the test case below to test the model.
+ ///
+
+ public class TTSEngineNameTests : IDisposable
+ {
+ private TTSEngineName instance;
+
+ public TTSEngineNameTests()
+ {
+ instance = new TTSEngineName();
+ }
+
+ public void Dispose()
+ {
+ // Cleanup when everything is done.
+ }
+
+ ///
+ /// Test an instance of TTSEngineName
+ ///
+ [Fact]
+ public void TTSEngineNameInstanceTest()
+ {
+ Assert.IsType(instance);
+ }
+
+ [Fact]
+ public void TestFREECLIMB_STANDARDShouldWork()
+ {
+ TTSEngineName test = TTSEngineName.FREECLIMB_STANDARD;
+ Assert.Equal(typeof(TTSEngineName), test.GetType());
+ }
+
+ [Fact]
+ public void TestFREECLIMB_STANDARDShouldSerializeToEnum()
+ {
+ TTSEngineName expectedValue = TTSEngineName.FREECLIMB_STANDARD;
+ TTSEngineName calculatedValue = (TTSEngineName)
+ Enum.Parse(typeof(TTSEngineName), "FREECLIMB_STANDARD");
+ Assert.Equal(expectedValue, calculatedValue);
+ }
+
+ [Fact]
+ public void TestFREECLIMB_STANDARDShouldDeserializeToString()
+ {
+ TTSEngineName test = TTSEngineName.FREECLIMB_STANDARD;
+ string expectedValue = "FREECLIMB_STANDARD";
+ string calculatedValue = test.ToString();
+ Assert.Equal(expectedValue, calculatedValue);
+ }
+
+ [Fact]
+ public void TestFREECLIMB_NEURALShouldWork()
+ {
+ TTSEngineName test = TTSEngineName.FREECLIMB_NEURAL;
+ Assert.Equal(typeof(TTSEngineName), test.GetType());
+ }
+
+ [Fact]
+ public void TestFREECLIMB_NEURALShouldSerializeToEnum()
+ {
+ TTSEngineName expectedValue = TTSEngineName.FREECLIMB_NEURAL;
+ TTSEngineName calculatedValue = (TTSEngineName)
+ Enum.Parse(typeof(TTSEngineName), "FREECLIMB_NEURAL");
+ Assert.Equal(expectedValue, calculatedValue);
+ }
+
+ [Fact]
+ public void TestFREECLIMB_NEURALShouldDeserializeToString()
+ {
+ TTSEngineName test = TTSEngineName.FREECLIMB_NEURAL;
+ string expectedValue = "FREECLIMB_NEURAL";
+ string calculatedValue = test.ToString();
+ Assert.Equal(expectedValue, calculatedValue);
+ }
+
+ [Fact]
+ public void TestELEVEN_LABSShouldWork()
+ {
+ TTSEngineName test = TTSEngineName.ELEVEN_LABS;
+ Assert.Equal(typeof(TTSEngineName), test.GetType());
+ }
+
+ [Fact]
+ public void TestELEVEN_LABSShouldSerializeToEnum()
+ {
+ TTSEngineName expectedValue = TTSEngineName.ELEVEN_LABS;
+ TTSEngineName calculatedValue = (TTSEngineName)
+ Enum.Parse(typeof(TTSEngineName), "ELEVEN_LABS");
+ Assert.Equal(expectedValue, calculatedValue);
+ }
+
+ [Fact]
+ public void TestELEVEN_LABSShouldDeserializeToString()
+ {
+ TTSEngineName test = TTSEngineName.ELEVEN_LABS;
+ string expectedValue = "ELEVEN_LABS";
+ string calculatedValue = test.ToString();
+ Assert.Equal(expectedValue, calculatedValue);
+ }
+ }
+}
diff --git a/src/freeclimb.Test/Model/AvailableNumberTests.cs b/src/freeclimb.Test/Model/AvailableNumberTests.cs
index 0b199c0f..987abc9c 100644
--- a/src/freeclimb.Test/Model/AvailableNumberTests.cs
+++ b/src/freeclimb.Test/Model/AvailableNumberTests.cs
@@ -42,8 +42,6 @@ public AvailableNumberTests()
capabilities: (Capabilities)TestHelpers.getTestValue(typeof(Capabilities)),
campaignId: (string)TestHelpers.getTestValue(typeof(string)),
phoneNumber: (string)TestHelpers.getTestValue(typeof(string)),
- voiceEnabled: (bool?)TestHelpers.getTestValue(typeof(bool?)),
- smsEnabled: (bool?)TestHelpers.getTestValue(typeof(bool?)),
region: (string)TestHelpers.getTestValue(typeof(string)),
country: (string)TestHelpers.getTestValue(typeof(string))
);
@@ -94,26 +92,6 @@ public void PhoneNumberTest()
Assert.Equal("TEST_STRING", instance.PhoneNumber);
}
- ///
- /// Test the property 'VoiceEnabled'
- ///
- [Fact]
- public void VoiceEnabledTest()
- {
- instance.VoiceEnabled = false;
- Assert.False(instance.VoiceEnabled);
- }
-
- ///
- /// Test the property 'SmsEnabled'
- ///
- [Fact]
- public void SmsEnabledTest()
- {
- instance.SmsEnabled = false;
- Assert.False(instance.SmsEnabled);
- }
-
///
/// Test the property 'Region'
///
@@ -148,10 +126,6 @@ public void AvailableNumberSerializeToJSONTest()
Assert.Contains("phoneNumber", json);
- Assert.Contains("voiceEnabled", json);
-
- Assert.Contains("smsEnabled", json);
-
Assert.Contains("region", json);
Assert.Contains("country", json);
@@ -167,10 +141,6 @@ public void AvailableNumberSerializeToJSONStripNullTest()
instance.PhoneNumber = null;
- instance.VoiceEnabled = null;
-
- instance.SmsEnabled = null;
-
instance.Region = null;
instance.Country = null;
diff --git a/src/freeclimb.Test/Model/BlobListResponseTests.cs b/src/freeclimb.Test/Model/BlobListResponseTests.cs
new file mode 100644
index 00000000..2c4f2dba
--- /dev/null
+++ b/src/freeclimb.Test/Model/BlobListResponseTests.cs
@@ -0,0 +1,197 @@
+/*
+ * FreeClimb API
+ *
+ * FreeClimb is a cloud-based application programming interface (API) that puts the power of the Vail platform in your hands. FreeClimb simplifies the process of creating applications that can use a full range of telephony features without requiring specialized or on-site telephony equipment. Using the FreeClimb REST API to write applications is easy! You have the option to use the language of your choice or hit the API directly. Your application can execute a command by issuing a RESTful request to the FreeClimb API. The base URL to send HTTP requests to the FreeClimb REST API is: /apiserver. FreeClimb authenticates and processes your request.
+ *
+ * The version of the OpenAPI document: 1.0.0
+ * Contact: support@freeclimb.com
+ * Generated by: https://github.com/openapitools/openapi-generator.git
+ */
+
+
+using System;
+using System.Collections;
+using System.Collections.Generic;
+using System.IO;
+using System.Linq;
+using System.Reflection;
+using freeclimb.Client;
+using freeclimb.Enums;
+using freeclimb.Model;
+using freeclimb.Test;
+using Newtonsoft.Json;
+using Xunit;
+
+namespace freeclimb.Test.Model
+{
+ ///
+ /// Class for testing BlobListResponse
+ ///
+ ///
+ /// This file is automatically generated by OpenAPI Generator (https://openapi-generator.tech).
+ /// Please update the test case below to test the model.
+ ///
+
+ public class BlobListResponseTests : IDisposable
+ {
+ private BlobListResponse instance;
+
+ public BlobListResponseTests()
+ {
+ instance = new BlobListResponse(
+ total: (int?)TestHelpers.getTestValue(typeof(int?)),
+ start: (int?)TestHelpers.getTestValue(typeof(int?)),
+ end: (int?)TestHelpers.getTestValue(typeof(int?)),
+ page: (int?)TestHelpers.getTestValue(typeof(int?)),
+ numPages: (int?)TestHelpers.getTestValue(typeof(int?)),
+ pageSize: (int?)TestHelpers.getTestValue(typeof(int?)),
+ nextPageUri: (string)TestHelpers.getTestValue(typeof(string)),
+ blobs: (List)TestHelpers.getTestValue(typeof(List))
+ );
+ }
+
+ public void Dispose()
+ {
+ // Cleanup when everything is done.
+ }
+
+ ///
+ /// Test an instance of BlobListResponse
+ ///
+ [Fact]
+ public void BlobListResponseInstanceTest()
+ {
+ Assert.IsType(instance);
+ }
+
+ ///
+ /// Test the property 'Total'
+ ///
+ [Fact]
+ public void TotalTest()
+ {
+ instance.Total = 1;
+ Assert.Equal(1, (int)instance.Total);
+ }
+
+ ///
+ /// Test the property 'Start'
+ ///
+ [Fact]
+ public void StartTest()
+ {
+ instance.Start = 1;
+ Assert.Equal(1, (int)instance.Start);
+ }
+
+ ///
+ /// Test the property 'End'
+ ///
+ [Fact]
+ public void EndTest()
+ {
+ instance.End = 1;
+ Assert.Equal(1, (int)instance.End);
+ }
+
+ ///
+ /// Test the property 'Page'
+ ///
+ [Fact]
+ public void PageTest()
+ {
+ instance.Page = 1;
+ Assert.Equal(1, (int)instance.Page);
+ }
+
+ ///
+ /// Test the property 'NumPages'
+ ///
+ [Fact]
+ public void NumPagesTest()
+ {
+ instance.NumPages = 1;
+ Assert.Equal(1, (int)instance.NumPages);
+ }
+
+ ///
+ /// Test the property 'PageSize'
+ ///
+ [Fact]
+ public void PageSizeTest()
+ {
+ instance.PageSize = 1;
+ Assert.Equal(1, (int)instance.PageSize);
+ }
+
+ ///
+ /// Test the property 'NextPageUri'
+ ///
+ [Fact]
+ public void NextPageUriTest()
+ {
+ instance.NextPageUri = "TEST_STRING";
+ Assert.Equal("TEST_STRING", instance.NextPageUri);
+ }
+
+ ///
+ /// Test the property 'Blobs'
+ ///
+ [Fact]
+ public void BlobsTest()
+ {
+ List testList = new List();
+ instance.Blobs = testList;
+ Assert.Equal(instance.Blobs, testList);
+ }
+
+ ///
+ /// Test serialize a BlobListResponse to JSON string - all values are present
+ ///
+ [Fact]
+ public void BlobListResponseSerializeToJSONTest()
+ {
+ string json = instance.ToJson();
+
+ Assert.Contains("total", json);
+
+ Assert.Contains("start", json);
+
+ Assert.Contains("end", json);
+
+ Assert.Contains("page", json);
+
+ Assert.Contains("numPages", json);
+
+ Assert.Contains("pageSize", json);
+
+ Assert.Contains("nextPageUri", json);
+
+ Assert.Contains("blobs", json);
+ }
+
+ ///
+ /// Test serialize a BlobListResponse to JSON string - null values are stripped
+ ///
+ [Fact]
+ public void BlobListResponseSerializeToJSONStripNullTest()
+ {
+ instance.Total = null;
+
+ instance.Start = null;
+
+ instance.End = null;
+
+ instance.Page = null;
+
+ instance.NumPages = null;
+
+ instance.PageSize = null;
+
+ instance.NextPageUri = null;
+
+ string json = instance.ToJson();
+ Assert.DoesNotContain("null", json);
+ }
+ }
+}
diff --git a/src/freeclimb.Test/Model/BlobResultTests.cs b/src/freeclimb.Test/Model/BlobResultTests.cs
new file mode 100644
index 00000000..d9630129
--- /dev/null
+++ b/src/freeclimb.Test/Model/BlobResultTests.cs
@@ -0,0 +1,183 @@
+/*
+ * FreeClimb API
+ *
+ * FreeClimb is a cloud-based application programming interface (API) that puts the power of the Vail platform in your hands. FreeClimb simplifies the process of creating applications that can use a full range of telephony features without requiring specialized or on-site telephony equipment. Using the FreeClimb REST API to write applications is easy! You have the option to use the language of your choice or hit the API directly. Your application can execute a command by issuing a RESTful request to the FreeClimb API. The base URL to send HTTP requests to the FreeClimb REST API is: /apiserver. FreeClimb authenticates and processes your request.
+ *
+ * The version of the OpenAPI document: 1.0.0
+ * Contact: support@freeclimb.com
+ * Generated by: https://github.com/openapitools/openapi-generator.git
+ */
+
+
+using System;
+using System.Collections;
+using System.Collections.Generic;
+using System.IO;
+using System.Linq;
+using System.Reflection;
+using freeclimb.Client;
+using freeclimb.Enums;
+using freeclimb.Model;
+using freeclimb.Test;
+using Newtonsoft.Json;
+using Xunit;
+
+namespace freeclimb.Test.Model
+{
+ ///
+ /// Class for testing BlobResult
+ ///
+ ///
+ /// This file is automatically generated by OpenAPI Generator (https://openapi-generator.tech).
+ /// Please update the test case below to test the model.
+ ///
+
+ public class BlobResultTests : IDisposable
+ {
+ private BlobResult instance;
+
+ public BlobResultTests()
+ {
+ instance = new BlobResult(
+ blobId: (string)TestHelpers.getTestValue(typeof(string)),
+ accountId: (string)TestHelpers.getTestValue(typeof(string)),
+ alias: (string)TestHelpers.getTestValue(typeof(string)),
+ revision: (int)TestHelpers.getTestValue(typeof(int)),
+ dateCreated: (DateTime)TestHelpers.getTestValue(typeof(DateTime)),
+ dateUpdated: (DateTime)TestHelpers.getTestValue(typeof(DateTime)),
+ expiresAt: (DateTime)TestHelpers.getTestValue(typeof(DateTime)),
+ blob: (Object)TestHelpers.getTestValue(typeof(Object))
+ );
+ }
+
+ public void Dispose()
+ {
+ // Cleanup when everything is done.
+ }
+
+ ///
+ /// Test an instance of BlobResult
+ ///
+ [Fact]
+ public void BlobResultInstanceTest()
+ {
+ Assert.IsType(instance);
+ }
+
+ ///
+ /// Test the property 'BlobId'
+ ///
+ [Fact]
+ public void BlobIdTest()
+ {
+ instance.BlobId = "TEST_STRING";
+ Assert.Equal("TEST_STRING", instance.BlobId);
+ }
+
+ ///
+ /// Test the property 'AccountId'
+ ///
+ [Fact]
+ public void AccountIdTest()
+ {
+ instance.AccountId = "TEST_STRING";
+ Assert.Equal("TEST_STRING", instance.AccountId);
+ }
+
+ ///
+ /// Test the property 'Alias'
+ ///
+ [Fact]
+ public void AliasTest()
+ {
+ instance.Alias = "TEST_STRING";
+ Assert.Equal("TEST_STRING", instance.Alias);
+ }
+
+ ///
+ /// Test the property 'Revision'
+ ///
+ [Fact]
+ public void RevisionTest()
+ {
+ instance.Revision = 1;
+ Assert.Equal(1, (int)instance.Revision);
+ }
+
+ ///
+ /// Test the property 'DateCreated'
+ ///
+ [Fact]
+ public void DateCreatedTest()
+ {
+ instance.DateCreated = DateTime.Parse("2022-07-05T15:17:05+00:00");
+ Assert.Equal(DateTime.Parse("2022-07-05T15:17:05+00:00"), instance.DateCreated);
+ }
+
+ ///
+ /// Test the property 'DateUpdated'
+ ///
+ [Fact]
+ public void DateUpdatedTest()
+ {
+ instance.DateUpdated = DateTime.Parse("2022-07-05T15:17:05+00:00");
+ Assert.Equal(DateTime.Parse("2022-07-05T15:17:05+00:00"), instance.DateUpdated);
+ }
+
+ ///
+ /// Test the property 'ExpiresAt'
+ ///
+ [Fact]
+ public void ExpiresAtTest()
+ {
+ instance.ExpiresAt = DateTime.Parse("2022-07-05T15:17:05+00:00");
+ Assert.Equal(DateTime.Parse("2022-07-05T15:17:05+00:00"), instance.ExpiresAt);
+ }
+
+ ///
+ /// Test the property 'Blob'
+ ///
+ [Fact]
+ public void BlobTest()
+ {
+ Object testObject = (Object)TestHelpers.getTestValue(typeof(Object));
+ instance.Blob = testObject;
+ Assert.Equal(testObject, instance.Blob);
+ }
+
+ ///
+ /// Test serialize a BlobResult to JSON string - all values are present
+ ///
+ [Fact]
+ public void BlobResultSerializeToJSONTest()
+ {
+ string json = instance.ToJson();
+
+ Assert.Contains("blobId", json);
+
+ Assert.Contains("accountId", json);
+
+ Assert.Contains("alias", json);
+
+ Assert.Contains("revision", json);
+
+ Assert.Contains("dateCreated", json);
+
+ Assert.Contains("dateUpdated", json);
+
+ Assert.Contains("expiresAt", json);
+
+ Assert.Contains("blob", json);
+ }
+
+ ///
+ /// Test serialize a BlobResult to JSON string - null values are stripped
+ ///
+ [Fact]
+ public void BlobResultSerializeToJSONStripNullTest()
+ {
+ string json = instance.ToJson();
+ Assert.DoesNotContain("null", json);
+ }
+ }
+}
diff --git a/src/freeclimb.Test/Model/CreateBlobRequestTests.cs b/src/freeclimb.Test/Model/CreateBlobRequestTests.cs
new file mode 100644
index 00000000..1cd7cbb8
--- /dev/null
+++ b/src/freeclimb.Test/Model/CreateBlobRequestTests.cs
@@ -0,0 +1,118 @@
+/*
+ * FreeClimb API
+ *
+ * FreeClimb is a cloud-based application programming interface (API) that puts the power of the Vail platform in your hands. FreeClimb simplifies the process of creating applications that can use a full range of telephony features without requiring specialized or on-site telephony equipment. Using the FreeClimb REST API to write applications is easy! You have the option to use the language of your choice or hit the API directly. Your application can execute a command by issuing a RESTful request to the FreeClimb API. The base URL to send HTTP requests to the FreeClimb REST API is: /apiserver. FreeClimb authenticates and processes your request.
+ *
+ * The version of the OpenAPI document: 1.0.0
+ * Contact: support@freeclimb.com
+ * Generated by: https://github.com/openapitools/openapi-generator.git
+ */
+
+
+using System;
+using System.Collections;
+using System.Collections.Generic;
+using System.IO;
+using System.Linq;
+using System.Reflection;
+using freeclimb.Client;
+using freeclimb.Enums;
+using freeclimb.Model;
+using freeclimb.Test;
+using Newtonsoft.Json;
+using Xunit;
+
+namespace freeclimb.Test.Model
+{
+ ///
+ /// Class for testing CreateBlobRequest
+ ///
+ ///
+ /// This file is automatically generated by OpenAPI Generator (https://openapi-generator.tech).
+ /// Please update the test case below to test the model.
+ ///
+
+ public class CreateBlobRequestTests : IDisposable
+ {
+ private CreateBlobRequest instance;
+
+ public CreateBlobRequestTests()
+ {
+ instance = new CreateBlobRequest(
+ alias: (string)TestHelpers.getTestValue(typeof(string)),
+ expiresAt: (string)TestHelpers.getTestValue(typeof(string)),
+ blob: (Object)TestHelpers.getTestValue(typeof(Object))
+ );
+ }
+
+ public void Dispose()
+ {
+ // Cleanup when everything is done.
+ }
+
+ ///
+ /// Test an instance of CreateBlobRequest
+ ///
+ [Fact]
+ public void CreateBlobRequestInstanceTest()
+ {
+ Assert.IsType(instance);
+ }
+
+ ///
+ /// Test the property 'Alias'
+ ///
+ [Fact]
+ public void AliasTest()
+ {
+ instance.Alias = "TEST_STRING";
+ Assert.Equal("TEST_STRING", instance.Alias);
+ }
+
+ ///
+ /// Test the property 'ExpiresAt'
+ ///
+ [Fact]
+ public void ExpiresAtTest()
+ {
+ instance.ExpiresAt = "TEST_STRING";
+ Assert.Equal("TEST_STRING", instance.ExpiresAt);
+ }
+
+ ///
+ /// Test the property 'Blob'
+ ///
+ [Fact]
+ public void BlobTest()
+ {
+ Object testObject = (Object)TestHelpers.getTestValue(typeof(Object));
+ instance.Blob = testObject;
+ Assert.Equal(testObject, instance.Blob);
+ }
+
+ ///
+ /// Test serialize a CreateBlobRequest to JSON string - all values are present
+ ///
+ [Fact]
+ public void CreateBlobRequestSerializeToJSONTest()
+ {
+ string json = instance.ToJson();
+
+ Assert.Contains("alias", json);
+
+ Assert.Contains("expiresAt", json);
+
+ Assert.Contains("blob", json);
+ }
+
+ ///
+ /// Test serialize a CreateBlobRequest to JSON string - null values are stripped
+ ///
+ [Fact]
+ public void CreateBlobRequestSerializeToJSONStripNullTest()
+ {
+ string json = instance.ToJson();
+ Assert.DoesNotContain("null", json);
+ }
+ }
+}
diff --git a/src/freeclimb.Test/Model/IncomingNumberResultTests.cs b/src/freeclimb.Test/Model/IncomingNumberResultTests.cs
index dd167cfd..0d2fbce5 100644
--- a/src/freeclimb.Test/Model/IncomingNumberResultTests.cs
+++ b/src/freeclimb.Test/Model/IncomingNumberResultTests.cs
@@ -52,8 +52,6 @@ public IncomingNumberResultTests()
alias: (string)TestHelpers.getTestValue(typeof(string)),
region: (string)TestHelpers.getTestValue(typeof(string)),
country: (string)TestHelpers.getTestValue(typeof(string)),
- voiceEnabled: (bool?)TestHelpers.getTestValue(typeof(bool?)),
- smsEnabled: (bool?)TestHelpers.getTestValue(typeof(bool?)),
offnet: (bool?)TestHelpers.getTestValue(typeof(bool?)),
tfn: (TFN)TestHelpers.getTestValue(typeof(TFN))
);
@@ -204,26 +202,6 @@ public void CountryTest()
Assert.Equal("TEST_STRING", instance.Country);
}
- ///
- /// Test the property 'VoiceEnabled'
- ///
- [Fact]
- public void VoiceEnabledTest()
- {
- instance.VoiceEnabled = false;
- Assert.False(instance.VoiceEnabled);
- }
-
- ///
- /// Test the property 'SmsEnabled'
- ///
- [Fact]
- public void SmsEnabledTest()
- {
- instance.SmsEnabled = false;
- Assert.False(instance.SmsEnabled);
- }
-
///
/// Test the property 'Offnet'
///
@@ -279,10 +257,6 @@ public void IncomingNumberResultSerializeToJSONTest()
Assert.Contains("country", json);
- Assert.Contains("voiceEnabled", json);
-
- Assert.Contains("smsEnabled", json);
-
Assert.Contains("offnet", json);
Assert.Contains("tfn", json);
@@ -310,10 +284,6 @@ public void IncomingNumberResultSerializeToJSONStripNullTest()
instance.Country = null;
- instance.VoiceEnabled = null;
-
- instance.SmsEnabled = null;
-
instance.Offnet = null;
string json = instance.ToJson();
diff --git a/src/freeclimb.Test/Model/ModifyBlobRequestTests.cs b/src/freeclimb.Test/Model/ModifyBlobRequestTests.cs
new file mode 100644
index 00000000..ea943db7
--- /dev/null
+++ b/src/freeclimb.Test/Model/ModifyBlobRequestTests.cs
@@ -0,0 +1,105 @@
+/*
+ * FreeClimb API
+ *
+ * FreeClimb is a cloud-based application programming interface (API) that puts the power of the Vail platform in your hands. FreeClimb simplifies the process of creating applications that can use a full range of telephony features without requiring specialized or on-site telephony equipment. Using the FreeClimb REST API to write applications is easy! You have the option to use the language of your choice or hit the API directly. Your application can execute a command by issuing a RESTful request to the FreeClimb API. The base URL to send HTTP requests to the FreeClimb REST API is: /apiserver. FreeClimb authenticates and processes your request.
+ *
+ * The version of the OpenAPI document: 1.0.0
+ * Contact: support@freeclimb.com
+ * Generated by: https://github.com/openapitools/openapi-generator.git
+ */
+
+
+using System;
+using System.Collections;
+using System.Collections.Generic;
+using System.IO;
+using System.Linq;
+using System.Reflection;
+using freeclimb.Client;
+using freeclimb.Enums;
+using freeclimb.Model;
+using freeclimb.Test;
+using Newtonsoft.Json;
+using Xunit;
+
+namespace freeclimb.Test.Model
+{
+ ///
+ /// Class for testing ModifyBlobRequest
+ ///
+ ///
+ /// This file is automatically generated by OpenAPI Generator (https://openapi-generator.tech).
+ /// Please update the test case below to test the model.
+ ///
+
+ public class ModifyBlobRequestTests : IDisposable
+ {
+ private ModifyBlobRequest instance;
+
+ public ModifyBlobRequestTests()
+ {
+ instance = new ModifyBlobRequest(
+ blob: (Object)TestHelpers.getTestValue(typeof(Object)),
+ alias: (string)TestHelpers.getTestValue(typeof(string))
+ );
+ }
+
+ public void Dispose()
+ {
+ // Cleanup when everything is done.
+ }
+
+ ///
+ /// Test an instance of ModifyBlobRequest
+ ///
+ [Fact]
+ public void ModifyBlobRequestInstanceTest()
+ {
+ Assert.IsType(instance);
+ }
+
+ ///
+ /// Test the property 'Blob'
+ ///
+ [Fact]
+ public void BlobTest()
+ {
+ Object testObject = (Object)TestHelpers.getTestValue(typeof(Object));
+ instance.Blob = testObject;
+ Assert.Equal(testObject, instance.Blob);
+ }
+
+ ///
+ /// Test the property 'Alias'
+ ///
+ [Fact]
+ public void AliasTest()
+ {
+ instance.Alias = "TEST_STRING";
+ Assert.Equal("TEST_STRING", instance.Alias);
+ }
+
+ ///
+ /// Test serialize a ModifyBlobRequest to JSON string - all values are present
+ ///
+ [Fact]
+ public void ModifyBlobRequestSerializeToJSONTest()
+ {
+ string json = instance.ToJson();
+
+ Assert.Contains("blob", json);
+
+ Assert.Contains("alias", json);
+ }
+
+ ///
+ /// Test serialize a ModifyBlobRequest to JSON string - null values are stripped
+ ///
+ [Fact]
+ public void ModifyBlobRequestSerializeToJSONStripNullTest()
+ {
+ string json = instance.ToJson();
+ Assert.DoesNotContain("null", json);
+ }
+ }
+}
diff --git a/src/freeclimb.Test/Model/PlatformErrorTests.cs b/src/freeclimb.Test/Model/PlatformErrorTests.cs
new file mode 100644
index 00000000..d9eceb87
--- /dev/null
+++ b/src/freeclimb.Test/Model/PlatformErrorTests.cs
@@ -0,0 +1,131 @@
+/*
+ * FreeClimb API
+ *
+ * FreeClimb is a cloud-based application programming interface (API) that puts the power of the Vail platform in your hands. FreeClimb simplifies the process of creating applications that can use a full range of telephony features without requiring specialized or on-site telephony equipment. Using the FreeClimb REST API to write applications is easy! You have the option to use the language of your choice or hit the API directly. Your application can execute a command by issuing a RESTful request to the FreeClimb API. The base URL to send HTTP requests to the FreeClimb REST API is: /apiserver. FreeClimb authenticates and processes your request.
+ *
+ * The version of the OpenAPI document: 1.0.0
+ * Contact: support@freeclimb.com
+ * Generated by: https://github.com/openapitools/openapi-generator.git
+ */
+
+
+using System;
+using System.Collections;
+using System.Collections.Generic;
+using System.IO;
+using System.Linq;
+using System.Reflection;
+using freeclimb.Client;
+using freeclimb.Enums;
+using freeclimb.Model;
+using freeclimb.Test;
+using Newtonsoft.Json;
+using Xunit;
+
+namespace freeclimb.Test.Model
+{
+ ///
+ /// Class for testing PlatformError
+ ///
+ ///
+ /// This file is automatically generated by OpenAPI Generator (https://openapi-generator.tech).
+ /// Please update the test case below to test the model.
+ ///
+
+ public class PlatformErrorTests : IDisposable
+ {
+ private PlatformError instance;
+
+ public PlatformErrorTests()
+ {
+ instance = new PlatformError(
+ code: (int)TestHelpers.getTestValue(typeof(int)),
+ call: (string)TestHelpers.getTestValue(typeof(string)),
+ url: (string)TestHelpers.getTestValue(typeof(string)),
+ details: (Object)TestHelpers.getTestValue(typeof(Object))
+ );
+ }
+
+ public void Dispose()
+ {
+ // Cleanup when everything is done.
+ }
+
+ ///
+ /// Test an instance of PlatformError
+ ///
+ [Fact]
+ public void PlatformErrorInstanceTest()
+ {
+ Assert.IsType(instance);
+ }
+
+ ///
+ /// Test the property 'Code'
+ ///
+ [Fact]
+ public void CodeTest()
+ {
+ instance.Code = 1;
+ Assert.Equal(1, (int)instance.Code);
+ }
+
+ ///
+ /// Test the property 'Call'
+ ///
+ [Fact]
+ public void CallTest()
+ {
+ instance.Call = "TEST_STRING";
+ Assert.Equal("TEST_STRING", instance.Call);
+ }
+
+ ///
+ /// Test the property 'Url'
+ ///
+ [Fact]
+ public void UrlTest()
+ {
+ instance.Url = "TEST_STRING";
+ Assert.Equal("TEST_STRING", instance.Url);
+ }
+
+ ///
+ /// Test the property 'Details'
+ ///
+ [Fact]
+ public void DetailsTest()
+ {
+ Object testObject = (Object)TestHelpers.getTestValue(typeof(Object));
+ instance.Details = testObject;
+ Assert.Equal(testObject, instance.Details);
+ }
+
+ ///
+ /// Test serialize a PlatformError to JSON string - all values are present
+ ///
+ [Fact]
+ public void PlatformErrorSerializeToJSONTest()
+ {
+ string json = instance.ToJson();
+
+ Assert.Contains("code", json);
+
+ Assert.Contains("call", json);
+
+ Assert.Contains("url", json);
+
+ Assert.Contains("details", json);
+ }
+
+ ///
+ /// Test serialize a PlatformError to JSON string - null values are stripped
+ ///
+ [Fact]
+ public void PlatformErrorSerializeToJSONStripNullTest()
+ {
+ string json = instance.ToJson();
+ Assert.DoesNotContain("null", json);
+ }
+ }
+}
diff --git a/src/freeclimb.Test/Model/ReplaceBlobRequestTests.cs b/src/freeclimb.Test/Model/ReplaceBlobRequestTests.cs
new file mode 100644
index 00000000..235eb75b
--- /dev/null
+++ b/src/freeclimb.Test/Model/ReplaceBlobRequestTests.cs
@@ -0,0 +1,92 @@
+/*
+ * FreeClimb API
+ *
+ * FreeClimb is a cloud-based application programming interface (API) that puts the power of the Vail platform in your hands. FreeClimb simplifies the process of creating applications that can use a full range of telephony features without requiring specialized or on-site telephony equipment. Using the FreeClimb REST API to write applications is easy! You have the option to use the language of your choice or hit the API directly. Your application can execute a command by issuing a RESTful request to the FreeClimb API. The base URL to send HTTP requests to the FreeClimb REST API is: /apiserver. FreeClimb authenticates and processes your request.
+ *
+ * The version of the OpenAPI document: 1.0.0
+ * Contact: support@freeclimb.com
+ * Generated by: https://github.com/openapitools/openapi-generator.git
+ */
+
+
+using System;
+using System.Collections;
+using System.Collections.Generic;
+using System.IO;
+using System.Linq;
+using System.Reflection;
+using freeclimb.Client;
+using freeclimb.Enums;
+using freeclimb.Model;
+using freeclimb.Test;
+using Newtonsoft.Json;
+using Xunit;
+
+namespace freeclimb.Test.Model
+{
+ ///
+ /// Class for testing ReplaceBlobRequest
+ ///
+ ///
+ /// This file is automatically generated by OpenAPI Generator (https://openapi-generator.tech).
+ /// Please update the test case below to test the model.
+ ///
+
+ public class ReplaceBlobRequestTests : IDisposable
+ {
+ private ReplaceBlobRequest instance;
+
+ public ReplaceBlobRequestTests()
+ {
+ instance = new ReplaceBlobRequest(
+ blob: (Object)TestHelpers.getTestValue(typeof(Object))
+ );
+ }
+
+ public void Dispose()
+ {
+ // Cleanup when everything is done.
+ }
+
+ ///
+ /// Test an instance of ReplaceBlobRequest
+ ///
+ [Fact]
+ public void ReplaceBlobRequestInstanceTest()
+ {
+ Assert.IsType(instance);
+ }
+
+ ///
+ /// Test the property 'Blob'
+ ///
+ [Fact]
+ public void BlobTest()
+ {
+ Object testObject = (Object)TestHelpers.getTestValue(typeof(Object));
+ instance.Blob = testObject;
+ Assert.Equal(testObject, instance.Blob);
+ }
+
+ ///
+ /// Test serialize a ReplaceBlobRequest to JSON string - all values are present
+ ///
+ [Fact]
+ public void ReplaceBlobRequestSerializeToJSONTest()
+ {
+ string json = instance.ToJson();
+
+ Assert.Contains("blob", json);
+ }
+
+ ///
+ /// Test serialize a ReplaceBlobRequest to JSON string - null values are stripped
+ ///
+ [Fact]
+ public void ReplaceBlobRequestSerializeToJSONStripNullTest()
+ {
+ string json = instance.ToJson();
+ Assert.DoesNotContain("null", json);
+ }
+ }
+}
diff --git a/src/freeclimb.Test/Model/SayTests.cs b/src/freeclimb.Test/Model/SayTests.cs
index ecc42ad6..777d67fa 100644
--- a/src/freeclimb.Test/Model/SayTests.cs
+++ b/src/freeclimb.Test/Model/SayTests.cs
@@ -41,6 +41,7 @@ public SayTests()
instance = new Say(
text: (string)TestHelpers.getTestValue(typeof(string)),
language: (string)TestHelpers.getTestValue(typeof(string)),
+ engine: (TTSEngine)TestHelpers.getTestValue(typeof(TTSEngine)),
loop: (int)TestHelpers.getTestValue(typeof(int)),
privacyMode: (bool)TestHelpers.getTestValue(typeof(bool))
);
@@ -80,6 +81,17 @@ public void LanguageTest()
Assert.Equal("TEST_STRING", instance.Language);
}
+ ///
+ /// Test the property 'Engine'
+ ///
+ [Fact]
+ public void EngineTest()
+ {
+ TTSEngine testObject = (TTSEngine)TestHelpers.getTestValue(typeof(TTSEngine));
+ instance.Engine = testObject;
+ Assert.Equal(testObject, instance.Engine);
+ }
+
///
/// Test the property 'Loop'
///
@@ -112,6 +124,8 @@ public void SaySerializeToJSONTest()
Assert.Contains("language", json);
+ Assert.Contains("engine", json);
+
Assert.Contains("loop", json);
Assert.Contains("privacyMode", json);
diff --git a/src/freeclimb.Test/Model/TTSEngineTests.cs b/src/freeclimb.Test/Model/TTSEngineTests.cs
new file mode 100644
index 00000000..d9c3bd00
--- /dev/null
+++ b/src/freeclimb.Test/Model/TTSEngineTests.cs
@@ -0,0 +1,112 @@
+/*
+ * FreeClimb API
+ *
+ * FreeClimb is a cloud-based application programming interface (API) that puts the power of the Vail platform in your hands. FreeClimb simplifies the process of creating applications that can use a full range of telephony features without requiring specialized or on-site telephony equipment. Using the FreeClimb REST API to write applications is easy! You have the option to use the language of your choice or hit the API directly. Your application can execute a command by issuing a RESTful request to the FreeClimb API. The base URL to send HTTP requests to the FreeClimb REST API is: /apiserver. FreeClimb authenticates and processes your request.
+ *
+ * The version of the OpenAPI document: 1.0.0
+ * Contact: support@freeclimb.com
+ * Generated by: https://github.com/openapitools/openapi-generator.git
+ */
+
+
+using System;
+using System.Collections;
+using System.Collections.Generic;
+using System.IO;
+using System.Linq;
+using System.Reflection;
+using freeclimb.Client;
+using freeclimb.Enums;
+using freeclimb.Model;
+using freeclimb.Test;
+using Newtonsoft.Json;
+using Xunit;
+
+namespace freeclimb.Test.Model
+{
+ ///
+ /// Class for testing TTSEngine
+ ///
+ ///
+ /// This file is automatically generated by OpenAPI Generator (https://openapi-generator.tech).
+ /// Please update the test case below to test the model.
+ ///
+
+ public class TTSEngineTests : IDisposable
+ {
+ private TTSEngine instance;
+
+ public TTSEngineTests()
+ {
+ instance = new TTSEngine(
+ name: (TTSEngineName)TestHelpers.getTestValue(typeof(TTSEngineName)),
+ parameters: (Dictionary)
+ TestHelpers.getTestValue(typeof(Dictionary))
+ );
+ }
+
+ public void Dispose()
+ {
+ // Cleanup when everything is done.
+ }
+
+ ///
+ /// Test an instance of TTSEngine
+ ///
+ [Fact]
+ public void TTSEngineInstanceTest()
+ {
+ Assert.IsType(instance);
+ }
+
+ ///
+ /// Test the property 'Name'
+ ///
+ [Fact]
+ public void NameTest()
+ {
+ instance.Name = TTSEngineName.FREECLIMB_STANDARD;
+ Assert.Equal(TTSEngineName.FREECLIMB_STANDARD, instance.Name);
+ instance.Name = TTSEngineName.FREECLIMB_NEURAL;
+ Assert.Equal(TTSEngineName.FREECLIMB_NEURAL, instance.Name);
+ instance.Name = TTSEngineName.ELEVEN_LABS;
+ Assert.Equal(TTSEngineName.ELEVEN_LABS, instance.Name);
+ }
+
+ ///
+ /// Test the property 'Parameters'
+ ///
+ [Fact]
+ public void ParametersTest()
+ {
+ Dictionary testObject =
+ (Dictionary)
+ TestHelpers.getTestValue(typeof(Dictionary));
+ instance.Parameters = testObject;
+ Assert.Equal(testObject, instance.Parameters);
+ }
+
+ ///
+ /// Test serialize a TTSEngine to JSON string - all values are present
+ ///
+ [Fact]
+ public void TTSEngineSerializeToJSONTest()
+ {
+ string json = instance.ToJson();
+
+ Assert.Contains("name", json);
+
+ Assert.Contains("parameters", json);
+ }
+
+ ///
+ /// Test serialize a TTSEngine to JSON string - null values are stripped
+ ///
+ [Fact]
+ public void TTSEngineSerializeToJSONStripNullTest()
+ {
+ string json = instance.ToJson();
+ Assert.DoesNotContain("null", json);
+ }
+ }
+}
diff --git a/src/freeclimb.Test/TestHelpers.cs b/src/freeclimb.Test/TestHelpers.cs
index 50cd5bda..eeabaf4f 100644
--- a/src/freeclimb.Test/TestHelpers.cs
+++ b/src/freeclimb.Test/TestHelpers.cs
@@ -342,6 +342,23 @@ public static object getTestValue(Type type)
{
return new List();
}
+ if (type == typeof(List))
+ {
+ return new List();
+ }
+ if (type == typeof(BlobResult))
+ {
+ return new BlobResult();
+ }
+ if (type == typeof(TTSEngine))
+ {
+ return new TTSEngine(name: TTSEngineNameValueConverter.FromString("freeclimb.standard"), parameters: new Dictionary());
+ }
+ if (type == typeof(TTSEngineName))
+ {
+ return TTSEngineNameValueConverter.FromString("freeclimb.standard");
+ }
+
throw new ArgumentException("Provided type has no test value", type.ToString());
}
}
diff --git a/src/freeclimb/Api/DefaultApi.cs b/src/freeclimb/Api/DefaultApi.cs
index d53dd8b1..ec1e9520 100644
--- a/src/freeclimb/Api/DefaultApi.cs
+++ b/src/freeclimb/Api/DefaultApi.cs
@@ -124,6 +124,30 @@ ApiResponse CreateAnApplicationWithHttpInfo(
ApplicationRequest? applicationRequest = default(ApplicationRequest?)
);
+ ///
+ /// Create a Blob
+ ///
+ ///
+ /// Create a new Blob belonging to the requesting account.
+ ///
+ /// Thrown when fails to make API call
+ /// An object defining a new blob. A request body must be provided but the blob may be empty.
+
+ /// BlobResult
+ BlobResult CreateBlob(CreateBlobRequest createBlobRequest);
+
+ ///
+ /// Create a Blob
+ ///
+ ///
+ /// Create a new Blob belonging to the requesting account.
+ ///
+ /// Thrown when fails to make API call
+ /// An object defining a new blob. A request body must be provided but the blob may be empty.
+
+ /// ApiResponse of BlobResult
+ ApiResponse CreateBlobWithHttpInfo(CreateBlobRequest createBlobRequest);
+
///
/// Create an Export
///
@@ -260,6 +284,30 @@ ApiResponse CreateKnowledgeBaseCompletionWithHttpInfo(
/// ApiResponse of Object(void)
ApiResponse