diff --git a/src/libs/Vectara/Generated/Vectara.AgentsClient.CreateConnector.g.cs b/src/libs/Vectara/Generated/Vectara.AgentsClient.CreateConnector.g.cs index 3e34a387..aa9adb25 100644 --- a/src/libs/Vectara/Generated/Vectara.AgentsClient.CreateConnector.g.cs +++ b/src/libs/Vectara/Generated/Vectara.AgentsClient.CreateConnector.g.cs @@ -65,7 +65,7 @@ partial void ProcessCreateConnectorResponseContent( /// /// Create agent connector
- /// Create a new connector for an agent to receive events from external platforms like Slack. + /// Create a new connector for an agent to receive events from an external platform like Slack or Google Chat. ///
/// /// @@ -100,7 +100,7 @@ partial void ProcessCreateConnectorResponseContent( } /// /// Create agent connector
- /// Create a new connector for an agent to receive events from external platforms like Slack. + /// Create a new connector for an agent to receive events from an external platform like Slack or Google Chat. ///
/// /// @@ -608,7 +608,7 @@ partial void ProcessCreateConnectorResponseContent( } /// /// Create agent connector
- /// Create a new connector for an agent to receive events from external platforms like Slack. + /// Create a new connector for an agent to receive events from an external platform like Slack or Google Chat. ///
/// /// @@ -624,10 +624,6 @@ partial void ProcessCreateConnectorResponseContent( /// A detailed description of what this connector does.
/// Example: Receives customer support messages from the /// - /// - /// The type of connector.
- /// Example: slack - /// /// /// Arbitrary metadata associated with the connector.
/// Default Value: {}
@@ -639,7 +635,11 @@ partial void ProcessCreateConnectorResponseContent( /// Example: true /// /// - /// Configuration for different types of connectors. + /// Write view of a connector's configuration. Used when creating a connector
+ /// and reused when updating one. Carries the secrets and inputs the customer
+ /// must supply. Server-derived display fields are not accepted here and instead
+ /// appear in the read view: Slack returns `webhook_path`, and gchat returns
+ /// `audience_url` and `client_email`. /// /// Per-request overrides such as headers, query parameters, timeout, retries, and response buffering. /// The token to cancel the operation with @@ -647,11 +647,10 @@ partial void ProcessCreateConnectorResponseContent( public async global::System.Threading.Tasks.Task CreateConnectorAsync( string agentKey, string name, - global::Vectara.SlackConnectorConfiguration configuration, + global::Vectara.CreateConnectorConfiguration configuration, int? requestTimeout = default, int? requestTimeoutMillis = default, string? description = default, - global::Vectara.CreateAgentConnectorRequestType type = default, object? metadata = default, bool? enabled = default, global::Vectara.AutoSDKRequestOptions? requestOptions = default, @@ -661,7 +660,6 @@ partial void ProcessCreateConnectorResponseContent( { Name = name, Description = description, - Type = type, Metadata = metadata, Enabled = enabled, Configuration = configuration, diff --git a/src/libs/Vectara/Generated/Vectara.AgentsClient.UpdateConnector.g.cs b/src/libs/Vectara/Generated/Vectara.AgentsClient.UpdateConnector.g.cs index 0dcaa1ba..bfbbcd5e 100644 --- a/src/libs/Vectara/Generated/Vectara.AgentsClient.UpdateConnector.g.cs +++ b/src/libs/Vectara/Generated/Vectara.AgentsClient.UpdateConnector.g.cs @@ -649,7 +649,11 @@ partial void ProcessUpdateConnectorResponseContent( /// Example: false /// /// - /// Configuration for different types of connectors. + /// Write view of a connector's configuration. Used when creating a connector
+ /// and reused when updating one. Carries the secrets and inputs the customer
+ /// must supply. Server-derived display fields are not accepted here and instead
+ /// appear in the read view: Slack returns `webhook_path`, and gchat returns
+ /// `audience_url` and `client_email`. /// /// Per-request overrides such as headers, query parameters, timeout, retries, and response buffering. /// The token to cancel the operation with @@ -663,7 +667,7 @@ partial void ProcessUpdateConnectorResponseContent( string? description = default, object? metadata = default, bool? enabled = default, - global::Vectara.SlackConnectorConfiguration? configuration = default, + global::Vectara.CreateConnectorConfiguration? configuration = default, global::Vectara.AutoSDKRequestOptions? requestOptions = default, global::System.Threading.CancellationToken cancellationToken = default) { diff --git a/src/libs/Vectara/Generated/Vectara.IAgentsClient.CreateConnector.g.cs b/src/libs/Vectara/Generated/Vectara.IAgentsClient.CreateConnector.g.cs index 3316d136..83bd7c52 100644 --- a/src/libs/Vectara/Generated/Vectara.IAgentsClient.CreateConnector.g.cs +++ b/src/libs/Vectara/Generated/Vectara.IAgentsClient.CreateConnector.g.cs @@ -6,7 +6,7 @@ public partial interface IAgentsClient { /// /// Create agent connector
- /// Create a new connector for an agent to receive events from external platforms like Slack. + /// Create a new connector for an agent to receive events from an external platform like Slack or Google Chat. ///
/// /// @@ -28,7 +28,7 @@ public partial interface IAgentsClient global::System.Threading.CancellationToken cancellationToken = default); /// /// Create agent connector
- /// Create a new connector for an agent to receive events from external platforms like Slack. + /// Create a new connector for an agent to receive events from an external platform like Slack or Google Chat. ///
/// /// @@ -50,7 +50,7 @@ public partial interface IAgentsClient global::System.Threading.CancellationToken cancellationToken = default); /// /// Create agent connector
- /// Create a new connector for an agent to receive events from external platforms like Slack. + /// Create a new connector for an agent to receive events from an external platform like Slack or Google Chat. ///
/// /// @@ -66,10 +66,6 @@ public partial interface IAgentsClient /// A detailed description of what this connector does.
/// Example: Receives customer support messages from the /// - /// - /// The type of connector.
- /// Example: slack - /// /// /// Arbitrary metadata associated with the connector.
/// Default Value: {}
@@ -81,7 +77,11 @@ public partial interface IAgentsClient /// Example: true /// /// - /// Configuration for different types of connectors. + /// Write view of a connector's configuration. Used when creating a connector
+ /// and reused when updating one. Carries the secrets and inputs the customer
+ /// must supply. Server-derived display fields are not accepted here and instead
+ /// appear in the read view: Slack returns `webhook_path`, and gchat returns
+ /// `audience_url` and `client_email`. /// /// Per-request overrides such as headers, query parameters, timeout, retries, and response buffering. /// The token to cancel the operation with @@ -89,11 +89,10 @@ public partial interface IAgentsClient global::System.Threading.Tasks.Task CreateConnectorAsync( string agentKey, string name, - global::Vectara.SlackConnectorConfiguration configuration, + global::Vectara.CreateConnectorConfiguration configuration, int? requestTimeout = default, int? requestTimeoutMillis = default, string? description = default, - global::Vectara.CreateAgentConnectorRequestType type = default, object? metadata = default, bool? enabled = default, global::Vectara.AutoSDKRequestOptions? requestOptions = default, diff --git a/src/libs/Vectara/Generated/Vectara.IAgentsClient.UpdateConnector.g.cs b/src/libs/Vectara/Generated/Vectara.IAgentsClient.UpdateConnector.g.cs index 63ede638..e053fd4f 100644 --- a/src/libs/Vectara/Generated/Vectara.IAgentsClient.UpdateConnector.g.cs +++ b/src/libs/Vectara/Generated/Vectara.IAgentsClient.UpdateConnector.g.cs @@ -86,7 +86,11 @@ public partial interface IAgentsClient /// Example: false /// /// - /// Configuration for different types of connectors. + /// Write view of a connector's configuration. Used when creating a connector
+ /// and reused when updating one. Carries the secrets and inputs the customer
+ /// must supply. Server-derived display fields are not accepted here and instead
+ /// appear in the read view: Slack returns `webhook_path`, and gchat returns
+ /// `audience_url` and `client_email`. /// /// Per-request overrides such as headers, query parameters, timeout, retries, and response buffering. /// The token to cancel the operation with @@ -100,7 +104,7 @@ public partial interface IAgentsClient string? description = default, object? metadata = default, bool? enabled = default, - global::Vectara.SlackConnectorConfiguration? configuration = default, + global::Vectara.CreateConnectorConfiguration? configuration = default, global::Vectara.AutoSDKRequestOptions? requestOptions = default, global::System.Threading.CancellationToken cancellationToken = default); } diff --git a/src/libs/Vectara/Generated/Vectara.JsonConverters.CreateAgentConnectorRequestType.g.cs b/src/libs/Vectara/Generated/Vectara.JsonConverters.AgentConnectorLastWebhookStatus.g.cs similarity index 68% rename from src/libs/Vectara/Generated/Vectara.JsonConverters.CreateAgentConnectorRequestType.g.cs rename to src/libs/Vectara/Generated/Vectara.JsonConverters.AgentConnectorLastWebhookStatus.g.cs index f1401941..8a622b98 100644 --- a/src/libs/Vectara/Generated/Vectara.JsonConverters.CreateAgentConnectorRequestType.g.cs +++ b/src/libs/Vectara/Generated/Vectara.JsonConverters.AgentConnectorLastWebhookStatus.g.cs @@ -3,10 +3,10 @@ namespace Vectara.JsonConverters { /// - public sealed class CreateAgentConnectorRequestTypeJsonConverter : global::System.Text.Json.Serialization.JsonConverter + public sealed class AgentConnectorLastWebhookStatusJsonConverter : global::System.Text.Json.Serialization.JsonConverter { /// - public override global::Vectara.CreateAgentConnectorRequestType Read( + public override global::Vectara.AgentConnectorLastWebhookStatus Read( ref global::System.Text.Json.Utf8JsonReader reader, global::System.Type typeToConvert, global::System.Text.Json.JsonSerializerOptions options) @@ -18,7 +18,7 @@ public sealed class CreateAgentConnectorRequestTypeJsonConverter : global::Syste var stringValue = reader.GetString(); if (stringValue != null) { - return global::Vectara.CreateAgentConnectorRequestTypeExtensions.ToEnum(stringValue) ?? default; + return global::Vectara.AgentConnectorLastWebhookStatusExtensions.ToEnum(stringValue) ?? default; } break; @@ -26,11 +26,11 @@ public sealed class CreateAgentConnectorRequestTypeJsonConverter : global::Syste case global::System.Text.Json.JsonTokenType.Number: { var numValue = reader.GetInt32(); - return (global::Vectara.CreateAgentConnectorRequestType)numValue; + return (global::Vectara.AgentConnectorLastWebhookStatus)numValue; } case global::System.Text.Json.JsonTokenType.Null: { - return default(global::Vectara.CreateAgentConnectorRequestType); + return default(global::Vectara.AgentConnectorLastWebhookStatus); } default: throw new global::System.ArgumentOutOfRangeException(nameof(reader)); @@ -42,12 +42,12 @@ public sealed class CreateAgentConnectorRequestTypeJsonConverter : global::Syste /// public override void Write( global::System.Text.Json.Utf8JsonWriter writer, - global::Vectara.CreateAgentConnectorRequestType value, + global::Vectara.AgentConnectorLastWebhookStatus value, global::System.Text.Json.JsonSerializerOptions options) { writer = writer ?? throw new global::System.ArgumentNullException(nameof(writer)); - writer.WriteStringValue(global::Vectara.CreateAgentConnectorRequestTypeExtensions.ToValueString(value)); + writer.WriteStringValue(global::Vectara.AgentConnectorLastWebhookStatusExtensions.ToValueString(value)); } } } diff --git a/src/libs/Vectara/Generated/Vectara.JsonConverters.CreateAgentConnectorRequestTypeNullable.g.cs b/src/libs/Vectara/Generated/Vectara.JsonConverters.AgentConnectorLastWebhookStatusNullable.g.cs similarity index 70% rename from src/libs/Vectara/Generated/Vectara.JsonConverters.CreateAgentConnectorRequestTypeNullable.g.cs rename to src/libs/Vectara/Generated/Vectara.JsonConverters.AgentConnectorLastWebhookStatusNullable.g.cs index b6ad4589..31766825 100644 --- a/src/libs/Vectara/Generated/Vectara.JsonConverters.CreateAgentConnectorRequestTypeNullable.g.cs +++ b/src/libs/Vectara/Generated/Vectara.JsonConverters.AgentConnectorLastWebhookStatusNullable.g.cs @@ -3,10 +3,10 @@ namespace Vectara.JsonConverters { /// - public sealed class CreateAgentConnectorRequestTypeNullableJsonConverter : global::System.Text.Json.Serialization.JsonConverter + public sealed class AgentConnectorLastWebhookStatusNullableJsonConverter : global::System.Text.Json.Serialization.JsonConverter { /// - public override global::Vectara.CreateAgentConnectorRequestType? Read( + public override global::Vectara.AgentConnectorLastWebhookStatus? Read( ref global::System.Text.Json.Utf8JsonReader reader, global::System.Type typeToConvert, global::System.Text.Json.JsonSerializerOptions options) @@ -18,7 +18,7 @@ public sealed class CreateAgentConnectorRequestTypeNullableJsonConverter : globa var stringValue = reader.GetString(); if (stringValue != null) { - return global::Vectara.CreateAgentConnectorRequestTypeExtensions.ToEnum(stringValue); + return global::Vectara.AgentConnectorLastWebhookStatusExtensions.ToEnum(stringValue); } break; @@ -26,11 +26,11 @@ public sealed class CreateAgentConnectorRequestTypeNullableJsonConverter : globa case global::System.Text.Json.JsonTokenType.Number: { var numValue = reader.GetInt32(); - return (global::Vectara.CreateAgentConnectorRequestType)numValue; + return (global::Vectara.AgentConnectorLastWebhookStatus)numValue; } case global::System.Text.Json.JsonTokenType.Null: { - return default(global::Vectara.CreateAgentConnectorRequestType?); + return default(global::Vectara.AgentConnectorLastWebhookStatus?); } default: throw new global::System.ArgumentOutOfRangeException(nameof(reader)); @@ -42,7 +42,7 @@ public sealed class CreateAgentConnectorRequestTypeNullableJsonConverter : globa /// public override void Write( global::System.Text.Json.Utf8JsonWriter writer, - global::Vectara.CreateAgentConnectorRequestType? value, + global::Vectara.AgentConnectorLastWebhookStatus? value, global::System.Text.Json.JsonSerializerOptions options) { writer = writer ?? throw new global::System.ArgumentNullException(nameof(writer)); @@ -53,7 +53,7 @@ public override void Write( } else { - writer.WriteStringValue(global::Vectara.CreateAgentConnectorRequestTypeExtensions.ToValueString(value.Value)); + writer.WriteStringValue(global::Vectara.AgentConnectorLastWebhookStatusExtensions.ToValueString(value.Value)); } } } diff --git a/src/libs/Vectara/Generated/Vectara.JsonConverters.ConnectorConfiguration.g.cs b/src/libs/Vectara/Generated/Vectara.JsonConverters.ConnectorConfiguration.g.cs index 0b3b2867..41a4d5d0 100644 --- a/src/libs/Vectara/Generated/Vectara.JsonConverters.ConnectorConfiguration.g.cs +++ b/src/libs/Vectara/Generated/Vectara.JsonConverters.ConnectorConfiguration.g.cs @@ -28,10 +28,19 @@ public class ConnectorConfigurationJsonConverter : global::System.Text.Json.Seri throw new global::System.InvalidOperationException($"Cannot get type info for {nameof(global::Vectara.SlackConnectorConfiguration)}"); slack = global::System.Text.Json.JsonSerializer.Deserialize(ref reader, typeInfo); } + global::Vectara.GchatConnectorConfiguration? gchat = default; + if (discriminator?.Type == global::Vectara.ConnectorConfigurationDiscriminatorType.Gchat) + { + var typeInfo = typeInfoResolver.GetTypeInfo(typeof(global::Vectara.GchatConnectorConfiguration), options) as global::System.Text.Json.Serialization.Metadata.JsonTypeInfo ?? + throw new global::System.InvalidOperationException($"Cannot get type info for {nameof(global::Vectara.GchatConnectorConfiguration)}"); + gchat = global::System.Text.Json.JsonSerializer.Deserialize(ref reader, typeInfo); + } var __value = new global::Vectara.ConnectorConfiguration( discriminator?.Type, - slack + slack, + + gchat ); return __value; @@ -52,6 +61,12 @@ public override void Write( throw new global::System.InvalidOperationException($"Cannot get type info for {typeof(global::Vectara.SlackConnectorConfiguration).Name}"); global::System.Text.Json.JsonSerializer.Serialize(writer, value.Slack!, typeInfo); } + else if (value.IsGchat) + { + var typeInfo = typeInfoResolver.GetTypeInfo(typeof(global::Vectara.GchatConnectorConfiguration), options) as global::System.Text.Json.Serialization.Metadata.JsonTypeInfo ?? + throw new global::System.InvalidOperationException($"Cannot get type info for {typeof(global::Vectara.GchatConnectorConfiguration).Name}"); + global::System.Text.Json.JsonSerializer.Serialize(writer, value.Gchat!, typeInfo); + } } } } \ No newline at end of file diff --git a/src/libs/Vectara/Generated/Vectara.JsonConverters.CreateConnectorConfiguration.g.cs b/src/libs/Vectara/Generated/Vectara.JsonConverters.CreateConnectorConfiguration.g.cs new file mode 100644 index 00000000..4b680c6c --- /dev/null +++ b/src/libs/Vectara/Generated/Vectara.JsonConverters.CreateConnectorConfiguration.g.cs @@ -0,0 +1,72 @@ +#nullable enable +#pragma warning disable CS0618 // Type or member is obsolete + +namespace Vectara.JsonConverters +{ + /// + public class CreateConnectorConfigurationJsonConverter : global::System.Text.Json.Serialization.JsonConverter + { + /// + public override global::Vectara.CreateConnectorConfiguration Read( + ref global::System.Text.Json.Utf8JsonReader reader, + global::System.Type typeToConvert, + global::System.Text.Json.JsonSerializerOptions options) + { + options = options ?? throw new global::System.ArgumentNullException(nameof(options)); + var typeInfoResolver = options.TypeInfoResolver ?? throw new global::System.InvalidOperationException("TypeInfoResolver is not set."); + + + var readerCopy = reader; + var discriminatorTypeInfo = typeInfoResolver.GetTypeInfo(typeof(global::Vectara.CreateConnectorConfigurationDiscriminator), options) as global::System.Text.Json.Serialization.Metadata.JsonTypeInfo ?? + throw new global::System.InvalidOperationException($"Cannot get type info for {nameof(global::Vectara.CreateConnectorConfigurationDiscriminator)}"); + var discriminator = global::System.Text.Json.JsonSerializer.Deserialize(ref readerCopy, discriminatorTypeInfo); + + global::Vectara.CreateSlackConnectorConfiguration? slack = default; + if (discriminator?.Type == global::Vectara.CreateConnectorConfigurationDiscriminatorType.Slack) + { + var typeInfo = typeInfoResolver.GetTypeInfo(typeof(global::Vectara.CreateSlackConnectorConfiguration), options) as global::System.Text.Json.Serialization.Metadata.JsonTypeInfo ?? + throw new global::System.InvalidOperationException($"Cannot get type info for {nameof(global::Vectara.CreateSlackConnectorConfiguration)}"); + slack = global::System.Text.Json.JsonSerializer.Deserialize(ref reader, typeInfo); + } + global::Vectara.CreateGchatConnectorConfiguration? gchat = default; + if (discriminator?.Type == global::Vectara.CreateConnectorConfigurationDiscriminatorType.Gchat) + { + var typeInfo = typeInfoResolver.GetTypeInfo(typeof(global::Vectara.CreateGchatConnectorConfiguration), options) as global::System.Text.Json.Serialization.Metadata.JsonTypeInfo ?? + throw new global::System.InvalidOperationException($"Cannot get type info for {nameof(global::Vectara.CreateGchatConnectorConfiguration)}"); + gchat = global::System.Text.Json.JsonSerializer.Deserialize(ref reader, typeInfo); + } + + var __value = new global::Vectara.CreateConnectorConfiguration( + discriminator?.Type, + slack, + + gchat + ); + + return __value; + } + + /// + public override void Write( + global::System.Text.Json.Utf8JsonWriter writer, + global::Vectara.CreateConnectorConfiguration value, + global::System.Text.Json.JsonSerializerOptions options) + { + options = options ?? throw new global::System.ArgumentNullException(nameof(options)); + var typeInfoResolver = options.TypeInfoResolver ?? throw new global::System.InvalidOperationException("TypeInfoResolver is not set."); + + if (value.IsSlack) + { + var typeInfo = typeInfoResolver.GetTypeInfo(typeof(global::Vectara.CreateSlackConnectorConfiguration), options) as global::System.Text.Json.Serialization.Metadata.JsonTypeInfo ?? + throw new global::System.InvalidOperationException($"Cannot get type info for {typeof(global::Vectara.CreateSlackConnectorConfiguration).Name}"); + global::System.Text.Json.JsonSerializer.Serialize(writer, value.Slack!, typeInfo); + } + else if (value.IsGchat) + { + var typeInfo = typeInfoResolver.GetTypeInfo(typeof(global::Vectara.CreateGchatConnectorConfiguration), options) as global::System.Text.Json.Serialization.Metadata.JsonTypeInfo ?? + throw new global::System.InvalidOperationException($"Cannot get type info for {typeof(global::Vectara.CreateGchatConnectorConfiguration).Name}"); + global::System.Text.Json.JsonSerializer.Serialize(writer, value.Gchat!, typeInfo); + } + } + } +} \ No newline at end of file diff --git a/src/libs/Vectara/Generated/Vectara.JsonConverters.CreateConnectorConfigurationDiscriminatorType.g.cs b/src/libs/Vectara/Generated/Vectara.JsonConverters.CreateConnectorConfigurationDiscriminatorType.g.cs new file mode 100644 index 00000000..dfd3a395 --- /dev/null +++ b/src/libs/Vectara/Generated/Vectara.JsonConverters.CreateConnectorConfigurationDiscriminatorType.g.cs @@ -0,0 +1,53 @@ +#nullable enable + +namespace Vectara.JsonConverters +{ + /// + public sealed class CreateConnectorConfigurationDiscriminatorTypeJsonConverter : global::System.Text.Json.Serialization.JsonConverter + { + /// + public override global::Vectara.CreateConnectorConfigurationDiscriminatorType Read( + ref global::System.Text.Json.Utf8JsonReader reader, + global::System.Type typeToConvert, + global::System.Text.Json.JsonSerializerOptions options) + { + switch (reader.TokenType) + { + case global::System.Text.Json.JsonTokenType.String: + { + var stringValue = reader.GetString(); + if (stringValue != null) + { + return global::Vectara.CreateConnectorConfigurationDiscriminatorTypeExtensions.ToEnum(stringValue) ?? default; + } + + break; + } + case global::System.Text.Json.JsonTokenType.Number: + { + var numValue = reader.GetInt32(); + return (global::Vectara.CreateConnectorConfigurationDiscriminatorType)numValue; + } + case global::System.Text.Json.JsonTokenType.Null: + { + return default(global::Vectara.CreateConnectorConfigurationDiscriminatorType); + } + default: + throw new global::System.ArgumentOutOfRangeException(nameof(reader)); + } + + return default; + } + + /// + public override void Write( + global::System.Text.Json.Utf8JsonWriter writer, + global::Vectara.CreateConnectorConfigurationDiscriminatorType value, + global::System.Text.Json.JsonSerializerOptions options) + { + writer = writer ?? throw new global::System.ArgumentNullException(nameof(writer)); + + writer.WriteStringValue(global::Vectara.CreateConnectorConfigurationDiscriminatorTypeExtensions.ToValueString(value)); + } + } +} diff --git a/src/libs/Vectara/Generated/Vectara.JsonConverters.CreateConnectorConfigurationDiscriminatorTypeNullable.g.cs b/src/libs/Vectara/Generated/Vectara.JsonConverters.CreateConnectorConfigurationDiscriminatorTypeNullable.g.cs new file mode 100644 index 00000000..e8f8070d --- /dev/null +++ b/src/libs/Vectara/Generated/Vectara.JsonConverters.CreateConnectorConfigurationDiscriminatorTypeNullable.g.cs @@ -0,0 +1,60 @@ +#nullable enable + +namespace Vectara.JsonConverters +{ + /// + public sealed class CreateConnectorConfigurationDiscriminatorTypeNullableJsonConverter : global::System.Text.Json.Serialization.JsonConverter + { + /// + public override global::Vectara.CreateConnectorConfigurationDiscriminatorType? Read( + ref global::System.Text.Json.Utf8JsonReader reader, + global::System.Type typeToConvert, + global::System.Text.Json.JsonSerializerOptions options) + { + switch (reader.TokenType) + { + case global::System.Text.Json.JsonTokenType.String: + { + var stringValue = reader.GetString(); + if (stringValue != null) + { + return global::Vectara.CreateConnectorConfigurationDiscriminatorTypeExtensions.ToEnum(stringValue); + } + + break; + } + case global::System.Text.Json.JsonTokenType.Number: + { + var numValue = reader.GetInt32(); + return (global::Vectara.CreateConnectorConfigurationDiscriminatorType)numValue; + } + case global::System.Text.Json.JsonTokenType.Null: + { + return default(global::Vectara.CreateConnectorConfigurationDiscriminatorType?); + } + default: + throw new global::System.ArgumentOutOfRangeException(nameof(reader)); + } + + return default; + } + + /// + public override void Write( + global::System.Text.Json.Utf8JsonWriter writer, + global::Vectara.CreateConnectorConfigurationDiscriminatorType? value, + global::System.Text.Json.JsonSerializerOptions options) + { + writer = writer ?? throw new global::System.ArgumentNullException(nameof(writer)); + + if (value == null) + { + writer.WriteNullValue(); + } + else + { + writer.WriteStringValue(global::Vectara.CreateConnectorConfigurationDiscriminatorTypeExtensions.ToValueString(value.Value)); + } + } + } +} diff --git a/src/libs/Vectara/Generated/Vectara.JsonSerializerContext.g.cs b/src/libs/Vectara/Generated/Vectara.JsonSerializerContext.g.cs index 1dfdfb5e..229fc48f 100644 --- a/src/libs/Vectara/Generated/Vectara.JsonSerializerContext.g.cs +++ b/src/libs/Vectara/Generated/Vectara.JsonSerializerContext.g.cs @@ -345,9 +345,13 @@ namespace Vectara typeof(global::Vectara.JsonConverters.AgentConnectorStatusNullableJsonConverter), - typeof(global::Vectara.JsonConverters.CreateAgentConnectorRequestTypeJsonConverter), + typeof(global::Vectara.JsonConverters.AgentConnectorLastWebhookStatusJsonConverter), - typeof(global::Vectara.JsonConverters.CreateAgentConnectorRequestTypeNullableJsonConverter), + typeof(global::Vectara.JsonConverters.AgentConnectorLastWebhookStatusNullableJsonConverter), + + typeof(global::Vectara.JsonConverters.CreateConnectorConfigurationDiscriminatorTypeJsonConverter), + + typeof(global::Vectara.JsonConverters.CreateConnectorConfigurationDiscriminatorTypeNullableJsonConverter), typeof(global::Vectara.JsonConverters.RuleTargetsDiscriminatorTypeJsonConverter), @@ -711,6 +715,8 @@ namespace Vectara typeof(global::Vectara.JsonConverters.ConnectorConfigurationJsonConverter), + typeof(global::Vectara.JsonConverters.CreateConnectorConfigurationJsonConverter), + typeof(global::Vectara.JsonConverters.RuleTargetsJsonConverter), typeof(global::Vectara.JsonConverters.AliasPolicyJsonConverter), @@ -1678,9 +1684,13 @@ internal sealed partial class SourceGenerationContextChunk0 : global::System.Tex typeof(global::Vectara.JsonConverters.AgentConnectorStatusNullableJsonConverter), - typeof(global::Vectara.JsonConverters.CreateAgentConnectorRequestTypeJsonConverter), + typeof(global::Vectara.JsonConverters.AgentConnectorLastWebhookStatusJsonConverter), - typeof(global::Vectara.JsonConverters.CreateAgentConnectorRequestTypeNullableJsonConverter), + typeof(global::Vectara.JsonConverters.AgentConnectorLastWebhookStatusNullableJsonConverter), + + typeof(global::Vectara.JsonConverters.CreateConnectorConfigurationDiscriminatorTypeJsonConverter), + + typeof(global::Vectara.JsonConverters.CreateConnectorConfigurationDiscriminatorTypeNullableJsonConverter), typeof(global::Vectara.JsonConverters.RuleTargetsDiscriminatorTypeJsonConverter), @@ -2044,6 +2054,8 @@ internal sealed partial class SourceGenerationContextChunk0 : global::System.Tex typeof(global::Vectara.JsonConverters.ConnectorConfigurationJsonConverter), + typeof(global::Vectara.JsonConverters.CreateConnectorConfigurationJsonConverter), + typeof(global::Vectara.JsonConverters.RuleTargetsJsonConverter), typeof(global::Vectara.JsonConverters.AliasPolicyJsonConverter), @@ -2307,16 +2319,22 @@ internal sealed partial class SourceGenerationContextChunk0 : global::System.Tex [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::Vectara.ReplaceAgentSecretsRequest))] [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::Vectara.UpdateAgentSecretsRequest))] [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::Vectara.SlackConnectorConfiguration))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::Vectara.GchatConnectorConfiguration))] [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::Vectara.ConnectorConfiguration), TypeInfoPropertyName = "ConnectorConfiguration2")] [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::Vectara.ConnectorConfigurationDiscriminator))] [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::Vectara.ConnectorConfigurationDiscriminatorType), TypeInfoPropertyName = "ConnectorConfigurationDiscriminatorType2")] [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::Vectara.AgentConnector))] [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::Vectara.AgentConnectorType), TypeInfoPropertyName = "AgentConnectorType2")] [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::Vectara.AgentConnectorStatus), TypeInfoPropertyName = "AgentConnectorStatus2")] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::Vectara.AgentConnectorLastWebhookStatus), TypeInfoPropertyName = "AgentConnectorLastWebhookStatus2")] [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::Vectara.ListAgentConnectorsResponse))] [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Collections.Generic.IList))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::Vectara.CreateSlackConnectorConfiguration))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::Vectara.CreateGchatConnectorConfiguration))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::Vectara.CreateConnectorConfiguration), TypeInfoPropertyName = "CreateConnectorConfiguration2")] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::Vectara.CreateConnectorConfigurationDiscriminator))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::Vectara.CreateConnectorConfigurationDiscriminatorType), TypeInfoPropertyName = "CreateConnectorConfigurationDiscriminatorType2")] [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::Vectara.CreateAgentConnectorRequest))] - [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::Vectara.CreateAgentConnectorRequestType), TypeInfoPropertyName = "CreateAgentConnectorRequestType2")] [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::Vectara.UpdateAgentConnectorRequest))] [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::Vectara.SingleRuleTargets))] [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::Vectara.WeightedTarget))] @@ -2835,8 +2853,10 @@ private SourceGenerationContext(global::System.Text.Json.JsonSerializerOptions o options.Converters.Add(new global::Vectara.JsonConverters.AgentConnectorTypeNullableJsonConverter()); options.Converters.Add(new global::Vectara.JsonConverters.AgentConnectorStatusJsonConverter()); options.Converters.Add(new global::Vectara.JsonConverters.AgentConnectorStatusNullableJsonConverter()); - options.Converters.Add(new global::Vectara.JsonConverters.CreateAgentConnectorRequestTypeJsonConverter()); - options.Converters.Add(new global::Vectara.JsonConverters.CreateAgentConnectorRequestTypeNullableJsonConverter()); + options.Converters.Add(new global::Vectara.JsonConverters.AgentConnectorLastWebhookStatusJsonConverter()); + options.Converters.Add(new global::Vectara.JsonConverters.AgentConnectorLastWebhookStatusNullableJsonConverter()); + options.Converters.Add(new global::Vectara.JsonConverters.CreateConnectorConfigurationDiscriminatorTypeJsonConverter()); + options.Converters.Add(new global::Vectara.JsonConverters.CreateConnectorConfigurationDiscriminatorTypeNullableJsonConverter()); options.Converters.Add(new global::Vectara.JsonConverters.RuleTargetsDiscriminatorTypeJsonConverter()); options.Converters.Add(new global::Vectara.JsonConverters.RuleTargetsDiscriminatorTypeNullableJsonConverter()); options.Converters.Add(new global::Vectara.JsonConverters.AliasPolicyDiscriminatorTypeJsonConverter()); @@ -3018,6 +3038,7 @@ private SourceGenerationContext(global::System.Text.Json.JsonSerializerOptions o options.Converters.Add(new global::Vectara.JsonConverters.AgentStreamedResponseJsonConverter()); options.Converters.Add(new global::Vectara.JsonConverters.ScheduleConfigurationJsonConverter()); options.Converters.Add(new global::Vectara.JsonConverters.ConnectorConfigurationJsonConverter()); + options.Converters.Add(new global::Vectara.JsonConverters.CreateConnectorConfigurationJsonConverter()); options.Converters.Add(new global::Vectara.JsonConverters.RuleTargetsJsonConverter()); options.Converters.Add(new global::Vectara.JsonConverters.AliasPolicyJsonConverter()); options.Converters.Add(new global::Vectara.JsonConverters.S3SourceConfigurationJsonConverter()); diff --git a/src/libs/Vectara/Generated/Vectara.JsonSerializerContextTypes.g.cs b/src/libs/Vectara/Generated/Vectara.JsonSerializerContextTypes.g.cs index 86bb2984..a7307e09 100644 --- a/src/libs/Vectara/Generated/Vectara.JsonSerializerContextTypes.g.cs +++ b/src/libs/Vectara/Generated/Vectara.JsonSerializerContextTypes.g.cs @@ -2572,919 +2572,943 @@ public sealed partial class JsonSerializerContextTypes /// /// /// - public global::Vectara.ConnectorConfiguration? Type636 { get; set; } + public global::Vectara.GchatConnectorConfiguration? Type636 { get; set; } /// /// /// - public global::Vectara.ConnectorConfigurationDiscriminator? Type637 { get; set; } + public global::Vectara.ConnectorConfiguration? Type637 { get; set; } /// /// /// - public global::Vectara.ConnectorConfigurationDiscriminatorType? Type638 { get; set; } + public global::Vectara.ConnectorConfigurationDiscriminator? Type638 { get; set; } /// /// /// - public global::Vectara.AgentConnector? Type639 { get; set; } + public global::Vectara.ConnectorConfigurationDiscriminatorType? Type639 { get; set; } /// /// /// - public global::Vectara.AgentConnectorType? Type640 { get; set; } + public global::Vectara.AgentConnector? Type640 { get; set; } /// /// /// - public global::Vectara.AgentConnectorStatus? Type641 { get; set; } + public global::Vectara.AgentConnectorType? Type641 { get; set; } /// /// /// - public global::Vectara.ListAgentConnectorsResponse? Type642 { get; set; } + public global::Vectara.AgentConnectorStatus? Type642 { get; set; } /// /// /// - public global::System.Collections.Generic.IList? Type643 { get; set; } + public global::Vectara.AgentConnectorLastWebhookStatus? Type643 { get; set; } /// /// /// - public global::Vectara.CreateAgentConnectorRequest? Type644 { get; set; } + public global::Vectara.ListAgentConnectorsResponse? Type644 { get; set; } /// /// /// - public global::Vectara.CreateAgentConnectorRequestType? Type645 { get; set; } + public global::System.Collections.Generic.IList? Type645 { get; set; } /// /// /// - public global::Vectara.UpdateAgentConnectorRequest? Type646 { get; set; } + public global::Vectara.CreateSlackConnectorConfiguration? Type646 { get; set; } /// /// /// - public global::Vectara.SingleRuleTargets? Type647 { get; set; } + public global::Vectara.CreateGchatConnectorConfiguration? Type647 { get; set; } /// /// /// - public global::Vectara.WeightedTarget? Type648 { get; set; } + public global::Vectara.CreateConnectorConfiguration? Type648 { get; set; } /// /// /// - public global::Vectara.WeightedRuleTargets? Type649 { get; set; } + public global::Vectara.CreateConnectorConfigurationDiscriminator? Type649 { get; set; } /// /// /// - public global::System.Collections.Generic.IList? Type650 { get; set; } + public global::Vectara.CreateConnectorConfigurationDiscriminatorType? Type650 { get; set; } /// /// /// - public global::Vectara.RuleTargets? Type651 { get; set; } + public global::Vectara.CreateAgentConnectorRequest? Type651 { get; set; } /// /// /// - public global::Vectara.RuleTargetsDiscriminator? Type652 { get; set; } + public global::Vectara.UpdateAgentConnectorRequest? Type652 { get; set; } /// /// /// - public global::Vectara.RuleTargetsDiscriminatorType? Type653 { get; set; } + public global::Vectara.SingleRuleTargets? Type653 { get; set; } /// /// /// - public global::Vectara.AliasRule? Type654 { get; set; } + public global::Vectara.WeightedTarget? Type654 { get; set; } /// /// /// - public global::Vectara.RoutedAliasPolicy? Type655 { get; set; } + public global::Vectara.WeightedRuleTargets? Type655 { get; set; } /// /// /// - public global::System.Collections.Generic.IList? Type656 { get; set; } + public global::System.Collections.Generic.IList? Type656 { get; set; } /// /// /// - public global::Vectara.AliasPolicy? Type657 { get; set; } + public global::Vectara.RuleTargets? Type657 { get; set; } /// /// /// - public global::Vectara.AliasPolicyDiscriminator? Type658 { get; set; } + public global::Vectara.RuleTargetsDiscriminator? Type658 { get; set; } /// /// /// - public global::Vectara.AliasPolicyDiscriminatorType? Type659 { get; set; } + public global::Vectara.RuleTargetsDiscriminatorType? Type659 { get; set; } /// /// /// - public global::Vectara.AgentAlias? Type660 { get; set; } + public global::Vectara.AliasRule? Type660 { get; set; } /// /// /// - public global::Vectara.ListAgentAliasesResponse? Type661 { get; set; } + public global::Vectara.RoutedAliasPolicy? Type661 { get; set; } /// /// /// - public global::System.Collections.Generic.IList? Type662 { get; set; } + public global::System.Collections.Generic.IList? Type662 { get; set; } /// /// /// - public global::Vectara.CreateAgentAliasRequest? Type663 { get; set; } + public global::Vectara.AliasPolicy? Type663 { get; set; } /// /// /// - public global::Vectara.UpdateAgentAliasRequest? Type664 { get; set; } + public global::Vectara.AliasPolicyDiscriminator? Type664 { get; set; } /// /// /// - public global::Vectara.ReplaceAliasPolicyRequest? Type665 { get; set; } + public global::Vectara.AliasPolicyDiscriminatorType? Type665 { get; set; } /// /// /// - public global::Vectara.PipelineStatus? Type666 { get; set; } + public global::Vectara.AgentAlias? Type666 { get; set; } /// /// /// - public global::Vectara.BaseS3SourceConfiguration? Type667 { get; set; } + public global::Vectara.ListAgentAliasesResponse? Type667 { get; set; } /// /// /// - public global::Vectara.S3SourceConfiguration? Type668 { get; set; } + public global::System.Collections.Generic.IList? Type668 { get; set; } /// /// /// - public global::Vectara.SharedGoogleDriveScope? Type669 { get; set; } + public global::Vectara.CreateAgentAliasRequest? Type669 { get; set; } /// /// /// - public global::Vectara.MyGoogleDriveScope? Type670 { get; set; } + public global::Vectara.UpdateAgentAliasRequest? Type670 { get; set; } /// /// /// - public global::Vectara.GoogleDriveScope? Type671 { get; set; } + public global::Vectara.ReplaceAliasPolicyRequest? Type671 { get; set; } /// /// /// - public global::Vectara.GoogleDriveScopeDiscriminator? Type672 { get; set; } + public global::Vectara.PipelineStatus? Type672 { get; set; } /// /// /// - public global::Vectara.GoogleDriveScopeDiscriminatorType? Type673 { get; set; } + public global::Vectara.BaseS3SourceConfiguration? Type673 { get; set; } /// /// /// - public global::Vectara.BaseGoogleDriveSourceConfiguration? Type674 { get; set; } + public global::Vectara.S3SourceConfiguration? Type674 { get; set; } /// /// /// - public global::System.Collections.Generic.IList? Type675 { get; set; } + public global::Vectara.SharedGoogleDriveScope? Type675 { get; set; } /// /// /// - public global::Vectara.GoogleDriveSourceConfiguration? Type676 { get; set; } + public global::Vectara.MyGoogleDriveScope? Type676 { get; set; } /// /// /// - public global::Vectara.BaseWebSource? Type677 { get; set; } + public global::Vectara.GoogleDriveScope? Type677 { get; set; } /// /// /// - public global::Vectara.SitemapPagesSource? Type678 { get; set; } + public global::Vectara.GoogleDriveScopeDiscriminator? Type678 { get; set; } /// /// /// - public global::Vectara.BaseCrawlPagesSource? Type679 { get; set; } + public global::Vectara.GoogleDriveScopeDiscriminatorType? Type679 { get; set; } /// /// /// - public global::Vectara.CrawlPagesSource? Type680 { get; set; } + public global::Vectara.BaseGoogleDriveSourceConfiguration? Type680 { get; set; } /// /// /// - public global::Vectara.CrawlPagesSourceVariant2? Type681 { get; set; } + public global::System.Collections.Generic.IList? Type681 { get; set; } /// /// /// - public global::Vectara.SitemapCrawlPagesSource? Type682 { get; set; } + public global::Vectara.GoogleDriveSourceConfiguration? Type682 { get; set; } /// /// /// - public global::Vectara.SitemapCrawlPagesSourceVariant2? Type683 { get; set; } + public global::Vectara.BaseWebSource? Type683 { get; set; } /// /// /// - public global::Vectara.WebPagesSource? Type684 { get; set; } + public global::Vectara.SitemapPagesSource? Type684 { get; set; } /// /// /// - public global::Vectara.WebPagesSourceDiscriminator? Type685 { get; set; } + public global::Vectara.BaseCrawlPagesSource? Type685 { get; set; } /// /// /// - public global::Vectara.WebPagesSourceDiscriminatorType? Type686 { get; set; } + public global::Vectara.CrawlPagesSource? Type686 { get; set; } /// /// /// - public global::Vectara.WebSourceConfiguration? Type687 { get; set; } + public global::Vectara.CrawlPagesSourceVariant2? Type687 { get; set; } /// /// /// - public global::Vectara.WebSourceConfigurationVariant2? Type688 { get; set; } + public global::Vectara.SitemapCrawlPagesSource? Type688 { get; set; } /// /// /// - public global::Vectara.PipelineSource? Type689 { get; set; } + public global::Vectara.SitemapCrawlPagesSourceVariant2? Type689 { get; set; } /// /// /// - public global::Vectara.PipelineSourceDiscriminator? Type690 { get; set; } + public global::Vectara.WebPagesSource? Type690 { get; set; } /// /// /// - public global::Vectara.PipelineSourceDiscriminatorType? Type691 { get; set; } + public global::Vectara.WebPagesSourceDiscriminator? Type691 { get; set; } /// /// /// - public global::Vectara.CronTriggerConfiguration? Type692 { get; set; } + public global::Vectara.WebPagesSourceDiscriminatorType? Type692 { get; set; } /// /// /// - public global::Vectara.IntervalTriggerConfiguration? Type693 { get; set; } + public global::Vectara.WebSourceConfiguration? Type693 { get; set; } /// /// /// - public global::Vectara.ManualTriggerConfiguration? Type694 { get; set; } + public global::Vectara.WebSourceConfigurationVariant2? Type694 { get; set; } /// /// /// - public global::Vectara.PipelineTrigger? Type695 { get; set; } + public global::Vectara.PipelineSource? Type695 { get; set; } /// /// /// - public global::Vectara.PipelineTriggerDiscriminator? Type696 { get; set; } + public global::Vectara.PipelineSourceDiscriminator? Type696 { get; set; } /// /// /// - public global::Vectara.PipelineTriggerDiscriminatorType? Type697 { get; set; } + public global::Vectara.PipelineSourceDiscriminatorType? Type697 { get; set; } /// /// /// - public global::Vectara.ConditionVerification? Type698 { get; set; } + public global::Vectara.CronTriggerConfiguration? Type698 { get; set; } /// /// /// - public global::Vectara.AgentVerification? Type699 { get; set; } + public global::Vectara.IntervalTriggerConfiguration? Type699 { get; set; } /// /// /// - public global::Vectara.PipelineVerification? Type700 { get; set; } + public global::Vectara.ManualTriggerConfiguration? Type700 { get; set; } /// /// /// - public global::Vectara.PipelineVerificationDiscriminator? Type701 { get; set; } + public global::Vectara.PipelineTrigger? Type701 { get; set; } /// /// /// - public global::Vectara.PipelineVerificationDiscriminatorType? Type702 { get; set; } + public global::Vectara.PipelineTriggerDiscriminator? Type702 { get; set; } /// /// /// - public global::Vectara.AgentTransformConfiguration? Type703 { get; set; } + public global::Vectara.PipelineTriggerDiscriminatorType? Type703 { get; set; } /// /// /// - public global::Vectara.PipelineTransform? Type704 { get; set; } + public global::Vectara.ConditionVerification? Type704 { get; set; } /// /// /// - public global::Vectara.PipelineTransformDiscriminator? Type705 { get; set; } + public global::Vectara.AgentVerification? Type705 { get; set; } /// /// /// - public global::Vectara.PipelineTransformDiscriminatorType? Type706 { get; set; } + public global::Vectara.PipelineVerification? Type706 { get; set; } /// /// /// - public global::Vectara.PipelineSyncMode? Type707 { get; set; } + public global::Vectara.PipelineVerificationDiscriminator? Type707 { get; set; } /// /// /// - public global::Vectara.PipelineWatermark? Type708 { get; set; } + public global::Vectara.PipelineVerificationDiscriminatorType? Type708 { get; set; } /// /// /// - public global::Vectara.Pipeline? Type709 { get; set; } + public global::Vectara.AgentTransformConfiguration? Type709 { get; set; } /// /// /// - public global::Vectara.ListPipelinesResponse? Type710 { get; set; } + public global::Vectara.PipelineTransform? Type710 { get; set; } /// /// /// - public global::System.Collections.Generic.IList? Type711 { get; set; } + public global::Vectara.PipelineTransformDiscriminator? Type711 { get; set; } /// /// /// - public global::Vectara.CreatePipelineRequest? Type712 { get; set; } + public global::Vectara.PipelineTransformDiscriminatorType? Type712 { get; set; } /// /// /// - public global::Vectara.UpdateS3SourceConfiguration? Type713 { get; set; } + public global::Vectara.PipelineSyncMode? Type713 { get; set; } /// /// /// - public global::Vectara.UpdateGoogleDriveSourceConfiguration? Type714 { get; set; } + public global::Vectara.PipelineWatermark? Type714 { get; set; } /// /// /// - public global::Vectara.UpdateWebSourceConfiguration? Type715 { get; set; } + public global::Vectara.Pipeline? Type715 { get; set; } /// /// /// - public global::Vectara.UpdateWebSourceConfigurationVariant2? Type716 { get; set; } + public global::Vectara.ListPipelinesResponse? Type716 { get; set; } /// /// /// - public global::Vectara.UpdatePipelineSource? Type717 { get; set; } + public global::System.Collections.Generic.IList? Type717 { get; set; } /// /// /// - public global::Vectara.UpdatePipelineSourceDiscriminator? Type718 { get; set; } + public global::Vectara.CreatePipelineRequest? Type718 { get; set; } /// /// /// - public global::Vectara.UpdatePipelineSourceDiscriminatorType? Type719 { get; set; } + public global::Vectara.UpdateS3SourceConfiguration? Type719 { get; set; } /// /// /// - public global::Vectara.UpdatePipelineRequest? Type720 { get; set; } + public global::Vectara.UpdateGoogleDriveSourceConfiguration? Type720 { get; set; } /// /// /// - public global::Vectara.PipelineRunStatus? Type721 { get; set; } + public global::Vectara.UpdateWebSourceConfiguration? Type721 { get; set; } /// /// /// - public global::Vectara.PipelineRunTriggerType? Type722 { get; set; } + public global::Vectara.UpdateWebSourceConfigurationVariant2? Type722 { get; set; } /// /// /// - public global::Vectara.PipelineRun? Type723 { get; set; } + public global::Vectara.UpdatePipelineSource? Type723 { get; set; } /// /// /// - public global::Vectara.DeadLetterStatus? Type724 { get; set; } + public global::Vectara.UpdatePipelineSourceDiscriminator? Type724 { get; set; } /// /// /// - public global::Vectara.DeadLetterOrigin? Type725 { get; set; } + public global::Vectara.UpdatePipelineSourceDiscriminatorType? Type725 { get; set; } /// /// /// - public global::Vectara.PipelineDeadLetterEntry? Type726 { get; set; } + public global::Vectara.UpdatePipelineRequest? Type726 { get; set; } /// /// /// - public global::Vectara.ListPipelineDeadLetterEntriesResponse? Type727 { get; set; } + public global::Vectara.PipelineRunStatus? Type727 { get; set; } /// /// /// - public global::System.Collections.Generic.IList? Type728 { get; set; } + public global::Vectara.PipelineRunTriggerType? Type728 { get; set; } /// /// /// - public global::Vectara.CreatePipelineDeadLetterEntryRequest? Type729 { get; set; } + public global::Vectara.PipelineRun? Type729 { get; set; } /// /// /// - public global::Vectara.ProcessPipelineDeadLetterEntriesRequest? Type730 { get; set; } + public global::Vectara.DeadLetterStatus? Type730 { get; set; } /// /// /// - public global::Vectara.ListPipelineRunsResponse? Type731 { get; set; } + public global::Vectara.DeadLetterOrigin? Type731 { get; set; } /// /// /// - public global::System.Collections.Generic.IList? Type732 { get; set; } + public global::Vectara.PipelineDeadLetterEntry? Type732 { get; set; } /// /// /// - public global::Vectara.PipelineRunEventType? Type733 { get; set; } + public global::Vectara.ListPipelineDeadLetterEntriesResponse? Type733 { get; set; } /// /// /// - public global::Vectara.SortOrder? Type734 { get; set; } + public global::System.Collections.Generic.IList? Type734 { get; set; } /// /// /// - public global::Vectara.PipelineRunEventBase? Type735 { get; set; } + public global::Vectara.CreatePipelineDeadLetterEntryRequest? Type735 { get; set; } /// /// /// - public global::Vectara.RunStartedEvent? Type736 { get; set; } + public global::Vectara.ProcessPipelineDeadLetterEntriesRequest? Type736 { get; set; } /// /// /// - public global::Vectara.RunStartedEventVariant2? Type737 { get; set; } + public global::Vectara.ListPipelineRunsResponse? Type737 { get; set; } /// /// /// - public global::Vectara.RunCompletedEventStatus? Type738 { get; set; } + public global::System.Collections.Generic.IList? Type738 { get; set; } /// /// /// - public global::Vectara.RunCompletedEvent? Type739 { get; set; } + public global::Vectara.PipelineRunEventType? Type739 { get; set; } /// /// /// - public global::Vectara.RunCompletedEventVariant2? Type740 { get; set; } + public global::Vectara.SortOrder? Type740 { get; set; } /// /// /// - public global::Vectara.RecordProcessingEventStatus? Type741 { get; set; } + public global::Vectara.PipelineRunEventBase? Type741 { get; set; } /// /// /// - public global::Vectara.RecordProcessingEvent? Type742 { get; set; } + public global::Vectara.RunStartedEvent? Type742 { get; set; } /// /// /// - public global::Vectara.RecordProcessingEventVariant2? Type743 { get; set; } + public global::Vectara.RunStartedEventVariant2? Type743 { get; set; } /// /// /// - public global::Vectara.WatermarkAdvancedEvent? Type744 { get; set; } + public global::Vectara.RunCompletedEventStatus? Type744 { get; set; } /// /// /// - public global::Vectara.WatermarkAdvancedEventVariant2? Type745 { get; set; } + public global::Vectara.RunCompletedEvent? Type745 { get; set; } /// /// /// - public global::Vectara.PipelineRunEvent? Type746 { get; set; } + public global::Vectara.RunCompletedEventVariant2? Type746 { get; set; } /// /// /// - public global::Vectara.PipelineRunEventDiscriminator? Type747 { get; set; } + public global::Vectara.RecordProcessingEventStatus? Type747 { get; set; } /// /// /// - public global::Vectara.PipelineRunEventDiscriminatorType? Type748 { get; set; } + public global::Vectara.RecordProcessingEvent? Type748 { get; set; } /// /// /// - public global::Vectara.ListPipelineRunEventsResponse? Type749 { get; set; } + public global::Vectara.RecordProcessingEventVariant2? Type749 { get; set; } /// /// /// - public global::System.Collections.Generic.IList? Type750 { get; set; } + public global::Vectara.WatermarkAdvancedEvent? Type750 { get; set; } /// /// /// - public global::Vectara.MetricDescriptorBase? Type751 { get; set; } + public global::Vectara.WatermarkAdvancedEventVariant2? Type751 { get; set; } /// /// /// - public global::Vectara.CounterMetricDescriptor? Type752 { get; set; } + public global::Vectara.PipelineRunEvent? Type752 { get; set; } /// /// /// - public global::Vectara.CounterMetricDescriptorVariant2? Type753 { get; set; } + public global::Vectara.PipelineRunEventDiscriminator? Type753 { get; set; } /// /// /// - public global::Vectara.GaugeMetricDescriptor? Type754 { get; set; } + public global::Vectara.PipelineRunEventDiscriminatorType? Type754 { get; set; } /// /// /// - public global::Vectara.GaugeMetricDescriptorVariant2? Type755 { get; set; } + public global::Vectara.ListPipelineRunEventsResponse? Type755 { get; set; } /// /// /// - public global::Vectara.PercentileEntry? Type756 { get; set; } + public global::System.Collections.Generic.IList? Type756 { get; set; } /// /// /// - public global::Vectara.PercentilesMetricDescriptor? Type757 { get; set; } + public global::Vectara.MetricDescriptorBase? Type757 { get; set; } /// /// /// - public global::Vectara.PercentilesMetricDescriptorVariant2? Type758 { get; set; } + public global::Vectara.CounterMetricDescriptor? Type758 { get; set; } /// /// /// - public global::System.Collections.Generic.IList? Type759 { get; set; } + public global::Vectara.CounterMetricDescriptorVariant2? Type759 { get; set; } /// /// /// - public global::Vectara.DistributionBinDescriptor? Type760 { get; set; } + public global::Vectara.GaugeMetricDescriptor? Type760 { get; set; } /// /// /// - public global::Vectara.DistributionMetricDescriptor? Type761 { get; set; } + public global::Vectara.GaugeMetricDescriptorVariant2? Type761 { get; set; } /// /// /// - public global::Vectara.DistributionMetricDescriptorVariant2? Type762 { get; set; } + public global::Vectara.PercentileEntry? Type762 { get; set; } /// /// /// - public global::System.Collections.Generic.IList? Type763 { get; set; } + public global::Vectara.PercentilesMetricDescriptor? Type763 { get; set; } /// /// /// - public global::Vectara.MetricDescriptor? Type764 { get; set; } + public global::Vectara.PercentilesMetricDescriptorVariant2? Type764 { get; set; } /// /// /// - public global::Vectara.MetricDescriptorDiscriminator? Type765 { get; set; } + public global::System.Collections.Generic.IList? Type765 { get; set; } /// /// /// - public global::Vectara.MetricDescriptorDiscriminatorKind? Type766 { get; set; } + public global::Vectara.DistributionBinDescriptor? Type766 { get; set; } /// /// /// - public global::Vectara.ListMetricsResponse? Type767 { get; set; } + public global::Vectara.DistributionMetricDescriptor? Type767 { get; set; } /// /// /// - public global::System.Collections.Generic.IList? Type768 { get; set; } + public global::Vectara.DistributionMetricDescriptorVariant2? Type768 { get; set; } /// /// /// - public global::Vectara.MetricSeriesBase? Type769 { get; set; } + public global::System.Collections.Generic.IList? Type769 { get; set; } /// /// /// - public global::Vectara.ScalarMetricPoint? Type770 { get; set; } + public global::Vectara.MetricDescriptor? Type770 { get; set; } /// /// /// - public global::Vectara.CounterMetricSeries? Type771 { get; set; } + public global::Vectara.MetricDescriptorDiscriminator? Type771 { get; set; } /// /// /// - public global::Vectara.CounterMetricSeriesVariant2? Type772 { get; set; } + public global::Vectara.MetricDescriptorDiscriminatorKind? Type772 { get; set; } /// /// /// - public global::System.Collections.Generic.IList? Type773 { get; set; } + public global::Vectara.ListMetricsResponse? Type773 { get; set; } /// /// /// - public global::Vectara.GaugeMetricSeries? Type774 { get; set; } + public global::System.Collections.Generic.IList? Type774 { get; set; } /// /// /// - public global::Vectara.GaugeMetricSeriesVariant2? Type775 { get; set; } + public global::Vectara.MetricSeriesBase? Type775 { get; set; } /// /// /// - public global::Vectara.PercentilesMetricPoint? Type776 { get; set; } + public global::Vectara.ScalarMetricPoint? Type776 { get; set; } /// /// /// - public global::Vectara.PercentilesMetricSeries? Type777 { get; set; } + public global::Vectara.CounterMetricSeries? Type777 { get; set; } /// /// /// - public global::Vectara.PercentilesMetricSeriesVariant2? Type778 { get; set; } + public global::Vectara.CounterMetricSeriesVariant2? Type778 { get; set; } /// /// /// - public global::System.Collections.Generic.IList? Type779 { get; set; } + public global::System.Collections.Generic.IList? Type779 { get; set; } /// /// /// - public global::Vectara.HistogramBin? Type780 { get; set; } + public global::Vectara.GaugeMetricSeries? Type780 { get; set; } /// /// /// - public global::Vectara.DistributionMetricPoint? Type781 { get; set; } + public global::Vectara.GaugeMetricSeriesVariant2? Type781 { get; set; } /// /// /// - public global::System.Collections.Generic.IList? Type782 { get; set; } + public global::Vectara.PercentilesMetricPoint? Type782 { get; set; } /// /// /// - public global::Vectara.DistributionMetricSeries? Type783 { get; set; } + public global::Vectara.PercentilesMetricSeries? Type783 { get; set; } /// /// /// - public global::Vectara.DistributionMetricSeriesVariant2? Type784 { get; set; } + public global::Vectara.PercentilesMetricSeriesVariant2? Type784 { get; set; } /// /// /// - public global::System.Collections.Generic.IList? Type785 { get; set; } + public global::System.Collections.Generic.IList? Type785 { get; set; } /// /// /// - public global::Vectara.MetricSeries? Type786 { get; set; } + public global::Vectara.HistogramBin? Type786 { get; set; } /// /// /// - public global::Vectara.MetricSeriesDiscriminator? Type787 { get; set; } + public global::Vectara.DistributionMetricPoint? Type787 { get; set; } /// /// /// - public global::Vectara.MetricSeriesDiscriminatorKind? Type788 { get; set; } + public global::System.Collections.Generic.IList? Type788 { get; set; } /// /// /// - public global::Vectara.AgentTrace? Type789 { get; set; } + public global::Vectara.DistributionMetricSeries? Type789 { get; set; } /// /// /// - public global::Vectara.AgentTraceStatus? Type790 { get; set; } + public global::Vectara.DistributionMetricSeriesVariant2? Type790 { get; set; } /// /// /// - public global::Vectara.ListAgentTracesResponse? Type791 { get; set; } + public global::System.Collections.Generic.IList? Type791 { get; set; } /// /// /// - public global::System.Collections.Generic.IList? Type792 { get; set; } + public global::Vectara.MetricSeries? Type792 { get; set; } /// /// /// - public global::Vectara.AgentTraceSpanStatus? Type793 { get; set; } + public global::Vectara.MetricSeriesDiscriminator? Type793 { get; set; } /// /// /// - public global::Vectara.AgentTraceSpanBase? Type794 { get; set; } + public global::Vectara.MetricSeriesDiscriminatorKind? Type794 { get; set; } /// /// /// - public global::Vectara.AgentTraceInputFile? Type795 { get; set; } + public global::Vectara.AgentTrace? Type795 { get; set; } /// /// /// - public global::Vectara.InvokeAgentSpanAttributes? Type796 { get; set; } + public global::Vectara.AgentTraceStatus? Type796 { get; set; } /// /// /// - public global::Vectara.InvokeAgentSpanAttributesOutputType? Type797 { get; set; } + public global::Vectara.ListAgentTracesResponse? Type797 { get; set; } /// /// /// - public global::System.Collections.Generic.IList? Type798 { get; set; } + public global::System.Collections.Generic.IList? Type798 { get; set; } /// /// /// - public global::Vectara.InvokeAgentSpanContent? Type799 { get; set; } + public global::Vectara.AgentTraceSpanStatus? Type799 { get; set; } /// /// /// - public global::Vectara.InvokeAgentTraceSpan? Type800 { get; set; } + public global::Vectara.AgentTraceSpanBase? Type800 { get; set; } /// /// /// - public global::Vectara.InvokeAgentTraceSpanVariant2? Type801 { get; set; } + public global::Vectara.AgentTraceInputFile? Type801 { get; set; } /// /// /// - public global::Vectara.ChatSpanAttributes? Type802 { get; set; } + public global::Vectara.InvokeAgentSpanAttributes? Type802 { get; set; } /// /// /// - public global::Vectara.ChatTraceSpan? Type803 { get; set; } + public global::Vectara.InvokeAgentSpanAttributesOutputType? Type803 { get; set; } /// /// /// - public global::Vectara.ChatTraceSpanVariant2? Type804 { get; set; } + public global::System.Collections.Generic.IList? Type804 { get; set; } /// /// /// - public global::Vectara.ExecuteToolSpanAttributes? Type805 { get; set; } + public global::Vectara.InvokeAgentSpanContent? Type805 { get; set; } /// /// /// - public global::Vectara.ExecuteToolSpanContent? Type806 { get; set; } + public global::Vectara.InvokeAgentTraceSpan? Type806 { get; set; } /// /// /// - public global::Vectara.ExecuteToolTraceSpan? Type807 { get; set; } + public global::Vectara.InvokeAgentTraceSpanVariant2? Type807 { get; set; } /// /// /// - public global::Vectara.ExecuteToolTraceSpanVariant2? Type808 { get; set; } + public global::Vectara.ChatSpanAttributes? Type808 { get; set; } /// /// /// - public global::Vectara.ThinkingSpanContent? Type809 { get; set; } + public global::Vectara.ChatTraceSpan? Type809 { get; set; } /// /// /// - public global::Vectara.ThinkingTraceSpan? Type810 { get; set; } + public global::Vectara.ChatTraceSpanVariant2? Type810 { get; set; } /// /// /// - public global::Vectara.ThinkingTraceSpanVariant2? Type811 { get; set; } + public global::Vectara.ExecuteToolSpanAttributes? Type811 { get; set; } /// /// /// - public global::Vectara.OutputSpanContent? Type812 { get; set; } + public global::Vectara.ExecuteToolSpanContent? Type812 { get; set; } /// /// /// - public global::Vectara.OutputTraceSpan? Type813 { get; set; } + public global::Vectara.ExecuteToolTraceSpan? Type813 { get; set; } /// /// /// - public global::Vectara.OutputTraceSpanVariant2? Type814 { get; set; } + public global::Vectara.ExecuteToolTraceSpanVariant2? Type814 { get; set; } /// /// /// - public global::Vectara.GuardrailSpanAttributes? Type815 { get; set; } + public global::Vectara.ThinkingSpanContent? Type815 { get; set; } /// /// /// - public global::Vectara.GuardrailSpanContent? Type816 { get; set; } + public global::Vectara.ThinkingTraceSpan? Type816 { get; set; } /// /// /// - public global::Vectara.GuardrailTraceSpan? Type817 { get; set; } + public global::Vectara.ThinkingTraceSpanVariant2? Type817 { get; set; } /// /// /// - public global::Vectara.GuardrailTraceSpanVariant2? Type818 { get; set; } + public global::Vectara.OutputSpanContent? Type818 { get; set; } /// /// /// - public global::Vectara.StepTransitionSpanAttributes? Type819 { get; set; } + public global::Vectara.OutputTraceSpan? Type819 { get; set; } /// /// /// - public global::Vectara.StepTransitionTraceSpan? Type820 { get; set; } + public global::Vectara.OutputTraceSpanVariant2? Type820 { get; set; } /// /// /// - public global::Vectara.StepTransitionTraceSpanVariant2? Type821 { get; set; } + public global::Vectara.GuardrailSpanAttributes? Type821 { get; set; } /// /// /// - public global::Vectara.ImageReadSpanAttributes? Type822 { get; set; } + public global::Vectara.GuardrailSpanContent? Type822 { get; set; } /// /// /// - public global::Vectara.ImageReadTraceSpan? Type823 { get; set; } + public global::Vectara.GuardrailTraceSpan? Type823 { get; set; } /// /// /// - public global::Vectara.ImageReadTraceSpanVariant2? Type824 { get; set; } + public global::Vectara.GuardrailTraceSpanVariant2? Type824 { get; set; } /// /// /// - public global::Vectara.CompactionSpanAttributes? Type825 { get; set; } + public global::Vectara.StepTransitionSpanAttributes? Type825 { get; set; } /// /// /// - public global::Vectara.CompactionTraceSpan? Type826 { get; set; } + public global::Vectara.StepTransitionTraceSpan? Type826 { get; set; } /// /// /// - public global::Vectara.CompactionTraceSpanVariant2? Type827 { get; set; } + public global::Vectara.StepTransitionTraceSpanVariant2? Type827 { get; set; } /// /// /// - public global::Vectara.AgentTraceSpan? Type828 { get; set; } + public global::Vectara.ImageReadSpanAttributes? Type828 { get; set; } /// /// /// - public global::Vectara.AgentTraceSpanDiscriminator? Type829 { get; set; } + public global::Vectara.ImageReadTraceSpan? Type829 { get; set; } /// /// /// - public global::Vectara.AgentTraceSpanDiscriminatorOperation? Type830 { get; set; } + public global::Vectara.ImageReadTraceSpanVariant2? Type830 { get; set; } /// /// /// - public global::Vectara.ListAgentTraceSpansResponse? Type831 { get; set; } + public global::Vectara.CompactionSpanAttributes? Type831 { get; set; } /// /// /// - public global::System.Collections.Generic.IList? Type832 { get; set; } + public global::Vectara.CompactionTraceSpan? Type832 { get; set; } /// /// /// - public global::Vectara.Glossary? Type833 { get; set; } + public global::Vectara.CompactionTraceSpanVariant2? Type833 { get; set; } /// /// /// - public global::Vectara.ListGlossariesResponse? Type834 { get; set; } + public global::Vectara.AgentTraceSpan? Type834 { get; set; } /// /// /// - public global::System.Collections.Generic.IList? Type835 { get; set; } + public global::Vectara.AgentTraceSpanDiscriminator? Type835 { get; set; } /// /// /// - public global::Vectara.CreateGlossaryRequest? Type836 { get; set; } + public global::Vectara.AgentTraceSpanDiscriminatorOperation? Type836 { get; set; } /// /// /// - public global::Vectara.UpdateGlossaryRequest? Type837 { get; set; } + public global::Vectara.ListAgentTraceSpansResponse? Type837 { get; set; } /// /// /// - public global::Vectara.GlossaryEntry? Type838 { get; set; } + public global::System.Collections.Generic.IList? Type838 { get; set; } /// /// /// - public global::Vectara.GlossaryEntriesResponse? Type839 { get; set; } + public global::Vectara.Glossary? Type839 { get; set; } /// /// /// - public global::System.Collections.Generic.IList? Type840 { get; set; } + public global::Vectara.ListGlossariesResponse? Type840 { get; set; } /// /// /// - public global::Vectara.UpsertGlossaryEntriesRequest? Type841 { get; set; } + public global::System.Collections.Generic.IList? Type841 { get; set; } /// /// /// - public global::Vectara.DeleteGlossaryEntriesRequest? Type842 { get; set; } + public global::Vectara.CreateGlossaryRequest? Type842 { get; set; } /// /// /// - public global::Vectara.GetOAuthTokenRequest? Type843 { get; set; } + public global::Vectara.UpdateGlossaryRequest? Type843 { get; set; } /// /// /// - public global::Vectara.CreateCorpusDocumentWaitFor? Type844 { get; set; } + public global::Vectara.GlossaryEntry? Type844 { get; set; } /// /// /// - public global::System.Collections.Generic.IList? Type845 { get; set; } + public global::Vectara.GlossaryEntriesResponse? Type845 { get; set; } /// /// /// - public global::Vectara.ListToolServersType? Type846 { get; set; } + public global::System.Collections.Generic.IList? Type846 { get; set; } /// /// /// - public global::Vectara.ListToolsType? Type847 { get; set; } + public global::Vectara.UpsertGlossaryEntriesRequest? Type847 { get; set; } /// /// /// - public global::Vectara.ListInstructionsType? Type848 { get; set; } + public global::Vectara.DeleteGlossaryEntriesRequest? Type848 { get; set; } /// /// /// - public global::Vectara.ListSessionArtifactsSortBy? Type849 { get; set; } + public global::Vectara.GetOAuthTokenRequest? Type849 { get; set; } /// /// /// - public global::Vectara.ListSessionArtifactsOrderBy? Type850 { get; set; } + public global::Vectara.CreateCorpusDocumentWaitFor? Type850 { get; set; } /// /// /// - public global::Vectara.ListAgentConnectorsType? Type851 { get; set; } + public global::System.Collections.Generic.IList? Type851 { get; set; } /// /// /// - public global::Vectara.ListAliasRoutedSessionArtifactsSortBy? Type852 { get; set; } + public global::Vectara.ListToolServersType? Type852 { get; set; } /// /// /// - public global::Vectara.ListAliasRoutedSessionArtifactsOrderBy? Type853 { get; set; } + public global::Vectara.ListToolsType? Type853 { get; set; } /// /// /// - public global::Vectara.ListPipelinesSourceType? Type854 { get; set; } + public global::Vectara.ListInstructionsType? Type854 { get; set; } /// /// /// - public global::System.Collections.Generic.IList? Type855 { get; set; } + public global::Vectara.ListSessionArtifactsSortBy? Type855 { get; set; } /// /// /// - public global::Vectara.ListTracesStatus? Type856 { get; set; } + public global::Vectara.ListSessionArtifactsOrderBy? Type856 { get; set; } /// /// /// - public global::Vectara.ListTracesErrorType? Type857 { get; set; } + public global::Vectara.ListAgentConnectorsType? Type857 { get; set; } /// /// /// - public global::Vectara.ListTracesOperation? Type858 { get; set; } + public global::Vectara.ListAliasRoutedSessionArtifactsSortBy? Type858 { get; set; } /// /// /// - public global::Vectara.ListTracesToolErrorType? Type859 { get; set; } + public global::Vectara.ListAliasRoutedSessionArtifactsOrderBy? Type859 { get; set; } /// /// /// - public global::Vectara.ListTraceSpansOperation? Type860 { get; set; } + public global::Vectara.ListPipelinesSourceType? Type860 { get; set; } /// /// /// - public global::Vectara.AllOf? Type861 { get; set; } + public global::System.Collections.Generic.IList? Type861 { get; set; } /// /// /// - public global::Vectara.CreateUserResponse2? Type862 { get; set; } + public global::Vectara.ListTracesStatus? Type862 { get; set; } /// /// /// - public global::Vectara.ResetUserPasswordResponse? Type863 { get; set; } + public global::Vectara.ListTracesErrorType? Type863 { get; set; } /// /// /// - public global::Vectara.GetTokenResponse? Type864 { get; set; } + public global::Vectara.ListTracesOperation? Type864 { get; set; } + /// + /// + /// + public global::Vectara.ListTracesToolErrorType? Type865 { get; set; } + /// + /// + /// + public global::Vectara.ListTraceSpansOperation? Type866 { get; set; } + /// + /// + /// + public global::Vectara.AllOf? Type867 { get; set; } + /// + /// + /// + public global::Vectara.CreateUserResponse2? Type868 { get; set; } + /// + /// + /// + public global::Vectara.ResetUserPasswordResponse? Type869 { get; set; } + /// + /// + /// + public global::Vectara.GetTokenResponse? Type870 { get; set; } /// /// diff --git a/src/libs/Vectara/Generated/Vectara.Models.AgentConnector.g.cs b/src/libs/Vectara/Generated/Vectara.Models.AgentConnector.g.cs index 12738eb7..73abe394 100644 --- a/src/libs/Vectara/Generated/Vectara.Models.AgentConnector.g.cs +++ b/src/libs/Vectara/Generated/Vectara.Models.AgentConnector.g.cs @@ -4,15 +4,15 @@ namespace Vectara { /// - /// A connector that allows an agent to receive events from external platforms like Slack. + /// A connector that allows an agent to receive events from external platforms like Slack or Google Chat. /// public sealed partial class AgentConnector { /// /// The unique identifier for the connector.
- /// Example: con_slack_support + /// Example: con_3Kx9QpVn2mZr8YbLc5TdWe ///
- /// con_slack_support + /// con_3Kx9QpVn2mZr8YbLc5TdWe [global::System.Text.Json.Serialization.JsonPropertyName("id")] [global::System.Text.Json.Serialization.JsonRequired] public required string Id { get; set; } @@ -50,7 +50,8 @@ public sealed partial class AgentConnector /// slack [global::System.Text.Json.Serialization.JsonPropertyName("type")] [global::System.Text.Json.Serialization.JsonConverter(typeof(global::Vectara.JsonConverters.AgentConnectorTypeJsonConverter))] - public global::Vectara.AgentConnectorType Type { get; set; } + [global::System.Text.Json.Serialization.JsonRequired] + public required global::Vectara.AgentConnectorType Type { get; set; } /// /// The current status of the connector.
@@ -91,11 +92,15 @@ public sealed partial class AgentConnector public required bool Enabled { get; set; } /// - /// Configuration for different types of connectors. + /// Read view of a connector's configuration as returned by GET and list
+ /// endpoints. Contains the secrets supplied at create time alongside
+ /// server-derived display fields: Slack exposes `webhook_path`, and gchat
+ /// exposes `audience_url` and `client_email`. ///
[global::System.Text.Json.Serialization.JsonPropertyName("configuration")] + [global::System.Text.Json.Serialization.JsonConverter(typeof(global::Vectara.JsonConverters.ConnectorConfigurationJsonConverter))] [global::System.Text.Json.Serialization.JsonRequired] - public required global::Vectara.SlackConnectorConfiguration Configuration { get; set; } + public required global::Vectara.ConnectorConfiguration Configuration { get; set; } /// /// Timestamp when the connector was created.
@@ -114,6 +119,32 @@ public sealed partial class AgentConnector [global::System.Text.Json.Serialization.JsonPropertyName("updated_at")] public global::System.DateTime? UpdatedAt { get; set; } + /// + /// Timestamp of the most recently received inbound webhook for this
+ /// connector, regardless of outcome. Absent until the first webhook
+ /// arrives.
+ /// Example: 2024-01-16T14:45:00Z + ///
+ /// 2024-01-16T14:45:00Z + [global::System.Text.Json.Serialization.JsonPropertyName("last_webhook_at")] + public global::System.DateTime? LastWebhookAt { get; set; } + + /// + /// Outcome of the most recently received inbound webhook. Absent until the
+ /// first webhook arrives. Values: success when the webhook verified and the
+ /// event was accepted, jwt_verification_failed when the bearer token was
+ /// missing or could not be verified, audience_mismatch when the token was
+ /// valid but its aud did not equal the connector's audience_url,
+ /// event_parse_failed when the event body could not be parsed,
+ /// internal_error when an unexpected error occurred after the connector was
+ /// resolved, and unknown when the outcome could not be classified.
+ /// Example: success + ///
+ /// success + [global::System.Text.Json.Serialization.JsonPropertyName("last_webhook_status")] + [global::System.Text.Json.Serialization.JsonConverter(typeof(global::Vectara.JsonConverters.AgentConnectorLastWebhookStatusJsonConverter))] + public global::Vectara.AgentConnectorLastWebhookStatus? LastWebhookStatus { get; set; } + /// /// Additional properties that are not explicitly defined in the schema /// @@ -125,7 +156,7 @@ public sealed partial class AgentConnector ///
/// /// The unique identifier for the connector.
- /// Example: con_slack_support + /// Example: con_3Kx9QpVn2mZr8YbLc5TdWe /// /// /// A unique key that identifies an agent.
@@ -135,6 +166,10 @@ public sealed partial class AgentConnector /// The human-readable name of the connector.
/// Example: Customer Support Slack Channel /// + /// + /// The type of connector.
+ /// Example: slack + /// /// /// The current status of the connector.
/// Default Value: active
@@ -146,7 +181,10 @@ public sealed partial class AgentConnector /// Example: true /// /// - /// Configuration for different types of connectors. + /// Read view of a connector's configuration as returned by GET and list
+ /// endpoints. Contains the secrets supplied at create time alongside
+ /// server-derived display fields: Slack exposes `webhook_path`, and gchat
+ /// exposes `audience_url` and `client_email`. /// /// /// Timestamp when the connector was created.
@@ -156,10 +194,6 @@ public sealed partial class AgentConnector /// A detailed description of what this connector does.
/// Example: Receives customer support messages from the /// - /// - /// The type of connector.
- /// Example: slack - /// /// /// Detailed status message (e.g., error description or success confirmation).
/// Example: Slack authentication successful @@ -172,6 +206,23 @@ public sealed partial class AgentConnector /// Timestamp when the connector was last updated.
/// Example: 2024-01-16T14:45:00Z /// + /// + /// Timestamp of the most recently received inbound webhook for this
+ /// connector, regardless of outcome. Absent until the first webhook
+ /// arrives.
+ /// Example: 2024-01-16T14:45:00Z + /// + /// + /// Outcome of the most recently received inbound webhook. Absent until the
+ /// first webhook arrives. Values: success when the webhook verified and the
+ /// event was accepted, jwt_verification_failed when the bearer token was
+ /// missing or could not be verified, audience_mismatch when the token was
+ /// valid but its aud did not equal the connector's audience_url,
+ /// event_parse_failed when the event body could not be parsed,
+ /// internal_error when an unexpected error occurred after the connector was
+ /// resolved, and unknown when the outcome could not be classified.
+ /// Example: success + /// #if NET7_0_OR_GREATER [global::System.Diagnostics.CodeAnalysis.SetsRequiredMembers] #endif @@ -179,15 +230,17 @@ public AgentConnector( string id, string agentKey, string name, + global::Vectara.AgentConnectorType type, global::Vectara.AgentConnectorStatus status, bool enabled, - global::Vectara.SlackConnectorConfiguration configuration, + global::Vectara.ConnectorConfiguration configuration, global::System.DateTime createdAt, string? description, - global::Vectara.AgentConnectorType type, string? statusMessage, object? metadata, - global::System.DateTime? updatedAt) + global::System.DateTime? updatedAt, + global::System.DateTime? lastWebhookAt, + global::Vectara.AgentConnectorLastWebhookStatus? lastWebhookStatus) { this.Id = id ?? throw new global::System.ArgumentNullException(nameof(id)); this.AgentKey = agentKey ?? throw new global::System.ArgumentNullException(nameof(agentKey)); @@ -198,9 +251,11 @@ public AgentConnector( this.StatusMessage = statusMessage; this.Metadata = metadata; this.Enabled = enabled; - this.Configuration = configuration ?? throw new global::System.ArgumentNullException(nameof(configuration)); + this.Configuration = configuration; this.CreatedAt = createdAt; this.UpdatedAt = updatedAt; + this.LastWebhookAt = lastWebhookAt; + this.LastWebhookStatus = lastWebhookStatus; } /// diff --git a/src/libs/Vectara/Generated/Vectara.Models.AgentConnectorLastWebhookStatus.g.cs b/src/libs/Vectara/Generated/Vectara.Models.AgentConnectorLastWebhookStatus.g.cs new file mode 100644 index 00000000..56477a10 --- /dev/null +++ b/src/libs/Vectara/Generated/Vectara.Models.AgentConnectorLastWebhookStatus.g.cs @@ -0,0 +1,83 @@ + +#nullable enable + +namespace Vectara +{ + /// + /// Outcome of the most recently received inbound webhook. Absent until the
+ /// first webhook arrives. Values: success when the webhook verified and the
+ /// event was accepted, jwt_verification_failed when the bearer token was
+ /// missing or could not be verified, audience_mismatch when the token was
+ /// valid but its aud did not equal the connector's audience_url,
+ /// event_parse_failed when the event body could not be parsed,
+ /// internal_error when an unexpected error occurred after the connector was
+ /// resolved, and unknown when the outcome could not be classified.
+ /// Example: success + ///
+ public enum AgentConnectorLastWebhookStatus + { + /// + /// + /// + AudienceMismatch, + /// + /// + /// + EventParseFailed, + /// + /// + /// + InternalError, + /// + /// + /// + JwtVerificationFailed, + /// + /// success when the webhook verified and the + /// + Success, + /// + /// + /// + Unknown, + } + + /// + /// Enum extensions to do fast conversions without the reflection. + /// + public static class AgentConnectorLastWebhookStatusExtensions + { + /// + /// Converts an enum to a string. + /// + public static string ToValueString(this AgentConnectorLastWebhookStatus value) + { + return value switch + { + AgentConnectorLastWebhookStatus.AudienceMismatch => "audience_mismatch", + AgentConnectorLastWebhookStatus.EventParseFailed => "event_parse_failed", + AgentConnectorLastWebhookStatus.InternalError => "internal_error", + AgentConnectorLastWebhookStatus.JwtVerificationFailed => "jwt_verification_failed", + AgentConnectorLastWebhookStatus.Success => "success", + AgentConnectorLastWebhookStatus.Unknown => "unknown", + _ => throw new global::System.ArgumentOutOfRangeException(nameof(value), value, null), + }; + } + /// + /// Converts an string to a enum. + /// + public static AgentConnectorLastWebhookStatus? ToEnum(string value) + { + return value switch + { + "audience_mismatch" => AgentConnectorLastWebhookStatus.AudienceMismatch, + "event_parse_failed" => AgentConnectorLastWebhookStatus.EventParseFailed, + "internal_error" => AgentConnectorLastWebhookStatus.InternalError, + "jwt_verification_failed" => AgentConnectorLastWebhookStatus.JwtVerificationFailed, + "success" => AgentConnectorLastWebhookStatus.Success, + "unknown" => AgentConnectorLastWebhookStatus.Unknown, + _ => null, + }; + } + } +} \ No newline at end of file diff --git a/src/libs/Vectara/Generated/Vectara.Models.AgentConnectorType.g.cs b/src/libs/Vectara/Generated/Vectara.Models.AgentConnectorType.g.cs index bb62933a..d554616c 100644 --- a/src/libs/Vectara/Generated/Vectara.Models.AgentConnectorType.g.cs +++ b/src/libs/Vectara/Generated/Vectara.Models.AgentConnectorType.g.cs @@ -9,6 +9,10 @@ namespace Vectara ///
public enum AgentConnectorType { + /// + /// + /// + Gchat, /// /// /// @@ -27,6 +31,7 @@ public static string ToValueString(this AgentConnectorType value) { return value switch { + AgentConnectorType.Gchat => "gchat", AgentConnectorType.Slack => "slack", _ => throw new global::System.ArgumentOutOfRangeException(nameof(value), value, null), }; @@ -38,6 +43,7 @@ public static string ToValueString(this AgentConnectorType value) { return value switch { + "gchat" => AgentConnectorType.Gchat, "slack" => AgentConnectorType.Slack, _ => null, }; diff --git a/src/libs/Vectara/Generated/Vectara.Models.ConnectorConfiguration.g.cs b/src/libs/Vectara/Generated/Vectara.Models.ConnectorConfiguration.g.cs index 956c1bab..8717e138 100644 --- a/src/libs/Vectara/Generated/Vectara.Models.ConnectorConfiguration.g.cs +++ b/src/libs/Vectara/Generated/Vectara.Models.ConnectorConfiguration.g.cs @@ -5,7 +5,10 @@ namespace Vectara { /// - /// Configuration for different types of connectors. + /// Read view of a connector's configuration as returned by GET and list
+ /// endpoints. Contains the secrets supplied at create time alongside
+ /// server-derived display fields: Slack exposes `webhook_path`, and gchat
+ /// exposes `audience_url` and `client_email`. ///
public readonly partial struct ConnectorConfiguration : global::System.IEquatable { @@ -15,7 +18,7 @@ namespace Vectara public global::Vectara.ConnectorConfigurationDiscriminatorType? Type { get; } /// - /// Configuration for Slack connectors. + /// Read view of a Slack connector's configuration. /// #if NET6_0_OR_GREATER public global::Vectara.SlackConnectorConfiguration? Slack { get; init; } @@ -50,6 +53,45 @@ public bool TryPickSlack( public global::Vectara.SlackConnectorConfiguration PickSlack() => IsSlack ? Slack! : throw new global::System.InvalidOperationException($"Expected union variant 'Slack' but the value was {ToString()}."); + + /// + /// Read view of a Google Chat connector's configuration. Includes the display
+ /// field `client_email` parsed out of the service account key and the audience
+ /// URL used to verify inbound events. The service account key is never returned. + ///
+#if NET6_0_OR_GREATER + public global::Vectara.GchatConnectorConfiguration? Gchat { get; init; } +#else + public global::Vectara.GchatConnectorConfiguration? Gchat { get; } +#endif + + /// + /// + /// +#if NET6_0_OR_GREATER + [global::System.Diagnostics.CodeAnalysis.MemberNotNullWhen(true, nameof(Gchat))] +#endif + public bool IsGchat => Gchat != null; + + /// + /// + /// + public bool TryPickGchat( +#if NET6_0_OR_GREATER + [global::System.Diagnostics.CodeAnalysis.NotNullWhen(true)] +#endif + out global::Vectara.GchatConnectorConfiguration? value) + { + value = Gchat; + return IsGchat; + } + + /// + /// + /// + public global::Vectara.GchatConnectorConfiguration PickGchat() => IsGchat + ? Gchat! + : throw new global::System.InvalidOperationException($"Expected union variant 'Gchat' but the value was {ToString()}."); /// /// /// @@ -73,23 +115,49 @@ public ConnectorConfiguration(global::Vectara.SlackConnectorConfiguration? value ///
public static ConnectorConfiguration FromSlack(global::Vectara.SlackConnectorConfiguration? value) => new ConnectorConfiguration(value); + /// + /// + /// + public static implicit operator ConnectorConfiguration(global::Vectara.GchatConnectorConfiguration value) => new ConnectorConfiguration((global::Vectara.GchatConnectorConfiguration?)value); + + /// + /// + /// + public static implicit operator global::Vectara.GchatConnectorConfiguration?(ConnectorConfiguration @this) => @this.Gchat; + + /// + /// + /// + public ConnectorConfiguration(global::Vectara.GchatConnectorConfiguration? value) + { + Gchat = value; + } + + /// + /// + /// + public static ConnectorConfiguration FromGchat(global::Vectara.GchatConnectorConfiguration? value) => new ConnectorConfiguration(value); + /// /// /// public ConnectorConfiguration( global::Vectara.ConnectorConfigurationDiscriminatorType? type, - global::Vectara.SlackConnectorConfiguration? slack + global::Vectara.SlackConnectorConfiguration? slack, + global::Vectara.GchatConnectorConfiguration? gchat ) { Type = type; Slack = slack; + Gchat = gchat; } /// /// /// public object? Object => + Gchat as object ?? Slack as object ; @@ -97,7 +165,8 @@ Slack as object /// ///
public override string? ToString() => - Slack?.ToString() + Slack?.ToString() ?? + Gchat?.ToString() ; /// @@ -105,7 +174,7 @@ Slack as object /// public bool Validate() { - return IsSlack; + return IsSlack && !IsGchat || !IsSlack && IsGchat; } /// @@ -113,6 +182,7 @@ public bool Validate() /// public TResult? Match( global::System.Func? slack = null, + global::System.Func? gchat = null, bool validate = true) { if (validate) @@ -124,6 +194,10 @@ public bool Validate() { return slack(Slack!); } + else if (IsGchat && gchat != null) + { + return gchat(Gchat!); + } return default(TResult); } @@ -133,6 +207,8 @@ public bool Validate() /// public void Match( global::System.Action? slack = null, + + global::System.Action? gchat = null, bool validate = true) { if (validate) @@ -144,6 +220,10 @@ public void Match( { slack?.Invoke(Slack!); } + else if (IsGchat) + { + gchat?.Invoke(Gchat!); + } } /// @@ -151,6 +231,7 @@ public void Match( /// public void Switch( global::System.Action? slack = null, + global::System.Action? gchat = null, bool validate = true) { if (validate) @@ -162,6 +243,10 @@ public void Switch( { slack?.Invoke(Slack!); } + else if (IsGchat) + { + gchat?.Invoke(Gchat!); + } } /// @@ -173,6 +258,8 @@ public override int GetHashCode() { Slack, typeof(global::Vectara.SlackConnectorConfiguration), + Gchat, + typeof(global::Vectara.GchatConnectorConfiguration), }; const int offset = unchecked((int)2166136261); const int prime = 16777619; @@ -189,7 +276,8 @@ static int HashCodeAggregator(int hashCode, object? value) => value == null public bool Equals(ConnectorConfiguration other) { return - global::System.Collections.Generic.EqualityComparer.Default.Equals(Slack, other.Slack) + global::System.Collections.Generic.EqualityComparer.Default.Equals(Slack, other.Slack) && + global::System.Collections.Generic.EqualityComparer.Default.Equals(Gchat, other.Gchat) ; } diff --git a/src/libs/Vectara/Generated/Vectara.Models.ConnectorConfigurationDiscriminatorType.g.cs b/src/libs/Vectara/Generated/Vectara.Models.ConnectorConfigurationDiscriminatorType.g.cs index f88f198f..1f20ac86 100644 --- a/src/libs/Vectara/Generated/Vectara.Models.ConnectorConfigurationDiscriminatorType.g.cs +++ b/src/libs/Vectara/Generated/Vectara.Models.ConnectorConfigurationDiscriminatorType.g.cs @@ -8,6 +8,10 @@ namespace Vectara /// public enum ConnectorConfigurationDiscriminatorType { + /// + /// + /// + Gchat, /// /// /// @@ -26,6 +30,7 @@ public static string ToValueString(this ConnectorConfigurationDiscriminatorType { return value switch { + ConnectorConfigurationDiscriminatorType.Gchat => "gchat", ConnectorConfigurationDiscriminatorType.Slack => "slack", _ => throw new global::System.ArgumentOutOfRangeException(nameof(value), value, null), }; @@ -37,6 +42,7 @@ public static string ToValueString(this ConnectorConfigurationDiscriminatorType { return value switch { + "gchat" => ConnectorConfigurationDiscriminatorType.Gchat, "slack" => ConnectorConfigurationDiscriminatorType.Slack, _ => null, }; diff --git a/src/libs/Vectara/Generated/Vectara.Models.CreateAgentConnectorRequest.g.cs b/src/libs/Vectara/Generated/Vectara.Models.CreateAgentConnectorRequest.g.cs index ab7d1168..b361f2b3 100644 --- a/src/libs/Vectara/Generated/Vectara.Models.CreateAgentConnectorRequest.g.cs +++ b/src/libs/Vectara/Generated/Vectara.Models.CreateAgentConnectorRequest.g.cs @@ -25,15 +25,6 @@ public sealed partial class CreateAgentConnectorRequest [global::System.Text.Json.Serialization.JsonPropertyName("description")] public string? Description { get; set; } - /// - /// The type of connector.
- /// Example: slack - ///
- /// slack - [global::System.Text.Json.Serialization.JsonPropertyName("type")] - [global::System.Text.Json.Serialization.JsonConverter(typeof(global::Vectara.JsonConverters.CreateAgentConnectorRequestTypeJsonConverter))] - public global::Vectara.CreateAgentConnectorRequestType Type { get; set; } - /// /// Arbitrary metadata associated with the connector.
/// Default Value: {}
@@ -53,11 +44,16 @@ public sealed partial class CreateAgentConnectorRequest public bool? Enabled { get; set; } /// - /// Configuration for different types of connectors. + /// Write view of a connector's configuration. Used when creating a connector
+ /// and reused when updating one. Carries the secrets and inputs the customer
+ /// must supply. Server-derived display fields are not accepted here and instead
+ /// appear in the read view: Slack returns `webhook_path`, and gchat returns
+ /// `audience_url` and `client_email`. ///
[global::System.Text.Json.Serialization.JsonPropertyName("configuration")] + [global::System.Text.Json.Serialization.JsonConverter(typeof(global::Vectara.JsonConverters.CreateConnectorConfigurationJsonConverter))] [global::System.Text.Json.Serialization.JsonRequired] - public required global::Vectara.SlackConnectorConfiguration Configuration { get; set; } + public required global::Vectara.CreateConnectorConfiguration Configuration { get; set; } /// /// Additional properties that are not explicitly defined in the schema @@ -73,16 +69,16 @@ public sealed partial class CreateAgentConnectorRequest /// Example: Customer Support Slack Channel /// /// - /// Configuration for different types of connectors. + /// Write view of a connector's configuration. Used when creating a connector
+ /// and reused when updating one. Carries the secrets and inputs the customer
+ /// must supply. Server-derived display fields are not accepted here and instead
+ /// appear in the read view: Slack returns `webhook_path`, and gchat returns
+ /// `audience_url` and `client_email`. /// /// /// A detailed description of what this connector does.
/// Example: Receives customer support messages from the /// - /// - /// The type of connector.
- /// Example: slack - /// /// /// Arbitrary metadata associated with the connector.
/// Default Value: {}
@@ -98,18 +94,16 @@ public sealed partial class CreateAgentConnectorRequest #endif public CreateAgentConnectorRequest( string name, - global::Vectara.SlackConnectorConfiguration configuration, + global::Vectara.CreateConnectorConfiguration configuration, string? description, - global::Vectara.CreateAgentConnectorRequestType type, object? metadata, bool? enabled) { this.Name = name ?? throw new global::System.ArgumentNullException(nameof(name)); this.Description = description; - this.Type = type; this.Metadata = metadata; this.Enabled = enabled; - this.Configuration = configuration ?? throw new global::System.ArgumentNullException(nameof(configuration)); + this.Configuration = configuration; } /// diff --git a/src/libs/Vectara/Generated/Vectara.Models.CreateConnectorConfiguration.Json.g.cs b/src/libs/Vectara/Generated/Vectara.Models.CreateConnectorConfiguration.Json.g.cs new file mode 100644 index 00000000..cf7b641a --- /dev/null +++ b/src/libs/Vectara/Generated/Vectara.Models.CreateConnectorConfiguration.Json.g.cs @@ -0,0 +1,92 @@ +#nullable enable + +namespace Vectara +{ + public readonly partial struct CreateConnectorConfiguration + { + /// + /// Serializes the current instance to a JSON string using the provided JsonSerializerContext. + /// + public string ToJson( + global::System.Text.Json.Serialization.JsonSerializerContext jsonSerializerContext) + { + return global::System.Text.Json.JsonSerializer.Serialize( + this, + this.GetType(), + jsonSerializerContext); + } + + /// + /// Serializes the current instance to a JSON string using the provided JsonSerializerOptions. + /// +#if NET8_0_OR_GREATER + [global::System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("JSON serialization and deserialization might require types that cannot be statically analyzed. Use the overload that takes a JsonTypeInfo or JsonSerializerContext, or make sure all of the required types are preserved.")] + [global::System.Diagnostics.CodeAnalysis.RequiresDynamicCode("JSON serialization and deserialization might require types that cannot be statically analyzed and might need runtime code generation. Use System.Text.Json source generation for native AOT applications.")] +#endif + public string ToJson( + global::System.Text.Json.JsonSerializerOptions? jsonSerializerOptions = null) + { + return global::System.Text.Json.JsonSerializer.Serialize( + this, + jsonSerializerOptions); + } + + /// + /// Deserializes a JSON string using the provided JsonSerializerContext. + /// + public static global::Vectara.CreateConnectorConfiguration? FromJson( + string json, + global::System.Text.Json.Serialization.JsonSerializerContext jsonSerializerContext) + { + return global::System.Text.Json.JsonSerializer.Deserialize( + json, + typeof(global::Vectara.CreateConnectorConfiguration), + jsonSerializerContext) as global::Vectara.CreateConnectorConfiguration?; + } + + /// + /// Deserializes a JSON string using the provided JsonSerializerOptions. + /// +#if NET8_0_OR_GREATER + [global::System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("JSON serialization and deserialization might require types that cannot be statically analyzed. Use the overload that takes a JsonTypeInfo or JsonSerializerContext, or make sure all of the required types are preserved.")] + [global::System.Diagnostics.CodeAnalysis.RequiresDynamicCode("JSON serialization and deserialization might require types that cannot be statically analyzed and might need runtime code generation. Use System.Text.Json source generation for native AOT applications.")] +#endif + public static global::Vectara.CreateConnectorConfiguration? FromJson( + string json, + global::System.Text.Json.JsonSerializerOptions? jsonSerializerOptions = null) + { + return global::System.Text.Json.JsonSerializer.Deserialize( + json, + jsonSerializerOptions); + } + + /// + /// Deserializes a JSON stream using the provided JsonSerializerContext. + /// + public static async global::System.Threading.Tasks.ValueTask FromJsonStreamAsync( + global::System.IO.Stream jsonStream, + global::System.Text.Json.Serialization.JsonSerializerContext jsonSerializerContext) + { + return (await global::System.Text.Json.JsonSerializer.DeserializeAsync( + jsonStream, + typeof(global::Vectara.CreateConnectorConfiguration), + jsonSerializerContext).ConfigureAwait(false)) as global::Vectara.CreateConnectorConfiguration?; + } + + /// + /// Deserializes a JSON stream using the provided JsonSerializerOptions. + /// +#if NET8_0_OR_GREATER + [global::System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("JSON serialization and deserialization might require types that cannot be statically analyzed. Use the overload that takes a JsonTypeInfo or JsonSerializerContext, or make sure all of the required types are preserved.")] + [global::System.Diagnostics.CodeAnalysis.RequiresDynamicCode("JSON serialization and deserialization might require types that cannot be statically analyzed and might need runtime code generation. Use System.Text.Json source generation for native AOT applications.")] +#endif + public static global::System.Threading.Tasks.ValueTask FromJsonStreamAsync( + global::System.IO.Stream jsonStream, + global::System.Text.Json.JsonSerializerOptions? jsonSerializerOptions = null) + { + return global::System.Text.Json.JsonSerializer.DeserializeAsync( + jsonStream, + jsonSerializerOptions); + } + } +} diff --git a/src/libs/Vectara/Generated/Vectara.Models.CreateConnectorConfiguration.g.cs b/src/libs/Vectara/Generated/Vectara.Models.CreateConnectorConfiguration.g.cs new file mode 100644 index 00000000..13f4c224 --- /dev/null +++ b/src/libs/Vectara/Generated/Vectara.Models.CreateConnectorConfiguration.g.cs @@ -0,0 +1,310 @@ +#pragma warning disable CS0618 // Type or member is obsolete + +#nullable enable + +namespace Vectara +{ + /// + /// Write view of a connector's configuration. Used when creating a connector
+ /// and reused when updating one. Carries the secrets and inputs the customer
+ /// must supply. Server-derived display fields are not accepted here and instead
+ /// appear in the read view: Slack returns `webhook_path`, and gchat returns
+ /// `audience_url` and `client_email`. + ///
+ public readonly partial struct CreateConnectorConfiguration : global::System.IEquatable + { + /// + /// + /// + public global::Vectara.CreateConnectorConfigurationDiscriminatorType? Type { get; } + + /// + /// Write view of a Slack connector's configuration, supplied on create or update. + /// +#if NET6_0_OR_GREATER + public global::Vectara.CreateSlackConnectorConfiguration? Slack { get; init; } +#else + public global::Vectara.CreateSlackConnectorConfiguration? Slack { get; } +#endif + + /// + /// + /// +#if NET6_0_OR_GREATER + [global::System.Diagnostics.CodeAnalysis.MemberNotNullWhen(true, nameof(Slack))] +#endif + public bool IsSlack => Slack != null; + + /// + /// + /// + public bool TryPickSlack( +#if NET6_0_OR_GREATER + [global::System.Diagnostics.CodeAnalysis.NotNullWhen(true)] +#endif + out global::Vectara.CreateSlackConnectorConfiguration? value) + { + value = Slack; + return IsSlack; + } + + /// + /// + /// + public global::Vectara.CreateSlackConnectorConfiguration PickSlack() => IsSlack + ? Slack! + : throw new global::System.InvalidOperationException($"Expected union variant 'Slack' but the value was {ToString()}."); + + /// + /// Write view of a Google Chat connector's configuration. Supply the service
+ /// account JSON key for the Chat app you have configured in the Google Cloud
+ /// console. The Chat app's HTTP endpoint URL and Authentication audience must
+ /// be set to the connector's audience_url (returned in the read view). + ///
+#if NET6_0_OR_GREATER + public global::Vectara.CreateGchatConnectorConfiguration? Gchat { get; init; } +#else + public global::Vectara.CreateGchatConnectorConfiguration? Gchat { get; } +#endif + + /// + /// + /// +#if NET6_0_OR_GREATER + [global::System.Diagnostics.CodeAnalysis.MemberNotNullWhen(true, nameof(Gchat))] +#endif + public bool IsGchat => Gchat != null; + + /// + /// + /// + public bool TryPickGchat( +#if NET6_0_OR_GREATER + [global::System.Diagnostics.CodeAnalysis.NotNullWhen(true)] +#endif + out global::Vectara.CreateGchatConnectorConfiguration? value) + { + value = Gchat; + return IsGchat; + } + + /// + /// + /// + public global::Vectara.CreateGchatConnectorConfiguration PickGchat() => IsGchat + ? Gchat! + : throw new global::System.InvalidOperationException($"Expected union variant 'Gchat' but the value was {ToString()}."); + /// + /// + /// + public static implicit operator CreateConnectorConfiguration(global::Vectara.CreateSlackConnectorConfiguration value) => new CreateConnectorConfiguration((global::Vectara.CreateSlackConnectorConfiguration?)value); + + /// + /// + /// + public static implicit operator global::Vectara.CreateSlackConnectorConfiguration?(CreateConnectorConfiguration @this) => @this.Slack; + + /// + /// + /// + public CreateConnectorConfiguration(global::Vectara.CreateSlackConnectorConfiguration? value) + { + Slack = value; + } + + /// + /// + /// + public static CreateConnectorConfiguration FromSlack(global::Vectara.CreateSlackConnectorConfiguration? value) => new CreateConnectorConfiguration(value); + + /// + /// + /// + public static implicit operator CreateConnectorConfiguration(global::Vectara.CreateGchatConnectorConfiguration value) => new CreateConnectorConfiguration((global::Vectara.CreateGchatConnectorConfiguration?)value); + + /// + /// + /// + public static implicit operator global::Vectara.CreateGchatConnectorConfiguration?(CreateConnectorConfiguration @this) => @this.Gchat; + + /// + /// + /// + public CreateConnectorConfiguration(global::Vectara.CreateGchatConnectorConfiguration? value) + { + Gchat = value; + } + + /// + /// + /// + public static CreateConnectorConfiguration FromGchat(global::Vectara.CreateGchatConnectorConfiguration? value) => new CreateConnectorConfiguration(value); + + /// + /// + /// + public CreateConnectorConfiguration( + global::Vectara.CreateConnectorConfigurationDiscriminatorType? type, + global::Vectara.CreateSlackConnectorConfiguration? slack, + global::Vectara.CreateGchatConnectorConfiguration? gchat + ) + { + Type = type; + + Slack = slack; + Gchat = gchat; + } + + /// + /// + /// + public object? Object => + Gchat as object ?? + Slack as object + ; + + /// + /// + /// + public override string? ToString() => + Slack?.ToString() ?? + Gchat?.ToString() + ; + + /// + /// + /// + public bool Validate() + { + return IsSlack && !IsGchat || !IsSlack && IsGchat; + } + + /// + /// + /// + public TResult? Match( + global::System.Func? slack = null, + global::System.Func? gchat = null, + bool validate = true) + { + if (validate) + { + Validate(); + } + + if (IsSlack && slack != null) + { + return slack(Slack!); + } + else if (IsGchat && gchat != null) + { + return gchat(Gchat!); + } + + return default(TResult); + } + + /// + /// + /// + public void Match( + global::System.Action? slack = null, + + global::System.Action? gchat = null, + bool validate = true) + { + if (validate) + { + Validate(); + } + + if (IsSlack) + { + slack?.Invoke(Slack!); + } + else if (IsGchat) + { + gchat?.Invoke(Gchat!); + } + } + + /// + /// + /// + public void Switch( + global::System.Action? slack = null, + global::System.Action? gchat = null, + bool validate = true) + { + if (validate) + { + Validate(); + } + + if (IsSlack) + { + slack?.Invoke(Slack!); + } + else if (IsGchat) + { + gchat?.Invoke(Gchat!); + } + } + + /// + /// + /// + public override int GetHashCode() + { + var fields = new object?[] + { + Slack, + typeof(global::Vectara.CreateSlackConnectorConfiguration), + Gchat, + typeof(global::Vectara.CreateGchatConnectorConfiguration), + }; + const int offset = unchecked((int)2166136261); + const int prime = 16777619; + static int HashCodeAggregator(int hashCode, object? value) => value == null + ? (hashCode ^ 0) * prime + : (hashCode ^ value.GetHashCode()) * prime; + + return global::System.Linq.Enumerable.Aggregate(fields, offset, HashCodeAggregator); + } + + /// + /// + /// + public bool Equals(CreateConnectorConfiguration other) + { + return + global::System.Collections.Generic.EqualityComparer.Default.Equals(Slack, other.Slack) && + global::System.Collections.Generic.EqualityComparer.Default.Equals(Gchat, other.Gchat) + ; + } + + /// + /// + /// + public static bool operator ==(CreateConnectorConfiguration obj1, CreateConnectorConfiguration obj2) + { + return global::System.Collections.Generic.EqualityComparer.Default.Equals(obj1, obj2); + } + + /// + /// + /// + public static bool operator !=(CreateConnectorConfiguration obj1, CreateConnectorConfiguration obj2) + { + return !(obj1 == obj2); + } + + /// + /// + /// + public override bool Equals(object? obj) + { + return obj is CreateConnectorConfiguration o && Equals(o); + } + } +} diff --git a/src/libs/Vectara/Generated/Vectara.Models.CreateConnectorConfigurationDiscriminator.Json.g.cs b/src/libs/Vectara/Generated/Vectara.Models.CreateConnectorConfigurationDiscriminator.Json.g.cs new file mode 100644 index 00000000..c8bc5af4 --- /dev/null +++ b/src/libs/Vectara/Generated/Vectara.Models.CreateConnectorConfigurationDiscriminator.Json.g.cs @@ -0,0 +1,92 @@ +#nullable enable + +namespace Vectara +{ + public sealed partial class CreateConnectorConfigurationDiscriminator + { + /// + /// Serializes the current instance to a JSON string using the provided JsonSerializerContext. + /// + public string ToJson( + global::System.Text.Json.Serialization.JsonSerializerContext jsonSerializerContext) + { + return global::System.Text.Json.JsonSerializer.Serialize( + this, + this.GetType(), + jsonSerializerContext); + } + + /// + /// Serializes the current instance to a JSON string using the provided JsonSerializerOptions. + /// +#if NET8_0_OR_GREATER + [global::System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("JSON serialization and deserialization might require types that cannot be statically analyzed. Use the overload that takes a JsonTypeInfo or JsonSerializerContext, or make sure all of the required types are preserved.")] + [global::System.Diagnostics.CodeAnalysis.RequiresDynamicCode("JSON serialization and deserialization might require types that cannot be statically analyzed and might need runtime code generation. Use System.Text.Json source generation for native AOT applications.")] +#endif + public string ToJson( + global::System.Text.Json.JsonSerializerOptions? jsonSerializerOptions = null) + { + return global::System.Text.Json.JsonSerializer.Serialize( + this, + jsonSerializerOptions); + } + + /// + /// Deserializes a JSON string using the provided JsonSerializerContext. + /// + public static global::Vectara.CreateConnectorConfigurationDiscriminator? FromJson( + string json, + global::System.Text.Json.Serialization.JsonSerializerContext jsonSerializerContext) + { + return global::System.Text.Json.JsonSerializer.Deserialize( + json, + typeof(global::Vectara.CreateConnectorConfigurationDiscriminator), + jsonSerializerContext) as global::Vectara.CreateConnectorConfigurationDiscriminator; + } + + /// + /// Deserializes a JSON string using the provided JsonSerializerOptions. + /// +#if NET8_0_OR_GREATER + [global::System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("JSON serialization and deserialization might require types that cannot be statically analyzed. Use the overload that takes a JsonTypeInfo or JsonSerializerContext, or make sure all of the required types are preserved.")] + [global::System.Diagnostics.CodeAnalysis.RequiresDynamicCode("JSON serialization and deserialization might require types that cannot be statically analyzed and might need runtime code generation. Use System.Text.Json source generation for native AOT applications.")] +#endif + public static global::Vectara.CreateConnectorConfigurationDiscriminator? FromJson( + string json, + global::System.Text.Json.JsonSerializerOptions? jsonSerializerOptions = null) + { + return global::System.Text.Json.JsonSerializer.Deserialize( + json, + jsonSerializerOptions); + } + + /// + /// Deserializes a JSON stream using the provided JsonSerializerContext. + /// + public static async global::System.Threading.Tasks.ValueTask FromJsonStreamAsync( + global::System.IO.Stream jsonStream, + global::System.Text.Json.Serialization.JsonSerializerContext jsonSerializerContext) + { + return (await global::System.Text.Json.JsonSerializer.DeserializeAsync( + jsonStream, + typeof(global::Vectara.CreateConnectorConfigurationDiscriminator), + jsonSerializerContext).ConfigureAwait(false)) as global::Vectara.CreateConnectorConfigurationDiscriminator; + } + + /// + /// Deserializes a JSON stream using the provided JsonSerializerOptions. + /// +#if NET8_0_OR_GREATER + [global::System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("JSON serialization and deserialization might require types that cannot be statically analyzed. Use the overload that takes a JsonTypeInfo or JsonSerializerContext, or make sure all of the required types are preserved.")] + [global::System.Diagnostics.CodeAnalysis.RequiresDynamicCode("JSON serialization and deserialization might require types that cannot be statically analyzed and might need runtime code generation. Use System.Text.Json source generation for native AOT applications.")] +#endif + public static global::System.Threading.Tasks.ValueTask FromJsonStreamAsync( + global::System.IO.Stream jsonStream, + global::System.Text.Json.JsonSerializerOptions? jsonSerializerOptions = null) + { + return global::System.Text.Json.JsonSerializer.DeserializeAsync( + jsonStream, + jsonSerializerOptions); + } + } +} diff --git a/src/libs/Vectara/Generated/Vectara.Models.CreateConnectorConfigurationDiscriminator.g.cs b/src/libs/Vectara/Generated/Vectara.Models.CreateConnectorConfigurationDiscriminator.g.cs new file mode 100644 index 00000000..08abb6fb --- /dev/null +++ b/src/libs/Vectara/Generated/Vectara.Models.CreateConnectorConfigurationDiscriminator.g.cs @@ -0,0 +1,45 @@ + +#nullable enable + +namespace Vectara +{ + /// + /// + /// + public sealed partial class CreateConnectorConfigurationDiscriminator + { + /// + /// + /// + [global::System.Text.Json.Serialization.JsonPropertyName("type")] + [global::System.Text.Json.Serialization.JsonConverter(typeof(global::Vectara.JsonConverters.CreateConnectorConfigurationDiscriminatorTypeJsonConverter))] + public global::Vectara.CreateConnectorConfigurationDiscriminatorType? Type { get; set; } + + /// + /// Additional properties that are not explicitly defined in the schema + /// + [global::System.Text.Json.Serialization.JsonExtensionData] + public global::System.Collections.Generic.IDictionary AdditionalProperties { get; set; } = new global::System.Collections.Generic.Dictionary(); + + /// + /// Initializes a new instance of the class. + /// + /// +#if NET7_0_OR_GREATER + [global::System.Diagnostics.CodeAnalysis.SetsRequiredMembers] +#endif + public CreateConnectorConfigurationDiscriminator( + global::Vectara.CreateConnectorConfigurationDiscriminatorType? type) + { + this.Type = type; + } + + /// + /// Initializes a new instance of the class. + /// + public CreateConnectorConfigurationDiscriminator() + { + } + + } +} \ No newline at end of file diff --git a/src/libs/Vectara/Generated/Vectara.Models.CreateAgentConnectorRequestType.g.cs b/src/libs/Vectara/Generated/Vectara.Models.CreateConnectorConfigurationDiscriminatorType.g.cs similarity index 50% rename from src/libs/Vectara/Generated/Vectara.Models.CreateAgentConnectorRequestType.g.cs rename to src/libs/Vectara/Generated/Vectara.Models.CreateConnectorConfigurationDiscriminatorType.g.cs index f354f7d8..5adad438 100644 --- a/src/libs/Vectara/Generated/Vectara.Models.CreateAgentConnectorRequestType.g.cs +++ b/src/libs/Vectara/Generated/Vectara.Models.CreateConnectorConfigurationDiscriminatorType.g.cs @@ -4,11 +4,14 @@ namespace Vectara { /// - /// The type of connector.
- /// Example: slack + /// ///
- public enum CreateAgentConnectorRequestType + public enum CreateConnectorConfigurationDiscriminatorType { + /// + /// + /// + Gchat, /// /// /// @@ -18,27 +21,29 @@ public enum CreateAgentConnectorRequestType /// /// Enum extensions to do fast conversions without the reflection. /// - public static class CreateAgentConnectorRequestTypeExtensions + public static class CreateConnectorConfigurationDiscriminatorTypeExtensions { /// /// Converts an enum to a string. /// - public static string ToValueString(this CreateAgentConnectorRequestType value) + public static string ToValueString(this CreateConnectorConfigurationDiscriminatorType value) { return value switch { - CreateAgentConnectorRequestType.Slack => "slack", + CreateConnectorConfigurationDiscriminatorType.Gchat => "gchat", + CreateConnectorConfigurationDiscriminatorType.Slack => "slack", _ => throw new global::System.ArgumentOutOfRangeException(nameof(value), value, null), }; } /// /// Converts an string to a enum. /// - public static CreateAgentConnectorRequestType? ToEnum(string value) + public static CreateConnectorConfigurationDiscriminatorType? ToEnum(string value) { return value switch { - "slack" => CreateAgentConnectorRequestType.Slack, + "gchat" => CreateConnectorConfigurationDiscriminatorType.Gchat, + "slack" => CreateConnectorConfigurationDiscriminatorType.Slack, _ => null, }; } diff --git a/src/libs/Vectara/Generated/Vectara.Models.CreateGchatConnectorConfiguration.Json.g.cs b/src/libs/Vectara/Generated/Vectara.Models.CreateGchatConnectorConfiguration.Json.g.cs new file mode 100644 index 00000000..5136232d --- /dev/null +++ b/src/libs/Vectara/Generated/Vectara.Models.CreateGchatConnectorConfiguration.Json.g.cs @@ -0,0 +1,92 @@ +#nullable enable + +namespace Vectara +{ + public sealed partial class CreateGchatConnectorConfiguration + { + /// + /// Serializes the current instance to a JSON string using the provided JsonSerializerContext. + /// + public string ToJson( + global::System.Text.Json.Serialization.JsonSerializerContext jsonSerializerContext) + { + return global::System.Text.Json.JsonSerializer.Serialize( + this, + this.GetType(), + jsonSerializerContext); + } + + /// + /// Serializes the current instance to a JSON string using the provided JsonSerializerOptions. + /// +#if NET8_0_OR_GREATER + [global::System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("JSON serialization and deserialization might require types that cannot be statically analyzed. Use the overload that takes a JsonTypeInfo or JsonSerializerContext, or make sure all of the required types are preserved.")] + [global::System.Diagnostics.CodeAnalysis.RequiresDynamicCode("JSON serialization and deserialization might require types that cannot be statically analyzed and might need runtime code generation. Use System.Text.Json source generation for native AOT applications.")] +#endif + public string ToJson( + global::System.Text.Json.JsonSerializerOptions? jsonSerializerOptions = null) + { + return global::System.Text.Json.JsonSerializer.Serialize( + this, + jsonSerializerOptions); + } + + /// + /// Deserializes a JSON string using the provided JsonSerializerContext. + /// + public static global::Vectara.CreateGchatConnectorConfiguration? FromJson( + string json, + global::System.Text.Json.Serialization.JsonSerializerContext jsonSerializerContext) + { + return global::System.Text.Json.JsonSerializer.Deserialize( + json, + typeof(global::Vectara.CreateGchatConnectorConfiguration), + jsonSerializerContext) as global::Vectara.CreateGchatConnectorConfiguration; + } + + /// + /// Deserializes a JSON string using the provided JsonSerializerOptions. + /// +#if NET8_0_OR_GREATER + [global::System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("JSON serialization and deserialization might require types that cannot be statically analyzed. Use the overload that takes a JsonTypeInfo or JsonSerializerContext, or make sure all of the required types are preserved.")] + [global::System.Diagnostics.CodeAnalysis.RequiresDynamicCode("JSON serialization and deserialization might require types that cannot be statically analyzed and might need runtime code generation. Use System.Text.Json source generation for native AOT applications.")] +#endif + public static global::Vectara.CreateGchatConnectorConfiguration? FromJson( + string json, + global::System.Text.Json.JsonSerializerOptions? jsonSerializerOptions = null) + { + return global::System.Text.Json.JsonSerializer.Deserialize( + json, + jsonSerializerOptions); + } + + /// + /// Deserializes a JSON stream using the provided JsonSerializerContext. + /// + public static async global::System.Threading.Tasks.ValueTask FromJsonStreamAsync( + global::System.IO.Stream jsonStream, + global::System.Text.Json.Serialization.JsonSerializerContext jsonSerializerContext) + { + return (await global::System.Text.Json.JsonSerializer.DeserializeAsync( + jsonStream, + typeof(global::Vectara.CreateGchatConnectorConfiguration), + jsonSerializerContext).ConfigureAwait(false)) as global::Vectara.CreateGchatConnectorConfiguration; + } + + /// + /// Deserializes a JSON stream using the provided JsonSerializerOptions. + /// +#if NET8_0_OR_GREATER + [global::System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("JSON serialization and deserialization might require types that cannot be statically analyzed. Use the overload that takes a JsonTypeInfo or JsonSerializerContext, or make sure all of the required types are preserved.")] + [global::System.Diagnostics.CodeAnalysis.RequiresDynamicCode("JSON serialization and deserialization might require types that cannot be statically analyzed and might need runtime code generation. Use System.Text.Json source generation for native AOT applications.")] +#endif + public static global::System.Threading.Tasks.ValueTask FromJsonStreamAsync( + global::System.IO.Stream jsonStream, + global::System.Text.Json.JsonSerializerOptions? jsonSerializerOptions = null) + { + return global::System.Text.Json.JsonSerializer.DeserializeAsync( + jsonStream, + jsonSerializerOptions); + } + } +} diff --git a/src/libs/Vectara/Generated/Vectara.Models.CreateGchatConnectorConfiguration.g.cs b/src/libs/Vectara/Generated/Vectara.Models.CreateGchatConnectorConfiguration.g.cs new file mode 100644 index 00000000..f6e953cb --- /dev/null +++ b/src/libs/Vectara/Generated/Vectara.Models.CreateGchatConnectorConfiguration.g.cs @@ -0,0 +1,75 @@ + +#nullable enable + +namespace Vectara +{ + /// + /// Write view of a Google Chat connector's configuration. Supply the service
+ /// account JSON key for the Chat app you have configured in the Google Cloud
+ /// console. The Chat app's HTTP endpoint URL and Authentication audience must
+ /// be set to the connector's audience_url (returned in the read view). + ///
+ public sealed partial class CreateGchatConnectorConfiguration + { + /// + /// The type of connector configuration.
+ /// Default Value: gchat
+ /// Example: gchat + ///
+ /// "gchat" + /// gchat + [global::System.Text.Json.Serialization.JsonPropertyName("type")] + [global::System.Text.Json.Serialization.JsonRequired] + public required string Type { get; set; } = "gchat"; + + /// + /// Service account JSON key used to authenticate outbound calls to the
+ /// Google Chat API. Encrypted at rest. `client_email` is parsed out of this
+ /// key for display in the read view.
+ /// Example: {"type":"service_account","project_id":"my-gchat-app", ...} + ///
+ /// {"type":"service_account","project_id":"my-gchat-app", ...} + [global::System.Text.Json.Serialization.JsonPropertyName("service_account_key")] + [global::System.Text.Json.Serialization.JsonRequired] + public required string ServiceAccountKey { get; set; } + + /// + /// Additional properties that are not explicitly defined in the schema + /// + [global::System.Text.Json.Serialization.JsonExtensionData] + public global::System.Collections.Generic.IDictionary AdditionalProperties { get; set; } = new global::System.Collections.Generic.Dictionary(); + + /// + /// Initializes a new instance of the class. + /// + /// + /// The type of connector configuration.
+ /// Default Value: gchat
+ /// Example: gchat + /// + /// + /// Service account JSON key used to authenticate outbound calls to the
+ /// Google Chat API. Encrypted at rest. `client_email` is parsed out of this
+ /// key for display in the read view.
+ /// Example: {"type":"service_account","project_id":"my-gchat-app", ...} + /// +#if NET7_0_OR_GREATER + [global::System.Diagnostics.CodeAnalysis.SetsRequiredMembers] +#endif + public CreateGchatConnectorConfiguration( + string type, + string serviceAccountKey) + { + this.Type = type ?? throw new global::System.ArgumentNullException(nameof(type)); + this.ServiceAccountKey = serviceAccountKey ?? throw new global::System.ArgumentNullException(nameof(serviceAccountKey)); + } + + /// + /// Initializes a new instance of the class. + /// + public CreateGchatConnectorConfiguration() + { + } + + } +} \ No newline at end of file diff --git a/src/libs/Vectara/Generated/Vectara.Models.CreateSlackConnectorConfiguration.Json.g.cs b/src/libs/Vectara/Generated/Vectara.Models.CreateSlackConnectorConfiguration.Json.g.cs new file mode 100644 index 00000000..4178de72 --- /dev/null +++ b/src/libs/Vectara/Generated/Vectara.Models.CreateSlackConnectorConfiguration.Json.g.cs @@ -0,0 +1,92 @@ +#nullable enable + +namespace Vectara +{ + public sealed partial class CreateSlackConnectorConfiguration + { + /// + /// Serializes the current instance to a JSON string using the provided JsonSerializerContext. + /// + public string ToJson( + global::System.Text.Json.Serialization.JsonSerializerContext jsonSerializerContext) + { + return global::System.Text.Json.JsonSerializer.Serialize( + this, + this.GetType(), + jsonSerializerContext); + } + + /// + /// Serializes the current instance to a JSON string using the provided JsonSerializerOptions. + /// +#if NET8_0_OR_GREATER + [global::System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("JSON serialization and deserialization might require types that cannot be statically analyzed. Use the overload that takes a JsonTypeInfo or JsonSerializerContext, or make sure all of the required types are preserved.")] + [global::System.Diagnostics.CodeAnalysis.RequiresDynamicCode("JSON serialization and deserialization might require types that cannot be statically analyzed and might need runtime code generation. Use System.Text.Json source generation for native AOT applications.")] +#endif + public string ToJson( + global::System.Text.Json.JsonSerializerOptions? jsonSerializerOptions = null) + { + return global::System.Text.Json.JsonSerializer.Serialize( + this, + jsonSerializerOptions); + } + + /// + /// Deserializes a JSON string using the provided JsonSerializerContext. + /// + public static global::Vectara.CreateSlackConnectorConfiguration? FromJson( + string json, + global::System.Text.Json.Serialization.JsonSerializerContext jsonSerializerContext) + { + return global::System.Text.Json.JsonSerializer.Deserialize( + json, + typeof(global::Vectara.CreateSlackConnectorConfiguration), + jsonSerializerContext) as global::Vectara.CreateSlackConnectorConfiguration; + } + + /// + /// Deserializes a JSON string using the provided JsonSerializerOptions. + /// +#if NET8_0_OR_GREATER + [global::System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("JSON serialization and deserialization might require types that cannot be statically analyzed. Use the overload that takes a JsonTypeInfo or JsonSerializerContext, or make sure all of the required types are preserved.")] + [global::System.Diagnostics.CodeAnalysis.RequiresDynamicCode("JSON serialization and deserialization might require types that cannot be statically analyzed and might need runtime code generation. Use System.Text.Json source generation for native AOT applications.")] +#endif + public static global::Vectara.CreateSlackConnectorConfiguration? FromJson( + string json, + global::System.Text.Json.JsonSerializerOptions? jsonSerializerOptions = null) + { + return global::System.Text.Json.JsonSerializer.Deserialize( + json, + jsonSerializerOptions); + } + + /// + /// Deserializes a JSON stream using the provided JsonSerializerContext. + /// + public static async global::System.Threading.Tasks.ValueTask FromJsonStreamAsync( + global::System.IO.Stream jsonStream, + global::System.Text.Json.Serialization.JsonSerializerContext jsonSerializerContext) + { + return (await global::System.Text.Json.JsonSerializer.DeserializeAsync( + jsonStream, + typeof(global::Vectara.CreateSlackConnectorConfiguration), + jsonSerializerContext).ConfigureAwait(false)) as global::Vectara.CreateSlackConnectorConfiguration; + } + + /// + /// Deserializes a JSON stream using the provided JsonSerializerOptions. + /// +#if NET8_0_OR_GREATER + [global::System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("JSON serialization and deserialization might require types that cannot be statically analyzed. Use the overload that takes a JsonTypeInfo or JsonSerializerContext, or make sure all of the required types are preserved.")] + [global::System.Diagnostics.CodeAnalysis.RequiresDynamicCode("JSON serialization and deserialization might require types that cannot be statically analyzed and might need runtime code generation. Use System.Text.Json source generation for native AOT applications.")] +#endif + public static global::System.Threading.Tasks.ValueTask FromJsonStreamAsync( + global::System.IO.Stream jsonStream, + global::System.Text.Json.JsonSerializerOptions? jsonSerializerOptions = null) + { + return global::System.Text.Json.JsonSerializer.DeserializeAsync( + jsonStream, + jsonSerializerOptions); + } + } +} diff --git a/src/libs/Vectara/Generated/Vectara.Models.CreateSlackConnectorConfiguration.g.cs b/src/libs/Vectara/Generated/Vectara.Models.CreateSlackConnectorConfiguration.g.cs new file mode 100644 index 00000000..535d8775 --- /dev/null +++ b/src/libs/Vectara/Generated/Vectara.Models.CreateSlackConnectorConfiguration.g.cs @@ -0,0 +1,98 @@ + +#nullable enable + +namespace Vectara +{ + /// + /// Write view of a Slack connector's configuration, supplied on create or update. + /// + public sealed partial class CreateSlackConnectorConfiguration + { + /// + /// The type of connector configuration.
+ /// Default Value: slack
+ /// Example: slack + ///
+ /// "slack" + /// slack + [global::System.Text.Json.Serialization.JsonPropertyName("type")] + [global::System.Text.Json.Serialization.JsonRequired] + public required string Type { get; set; } = "slack"; + + /// + /// Slack bot token (xoxb-) for API access. Encrypted at rest.
+ /// Example: xoxb-1234567890-1234567890123-abcdefghijklmnopqrstuvwx + ///
+ /// xoxb-1234567890-1234567890123-abcdefghijklmnopqrstuvwx + [global::System.Text.Json.Serialization.JsonPropertyName("bot_token")] + [global::System.Text.Json.Serialization.JsonRequired] + public required string BotToken { get; set; } + + /// + /// Slack signing secret for webhook verification. Encrypted at rest.
+ /// Example: abcdef1234567890abcdef1234567890abcdef12 + ///
+ /// abcdef1234567890abcdef1234567890abcdef12 + [global::System.Text.Json.Serialization.JsonPropertyName("signing_secret")] + [global::System.Text.Json.Serialization.JsonRequired] + public required string SigningSecret { get; set; } + + /// + /// Slack App ID for customer lookup in webhooks.
+ /// Example: A1234567890 + ///
+ /// A1234567890 + [global::System.Text.Json.Serialization.JsonPropertyName("api_app_id")] + [global::System.Text.Json.Serialization.JsonRequired] + public required string ApiAppId { get; set; } + + /// + /// Additional properties that are not explicitly defined in the schema + /// + [global::System.Text.Json.Serialization.JsonExtensionData] + public global::System.Collections.Generic.IDictionary AdditionalProperties { get; set; } = new global::System.Collections.Generic.Dictionary(); + + /// + /// Initializes a new instance of the class. + /// + /// + /// The type of connector configuration.
+ /// Default Value: slack
+ /// Example: slack + /// + /// + /// Slack bot token (xoxb-) for API access. Encrypted at rest.
+ /// Example: xoxb-1234567890-1234567890123-abcdefghijklmnopqrstuvwx + /// + /// + /// Slack signing secret for webhook verification. Encrypted at rest.
+ /// Example: abcdef1234567890abcdef1234567890abcdef12 + /// + /// + /// Slack App ID for customer lookup in webhooks.
+ /// Example: A1234567890 + /// +#if NET7_0_OR_GREATER + [global::System.Diagnostics.CodeAnalysis.SetsRequiredMembers] +#endif + public CreateSlackConnectorConfiguration( + string type, + string botToken, + string signingSecret, + string apiAppId) + { + this.Type = type ?? throw new global::System.ArgumentNullException(nameof(type)); + this.BotToken = botToken ?? throw new global::System.ArgumentNullException(nameof(botToken)); + this.SigningSecret = signingSecret ?? throw new global::System.ArgumentNullException(nameof(signingSecret)); + this.ApiAppId = apiAppId ?? throw new global::System.ArgumentNullException(nameof(apiAppId)); + } + + /// + /// Initializes a new instance of the class. + /// + public CreateSlackConnectorConfiguration() + { + } + + } +} \ No newline at end of file diff --git a/src/libs/Vectara/Generated/Vectara.Models.GchatConnectorConfiguration.Json.g.cs b/src/libs/Vectara/Generated/Vectara.Models.GchatConnectorConfiguration.Json.g.cs new file mode 100644 index 00000000..b477c302 --- /dev/null +++ b/src/libs/Vectara/Generated/Vectara.Models.GchatConnectorConfiguration.Json.g.cs @@ -0,0 +1,92 @@ +#nullable enable + +namespace Vectara +{ + public sealed partial class GchatConnectorConfiguration + { + /// + /// Serializes the current instance to a JSON string using the provided JsonSerializerContext. + /// + public string ToJson( + global::System.Text.Json.Serialization.JsonSerializerContext jsonSerializerContext) + { + return global::System.Text.Json.JsonSerializer.Serialize( + this, + this.GetType(), + jsonSerializerContext); + } + + /// + /// Serializes the current instance to a JSON string using the provided JsonSerializerOptions. + /// +#if NET8_0_OR_GREATER + [global::System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("JSON serialization and deserialization might require types that cannot be statically analyzed. Use the overload that takes a JsonTypeInfo or JsonSerializerContext, or make sure all of the required types are preserved.")] + [global::System.Diagnostics.CodeAnalysis.RequiresDynamicCode("JSON serialization and deserialization might require types that cannot be statically analyzed and might need runtime code generation. Use System.Text.Json source generation for native AOT applications.")] +#endif + public string ToJson( + global::System.Text.Json.JsonSerializerOptions? jsonSerializerOptions = null) + { + return global::System.Text.Json.JsonSerializer.Serialize( + this, + jsonSerializerOptions); + } + + /// + /// Deserializes a JSON string using the provided JsonSerializerContext. + /// + public static global::Vectara.GchatConnectorConfiguration? FromJson( + string json, + global::System.Text.Json.Serialization.JsonSerializerContext jsonSerializerContext) + { + return global::System.Text.Json.JsonSerializer.Deserialize( + json, + typeof(global::Vectara.GchatConnectorConfiguration), + jsonSerializerContext) as global::Vectara.GchatConnectorConfiguration; + } + + /// + /// Deserializes a JSON string using the provided JsonSerializerOptions. + /// +#if NET8_0_OR_GREATER + [global::System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("JSON serialization and deserialization might require types that cannot be statically analyzed. Use the overload that takes a JsonTypeInfo or JsonSerializerContext, or make sure all of the required types are preserved.")] + [global::System.Diagnostics.CodeAnalysis.RequiresDynamicCode("JSON serialization and deserialization might require types that cannot be statically analyzed and might need runtime code generation. Use System.Text.Json source generation for native AOT applications.")] +#endif + public static global::Vectara.GchatConnectorConfiguration? FromJson( + string json, + global::System.Text.Json.JsonSerializerOptions? jsonSerializerOptions = null) + { + return global::System.Text.Json.JsonSerializer.Deserialize( + json, + jsonSerializerOptions); + } + + /// + /// Deserializes a JSON stream using the provided JsonSerializerContext. + /// + public static async global::System.Threading.Tasks.ValueTask FromJsonStreamAsync( + global::System.IO.Stream jsonStream, + global::System.Text.Json.Serialization.JsonSerializerContext jsonSerializerContext) + { + return (await global::System.Text.Json.JsonSerializer.DeserializeAsync( + jsonStream, + typeof(global::Vectara.GchatConnectorConfiguration), + jsonSerializerContext).ConfigureAwait(false)) as global::Vectara.GchatConnectorConfiguration; + } + + /// + /// Deserializes a JSON stream using the provided JsonSerializerOptions. + /// +#if NET8_0_OR_GREATER + [global::System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("JSON serialization and deserialization might require types that cannot be statically analyzed. Use the overload that takes a JsonTypeInfo or JsonSerializerContext, or make sure all of the required types are preserved.")] + [global::System.Diagnostics.CodeAnalysis.RequiresDynamicCode("JSON serialization and deserialization might require types that cannot be statically analyzed and might need runtime code generation. Use System.Text.Json source generation for native AOT applications.")] +#endif + public static global::System.Threading.Tasks.ValueTask FromJsonStreamAsync( + global::System.IO.Stream jsonStream, + global::System.Text.Json.JsonSerializerOptions? jsonSerializerOptions = null) + { + return global::System.Text.Json.JsonSerializer.DeserializeAsync( + jsonStream, + jsonSerializerOptions); + } + } +} diff --git a/src/libs/Vectara/Generated/Vectara.Models.GchatConnectorConfiguration.g.cs b/src/libs/Vectara/Generated/Vectara.Models.GchatConnectorConfiguration.g.cs new file mode 100644 index 00000000..b9c52177 --- /dev/null +++ b/src/libs/Vectara/Generated/Vectara.Models.GchatConnectorConfiguration.g.cs @@ -0,0 +1,91 @@ + +#nullable enable + +namespace Vectara +{ + /// + /// Read view of a Google Chat connector's configuration. Includes the display
+ /// field `client_email` parsed out of the service account key and the audience
+ /// URL used to verify inbound events. The service account key is never returned. + ///
+ public sealed partial class GchatConnectorConfiguration + { + /// + /// The type of connector configuration.
+ /// Default Value: gchat
+ /// Example: gchat + ///
+ /// "gchat" + /// gchat + [global::System.Text.Json.Serialization.JsonPropertyName("type")] + [global::System.Text.Json.Serialization.JsonRequired] + public required string Type { get; set; } = "gchat"; + + /// + /// The webhook URL for this connector. Set the Chat app's HTTP endpoint URL
+ /// and Authentication audience fields to this value in the Google Cloud
+ /// console. Inbound Google Chat ID tokens are accepted only if aud equals
+ /// this URL. This value contains a secret and is encrypted at rest.
+ /// Example: https://api.example.com/v2/agents/customer_support/connectors/con_3Kx9QpVn2mZr8YbLc5TdWe/gchat + ///
+ /// https://api.example.com/v2/agents/customer_support/connectors/con_3Kx9QpVn2mZr8YbLc5TdWe/gchat + [global::System.Text.Json.Serialization.JsonPropertyName("audience_url")] + [global::System.Text.Json.Serialization.JsonRequired] + public required string AudienceUrl { get; set; } + + /// + /// Service account email derived from the service account key.
+ /// Example: chat-bot@my-gchat-app.iam.gserviceaccount.com + ///
+ /// chat-bot@my-gchat-app.iam.gserviceaccount.com + [global::System.Text.Json.Serialization.JsonPropertyName("client_email")] + [global::System.Text.Json.Serialization.JsonRequired] + public required string ClientEmail { get; set; } + + /// + /// Additional properties that are not explicitly defined in the schema + /// + [global::System.Text.Json.Serialization.JsonExtensionData] + public global::System.Collections.Generic.IDictionary AdditionalProperties { get; set; } = new global::System.Collections.Generic.Dictionary(); + + /// + /// Initializes a new instance of the class. + /// + /// + /// The type of connector configuration.
+ /// Default Value: gchat
+ /// Example: gchat + /// + /// + /// The webhook URL for this connector. Set the Chat app's HTTP endpoint URL
+ /// and Authentication audience fields to this value in the Google Cloud
+ /// console. Inbound Google Chat ID tokens are accepted only if aud equals
+ /// this URL. This value contains a secret and is encrypted at rest.
+ /// Example: https://api.example.com/v2/agents/customer_support/connectors/con_3Kx9QpVn2mZr8YbLc5TdWe/gchat + /// + /// + /// Service account email derived from the service account key.
+ /// Example: chat-bot@my-gchat-app.iam.gserviceaccount.com + /// +#if NET7_0_OR_GREATER + [global::System.Diagnostics.CodeAnalysis.SetsRequiredMembers] +#endif + public GchatConnectorConfiguration( + string type, + string audienceUrl, + string clientEmail) + { + this.Type = type ?? throw new global::System.ArgumentNullException(nameof(type)); + this.AudienceUrl = audienceUrl ?? throw new global::System.ArgumentNullException(nameof(audienceUrl)); + this.ClientEmail = clientEmail ?? throw new global::System.ArgumentNullException(nameof(clientEmail)); + } + + /// + /// Initializes a new instance of the class. + /// + public GchatConnectorConfiguration() + { + } + + } +} \ No newline at end of file diff --git a/src/libs/Vectara/Generated/Vectara.Models.ListAgentConnectorsType.g.cs b/src/libs/Vectara/Generated/Vectara.Models.ListAgentConnectorsType.g.cs index f1adfe0c..301cb150 100644 --- a/src/libs/Vectara/Generated/Vectara.Models.ListAgentConnectorsType.g.cs +++ b/src/libs/Vectara/Generated/Vectara.Models.ListAgentConnectorsType.g.cs @@ -8,6 +8,10 @@ namespace Vectara ///
public enum ListAgentConnectorsType { + /// + /// + /// + Gchat, /// /// /// @@ -26,6 +30,7 @@ public static string ToValueString(this ListAgentConnectorsType value) { return value switch { + ListAgentConnectorsType.Gchat => "gchat", ListAgentConnectorsType.Slack => "slack", _ => throw new global::System.ArgumentOutOfRangeException(nameof(value), value, null), }; @@ -37,6 +42,7 @@ public static string ToValueString(this ListAgentConnectorsType value) { return value switch { + "gchat" => ListAgentConnectorsType.Gchat, "slack" => ListAgentConnectorsType.Slack, _ => null, }; diff --git a/src/libs/Vectara/Generated/Vectara.Models.SlackConnectorConfiguration.g.cs b/src/libs/Vectara/Generated/Vectara.Models.SlackConnectorConfiguration.g.cs index d0fa5404..8455cffe 100644 --- a/src/libs/Vectara/Generated/Vectara.Models.SlackConnectorConfiguration.g.cs +++ b/src/libs/Vectara/Generated/Vectara.Models.SlackConnectorConfiguration.g.cs @@ -4,7 +4,7 @@ namespace Vectara { /// - /// Configuration for Slack connectors. + /// Read view of a Slack connector's configuration. /// public sealed partial class SlackConnectorConfiguration { @@ -20,7 +20,7 @@ public sealed partial class SlackConnectorConfiguration public required string Type { get; set; } = "slack"; /// - /// Slack bot token (xoxb-) for API access. Will be encrypted when stored.
+ /// Slack bot token (xoxb-) for API access. Encrypted at rest.
/// Example: xoxb-1234567890-1234567890123-abcdefghijklmnopqrstuvwx ///
/// xoxb-1234567890-1234567890123-abcdefghijklmnopqrstuvwx @@ -29,7 +29,7 @@ public sealed partial class SlackConnectorConfiguration public required string BotToken { get; set; } /// - /// Slack signing secret for webhook verification. Will be encrypted when stored.
+ /// Slack signing secret for webhook verification. Encrypted at rest.
/// Example: abcdef1234567890abcdef1234567890abcdef12 ///
/// abcdef1234567890abcdef1234567890abcdef12 @@ -48,11 +48,12 @@ public sealed partial class SlackConnectorConfiguration /// /// The webhook path for this Slack connector to receive events.
- /// Example: /v2/agents/customer_support/connectors/con_slack_support/input + /// Example: /v2/agents/customer_support/connectors/con_3Kx9QpVn2mZr8YbLc5TdWe/input ///
- /// /v2/agents/customer_support/connectors/con_slack_support/input + /// /v2/agents/customer_support/connectors/con_3Kx9QpVn2mZr8YbLc5TdWe/input [global::System.Text.Json.Serialization.JsonPropertyName("webhook_path")] - public string? WebhookPath { get; set; } + [global::System.Text.Json.Serialization.JsonRequired] + public required string WebhookPath { get; set; } /// /// Additional properties that are not explicitly defined in the schema @@ -69,11 +70,11 @@ public sealed partial class SlackConnectorConfiguration /// Example: slack /// /// - /// Slack bot token (xoxb-) for API access. Will be encrypted when stored.
+ /// Slack bot token (xoxb-) for API access. Encrypted at rest.
/// Example: xoxb-1234567890-1234567890123-abcdefghijklmnopqrstuvwx /// /// - /// Slack signing secret for webhook verification. Will be encrypted when stored.
+ /// Slack signing secret for webhook verification. Encrypted at rest.
/// Example: abcdef1234567890abcdef1234567890abcdef12 /// /// @@ -82,7 +83,7 @@ public sealed partial class SlackConnectorConfiguration /// /// /// The webhook path for this Slack connector to receive events.
- /// Example: /v2/agents/customer_support/connectors/con_slack_support/input + /// Example: /v2/agents/customer_support/connectors/con_3Kx9QpVn2mZr8YbLc5TdWe/input /// #if NET7_0_OR_GREATER [global::System.Diagnostics.CodeAnalysis.SetsRequiredMembers] @@ -92,13 +93,13 @@ public SlackConnectorConfiguration( string botToken, string signingSecret, string apiAppId, - string? webhookPath) + string webhookPath) { this.Type = type ?? throw new global::System.ArgumentNullException(nameof(type)); this.BotToken = botToken ?? throw new global::System.ArgumentNullException(nameof(botToken)); this.SigningSecret = signingSecret ?? throw new global::System.ArgumentNullException(nameof(signingSecret)); this.ApiAppId = apiAppId ?? throw new global::System.ArgumentNullException(nameof(apiAppId)); - this.WebhookPath = webhookPath; + this.WebhookPath = webhookPath ?? throw new global::System.ArgumentNullException(nameof(webhookPath)); } /// diff --git a/src/libs/Vectara/Generated/Vectara.Models.UpdateAgentConnectorRequest.g.cs b/src/libs/Vectara/Generated/Vectara.Models.UpdateAgentConnectorRequest.g.cs index 82db1829..8a7075af 100644 --- a/src/libs/Vectara/Generated/Vectara.Models.UpdateAgentConnectorRequest.g.cs +++ b/src/libs/Vectara/Generated/Vectara.Models.UpdateAgentConnectorRequest.g.cs @@ -4,7 +4,9 @@ namespace Vectara { /// - /// Request object for updating an existing agent connector. + /// Request object for updating an existing agent connector. If `configuration`
+ /// is supplied, it fully replaces the existing configuration including any
+ /// secrets. If omitted, the existing configuration is left untouched. ///
public sealed partial class UpdateAgentConnectorRequest { @@ -41,10 +43,15 @@ public sealed partial class UpdateAgentConnectorRequest public bool? Enabled { get; set; } /// - /// Configuration for different types of connectors. + /// Write view of a connector's configuration. Used when creating a connector
+ /// and reused when updating one. Carries the secrets and inputs the customer
+ /// must supply. Server-derived display fields are not accepted here and instead
+ /// appear in the read view: Slack returns `webhook_path`, and gchat returns
+ /// `audience_url` and `client_email`. ///
[global::System.Text.Json.Serialization.JsonPropertyName("configuration")] - public global::Vectara.SlackConnectorConfiguration? Configuration { get; set; } + [global::System.Text.Json.Serialization.JsonConverter(typeof(global::Vectara.JsonConverters.CreateConnectorConfigurationJsonConverter))] + public global::Vectara.CreateConnectorConfiguration? Configuration { get; set; } /// /// Additional properties that are not explicitly defined in the schema @@ -72,7 +79,11 @@ public sealed partial class UpdateAgentConnectorRequest /// Example: false /// /// - /// Configuration for different types of connectors. + /// Write view of a connector's configuration. Used when creating a connector
+ /// and reused when updating one. Carries the secrets and inputs the customer
+ /// must supply. Server-derived display fields are not accepted here and instead
+ /// appear in the read view: Slack returns `webhook_path`, and gchat returns
+ /// `audience_url` and `client_email`. /// #if NET7_0_OR_GREATER [global::System.Diagnostics.CodeAnalysis.SetsRequiredMembers] @@ -82,7 +93,7 @@ public UpdateAgentConnectorRequest( string? description, object? metadata, bool? enabled, - global::Vectara.SlackConnectorConfiguration? configuration) + global::Vectara.CreateConnectorConfiguration? configuration) { this.Name = name; this.Description = description; diff --git a/src/libs/Vectara/openapi.yaml b/src/libs/Vectara/openapi.yaml index fb3fd3d8..42174e6f 100644 --- a/src/libs/Vectara/openapi.yaml +++ b/src/libs/Vectara/openapi.yaml @@ -10766,8 +10766,8 @@ paths: - agent_administrator - administrator - owner - description: Create a new connector for an agent to receive events from external - platforms like Slack. + description: Create a new connector for an agent to receive events from an external + platform like Slack or Google Chat. operationId: createAgentConnector parameters: - $ref: '#/components/parameters/RequestTimeout' @@ -10845,6 +10845,7 @@ paths: type: string enum: - slack + - gchat example: slack - in: query name: enabled @@ -25609,7 +25610,7 @@ components: required: - secrets SlackConnectorConfiguration: - description: Configuration for Slack connectors. + description: Read view of a Slack connector's configuration. type: object x-vectaraParents: - ConnectorConfiguration @@ -25620,13 +25621,12 @@ components: default: slack example: slack bot_token: - description: Slack bot token (xoxb-) for API access. Will be encrypted when - stored. + description: Slack bot token (xoxb-) for API access. Encrypted at rest. type: string example: xoxb-1234567890-1234567890123-abcdefghijklmnopqrstuvwx signing_secret: - description: Slack signing secret for webhook verification. Will be encrypted - when stored. + description: Slack signing secret for webhook verification. Encrypted at + rest. type: string example: abcdef1234567890abcdef1234567890abcdef12 api_app_id: @@ -25636,30 +25636,83 @@ components: webhook_path: description: The webhook path for this Slack connector to receive events. type: string - example: /v2/agents/customer_support/connectors/con_slack_support/input + example: /v2/agents/customer_support/connectors/con_3Kx9QpVn2mZr8YbLc5TdWe/input required: - type - bot_token - signing_secret - api_app_id + - webhook_path + GchatConnectorConfiguration: + description: 'Read view of a Google Chat connector''s configuration. Includes + the display + + field `client_email` parsed out of the service account key and the audience + + URL used to verify inbound events. The service account key is never returned. + + ' + type: object + x-vectaraParents: + - ConnectorConfiguration + properties: + type: + description: The type of connector configuration. + type: string + default: gchat + example: gchat + audience_url: + description: 'The webhook URL for this connector. Set the Chat app''s HTTP + endpoint URL + + and Authentication audience fields to this value in the Google Cloud + + console. Inbound Google Chat ID tokens are accepted only if aud equals + + this URL. This value contains a secret and is encrypted at rest. + + ' + type: string + example: https://api.example.com/v2/agents/customer_support/connectors/con_3Kx9QpVn2mZr8YbLc5TdWe/gchat + client_email: + description: 'Service account email derived from the service account key. + + ' + type: string + example: chat-bot@my-gchat-app.iam.gserviceaccount.com + required: + - type + - audience_url + - client_email ConnectorConfiguration: - description: Configuration for different types of connectors. + description: 'Read view of a connector''s configuration as returned by GET and + list + + endpoints. Contains the secrets supplied at create time alongside + + server-derived display fields: Slack exposes `webhook_path`, and gchat + + exposes `audience_url` and `client_email`. + + ' discriminator: propertyName: type mapping: slack: '#/components/schemas/SlackConnectorConfiguration' + gchat: '#/components/schemas/GchatConnectorConfiguration' oneOf: - $ref: '#/components/schemas/SlackConnectorConfiguration' + - $ref: '#/components/schemas/GchatConnectorConfiguration' AgentConnector: description: A connector that allows an agent to receive events from external - platforms like Slack. + platforms like Slack or Google Chat. type: object properties: id: description: The unique identifier for the connector. type: string pattern: con_[0-9a-zA-Z_-]+$ - example: con_slack_support + example: con_3Kx9QpVn2mZr8YbLc5TdWe agent_key: $ref: '#/components/schemas/AgentKey' name: @@ -25675,6 +25728,7 @@ components: type: string enum: - slack + - gchat example: slack status: description: The current status of the connector. @@ -25715,6 +25769,46 @@ components: type: string format: date-time example: '2024-01-16T14:45:00Z' + last_webhook_at: + description: 'Timestamp of the most recently received inbound webhook for + this + + connector, regardless of outcome. Absent until the first webhook + + arrives. + + ' + type: string + format: date-time + example: '2024-01-16T14:45:00Z' + last_webhook_status: + description: 'Outcome of the most recently received inbound webhook. Absent + until the + + first webhook arrives. Values: success when the webhook verified and the + + event was accepted, jwt_verification_failed when the bearer token was + + missing or could not be verified, audience_mismatch when the token was + + valid but its aud did not equal the connector''s audience_url, + + event_parse_failed when the event body could not be parsed, + + internal_error when an unexpected error occurred after the connector was + + resolved, and unknown when the outcome could not be classified. + + ' + type: string + enum: + - success + - jwt_verification_failed + - audience_mismatch + - event_parse_failed + - internal_error + - unknown + example: success required: - id - agent_key @@ -25738,6 +25832,93 @@ components: required: - connectors - metadata + CreateSlackConnectorConfiguration: + description: Write view of a Slack connector's configuration, supplied on create + or update. + type: object + x-vectaraParents: + - CreateConnectorConfiguration + properties: + type: + description: The type of connector configuration. + type: string + default: slack + example: slack + bot_token: + description: Slack bot token (xoxb-) for API access. Encrypted at rest. + type: string + example: xoxb-1234567890-1234567890123-abcdefghijklmnopqrstuvwx + signing_secret: + description: Slack signing secret for webhook verification. Encrypted at + rest. + type: string + example: abcdef1234567890abcdef1234567890abcdef12 + api_app_id: + description: Slack App ID for customer lookup in webhooks. + type: string + example: A1234567890 + required: + - type + - bot_token + - signing_secret + - api_app_id + CreateGchatConnectorConfiguration: + description: 'Write view of a Google Chat connector''s configuration. Supply + the service + + account JSON key for the Chat app you have configured in the Google Cloud + + console. The Chat app''s HTTP endpoint URL and Authentication audience must + + be set to the connector''s audience_url (returned in the read view). + + ' + type: object + x-vectaraParents: + - CreateConnectorConfiguration + properties: + type: + description: The type of connector configuration. + type: string + default: gchat + example: gchat + service_account_key: + description: 'Service account JSON key used to authenticate outbound calls + to the + + Google Chat API. Encrypted at rest. `client_email` is parsed out of this + + key for display in the read view. + + ' + type: string + example: '{"type":"service_account","project_id":"my-gchat-app", ...} + + ' + required: + - type + - service_account_key + CreateConnectorConfiguration: + description: 'Write view of a connector''s configuration. Used when creating + a connector + + and reused when updating one. Carries the secrets and inputs the customer + + must supply. Server-derived display fields are not accepted here and instead + + appear in the read view: Slack returns `webhook_path`, and gchat returns + + `audience_url` and `client_email`. + + ' + discriminator: + propertyName: type + mapping: + slack: '#/components/schemas/CreateSlackConnectorConfiguration' + gchat: '#/components/schemas/CreateGchatConnectorConfiguration' + oneOf: + - $ref: '#/components/schemas/CreateSlackConnectorConfiguration' + - $ref: '#/components/schemas/CreateGchatConnectorConfiguration' CreateAgentConnectorRequest: description: Request object for creating a new agent connector. type: object @@ -25750,12 +25931,6 @@ components: description: A detailed description of what this connector does. type: string example: Receives customer support messages from the - type: - description: The type of connector. - type: string - enum: - - slack - example: slack metadata: description: Arbitrary metadata associated with the connector. type: object @@ -25770,13 +25945,18 @@ components: default: true example: true configuration: - $ref: '#/components/schemas/ConnectorConfiguration' + $ref: '#/components/schemas/CreateConnectorConfiguration' required: - name - - type - configuration UpdateAgentConnectorRequest: - description: Request object for updating an existing agent connector. + description: 'Request object for updating an existing agent connector. If `configuration` + + is supplied, it fully replaces the existing configuration including any + + secrets. If omitted, the existing configuration is left untouched. + + ' type: object properties: name: @@ -25800,7 +25980,7 @@ components: type: boolean example: false configuration: - $ref: '#/components/schemas/ConnectorConfiguration' + $ref: '#/components/schemas/CreateConnectorConfiguration' AgentAliasKey: description: "The unique key identifying an alias. Alias keys are independent\ \ of agent keys \u2014 the same string may exist as both an alias and an agent\