Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
@@ -0,0 +1,84 @@
#nullable enable

namespace RetellAI
{
public partial interface IRetellAiClient
{
/// <summary>
/// Upload an image or audio asset. Audio is normalized to headerless mono PCM16 at 24 kHz and can be referenced by `custom_on_hold_music_asset_id` on warm and agentic-warm transfer options. Accepted audio formats are MP3, WAV, WebM, OGG, M4A, AAC, and FLAC. The maximum upload size is 10 MB and audio duration is limited to 210 seconds.
/// </summary>
/// <param name="request"></param>
/// <param name="requestOptions">Per-request overrides such as headers, query parameters, timeout, retries, and response buffering.</param>
/// <param name="cancellationToken">The token to cancel the operation with</param>
/// <exception cref="global::RetellAI.ApiException"></exception>
global::System.Threading.Tasks.Task<global::RetellAI.Asset> CreateAssetAsync(

global::RetellAI.CreateAssetRequest request,
global::RetellAI.AutoSDKRequestOptions? requestOptions = default,
global::System.Threading.CancellationToken cancellationToken = default);
/// <summary>
/// Upload an image or audio asset. Audio is normalized to headerless mono PCM16 at 24 kHz and can be referenced by `custom_on_hold_music_asset_id` on warm and agentic-warm transfer options. Accepted audio formats are MP3, WAV, WebM, OGG, M4A, AAC, and FLAC. The maximum upload size is 10 MB and audio duration is limited to 210 seconds.
/// </summary>
/// <param name="request"></param>
/// <param name="requestOptions">Per-request overrides such as headers, query parameters, timeout, retries, and response buffering.</param>
/// <param name="cancellationToken">The token to cancel the operation with</param>
/// <exception cref="global::RetellAI.ApiException"></exception>
global::System.Threading.Tasks.Task<global::RetellAI.AutoSDKHttpResponse<global::RetellAI.Asset>> CreateAssetAsResponseAsync(

global::RetellAI.CreateAssetRequest request,
global::RetellAI.AutoSDKRequestOptions? requestOptions = default,
global::System.Threading.CancellationToken cancellationToken = default);
/// <summary>
/// Upload an image or audio asset. Audio is normalized to headerless mono PCM16 at 24 kHz and can be referenced by `custom_on_hold_music_asset_id` on warm and agentic-warm transfer options. Accepted audio formats are MP3, WAV, WebM, OGG, M4A, AAC, and FLAC. The maximum upload size is 10 MB and audio duration is limited to 210 seconds.
/// </summary>
/// <param name="file">
/// Image or audio file to upload. Images support PNG, JPEG, GIF, WebP, and SVG. Audio supports MP3, WAV, WebM, OGG, M4A, AAC, and FLAC. Maximum size is 10 MB; audio is limited to 210 seconds.
/// </param>
/// <param name="filename">
/// Image or audio file to upload. Images support PNG, JPEG, GIF, WebP, and SVG. Audio supports MP3, WAV, WebM, OGG, M4A, AAC, and FLAC. Maximum size is 10 MB; audio is limited to 210 seconds.
/// </param>
/// <param name="requestOptions">Per-request overrides such as headers, query parameters, timeout, retries, and response buffering.</param>
/// <param name="cancellationToken">The token to cancel the operation with</param>
/// <exception cref="global::System.InvalidOperationException"></exception>
global::System.Threading.Tasks.Task<global::RetellAI.Asset> CreateAssetAsync(
byte[] file,
string filename,
global::RetellAI.AutoSDKRequestOptions? requestOptions = default,
global::System.Threading.CancellationToken cancellationToken = default);

/// <summary>
/// Upload an image or audio asset. Audio is normalized to headerless mono PCM16 at 24 kHz and can be referenced by `custom_on_hold_music_asset_id` on warm and agentic-warm transfer options. Accepted audio formats are MP3, WAV, WebM, OGG, M4A, AAC, and FLAC. The maximum upload size is 10 MB and audio duration is limited to 210 seconds.
/// </summary>
/// <param name="file">
/// Image or audio file to upload. Images support PNG, JPEG, GIF, WebP, and SVG. Audio supports MP3, WAV, WebM, OGG, M4A, AAC, and FLAC. Maximum size is 10 MB; audio is limited to 210 seconds.
/// </param>
/// <param name="filename">
/// Image or audio file to upload. Images support PNG, JPEG, GIF, WebP, and SVG. Audio supports MP3, WAV, WebM, OGG, M4A, AAC, and FLAC. Maximum size is 10 MB; audio is limited to 210 seconds.
/// </param>
/// <param name="requestOptions">Per-request overrides such as headers, query parameters, timeout, retries, and response buffering.</param>
/// <param name="cancellationToken">The token to cancel the operation with</param>
/// <exception cref="global::RetellAI.ApiException"></exception>
global::System.Threading.Tasks.Task<global::RetellAI.Asset> CreateAssetAsync(
global::System.IO.Stream file,
string filename,
global::RetellAI.AutoSDKRequestOptions? requestOptions = default,
global::System.Threading.CancellationToken cancellationToken = default);
/// <summary>
/// Upload an image or audio asset. Audio is normalized to headerless mono PCM16 at 24 kHz and can be referenced by `custom_on_hold_music_asset_id` on warm and agentic-warm transfer options. Accepted audio formats are MP3, WAV, WebM, OGG, M4A, AAC, and FLAC. The maximum upload size is 10 MB and audio duration is limited to 210 seconds.
/// </summary>
/// <param name="file">
/// Image or audio file to upload. Images support PNG, JPEG, GIF, WebP, and SVG. Audio supports MP3, WAV, WebM, OGG, M4A, AAC, and FLAC. Maximum size is 10 MB; audio is limited to 210 seconds.
/// </param>
/// <param name="filename">
/// Image or audio file to upload. Images support PNG, JPEG, GIF, WebP, and SVG. Audio supports MP3, WAV, WebM, OGG, M4A, AAC, and FLAC. Maximum size is 10 MB; audio is limited to 210 seconds.
/// </param>
/// <param name="requestOptions">Per-request overrides such as headers, query parameters, timeout, retries, and response buffering.</param>
/// <param name="cancellationToken">The token to cancel the operation with</param>
/// <exception cref="global::RetellAI.ApiException"></exception>
global::System.Threading.Tasks.Task<global::RetellAI.AutoSDKHttpResponse<global::RetellAI.Asset>> CreateAssetAsResponseAsync(
global::System.IO.Stream file,
string filename,
global::RetellAI.AutoSDKRequestOptions? requestOptions = default,
global::System.Threading.CancellationToken cancellationToken = default);
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -41,6 +41,9 @@ public partial interface IRetellAiClient
/// Last name of the contact.
/// </param>
/// <param name="doNotCall"></param>
/// <param name="tags">
/// Full set of tags for the contact.
/// </param>
/// <param name="customFields">
/// Values must match the types defined in CRM config custom fields. Set a value to null to clear it.
/// </param>
Expand All @@ -52,6 +55,7 @@ public partial interface IRetellAiClient
string? firstName = default,
string? lastName = default,
bool? doNotCall = default,
global::System.Collections.Generic.IList<string>? tags = default,
object? customFields = default,
global::RetellAI.AutoSDKRequestOptions? requestOptions = default,
global::System.Threading.CancellationToken cancellationToken = default);
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,57 @@
#nullable enable

namespace RetellAI
{
public partial interface IRetellAiClient
{
/// <summary>
/// Start an incremental contact import from an uploaded CSV: creates new contacts and updates existing ones matched by phone number. Mapped columns overwrite the matched contact's fields; unmapped columns are ignored. Runs asynchronously — poll get-contact-import for progress.
/// </summary>
/// <param name="request"></param>
/// <param name="requestOptions">Per-request overrides such as headers, query parameters, timeout, retries, and response buffering.</param>
/// <param name="cancellationToken">The token to cancel the operation with</param>
/// <exception cref="global::RetellAI.ApiException"></exception>
global::System.Threading.Tasks.Task<global::RetellAI.JobStatus> CreateContactImportAsync(

global::RetellAI.CreateContactImportRequest request,
global::RetellAI.AutoSDKRequestOptions? requestOptions = default,
global::System.Threading.CancellationToken cancellationToken = default);
/// <summary>
/// Start an incremental contact import from an uploaded CSV: creates new contacts and updates existing ones matched by phone number. Mapped columns overwrite the matched contact's fields; unmapped columns are ignored. Runs asynchronously — poll get-contact-import for progress.
/// </summary>
/// <param name="request"></param>
/// <param name="requestOptions">Per-request overrides such as headers, query parameters, timeout, retries, and response buffering.</param>
/// <param name="cancellationToken">The token to cancel the operation with</param>
/// <exception cref="global::RetellAI.ApiException"></exception>
global::System.Threading.Tasks.Task<global::RetellAI.AutoSDKHttpResponse<global::RetellAI.JobStatus>> CreateContactImportAsResponseAsync(

global::RetellAI.CreateContactImportRequest request,
global::RetellAI.AutoSDKRequestOptions? requestOptions = default,
global::System.Threading.CancellationToken cancellationToken = default);
/// <summary>
/// Start an incremental contact import from an uploaded CSV: creates new contacts and updates existing ones matched by phone number. Mapped columns overwrite the matched contact's fields; unmapped columns are ignored. Runs asynchronously — poll get-contact-import for progress.
/// </summary>
/// <param name="uploadId">
/// Id returned by upload-contact-import-file.
/// </param>
/// <param name="columnMapping">
/// CSV headers mapped to contact fields. field_name is the contact field and external_field_name is the CSV header. Exactly one mapping must target phone_number. Unmapped columns are ignored.
/// </param>
/// <param name="defaultCountry">
/// Country for parsing phone numbers without a country code. Defaults to US.
/// </param>
/// <param name="tags">
/// Tags added to every contact in this import. Existing tags are preserved. Omit to leave tags unchanged.
/// </param>
/// <param name="requestOptions">Per-request overrides such as headers, query parameters, timeout, retries, and response buffering.</param>
/// <param name="cancellationToken">The token to cancel the operation with</param>
/// <exception cref="global::System.InvalidOperationException"></exception>
global::System.Threading.Tasks.Task<global::RetellAI.JobStatus> CreateContactImportAsync(
string uploadId,
global::System.Collections.Generic.IList<global::RetellAI.CRMSyncMapping> columnMapping,
string? defaultCountry = default,
global::System.Collections.Generic.IList<string>? tags = default,
global::RetellAI.AutoSDKRequestOptions? requestOptions = default,
global::System.Threading.CancellationToken cancellationToken = default);
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -46,7 +46,7 @@ public partial interface IRetellAiClient
/// Example: [https://www.example.com, https://www.retellai.com]
/// </param>
/// <param name="enableAutoRefresh">
/// Whether to enable auto refresh for the knowledge base urls. If set to true, will retrieve the data from the specified url every 12 hours.<br/>
/// Whether to refresh eligible URL and connected-file sources automatically on a daily cadence.<br/>
/// Example: true
/// </param>
/// <param name="maxChunkSize">
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,26 @@
#nullable enable

namespace RetellAI
{
public partial interface IRetellAiClient
{
/// <summary>
/// Status and counts for the org's current or latest contact import.
/// </summary>
/// <param name="requestOptions">Per-request overrides such as headers, query parameters, timeout, retries, and response buffering.</param>
/// <param name="cancellationToken">The token to cancel the operation with</param>
/// <exception cref="global::RetellAI.ApiException"></exception>
global::System.Threading.Tasks.Task<global::RetellAI.JobStatus> GetContactImportAsync(
global::RetellAI.AutoSDKRequestOptions? requestOptions = default,
global::System.Threading.CancellationToken cancellationToken = default);
/// <summary>
/// Status and counts for the org's current or latest contact import.
/// </summary>
/// <param name="requestOptions">Per-request overrides such as headers, query parameters, timeout, retries, and response buffering.</param>
/// <param name="cancellationToken">The token to cancel the operation with</param>
/// <exception cref="global::RetellAI.ApiException"></exception>
global::System.Threading.Tasks.Task<global::RetellAI.AutoSDKHttpResponse<global::RetellAI.JobStatus>> GetContactImportAsResponseAsync(
global::RetellAI.AutoSDKRequestOptions? requestOptions = default,
global::System.Threading.CancellationToken cancellationToken = default);
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ namespace RetellAI
public partial interface IRetellAiClient
{
/// <summary>
/// List stored versions of a voice or chat agent with pagination. Root-level data such as assigned tags is not included.
/// List stored versions of a voice or chat agent with pagination.
/// </summary>
/// <param name="agentId">
/// Example: 16b980523634a6dc504898cda492e939
Expand All @@ -28,7 +28,7 @@ public partial interface IRetellAiClient
global::RetellAI.AutoSDKRequestOptions? requestOptions = default,
global::System.Threading.CancellationToken cancellationToken = default);
/// <summary>
/// List stored versions of a voice or chat agent with pagination. Root-level data such as assigned tags is not included.
/// List stored versions of a voice or chat agent with pagination.
/// </summary>
/// <param name="agentId">
/// Example: 16b980523634a6dc504898cda492e939
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,42 @@
#nullable enable

namespace RetellAI
{
public partial interface IRetellAiClient
{
/// <summary>
/// Remove references to resources that no longer exist in your workspace from an agent draft version and its response engine — tools whose app connection has been deleted, unknown knowledge bases, and deleted shared components — and remap voices that are no longer accessible to a default voice. If the agent's response engine version has been published, the engine is left untouched and only agent-level references are repaired. Repairing an agent with nothing to fix is a no-op.
/// </summary>
/// <param name="agentId">
/// Example: 16b980523634a6dc504898cda492e939
/// </param>
/// <param name="version">
/// Agent version reference. Supports a numeric version (for example 3) or a tag/environment name (for example "prod"). The string "latest" resolves to the most recently created version (the largest version number), and "latest_published" resolves to the most recently published version. When a tag is provided, resolution uses that exact tag assignment (including its dynamic variables). If the tag exists but is currently unassigned, it resolves to latest. When a numeric version, latest, or latest_published is provided, resolution applies dynamic variables from the preferred tag for that resolved version (most recently assigned), if any.
/// </param>
/// <param name="requestOptions">Per-request overrides such as headers, query parameters, timeout, retries, and response buffering.</param>
/// <param name="cancellationToken">The token to cancel the operation with</param>
/// <exception cref="global::RetellAI.ApiException"></exception>
global::System.Threading.Tasks.Task<global::RetellAI.OneOf<global::RetellAI.AgentResponse?, global::RetellAI.ChatAgentResponse?>> RepairAgentAsync(
string agentId,
global::RetellAI.AgentVersionReference? version = default,
global::RetellAI.AutoSDKRequestOptions? requestOptions = default,
global::System.Threading.CancellationToken cancellationToken = default);
/// <summary>
/// Remove references to resources that no longer exist in your workspace from an agent draft version and its response engine — tools whose app connection has been deleted, unknown knowledge bases, and deleted shared components — and remap voices that are no longer accessible to a default voice. If the agent's response engine version has been published, the engine is left untouched and only agent-level references are repaired. Repairing an agent with nothing to fix is a no-op.
/// </summary>
/// <param name="agentId">
/// Example: 16b980523634a6dc504898cda492e939
/// </param>
/// <param name="version">
/// Agent version reference. Supports a numeric version (for example 3) or a tag/environment name (for example "prod"). The string "latest" resolves to the most recently created version (the largest version number), and "latest_published" resolves to the most recently published version. When a tag is provided, resolution uses that exact tag assignment (including its dynamic variables). If the tag exists but is currently unassigned, it resolves to latest. When a numeric version, latest, or latest_published is provided, resolution applies dynamic variables from the preferred tag for that resolved version (most recently assigned), if any.
/// </param>
/// <param name="requestOptions">Per-request overrides such as headers, query parameters, timeout, retries, and response buffering.</param>
/// <param name="cancellationToken">The token to cancel the operation with</param>
/// <exception cref="global::RetellAI.ApiException"></exception>
global::System.Threading.Tasks.Task<global::RetellAI.AutoSDKHttpResponse<global::RetellAI.OneOf<global::RetellAI.AgentResponse?, global::RetellAI.ChatAgentResponse?>>> RepairAgentAsResponseAsync(
string agentId,
global::RetellAI.AgentVersionReference? version = default,
global::RetellAI.AutoSDKRequestOptions? requestOptions = default,
global::System.Threading.CancellationToken cancellationToken = default);
}
}
Loading