Skip to content
Open
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
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
6 changes: 3 additions & 3 deletions .fern/metadata.json
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
{
"cliVersion": "5.51.2",
"cliVersion": "5.89.2",
"generatorName": "fernapi/fern-csharp-sdk",
"generatorVersion": "2.58.0",
"generatorConfig": {
Expand All @@ -12,10 +12,10 @@
"simplify-object-dictionaries": true,
"use-discriminated-unions": false
},
"originGitCommit": "5a015aa01196915bea6110904c69d5804f457ff5",
"originGitCommit": "548dddb5e7bc17a9e26b0832d0359a988546b0ba",
"originGitCommitIsDirty": true,
"invokedBy": "ci",
"requestedVersion": "AUTO",
"ciProvider": "unknown",
"sdkVersion": "2.0.0"
"sdkVersion": "2.0.1"
}
16 changes: 16 additions & 0 deletions .fern/replay.lock

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

3 changes: 3 additions & 0 deletions .fernignore
Original file line number Diff line number Diff line change
Expand Up @@ -3,3 +3,6 @@
.gitignore
README.md
changelog.md
.fern/replay.lock
.fern/replay.yml
.gitattributes
1 change: 1 addition & 0 deletions .gitattributes
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
.fern/replay.lock linguist-generated=true
2 changes: 2 additions & 0 deletions changelog.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,5 @@
## [2.0.1] - 2026-07-31

## 2.0.0 - 2026-06-24
### Breaking Changes
* **`CartesiaExperimentalControlsSpeedZero`** has been renamed to **`CartesiaSpeedControlZero`**; update all references and the type argument in `CartesiaExperimentalControls.Speed` (`OneOf<CartesiaSpeedControlZero, double>?`).
Expand Down
3 changes: 3 additions & 0 deletions src/Vapi.Net/Analytics/AnalyticsClient.cs
Original file line number Diff line number Diff line change
Expand Up @@ -81,6 +81,9 @@ private async Task<WithRawResponse<IEnumerable<AnalyticsQueryResult>>> GetAsyncC
}
}

