Skip to content

GoogleProviderOptions

Namespace AgentPrism · Assembly AgentPrism.Google.dll

AgentPrism’s Google Gemini provider settings.

public sealed class GoogleProviderOptions

objectGoogleProviderOptions

object.GetType(), object.ToString(), object.Equals(object?), object.Equals(object?, object?), object.ReferenceEquals(object?, object?), object.GetHashCode()

This type is deliberately a class, not a record: a record’s generated ToString would print every property, exposing the API key in a single log line.

Validation is done by hand in GoogleProviderOptionsValidator; DataAnnotations relies on reflection and breaks AOT compatibility.

public GoogleProviderOptions()

Full path of the configuration section settings are read from.

public const string SectionName = "AgentPrism:Providers:Google"

string

Gemini Developer API key.

public string? ApiKey { get; set; }

string?

This value is a secret and is not written to a file. Use dotnet user-secrets, an environment variable, or a secret manager. The key is never written to the database, never returned by the API, and never shown in the UI, under any condition.

API version to use. When null, the SDK default applies. Example: v1beta.

public string? ApiVersion { get; set; }

string?

Model name used when ModelBinding.Model is left empty.

public string? DefaultModel { get; set; }

string?

Request address. When null, Google’s own address (https://generativelanguage.googleapis.com) is used.

public Uri? Endpoint { get; set; }

Uri?

Model catalog shown in the UI.

public IList<ModelDescriptor> Models { get; }

IList<ModelDescriptor>

AgentPrism carries no built-in model list; the catalog comes entirely from here. This list is not a validation list: a model name absent from it can still be used.

Upper time limit for a single request. When null, the library default is used.

public TimeSpan? Timeout { get; set; }

TimeSpan?