/// <summary>
/// Runs one or more metric queries against call or subscription data using the requested time range, groupings, and aggregate operations.
/// </summary>
public WithRawResponseTask<IEnumerable<AnalyticsQueryResult>> GetAsync(
AnalyticsQueryDto request,
RequestOptions? options = null,
Expand Down
3 changes: 3 additions & 0 deletions src/Vapi.Net/Analytics/IAnalyticsClient.cs
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,9 @@ namespace Vapi.Net;

public partial interface IAnalyticsClient
{
/// <summary>
/// Runs one or more metric queries against call or subscription data using the requested time range, groupings, and aggregate operations.
/// </summary>
WithRawResponseTask<IEnumerable<AnalyticsQueryResult>> GetAsync(
AnalyticsQueryDto request,
RequestOptions? options = null,
Expand Down
27 changes: 27 additions & 0 deletions src/Vapi.Net/Assistants/AssistantsClient.cs
Original file line number Diff line number Diff line change
Expand Up @@ -280,6 +280,18 @@ private async Task<WithRawResponse<Assistant>> DeleteAsyncCore(
var responseBody = await response
.Raw.Content.ReadAsStringAsync(cancellationToken)
.ConfigureAwait(false);
try
{
switch (response.StatusCode)
{
case 409:
throw new ConflictError(JsonUtils.Deserialize<object>(responseBody));
}
}
catch (JsonException)
{
// unable to map error response, throwing generic error
}
throw new VapiClientApiException(
$"Error with status code {response.StatusCode}",
response.StatusCode,
Expand Down Expand Up @@ -356,6 +368,9 @@ private async Task<WithRawResponse<Assistant>> UpdateAsyncCore(
}
}

/// <summary>
/// Returns assistants for the authenticated organization. Filter results by creation or update timestamps and limit the number returned.
/// </summary>
public WithRawResponseTask<IEnumerable<Assistant>> ListAsync(
ListAssistantsRequest request,
RequestOptions? options = null,
Expand All @@ -367,6 +382,9 @@ public WithRawResponseTask<IEnumerable<Assistant>> ListAsync(
);
}

/// <summary>
/// Creates a reusable assistant configuration containing the model, voice, transcriber, tools, prompts, and call behavior.
/// </summary>
public WithRawResponseTask<Assistant> CreateAsync(
CreateAssistantDto request,
RequestOptions? options = null,
Expand All @@ -378,6 +396,9 @@ public WithRawResponseTask<Assistant> CreateAsync(
);
}

/// <summary>
/// Returns the assistant identified by its ID.
/// </summary>
public WithRawResponseTask<Assistant> GetAsync(
string id,
GetAssistantsRequest request,
Expand All @@ -390,6 +411,9 @@ public WithRawResponseTask<Assistant> GetAsync(
);
}

/// <summary>
/// Deletes the assistant identified by its ID.
/// </summary>
public WithRawResponseTask<Assistant> DeleteAsync(
string id,
DeleteAssistantsRequest request,
Expand All @@ -402,6 +426,9 @@ public WithRawResponseTask<Assistant> DeleteAsync(
);
}

/// <summary>
/// Updates the specified fields of the assistant identified by its ID.
/// </summary>
public WithRawResponseTask<Assistant> UpdateAsync(
string id,
UpdateAssistantDto request,
Expand Down
15 changes: 15 additions & 0 deletions src/Vapi.Net/Assistants/IAssistantsClient.cs
Original file line number Diff line number Diff line change
Expand Up @@ -2,32 +2,47 @@ namespace Vapi.Net;

public partial interface IAssistantsClient
{
/// <summary>
/// Returns assistants for the authenticated organization. Filter results by creation or update timestamps and limit the number returned.
/// </summary>
WithRawResponseTask<IEnumerable<Assistant>> ListAsync(
ListAssistantsRequest request,
RequestOptions? options = null,
CancellationToken cancellationToken = default
);

/// <summary>
/// Creates a reusable assistant configuration containing the model, voice, transcriber, tools, prompts, and call behavior.
/// </summary>
WithRawResponseTask<Assistant> CreateAsync(
CreateAssistantDto request,
RequestOptions? options = null,
CancellationToken cancellationToken = default
);

/// <summary>
/// Returns the assistant identified by its ID.
/// </summary>
WithRawResponseTask<Assistant> GetAsync(
string id,
GetAssistantsRequest request,
RequestOptions? options = null,
CancellationToken cancellationToken = default
);

/// <summary>
/// Deletes the assistant identified by its ID.
/// </summary>
WithRawResponseTask<Assistant> DeleteAsync(
string id,
DeleteAssistantsRequest request,
RequestOptions? options = null,
CancellationToken cancellationToken = default
);

/// <summary>
/// Updates the specified fields of the assistant identified by its ID.
/// </summary>
WithRawResponseTask<Assistant> UpdateAsync(
string id,
UpdateAssistantDto request,
Expand Down
9 changes: 9 additions & 0 deletions src/Vapi.Net/Assistants/Requests/UpdateAssistantDto.cs
Original file line number Diff line number Diff line change
Expand Up @@ -33,6 +33,9 @@ public record UpdateAssistantDto
[JsonPropertyName("firstMessage")]
public string? FirstMessage { get; set; }

/// <summary>
/// Set to `true` to allow the user to interrupt the assistant while it speaks the first message. Default is `false`.
/// </summary>
[JsonPropertyName("firstMessageInterruptionsEnabled")]
public bool? FirstMessageInterruptionsEnabled { get; set; }

Expand Down Expand Up @@ -161,6 +164,9 @@ public IEnumerable<
[JsonPropertyName("endCallPhrases")]
public IEnumerable<string>? EndCallPhrases { get; set; }

/// <summary>
/// Compliance settings for the assistant, including HIPAA and PCI behavior, security filtering, and recording consent.
/// </summary>
[JsonPropertyName("compliancePlan")]
public CompliancePlan? CompliancePlan { get; set; }

Expand Down Expand Up @@ -251,6 +257,9 @@ public IEnumerable<
[JsonPropertyName("server")]
public Server? Server { get; set; }

/// <summary>
/// Configuration for collecting and processing DTMF keypad input during calls.
/// </summary>
[JsonPropertyName("keypadInputPlan")]
public KeypadInputPlan? KeypadInputPlan { get; set; }

Expand Down
Loading