diff --git a/src/libs/Letta/Generated/Letta.AgentsClient.AgentsCountDeployedAgents.g.cs b/src/libs/Letta/Generated/Letta.AgentsClient.AgentsCountDeployedAgents.g.cs
index 7eccae32..1aec37aa 100644
--- a/src/libs/Letta/Generated/Letta.AgentsClient.AgentsCountDeployedAgents.g.cs
+++ b/src/libs/Letta/Generated/Letta.AgentsClient.AgentsCountDeployedAgents.g.cs
@@ -6,6 +6,19 @@ namespace Letta
public partial class AgentsClient
{
+ private static readonly global::Letta.AutoSDKServer[] s_AgentsCountDeployedAgentsServers = new global::Letta.AutoSDKServer[]
+ { new global::Letta.AutoSDKServer(
+ id: "https-app-letta-com",
+ name: "Letta Cloud",
+ url: "https://app.letta.com/",
+ description: "Letta Cloud"),
+ new global::Letta.AutoSDKServer(
+ id: "http-localhost",
+ name: "Self-hosted",
+ url: "http://localhost:8283/",
+ description: "Self-hosted"),
+ };
+
private static readonly global::Letta.EndPointSecurityRequirement s_AgentsCountDeployedAgentsSecurityRequirement0 =
new global::Letta.EndPointSecurityRequirement
@@ -94,7 +107,9 @@ partial void ProcessAgentsCountDeployedAgentsResponseContent(
{
var __pathBuilder = new global::Letta.PathBuilder(
path: "/v1/agents/search/count",
- baseUri: HttpClient.BaseAddress);
+ baseUri: ResolveBaseUri(
+ servers: s_AgentsCountDeployedAgentsServers,
+ defaultBaseUrl: "https://app.letta.com/"));
__pathBuilder
.AddOptionalParameter("search", search, selector: static x => x.ToString() ?? string.Empty, delimiter: ",", explode: true)
.AddOptionalParameter("project_id", projectId)
diff --git a/src/libs/Letta/Generated/Letta.AgentsClient.AgentsGetAgentVariables.g.cs b/src/libs/Letta/Generated/Letta.AgentsClient.AgentsGetAgentVariables.g.cs
index 0f14ecc2..c6ead542 100644
--- a/src/libs/Letta/Generated/Letta.AgentsClient.AgentsGetAgentVariables.g.cs
+++ b/src/libs/Letta/Generated/Letta.AgentsClient.AgentsGetAgentVariables.g.cs
@@ -6,6 +6,19 @@ namespace Letta
public partial class AgentsClient
{
+ private static readonly global::Letta.AutoSDKServer[] s_AgentsGetAgentVariablesServers = new global::Letta.AutoSDKServer[]
+ { new global::Letta.AutoSDKServer(
+ id: "https-app-letta-com",
+ name: "Letta Cloud",
+ url: "https://app.letta.com/",
+ description: "Letta Cloud"),
+ new global::Letta.AutoSDKServer(
+ id: "http-localhost",
+ name: "Self-hosted",
+ url: "http://localhost:8283/",
+ description: "Self-hosted"),
+ };
+
private static readonly global::Letta.EndPointSecurityRequirement s_AgentsGetAgentVariablesSecurityRequirement0 =
new global::Letta.EndPointSecurityRequirement
@@ -84,7 +97,9 @@ partial void ProcessAgentsGetAgentVariablesResponseContent(
{
var __pathBuilder = new global::Letta.PathBuilder(
path: $"/v1/agents/{agentId}/core-memory/variables",
- baseUri: HttpClient.BaseAddress);
+ baseUri: ResolveBaseUri(
+ servers: s_AgentsGetAgentVariablesServers,
+ defaultBaseUrl: "https://app.letta.com/"));
var __path = __pathBuilder.ToString();
__path = global::Letta.AutoSDKRequestOptionsSupport.AppendQueryParameters(
path: __path,
diff --git a/src/libs/Letta/Generated/Letta.AgentsClient.AgentsSearchDeployedAgents.g.cs b/src/libs/Letta/Generated/Letta.AgentsClient.AgentsSearchDeployedAgents.g.cs
index e8ecd687..809e1625 100644
--- a/src/libs/Letta/Generated/Letta.AgentsClient.AgentsSearchDeployedAgents.g.cs
+++ b/src/libs/Letta/Generated/Letta.AgentsClient.AgentsSearchDeployedAgents.g.cs
@@ -6,6 +6,19 @@ namespace Letta
public partial class AgentsClient
{
+ private static readonly global::Letta.AutoSDKServer[] s_AgentsSearchDeployedAgentsServers = new global::Letta.AutoSDKServer[]
+ { new global::Letta.AutoSDKServer(
+ id: "https-app-letta-com",
+ name: "Letta Cloud",
+ url: "https://app.letta.com/",
+ description: "Letta Cloud"),
+ new global::Letta.AutoSDKServer(
+ id: "http-localhost",
+ name: "Self-hosted",
+ url: "http://localhost:8283/",
+ description: "Self-hosted"),
+ };
+
private static readonly global::Letta.EndPointSecurityRequirement s_AgentsSearchDeployedAgentsSecurityRequirement0 =
new global::Letta.EndPointSecurityRequirement
@@ -87,7 +100,9 @@ partial void ProcessAgentsSearchDeployedAgentsResponseContent(
{
var __pathBuilder = new global::Letta.PathBuilder(
path: "/v1/agents/search",
- baseUri: HttpClient.BaseAddress);
+ baseUri: ResolveBaseUri(
+ servers: s_AgentsSearchDeployedAgentsServers,
+ defaultBaseUrl: "https://app.letta.com/"));
var __path = __pathBuilder.ToString();
__path = global::Letta.AutoSDKRequestOptionsSupport.AppendQueryParameters(
path: __path,
diff --git a/src/libs/Letta/Generated/Letta.AgentsClient.AttachArchiveToAgent.g.cs b/src/libs/Letta/Generated/Letta.AgentsClient.AttachArchiveToAgent.g.cs
index 4b4eda17..772c148c 100644
--- a/src/libs/Letta/Generated/Letta.AgentsClient.AttachArchiveToAgent.g.cs
+++ b/src/libs/Letta/Generated/Letta.AgentsClient.AttachArchiveToAgent.g.cs
@@ -6,6 +6,19 @@ namespace Letta
public partial class AgentsClient
{
+ private static readonly global::Letta.AutoSDKServer[] s_AttachArchiveToAgentServers = new global::Letta.AutoSDKServer[]
+ { new global::Letta.AutoSDKServer(
+ id: "https-app-letta-com",
+ name: "Letta Cloud",
+ url: "https://app.letta.com/",
+ description: "Letta Cloud"),
+ new global::Letta.AutoSDKServer(
+ id: "http-localhost",
+ name: "Self-hosted",
+ url: "http://localhost:8283/",
+ description: "Self-hosted"),
+ };
+
private static readonly global::Letta.EndPointSecurityRequirement s_AttachArchiveToAgentSecurityRequirement0 =
new global::Letta.EndPointSecurityRequirement
@@ -91,7 +104,9 @@ partial void ProcessAttachArchiveToAgentResponseContent(
{
var __pathBuilder = new global::Letta.PathBuilder(
path: $"/v1/agents/{agentId}/archives/attach/{archiveId}",
- baseUri: HttpClient.BaseAddress);
+ baseUri: ResolveBaseUri(
+ servers: s_AttachArchiveToAgentServers,
+ defaultBaseUrl: "https://app.letta.com/"));
var __path = __pathBuilder.ToString();
__path = global::Letta.AutoSDKRequestOptionsSupport.AppendQueryParameters(
path: __path,
diff --git a/src/libs/Letta/Generated/Letta.AgentsClient.AttachCoreMemoryBlock.g.cs b/src/libs/Letta/Generated/Letta.AgentsClient.AttachCoreMemoryBlock.g.cs
index fde05a48..450aac25 100644
--- a/src/libs/Letta/Generated/Letta.AgentsClient.AttachCoreMemoryBlock.g.cs
+++ b/src/libs/Letta/Generated/Letta.AgentsClient.AttachCoreMemoryBlock.g.cs
@@ -6,6 +6,19 @@ namespace Letta
public partial class AgentsClient
{
+ private static readonly global::Letta.AutoSDKServer[] s_AttachCoreMemoryBlockServers = new global::Letta.AutoSDKServer[]
+ { new global::Letta.AutoSDKServer(
+ id: "https-app-letta-com",
+ name: "Letta Cloud",
+ url: "https://app.letta.com/",
+ description: "Letta Cloud"),
+ new global::Letta.AutoSDKServer(
+ id: "http-localhost",
+ name: "Self-hosted",
+ url: "http://localhost:8283/",
+ description: "Self-hosted"),
+ };
+
private static readonly global::Letta.EndPointSecurityRequirement s_AttachCoreMemoryBlockSecurityRequirement0 =
new global::Letta.EndPointSecurityRequirement
@@ -93,7 +106,9 @@ partial void ProcessAttachCoreMemoryBlockResponseContent(
{
var __pathBuilder = new global::Letta.PathBuilder(
path: $"/v1/agents/{agentId}/core-memory/blocks/attach/{blockId}",
- baseUri: HttpClient.BaseAddress);
+ baseUri: ResolveBaseUri(
+ servers: s_AttachCoreMemoryBlockServers,
+ defaultBaseUrl: "https://app.letta.com/"));
var __path = __pathBuilder.ToString();
__path = global::Letta.AutoSDKRequestOptionsSupport.AppendQueryParameters(
path: __path,
diff --git a/src/libs/Letta/Generated/Letta.AgentsClient.AttachFolderToAgent.g.cs b/src/libs/Letta/Generated/Letta.AgentsClient.AttachFolderToAgent.g.cs
index 8d6174f3..d94ad093 100644
--- a/src/libs/Letta/Generated/Letta.AgentsClient.AttachFolderToAgent.g.cs
+++ b/src/libs/Letta/Generated/Letta.AgentsClient.AttachFolderToAgent.g.cs
@@ -6,6 +6,19 @@ namespace Letta
public partial class AgentsClient
{
+ private static readonly global::Letta.AutoSDKServer[] s_AttachFolderToAgentServers = new global::Letta.AutoSDKServer[]
+ { new global::Letta.AutoSDKServer(
+ id: "https-app-letta-com",
+ name: "Letta Cloud",
+ url: "https://app.letta.com/",
+ description: "Letta Cloud"),
+ new global::Letta.AutoSDKServer(
+ id: "http-localhost",
+ name: "Self-hosted",
+ url: "http://localhost:8283/",
+ description: "Self-hosted"),
+ };
+
private static readonly global::Letta.EndPointSecurityRequirement s_AttachFolderToAgentSecurityRequirement0 =
new global::Letta.EndPointSecurityRequirement
@@ -93,7 +106,9 @@ partial void ProcessAttachFolderToAgentResponseContent(
{
var __pathBuilder = new global::Letta.PathBuilder(
path: $"/v1/agents/{agentId}/folders/attach/{folderId}",
- baseUri: HttpClient.BaseAddress);
+ baseUri: ResolveBaseUri(
+ servers: s_AttachFolderToAgentServers,
+ defaultBaseUrl: "https://app.letta.com/"));
var __path = __pathBuilder.ToString();
__path = global::Letta.AutoSDKRequestOptionsSupport.AppendQueryParameters(
path: __path,
diff --git a/src/libs/Letta/Generated/Letta.AgentsClient.AttachIdentityToAgent.g.cs b/src/libs/Letta/Generated/Letta.AgentsClient.AttachIdentityToAgent.g.cs
index fc4a5df6..4b7657ed 100644
--- a/src/libs/Letta/Generated/Letta.AgentsClient.AttachIdentityToAgent.g.cs
+++ b/src/libs/Letta/Generated/Letta.AgentsClient.AttachIdentityToAgent.g.cs
@@ -6,6 +6,19 @@ namespace Letta
public partial class AgentsClient
{
+ private static readonly global::Letta.AutoSDKServer[] s_AttachIdentityToAgentServers = new global::Letta.AutoSDKServer[]
+ { new global::Letta.AutoSDKServer(
+ id: "https-app-letta-com",
+ name: "Letta Cloud",
+ url: "https://app.letta.com/",
+ description: "Letta Cloud"),
+ new global::Letta.AutoSDKServer(
+ id: "http-localhost",
+ name: "Self-hosted",
+ url: "http://localhost:8283/",
+ description: "Self-hosted"),
+ };
+
private static readonly global::Letta.EndPointSecurityRequirement s_AttachIdentityToAgentSecurityRequirement0 =
new global::Letta.EndPointSecurityRequirement
@@ -91,7 +104,9 @@ partial void ProcessAttachIdentityToAgentResponseContent(
{
var __pathBuilder = new global::Letta.PathBuilder(
path: $"/v1/agents/{agentId}/identities/attach/{identityId}",
- baseUri: HttpClient.BaseAddress);
+ baseUri: ResolveBaseUri(
+ servers: s_AttachIdentityToAgentServers,
+ defaultBaseUrl: "https://app.letta.com/"));
var __path = __pathBuilder.ToString();
__path = global::Letta.AutoSDKRequestOptionsSupport.AppendQueryParameters(
path: __path,
diff --git a/src/libs/Letta/Generated/Letta.AgentsClient.AttachToolToAgent.g.cs b/src/libs/Letta/Generated/Letta.AgentsClient.AttachToolToAgent.g.cs
index 0f3ecc27..df105690 100644
--- a/src/libs/Letta/Generated/Letta.AgentsClient.AttachToolToAgent.g.cs
+++ b/src/libs/Letta/Generated/Letta.AgentsClient.AttachToolToAgent.g.cs
@@ -6,6 +6,19 @@ namespace Letta
public partial class AgentsClient
{
+ private static readonly global::Letta.AutoSDKServer[] s_AttachToolToAgentServers = new global::Letta.AutoSDKServer[]
+ { new global::Letta.AutoSDKServer(
+ id: "https-app-letta-com",
+ name: "Letta Cloud",
+ url: "https://app.letta.com/",
+ description: "Letta Cloud"),
+ new global::Letta.AutoSDKServer(
+ id: "http-localhost",
+ name: "Self-hosted",
+ url: "http://localhost:8283/",
+ description: "Self-hosted"),
+ };
+
private static readonly global::Letta.EndPointSecurityRequirement s_AttachToolToAgentSecurityRequirement0 =
new global::Letta.EndPointSecurityRequirement
@@ -93,7 +106,9 @@ partial void ProcessAttachToolToAgentResponseContent(
{
var __pathBuilder = new global::Letta.PathBuilder(
path: $"/v1/agents/{agentId}/tools/attach/{toolId}",
- baseUri: HttpClient.BaseAddress);
+ baseUri: ResolveBaseUri(
+ servers: s_AttachToolToAgentServers,
+ defaultBaseUrl: "https://app.letta.com/"));
var __path = __pathBuilder.ToString();
__path = global::Letta.AutoSDKRequestOptionsSupport.AppendQueryParameters(
path: __path,
diff --git a/src/libs/Letta/Generated/Letta.AgentsClient.CancelMessage.g.cs b/src/libs/Letta/Generated/Letta.AgentsClient.CancelMessage.g.cs
index bcb2fb3b..c14a7036 100644
--- a/src/libs/Letta/Generated/Letta.AgentsClient.CancelMessage.g.cs
+++ b/src/libs/Letta/Generated/Letta.AgentsClient.CancelMessage.g.cs
@@ -6,6 +6,19 @@ namespace Letta
public partial class AgentsClient
{
+ private static readonly global::Letta.AutoSDKServer[] s_CancelMessageServers = new global::Letta.AutoSDKServer[]
+ { new global::Letta.AutoSDKServer(
+ id: "https-app-letta-com",
+ name: "Letta Cloud",
+ url: "https://app.letta.com/",
+ description: "Letta Cloud"),
+ new global::Letta.AutoSDKServer(
+ id: "http-localhost",
+ name: "Self-hosted",
+ url: "http://localhost:8283/",
+ description: "Self-hosted"),
+ };
+
private static readonly global::Letta.EndPointSecurityRequirement s_CancelMessageSecurityRequirement0 =
new global::Letta.EndPointSecurityRequirement
@@ -95,7 +108,9 @@ partial void ProcessCancelMessageResponseContent(
{
var __pathBuilder = new global::Letta.PathBuilder(
path: $"/v1/agents/{agentId}/messages/cancel",
- baseUri: HttpClient.BaseAddress);
+ baseUri: ResolveBaseUri(
+ servers: s_CancelMessageServers,
+ defaultBaseUrl: "https://app.letta.com/"));
var __path = __pathBuilder.ToString();
__path = global::Letta.AutoSDKRequestOptionsSupport.AppendQueryParameters(
path: __path,
diff --git a/src/libs/Letta/Generated/Letta.AgentsClient.CloseAllFilesForAgent.g.cs b/src/libs/Letta/Generated/Letta.AgentsClient.CloseAllFilesForAgent.g.cs
index a5f0f55a..e31a8196 100644
--- a/src/libs/Letta/Generated/Letta.AgentsClient.CloseAllFilesForAgent.g.cs
+++ b/src/libs/Letta/Generated/Letta.AgentsClient.CloseAllFilesForAgent.g.cs
@@ -6,6 +6,19 @@ namespace Letta
public partial class AgentsClient
{
+ private static readonly global::Letta.AutoSDKServer[] s_CloseAllFilesForAgentServers = new global::Letta.AutoSDKServer[]
+ { new global::Letta.AutoSDKServer(
+ id: "https-app-letta-com",
+ name: "Letta Cloud",
+ url: "https://app.letta.com/",
+ description: "Letta Cloud"),
+ new global::Letta.AutoSDKServer(
+ id: "http-localhost",
+ name: "Self-hosted",
+ url: "http://localhost:8283/",
+ description: "Self-hosted"),
+ };
+
private static readonly global::Letta.EndPointSecurityRequirement s_CloseAllFilesForAgentSecurityRequirement0 =
new global::Letta.EndPointSecurityRequirement
@@ -88,7 +101,9 @@ partial void ProcessCloseAllFilesForAgentResponseContent(
{
var __pathBuilder = new global::Letta.PathBuilder(
path: $"/v1/agents/{agentId}/files/close-all",
- baseUri: HttpClient.BaseAddress);
+ baseUri: ResolveBaseUri(
+ servers: s_CloseAllFilesForAgentServers,
+ defaultBaseUrl: "https://app.letta.com/"));
var __path = __pathBuilder.ToString();
__path = global::Letta.AutoSDKRequestOptionsSupport.AppendQueryParameters(
path: __path,
diff --git a/src/libs/Letta/Generated/Letta.AgentsClient.CloseFileForAgent.g.cs b/src/libs/Letta/Generated/Letta.AgentsClient.CloseFileForAgent.g.cs
index a606b651..1961aed7 100644
--- a/src/libs/Letta/Generated/Letta.AgentsClient.CloseFileForAgent.g.cs
+++ b/src/libs/Letta/Generated/Letta.AgentsClient.CloseFileForAgent.g.cs
@@ -6,6 +6,19 @@ namespace Letta
public partial class AgentsClient
{
+ private static readonly global::Letta.AutoSDKServer[] s_CloseFileForAgentServers = new global::Letta.AutoSDKServer[]
+ { new global::Letta.AutoSDKServer(
+ id: "https-app-letta-com",
+ name: "Letta Cloud",
+ url: "https://app.letta.com/",
+ description: "Letta Cloud"),
+ new global::Letta.AutoSDKServer(
+ id: "http-localhost",
+ name: "Self-hosted",
+ url: "http://localhost:8283/",
+ description: "Self-hosted"),
+ };
+
private static readonly global::Letta.EndPointSecurityRequirement s_CloseFileForAgentSecurityRequirement0 =
new global::Letta.EndPointSecurityRequirement
@@ -95,7 +108,9 @@ partial void ProcessCloseFileForAgentResponseContent(
{
var __pathBuilder = new global::Letta.PathBuilder(
path: $"/v1/agents/{agentId}/files/{fileId}/close",
- baseUri: HttpClient.BaseAddress);
+ baseUri: ResolveBaseUri(
+ servers: s_CloseFileForAgentServers,
+ defaultBaseUrl: "https://app.letta.com/"));
var __path = __pathBuilder.ToString();
__path = global::Letta.AutoSDKRequestOptionsSupport.AppendQueryParameters(
path: __path,
diff --git a/src/libs/Letta/Generated/Letta.AgentsClient.CountAgents.g.cs b/src/libs/Letta/Generated/Letta.AgentsClient.CountAgents.g.cs
index c55292c6..fa8d751f 100644
--- a/src/libs/Letta/Generated/Letta.AgentsClient.CountAgents.g.cs
+++ b/src/libs/Letta/Generated/Letta.AgentsClient.CountAgents.g.cs
@@ -6,6 +6,19 @@ namespace Letta
public partial class AgentsClient
{
+ private static readonly global::Letta.AutoSDKServer[] s_CountAgentsServers = new global::Letta.AutoSDKServer[]
+ { new global::Letta.AutoSDKServer(
+ id: "https-app-letta-com",
+ name: "Letta Cloud",
+ url: "https://app.letta.com/",
+ description: "Letta Cloud"),
+ new global::Letta.AutoSDKServer(
+ id: "http-localhost",
+ name: "Self-hosted",
+ url: "http://localhost:8283/",
+ description: "Self-hosted"),
+ };
+
private static readonly global::Letta.EndPointSecurityRequirement s_CountAgentsSecurityRequirement0 =
new global::Letta.EndPointSecurityRequirement
@@ -158,7 +171,9 @@ partial void ProcessCountAgentsResponseContent(
{
var __pathBuilder = new global::Letta.PathBuilder(
path: "/v1/agents/count",
- baseUri: HttpClient.BaseAddress);
+ baseUri: ResolveBaseUri(
+ servers: s_CountAgentsServers,
+ defaultBaseUrl: "https://app.letta.com/"));
__pathBuilder
.AddOptionalParameter("name", name)
.AddOptionalParameter("tags", tags?.ToString())
diff --git a/src/libs/Letta/Generated/Letta.AgentsClient.CreateAgent.g.cs b/src/libs/Letta/Generated/Letta.AgentsClient.CreateAgent.g.cs
index a5603c13..270f30c2 100644
--- a/src/libs/Letta/Generated/Letta.AgentsClient.CreateAgent.g.cs
+++ b/src/libs/Letta/Generated/Letta.AgentsClient.CreateAgent.g.cs
@@ -8,6 +8,19 @@ namespace Letta
public partial class AgentsClient
{
+ private static readonly global::Letta.AutoSDKServer[] s_CreateAgentServers = new global::Letta.AutoSDKServer[]
+ { new global::Letta.AutoSDKServer(
+ id: "https-app-letta-com",
+ name: "Letta Cloud",
+ url: "https://app.letta.com/",
+ description: "Letta Cloud"),
+ new global::Letta.AutoSDKServer(
+ id: "http-localhost",
+ name: "Self-hosted",
+ url: "http://localhost:8283/",
+ description: "Self-hosted"),
+ };
+
private static readonly global::Letta.EndPointSecurityRequirement s_CreateAgentSecurityRequirement0 =
new global::Letta.EndPointSecurityRequirement
@@ -96,7 +109,9 @@ partial void ProcessCreateAgentResponseContent(
{
var __pathBuilder = new global::Letta.PathBuilder(
path: "/v1/agents/",
- baseUri: HttpClient.BaseAddress);
+ baseUri: ResolveBaseUri(
+ servers: s_CreateAgentServers,
+ defaultBaseUrl: "https://app.letta.com/"));
var __path = __pathBuilder.ToString();
__path = global::Letta.AutoSDKRequestOptionsSupport.AppendQueryParameters(
path: __path,
@@ -127,10 +142,10 @@ partial void ProcessCreateAgentResponseContent(
}
}
- if (xProject != default)
- {
- __httpRequest.Headers.TryAddWithoutValidation("X-Project", xProject.ToString());
- }
+ if (xProject != default)
+ {
+ __httpRequest.Headers.TryAddWithoutValidation("X-Project", xProject.ToString());
+ }
var __httpRequestContentBody = request.ToJson(JsonSerializerContext);
var __httpRequestContent = new global::System.Net.Http.StringContent(
diff --git a/src/libs/Letta/Generated/Letta.AgentsClient.CreateAgentMessageAsync.g.cs b/src/libs/Letta/Generated/Letta.AgentsClient.CreateAgentMessageAsync.g.cs
index 77260a87..749eec4f 100644
--- a/src/libs/Letta/Generated/Letta.AgentsClient.CreateAgentMessageAsync.g.cs
+++ b/src/libs/Letta/Generated/Letta.AgentsClient.CreateAgentMessageAsync.g.cs
@@ -8,6 +8,19 @@ namespace Letta
public partial class AgentsClient
{
+ private static readonly global::Letta.AutoSDKServer[] s_CreateAgentMessageAsyncServers = new global::Letta.AutoSDKServer[]
+ { new global::Letta.AutoSDKServer(
+ id: "https-app-letta-com",
+ name: "Letta Cloud",
+ url: "https://app.letta.com/",
+ description: "Letta Cloud"),
+ new global::Letta.AutoSDKServer(
+ id: "http-localhost",
+ name: "Self-hosted",
+ url: "http://localhost:8283/",
+ description: "Self-hosted"),
+ };
+
private static readonly global::Letta.EndPointSecurityRequirement s_CreateAgentMessageAsyncSecurityRequirement0 =
new global::Letta.EndPointSecurityRequirement
@@ -101,7 +114,9 @@ partial void ProcessCreateAgentMessageAsyncResponseContent(
{
var __pathBuilder = new global::Letta.PathBuilder(
path: $"/v1/agents/{agentId}/messages/async",
- baseUri: HttpClient.BaseAddress);
+ baseUri: ResolveBaseUri(
+ servers: s_CreateAgentMessageAsyncServers,
+ defaultBaseUrl: "https://app.letta.com/"));
var __path = __pathBuilder.ToString();
__path = global::Letta.AutoSDKRequestOptionsSupport.AppendQueryParameters(
path: __path,
diff --git a/src/libs/Letta/Generated/Letta.AgentsClient.CreatePassage.g.cs b/src/libs/Letta/Generated/Letta.AgentsClient.CreatePassage.g.cs
index dd625458..4104c0ac 100644
--- a/src/libs/Letta/Generated/Letta.AgentsClient.CreatePassage.g.cs
+++ b/src/libs/Letta/Generated/Letta.AgentsClient.CreatePassage.g.cs
@@ -6,6 +6,19 @@ namespace Letta
public partial class AgentsClient
{
+ private static readonly global::Letta.AutoSDKServer[] s_CreatePassageServers = new global::Letta.AutoSDKServer[]
+ { new global::Letta.AutoSDKServer(
+ id: "https-app-letta-com",
+ name: "Letta Cloud",
+ url: "https://app.letta.com/",
+ description: "Letta Cloud"),
+ new global::Letta.AutoSDKServer(
+ id: "http-localhost",
+ name: "Self-hosted",
+ url: "http://localhost:8283/",
+ description: "Self-hosted"),
+ };
+
private static readonly global::Letta.EndPointSecurityRequirement s_CreatePassageSecurityRequirement0 =
new global::Letta.EndPointSecurityRequirement
@@ -94,7 +107,9 @@ partial void ProcessCreatePassageResponseContent(
{
var __pathBuilder = new global::Letta.PathBuilder(
path: $"/v1/agents/{agentId}/archival-memory",
- baseUri: HttpClient.BaseAddress);
+ baseUri: ResolveBaseUri(
+ servers: s_CreatePassageServers,
+ defaultBaseUrl: "https://app.letta.com/"));
var __path = __pathBuilder.ToString();
__path = global::Letta.AutoSDKRequestOptionsSupport.AppendQueryParameters(
path: __path,
diff --git a/src/libs/Letta/Generated/Letta.AgentsClient.DeleteAgent.g.cs b/src/libs/Letta/Generated/Letta.AgentsClient.DeleteAgent.g.cs
index a12d12c2..dc9cf32a 100644
--- a/src/libs/Letta/Generated/Letta.AgentsClient.DeleteAgent.g.cs
+++ b/src/libs/Letta/Generated/Letta.AgentsClient.DeleteAgent.g.cs
@@ -6,6 +6,19 @@ namespace Letta
public partial class AgentsClient
{
+ private static readonly global::Letta.AutoSDKServer[] s_DeleteAgentServers = new global::Letta.AutoSDKServer[]
+ { new global::Letta.AutoSDKServer(
+ id: "https-app-letta-com",
+ name: "Letta Cloud",
+ url: "https://app.letta.com/",
+ description: "Letta Cloud"),
+ new global::Letta.AutoSDKServer(
+ id: "http-localhost",
+ name: "Self-hosted",
+ url: "http://localhost:8283/",
+ description: "Self-hosted"),
+ };
+
private static readonly global::Letta.EndPointSecurityRequirement s_DeleteAgentSecurityRequirement0 =
new global::Letta.EndPointSecurityRequirement
@@ -86,7 +99,9 @@ partial void ProcessDeleteAgentResponseContent(
{
var __pathBuilder = new global::Letta.PathBuilder(
path: $"/v1/agents/{agentId}",
- baseUri: HttpClient.BaseAddress);
+ baseUri: ResolveBaseUri(
+ servers: s_DeleteAgentServers,
+ defaultBaseUrl: "https://app.letta.com/"));
var __path = __pathBuilder.ToString();
__path = global::Letta.AutoSDKRequestOptionsSupport.AppendQueryParameters(
path: __path,
diff --git a/src/libs/Letta/Generated/Letta.AgentsClient.DeletePassage.g.cs b/src/libs/Letta/Generated/Letta.AgentsClient.DeletePassage.g.cs
index 991bb0e4..f761424d 100644
--- a/src/libs/Letta/Generated/Letta.AgentsClient.DeletePassage.g.cs
+++ b/src/libs/Letta/Generated/Letta.AgentsClient.DeletePassage.g.cs
@@ -6,6 +6,19 @@ namespace Letta
public partial class AgentsClient
{
+ private static readonly global::Letta.AutoSDKServer[] s_DeletePassageServers = new global::Letta.AutoSDKServer[]
+ { new global::Letta.AutoSDKServer(
+ id: "https-app-letta-com",
+ name: "Letta Cloud",
+ url: "https://app.letta.com/",
+ description: "Letta Cloud"),
+ new global::Letta.AutoSDKServer(
+ id: "http-localhost",
+ name: "Self-hosted",
+ url: "http://localhost:8283/",
+ description: "Self-hosted"),
+ };
+
private static readonly global::Letta.EndPointSecurityRequirement s_DeletePassageSecurityRequirement0 =
new global::Letta.EndPointSecurityRequirement
@@ -91,7 +104,9 @@ partial void ProcessDeletePassageResponseContent(
{
var __pathBuilder = new global::Letta.PathBuilder(
path: $"/v1/agents/{agentId}/archival-memory/{memoryId}",
- baseUri: HttpClient.BaseAddress);
+ baseUri: ResolveBaseUri(
+ servers: s_DeletePassageServers,
+ defaultBaseUrl: "https://app.letta.com/"));
var __path = __pathBuilder.ToString();
__path = global::Letta.AutoSDKRequestOptionsSupport.AppendQueryParameters(
path: __path,
diff --git a/src/libs/Letta/Generated/Letta.AgentsClient.DetachArchiveFromAgent.g.cs b/src/libs/Letta/Generated/Letta.AgentsClient.DetachArchiveFromAgent.g.cs
index bbc55f82..aa74c056 100644
--- a/src/libs/Letta/Generated/Letta.AgentsClient.DetachArchiveFromAgent.g.cs
+++ b/src/libs/Letta/Generated/Letta.AgentsClient.DetachArchiveFromAgent.g.cs
@@ -6,6 +6,19 @@ namespace Letta
public partial class AgentsClient
{
+ private static readonly global::Letta.AutoSDKServer[] s_DetachArchiveFromAgentServers = new global::Letta.AutoSDKServer[]
+ { new global::Letta.AutoSDKServer(
+ id: "https-app-letta-com",
+ name: "Letta Cloud",
+ url: "https://app.letta.com/",
+ description: "Letta Cloud"),
+ new global::Letta.AutoSDKServer(
+ id: "http-localhost",
+ name: "Self-hosted",
+ url: "http://localhost:8283/",
+ description: "Self-hosted"),
+ };
+
private static readonly global::Letta.EndPointSecurityRequirement s_DetachArchiveFromAgentSecurityRequirement0 =
new global::Letta.EndPointSecurityRequirement
@@ -91,7 +104,9 @@ partial void ProcessDetachArchiveFromAgentResponseContent(
{
var __pathBuilder = new global::Letta.PathBuilder(
path: $"/v1/agents/{agentId}/archives/detach/{archiveId}",
- baseUri: HttpClient.BaseAddress);
+ baseUri: ResolveBaseUri(
+ servers: s_DetachArchiveFromAgentServers,
+ defaultBaseUrl: "https://app.letta.com/"));
var __path = __pathBuilder.ToString();
__path = global::Letta.AutoSDKRequestOptionsSupport.AppendQueryParameters(
path: __path,
diff --git a/src/libs/Letta/Generated/Letta.AgentsClient.DetachCoreMemoryBlock.g.cs b/src/libs/Letta/Generated/Letta.AgentsClient.DetachCoreMemoryBlock.g.cs
index e09ce29f..c4dee013 100644
--- a/src/libs/Letta/Generated/Letta.AgentsClient.DetachCoreMemoryBlock.g.cs
+++ b/src/libs/Letta/Generated/Letta.AgentsClient.DetachCoreMemoryBlock.g.cs
@@ -6,6 +6,19 @@ namespace Letta
public partial class AgentsClient
{
+ private static readonly global::Letta.AutoSDKServer[] s_DetachCoreMemoryBlockServers = new global::Letta.AutoSDKServer[]
+ { new global::Letta.AutoSDKServer(
+ id: "https-app-letta-com",
+ name: "Letta Cloud",
+ url: "https://app.letta.com/",
+ description: "Letta Cloud"),
+ new global::Letta.AutoSDKServer(
+ id: "http-localhost",
+ name: "Self-hosted",
+ url: "http://localhost:8283/",
+ description: "Self-hosted"),
+ };
+
private static readonly global::Letta.EndPointSecurityRequirement s_DetachCoreMemoryBlockSecurityRequirement0 =
new global::Letta.EndPointSecurityRequirement
@@ -93,7 +106,9 @@ partial void ProcessDetachCoreMemoryBlockResponseContent(
{
var __pathBuilder = new global::Letta.PathBuilder(
path: $"/v1/agents/{agentId}/core-memory/blocks/detach/{blockId}",
- baseUri: HttpClient.BaseAddress);
+ baseUri: ResolveBaseUri(
+ servers: s_DetachCoreMemoryBlockServers,
+ defaultBaseUrl: "https://app.letta.com/"));
var __path = __pathBuilder.ToString();
__path = global::Letta.AutoSDKRequestOptionsSupport.AppendQueryParameters(
path: __path,
diff --git a/src/libs/Letta/Generated/Letta.AgentsClient.DetachFolderFromAgent.g.cs b/src/libs/Letta/Generated/Letta.AgentsClient.DetachFolderFromAgent.g.cs
index a9e96b6a..d87fc1f2 100644
--- a/src/libs/Letta/Generated/Letta.AgentsClient.DetachFolderFromAgent.g.cs
+++ b/src/libs/Letta/Generated/Letta.AgentsClient.DetachFolderFromAgent.g.cs
@@ -6,6 +6,19 @@ namespace Letta
public partial class AgentsClient
{
+ private static readonly global::Letta.AutoSDKServer[] s_DetachFolderFromAgentServers = new global::Letta.AutoSDKServer[]
+ { new global::Letta.AutoSDKServer(
+ id: "https-app-letta-com",
+ name: "Letta Cloud",
+ url: "https://app.letta.com/",
+ description: "Letta Cloud"),
+ new global::Letta.AutoSDKServer(
+ id: "http-localhost",
+ name: "Self-hosted",
+ url: "http://localhost:8283/",
+ description: "Self-hosted"),
+ };
+
private static readonly global::Letta.EndPointSecurityRequirement s_DetachFolderFromAgentSecurityRequirement0 =
new global::Letta.EndPointSecurityRequirement
@@ -93,7 +106,9 @@ partial void ProcessDetachFolderFromAgentResponseContent(
{
var __pathBuilder = new global::Letta.PathBuilder(
path: $"/v1/agents/{agentId}/folders/detach/{folderId}",
- baseUri: HttpClient.BaseAddress);
+ baseUri: ResolveBaseUri(
+ servers: s_DetachFolderFromAgentServers,
+ defaultBaseUrl: "https://app.letta.com/"));
var __path = __pathBuilder.ToString();
__path = global::Letta.AutoSDKRequestOptionsSupport.AppendQueryParameters(
path: __path,
diff --git a/src/libs/Letta/Generated/Letta.AgentsClient.DetachIdentityFromAgent.g.cs b/src/libs/Letta/Generated/Letta.AgentsClient.DetachIdentityFromAgent.g.cs
index 1b3efd73..4177af9e 100644
--- a/src/libs/Letta/Generated/Letta.AgentsClient.DetachIdentityFromAgent.g.cs
+++ b/src/libs/Letta/Generated/Letta.AgentsClient.DetachIdentityFromAgent.g.cs
@@ -6,6 +6,19 @@ namespace Letta
public partial class AgentsClient
{
+ private static readonly global::Letta.AutoSDKServer[] s_DetachIdentityFromAgentServers = new global::Letta.AutoSDKServer[]
+ { new global::Letta.AutoSDKServer(
+ id: "https-app-letta-com",
+ name: "Letta Cloud",
+ url: "https://app.letta.com/",
+ description: "Letta Cloud"),
+ new global::Letta.AutoSDKServer(
+ id: "http-localhost",
+ name: "Self-hosted",
+ url: "http://localhost:8283/",
+ description: "Self-hosted"),
+ };
+
private static readonly global::Letta.EndPointSecurityRequirement s_DetachIdentityFromAgentSecurityRequirement0 =
new global::Letta.EndPointSecurityRequirement
@@ -91,7 +104,9 @@ partial void ProcessDetachIdentityFromAgentResponseContent(
{
var __pathBuilder = new global::Letta.PathBuilder(
path: $"/v1/agents/{agentId}/identities/detach/{identityId}",
- baseUri: HttpClient.BaseAddress);
+ baseUri: ResolveBaseUri(
+ servers: s_DetachIdentityFromAgentServers,
+ defaultBaseUrl: "https://app.letta.com/"));
var __path = __pathBuilder.ToString();
__path = global::Letta.AutoSDKRequestOptionsSupport.AppendQueryParameters(
path: __path,
diff --git a/src/libs/Letta/Generated/Letta.AgentsClient.DetachToolFromAgent.g.cs b/src/libs/Letta/Generated/Letta.AgentsClient.DetachToolFromAgent.g.cs
index 23e03d4f..ef463878 100644
--- a/src/libs/Letta/Generated/Letta.AgentsClient.DetachToolFromAgent.g.cs
+++ b/src/libs/Letta/Generated/Letta.AgentsClient.DetachToolFromAgent.g.cs
@@ -6,6 +6,19 @@ namespace Letta
public partial class AgentsClient
{
+ private static readonly global::Letta.AutoSDKServer[] s_DetachToolFromAgentServers = new global::Letta.AutoSDKServer[]
+ { new global::Letta.AutoSDKServer(
+ id: "https-app-letta-com",
+ name: "Letta Cloud",
+ url: "https://app.letta.com/",
+ description: "Letta Cloud"),
+ new global::Letta.AutoSDKServer(
+ id: "http-localhost",
+ name: "Self-hosted",
+ url: "http://localhost:8283/",
+ description: "Self-hosted"),
+ };
+
private static readonly global::Letta.EndPointSecurityRequirement s_DetachToolFromAgentSecurityRequirement0 =
new global::Letta.EndPointSecurityRequirement
@@ -93,7 +106,9 @@ partial void ProcessDetachToolFromAgentResponseContent(
{
var __pathBuilder = new global::Letta.PathBuilder(
path: $"/v1/agents/{agentId}/tools/detach/{toolId}",
- baseUri: HttpClient.BaseAddress);
+ baseUri: ResolveBaseUri(
+ servers: s_DetachToolFromAgentServers,
+ defaultBaseUrl: "https://app.letta.com/"));
var __path = __pathBuilder.ToString();
__path = global::Letta.AutoSDKRequestOptionsSupport.AppendQueryParameters(
path: __path,
diff --git a/src/libs/Letta/Generated/Letta.AgentsClient.ExportAgent.g.cs b/src/libs/Letta/Generated/Letta.AgentsClient.ExportAgent.g.cs
index 0a6cf244..96aa5d03 100644
--- a/src/libs/Letta/Generated/Letta.AgentsClient.ExportAgent.g.cs
+++ b/src/libs/Letta/Generated/Letta.AgentsClient.ExportAgent.g.cs
@@ -8,6 +8,19 @@ namespace Letta
public partial class AgentsClient
{
+ private static readonly global::Letta.AutoSDKServer[] s_ExportAgentServers = new global::Letta.AutoSDKServer[]
+ { new global::Letta.AutoSDKServer(
+ id: "https-app-letta-com",
+ name: "Letta Cloud",
+ url: "https://app.letta.com/",
+ description: "Letta Cloud"),
+ new global::Letta.AutoSDKServer(
+ id: "http-localhost",
+ name: "Self-hosted",
+ url: "http://localhost:8283/",
+ description: "Self-hosted"),
+ };
+
private static readonly global::Letta.EndPointSecurityRequirement s_ExportAgentSecurityRequirement0 =
new global::Letta.EndPointSecurityRequirement
@@ -124,7 +137,9 @@ partial void ProcessExportAgentResponseContent(
{
var __pathBuilder = new global::Letta.PathBuilder(
path: $"/v1/agents/{agentId}/export",
- baseUri: HttpClient.BaseAddress);
+ baseUri: ResolveBaseUri(
+ servers: s_ExportAgentServers,
+ defaultBaseUrl: "https://app.letta.com/"));
__pathBuilder
.AddOptionalParameter("max_steps", maxSteps?.ToString())
.AddOptionalParameter("use_legacy_format", useLegacyFormat?.ToString().ToLowerInvariant())
diff --git a/src/libs/Letta/Generated/Letta.AgentsClient.ExportAgentWithSkills.g.cs b/src/libs/Letta/Generated/Letta.AgentsClient.ExportAgentWithSkills.g.cs
index 67bc33f0..733b7e3a 100644
--- a/src/libs/Letta/Generated/Letta.AgentsClient.ExportAgentWithSkills.g.cs
+++ b/src/libs/Letta/Generated/Letta.AgentsClient.ExportAgentWithSkills.g.cs
@@ -6,6 +6,19 @@ namespace Letta
public partial class AgentsClient
{
+ private static readonly global::Letta.AutoSDKServer[] s_ExportAgentWithSkillsServers = new global::Letta.AutoSDKServer[]
+ { new global::Letta.AutoSDKServer(
+ id: "https-app-letta-com",
+ name: "Letta Cloud",
+ url: "https://app.letta.com/",
+ description: "Letta Cloud"),
+ new global::Letta.AutoSDKServer(
+ id: "http-localhost",
+ name: "Self-hosted",
+ url: "http://localhost:8283/",
+ description: "Self-hosted"),
+ };
+
private static readonly global::Letta.EndPointSecurityRequirement s_ExportAgentWithSkillsSecurityRequirement0 =
new global::Letta.EndPointSecurityRequirement
@@ -94,7 +107,9 @@ partial void ProcessExportAgentWithSkillsResponseContent(
{
var __pathBuilder = new global::Letta.PathBuilder(
path: $"/v1/agents/{agentId}/export",
- baseUri: HttpClient.BaseAddress);
+ baseUri: ResolveBaseUri(
+ servers: s_ExportAgentWithSkillsServers,
+ defaultBaseUrl: "https://app.letta.com/"));
var __path = __pathBuilder.ToString();
__path = global::Letta.AutoSDKRequestOptionsSupport.AppendQueryParameters(
path: __path,
diff --git a/src/libs/Letta/Generated/Letta.AgentsClient.GenerateCompletion.g.cs b/src/libs/Letta/Generated/Letta.AgentsClient.GenerateCompletion.g.cs
index a40fbb85..660870ce 100644
--- a/src/libs/Letta/Generated/Letta.AgentsClient.GenerateCompletion.g.cs
+++ b/src/libs/Letta/Generated/Letta.AgentsClient.GenerateCompletion.g.cs
@@ -6,6 +6,19 @@ namespace Letta
public partial class AgentsClient
{
+ private static readonly global::Letta.AutoSDKServer[] s_GenerateCompletionServers = new global::Letta.AutoSDKServer[]
+ { new global::Letta.AutoSDKServer(
+ id: "https-app-letta-com",
+ name: "Letta Cloud",
+ url: "https://app.letta.com/",
+ description: "Letta Cloud"),
+ new global::Letta.AutoSDKServer(
+ id: "http-localhost",
+ name: "Self-hosted",
+ url: "http://localhost:8283/",
+ description: "Self-hosted"),
+ };
+
private static readonly global::Letta.EndPointSecurityRequirement s_GenerateCompletionSecurityRequirement0 =
new global::Letta.EndPointSecurityRequirement
@@ -109,7 +122,9 @@ partial void ProcessGenerateCompletionResponseContent(
{
var __pathBuilder = new global::Letta.PathBuilder(
path: $"/v1/agents/{agentId}/generate",
- baseUri: HttpClient.BaseAddress);
+ baseUri: ResolveBaseUri(
+ servers: s_GenerateCompletionServers,
+ defaultBaseUrl: "https://app.letta.com/"));
var __path = __pathBuilder.ToString();
__path = global::Letta.AutoSDKRequestOptionsSupport.AppendQueryParameters(
path: __path,
diff --git a/src/libs/Letta/Generated/Letta.AgentsClient.ImportAgent.g.cs b/src/libs/Letta/Generated/Letta.AgentsClient.ImportAgent.g.cs
index 137914b3..3ec56629 100644
--- a/src/libs/Letta/Generated/Letta.AgentsClient.ImportAgent.g.cs
+++ b/src/libs/Letta/Generated/Letta.AgentsClient.ImportAgent.g.cs
@@ -8,6 +8,19 @@ namespace Letta
public partial class AgentsClient
{
+ private static readonly global::Letta.AutoSDKServer[] s_ImportAgentServers = new global::Letta.AutoSDKServer[]
+ { new global::Letta.AutoSDKServer(
+ id: "https-app-letta-com",
+ name: "Letta Cloud",
+ url: "https://app.letta.com/",
+ description: "Letta Cloud"),
+ new global::Letta.AutoSDKServer(
+ id: "http-localhost",
+ name: "Self-hosted",
+ url: "http://localhost:8283/",
+ description: "Self-hosted"),
+ };
+
private static readonly global::Letta.EndPointSecurityRequirement s_ImportAgentSecurityRequirement0 =
new global::Letta.EndPointSecurityRequirement
@@ -95,7 +108,9 @@ partial void ProcessImportAgentResponseContent(
{
var __pathBuilder = new global::Letta.PathBuilder(
path: "/v1/agents/import",
- baseUri: HttpClient.BaseAddress);
+ baseUri: ResolveBaseUri(
+ servers: s_ImportAgentServers,
+ defaultBaseUrl: "https://app.letta.com/"));
var __path = __pathBuilder.ToString();
__path = global::Letta.AutoSDKRequestOptionsSupport.AppendQueryParameters(
path: __path,
@@ -126,10 +141,10 @@ partial void ProcessImportAgentResponseContent(
}
}
- if (xOverrideEmbeddingModel != default)
- {
- __httpRequest.Headers.TryAddWithoutValidation("x-override-embedding-model", xOverrideEmbeddingModel.ToString());
- }
+ if (xOverrideEmbeddingModel != default)
+ {
+ __httpRequest.Headers.TryAddWithoutValidation("x-override-embedding-model", xOverrideEmbeddingModel.ToString());
+ }
var __httpRequestContent = new global::System.Net.Http.MultipartFormDataContent();
if (xOverrideEmbeddingModel != default)
diff --git a/src/libs/Letta/Generated/Letta.AgentsClient.ListAgents.g.cs b/src/libs/Letta/Generated/Letta.AgentsClient.ListAgents.g.cs
index 37675bdd..a1a14526 100644
--- a/src/libs/Letta/Generated/Letta.AgentsClient.ListAgents.g.cs
+++ b/src/libs/Letta/Generated/Letta.AgentsClient.ListAgents.g.cs
@@ -8,6 +8,19 @@ namespace Letta
public partial class AgentsClient
{
+ private static readonly global::Letta.AutoSDKServer[] s_ListAgentsServers = new global::Letta.AutoSDKServer[]
+ { new global::Letta.AutoSDKServer(
+ id: "https-app-letta-com",
+ name: "Letta Cloud",
+ url: "https://app.letta.com/",
+ description: "Letta Cloud"),
+ new global::Letta.AutoSDKServer(
+ id: "http-localhost",
+ name: "Self-hosted",
+ url: "http://localhost:8283/",
+ description: "Self-hosted"),
+ };
+
private static readonly global::Letta.EndPointSecurityRequirement s_ListAgentsSecurityRequirement0 =
new global::Letta.EndPointSecurityRequirement
@@ -228,7 +241,9 @@ partial void ProcessListAgentsResponseContent(
{
var __pathBuilder = new global::Letta.PathBuilder(
path: "/v1/agents/",
- baseUri: HttpClient.BaseAddress);
+ baseUri: ResolveBaseUri(
+ servers: s_ListAgentsServers,
+ defaultBaseUrl: "https://app.letta.com/"));
__pathBuilder
.AddOptionalParameter("name", name)
.AddOptionalParameter("tags", tags?.ToString())
diff --git a/src/libs/Letta/Generated/Letta.AgentsClient.ListCoreMemoryBlocks.g.cs b/src/libs/Letta/Generated/Letta.AgentsClient.ListCoreMemoryBlocks.g.cs
index 22f3295c..7483b70c 100644
--- a/src/libs/Letta/Generated/Letta.AgentsClient.ListCoreMemoryBlocks.g.cs
+++ b/src/libs/Letta/Generated/Letta.AgentsClient.ListCoreMemoryBlocks.g.cs
@@ -6,6 +6,19 @@ namespace Letta
public partial class AgentsClient
{
+ private static readonly global::Letta.AutoSDKServer[] s_ListCoreMemoryBlocksServers = new global::Letta.AutoSDKServer[]
+ { new global::Letta.AutoSDKServer(
+ id: "https-app-letta-com",
+ name: "Letta Cloud",
+ url: "https://app.letta.com/",
+ description: "Letta Cloud"),
+ new global::Letta.AutoSDKServer(
+ id: "http-localhost",
+ name: "Self-hosted",
+ url: "http://localhost:8283/",
+ description: "Self-hosted"),
+ };
+
private static readonly global::Letta.EndPointSecurityRequirement s_ListCoreMemoryBlocksSecurityRequirement0 =
new global::Letta.EndPointSecurityRequirement
@@ -124,7 +137,9 @@ partial void ProcessListCoreMemoryBlocksResponseContent(
{
var __pathBuilder = new global::Letta.PathBuilder(
path: $"/v1/agents/{agentId}/core-memory/blocks",
- baseUri: HttpClient.BaseAddress);
+ baseUri: ResolveBaseUri(
+ servers: s_ListCoreMemoryBlocksServers,
+ defaultBaseUrl: "https://app.letta.com/"));
__pathBuilder
.AddOptionalParameter("before", before)
.AddOptionalParameter("after", after)
diff --git a/src/libs/Letta/Generated/Letta.AgentsClient.ListFilesForAgent.g.cs b/src/libs/Letta/Generated/Letta.AgentsClient.ListFilesForAgent.g.cs
index 094006cd..fc6ccc37 100644
--- a/src/libs/Letta/Generated/Letta.AgentsClient.ListFilesForAgent.g.cs
+++ b/src/libs/Letta/Generated/Letta.AgentsClient.ListFilesForAgent.g.cs
@@ -8,6 +8,19 @@ namespace Letta
public partial class AgentsClient
{
+ private static readonly global::Letta.AutoSDKServer[] s_ListFilesForAgentServers = new global::Letta.AutoSDKServer[]
+ { new global::Letta.AutoSDKServer(
+ id: "https-app-letta-com",
+ name: "Letta Cloud",
+ url: "https://app.letta.com/",
+ description: "Letta Cloud"),
+ new global::Letta.AutoSDKServer(
+ id: "http-localhost",
+ name: "Self-hosted",
+ url: "http://localhost:8283/",
+ description: "Self-hosted"),
+ };
+
private static readonly global::Letta.EndPointSecurityRequirement s_ListFilesForAgentSecurityRequirement0 =
new global::Letta.EndPointSecurityRequirement
@@ -140,7 +153,9 @@ partial void ProcessListFilesForAgentResponseContent(
{
var __pathBuilder = new global::Letta.PathBuilder(
path: $"/v1/agents/{agentId}/files",
- baseUri: HttpClient.BaseAddress);
+ baseUri: ResolveBaseUri(
+ servers: s_ListFilesForAgentServers,
+ defaultBaseUrl: "https://app.letta.com/"));
__pathBuilder
.AddOptionalParameter("before", before)
.AddOptionalParameter("after", after)
diff --git a/src/libs/Letta/Generated/Letta.AgentsClient.ListFoldersForAgent.g.cs b/src/libs/Letta/Generated/Letta.AgentsClient.ListFoldersForAgent.g.cs
index a696aa97..4652ded6 100644
--- a/src/libs/Letta/Generated/Letta.AgentsClient.ListFoldersForAgent.g.cs
+++ b/src/libs/Letta/Generated/Letta.AgentsClient.ListFoldersForAgent.g.cs
@@ -6,6 +6,19 @@ namespace Letta
public partial class AgentsClient
{
+ private static readonly global::Letta.AutoSDKServer[] s_ListFoldersForAgentServers = new global::Letta.AutoSDKServer[]
+ { new global::Letta.AutoSDKServer(
+ id: "https-app-letta-com",
+ name: "Letta Cloud",
+ url: "https://app.letta.com/",
+ description: "Letta Cloud"),
+ new global::Letta.AutoSDKServer(
+ id: "http-localhost",
+ name: "Self-hosted",
+ url: "http://localhost:8283/",
+ description: "Self-hosted"),
+ };
+
private static readonly global::Letta.EndPointSecurityRequirement s_ListFoldersForAgentSecurityRequirement0 =
new global::Letta.EndPointSecurityRequirement
@@ -124,7 +137,9 @@ partial void ProcessListFoldersForAgentResponseContent(
{
var __pathBuilder = new global::Letta.PathBuilder(
path: $"/v1/agents/{agentId}/folders",
- baseUri: HttpClient.BaseAddress);
+ baseUri: ResolveBaseUri(
+ servers: s_ListFoldersForAgentServers,
+ defaultBaseUrl: "https://app.letta.com/"));
__pathBuilder
.AddOptionalParameter("before", before)
.AddOptionalParameter("after", after)
diff --git a/src/libs/Letta/Generated/Letta.AgentsClient.ListGroupsForAgent.g.cs b/src/libs/Letta/Generated/Letta.AgentsClient.ListGroupsForAgent.g.cs
index 22edef54..1c409532 100644
--- a/src/libs/Letta/Generated/Letta.AgentsClient.ListGroupsForAgent.g.cs
+++ b/src/libs/Letta/Generated/Letta.AgentsClient.ListGroupsForAgent.g.cs
@@ -6,6 +6,19 @@ namespace Letta
public partial class AgentsClient
{
+ private static readonly global::Letta.AutoSDKServer[] s_ListGroupsForAgentServers = new global::Letta.AutoSDKServer[]
+ { new global::Letta.AutoSDKServer(
+ id: "https-app-letta-com",
+ name: "Letta Cloud",
+ url: "https://app.letta.com/",
+ description: "Letta Cloud"),
+ new global::Letta.AutoSDKServer(
+ id: "http-localhost",
+ name: "Self-hosted",
+ url: "http://localhost:8283/",
+ description: "Self-hosted"),
+ };
+
private static readonly global::Letta.EndPointSecurityRequirement s_ListGroupsForAgentSecurityRequirement0 =
new global::Letta.EndPointSecurityRequirement
@@ -131,7 +144,9 @@ partial void ProcessListGroupsForAgentResponseContent(
{
var __pathBuilder = new global::Letta.PathBuilder(
path: $"/v1/agents/{agentId}/groups",
- baseUri: HttpClient.BaseAddress);
+ baseUri: ResolveBaseUri(
+ servers: s_ListGroupsForAgentServers,
+ defaultBaseUrl: "https://app.letta.com/"));
__pathBuilder
.AddOptionalParameter("manager_type", managerType)
.AddOptionalParameter("before", before)
diff --git a/src/libs/Letta/Generated/Letta.AgentsClient.ListMessages.g.cs b/src/libs/Letta/Generated/Letta.AgentsClient.ListMessages.g.cs
index fbda8144..047c95a9 100644
--- a/src/libs/Letta/Generated/Letta.AgentsClient.ListMessages.g.cs
+++ b/src/libs/Letta/Generated/Letta.AgentsClient.ListMessages.g.cs
@@ -8,6 +8,19 @@ namespace Letta
public partial class AgentsClient
{
+ private static readonly global::Letta.AutoSDKServer[] s_ListMessagesServers = new global::Letta.AutoSDKServer[]
+ { new global::Letta.AutoSDKServer(
+ id: "https-app-letta-com",
+ name: "Letta Cloud",
+ url: "https://app.letta.com/",
+ description: "Letta Cloud"),
+ new global::Letta.AutoSDKServer(
+ id: "http-localhost",
+ name: "Self-hosted",
+ url: "http://localhost:8283/",
+ description: "Self-hosted"),
+ };
+
private static readonly global::Letta.EndPointSecurityRequirement s_ListMessagesSecurityRequirement0 =
new global::Letta.EndPointSecurityRequirement
@@ -178,7 +191,9 @@ partial void ProcessListMessagesResponseContent(
{
var __pathBuilder = new global::Letta.PathBuilder(
path: $"/v1/agents/{agentId}/messages",
- baseUri: HttpClient.BaseAddress);
+ baseUri: ResolveBaseUri(
+ servers: s_ListMessagesServers,
+ defaultBaseUrl: "https://app.letta.com/"));
__pathBuilder
.AddOptionalParameter("before", before)
.AddOptionalParameter("after", after)
diff --git a/src/libs/Letta/Generated/Letta.AgentsClient.ListPassages.g.cs b/src/libs/Letta/Generated/Letta.AgentsClient.ListPassages.g.cs
index 5f43951a..28606865 100644
--- a/src/libs/Letta/Generated/Letta.AgentsClient.ListPassages.g.cs
+++ b/src/libs/Letta/Generated/Letta.AgentsClient.ListPassages.g.cs
@@ -6,6 +6,19 @@ namespace Letta
public partial class AgentsClient
{
+ private static readonly global::Letta.AutoSDKServer[] s_ListPassagesServers = new global::Letta.AutoSDKServer[]
+ { new global::Letta.AutoSDKServer(
+ id: "https-app-letta-com",
+ name: "Letta Cloud",
+ url: "https://app.letta.com/",
+ description: "Letta Cloud"),
+ new global::Letta.AutoSDKServer(
+ id: "http-localhost",
+ name: "Self-hosted",
+ url: "http://localhost:8283/",
+ description: "Self-hosted"),
+ };
+
private static readonly global::Letta.EndPointSecurityRequirement s_ListPassagesSecurityRequirement0 =
new global::Letta.EndPointSecurityRequirement
@@ -123,7 +136,9 @@ partial void ProcessListPassagesResponseContent(
{
var __pathBuilder = new global::Letta.PathBuilder(
path: $"/v1/agents/{agentId}/archival-memory",
- baseUri: HttpClient.BaseAddress);
+ baseUri: ResolveBaseUri(
+ servers: s_ListPassagesServers,
+ defaultBaseUrl: "https://app.letta.com/"));
__pathBuilder
.AddOptionalParameter("after", after)
.AddOptionalParameter("before", before)
diff --git a/src/libs/Letta/Generated/Letta.AgentsClient.ListToolsForAgent.g.cs b/src/libs/Letta/Generated/Letta.AgentsClient.ListToolsForAgent.g.cs
index 969dce46..652e0ada 100644
--- a/src/libs/Letta/Generated/Letta.AgentsClient.ListToolsForAgent.g.cs
+++ b/src/libs/Letta/Generated/Letta.AgentsClient.ListToolsForAgent.g.cs
@@ -6,6 +6,19 @@ namespace Letta
public partial class AgentsClient
{
+ private static readonly global::Letta.AutoSDKServer[] s_ListToolsForAgentServers = new global::Letta.AutoSDKServer[]
+ { new global::Letta.AutoSDKServer(
+ id: "https-app-letta-com",
+ name: "Letta Cloud",
+ url: "https://app.letta.com/",
+ description: "Letta Cloud"),
+ new global::Letta.AutoSDKServer(
+ id: "http-localhost",
+ name: "Self-hosted",
+ url: "http://localhost:8283/",
+ description: "Self-hosted"),
+ };
+
private static readonly global::Letta.EndPointSecurityRequirement s_ListToolsForAgentSecurityRequirement0 =
new global::Letta.EndPointSecurityRequirement
@@ -124,7 +137,9 @@ partial void ProcessListToolsForAgentResponseContent(
{
var __pathBuilder = new global::Letta.PathBuilder(
path: $"/v1/agents/{agentId}/tools",
- baseUri: HttpClient.BaseAddress);
+ baseUri: ResolveBaseUri(
+ servers: s_ListToolsForAgentServers,
+ defaultBaseUrl: "https://app.letta.com/"));
__pathBuilder
.AddOptionalParameter("before", before)
.AddOptionalParameter("after", after)
diff --git a/src/libs/Letta/Generated/Letta.AgentsClient.ModifyAgent.g.cs b/src/libs/Letta/Generated/Letta.AgentsClient.ModifyAgent.g.cs
index d68b87e4..422ad877 100644
--- a/src/libs/Letta/Generated/Letta.AgentsClient.ModifyAgent.g.cs
+++ b/src/libs/Letta/Generated/Letta.AgentsClient.ModifyAgent.g.cs
@@ -8,6 +8,19 @@ namespace Letta
public partial class AgentsClient
{
+ private static readonly global::Letta.AutoSDKServer[] s_ModifyAgentServers = new global::Letta.AutoSDKServer[]
+ { new global::Letta.AutoSDKServer(
+ id: "https-app-letta-com",
+ name: "Letta Cloud",
+ url: "https://app.letta.com/",
+ description: "Letta Cloud"),
+ new global::Letta.AutoSDKServer(
+ id: "http-localhost",
+ name: "Self-hosted",
+ url: "http://localhost:8283/",
+ description: "Self-hosted"),
+ };
+
private static readonly global::Letta.EndPointSecurityRequirement s_ModifyAgentSecurityRequirement0 =
new global::Letta.EndPointSecurityRequirement
@@ -96,7 +109,9 @@ partial void ProcessModifyAgentResponseContent(
{
var __pathBuilder = new global::Letta.PathBuilder(
path: $"/v1/agents/{agentId}",
- baseUri: HttpClient.BaseAddress);
+ baseUri: ResolveBaseUri(
+ servers: s_ModifyAgentServers,
+ defaultBaseUrl: "https://app.letta.com/"));
var __path = __pathBuilder.ToString();
__path = global::Letta.AutoSDKRequestOptionsSupport.AppendQueryParameters(
path: __path,
diff --git a/src/libs/Letta/Generated/Letta.AgentsClient.ModifyApprovalForTool.g.cs b/src/libs/Letta/Generated/Letta.AgentsClient.ModifyApprovalForTool.g.cs
index f112faf5..da2ca181 100644
--- a/src/libs/Letta/Generated/Letta.AgentsClient.ModifyApprovalForTool.g.cs
+++ b/src/libs/Letta/Generated/Letta.AgentsClient.ModifyApprovalForTool.g.cs
@@ -8,6 +8,19 @@ namespace Letta
public partial class AgentsClient
{
+ private static readonly global::Letta.AutoSDKServer[] s_ModifyApprovalForToolServers = new global::Letta.AutoSDKServer[]
+ { new global::Letta.AutoSDKServer(
+ id: "https-app-letta-com",
+ name: "Letta Cloud",
+ url: "https://app.letta.com/",
+ description: "Letta Cloud"),
+ new global::Letta.AutoSDKServer(
+ id: "http-localhost",
+ name: "Self-hosted",
+ url: "http://localhost:8283/",
+ description: "Self-hosted"),
+ };
+
private static readonly global::Letta.EndPointSecurityRequirement s_ModifyApprovalForToolSecurityRequirement0 =
new global::Letta.EndPointSecurityRequirement
@@ -109,7 +122,9 @@ partial void ProcessModifyApprovalForToolResponseContent(
{
var __pathBuilder = new global::Letta.PathBuilder(
path: $"/v1/agents/{agentId}/tools/approval/{toolName}",
- baseUri: HttpClient.BaseAddress);
+ baseUri: ResolveBaseUri(
+ servers: s_ModifyApprovalForToolServers,
+ defaultBaseUrl: "https://app.letta.com/"));
__pathBuilder
.AddOptionalParameter("requires_approval", requiresApproval?.ToString().ToLowerInvariant())
;
diff --git a/src/libs/Letta/Generated/Letta.AgentsClient.ModifyCoreMemoryBlock.g.cs b/src/libs/Letta/Generated/Letta.AgentsClient.ModifyCoreMemoryBlock.g.cs
index 92156a4b..c8b3d563 100644
--- a/src/libs/Letta/Generated/Letta.AgentsClient.ModifyCoreMemoryBlock.g.cs
+++ b/src/libs/Letta/Generated/Letta.AgentsClient.ModifyCoreMemoryBlock.g.cs
@@ -6,6 +6,19 @@ namespace Letta
public partial class AgentsClient
{
+ private static readonly global::Letta.AutoSDKServer[] s_ModifyCoreMemoryBlockServers = new global::Letta.AutoSDKServer[]
+ { new global::Letta.AutoSDKServer(
+ id: "https-app-letta-com",
+ name: "Letta Cloud",
+ url: "https://app.letta.com/",
+ description: "Letta Cloud"),
+ new global::Letta.AutoSDKServer(
+ id: "http-localhost",
+ name: "Self-hosted",
+ url: "http://localhost:8283/",
+ description: "Self-hosted"),
+ };
+
private static readonly global::Letta.EndPointSecurityRequirement s_ModifyCoreMemoryBlockSecurityRequirement0 =
new global::Letta.EndPointSecurityRequirement
@@ -99,7 +112,9 @@ partial void ProcessModifyCoreMemoryBlockResponseContent(
{
var __pathBuilder = new global::Letta.PathBuilder(
path: $"/v1/agents/{agentId}/core-memory/blocks/{blockLabel}",
- baseUri: HttpClient.BaseAddress);
+ baseUri: ResolveBaseUri(
+ servers: s_ModifyCoreMemoryBlockServers,
+ defaultBaseUrl: "https://app.letta.com/"));
var __path = __pathBuilder.ToString();
__path = global::Letta.AutoSDKRequestOptionsSupport.AppendQueryParameters(
path: __path,
diff --git a/src/libs/Letta/Generated/Letta.AgentsClient.OpenFileForAgent.g.cs b/src/libs/Letta/Generated/Letta.AgentsClient.OpenFileForAgent.g.cs
index c676072d..c01857fe 100644
--- a/src/libs/Letta/Generated/Letta.AgentsClient.OpenFileForAgent.g.cs
+++ b/src/libs/Letta/Generated/Letta.AgentsClient.OpenFileForAgent.g.cs
@@ -6,6 +6,19 @@ namespace Letta
public partial class AgentsClient
{
+ private static readonly global::Letta.AutoSDKServer[] s_OpenFileForAgentServers = new global::Letta.AutoSDKServer[]
+ { new global::Letta.AutoSDKServer(
+ id: "https-app-letta-com",
+ name: "Letta Cloud",
+ url: "https://app.letta.com/",
+ description: "Letta Cloud"),
+ new global::Letta.AutoSDKServer(
+ id: "http-localhost",
+ name: "Self-hosted",
+ url: "http://localhost:8283/",
+ description: "Self-hosted"),
+ };
+
private static readonly global::Letta.EndPointSecurityRequirement s_OpenFileForAgentSecurityRequirement0 =
new global::Letta.EndPointSecurityRequirement
@@ -96,7 +109,9 @@ partial void ProcessOpenFileForAgentResponseContent(
{
var __pathBuilder = new global::Letta.PathBuilder(
path: $"/v1/agents/{agentId}/files/{fileId}/open",
- baseUri: HttpClient.BaseAddress);
+ baseUri: ResolveBaseUri(
+ servers: s_OpenFileForAgentServers,
+ defaultBaseUrl: "https://app.letta.com/"));
var __path = __pathBuilder.ToString();
__path = global::Letta.AutoSDKRequestOptionsSupport.AppendQueryParameters(
path: __path,
diff --git a/src/libs/Letta/Generated/Letta.AgentsClient.PreviewModelRequest.g.cs b/src/libs/Letta/Generated/Letta.AgentsClient.PreviewModelRequest.g.cs
index 57d483d5..d5f0efb1 100644
--- a/src/libs/Letta/Generated/Letta.AgentsClient.PreviewModelRequest.g.cs
+++ b/src/libs/Letta/Generated/Letta.AgentsClient.PreviewModelRequest.g.cs
@@ -6,6 +6,19 @@ namespace Letta
public partial class AgentsClient
{
+ private static readonly global::Letta.AutoSDKServer[] s_PreviewModelRequestServers = new global::Letta.AutoSDKServer[]
+ { new global::Letta.AutoSDKServer(
+ id: "https-app-letta-com",
+ name: "Letta Cloud",
+ url: "https://app.letta.com/",
+ description: "Letta Cloud"),
+ new global::Letta.AutoSDKServer(
+ id: "http-localhost",
+ name: "Self-hosted",
+ url: "http://localhost:8283/",
+ description: "Self-hosted"),
+ };
+
private static readonly global::Letta.EndPointSecurityRequirement s_PreviewModelRequestSecurityRequirement0 =
new global::Letta.EndPointSecurityRequirement
@@ -95,7 +108,9 @@ partial void ProcessPreviewModelRequestResponseContent(
{
var __pathBuilder = new global::Letta.PathBuilder(
path: $"/v1/agents/{agentId}/messages/preview-raw-payload",
- baseUri: HttpClient.BaseAddress);
+ baseUri: ResolveBaseUri(
+ servers: s_PreviewModelRequestServers,
+ defaultBaseUrl: "https://app.letta.com/"));
var __path = __pathBuilder.ToString();
__path = global::Letta.AutoSDKRequestOptionsSupport.AppendQueryParameters(
path: __path,
diff --git a/src/libs/Letta/Generated/Letta.AgentsClient.RecompileAgent.g.cs b/src/libs/Letta/Generated/Letta.AgentsClient.RecompileAgent.g.cs
index b0d30b1d..daf5036c 100644
--- a/src/libs/Letta/Generated/Letta.AgentsClient.RecompileAgent.g.cs
+++ b/src/libs/Letta/Generated/Letta.AgentsClient.RecompileAgent.g.cs
@@ -6,6 +6,19 @@ namespace Letta
public partial class AgentsClient
{
+ private static readonly global::Letta.AutoSDKServer[] s_RecompileAgentServers = new global::Letta.AutoSDKServer[]
+ { new global::Letta.AutoSDKServer(
+ id: "https-app-letta-com",
+ name: "Letta Cloud",
+ url: "https://app.letta.com/",
+ description: "Letta Cloud"),
+ new global::Letta.AutoSDKServer(
+ id: "http-localhost",
+ name: "Self-hosted",
+ url: "http://localhost:8283/",
+ description: "Self-hosted"),
+ };
+
private static readonly global::Letta.EndPointSecurityRequirement s_RecompileAgentSecurityRequirement0 =
new global::Letta.EndPointSecurityRequirement
@@ -102,7 +115,9 @@ partial void ProcessRecompileAgentResponseContent(
{
var __pathBuilder = new global::Letta.PathBuilder(
path: $"/v1/agents/{agentId}/recompile",
- baseUri: HttpClient.BaseAddress);
+ baseUri: ResolveBaseUri(
+ servers: s_RecompileAgentServers,
+ defaultBaseUrl: "https://app.letta.com/"));
__pathBuilder
.AddOptionalParameter("update_timestamp", updateTimestamp?.ToString().ToLowerInvariant())
.AddOptionalParameter("dry_run", dryRun?.ToString().ToLowerInvariant())
diff --git a/src/libs/Letta/Generated/Letta.AgentsClient.ResetMessages.g.cs b/src/libs/Letta/Generated/Letta.AgentsClient.ResetMessages.g.cs
index 82eeabc1..4b2208ab 100644
--- a/src/libs/Letta/Generated/Letta.AgentsClient.ResetMessages.g.cs
+++ b/src/libs/Letta/Generated/Letta.AgentsClient.ResetMessages.g.cs
@@ -6,6 +6,19 @@ namespace Letta
public partial class AgentsClient
{
+ private static readonly global::Letta.AutoSDKServer[] s_ResetMessagesServers = new global::Letta.AutoSDKServer[]
+ { new global::Letta.AutoSDKServer(
+ id: "https-app-letta-com",
+ name: "Letta Cloud",
+ url: "https://app.letta.com/",
+ description: "Letta Cloud"),
+ new global::Letta.AutoSDKServer(
+ id: "http-localhost",
+ name: "Self-hosted",
+ url: "http://localhost:8283/",
+ description: "Self-hosted"),
+ };
+
private static readonly global::Letta.EndPointSecurityRequirement s_ResetMessagesSecurityRequirement0 =
new global::Letta.EndPointSecurityRequirement
@@ -94,7 +107,9 @@ partial void ProcessResetMessagesResponseContent(
{
var __pathBuilder = new global::Letta.PathBuilder(
path: $"/v1/agents/{agentId}/reset-messages",
- baseUri: HttpClient.BaseAddress);
+ baseUri: ResolveBaseUri(
+ servers: s_ResetMessagesServers,
+ defaultBaseUrl: "https://app.letta.com/"));
var __path = __pathBuilder.ToString();
__path = global::Letta.AutoSDKRequestOptionsSupport.AppendQueryParameters(
path: __path,
diff --git a/src/libs/Letta/Generated/Letta.AgentsClient.RetrieveAgent.g.cs b/src/libs/Letta/Generated/Letta.AgentsClient.RetrieveAgent.g.cs
index 0bfbca53..7132b11e 100644
--- a/src/libs/Letta/Generated/Letta.AgentsClient.RetrieveAgent.g.cs
+++ b/src/libs/Letta/Generated/Letta.AgentsClient.RetrieveAgent.g.cs
@@ -8,6 +8,19 @@ namespace Letta
public partial class AgentsClient
{
+ private static readonly global::Letta.AutoSDKServer[] s_RetrieveAgentServers = new global::Letta.AutoSDKServer[]
+ { new global::Letta.AutoSDKServer(
+ id: "https-app-letta-com",
+ name: "Letta Cloud",
+ url: "https://app.letta.com/",
+ description: "Letta Cloud"),
+ new global::Letta.AutoSDKServer(
+ id: "http-localhost",
+ name: "Self-hosted",
+ url: "http://localhost:8283/",
+ description: "Self-hosted"),
+ };
+
private static readonly global::Letta.EndPointSecurityRequirement s_RetrieveAgentSecurityRequirement0 =
new global::Letta.EndPointSecurityRequirement
@@ -103,7 +116,9 @@ partial void ProcessRetrieveAgentResponseContent(
{
var __pathBuilder = new global::Letta.PathBuilder(
path: $"/v1/agents/{agentId}",
- baseUri: HttpClient.BaseAddress);
+ baseUri: ResolveBaseUri(
+ servers: s_RetrieveAgentServers,
+ defaultBaseUrl: "https://app.letta.com/"));
__pathBuilder
.AddOptionalParameter("include_relationships", includeRelationships?.ToString())
.AddOptionalParameter("include", include, selector: static x => x.ToValueString(), delimiter: ",", explode: true)
diff --git a/src/libs/Letta/Generated/Letta.AgentsClient.RetrieveCoreMemoryBlock.g.cs b/src/libs/Letta/Generated/Letta.AgentsClient.RetrieveCoreMemoryBlock.g.cs
index 55adc308..38480b0a 100644
--- a/src/libs/Letta/Generated/Letta.AgentsClient.RetrieveCoreMemoryBlock.g.cs
+++ b/src/libs/Letta/Generated/Letta.AgentsClient.RetrieveCoreMemoryBlock.g.cs
@@ -6,6 +6,19 @@ namespace Letta
public partial class AgentsClient
{
+ private static readonly global::Letta.AutoSDKServer[] s_RetrieveCoreMemoryBlockServers = new global::Letta.AutoSDKServer[]
+ { new global::Letta.AutoSDKServer(
+ id: "https-app-letta-com",
+ name: "Letta Cloud",
+ url: "https://app.letta.com/",
+ description: "Letta Cloud"),
+ new global::Letta.AutoSDKServer(
+ id: "http-localhost",
+ name: "Self-hosted",
+ url: "http://localhost:8283/",
+ description: "Self-hosted"),
+ };
+
private static readonly global::Letta.EndPointSecurityRequirement s_RetrieveCoreMemoryBlockSecurityRequirement0 =
new global::Letta.EndPointSecurityRequirement
@@ -91,7 +104,9 @@ partial void ProcessRetrieveCoreMemoryBlockResponseContent(
{
var __pathBuilder = new global::Letta.PathBuilder(
path: $"/v1/agents/{agentId}/core-memory/blocks/{blockLabel}",
- baseUri: HttpClient.BaseAddress);
+ baseUri: ResolveBaseUri(
+ servers: s_RetrieveCoreMemoryBlockServers,
+ defaultBaseUrl: "https://app.letta.com/"));
var __path = __pathBuilder.ToString();
__path = global::Letta.AutoSDKRequestOptionsSupport.AppendQueryParameters(
path: __path,
diff --git a/src/libs/Letta/Generated/Letta.AgentsClient.RunToolForAgent.g.cs b/src/libs/Letta/Generated/Letta.AgentsClient.RunToolForAgent.g.cs
index 85513116..3d62f2e0 100644
--- a/src/libs/Letta/Generated/Letta.AgentsClient.RunToolForAgent.g.cs
+++ b/src/libs/Letta/Generated/Letta.AgentsClient.RunToolForAgent.g.cs
@@ -6,6 +6,19 @@ namespace Letta
public partial class AgentsClient
{
+ private static readonly global::Letta.AutoSDKServer[] s_RunToolForAgentServers = new global::Letta.AutoSDKServer[]
+ { new global::Letta.AutoSDKServer(
+ id: "https-app-letta-com",
+ name: "Letta Cloud",
+ url: "https://app.letta.com/",
+ description: "Letta Cloud"),
+ new global::Letta.AutoSDKServer(
+ id: "http-localhost",
+ name: "Self-hosted",
+ url: "http://localhost:8283/",
+ description: "Self-hosted"),
+ };
+
private static readonly global::Letta.EndPointSecurityRequirement s_RunToolForAgentSecurityRequirement0 =
new global::Letta.EndPointSecurityRequirement
@@ -101,7 +114,9 @@ partial void ProcessRunToolForAgentResponseContent(
{
var __pathBuilder = new global::Letta.PathBuilder(
path: $"/v1/agents/{agentId}/tools/{toolName}/run",
- baseUri: HttpClient.BaseAddress);
+ baseUri: ResolveBaseUri(
+ servers: s_RunToolForAgentServers,
+ defaultBaseUrl: "https://app.letta.com/"));
var __path = __pathBuilder.ToString();
__path = global::Letta.AutoSDKRequestOptionsSupport.AppendQueryParameters(
path: __path,
diff --git a/src/libs/Letta/Generated/Letta.AgentsClient.SearchArchivalMemory.g.cs b/src/libs/Letta/Generated/Letta.AgentsClient.SearchArchivalMemory.g.cs
index b9aa731f..ef0d6d17 100644
--- a/src/libs/Letta/Generated/Letta.AgentsClient.SearchArchivalMemory.g.cs
+++ b/src/libs/Letta/Generated/Letta.AgentsClient.SearchArchivalMemory.g.cs
@@ -6,6 +6,19 @@ namespace Letta
public partial class AgentsClient
{
+ private static readonly global::Letta.AutoSDKServer[] s_SearchArchivalMemoryServers = new global::Letta.AutoSDKServer[]
+ { new global::Letta.AutoSDKServer(
+ id: "https-app-letta-com",
+ name: "Letta Cloud",
+ url: "https://app.letta.com/",
+ description: "Letta Cloud"),
+ new global::Letta.AutoSDKServer(
+ id: "http-localhost",
+ name: "Self-hosted",
+ url: "http://localhost:8283/",
+ description: "Self-hosted"),
+ };
+
private static readonly global::Letta.EndPointSecurityRequirement s_SearchArchivalMemorySecurityRequirement0 =
new global::Letta.EndPointSecurityRequirement
@@ -132,7 +145,9 @@ partial void ProcessSearchArchivalMemoryResponseContent(
{
var __pathBuilder = new global::Letta.PathBuilder(
path: $"/v1/agents/{agentId}/archival-memory/search",
- baseUri: HttpClient.BaseAddress);
+ baseUri: ResolveBaseUri(
+ servers: s_SearchArchivalMemoryServers,
+ defaultBaseUrl: "https://app.letta.com/"));
__pathBuilder
.AddRequiredParameter("query", query)
.AddOptionalParameter("tags", tags?.ToString())
diff --git a/src/libs/Letta/Generated/Letta.AgentsClient.SearchMessages.g.cs b/src/libs/Letta/Generated/Letta.AgentsClient.SearchMessages.g.cs
index 83b34adc..9b57d660 100644
--- a/src/libs/Letta/Generated/Letta.AgentsClient.SearchMessages.g.cs
+++ b/src/libs/Letta/Generated/Letta.AgentsClient.SearchMessages.g.cs
@@ -6,6 +6,19 @@ namespace Letta
public partial class AgentsClient
{
+ private static readonly global::Letta.AutoSDKServer[] s_SearchMessagesServers = new global::Letta.AutoSDKServer[]
+ { new global::Letta.AutoSDKServer(
+ id: "https-app-letta-com",
+ name: "Letta Cloud",
+ url: "https://app.letta.com/",
+ description: "Letta Cloud"),
+ new global::Letta.AutoSDKServer(
+ id: "http-localhost",
+ name: "Self-hosted",
+ url: "http://localhost:8283/",
+ description: "Self-hosted"),
+ };
+
private static readonly global::Letta.EndPointSecurityRequirement s_SearchMessagesSecurityRequirement0 =
new global::Letta.EndPointSecurityRequirement
@@ -88,7 +101,9 @@ partial void ProcessSearchMessagesResponseContent(
{
var __pathBuilder = new global::Letta.PathBuilder(
path: "/v1/agents/messages/search",
- baseUri: HttpClient.BaseAddress);
+ baseUri: ResolveBaseUri(
+ servers: s_SearchMessagesServers,
+ defaultBaseUrl: "https://app.letta.com/"));
var __path = __pathBuilder.ToString();
__path = global::Letta.AutoSDKRequestOptionsSupport.AppendQueryParameters(
path: __path,
diff --git a/src/libs/Letta/Generated/Letta.AgentsClient.SendMessage.g.cs b/src/libs/Letta/Generated/Letta.AgentsClient.SendMessage.g.cs
index 616de256..ec770d23 100644
--- a/src/libs/Letta/Generated/Letta.AgentsClient.SendMessage.g.cs
+++ b/src/libs/Letta/Generated/Letta.AgentsClient.SendMessage.g.cs
@@ -8,6 +8,19 @@ namespace Letta
public partial class AgentsClient
{
+ private static readonly global::Letta.AutoSDKServer[] s_SendMessageServers = new global::Letta.AutoSDKServer[]
+ { new global::Letta.AutoSDKServer(
+ id: "https-app-letta-com",
+ name: "Letta Cloud",
+ url: "https://app.letta.com/",
+ description: "Letta Cloud"),
+ new global::Letta.AutoSDKServer(
+ id: "http-localhost",
+ name: "Self-hosted",
+ url: "http://localhost:8283/",
+ description: "Self-hosted"),
+ };
+
private static readonly global::Letta.EndPointSecurityRequirement s_SendMessageSecurityRequirement0 =
new global::Letta.EndPointSecurityRequirement
@@ -107,7 +120,9 @@ partial void ProcessSendMessageResponseContent(
{
var __pathBuilder = new global::Letta.PathBuilder(
path: $"/v1/agents/{agentId}/messages",
- baseUri: HttpClient.BaseAddress);
+ baseUri: ResolveBaseUri(
+ servers: s_SendMessageServers,
+ defaultBaseUrl: "https://app.letta.com/"));
var __path = __pathBuilder.ToString();
__path = global::Letta.AutoSDKRequestOptionsSupport.AppendQueryParameters(
path: __path,
diff --git a/src/libs/Letta/Generated/Letta.AgentsClient.SummarizeMessages.g.cs b/src/libs/Letta/Generated/Letta.AgentsClient.SummarizeMessages.g.cs
index ab6b4e1a..66b2d32d 100644
--- a/src/libs/Letta/Generated/Letta.AgentsClient.SummarizeMessages.g.cs
+++ b/src/libs/Letta/Generated/Letta.AgentsClient.SummarizeMessages.g.cs
@@ -6,6 +6,19 @@ namespace Letta
public partial class AgentsClient
{
+ private static readonly global::Letta.AutoSDKServer[] s_SummarizeMessagesServers = new global::Letta.AutoSDKServer[]
+ { new global::Letta.AutoSDKServer(
+ id: "https-app-letta-com",
+ name: "Letta Cloud",
+ url: "https://app.letta.com/",
+ description: "Letta Cloud"),
+ new global::Letta.AutoSDKServer(
+ id: "http-localhost",
+ name: "Self-hosted",
+ url: "http://localhost:8283/",
+ description: "Self-hosted"),
+ };
+
private static readonly global::Letta.EndPointSecurityRequirement s_SummarizeMessagesSecurityRequirement0 =
new global::Letta.EndPointSecurityRequirement
@@ -94,7 +107,9 @@ partial void ProcessSummarizeMessagesResponseContent(
{
var __pathBuilder = new global::Letta.PathBuilder(
path: $"/v1/agents/{agentId}/summarize",
- baseUri: HttpClient.BaseAddress);
+ baseUri: ResolveBaseUri(
+ servers: s_SummarizeMessagesServers,
+ defaultBaseUrl: "https://app.letta.com/"));
var __path = __pathBuilder.ToString();
__path = global::Letta.AutoSDKRequestOptionsSupport.AppendQueryParameters(
path: __path,
diff --git a/src/libs/Letta/Generated/Letta.AgentsClient.g.cs b/src/libs/Letta/Generated/Letta.AgentsClient.g.cs
index b6ec52cd..dbe1102e 100644
--- a/src/libs/Letta/Generated/Letta.AgentsClient.g.cs
+++ b/src/libs/Letta/Generated/Letta.AgentsClient.g.cs
@@ -20,7 +20,7 @@ public sealed partial class AgentsClient : global::Letta.IAgentsClient, global::
public global::System.Net.Http.HttpClient HttpClient { get; }
///
- public System.Uri? BaseUri => HttpClient.BaseAddress;
+ public System.Uri? BaseUri => ResolveDisplayedBaseUri();
///
public global::System.Collections.Generic.List Authorizations { get; }
@@ -33,12 +33,43 @@ public sealed partial class AgentsClient : global::Letta.IAgentsClient, global::
///
public global::Letta.AutoSDKClientOptions Options { get; }
+
+
+ internal global::Letta.AutoSDKServerConfiguration AutoSDKServerConfiguration { get; set; } = new global::Letta.AutoSDKServerConfiguration();
///
///
///
public global::System.Text.Json.Serialization.JsonSerializerContext JsonSerializerContext { get; set; } = global::Letta.SourceGenerationContext.Default;
+
+ private static readonly global::Letta.AutoSDKServer[] s_availableServers = new global::Letta.AutoSDKServer[]
+ { new global::Letta.AutoSDKServer(
+ id: "https-app-letta-com",
+ name: "Letta Cloud",
+ url: "https://app.letta.com/",
+ description: "Letta Cloud"),
+ new global::Letta.AutoSDKServer(
+ id: "http-localhost",
+ name: "Self-hosted",
+ url: "http://localhost:8283/",
+ description: "Self-hosted"),
+ };
+
+ ///
+ /// The server options available for this client.
+ ///
+ public global::System.Collections.Generic.IReadOnlyList AvailableServers => s_availableServers;
+
+ ///
+ /// The currently selected server for this client, if any.
+ ///
+ public global::Letta.AutoSDKServer? SelectedServer
+ {
+ get => ResolveSelectedServer();
+ set => SelectServer(value);
+ }
+
///
/// Creates a new instance of the AgentsClient.
/// If no httpClient is provided, a new one will be created.
@@ -85,6 +116,8 @@ public AgentsClient(
Options = options ?? new global::Letta.AutoSDKClientOptions();
_disposeHttpClient = disposeHttpClient;
+ AutoSDKServerConfiguration.ExplicitBaseUri = baseUri ?? httpClient?.BaseAddress;
+
Initialized(HttpClient);
}
@@ -111,5 +144,117 @@ partial void ProcessResponseContent(
global::System.Net.Http.HttpClient client,
global::System.Net.Http.HttpResponseMessage response,
ref string content);
+
+
+ ///
+ /// Selects one of the generated server options by id.
+ ///
+ public bool TrySelectServer(string serverId)
+ {
+ if (string.IsNullOrWhiteSpace(serverId))
+ {
+ return false;
+ }
+
+ foreach (var server in s_availableServers)
+ {
+ if (string.Equals(server.Id, serverId, global::System.StringComparison.OrdinalIgnoreCase))
+ {
+ AutoSDKServerConfiguration.SelectedServer = server;
+ AutoSDKServerConfiguration.ExplicitBaseUri = null;
+ return true;
+ }
+ }
+
+ return false;
+ }
+
+ ///
+ /// Clears the currently selected server.
+ ///
+ public void ClearSelectedServer()
+ {
+ AutoSDKServerConfiguration.SelectedServer = null;
+ }
+
+ private global::Letta.AutoSDKServer? ResolveSelectedServer()
+ {
+ var selectedServer = AutoSDKServerConfiguration.SelectedServer;
+ if (selectedServer is null)
+ {
+ return null;
+ }
+
+ foreach (var server in s_availableServers)
+ {
+ if (string.Equals(server.Id, selectedServer.Id, global::System.StringComparison.Ordinal))
+ {
+ return server;
+ }
+ }
+
+ return null;
+ }
+
+ private void SelectServer(global::Letta.AutoSDKServer? server)
+ {
+ if (server is null)
+ {
+ AutoSDKServerConfiguration.SelectedServer = null;
+ return;
+ }
+
+ foreach (var candidate in s_availableServers)
+ {
+ if (string.Equals(candidate.Id, server.Id, global::System.StringComparison.Ordinal))
+ {
+ AutoSDKServerConfiguration.SelectedServer = candidate;
+ AutoSDKServerConfiguration.ExplicitBaseUri = null;
+ return;
+ }
+ }
+
+ throw new global::System.ArgumentException("The provided server is not available for this client.", nameof(server));
+ }
+
+ private global::System.Uri? ResolveDisplayedBaseUri()
+ {
+ if (AutoSDKServerConfiguration.ExplicitBaseUri is global::System.Uri explicitBaseUri)
+ {
+ return explicitBaseUri;
+ }
+
+ return ResolveSelectedServer()?.Uri ?? HttpClient.BaseAddress;
+ }
+
+ private global::System.Uri? ResolveBaseUri(
+ global::Letta.AutoSDKServer[] servers,
+ string defaultBaseUrl)
+ {
+ if (AutoSDKServerConfiguration.ExplicitBaseUri is global::System.Uri explicitBaseUri)
+ {
+ return explicitBaseUri;
+ }
+
+ if (AutoSDKServerConfiguration.SelectedServer is global::Letta.AutoSDKServer selectedServer)
+ {
+ foreach (var server in servers)
+ {
+ if (string.Equals(server.Id, selectedServer.Id, global::System.StringComparison.Ordinal))
+ {
+ return server.Uri;
+ }
+ }
+ }
+
+ if (servers.Length > 0)
+ {
+ return servers[0].Uri;
+ }
+
+ return string.IsNullOrWhiteSpace(defaultBaseUrl)
+ ? HttpClient.BaseAddress
+ : new global::System.Uri(defaultBaseUrl, global::System.UriKind.RelativeOrAbsolute);
+ }
}
}
\ No newline at end of file
diff --git a/src/libs/Letta/Generated/Letta.ArchivesClient.CreateArchive.g.cs b/src/libs/Letta/Generated/Letta.ArchivesClient.CreateArchive.g.cs
index 2eab4129..9a08fd05 100644
--- a/src/libs/Letta/Generated/Letta.ArchivesClient.CreateArchive.g.cs
+++ b/src/libs/Letta/Generated/Letta.ArchivesClient.CreateArchive.g.cs
@@ -8,6 +8,19 @@ namespace Letta
public partial class ArchivesClient
{
+ private static readonly global::Letta.AutoSDKServer[] s_CreateArchiveServers = new global::Letta.AutoSDKServer[]
+ { new global::Letta.AutoSDKServer(
+ id: "https-app-letta-com",
+ name: "Letta Cloud",
+ url: "https://app.letta.com/",
+ description: "Letta Cloud"),
+ new global::Letta.AutoSDKServer(
+ id: "http-localhost",
+ name: "Self-hosted",
+ url: "http://localhost:8283/",
+ description: "Self-hosted"),
+ };
+
private static readonly global::Letta.EndPointSecurityRequirement s_CreateArchiveSecurityRequirement0 =
new global::Letta.EndPointSecurityRequirement
@@ -89,7 +102,9 @@ partial void ProcessCreateArchiveResponseContent(
{
var __pathBuilder = new global::Letta.PathBuilder(
path: "/v1/archives/",
- baseUri: HttpClient.BaseAddress);
+ baseUri: ResolveBaseUri(
+ servers: s_CreateArchiveServers,
+ defaultBaseUrl: "https://app.letta.com/"));
var __path = __pathBuilder.ToString();
__path = global::Letta.AutoSDKRequestOptionsSupport.AppendQueryParameters(
path: __path,
diff --git a/src/libs/Letta/Generated/Letta.ArchivesClient.CreatePassageInArchive.g.cs b/src/libs/Letta/Generated/Letta.ArchivesClient.CreatePassageInArchive.g.cs
index a639111f..12507c6b 100644
--- a/src/libs/Letta/Generated/Letta.ArchivesClient.CreatePassageInArchive.g.cs
+++ b/src/libs/Letta/Generated/Letta.ArchivesClient.CreatePassageInArchive.g.cs
@@ -6,6 +6,19 @@ namespace Letta
public partial class ArchivesClient
{
+ private static readonly global::Letta.AutoSDKServer[] s_CreatePassageInArchiveServers = new global::Letta.AutoSDKServer[]
+ { new global::Letta.AutoSDKServer(
+ id: "https-app-letta-com",
+ name: "Letta Cloud",
+ url: "https://app.letta.com/",
+ description: "Letta Cloud"),
+ new global::Letta.AutoSDKServer(
+ id: "http-localhost",
+ name: "Self-hosted",
+ url: "http://localhost:8283/",
+ description: "Self-hosted"),
+ };
+
private static readonly global::Letta.EndPointSecurityRequirement s_CreatePassageInArchiveSecurityRequirement0 =
new global::Letta.EndPointSecurityRequirement
@@ -95,7 +108,9 @@ partial void ProcessCreatePassageInArchiveResponseContent(
{
var __pathBuilder = new global::Letta.PathBuilder(
path: $"/v1/archives/{archiveId}/passages",
- baseUri: HttpClient.BaseAddress);
+ baseUri: ResolveBaseUri(
+ servers: s_CreatePassageInArchiveServers,
+ defaultBaseUrl: "https://app.letta.com/"));
var __path = __pathBuilder.ToString();
__path = global::Letta.AutoSDKRequestOptionsSupport.AppendQueryParameters(
path: __path,
diff --git a/src/libs/Letta/Generated/Letta.ArchivesClient.CreatePassagesInArchive.g.cs b/src/libs/Letta/Generated/Letta.ArchivesClient.CreatePassagesInArchive.g.cs
index 619e63d1..6128ceb7 100644
--- a/src/libs/Letta/Generated/Letta.ArchivesClient.CreatePassagesInArchive.g.cs
+++ b/src/libs/Letta/Generated/Letta.ArchivesClient.CreatePassagesInArchive.g.cs
@@ -6,6 +6,19 @@ namespace Letta
public partial class ArchivesClient
{
+ private static readonly global::Letta.AutoSDKServer[] s_CreatePassagesInArchiveServers = new global::Letta.AutoSDKServer[]
+ { new global::Letta.AutoSDKServer(
+ id: "https-app-letta-com",
+ name: "Letta Cloud",
+ url: "https://app.letta.com/",
+ description: "Letta Cloud"),
+ new global::Letta.AutoSDKServer(
+ id: "http-localhost",
+ name: "Self-hosted",
+ url: "http://localhost:8283/",
+ description: "Self-hosted"),
+ };
+
private static readonly global::Letta.EndPointSecurityRequirement s_CreatePassagesInArchiveSecurityRequirement0 =
new global::Letta.EndPointSecurityRequirement
@@ -95,7 +108,9 @@ partial void ProcessCreatePassagesInArchiveResponseContent(
{
var __pathBuilder = new global::Letta.PathBuilder(
path: $"/v1/archives/{archiveId}/passages/batch",
- baseUri: HttpClient.BaseAddress);
+ baseUri: ResolveBaseUri(
+ servers: s_CreatePassagesInArchiveServers,
+ defaultBaseUrl: "https://app.letta.com/"));
var __path = __pathBuilder.ToString();
__path = global::Letta.AutoSDKRequestOptionsSupport.AppendQueryParameters(
path: __path,
diff --git a/src/libs/Letta/Generated/Letta.ArchivesClient.DeleteArchive.g.cs b/src/libs/Letta/Generated/Letta.ArchivesClient.DeleteArchive.g.cs
index a40618aa..5a25c45e 100644
--- a/src/libs/Letta/Generated/Letta.ArchivesClient.DeleteArchive.g.cs
+++ b/src/libs/Letta/Generated/Letta.ArchivesClient.DeleteArchive.g.cs
@@ -6,6 +6,19 @@ namespace Letta
public partial class ArchivesClient
{
+ private static readonly global::Letta.AutoSDKServer[] s_DeleteArchiveServers = new global::Letta.AutoSDKServer[]
+ { new global::Letta.AutoSDKServer(
+ id: "https-app-letta-com",
+ name: "Letta Cloud",
+ url: "https://app.letta.com/",
+ description: "Letta Cloud"),
+ new global::Letta.AutoSDKServer(
+ id: "http-localhost",
+ name: "Self-hosted",
+ url: "http://localhost:8283/",
+ description: "Self-hosted"),
+ };
+
private static readonly global::Letta.EndPointSecurityRequirement s_DeleteArchiveSecurityRequirement0 =
new global::Letta.EndPointSecurityRequirement
@@ -81,7 +94,9 @@ partial void ProcessDeleteArchiveResponse(
{
var __pathBuilder = new global::Letta.PathBuilder(
path: $"/v1/archives/{archiveId}",
- baseUri: HttpClient.BaseAddress);
+ baseUri: ResolveBaseUri(
+ servers: s_DeleteArchiveServers,
+ defaultBaseUrl: "https://app.letta.com/"));
var __path = __pathBuilder.ToString();
__path = global::Letta.AutoSDKRequestOptionsSupport.AppendQueryParameters(
path: __path,
diff --git a/src/libs/Letta/Generated/Letta.ArchivesClient.DeletePassageFromArchive.g.cs b/src/libs/Letta/Generated/Letta.ArchivesClient.DeletePassageFromArchive.g.cs
index 2924dcec..66b829ab 100644
--- a/src/libs/Letta/Generated/Letta.ArchivesClient.DeletePassageFromArchive.g.cs
+++ b/src/libs/Letta/Generated/Letta.ArchivesClient.DeletePassageFromArchive.g.cs
@@ -6,6 +6,19 @@ namespace Letta
public partial class ArchivesClient
{
+ private static readonly global::Letta.AutoSDKServer[] s_DeletePassageFromArchiveServers = new global::Letta.AutoSDKServer[]
+ { new global::Letta.AutoSDKServer(
+ id: "https-app-letta-com",
+ name: "Letta Cloud",
+ url: "https://app.letta.com/",
+ description: "Letta Cloud"),
+ new global::Letta.AutoSDKServer(
+ id: "http-localhost",
+ name: "Self-hosted",
+ url: "http://localhost:8283/",
+ description: "Self-hosted"),
+ };
+
private static readonly global::Letta.EndPointSecurityRequirement s_DeletePassageFromArchiveSecurityRequirement0 =
new global::Letta.EndPointSecurityRequirement
@@ -89,7 +102,9 @@ partial void ProcessDeletePassageFromArchiveResponse(
{
var __pathBuilder = new global::Letta.PathBuilder(
path: $"/v1/archives/{archiveId}/passages/{passageId}",
- baseUri: HttpClient.BaseAddress);
+ baseUri: ResolveBaseUri(
+ servers: s_DeletePassageFromArchiveServers,
+ defaultBaseUrl: "https://app.letta.com/"));
var __path = __pathBuilder.ToString();
__path = global::Letta.AutoSDKRequestOptionsSupport.AppendQueryParameters(
path: __path,
diff --git a/src/libs/Letta/Generated/Letta.ArchivesClient.ListAgentsForArchive.g.cs b/src/libs/Letta/Generated/Letta.ArchivesClient.ListAgentsForArchive.g.cs
index dfa2d23e..793e2c81 100644
--- a/src/libs/Letta/Generated/Letta.ArchivesClient.ListAgentsForArchive.g.cs
+++ b/src/libs/Letta/Generated/Letta.ArchivesClient.ListAgentsForArchive.g.cs
@@ -6,6 +6,19 @@ namespace Letta
public partial class ArchivesClient
{
+ private static readonly global::Letta.AutoSDKServer[] s_ListAgentsForArchiveServers = new global::Letta.AutoSDKServer[]
+ { new global::Letta.AutoSDKServer(
+ id: "https-app-letta-com",
+ name: "Letta Cloud",
+ url: "https://app.letta.com/",
+ description: "Letta Cloud"),
+ new global::Letta.AutoSDKServer(
+ id: "http-localhost",
+ name: "Self-hosted",
+ url: "http://localhost:8283/",
+ description: "Self-hosted"),
+ };
+
private static readonly global::Letta.EndPointSecurityRequirement s_ListAgentsForArchiveSecurityRequirement0 =
new global::Letta.EndPointSecurityRequirement
@@ -124,7 +137,9 @@ partial void ProcessListAgentsForArchiveResponseContent(
{
var __pathBuilder = new global::Letta.PathBuilder(
path: $"/v1/archives/{archiveId}/agents",
- baseUri: HttpClient.BaseAddress);
+ baseUri: ResolveBaseUri(
+ servers: s_ListAgentsForArchiveServers,
+ defaultBaseUrl: "https://app.letta.com/"));
__pathBuilder
.AddOptionalParameter("before", before)
.AddOptionalParameter("after", after)
diff --git a/src/libs/Letta/Generated/Letta.ArchivesClient.ListArchives.g.cs b/src/libs/Letta/Generated/Letta.ArchivesClient.ListArchives.g.cs
index e4ef1afc..2f772b43 100644
--- a/src/libs/Letta/Generated/Letta.ArchivesClient.ListArchives.g.cs
+++ b/src/libs/Letta/Generated/Letta.ArchivesClient.ListArchives.g.cs
@@ -6,6 +6,19 @@ namespace Letta
public partial class ArchivesClient
{
+ private static readonly global::Letta.AutoSDKServer[] s_ListArchivesServers = new global::Letta.AutoSDKServer[]
+ { new global::Letta.AutoSDKServer(
+ id: "https-app-letta-com",
+ name: "Letta Cloud",
+ url: "https://app.letta.com/",
+ description: "Letta Cloud"),
+ new global::Letta.AutoSDKServer(
+ id: "http-localhost",
+ name: "Self-hosted",
+ url: "http://localhost:8283/",
+ description: "Self-hosted"),
+ };
+
private static readonly global::Letta.EndPointSecurityRequirement s_ListArchivesSecurityRequirement0 =
new global::Letta.EndPointSecurityRequirement
@@ -131,7 +144,9 @@ partial void ProcessListArchivesResponseContent(
{
var __pathBuilder = new global::Letta.PathBuilder(
path: "/v1/archives/",
- baseUri: HttpClient.BaseAddress);
+ baseUri: ResolveBaseUri(
+ servers: s_ListArchivesServers,
+ defaultBaseUrl: "https://app.letta.com/"));
__pathBuilder
.AddOptionalParameter("before", before)
.AddOptionalParameter("after", after)
diff --git a/src/libs/Letta/Generated/Letta.ArchivesClient.ModifyArchive.g.cs b/src/libs/Letta/Generated/Letta.ArchivesClient.ModifyArchive.g.cs
index 0a038f3d..78c207d8 100644
--- a/src/libs/Letta/Generated/Letta.ArchivesClient.ModifyArchive.g.cs
+++ b/src/libs/Letta/Generated/Letta.ArchivesClient.ModifyArchive.g.cs
@@ -6,6 +6,19 @@ namespace Letta
public partial class ArchivesClient
{
+ private static readonly global::Letta.AutoSDKServer[] s_ModifyArchiveServers = new global::Letta.AutoSDKServer[]
+ { new global::Letta.AutoSDKServer(
+ id: "https-app-letta-com",
+ name: "Letta Cloud",
+ url: "https://app.letta.com/",
+ description: "Letta Cloud"),
+ new global::Letta.AutoSDKServer(
+ id: "http-localhost",
+ name: "Self-hosted",
+ url: "http://localhost:8283/",
+ description: "Self-hosted"),
+ };
+
private static readonly global::Letta.EndPointSecurityRequirement s_ModifyArchiveSecurityRequirement0 =
new global::Letta.EndPointSecurityRequirement
@@ -94,7 +107,9 @@ partial void ProcessModifyArchiveResponseContent(
{
var __pathBuilder = new global::Letta.PathBuilder(
path: $"/v1/archives/{archiveId}",
- baseUri: HttpClient.BaseAddress);
+ baseUri: ResolveBaseUri(
+ servers: s_ModifyArchiveServers,
+ defaultBaseUrl: "https://app.letta.com/"));
var __path = __pathBuilder.ToString();
__path = global::Letta.AutoSDKRequestOptionsSupport.AppendQueryParameters(
path: __path,
diff --git a/src/libs/Letta/Generated/Letta.ArchivesClient.RetrieveArchive.g.cs b/src/libs/Letta/Generated/Letta.ArchivesClient.RetrieveArchive.g.cs
index 0cd35d28..59d930b1 100644
--- a/src/libs/Letta/Generated/Letta.ArchivesClient.RetrieveArchive.g.cs
+++ b/src/libs/Letta/Generated/Letta.ArchivesClient.RetrieveArchive.g.cs
@@ -6,6 +6,19 @@ namespace Letta
public partial class ArchivesClient
{
+ private static readonly global::Letta.AutoSDKServer[] s_RetrieveArchiveServers = new global::Letta.AutoSDKServer[]
+ { new global::Letta.AutoSDKServer(
+ id: "https-app-letta-com",
+ name: "Letta Cloud",
+ url: "https://app.letta.com/",
+ description: "Letta Cloud"),
+ new global::Letta.AutoSDKServer(
+ id: "http-localhost",
+ name: "Self-hosted",
+ url: "http://localhost:8283/",
+ description: "Self-hosted"),
+ };
+
private static readonly global::Letta.EndPointSecurityRequirement s_RetrieveArchiveSecurityRequirement0 =
new global::Letta.EndPointSecurityRequirement
@@ -86,7 +99,9 @@ partial void ProcessRetrieveArchiveResponseContent(
{
var __pathBuilder = new global::Letta.PathBuilder(
path: $"/v1/archives/{archiveId}",
- baseUri: HttpClient.BaseAddress);
+ baseUri: ResolveBaseUri(
+ servers: s_RetrieveArchiveServers,
+ defaultBaseUrl: "https://app.letta.com/"));
var __path = __pathBuilder.ToString();
__path = global::Letta.AutoSDKRequestOptionsSupport.AppendQueryParameters(
path: __path,
diff --git a/src/libs/Letta/Generated/Letta.ArchivesClient.g.cs b/src/libs/Letta/Generated/Letta.ArchivesClient.g.cs
index 5680ef9f..1f8db026 100644
--- a/src/libs/Letta/Generated/Letta.ArchivesClient.g.cs
+++ b/src/libs/Letta/Generated/Letta.ArchivesClient.g.cs
@@ -20,7 +20,7 @@ public sealed partial class ArchivesClient : global::Letta.IArchivesClient, glob
public global::System.Net.Http.HttpClient HttpClient { get; }
///
- public System.Uri? BaseUri => HttpClient.BaseAddress;
+ public System.Uri? BaseUri => ResolveDisplayedBaseUri();
///
public global::System.Collections.Generic.List Authorizations { get; }
@@ -33,12 +33,43 @@ public sealed partial class ArchivesClient : global::Letta.IArchivesClient, glob
///
public global::Letta.AutoSDKClientOptions Options { get; }
+
+
+ internal global::Letta.AutoSDKServerConfiguration AutoSDKServerConfiguration { get; set; } = new global::Letta.AutoSDKServerConfiguration();
///
///
///
public global::System.Text.Json.Serialization.JsonSerializerContext JsonSerializerContext { get; set; } = global::Letta.SourceGenerationContext.Default;
+
+ private static readonly global::Letta.AutoSDKServer[] s_availableServers = new global::Letta.AutoSDKServer[]
+ { new global::Letta.AutoSDKServer(
+ id: "https-app-letta-com",
+ name: "Letta Cloud",
+ url: "https://app.letta.com/",
+ description: "Letta Cloud"),
+ new global::Letta.AutoSDKServer(
+ id: "http-localhost",
+ name: "Self-hosted",
+ url: "http://localhost:8283/",
+ description: "Self-hosted"),
+ };
+
+ ///
+ /// The server options available for this client.
+ ///
+ public global::System.Collections.Generic.IReadOnlyList AvailableServers => s_availableServers;
+
+ ///
+ /// The currently selected server for this client, if any.
+ ///
+ public global::Letta.AutoSDKServer? SelectedServer
+ {
+ get => ResolveSelectedServer();
+ set => SelectServer(value);
+ }
+
///
/// Creates a new instance of the ArchivesClient.
/// If no httpClient is provided, a new one will be created.
@@ -85,6 +116,8 @@ public ArchivesClient(
Options = options ?? new global::Letta.AutoSDKClientOptions();
_disposeHttpClient = disposeHttpClient;
+ AutoSDKServerConfiguration.ExplicitBaseUri = baseUri ?? httpClient?.BaseAddress;
+
Initialized(HttpClient);
}
@@ -111,5 +144,117 @@ partial void ProcessResponseContent(
global::System.Net.Http.HttpClient client,
global::System.Net.Http.HttpResponseMessage response,
ref string content);
+
+
+ ///
+ /// Selects one of the generated server options by id.
+ ///
+ public bool TrySelectServer(string serverId)
+ {
+ if (string.IsNullOrWhiteSpace(serverId))
+ {
+ return false;
+ }
+
+ foreach (var server in s_availableServers)
+ {
+ if (string.Equals(server.Id, serverId, global::System.StringComparison.OrdinalIgnoreCase))
+ {
+ AutoSDKServerConfiguration.SelectedServer = server;
+ AutoSDKServerConfiguration.ExplicitBaseUri = null;
+ return true;
+ }
+ }
+
+ return false;
+ }
+
+ ///
+ /// Clears the currently selected server.
+ ///
+ public void ClearSelectedServer()
+ {
+ AutoSDKServerConfiguration.SelectedServer = null;
+ }
+
+ private global::Letta.AutoSDKServer? ResolveSelectedServer()
+ {
+ var selectedServer = AutoSDKServerConfiguration.SelectedServer;
+ if (selectedServer is null)
+ {
+ return null;
+ }
+
+ foreach (var server in s_availableServers)
+ {
+ if (string.Equals(server.Id, selectedServer.Id, global::System.StringComparison.Ordinal))
+ {
+ return server;
+ }
+ }
+
+ return null;
+ }
+
+ private void SelectServer(global::Letta.AutoSDKServer? server)
+ {
+ if (server is null)
+ {
+ AutoSDKServerConfiguration.SelectedServer = null;
+ return;
+ }
+
+ foreach (var candidate in s_availableServers)
+ {
+ if (string.Equals(candidate.Id, server.Id, global::System.StringComparison.Ordinal))
+ {
+ AutoSDKServerConfiguration.SelectedServer = candidate;
+ AutoSDKServerConfiguration.ExplicitBaseUri = null;
+ return;
+ }
+ }
+
+ throw new global::System.ArgumentException("The provided server is not available for this client.", nameof(server));
+ }
+
+ private global::System.Uri? ResolveDisplayedBaseUri()
+ {
+ if (AutoSDKServerConfiguration.ExplicitBaseUri is global::System.Uri explicitBaseUri)
+ {
+ return explicitBaseUri;
+ }
+
+ return ResolveSelectedServer()?.Uri ?? HttpClient.BaseAddress;
+ }
+
+ private global::System.Uri? ResolveBaseUri(
+ global::Letta.AutoSDKServer[] servers,
+ string defaultBaseUrl)
+ {
+ if (AutoSDKServerConfiguration.ExplicitBaseUri is global::System.Uri explicitBaseUri)
+ {
+ return explicitBaseUri;
+ }
+
+ if (AutoSDKServerConfiguration.SelectedServer is global::Letta.AutoSDKServer selectedServer)
+ {
+ foreach (var server in servers)
+ {
+ if (string.Equals(server.Id, selectedServer.Id, global::System.StringComparison.Ordinal))
+ {
+ return server.Uri;
+ }
+ }
+ }
+
+ if (servers.Length > 0)
+ {
+ return servers[0].Uri;
+ }
+
+ return string.IsNullOrWhiteSpace(defaultBaseUrl)
+ ? HttpClient.BaseAddress
+ : new global::System.Uri(defaultBaseUrl, global::System.UriKind.RelativeOrAbsolute);
+ }
}
}
\ No newline at end of file
diff --git a/src/libs/Letta/Generated/Letta.BlocksClient.AttachIdentityToBlock.g.cs b/src/libs/Letta/Generated/Letta.BlocksClient.AttachIdentityToBlock.g.cs
index 785a5f22..6fd29608 100644
--- a/src/libs/Letta/Generated/Letta.BlocksClient.AttachIdentityToBlock.g.cs
+++ b/src/libs/Letta/Generated/Letta.BlocksClient.AttachIdentityToBlock.g.cs
@@ -6,6 +6,19 @@ namespace Letta
public partial class BlocksClient
{
+ private static readonly global::Letta.AutoSDKServer[] s_AttachIdentityToBlockServers = new global::Letta.AutoSDKServer[]
+ { new global::Letta.AutoSDKServer(
+ id: "https-app-letta-com",
+ name: "Letta Cloud",
+ url: "https://app.letta.com/",
+ description: "Letta Cloud"),
+ new global::Letta.AutoSDKServer(
+ id: "http-localhost",
+ name: "Self-hosted",
+ url: "http://localhost:8283/",
+ description: "Self-hosted"),
+ };
+
private static readonly global::Letta.EndPointSecurityRequirement s_AttachIdentityToBlockSecurityRequirement0 =
new global::Letta.EndPointSecurityRequirement
@@ -91,7 +104,9 @@ partial void ProcessAttachIdentityToBlockResponseContent(
{
var __pathBuilder = new global::Letta.PathBuilder(
path: $"/v1/blocks/{blockId}/identities/attach/{identityId}",
- baseUri: HttpClient.BaseAddress);
+ baseUri: ResolveBaseUri(
+ servers: s_AttachIdentityToBlockServers,
+ defaultBaseUrl: "https://app.letta.com/"));
var __path = __pathBuilder.ToString();
__path = global::Letta.AutoSDKRequestOptionsSupport.AppendQueryParameters(
path: __path,
diff --git a/src/libs/Letta/Generated/Letta.BlocksClient.CountBlocks.g.cs b/src/libs/Letta/Generated/Letta.BlocksClient.CountBlocks.g.cs
index b3f3b5d6..828548d4 100644
--- a/src/libs/Letta/Generated/Letta.BlocksClient.CountBlocks.g.cs
+++ b/src/libs/Letta/Generated/Letta.BlocksClient.CountBlocks.g.cs
@@ -6,6 +6,19 @@ namespace Letta
public partial class BlocksClient
{
+ private static readonly global::Letta.AutoSDKServer[] s_CountBlocksServers = new global::Letta.AutoSDKServer[]
+ { new global::Letta.AutoSDKServer(
+ id: "https-app-letta-com",
+ name: "Letta Cloud",
+ url: "https://app.letta.com/",
+ description: "Letta Cloud"),
+ new global::Letta.AutoSDKServer(
+ id: "http-localhost",
+ name: "Self-hosted",
+ url: "http://localhost:8283/",
+ description: "Self-hosted"),
+ };
+
private static readonly global::Letta.EndPointSecurityRequirement s_CountBlocksSecurityRequirement0 =
new global::Letta.EndPointSecurityRequirement
@@ -124,7 +137,9 @@ partial void ProcessCountBlocksResponseContent(
{
var __pathBuilder = new global::Letta.PathBuilder(
path: "/v1/blocks/count",
- baseUri: HttpClient.BaseAddress);
+ baseUri: ResolveBaseUri(
+ servers: s_CountBlocksServers,
+ defaultBaseUrl: "https://app.letta.com/"));
__pathBuilder
.AddOptionalParameter("label", label)
.AddOptionalParameter("templates_only", templatesOnly?.ToString().ToLowerInvariant())
diff --git a/src/libs/Letta/Generated/Letta.BlocksClient.CreateBlock.g.cs b/src/libs/Letta/Generated/Letta.BlocksClient.CreateBlock.g.cs
index 60a68219..5d8384a3 100644
--- a/src/libs/Letta/Generated/Letta.BlocksClient.CreateBlock.g.cs
+++ b/src/libs/Letta/Generated/Letta.BlocksClient.CreateBlock.g.cs
@@ -6,6 +6,19 @@ namespace Letta
public partial class BlocksClient
{
+ private static readonly global::Letta.AutoSDKServer[] s_CreateBlockServers = new global::Letta.AutoSDKServer[]
+ { new global::Letta.AutoSDKServer(
+ id: "https-app-letta-com",
+ name: "Letta Cloud",
+ url: "https://app.letta.com/",
+ description: "Letta Cloud"),
+ new global::Letta.AutoSDKServer(
+ id: "http-localhost",
+ name: "Self-hosted",
+ url: "http://localhost:8283/",
+ description: "Self-hosted"),
+ };
+
private static readonly global::Letta.EndPointSecurityRequirement s_CreateBlockSecurityRequirement0 =
new global::Letta.EndPointSecurityRequirement
@@ -86,7 +99,9 @@ partial void ProcessCreateBlockResponseContent(
{
var __pathBuilder = new global::Letta.PathBuilder(
path: "/v1/blocks/",
- baseUri: HttpClient.BaseAddress);
+ baseUri: ResolveBaseUri(
+ servers: s_CreateBlockServers,
+ defaultBaseUrl: "https://app.letta.com/"));
var __path = __pathBuilder.ToString();
__path = global::Letta.AutoSDKRequestOptionsSupport.AppendQueryParameters(
path: __path,
diff --git a/src/libs/Letta/Generated/Letta.BlocksClient.DeleteBlock.g.cs b/src/libs/Letta/Generated/Letta.BlocksClient.DeleteBlock.g.cs
index 2a10f4f8..24f69282 100644
--- a/src/libs/Letta/Generated/Letta.BlocksClient.DeleteBlock.g.cs
+++ b/src/libs/Letta/Generated/Letta.BlocksClient.DeleteBlock.g.cs
@@ -6,6 +6,19 @@ namespace Letta
public partial class BlocksClient
{
+ private static readonly global::Letta.AutoSDKServer[] s_DeleteBlockServers = new global::Letta.AutoSDKServer[]
+ { new global::Letta.AutoSDKServer(
+ id: "https-app-letta-com",
+ name: "Letta Cloud",
+ url: "https://app.letta.com/",
+ description: "Letta Cloud"),
+ new global::Letta.AutoSDKServer(
+ id: "http-localhost",
+ name: "Self-hosted",
+ url: "http://localhost:8283/",
+ description: "Self-hosted"),
+ };
+
private static readonly global::Letta.EndPointSecurityRequirement s_DeleteBlockSecurityRequirement0 =
new global::Letta.EndPointSecurityRequirement
@@ -85,7 +98,9 @@ partial void ProcessDeleteBlockResponseContent(
{
var __pathBuilder = new global::Letta.PathBuilder(
path: $"/v1/blocks/{blockId}",
- baseUri: HttpClient.BaseAddress);
+ baseUri: ResolveBaseUri(
+ servers: s_DeleteBlockServers,
+ defaultBaseUrl: "https://app.letta.com/"));
var __path = __pathBuilder.ToString();
__path = global::Letta.AutoSDKRequestOptionsSupport.AppendQueryParameters(
path: __path,
diff --git a/src/libs/Letta/Generated/Letta.BlocksClient.DetachIdentityFromBlock.g.cs b/src/libs/Letta/Generated/Letta.BlocksClient.DetachIdentityFromBlock.g.cs
index e9f27d7d..79d90e86 100644
--- a/src/libs/Letta/Generated/Letta.BlocksClient.DetachIdentityFromBlock.g.cs
+++ b/src/libs/Letta/Generated/Letta.BlocksClient.DetachIdentityFromBlock.g.cs
@@ -6,6 +6,19 @@ namespace Letta
public partial class BlocksClient
{
+ private static readonly global::Letta.AutoSDKServer[] s_DetachIdentityFromBlockServers = new global::Letta.AutoSDKServer[]
+ { new global::Letta.AutoSDKServer(
+ id: "https-app-letta-com",
+ name: "Letta Cloud",
+ url: "https://app.letta.com/",
+ description: "Letta Cloud"),
+ new global::Letta.AutoSDKServer(
+ id: "http-localhost",
+ name: "Self-hosted",
+ url: "http://localhost:8283/",
+ description: "Self-hosted"),
+ };
+
private static readonly global::Letta.EndPointSecurityRequirement s_DetachIdentityFromBlockSecurityRequirement0 =
new global::Letta.EndPointSecurityRequirement
@@ -91,7 +104,9 @@ partial void ProcessDetachIdentityFromBlockResponseContent(
{
var __pathBuilder = new global::Letta.PathBuilder(
path: $"/v1/blocks/{blockId}/identities/detach/{identityId}",
- baseUri: HttpClient.BaseAddress);
+ baseUri: ResolveBaseUri(
+ servers: s_DetachIdentityFromBlockServers,
+ defaultBaseUrl: "https://app.letta.com/"));
var __path = __pathBuilder.ToString();
__path = global::Letta.AutoSDKRequestOptionsSupport.AppendQueryParameters(
path: __path,
diff --git a/src/libs/Letta/Generated/Letta.BlocksClient.ListAgentsForBlock.g.cs b/src/libs/Letta/Generated/Letta.BlocksClient.ListAgentsForBlock.g.cs
index 610ca7d9..4ce007b5 100644
--- a/src/libs/Letta/Generated/Letta.BlocksClient.ListAgentsForBlock.g.cs
+++ b/src/libs/Letta/Generated/Letta.BlocksClient.ListAgentsForBlock.g.cs
@@ -8,6 +8,19 @@ namespace Letta
public partial class BlocksClient
{
+ private static readonly global::Letta.AutoSDKServer[] s_ListAgentsForBlockServers = new global::Letta.AutoSDKServer[]
+ { new global::Letta.AutoSDKServer(
+ id: "https-app-letta-com",
+ name: "Letta Cloud",
+ url: "https://app.letta.com/",
+ description: "Letta Cloud"),
+ new global::Letta.AutoSDKServer(
+ id: "http-localhost",
+ name: "Self-hosted",
+ url: "http://localhost:8283/",
+ description: "Self-hosted"),
+ };
+
private static readonly global::Letta.EndPointSecurityRequirement s_ListAgentsForBlockSecurityRequirement0 =
new global::Letta.EndPointSecurityRequirement
@@ -142,7 +155,9 @@ partial void ProcessListAgentsForBlockResponseContent(
{
var __pathBuilder = new global::Letta.PathBuilder(
path: $"/v1/blocks/{blockId}/agents",
- baseUri: HttpClient.BaseAddress);
+ baseUri: ResolveBaseUri(
+ servers: s_ListAgentsForBlockServers,
+ defaultBaseUrl: "https://app.letta.com/"));
__pathBuilder
.AddOptionalParameter("before", before)
.AddOptionalParameter("after", after)
diff --git a/src/libs/Letta/Generated/Letta.BlocksClient.ListBlocks.g.cs b/src/libs/Letta/Generated/Letta.BlocksClient.ListBlocks.g.cs
index 5961029e..e371315f 100644
--- a/src/libs/Letta/Generated/Letta.BlocksClient.ListBlocks.g.cs
+++ b/src/libs/Letta/Generated/Letta.BlocksClient.ListBlocks.g.cs
@@ -6,6 +6,19 @@ namespace Letta
public partial class BlocksClient
{
+ private static readonly global::Letta.AutoSDKServer[] s_ListBlocksServers = new global::Letta.AutoSDKServer[]
+ { new global::Letta.AutoSDKServer(
+ id: "https-app-letta-com",
+ name: "Letta Cloud",
+ url: "https://app.letta.com/",
+ description: "Letta Cloud"),
+ new global::Letta.AutoSDKServer(
+ id: "http-localhost",
+ name: "Self-hosted",
+ url: "http://localhost:8283/",
+ description: "Self-hosted"),
+ };
+
private static readonly global::Letta.EndPointSecurityRequirement s_ListBlocksSecurityRequirement0 =
new global::Letta.EndPointSecurityRequirement
@@ -216,7 +229,9 @@ partial void ProcessListBlocksResponseContent(
{
var __pathBuilder = new global::Letta.PathBuilder(
path: "/v1/blocks/",
- baseUri: HttpClient.BaseAddress);
+ baseUri: ResolveBaseUri(
+ servers: s_ListBlocksServers,
+ defaultBaseUrl: "https://app.letta.com/"));
__pathBuilder
.AddOptionalParameter("label", label)
.AddOptionalParameter("templates_only", templatesOnly?.ToString().ToLowerInvariant())
diff --git a/src/libs/Letta/Generated/Letta.BlocksClient.ModifyBlock.g.cs b/src/libs/Letta/Generated/Letta.BlocksClient.ModifyBlock.g.cs
index 4ba4c1c4..1b10b7e8 100644
--- a/src/libs/Letta/Generated/Letta.BlocksClient.ModifyBlock.g.cs
+++ b/src/libs/Letta/Generated/Letta.BlocksClient.ModifyBlock.g.cs
@@ -6,6 +6,19 @@ namespace Letta
public partial class BlocksClient
{
+ private static readonly global::Letta.AutoSDKServer[] s_ModifyBlockServers = new global::Letta.AutoSDKServer[]
+ { new global::Letta.AutoSDKServer(
+ id: "https-app-letta-com",
+ name: "Letta Cloud",
+ url: "https://app.letta.com/",
+ description: "Letta Cloud"),
+ new global::Letta.AutoSDKServer(
+ id: "http-localhost",
+ name: "Self-hosted",
+ url: "http://localhost:8283/",
+ description: "Self-hosted"),
+ };
+
private static readonly global::Letta.EndPointSecurityRequirement s_ModifyBlockSecurityRequirement0 =
new global::Letta.EndPointSecurityRequirement
@@ -93,7 +106,9 @@ partial void ProcessModifyBlockResponseContent(
{
var __pathBuilder = new global::Letta.PathBuilder(
path: $"/v1/blocks/{blockId}",
- baseUri: HttpClient.BaseAddress);
+ baseUri: ResolveBaseUri(
+ servers: s_ModifyBlockServers,
+ defaultBaseUrl: "https://app.letta.com/"));
var __path = __pathBuilder.ToString();
__path = global::Letta.AutoSDKRequestOptionsSupport.AppendQueryParameters(
path: __path,
diff --git a/src/libs/Letta/Generated/Letta.BlocksClient.RetrieveBlock.g.cs b/src/libs/Letta/Generated/Letta.BlocksClient.RetrieveBlock.g.cs
index 1b0b294b..337d8916 100644
--- a/src/libs/Letta/Generated/Letta.BlocksClient.RetrieveBlock.g.cs
+++ b/src/libs/Letta/Generated/Letta.BlocksClient.RetrieveBlock.g.cs
@@ -6,6 +6,19 @@ namespace Letta
public partial class BlocksClient
{
+ private static readonly global::Letta.AutoSDKServer[] s_RetrieveBlockServers = new global::Letta.AutoSDKServer[]
+ { new global::Letta.AutoSDKServer(
+ id: "https-app-letta-com",
+ name: "Letta Cloud",
+ url: "https://app.letta.com/",
+ description: "Letta Cloud"),
+ new global::Letta.AutoSDKServer(
+ id: "http-localhost",
+ name: "Self-hosted",
+ url: "http://localhost:8283/",
+ description: "Self-hosted"),
+ };
+
private static readonly global::Letta.EndPointSecurityRequirement s_RetrieveBlockSecurityRequirement0 =
new global::Letta.EndPointSecurityRequirement
@@ -85,7 +98,9 @@ partial void ProcessRetrieveBlockResponseContent(
{
var __pathBuilder = new global::Letta.PathBuilder(
path: $"/v1/blocks/{blockId}",
- baseUri: HttpClient.BaseAddress);
+ baseUri: ResolveBaseUri(
+ servers: s_RetrieveBlockServers,
+ defaultBaseUrl: "https://app.letta.com/"));
var __path = __pathBuilder.ToString();
__path = global::Letta.AutoSDKRequestOptionsSupport.AppendQueryParameters(
path: __path,
diff --git a/src/libs/Letta/Generated/Letta.BlocksClient.g.cs b/src/libs/Letta/Generated/Letta.BlocksClient.g.cs
index 1002dadb..40d9b26d 100644
--- a/src/libs/Letta/Generated/Letta.BlocksClient.g.cs
+++ b/src/libs/Letta/Generated/Letta.BlocksClient.g.cs
@@ -20,7 +20,7 @@ public sealed partial class BlocksClient : global::Letta.IBlocksClient, global::
public global::System.Net.Http.HttpClient HttpClient { get; }
///
- public System.Uri? BaseUri => HttpClient.BaseAddress;
+ public System.Uri? BaseUri => ResolveDisplayedBaseUri();
///
public global::System.Collections.Generic.List Authorizations { get; }
@@ -33,12 +33,43 @@ public sealed partial class BlocksClient : global::Letta.IBlocksClient, global::
///
public global::Letta.AutoSDKClientOptions Options { get; }
+
+
+ internal global::Letta.AutoSDKServerConfiguration AutoSDKServerConfiguration { get; set; } = new global::Letta.AutoSDKServerConfiguration();
///
///
///
public global::System.Text.Json.Serialization.JsonSerializerContext JsonSerializerContext { get; set; } = global::Letta.SourceGenerationContext.Default;
+
+ private static readonly global::Letta.AutoSDKServer[] s_availableServers = new global::Letta.AutoSDKServer[]
+ { new global::Letta.AutoSDKServer(
+ id: "https-app-letta-com",
+ name: "Letta Cloud",
+ url: "https://app.letta.com/",
+ description: "Letta Cloud"),
+ new global::Letta.AutoSDKServer(
+ id: "http-localhost",
+ name: "Self-hosted",
+ url: "http://localhost:8283/",
+ description: "Self-hosted"),
+ };
+
+ ///
+ /// The server options available for this client.
+ ///
+ public global::System.Collections.Generic.IReadOnlyList AvailableServers => s_availableServers;
+
+ ///
+ /// The currently selected server for this client, if any.
+ ///
+ public global::Letta.AutoSDKServer? SelectedServer
+ {
+ get => ResolveSelectedServer();
+ set => SelectServer(value);
+ }
+
///
/// Creates a new instance of the BlocksClient.
/// If no httpClient is provided, a new one will be created.
@@ -85,6 +116,8 @@ public BlocksClient(
Options = options ?? new global::Letta.AutoSDKClientOptions();
_disposeHttpClient = disposeHttpClient;
+ AutoSDKServerConfiguration.ExplicitBaseUri = baseUri ?? httpClient?.BaseAddress;
+
Initialized(HttpClient);
}
@@ -111,5 +144,117 @@ partial void ProcessResponseContent(
global::System.Net.Http.HttpClient client,
global::System.Net.Http.HttpResponseMessage response,
ref string content);
+
+
+ ///
+ /// Selects one of the generated server options by id.
+ ///
+ public bool TrySelectServer(string serverId)
+ {
+ if (string.IsNullOrWhiteSpace(serverId))
+ {
+ return false;
+ }
+
+ foreach (var server in s_availableServers)
+ {
+ if (string.Equals(server.Id, serverId, global::System.StringComparison.OrdinalIgnoreCase))
+ {
+ AutoSDKServerConfiguration.SelectedServer = server;
+ AutoSDKServerConfiguration.ExplicitBaseUri = null;
+ return true;
+ }
+ }
+
+ return false;
+ }
+
+ ///
+ /// Clears the currently selected server.
+ ///
+ public void ClearSelectedServer()
+ {
+ AutoSDKServerConfiguration.SelectedServer = null;
+ }
+
+ private global::Letta.AutoSDKServer? ResolveSelectedServer()
+ {
+ var selectedServer = AutoSDKServerConfiguration.SelectedServer;
+ if (selectedServer is null)
+ {
+ return null;
+ }
+
+ foreach (var server in s_availableServers)
+ {
+ if (string.Equals(server.Id, selectedServer.Id, global::System.StringComparison.Ordinal))
+ {
+ return server;
+ }
+ }
+
+ return null;
+ }
+
+ private void SelectServer(global::Letta.AutoSDKServer? server)
+ {
+ if (server is null)
+ {
+ AutoSDKServerConfiguration.SelectedServer = null;
+ return;
+ }
+
+ foreach (var candidate in s_availableServers)
+ {
+ if (string.Equals(candidate.Id, server.Id, global::System.StringComparison.Ordinal))
+ {
+ AutoSDKServerConfiguration.SelectedServer = candidate;
+ AutoSDKServerConfiguration.ExplicitBaseUri = null;
+ return;
+ }
+ }
+
+ throw new global::System.ArgumentException("The provided server is not available for this client.", nameof(server));
+ }
+
+ private global::System.Uri? ResolveDisplayedBaseUri()
+ {
+ if (AutoSDKServerConfiguration.ExplicitBaseUri is global::System.Uri explicitBaseUri)
+ {
+ return explicitBaseUri;
+ }
+
+ return ResolveSelectedServer()?.Uri ?? HttpClient.BaseAddress;
+ }
+
+ private global::System.Uri? ResolveBaseUri(
+ global::Letta.AutoSDKServer[] servers,
+ string defaultBaseUrl)
+ {
+ if (AutoSDKServerConfiguration.ExplicitBaseUri is global::System.Uri explicitBaseUri)
+ {
+ return explicitBaseUri;
+ }
+
+ if (AutoSDKServerConfiguration.SelectedServer is global::Letta.AutoSDKServer selectedServer)
+ {
+ foreach (var server in servers)
+ {
+ if (string.Equals(server.Id, selectedServer.Id, global::System.StringComparison.Ordinal))
+ {
+ return server.Uri;
+ }
+ }
+ }
+
+ if (servers.Length > 0)
+ {
+ return servers[0].Uri;
+ }
+
+ return string.IsNullOrWhiteSpace(defaultBaseUrl)
+ ? HttpClient.BaseAddress
+ : new global::System.Uri(defaultBaseUrl, global::System.UriKind.RelativeOrAbsolute);
+ }
}
}
\ No newline at end of file
diff --git a/src/libs/Letta/Generated/Letta.ChatClient.CreateChatCompletion.g.cs b/src/libs/Letta/Generated/Letta.ChatClient.CreateChatCompletion.g.cs
index a5b8f4b4..b2913791 100644
--- a/src/libs/Letta/Generated/Letta.ChatClient.CreateChatCompletion.g.cs
+++ b/src/libs/Letta/Generated/Letta.ChatClient.CreateChatCompletion.g.cs
@@ -6,6 +6,19 @@ namespace Letta
public partial class ChatClient
{
+ private static readonly global::Letta.AutoSDKServer[] s_CreateChatCompletionServers = new global::Letta.AutoSDKServer[]
+ { new global::Letta.AutoSDKServer(
+ id: "https-app-letta-com",
+ name: "Letta Cloud",
+ url: "https://app.letta.com/",
+ description: "Letta Cloud"),
+ new global::Letta.AutoSDKServer(
+ id: "http-localhost",
+ name: "Self-hosted",
+ url: "http://localhost:8283/",
+ description: "Self-hosted"),
+ };
+
private static readonly global::Letta.EndPointSecurityRequirement s_CreateChatCompletionSecurityRequirement0 =
new global::Letta.EndPointSecurityRequirement
@@ -91,7 +104,9 @@ partial void ProcessCreateChatCompletionResponseContent(
{
var __pathBuilder = new global::Letta.PathBuilder(
path: "/v1/chat/completions",
- baseUri: HttpClient.BaseAddress);
+ baseUri: ResolveBaseUri(
+ servers: s_CreateChatCompletionServers,
+ defaultBaseUrl: "https://app.letta.com/"));
var __path = __pathBuilder.ToString();
__path = global::Letta.AutoSDKRequestOptionsSupport.AppendQueryParameters(
path: __path,
diff --git a/src/libs/Letta/Generated/Letta.ChatClient.g.cs b/src/libs/Letta/Generated/Letta.ChatClient.g.cs
index 9174b32a..c21b963e 100644
--- a/src/libs/Letta/Generated/Letta.ChatClient.g.cs
+++ b/src/libs/Letta/Generated/Letta.ChatClient.g.cs
@@ -20,7 +20,7 @@ public sealed partial class ChatClient : global::Letta.IChatClient, global::Syst
public global::System.Net.Http.HttpClient HttpClient { get; }
///
- public System.Uri? BaseUri => HttpClient.BaseAddress;
+ public System.Uri? BaseUri => ResolveDisplayedBaseUri();
///
public global::System.Collections.Generic.List Authorizations { get; }
@@ -33,12 +33,43 @@ public sealed partial class ChatClient : global::Letta.IChatClient, global::Syst
///
public global::Letta.AutoSDKClientOptions Options { get; }
+
+
+ internal global::Letta.AutoSDKServerConfiguration AutoSDKServerConfiguration { get; set; } = new global::Letta.AutoSDKServerConfiguration();
///
///
///
public global::System.Text.Json.Serialization.JsonSerializerContext JsonSerializerContext { get; set; } = global::Letta.SourceGenerationContext.Default;
+
+ private static readonly global::Letta.AutoSDKServer[] s_availableServers = new global::Letta.AutoSDKServer[]
+ { new global::Letta.AutoSDKServer(
+ id: "https-app-letta-com",
+ name: "Letta Cloud",
+ url: "https://app.letta.com/",
+ description: "Letta Cloud"),
+ new global::Letta.AutoSDKServer(
+ id: "http-localhost",
+ name: "Self-hosted",
+ url: "http://localhost:8283/",
+ description: "Self-hosted"),
+ };
+
+ ///
+ /// The server options available for this client.
+ ///
+ public global::System.Collections.Generic.IReadOnlyList AvailableServers => s_availableServers;
+
+ ///
+ /// The currently selected server for this client, if any.
+ ///
+ public global::Letta.AutoSDKServer? SelectedServer
+ {
+ get => ResolveSelectedServer();
+ set => SelectServer(value);
+ }
+
///
/// Creates a new instance of the ChatClient.
/// If no httpClient is provided, a new one will be created.
@@ -85,6 +116,8 @@ public ChatClient(
Options = options ?? new global::Letta.AutoSDKClientOptions();
_disposeHttpClient = disposeHttpClient;
+ AutoSDKServerConfiguration.ExplicitBaseUri = baseUri ?? httpClient?.BaseAddress;
+
Initialized(HttpClient);
}
@@ -111,5 +144,117 @@ partial void ProcessResponseContent(
global::System.Net.Http.HttpClient client,
global::System.Net.Http.HttpResponseMessage response,
ref string content);
+
+
+ ///
+ /// Selects one of the generated server options by id.
+ ///
+ public bool TrySelectServer(string serverId)
+ {
+ if (string.IsNullOrWhiteSpace(serverId))
+ {
+ return false;
+ }
+
+ foreach (var server in s_availableServers)
+ {
+ if (string.Equals(server.Id, serverId, global::System.StringComparison.OrdinalIgnoreCase))
+ {
+ AutoSDKServerConfiguration.SelectedServer = server;
+ AutoSDKServerConfiguration.ExplicitBaseUri = null;
+ return true;
+ }
+ }
+
+ return false;
+ }
+
+ ///
+ /// Clears the currently selected server.
+ ///
+ public void ClearSelectedServer()
+ {
+ AutoSDKServerConfiguration.SelectedServer = null;
+ }
+
+ private global::Letta.AutoSDKServer? ResolveSelectedServer()
+ {
+ var selectedServer = AutoSDKServerConfiguration.SelectedServer;
+ if (selectedServer is null)
+ {
+ return null;
+ }
+
+ foreach (var server in s_availableServers)
+ {
+ if (string.Equals(server.Id, selectedServer.Id, global::System.StringComparison.Ordinal))
+ {
+ return server;
+ }
+ }
+
+ return null;
+ }
+
+ private void SelectServer(global::Letta.AutoSDKServer? server)
+ {
+ if (server is null)
+ {
+ AutoSDKServerConfiguration.SelectedServer = null;
+ return;
+ }
+
+ foreach (var candidate in s_availableServers)
+ {
+ if (string.Equals(candidate.Id, server.Id, global::System.StringComparison.Ordinal))
+ {
+ AutoSDKServerConfiguration.SelectedServer = candidate;
+ AutoSDKServerConfiguration.ExplicitBaseUri = null;
+ return;
+ }
+ }
+
+ throw new global::System.ArgumentException("The provided server is not available for this client.", nameof(server));
+ }
+
+ private global::System.Uri? ResolveDisplayedBaseUri()
+ {
+ if (AutoSDKServerConfiguration.ExplicitBaseUri is global::System.Uri explicitBaseUri)
+ {
+ return explicitBaseUri;
+ }
+
+ return ResolveSelectedServer()?.Uri ?? HttpClient.BaseAddress;
+ }
+
+ private global::System.Uri? ResolveBaseUri(
+ global::Letta.AutoSDKServer[] servers,
+ string defaultBaseUrl)
+ {
+ if (AutoSDKServerConfiguration.ExplicitBaseUri is global::System.Uri explicitBaseUri)
+ {
+ return explicitBaseUri;
+ }
+
+ if (AutoSDKServerConfiguration.SelectedServer is global::Letta.AutoSDKServer selectedServer)
+ {
+ foreach (var server in servers)
+ {
+ if (string.Equals(server.Id, selectedServer.Id, global::System.StringComparison.Ordinal))
+ {
+ return server.Uri;
+ }
+ }
+ }
+
+ if (servers.Length > 0)
+ {
+ return servers[0].Uri;
+ }
+
+ return string.IsNullOrWhiteSpace(defaultBaseUrl)
+ ? HttpClient.BaseAddress
+ : new global::System.Uri(defaultBaseUrl, global::System.UriKind.RelativeOrAbsolute);
+ }
}
}
\ No newline at end of file
diff --git a/src/libs/Letta/Generated/Letta.ClientSideAccessTokensClient.ClientSideAccessTokensCreateClientSideAccessToken.g.cs b/src/libs/Letta/Generated/Letta.ClientSideAccessTokensClient.ClientSideAccessTokensCreateClientSideAccessToken.g.cs
index 37e88850..4c7c5b92 100644
--- a/src/libs/Letta/Generated/Letta.ClientSideAccessTokensClient.ClientSideAccessTokensCreateClientSideAccessToken.g.cs
+++ b/src/libs/Letta/Generated/Letta.ClientSideAccessTokensClient.ClientSideAccessTokensCreateClientSideAccessToken.g.cs
@@ -6,6 +6,19 @@ namespace Letta
public partial class ClientSideAccessTokensClient
{
+ private static readonly global::Letta.AutoSDKServer[] s_ClientSideAccessTokensCreateClientSideAccessTokenServers = new global::Letta.AutoSDKServer[]
+ { new global::Letta.AutoSDKServer(
+ id: "https-app-letta-com",
+ name: "Letta Cloud",
+ url: "https://app.letta.com/",
+ description: "Letta Cloud"),
+ new global::Letta.AutoSDKServer(
+ id: "http-localhost",
+ name: "Self-hosted",
+ url: "http://localhost:8283/",
+ description: "Self-hosted"),
+ };
+
private static readonly global::Letta.EndPointSecurityRequirement s_ClientSideAccessTokensCreateClientSideAccessTokenSecurityRequirement0 =
new global::Letta.EndPointSecurityRequirement
@@ -87,7 +100,9 @@ partial void ProcessClientSideAccessTokensCreateClientSideAccessTokenResponseCon
{
var __pathBuilder = new global::Letta.PathBuilder(
path: "/v1/client-side-access-tokens",
- baseUri: HttpClient.BaseAddress);
+ baseUri: ResolveBaseUri(
+ servers: s_ClientSideAccessTokensCreateClientSideAccessTokenServers,
+ defaultBaseUrl: "https://app.letta.com/"));
var __path = __pathBuilder.ToString();
__path = global::Letta.AutoSDKRequestOptionsSupport.AppendQueryParameters(
path: __path,
diff --git a/src/libs/Letta/Generated/Letta.ClientSideAccessTokensClient.ClientSideAccessTokensDeleteClientSideAccessToken.g.cs b/src/libs/Letta/Generated/Letta.ClientSideAccessTokensClient.ClientSideAccessTokensDeleteClientSideAccessToken.g.cs
index 876000d6..bfa5b78d 100644
--- a/src/libs/Letta/Generated/Letta.ClientSideAccessTokensClient.ClientSideAccessTokensDeleteClientSideAccessToken.g.cs
+++ b/src/libs/Letta/Generated/Letta.ClientSideAccessTokensClient.ClientSideAccessTokensDeleteClientSideAccessToken.g.cs
@@ -6,6 +6,19 @@ namespace Letta
public partial class ClientSideAccessTokensClient
{
+ private static readonly global::Letta.AutoSDKServer[] s_ClientSideAccessTokensDeleteClientSideAccessTokenServers = new global::Letta.AutoSDKServer[]
+ { new global::Letta.AutoSDKServer(
+ id: "https-app-letta-com",
+ name: "Letta Cloud",
+ url: "https://app.letta.com/",
+ description: "Letta Cloud"),
+ new global::Letta.AutoSDKServer(
+ id: "http-localhost",
+ name: "Self-hosted",
+ url: "http://localhost:8283/",
+ description: "Self-hosted"),
+ };
+
private static readonly global::Letta.EndPointSecurityRequirement s_ClientSideAccessTokensDeleteClientSideAccessTokenSecurityRequirement0 =
new global::Letta.EndPointSecurityRequirement
@@ -92,7 +105,9 @@ partial void ProcessClientSideAccessTokensDeleteClientSideAccessTokenResponseCon
{
var __pathBuilder = new global::Letta.PathBuilder(
path: $"/v1/client-side-access-tokens/{token}",
- baseUri: HttpClient.BaseAddress);
+ baseUri: ResolveBaseUri(
+ servers: s_ClientSideAccessTokensDeleteClientSideAccessTokenServers,
+ defaultBaseUrl: "https://app.letta.com/"));
var __path = __pathBuilder.ToString();
__path = global::Letta.AutoSDKRequestOptionsSupport.AppendQueryParameters(
path: __path,
diff --git a/src/libs/Letta/Generated/Letta.ClientSideAccessTokensClient.ClientSideAccessTokensListClientSideAccessTokens.g.cs b/src/libs/Letta/Generated/Letta.ClientSideAccessTokensClient.ClientSideAccessTokensListClientSideAccessTokens.g.cs
index 8ca02f6f..56e83978 100644
--- a/src/libs/Letta/Generated/Letta.ClientSideAccessTokensClient.ClientSideAccessTokensListClientSideAccessTokens.g.cs
+++ b/src/libs/Letta/Generated/Letta.ClientSideAccessTokensClient.ClientSideAccessTokensListClientSideAccessTokens.g.cs
@@ -6,6 +6,19 @@ namespace Letta
public partial class ClientSideAccessTokensClient
{
+ private static readonly global::Letta.AutoSDKServer[] s_ClientSideAccessTokensListClientSideAccessTokensServers = new global::Letta.AutoSDKServer[]
+ { new global::Letta.AutoSDKServer(
+ id: "https-app-letta-com",
+ name: "Letta Cloud",
+ url: "https://app.letta.com/",
+ description: "Letta Cloud"),
+ new global::Letta.AutoSDKServer(
+ id: "http-localhost",
+ name: "Self-hosted",
+ url: "http://localhost:8283/",
+ description: "Self-hosted"),
+ };
+
private static readonly global::Letta.EndPointSecurityRequirement s_ClientSideAccessTokensListClientSideAccessTokensSecurityRequirement0 =
new global::Letta.EndPointSecurityRequirement
@@ -98,7 +111,9 @@ partial void ProcessClientSideAccessTokensListClientSideAccessTokensResponseCont
{
var __pathBuilder = new global::Letta.PathBuilder(
path: "/v1/client-side-access-tokens",
- baseUri: HttpClient.BaseAddress);
+ baseUri: ResolveBaseUri(
+ servers: s_ClientSideAccessTokensListClientSideAccessTokensServers,
+ defaultBaseUrl: "https://app.letta.com/"));
__pathBuilder
.AddOptionalParameter("agentId", agentId)
.AddOptionalParameter("offset", offset?.ToString())
diff --git a/src/libs/Letta/Generated/Letta.ClientSideAccessTokensClient.g.cs b/src/libs/Letta/Generated/Letta.ClientSideAccessTokensClient.g.cs
index c0604fa8..44068593 100644
--- a/src/libs/Letta/Generated/Letta.ClientSideAccessTokensClient.g.cs
+++ b/src/libs/Letta/Generated/Letta.ClientSideAccessTokensClient.g.cs
@@ -20,7 +20,7 @@ public sealed partial class ClientSideAccessTokensClient : global::Letta.IClient
public global::System.Net.Http.HttpClient HttpClient { get; }
///
- public System.Uri? BaseUri => HttpClient.BaseAddress;
+ public System.Uri? BaseUri => ResolveDisplayedBaseUri();
///
public global::System.Collections.Generic.List Authorizations { get; }
@@ -33,12 +33,43 @@ public sealed partial class ClientSideAccessTokensClient : global::Letta.IClient
///
public global::Letta.AutoSDKClientOptions Options { get; }
+
+
+ internal global::Letta.AutoSDKServerConfiguration AutoSDKServerConfiguration { get; set; } = new global::Letta.AutoSDKServerConfiguration();
///
///
///
public global::System.Text.Json.Serialization.JsonSerializerContext JsonSerializerContext { get; set; } = global::Letta.SourceGenerationContext.Default;
+
+ private static readonly global::Letta.AutoSDKServer[] s_availableServers = new global::Letta.AutoSDKServer[]
+ { new global::Letta.AutoSDKServer(
+ id: "https-app-letta-com",
+ name: "Letta Cloud",
+ url: "https://app.letta.com/",
+ description: "Letta Cloud"),
+ new global::Letta.AutoSDKServer(
+ id: "http-localhost",
+ name: "Self-hosted",
+ url: "http://localhost:8283/",
+ description: "Self-hosted"),
+ };
+
+ ///
+ /// The server options available for this client.
+ ///
+ public global::System.Collections.Generic.IReadOnlyList AvailableServers => s_availableServers;
+
+ ///
+ /// The currently selected server for this client, if any.
+ ///
+ public global::Letta.AutoSDKServer? SelectedServer
+ {
+ get => ResolveSelectedServer();
+ set => SelectServer(value);
+ }
+
///
/// Creates a new instance of the ClientSideAccessTokensClient.
/// If no httpClient is provided, a new one will be created.
@@ -85,6 +116,8 @@ public ClientSideAccessTokensClient(
Options = options ?? new global::Letta.AutoSDKClientOptions();
_disposeHttpClient = disposeHttpClient;
+ AutoSDKServerConfiguration.ExplicitBaseUri = baseUri ?? httpClient?.BaseAddress;
+
Initialized(HttpClient);
}
@@ -111,5 +144,117 @@ partial void ProcessResponseContent(
global::System.Net.Http.HttpClient client,
global::System.Net.Http.HttpResponseMessage response,
ref string content);
+
+
+ ///
+ /// Selects one of the generated server options by id.
+ ///
+ public bool TrySelectServer(string serverId)
+ {
+ if (string.IsNullOrWhiteSpace(serverId))
+ {
+ return false;
+ }
+
+ foreach (var server in s_availableServers)
+ {
+ if (string.Equals(server.Id, serverId, global::System.StringComparison.OrdinalIgnoreCase))
+ {
+ AutoSDKServerConfiguration.SelectedServer = server;
+ AutoSDKServerConfiguration.ExplicitBaseUri = null;
+ return true;
+ }
+ }
+
+ return false;
+ }
+
+ ///
+ /// Clears the currently selected server.
+ ///
+ public void ClearSelectedServer()
+ {
+ AutoSDKServerConfiguration.SelectedServer = null;
+ }
+
+ private global::Letta.AutoSDKServer? ResolveSelectedServer()
+ {
+ var selectedServer = AutoSDKServerConfiguration.SelectedServer;
+ if (selectedServer is null)
+ {
+ return null;
+ }
+
+ foreach (var server in s_availableServers)
+ {
+ if (string.Equals(server.Id, selectedServer.Id, global::System.StringComparison.Ordinal))
+ {
+ return server;
+ }
+ }
+
+ return null;
+ }
+
+ private void SelectServer(global::Letta.AutoSDKServer? server)
+ {
+ if (server is null)
+ {
+ AutoSDKServerConfiguration.SelectedServer = null;
+ return;
+ }
+
+ foreach (var candidate in s_availableServers)
+ {
+ if (string.Equals(candidate.Id, server.Id, global::System.StringComparison.Ordinal))
+ {
+ AutoSDKServerConfiguration.SelectedServer = candidate;
+ AutoSDKServerConfiguration.ExplicitBaseUri = null;
+ return;
+ }
+ }
+
+ throw new global::System.ArgumentException("The provided server is not available for this client.", nameof(server));
+ }
+
+ private global::System.Uri? ResolveDisplayedBaseUri()
+ {
+ if (AutoSDKServerConfiguration.ExplicitBaseUri is global::System.Uri explicitBaseUri)
+ {
+ return explicitBaseUri;
+ }
+
+ return ResolveSelectedServer()?.Uri ?? HttpClient.BaseAddress;
+ }
+
+ private global::System.Uri? ResolveBaseUri(
+ global::Letta.AutoSDKServer[] servers,
+ string defaultBaseUrl)
+ {
+ if (AutoSDKServerConfiguration.ExplicitBaseUri is global::System.Uri explicitBaseUri)
+ {
+ return explicitBaseUri;
+ }
+
+ if (AutoSDKServerConfiguration.SelectedServer is global::Letta.AutoSDKServer selectedServer)
+ {
+ foreach (var server in servers)
+ {
+ if (string.Equals(server.Id, selectedServer.Id, global::System.StringComparison.Ordinal))
+ {
+ return server.Uri;
+ }
+ }
+ }
+
+ if (servers.Length > 0)
+ {
+ return servers[0].Uri;
+ }
+
+ return string.IsNullOrWhiteSpace(defaultBaseUrl)
+ ? HttpClient.BaseAddress
+ : new global::System.Uri(defaultBaseUrl, global::System.UriKind.RelativeOrAbsolute);
+ }
}
}
\ No newline at end of file
diff --git a/src/libs/Letta/Generated/Letta.ConversationsClient.CancelConversation.g.cs b/src/libs/Letta/Generated/Letta.ConversationsClient.CancelConversation.g.cs
index 457a85dd..04991ec4 100644
--- a/src/libs/Letta/Generated/Letta.ConversationsClient.CancelConversation.g.cs
+++ b/src/libs/Letta/Generated/Letta.ConversationsClient.CancelConversation.g.cs
@@ -6,6 +6,19 @@ namespace Letta
public partial class ConversationsClient
{
+ private static readonly global::Letta.AutoSDKServer[] s_CancelConversationServers = new global::Letta.AutoSDKServer[]
+ { new global::Letta.AutoSDKServer(
+ id: "https-app-letta-com",
+ name: "Letta Cloud",
+ url: "https://app.letta.com/",
+ description: "Letta Cloud"),
+ new global::Letta.AutoSDKServer(
+ id: "http-localhost",
+ name: "Self-hosted",
+ url: "http://localhost:8283/",
+ description: "Self-hosted"),
+ };
+
private static readonly global::Letta.EndPointSecurityRequirement s_CancelConversationSecurityRequirement0 =
new global::Letta.EndPointSecurityRequirement
@@ -97,7 +110,9 @@ partial void ProcessCancelConversationResponseContent(
{
var __pathBuilder = new global::Letta.PathBuilder(
path: $"/v1/conversations/{conversationId}/cancel",
- baseUri: HttpClient.BaseAddress);
+ baseUri: ResolveBaseUri(
+ servers: s_CancelConversationServers,
+ defaultBaseUrl: "https://app.letta.com/"));
__pathBuilder
.AddOptionalParameter("agent_id", agentId)
;
diff --git a/src/libs/Letta/Generated/Letta.ConversationsClient.CompactConversation.g.cs b/src/libs/Letta/Generated/Letta.ConversationsClient.CompactConversation.g.cs
index bfb1a9f3..26060a22 100644
--- a/src/libs/Letta/Generated/Letta.ConversationsClient.CompactConversation.g.cs
+++ b/src/libs/Letta/Generated/Letta.ConversationsClient.CompactConversation.g.cs
@@ -6,6 +6,19 @@ namespace Letta
public partial class ConversationsClient
{
+ private static readonly global::Letta.AutoSDKServer[] s_CompactConversationServers = new global::Letta.AutoSDKServer[]
+ { new global::Letta.AutoSDKServer(
+ id: "https-app-letta-com",
+ name: "Letta Cloud",
+ url: "https://app.letta.com/",
+ description: "Letta Cloud"),
+ new global::Letta.AutoSDKServer(
+ id: "http-localhost",
+ name: "Self-hosted",
+ url: "http://localhost:8283/",
+ description: "Self-hosted"),
+ };
+
private static readonly global::Letta.EndPointSecurityRequirement s_CompactConversationSecurityRequirement0 =
new global::Letta.EndPointSecurityRequirement
@@ -99,7 +112,9 @@ partial void ProcessCompactConversationResponseContent(
{
var __pathBuilder = new global::Letta.PathBuilder(
path: $"/v1/conversations/{conversationId}/compact",
- baseUri: HttpClient.BaseAddress);
+ baseUri: ResolveBaseUri(
+ servers: s_CompactConversationServers,
+ defaultBaseUrl: "https://app.letta.com/"));
var __path = __pathBuilder.ToString();
__path = global::Letta.AutoSDKRequestOptionsSupport.AppendQueryParameters(
path: __path,
diff --git a/src/libs/Letta/Generated/Letta.ConversationsClient.CreateConversation.g.cs b/src/libs/Letta/Generated/Letta.ConversationsClient.CreateConversation.g.cs
index 84d2cfa6..8866d5eb 100644
--- a/src/libs/Letta/Generated/Letta.ConversationsClient.CreateConversation.g.cs
+++ b/src/libs/Letta/Generated/Letta.ConversationsClient.CreateConversation.g.cs
@@ -6,6 +6,19 @@ namespace Letta
public partial class ConversationsClient
{
+ private static readonly global::Letta.AutoSDKServer[] s_CreateConversationServers = new global::Letta.AutoSDKServer[]
+ { new global::Letta.AutoSDKServer(
+ id: "https-app-letta-com",
+ name: "Letta Cloud",
+ url: "https://app.letta.com/",
+ description: "Letta Cloud"),
+ new global::Letta.AutoSDKServer(
+ id: "http-localhost",
+ name: "Self-hosted",
+ url: "http://localhost:8283/",
+ description: "Self-hosted"),
+ };
+
private static readonly global::Letta.EndPointSecurityRequirement s_CreateConversationSecurityRequirement0 =
new global::Letta.EndPointSecurityRequirement
@@ -94,7 +107,9 @@ partial void ProcessCreateConversationResponseContent(
{
var __pathBuilder = new global::Letta.PathBuilder(
path: "/v1/conversations/",
- baseUri: HttpClient.BaseAddress);
+ baseUri: ResolveBaseUri(
+ servers: s_CreateConversationServers,
+ defaultBaseUrl: "https://app.letta.com/"));
__pathBuilder
.AddRequiredParameter("agent_id", agentId)
;
diff --git a/src/libs/Letta/Generated/Letta.ConversationsClient.DeleteConversation.g.cs b/src/libs/Letta/Generated/Letta.ConversationsClient.DeleteConversation.g.cs
index 0b009233..e877c18e 100644
--- a/src/libs/Letta/Generated/Letta.ConversationsClient.DeleteConversation.g.cs
+++ b/src/libs/Letta/Generated/Letta.ConversationsClient.DeleteConversation.g.cs
@@ -6,6 +6,19 @@ namespace Letta
public partial class ConversationsClient
{
+ private static readonly global::Letta.AutoSDKServer[] s_DeleteConversationServers = new global::Letta.AutoSDKServer[]
+ { new global::Letta.AutoSDKServer(
+ id: "https-app-letta-com",
+ name: "Letta Cloud",
+ url: "https://app.letta.com/",
+ description: "Letta Cloud"),
+ new global::Letta.AutoSDKServer(
+ id: "http-localhost",
+ name: "Self-hosted",
+ url: "http://localhost:8283/",
+ description: "Self-hosted"),
+ };
+
private static readonly global::Letta.EndPointSecurityRequirement s_DeleteConversationSecurityRequirement0 =
new global::Letta.EndPointSecurityRequirement
@@ -89,7 +102,9 @@ partial void ProcessDeleteConversationResponseContent(
{
var __pathBuilder = new global::Letta.PathBuilder(
path: $"/v1/conversations/{conversationId}",
- baseUri: HttpClient.BaseAddress);
+ baseUri: ResolveBaseUri(
+ servers: s_DeleteConversationServers,
+ defaultBaseUrl: "https://app.letta.com/"));
var __path = __pathBuilder.ToString();
__path = global::Letta.AutoSDKRequestOptionsSupport.AppendQueryParameters(
path: __path,
diff --git a/src/libs/Letta/Generated/Letta.ConversationsClient.ForkConversation.g.cs b/src/libs/Letta/Generated/Letta.ConversationsClient.ForkConversation.g.cs
index 2d030425..ed230585 100644
--- a/src/libs/Letta/Generated/Letta.ConversationsClient.ForkConversation.g.cs
+++ b/src/libs/Letta/Generated/Letta.ConversationsClient.ForkConversation.g.cs
@@ -6,6 +6,19 @@ namespace Letta
public partial class ConversationsClient
{
+ private static readonly global::Letta.AutoSDKServer[] s_ForkConversationServers = new global::Letta.AutoSDKServer[]
+ { new global::Letta.AutoSDKServer(
+ id: "https-app-letta-com",
+ name: "Letta Cloud",
+ url: "https://app.letta.com/",
+ description: "Letta Cloud"),
+ new global::Letta.AutoSDKServer(
+ id: "http-localhost",
+ name: "Self-hosted",
+ url: "http://localhost:8283/",
+ description: "Self-hosted"),
+ };
+
private static readonly global::Letta.EndPointSecurityRequirement s_ForkConversationSecurityRequirement0 =
new global::Letta.EndPointSecurityRequirement
@@ -99,7 +112,9 @@ partial void ProcessForkConversationResponseContent(
{
var __pathBuilder = new global::Letta.PathBuilder(
path: $"/v1/conversations/{conversationId}/fork",
- baseUri: HttpClient.BaseAddress);
+ baseUri: ResolveBaseUri(
+ servers: s_ForkConversationServers,
+ defaultBaseUrl: "https://app.letta.com/"));
__pathBuilder
.AddOptionalParameter("agent_id", agentId)
;
diff --git a/src/libs/Letta/Generated/Letta.ConversationsClient.ListConversationMessages.g.cs b/src/libs/Letta/Generated/Letta.ConversationsClient.ListConversationMessages.g.cs
index 9c1ca0d5..01fad471 100644
--- a/src/libs/Letta/Generated/Letta.ConversationsClient.ListConversationMessages.g.cs
+++ b/src/libs/Letta/Generated/Letta.ConversationsClient.ListConversationMessages.g.cs
@@ -6,6 +6,19 @@ namespace Letta
public partial class ConversationsClient
{
+ private static readonly global::Letta.AutoSDKServer[] s_ListConversationMessagesServers = new global::Letta.AutoSDKServer[]
+ { new global::Letta.AutoSDKServer(
+ id: "https-app-letta-com",
+ name: "Letta Cloud",
+ url: "https://app.letta.com/",
+ description: "Letta Cloud"),
+ new global::Letta.AutoSDKServer(
+ id: "http-localhost",
+ name: "Self-hosted",
+ url: "http://localhost:8283/",
+ description: "Self-hosted"),
+ };
+
private static readonly global::Letta.EndPointSecurityRequirement s_ListConversationMessagesSecurityRequirement0 =
new global::Letta.EndPointSecurityRequirement
@@ -157,7 +170,9 @@ partial void ProcessListConversationMessagesResponseContent(
{
var __pathBuilder = new global::Letta.PathBuilder(
path: $"/v1/conversations/{conversationId}/messages",
- baseUri: HttpClient.BaseAddress);
+ baseUri: ResolveBaseUri(
+ servers: s_ListConversationMessagesServers,
+ defaultBaseUrl: "https://app.letta.com/"));
__pathBuilder
.AddOptionalParameter("agent_id", agentId)
.AddOptionalParameter("before", before)
diff --git a/src/libs/Letta/Generated/Letta.ConversationsClient.ListConversations.g.cs b/src/libs/Letta/Generated/Letta.ConversationsClient.ListConversations.g.cs
index 0276fc01..8708debb 100644
--- a/src/libs/Letta/Generated/Letta.ConversationsClient.ListConversations.g.cs
+++ b/src/libs/Letta/Generated/Letta.ConversationsClient.ListConversations.g.cs
@@ -6,6 +6,19 @@ namespace Letta
public partial class ConversationsClient
{
+ private static readonly global::Letta.AutoSDKServer[] s_ListConversationsServers = new global::Letta.AutoSDKServer[]
+ { new global::Letta.AutoSDKServer(
+ id: "https-app-letta-com",
+ name: "Letta Cloud",
+ url: "https://app.letta.com/",
+ description: "Letta Cloud"),
+ new global::Letta.AutoSDKServer(
+ id: "http-localhost",
+ name: "Self-hosted",
+ url: "http://localhost:8283/",
+ description: "Self-hosted"),
+ };
+
private static readonly global::Letta.EndPointSecurityRequirement s_ListConversationsSecurityRequirement0 =
new global::Letta.EndPointSecurityRequirement
@@ -124,7 +137,9 @@ partial void ProcessListConversationsResponseContent(
{
var __pathBuilder = new global::Letta.PathBuilder(
path: "/v1/conversations/",
- baseUri: HttpClient.BaseAddress);
+ baseUri: ResolveBaseUri(
+ servers: s_ListConversationsServers,
+ defaultBaseUrl: "https://app.letta.com/"));
__pathBuilder
.AddOptionalParameter("agent_id", agentId)
.AddOptionalParameter("limit", limit?.ToString())
diff --git a/src/libs/Letta/Generated/Letta.ConversationsClient.PreviewConversationModelRequest.g.cs b/src/libs/Letta/Generated/Letta.ConversationsClient.PreviewConversationModelRequest.g.cs
index 8eaebfbb..fefaf620 100644
--- a/src/libs/Letta/Generated/Letta.ConversationsClient.PreviewConversationModelRequest.g.cs
+++ b/src/libs/Letta/Generated/Letta.ConversationsClient.PreviewConversationModelRequest.g.cs
@@ -8,6 +8,19 @@ namespace Letta
public partial class ConversationsClient
{
+ private static readonly global::Letta.AutoSDKServer[] s_PreviewConversationModelRequestServers = new global::Letta.AutoSDKServer[]
+ { new global::Letta.AutoSDKServer(
+ id: "https-app-letta-com",
+ name: "Letta Cloud",
+ url: "https://app.letta.com/",
+ description: "Letta Cloud"),
+ new global::Letta.AutoSDKServer(
+ id: "http-localhost",
+ name: "Self-hosted",
+ url: "http://localhost:8283/",
+ description: "Self-hosted"),
+ };
+
private static readonly global::Letta.EndPointSecurityRequirement s_PreviewConversationModelRequestSecurityRequirement0 =
new global::Letta.EndPointSecurityRequirement
@@ -100,7 +113,9 @@ partial void ProcessPreviewConversationModelRequestResponseContent(
{
var __pathBuilder = new global::Letta.PathBuilder(
path: $"/v1/conversations/{conversationId}/messages/preview-raw-payload",
- baseUri: HttpClient.BaseAddress);
+ baseUri: ResolveBaseUri(
+ servers: s_PreviewConversationModelRequestServers,
+ defaultBaseUrl: "https://app.letta.com/"));
var __path = __pathBuilder.ToString();
__path = global::Letta.AutoSDKRequestOptionsSupport.AppendQueryParameters(
path: __path,
diff --git a/src/libs/Letta/Generated/Letta.ConversationsClient.RecompileConversation.g.cs b/src/libs/Letta/Generated/Letta.ConversationsClient.RecompileConversation.g.cs
index 1da280bc..7603981a 100644
--- a/src/libs/Letta/Generated/Letta.ConversationsClient.RecompileConversation.g.cs
+++ b/src/libs/Letta/Generated/Letta.ConversationsClient.RecompileConversation.g.cs
@@ -6,6 +6,19 @@ namespace Letta
public partial class ConversationsClient
{
+ private static readonly global::Letta.AutoSDKServer[] s_RecompileConversationServers = new global::Letta.AutoSDKServer[]
+ { new global::Letta.AutoSDKServer(
+ id: "https-app-letta-com",
+ name: "Letta Cloud",
+ url: "https://app.letta.com/",
+ description: "Letta Cloud"),
+ new global::Letta.AutoSDKServer(
+ id: "http-localhost",
+ name: "Self-hosted",
+ url: "http://localhost:8283/",
+ description: "Self-hosted"),
+ };
+
private static readonly global::Letta.EndPointSecurityRequirement s_RecompileConversationSecurityRequirement0 =
new global::Letta.EndPointSecurityRequirement
@@ -102,7 +115,9 @@ partial void ProcessRecompileConversationResponseContent(
{
var __pathBuilder = new global::Letta.PathBuilder(
path: $"/v1/conversations/{conversationId}/recompile",
- baseUri: HttpClient.BaseAddress);
+ baseUri: ResolveBaseUri(
+ servers: s_RecompileConversationServers,
+ defaultBaseUrl: "https://app.letta.com/"));
__pathBuilder
.AddOptionalParameter("dry_run", dryRun?.ToString().ToLowerInvariant())
;
diff --git a/src/libs/Letta/Generated/Letta.ConversationsClient.RetrieveConversation.g.cs b/src/libs/Letta/Generated/Letta.ConversationsClient.RetrieveConversation.g.cs
index 4ccb1256..bf6cc52f 100644
--- a/src/libs/Letta/Generated/Letta.ConversationsClient.RetrieveConversation.g.cs
+++ b/src/libs/Letta/Generated/Letta.ConversationsClient.RetrieveConversation.g.cs
@@ -6,6 +6,19 @@ namespace Letta
public partial class ConversationsClient
{
+ private static readonly global::Letta.AutoSDKServer[] s_RetrieveConversationServers = new global::Letta.AutoSDKServer[]
+ { new global::Letta.AutoSDKServer(
+ id: "https-app-letta-com",
+ name: "Letta Cloud",
+ url: "https://app.letta.com/",
+ description: "Letta Cloud"),
+ new global::Letta.AutoSDKServer(
+ id: "http-localhost",
+ name: "Self-hosted",
+ url: "http://localhost:8283/",
+ description: "Self-hosted"),
+ };
+
private static readonly global::Letta.EndPointSecurityRequirement s_RetrieveConversationSecurityRequirement0 =
new global::Letta.EndPointSecurityRequirement
@@ -86,7 +99,9 @@ partial void ProcessRetrieveConversationResponseContent(
{
var __pathBuilder = new global::Letta.PathBuilder(
path: $"/v1/conversations/{conversationId}",
- baseUri: HttpClient.BaseAddress);
+ baseUri: ResolveBaseUri(
+ servers: s_RetrieveConversationServers,
+ defaultBaseUrl: "https://app.letta.com/"));
var __path = __pathBuilder.ToString();
__path = global::Letta.AutoSDKRequestOptionsSupport.AppendQueryParameters(
path: __path,
diff --git a/src/libs/Letta/Generated/Letta.ConversationsClient.RetrieveConversationStream.g.cs b/src/libs/Letta/Generated/Letta.ConversationsClient.RetrieveConversationStream.g.cs
index 6adea8e8..b5a1010c 100644
--- a/src/libs/Letta/Generated/Letta.ConversationsClient.RetrieveConversationStream.g.cs
+++ b/src/libs/Letta/Generated/Letta.ConversationsClient.RetrieveConversationStream.g.cs
@@ -6,6 +6,19 @@ namespace Letta
public partial class ConversationsClient
{
+ private static readonly global::Letta.AutoSDKServer[] s_RetrieveConversationStreamServers = new global::Letta.AutoSDKServer[]
+ { new global::Letta.AutoSDKServer(
+ id: "https-app-letta-com",
+ name: "Letta Cloud",
+ url: "https://app.letta.com/",
+ description: "Letta Cloud"),
+ new global::Letta.AutoSDKServer(
+ id: "http-localhost",
+ name: "Self-hosted",
+ url: "http://localhost:8283/",
+ description: "Self-hosted"),
+ };
+
private static readonly global::Letta.EndPointSecurityRequirement s_RetrieveConversationStreamSecurityRequirement0 =
new global::Letta.EndPointSecurityRequirement
@@ -103,7 +116,9 @@ partial void ProcessRetrieveConversationStreamResponseContent(
{
var __pathBuilder = new global::Letta.PathBuilder(
path: $"/v1/conversations/{conversationId}/stream",
- baseUri: HttpClient.BaseAddress);
+ baseUri: ResolveBaseUri(
+ servers: s_RetrieveConversationStreamServers,
+ defaultBaseUrl: "https://app.letta.com/"));
var __path = __pathBuilder.ToString();
__path = global::Letta.AutoSDKRequestOptionsSupport.AppendQueryParameters(
path: __path,
diff --git a/src/libs/Letta/Generated/Letta.ConversationsClient.SendConversationMessage.g.cs b/src/libs/Letta/Generated/Letta.ConversationsClient.SendConversationMessage.g.cs
index ddb3437e..605a3867 100644
--- a/src/libs/Letta/Generated/Letta.ConversationsClient.SendConversationMessage.g.cs
+++ b/src/libs/Letta/Generated/Letta.ConversationsClient.SendConversationMessage.g.cs
@@ -8,6 +8,19 @@ namespace Letta
public partial class ConversationsClient
{
+ private static readonly global::Letta.AutoSDKServer[] s_SendConversationMessageServers = new global::Letta.AutoSDKServer[]
+ { new global::Letta.AutoSDKServer(
+ id: "https-app-letta-com",
+ name: "Letta Cloud",
+ url: "https://app.letta.com/",
+ description: "Letta Cloud"),
+ new global::Letta.AutoSDKServer(
+ id: "http-localhost",
+ name: "Self-hosted",
+ url: "http://localhost:8283/",
+ description: "Self-hosted"),
+ };
+
private static readonly global::Letta.EndPointSecurityRequirement s_SendConversationMessageSecurityRequirement0 =
new global::Letta.EndPointSecurityRequirement
@@ -102,7 +115,9 @@ partial void ProcessSendConversationMessageResponseContent(
{
var __pathBuilder = new global::Letta.PathBuilder(
path: $"/v1/conversations/{conversationId}/messages",
- baseUri: HttpClient.BaseAddress);
+ baseUri: ResolveBaseUri(
+ servers: s_SendConversationMessageServers,
+ defaultBaseUrl: "https://app.letta.com/"));
var __path = __pathBuilder.ToString();
__path = global::Letta.AutoSDKRequestOptionsSupport.AppendQueryParameters(
path: __path,
diff --git a/src/libs/Letta/Generated/Letta.ConversationsClient.UpdateConversation.g.cs b/src/libs/Letta/Generated/Letta.ConversationsClient.UpdateConversation.g.cs
index 57b5a89c..1c49b1e2 100644
--- a/src/libs/Letta/Generated/Letta.ConversationsClient.UpdateConversation.g.cs
+++ b/src/libs/Letta/Generated/Letta.ConversationsClient.UpdateConversation.g.cs
@@ -6,6 +6,19 @@ namespace Letta
public partial class ConversationsClient
{
+ private static readonly global::Letta.AutoSDKServer[] s_UpdateConversationServers = new global::Letta.AutoSDKServer[]
+ { new global::Letta.AutoSDKServer(
+ id: "https-app-letta-com",
+ name: "Letta Cloud",
+ url: "https://app.letta.com/",
+ description: "Letta Cloud"),
+ new global::Letta.AutoSDKServer(
+ id: "http-localhost",
+ name: "Self-hosted",
+ url: "http://localhost:8283/",
+ description: "Self-hosted"),
+ };
+
private static readonly global::Letta.EndPointSecurityRequirement s_UpdateConversationSecurityRequirement0 =
new global::Letta.EndPointSecurityRequirement
@@ -94,7 +107,9 @@ partial void ProcessUpdateConversationResponseContent(
{
var __pathBuilder = new global::Letta.PathBuilder(
path: $"/v1/conversations/{conversationId}",
- baseUri: HttpClient.BaseAddress);
+ baseUri: ResolveBaseUri(
+ servers: s_UpdateConversationServers,
+ defaultBaseUrl: "https://app.letta.com/"));
var __path = __pathBuilder.ToString();
__path = global::Letta.AutoSDKRequestOptionsSupport.AppendQueryParameters(
path: __path,
diff --git a/src/libs/Letta/Generated/Letta.ConversationsClient.g.cs b/src/libs/Letta/Generated/Letta.ConversationsClient.g.cs
index f79a28e5..7b692cef 100644
--- a/src/libs/Letta/Generated/Letta.ConversationsClient.g.cs
+++ b/src/libs/Letta/Generated/Letta.ConversationsClient.g.cs
@@ -20,7 +20,7 @@ public sealed partial class ConversationsClient : global::Letta.IConversationsCl
public global::System.Net.Http.HttpClient HttpClient { get; }
///
- public System.Uri? BaseUri => HttpClient.BaseAddress;
+ public System.Uri? BaseUri => ResolveDisplayedBaseUri();
///
public global::System.Collections.Generic.List Authorizations { get; }
@@ -33,12 +33,43 @@ public sealed partial class ConversationsClient : global::Letta.IConversationsCl
///
public global::Letta.AutoSDKClientOptions Options { get; }
+
+
+ internal global::Letta.AutoSDKServerConfiguration AutoSDKServerConfiguration { get; set; } = new global::Letta.AutoSDKServerConfiguration();
///
///
///
public global::System.Text.Json.Serialization.JsonSerializerContext JsonSerializerContext { get; set; } = global::Letta.SourceGenerationContext.Default;
+
+ private static readonly global::Letta.AutoSDKServer[] s_availableServers = new global::Letta.AutoSDKServer[]
+ { new global::Letta.AutoSDKServer(
+ id: "https-app-letta-com",
+ name: "Letta Cloud",
+ url: "https://app.letta.com/",
+ description: "Letta Cloud"),
+ new global::Letta.AutoSDKServer(
+ id: "http-localhost",
+ name: "Self-hosted",
+ url: "http://localhost:8283/",
+ description: "Self-hosted"),
+ };
+
+ ///
+ /// The server options available for this client.
+ ///
+ public global::System.Collections.Generic.IReadOnlyList AvailableServers => s_availableServers;
+
+ ///
+ /// The currently selected server for this client, if any.
+ ///
+ public global::Letta.AutoSDKServer? SelectedServer
+ {
+ get => ResolveSelectedServer();
+ set => SelectServer(value);
+ }
+
///
/// Creates a new instance of the ConversationsClient.
/// If no httpClient is provided, a new one will be created.
@@ -85,6 +116,8 @@ public ConversationsClient(
Options = options ?? new global::Letta.AutoSDKClientOptions();
_disposeHttpClient = disposeHttpClient;
+ AutoSDKServerConfiguration.ExplicitBaseUri = baseUri ?? httpClient?.BaseAddress;
+
Initialized(HttpClient);
}
@@ -111,5 +144,117 @@ partial void ProcessResponseContent(
global::System.Net.Http.HttpClient client,
global::System.Net.Http.HttpResponseMessage response,
ref string content);
+
+
+ ///
+ /// Selects one of the generated server options by id.
+ ///
+ public bool TrySelectServer(string serverId)
+ {
+ if (string.IsNullOrWhiteSpace(serverId))
+ {
+ return false;
+ }
+
+ foreach (var server in s_availableServers)
+ {
+ if (string.Equals(server.Id, serverId, global::System.StringComparison.OrdinalIgnoreCase))
+ {
+ AutoSDKServerConfiguration.SelectedServer = server;
+ AutoSDKServerConfiguration.ExplicitBaseUri = null;
+ return true;
+ }
+ }
+
+ return false;
+ }
+
+ ///
+ /// Clears the currently selected server.
+ ///
+ public void ClearSelectedServer()
+ {
+ AutoSDKServerConfiguration.SelectedServer = null;
+ }
+
+ private global::Letta.AutoSDKServer? ResolveSelectedServer()
+ {
+ var selectedServer = AutoSDKServerConfiguration.SelectedServer;
+ if (selectedServer is null)
+ {
+ return null;
+ }
+
+ foreach (var server in s_availableServers)
+ {
+ if (string.Equals(server.Id, selectedServer.Id, global::System.StringComparison.Ordinal))
+ {
+ return server;
+ }
+ }
+
+ return null;
+ }
+
+ private void SelectServer(global::Letta.AutoSDKServer? server)
+ {
+ if (server is null)
+ {
+ AutoSDKServerConfiguration.SelectedServer = null;
+ return;
+ }
+
+ foreach (var candidate in s_availableServers)
+ {
+ if (string.Equals(candidate.Id, server.Id, global::System.StringComparison.Ordinal))
+ {
+ AutoSDKServerConfiguration.SelectedServer = candidate;
+ AutoSDKServerConfiguration.ExplicitBaseUri = null;
+ return;
+ }
+ }
+
+ throw new global::System.ArgumentException("The provided server is not available for this client.", nameof(server));
+ }
+
+ private global::System.Uri? ResolveDisplayedBaseUri()
+ {
+ if (AutoSDKServerConfiguration.ExplicitBaseUri is global::System.Uri explicitBaseUri)
+ {
+ return explicitBaseUri;
+ }
+
+ return ResolveSelectedServer()?.Uri ?? HttpClient.BaseAddress;
+ }
+
+ private global::System.Uri? ResolveBaseUri(
+ global::Letta.AutoSDKServer[] servers,
+ string defaultBaseUrl)
+ {
+ if (AutoSDKServerConfiguration.ExplicitBaseUri is global::System.Uri explicitBaseUri)
+ {
+ return explicitBaseUri;
+ }
+
+ if (AutoSDKServerConfiguration.SelectedServer is global::Letta.AutoSDKServer selectedServer)
+ {
+ foreach (var server in servers)
+ {
+ if (string.Equals(server.Id, selectedServer.Id, global::System.StringComparison.Ordinal))
+ {
+ return server.Uri;
+ }
+ }
+ }
+
+ if (servers.Length > 0)
+ {
+ return servers[0].Uri;
+ }
+
+ return string.IsNullOrWhiteSpace(defaultBaseUrl)
+ ? HttpClient.BaseAddress
+ : new global::System.Uri(defaultBaseUrl, global::System.UriKind.RelativeOrAbsolute);
+ }
}
}
\ No newline at end of file
diff --git a/src/libs/Letta/Generated/Letta.DeviceStorageClient.DeviceStorageGetDeviceStorageKey.g.cs b/src/libs/Letta/Generated/Letta.DeviceStorageClient.DeviceStorageGetDeviceStorageKey.g.cs
index 0fe2ce7f..bb1207b1 100644
--- a/src/libs/Letta/Generated/Letta.DeviceStorageClient.DeviceStorageGetDeviceStorageKey.g.cs
+++ b/src/libs/Letta/Generated/Letta.DeviceStorageClient.DeviceStorageGetDeviceStorageKey.g.cs
@@ -6,6 +6,19 @@ namespace Letta
public partial class DeviceStorageClient
{
+ private static readonly global::Letta.AutoSDKServer[] s_DeviceStorageGetDeviceStorageKeyServers = new global::Letta.AutoSDKServer[]
+ { new global::Letta.AutoSDKServer(
+ id: "https-app-letta-com",
+ name: "Letta Cloud",
+ url: "https://app.letta.com/",
+ description: "Letta Cloud"),
+ new global::Letta.AutoSDKServer(
+ id: "http-localhost",
+ name: "Self-hosted",
+ url: "http://localhost:8283/",
+ description: "Self-hosted"),
+ };
+
private static readonly global::Letta.EndPointSecurityRequirement s_DeviceStorageGetDeviceStorageKeySecurityRequirement0 =
new global::Letta.EndPointSecurityRequirement
@@ -84,7 +97,9 @@ partial void ProcessDeviceStorageGetDeviceStorageKeyResponseContent(
{
var __pathBuilder = new global::Letta.PathBuilder(
path: "/v1/device-storage-key",
- baseUri: HttpClient.BaseAddress);
+ baseUri: ResolveBaseUri(
+ servers: s_DeviceStorageGetDeviceStorageKeyServers,
+ defaultBaseUrl: "https://app.letta.com/"));
__pathBuilder
.AddRequiredParameter("deviceId", deviceId)
;
diff --git a/src/libs/Letta/Generated/Letta.DeviceStorageClient.g.cs b/src/libs/Letta/Generated/Letta.DeviceStorageClient.g.cs
index fadc74a1..e974fd82 100644
--- a/src/libs/Letta/Generated/Letta.DeviceStorageClient.g.cs
+++ b/src/libs/Letta/Generated/Letta.DeviceStorageClient.g.cs
@@ -20,7 +20,7 @@ public sealed partial class DeviceStorageClient : global::Letta.IDeviceStorageCl
public global::System.Net.Http.HttpClient HttpClient { get; }
///
- public System.Uri? BaseUri => HttpClient.BaseAddress;
+ public System.Uri? BaseUri => ResolveDisplayedBaseUri();
///
public global::System.Collections.Generic.List Authorizations { get; }
@@ -33,12 +33,43 @@ public sealed partial class DeviceStorageClient : global::Letta.IDeviceStorageCl
///
public global::Letta.AutoSDKClientOptions Options { get; }
+
+
+ internal global::Letta.AutoSDKServerConfiguration AutoSDKServerConfiguration { get; set; } = new global::Letta.AutoSDKServerConfiguration();
///
///
///
public global::System.Text.Json.Serialization.JsonSerializerContext JsonSerializerContext { get; set; } = global::Letta.SourceGenerationContext.Default;
+
+ private static readonly global::Letta.AutoSDKServer[] s_availableServers = new global::Letta.AutoSDKServer[]
+ { new global::Letta.AutoSDKServer(
+ id: "https-app-letta-com",
+ name: "Letta Cloud",
+ url: "https://app.letta.com/",
+ description: "Letta Cloud"),
+ new global::Letta.AutoSDKServer(
+ id: "http-localhost",
+ name: "Self-hosted",
+ url: "http://localhost:8283/",
+ description: "Self-hosted"),
+ };
+
+ ///
+ /// The server options available for this client.
+ ///
+ public global::System.Collections.Generic.IReadOnlyList AvailableServers => s_availableServers;
+
+ ///
+ /// The currently selected server for this client, if any.
+ ///
+ public global::Letta.AutoSDKServer? SelectedServer
+ {
+ get => ResolveSelectedServer();
+ set => SelectServer(value);
+ }
+
///
/// Creates a new instance of the DeviceStorageClient.
/// If no httpClient is provided, a new one will be created.
@@ -85,6 +116,8 @@ public DeviceStorageClient(
Options = options ?? new global::Letta.AutoSDKClientOptions();
_disposeHttpClient = disposeHttpClient;
+ AutoSDKServerConfiguration.ExplicitBaseUri = baseUri ?? httpClient?.BaseAddress;
+
Initialized(HttpClient);
}
@@ -111,5 +144,117 @@ partial void ProcessResponseContent(
global::System.Net.Http.HttpClient client,
global::System.Net.Http.HttpResponseMessage response,
ref string content);
+
+
+ ///
+ /// Selects one of the generated server options by id.
+ ///
+ public bool TrySelectServer(string serverId)
+ {
+ if (string.IsNullOrWhiteSpace(serverId))
+ {
+ return false;
+ }
+
+ foreach (var server in s_availableServers)
+ {
+ if (string.Equals(server.Id, serverId, global::System.StringComparison.OrdinalIgnoreCase))
+ {
+ AutoSDKServerConfiguration.SelectedServer = server;
+ AutoSDKServerConfiguration.ExplicitBaseUri = null;
+ return true;
+ }
+ }
+
+ return false;
+ }
+
+ ///
+ /// Clears the currently selected server.
+ ///
+ public void ClearSelectedServer()
+ {
+ AutoSDKServerConfiguration.SelectedServer = null;
+ }
+
+ private global::Letta.AutoSDKServer? ResolveSelectedServer()
+ {
+ var selectedServer = AutoSDKServerConfiguration.SelectedServer;
+ if (selectedServer is null)
+ {
+ return null;
+ }
+
+ foreach (var server in s_availableServers)
+ {
+ if (string.Equals(server.Id, selectedServer.Id, global::System.StringComparison.Ordinal))
+ {
+ return server;
+ }
+ }
+
+ return null;
+ }
+
+ private void SelectServer(global::Letta.AutoSDKServer? server)
+ {
+ if (server is null)
+ {
+ AutoSDKServerConfiguration.SelectedServer = null;
+ return;
+ }
+
+ foreach (var candidate in s_availableServers)
+ {
+ if (string.Equals(candidate.Id, server.Id, global::System.StringComparison.Ordinal))
+ {
+ AutoSDKServerConfiguration.SelectedServer = candidate;
+ AutoSDKServerConfiguration.ExplicitBaseUri = null;
+ return;
+ }
+ }
+
+ throw new global::System.ArgumentException("The provided server is not available for this client.", nameof(server));
+ }
+
+ private global::System.Uri? ResolveDisplayedBaseUri()
+ {
+ if (AutoSDKServerConfiguration.ExplicitBaseUri is global::System.Uri explicitBaseUri)
+ {
+ return explicitBaseUri;
+ }
+
+ return ResolveSelectedServer()?.Uri ?? HttpClient.BaseAddress;
+ }
+
+ private global::System.Uri? ResolveBaseUri(
+ global::Letta.AutoSDKServer[] servers,
+ string defaultBaseUrl)
+ {
+ if (AutoSDKServerConfiguration.ExplicitBaseUri is global::System.Uri explicitBaseUri)
+ {
+ return explicitBaseUri;
+ }
+
+ if (AutoSDKServerConfiguration.SelectedServer is global::Letta.AutoSDKServer selectedServer)
+ {
+ foreach (var server in servers)
+ {
+ if (string.Equals(server.Id, selectedServer.Id, global::System.StringComparison.Ordinal))
+ {
+ return server.Uri;
+ }
+ }
+ }
+
+ if (servers.Length > 0)
+ {
+ return servers[0].Uri;
+ }
+
+ return string.IsNullOrWhiteSpace(defaultBaseUrl)
+ ? HttpClient.BaseAddress
+ : new global::System.Uri(defaultBaseUrl, global::System.UriKind.RelativeOrAbsolute);
+ }
}
}
\ No newline at end of file
diff --git a/src/libs/Letta/Generated/Letta.EmbeddingsClient.GetTotalStorageSize.g.cs b/src/libs/Letta/Generated/Letta.EmbeddingsClient.GetTotalStorageSize.g.cs
index 0e877947..e379ea3a 100644
--- a/src/libs/Letta/Generated/Letta.EmbeddingsClient.GetTotalStorageSize.g.cs
+++ b/src/libs/Letta/Generated/Letta.EmbeddingsClient.GetTotalStorageSize.g.cs
@@ -6,6 +6,19 @@ namespace Letta
public partial class EmbeddingsClient
{
+ private static readonly global::Letta.AutoSDKServer[] s_GetTotalStorageSizeServers = new global::Letta.AutoSDKServer[]
+ { new global::Letta.AutoSDKServer(
+ id: "https-app-letta-com",
+ name: "Letta Cloud",
+ url: "https://app.letta.com/",
+ description: "Letta Cloud"),
+ new global::Letta.AutoSDKServer(
+ id: "http-localhost",
+ name: "Self-hosted",
+ url: "http://localhost:8283/",
+ description: "Self-hosted"),
+ };
+
private static readonly global::Letta.EndPointSecurityRequirement s_GetTotalStorageSizeSecurityRequirement0 =
new global::Letta.EndPointSecurityRequirement
@@ -86,7 +99,9 @@ partial void ProcessGetTotalStorageSizeResponseContent(
{
var __pathBuilder = new global::Letta.PathBuilder(
path: "/v1/embeddings/total_storage_size",
- baseUri: HttpClient.BaseAddress);
+ baseUri: ResolveBaseUri(
+ servers: s_GetTotalStorageSizeServers,
+ defaultBaseUrl: "https://app.letta.com/"));
var __path = __pathBuilder.ToString();
__path = global::Letta.AutoSDKRequestOptionsSupport.AppendQueryParameters(
path: __path,
@@ -117,10 +132,10 @@ partial void ProcessGetTotalStorageSizeResponseContent(
}
}
- if (storageUnit != default)
- {
- __httpRequest.Headers.TryAddWithoutValidation("storage-unit", storageUnit.ToString());
- }
+ if (storageUnit != default)
+ {
+ __httpRequest.Headers.TryAddWithoutValidation("storage-unit", storageUnit.ToString());
+ }
global::Letta.AutoSDKRequestOptionsSupport.ApplyHeaders(
request: __httpRequest,
diff --git a/src/libs/Letta/Generated/Letta.EmbeddingsClient.g.cs b/src/libs/Letta/Generated/Letta.EmbeddingsClient.g.cs
index 5d45057c..a6d932ee 100644
--- a/src/libs/Letta/Generated/Letta.EmbeddingsClient.g.cs
+++ b/src/libs/Letta/Generated/Letta.EmbeddingsClient.g.cs
@@ -20,7 +20,7 @@ public sealed partial class EmbeddingsClient : global::Letta.IEmbeddingsClient,
public global::System.Net.Http.HttpClient HttpClient { get; }
///
- public System.Uri? BaseUri => HttpClient.BaseAddress;
+ public System.Uri? BaseUri => ResolveDisplayedBaseUri();
///
public global::System.Collections.Generic.List Authorizations { get; }
@@ -33,12 +33,43 @@ public sealed partial class EmbeddingsClient : global::Letta.IEmbeddingsClient,
///
public global::Letta.AutoSDKClientOptions Options { get; }
+
+
+ internal global::Letta.AutoSDKServerConfiguration AutoSDKServerConfiguration { get; set; } = new global::Letta.AutoSDKServerConfiguration();
///
///
///
public global::System.Text.Json.Serialization.JsonSerializerContext JsonSerializerContext { get; set; } = global::Letta.SourceGenerationContext.Default;
+
+ private static readonly global::Letta.AutoSDKServer[] s_availableServers = new global::Letta.AutoSDKServer[]
+ { new global::Letta.AutoSDKServer(
+ id: "https-app-letta-com",
+ name: "Letta Cloud",
+ url: "https://app.letta.com/",
+ description: "Letta Cloud"),
+ new global::Letta.AutoSDKServer(
+ id: "http-localhost",
+ name: "Self-hosted",
+ url: "http://localhost:8283/",
+ description: "Self-hosted"),
+ };
+
+ ///
+ /// The server options available for this client.
+ ///
+ public global::System.Collections.Generic.IReadOnlyList AvailableServers => s_availableServers;
+
+ ///
+ /// The currently selected server for this client, if any.
+ ///
+ public global::Letta.AutoSDKServer? SelectedServer
+ {
+ get => ResolveSelectedServer();
+ set => SelectServer(value);
+ }
+
///
/// Creates a new instance of the EmbeddingsClient.
/// If no httpClient is provided, a new one will be created.
@@ -85,6 +116,8 @@ public EmbeddingsClient(
Options = options ?? new global::Letta.AutoSDKClientOptions();
_disposeHttpClient = disposeHttpClient;
+ AutoSDKServerConfiguration.ExplicitBaseUri = baseUri ?? httpClient?.BaseAddress;
+
Initialized(HttpClient);
}
@@ -111,5 +144,117 @@ partial void ProcessResponseContent(
global::System.Net.Http.HttpClient client,
global::System.Net.Http.HttpResponseMessage response,
ref string content);
+
+
+ ///
+ /// Selects one of the generated server options by id.
+ ///
+ public bool TrySelectServer(string serverId)
+ {
+ if (string.IsNullOrWhiteSpace(serverId))
+ {
+ return false;
+ }
+
+ foreach (var server in s_availableServers)
+ {
+ if (string.Equals(server.Id, serverId, global::System.StringComparison.OrdinalIgnoreCase))
+ {
+ AutoSDKServerConfiguration.SelectedServer = server;
+ AutoSDKServerConfiguration.ExplicitBaseUri = null;
+ return true;
+ }
+ }
+
+ return false;
+ }
+
+ ///
+ /// Clears the currently selected server.
+ ///
+ public void ClearSelectedServer()
+ {
+ AutoSDKServerConfiguration.SelectedServer = null;
+ }
+
+ private global::Letta.AutoSDKServer? ResolveSelectedServer()
+ {
+ var selectedServer = AutoSDKServerConfiguration.SelectedServer;
+ if (selectedServer is null)
+ {
+ return null;
+ }
+
+ foreach (var server in s_availableServers)
+ {
+ if (string.Equals(server.Id, selectedServer.Id, global::System.StringComparison.Ordinal))
+ {
+ return server;
+ }
+ }
+
+ return null;
+ }
+
+ private void SelectServer(global::Letta.AutoSDKServer? server)
+ {
+ if (server is null)
+ {
+ AutoSDKServerConfiguration.SelectedServer = null;
+ return;
+ }
+
+ foreach (var candidate in s_availableServers)
+ {
+ if (string.Equals(candidate.Id, server.Id, global::System.StringComparison.Ordinal))
+ {
+ AutoSDKServerConfiguration.SelectedServer = candidate;
+ AutoSDKServerConfiguration.ExplicitBaseUri = null;
+ return;
+ }
+ }
+
+ throw new global::System.ArgumentException("The provided server is not available for this client.", nameof(server));
+ }
+
+ private global::System.Uri? ResolveDisplayedBaseUri()
+ {
+ if (AutoSDKServerConfiguration.ExplicitBaseUri is global::System.Uri explicitBaseUri)
+ {
+ return explicitBaseUri;
+ }
+
+ return ResolveSelectedServer()?.Uri ?? HttpClient.BaseAddress;
+ }
+
+ private global::System.Uri? ResolveBaseUri(
+ global::Letta.AutoSDKServer[] servers,
+ string defaultBaseUrl)
+ {
+ if (AutoSDKServerConfiguration.ExplicitBaseUri is global::System.Uri explicitBaseUri)
+ {
+ return explicitBaseUri;
+ }
+
+ if (AutoSDKServerConfiguration.SelectedServer is global::Letta.AutoSDKServer selectedServer)
+ {
+ foreach (var server in servers)
+ {
+ if (string.Equals(server.Id, selectedServer.Id, global::System.StringComparison.Ordinal))
+ {
+ return server.Uri;
+ }
+ }
+ }
+
+ if (servers.Length > 0)
+ {
+ return servers[0].Uri;
+ }
+
+ return string.IsNullOrWhiteSpace(defaultBaseUrl)
+ ? HttpClient.BaseAddress
+ : new global::System.Uri(defaultBaseUrl, global::System.UriKind.RelativeOrAbsolute);
+ }
}
}
\ No newline at end of file
diff --git a/src/libs/Letta/Generated/Letta.EnvironmentsClient.EnvironmentsDeleteEnvironment.g.cs b/src/libs/Letta/Generated/Letta.EnvironmentsClient.EnvironmentsDeleteEnvironment.g.cs
index e59802ce..843d9dbf 100644
--- a/src/libs/Letta/Generated/Letta.EnvironmentsClient.EnvironmentsDeleteEnvironment.g.cs
+++ b/src/libs/Letta/Generated/Letta.EnvironmentsClient.EnvironmentsDeleteEnvironment.g.cs
@@ -6,6 +6,19 @@ namespace Letta
public partial class EnvironmentsClient
{
+ private static readonly global::Letta.AutoSDKServer[] s_EnvironmentsDeleteEnvironmentServers = new global::Letta.AutoSDKServer[]
+ { new global::Letta.AutoSDKServer(
+ id: "https-app-letta-com",
+ name: "Letta Cloud",
+ url: "https://app.letta.com/",
+ description: "Letta Cloud"),
+ new global::Letta.AutoSDKServer(
+ id: "http-localhost",
+ name: "Self-hosted",
+ url: "http://localhost:8283/",
+ description: "Self-hosted"),
+ };
+
private static readonly global::Letta.EndPointSecurityRequirement s_EnvironmentsDeleteEnvironmentSecurityRequirement0 =
new global::Letta.EndPointSecurityRequirement
@@ -92,7 +105,9 @@ partial void ProcessEnvironmentsDeleteEnvironmentResponseContent(
{
var __pathBuilder = new global::Letta.PathBuilder(
path: $"/v1/environments/{id}",
- baseUri: HttpClient.BaseAddress);
+ baseUri: ResolveBaseUri(
+ servers: s_EnvironmentsDeleteEnvironmentServers,
+ defaultBaseUrl: "https://app.letta.com/"));
var __path = __pathBuilder.ToString();
__path = global::Letta.AutoSDKRequestOptionsSupport.AppendQueryParameters(
path: __path,
diff --git a/src/libs/Letta/Generated/Letta.EnvironmentsClient.EnvironmentsGetConnection.g.cs b/src/libs/Letta/Generated/Letta.EnvironmentsClient.EnvironmentsGetConnection.g.cs
index 989aa5c7..392d3c11 100644
--- a/src/libs/Letta/Generated/Letta.EnvironmentsClient.EnvironmentsGetConnection.g.cs
+++ b/src/libs/Letta/Generated/Letta.EnvironmentsClient.EnvironmentsGetConnection.g.cs
@@ -6,6 +6,19 @@ namespace Letta
public partial class EnvironmentsClient
{
+ private static readonly global::Letta.AutoSDKServer[] s_EnvironmentsGetConnectionServers = new global::Letta.AutoSDKServer[]
+ { new global::Letta.AutoSDKServer(
+ id: "https-app-letta-com",
+ name: "Letta Cloud",
+ url: "https://app.letta.com/",
+ description: "Letta Cloud"),
+ new global::Letta.AutoSDKServer(
+ id: "http-localhost",
+ name: "Self-hosted",
+ url: "http://localhost:8283/",
+ description: "Self-hosted"),
+ };
+
private static readonly global::Letta.EndPointSecurityRequirement s_EnvironmentsGetConnectionSecurityRequirement0 =
new global::Letta.EndPointSecurityRequirement
@@ -84,7 +97,9 @@ partial void ProcessEnvironmentsGetConnectionResponseContent(
{
var __pathBuilder = new global::Letta.PathBuilder(
path: $"/v1/environments/{deviceId}",
- baseUri: HttpClient.BaseAddress);
+ baseUri: ResolveBaseUri(
+ servers: s_EnvironmentsGetConnectionServers,
+ defaultBaseUrl: "https://app.letta.com/"));
var __path = __pathBuilder.ToString();
__path = global::Letta.AutoSDKRequestOptionsSupport.AppendQueryParameters(
path: __path,
diff --git a/src/libs/Letta/Generated/Letta.EnvironmentsClient.EnvironmentsListConnections.g.cs b/src/libs/Letta/Generated/Letta.EnvironmentsClient.EnvironmentsListConnections.g.cs
index 17b613a7..7a9bdd4c 100644
--- a/src/libs/Letta/Generated/Letta.EnvironmentsClient.EnvironmentsListConnections.g.cs
+++ b/src/libs/Letta/Generated/Letta.EnvironmentsClient.EnvironmentsListConnections.g.cs
@@ -6,6 +6,19 @@ namespace Letta
public partial class EnvironmentsClient
{
+ private static readonly global::Letta.AutoSDKServer[] s_EnvironmentsListConnectionsServers = new global::Letta.AutoSDKServer[]
+ { new global::Letta.AutoSDKServer(
+ id: "https-app-letta-com",
+ name: "Letta Cloud",
+ url: "https://app.letta.com/",
+ description: "Letta Cloud"),
+ new global::Letta.AutoSDKServer(
+ id: "http-localhost",
+ name: "Self-hosted",
+ url: "http://localhost:8283/",
+ description: "Self-hosted"),
+ };
+
private static readonly global::Letta.EndPointSecurityRequirement s_EnvironmentsListConnectionsSecurityRequirement0 =
new global::Letta.EndPointSecurityRequirement
@@ -99,7 +112,9 @@ partial void ProcessEnvironmentsListConnectionsResponseContent(
{
var __pathBuilder = new global::Letta.PathBuilder(
path: "/v1/environments",
- baseUri: HttpClient.BaseAddress);
+ baseUri: ResolveBaseUri(
+ servers: s_EnvironmentsListConnectionsServers,
+ defaultBaseUrl: "https://app.letta.com/"));
__pathBuilder
.AddOptionalParameter("limit", limit)
.AddOptionalParameter("after", after)
diff --git a/src/libs/Letta/Generated/Letta.EnvironmentsClient.EnvironmentsRegister.g.cs b/src/libs/Letta/Generated/Letta.EnvironmentsClient.EnvironmentsRegister.g.cs
index bfeb594a..dc070dce 100644
--- a/src/libs/Letta/Generated/Letta.EnvironmentsClient.EnvironmentsRegister.g.cs
+++ b/src/libs/Letta/Generated/Letta.EnvironmentsClient.EnvironmentsRegister.g.cs
@@ -6,6 +6,19 @@ namespace Letta
public partial class EnvironmentsClient
{
+ private static readonly global::Letta.AutoSDKServer[] s_EnvironmentsRegisterServers = new global::Letta.AutoSDKServer[]
+ { new global::Letta.AutoSDKServer(
+ id: "https-app-letta-com",
+ name: "Letta Cloud",
+ url: "https://app.letta.com/",
+ description: "Letta Cloud"),
+ new global::Letta.AutoSDKServer(
+ id: "http-localhost",
+ name: "Self-hosted",
+ url: "http://localhost:8283/",
+ description: "Self-hosted"),
+ };
+
private static readonly global::Letta.EndPointSecurityRequirement s_EnvironmentsRegisterSecurityRequirement0 =
new global::Letta.EndPointSecurityRequirement
@@ -87,7 +100,9 @@ partial void ProcessEnvironmentsRegisterResponseContent(
{
var __pathBuilder = new global::Letta.PathBuilder(
path: "/v1/environments/register",
- baseUri: HttpClient.BaseAddress);
+ baseUri: ResolveBaseUri(
+ servers: s_EnvironmentsRegisterServers,
+ defaultBaseUrl: "https://app.letta.com/"));
var __path = __pathBuilder.ToString();
__path = global::Letta.AutoSDKRequestOptionsSupport.AppendQueryParameters(
path: __path,
diff --git a/src/libs/Letta/Generated/Letta.EnvironmentsClient.EnvironmentsSendMessage.g.cs b/src/libs/Letta/Generated/Letta.EnvironmentsClient.EnvironmentsSendMessage.g.cs
index 450569e4..4b986db0 100644
--- a/src/libs/Letta/Generated/Letta.EnvironmentsClient.EnvironmentsSendMessage.g.cs
+++ b/src/libs/Letta/Generated/Letta.EnvironmentsClient.EnvironmentsSendMessage.g.cs
@@ -6,6 +6,19 @@ namespace Letta
public partial class EnvironmentsClient
{
+ private static readonly global::Letta.AutoSDKServer[] s_EnvironmentsSendMessageServers = new global::Letta.AutoSDKServer[]
+ { new global::Letta.AutoSDKServer(
+ id: "https-app-letta-com",
+ name: "Letta Cloud",
+ url: "https://app.letta.com/",
+ description: "Letta Cloud"),
+ new global::Letta.AutoSDKServer(
+ id: "http-localhost",
+ name: "Self-hosted",
+ url: "http://localhost:8283/",
+ description: "Self-hosted"),
+ };
+
private static readonly global::Letta.EndPointSecurityRequirement s_EnvironmentsSendMessageSecurityRequirement0 =
new global::Letta.EndPointSecurityRequirement
@@ -92,7 +105,9 @@ partial void ProcessEnvironmentsSendMessageResponseContent(
{
var __pathBuilder = new global::Letta.PathBuilder(
path: $"/v1/environments/{connectionId}/messages",
- baseUri: HttpClient.BaseAddress);
+ baseUri: ResolveBaseUri(
+ servers: s_EnvironmentsSendMessageServers,
+ defaultBaseUrl: "https://app.letta.com/"));
var __path = __pathBuilder.ToString();
__path = global::Letta.AutoSDKRequestOptionsSupport.AppendQueryParameters(
path: __path,
diff --git a/src/libs/Letta/Generated/Letta.EnvironmentsClient.g.cs b/src/libs/Letta/Generated/Letta.EnvironmentsClient.g.cs
index f206757e..64bc04f9 100644
--- a/src/libs/Letta/Generated/Letta.EnvironmentsClient.g.cs
+++ b/src/libs/Letta/Generated/Letta.EnvironmentsClient.g.cs
@@ -20,7 +20,7 @@ public sealed partial class EnvironmentsClient : global::Letta.IEnvironmentsClie
public global::System.Net.Http.HttpClient HttpClient { get; }
///
- public System.Uri? BaseUri => HttpClient.BaseAddress;
+ public System.Uri? BaseUri => ResolveDisplayedBaseUri();
///
public global::System.Collections.Generic.List Authorizations { get; }
@@ -33,12 +33,43 @@ public sealed partial class EnvironmentsClient : global::Letta.IEnvironmentsClie
///
public global::Letta.AutoSDKClientOptions Options { get; }
+
+
+ internal global::Letta.AutoSDKServerConfiguration AutoSDKServerConfiguration { get; set; } = new global::Letta.AutoSDKServerConfiguration();
///
///
///
public global::System.Text.Json.Serialization.JsonSerializerContext JsonSerializerContext { get; set; } = global::Letta.SourceGenerationContext.Default;
+
+ private static readonly global::Letta.AutoSDKServer[] s_availableServers = new global::Letta.AutoSDKServer[]
+ { new global::Letta.AutoSDKServer(
+ id: "https-app-letta-com",
+ name: "Letta Cloud",
+ url: "https://app.letta.com/",
+ description: "Letta Cloud"),
+ new global::Letta.AutoSDKServer(
+ id: "http-localhost",
+ name: "Self-hosted",
+ url: "http://localhost:8283/",
+ description: "Self-hosted"),
+ };
+
+ ///
+ /// The server options available for this client.
+ ///
+ public global::System.Collections.Generic.IReadOnlyList AvailableServers => s_availableServers;
+
+ ///
+ /// The currently selected server for this client, if any.
+ ///
+ public global::Letta.AutoSDKServer? SelectedServer
+ {
+ get => ResolveSelectedServer();
+ set => SelectServer(value);
+ }
+
///
/// Creates a new instance of the EnvironmentsClient.
/// If no httpClient is provided, a new one will be created.
@@ -85,6 +116,8 @@ public EnvironmentsClient(
Options = options ?? new global::Letta.AutoSDKClientOptions();
_disposeHttpClient = disposeHttpClient;
+ AutoSDKServerConfiguration.ExplicitBaseUri = baseUri ?? httpClient?.BaseAddress;
+
Initialized(HttpClient);
}
@@ -111,5 +144,117 @@ partial void ProcessResponseContent(
global::System.Net.Http.HttpClient client,
global::System.Net.Http.HttpResponseMessage response,
ref string content);
+
+
+ ///
+ /// Selects one of the generated server options by id.
+ ///
+ public bool TrySelectServer(string serverId)
+ {
+ if (string.IsNullOrWhiteSpace(serverId))
+ {
+ return false;
+ }
+
+ foreach (var server in s_availableServers)
+ {
+ if (string.Equals(server.Id, serverId, global::System.StringComparison.OrdinalIgnoreCase))
+ {
+ AutoSDKServerConfiguration.SelectedServer = server;
+ AutoSDKServerConfiguration.ExplicitBaseUri = null;
+ return true;
+ }
+ }
+
+ return false;
+ }
+
+ ///
+ /// Clears the currently selected server.
+ ///
+ public void ClearSelectedServer()
+ {
+ AutoSDKServerConfiguration.SelectedServer = null;
+ }
+
+ private global::Letta.AutoSDKServer? ResolveSelectedServer()
+ {
+ var selectedServer = AutoSDKServerConfiguration.SelectedServer;
+ if (selectedServer is null)
+ {
+ return null;
+ }
+
+ foreach (var server in s_availableServers)
+ {
+ if (string.Equals(server.Id, selectedServer.Id, global::System.StringComparison.Ordinal))
+ {
+ return server;
+ }
+ }
+
+ return null;
+ }
+
+ private void SelectServer(global::Letta.AutoSDKServer? server)
+ {
+ if (server is null)
+ {
+ AutoSDKServerConfiguration.SelectedServer = null;
+ return;
+ }
+
+ foreach (var candidate in s_availableServers)
+ {
+ if (string.Equals(candidate.Id, server.Id, global::System.StringComparison.Ordinal))
+ {
+ AutoSDKServerConfiguration.SelectedServer = candidate;
+ AutoSDKServerConfiguration.ExplicitBaseUri = null;
+ return;
+ }
+ }
+
+ throw new global::System.ArgumentException("The provided server is not available for this client.", nameof(server));
+ }
+
+ private global::System.Uri? ResolveDisplayedBaseUri()
+ {
+ if (AutoSDKServerConfiguration.ExplicitBaseUri is global::System.Uri explicitBaseUri)
+ {
+ return explicitBaseUri;
+ }
+
+ return ResolveSelectedServer()?.Uri ?? HttpClient.BaseAddress;
+ }
+
+ private global::System.Uri? ResolveBaseUri(
+ global::Letta.AutoSDKServer[] servers,
+ string defaultBaseUrl)
+ {
+ if (AutoSDKServerConfiguration.ExplicitBaseUri is global::System.Uri explicitBaseUri)
+ {
+ return explicitBaseUri;
+ }
+
+ if (AutoSDKServerConfiguration.SelectedServer is global::Letta.AutoSDKServer selectedServer)
+ {
+ foreach (var server in servers)
+ {
+ if (string.Equals(server.Id, selectedServer.Id, global::System.StringComparison.Ordinal))
+ {
+ return server.Uri;
+ }
+ }
+ }
+
+ if (servers.Length > 0)
+ {
+ return servers[0].Uri;
+ }
+
+ return string.IsNullOrWhiteSpace(defaultBaseUrl)
+ ? HttpClient.BaseAddress
+ : new global::System.Uri(defaultBaseUrl, global::System.UriKind.RelativeOrAbsolute);
+ }
}
}
\ No newline at end of file
diff --git a/src/libs/Letta/Generated/Letta.FeedsClient.FeedsBackfillSubscription.g.cs b/src/libs/Letta/Generated/Letta.FeedsClient.FeedsBackfillSubscription.g.cs
index f30109ce..302332c4 100644
--- a/src/libs/Letta/Generated/Letta.FeedsClient.FeedsBackfillSubscription.g.cs
+++ b/src/libs/Letta/Generated/Letta.FeedsClient.FeedsBackfillSubscription.g.cs
@@ -6,6 +6,19 @@ namespace Letta
public partial class FeedsClient
{
+ private static readonly global::Letta.AutoSDKServer[] s_FeedsBackfillSubscriptionServers = new global::Letta.AutoSDKServer[]
+ { new global::Letta.AutoSDKServer(
+ id: "https-app-letta-com",
+ name: "Letta Cloud",
+ url: "https://app.letta.com/",
+ description: "Letta Cloud"),
+ new global::Letta.AutoSDKServer(
+ id: "http-localhost",
+ name: "Self-hosted",
+ url: "http://localhost:8283/",
+ description: "Self-hosted"),
+ };
+
private static readonly global::Letta.EndPointSecurityRequirement s_FeedsBackfillSubscriptionSecurityRequirement0 =
new global::Letta.EndPointSecurityRequirement
@@ -97,7 +110,9 @@ partial void ProcessFeedsBackfillSubscriptionResponseContent(
{
var __pathBuilder = new global::Letta.PathBuilder(
path: $"/v1/feeds/{feedId}/subscriptions/{subscriptionId}/backfill",
- baseUri: HttpClient.BaseAddress);
+ baseUri: ResolveBaseUri(
+ servers: s_FeedsBackfillSubscriptionServers,
+ defaultBaseUrl: "https://app.letta.com/"));
var __path = __pathBuilder.ToString();
__path = global::Letta.AutoSDKRequestOptionsSupport.AppendQueryParameters(
path: __path,
diff --git a/src/libs/Letta/Generated/Letta.FeedsClient.FeedsCreateFeed.g.cs b/src/libs/Letta/Generated/Letta.FeedsClient.FeedsCreateFeed.g.cs
index 06f97759..b1dc4ff5 100644
--- a/src/libs/Letta/Generated/Letta.FeedsClient.FeedsCreateFeed.g.cs
+++ b/src/libs/Letta/Generated/Letta.FeedsClient.FeedsCreateFeed.g.cs
@@ -6,6 +6,19 @@ namespace Letta
public partial class FeedsClient
{
+ private static readonly global::Letta.AutoSDKServer[] s_FeedsCreateFeedServers = new global::Letta.AutoSDKServer[]
+ { new global::Letta.AutoSDKServer(
+ id: "https-app-letta-com",
+ name: "Letta Cloud",
+ url: "https://app.letta.com/",
+ description: "Letta Cloud"),
+ new global::Letta.AutoSDKServer(
+ id: "http-localhost",
+ name: "Self-hosted",
+ url: "http://localhost:8283/",
+ description: "Self-hosted"),
+ };
+
private static readonly global::Letta.EndPointSecurityRequirement s_FeedsCreateFeedSecurityRequirement0 =
new global::Letta.EndPointSecurityRequirement
@@ -87,7 +100,9 @@ partial void ProcessFeedsCreateFeedResponseContent(
{
var __pathBuilder = new global::Letta.PathBuilder(
path: "/v1/feeds",
- baseUri: HttpClient.BaseAddress);
+ baseUri: ResolveBaseUri(
+ servers: s_FeedsCreateFeedServers,
+ defaultBaseUrl: "https://app.letta.com/"));
var __path = __pathBuilder.ToString();
__path = global::Letta.AutoSDKRequestOptionsSupport.AppendQueryParameters(
path: __path,
diff --git a/src/libs/Letta/Generated/Letta.FeedsClient.FeedsDeleteFeed.g.cs b/src/libs/Letta/Generated/Letta.FeedsClient.FeedsDeleteFeed.g.cs
index 18d831d8..874d9c12 100644
--- a/src/libs/Letta/Generated/Letta.FeedsClient.FeedsDeleteFeed.g.cs
+++ b/src/libs/Letta/Generated/Letta.FeedsClient.FeedsDeleteFeed.g.cs
@@ -6,6 +6,19 @@ namespace Letta
public partial class FeedsClient
{
+ private static readonly global::Letta.AutoSDKServer[] s_FeedsDeleteFeedServers = new global::Letta.AutoSDKServer[]
+ { new global::Letta.AutoSDKServer(
+ id: "https-app-letta-com",
+ name: "Letta Cloud",
+ url: "https://app.letta.com/",
+ description: "Letta Cloud"),
+ new global::Letta.AutoSDKServer(
+ id: "http-localhost",
+ name: "Self-hosted",
+ url: "http://localhost:8283/",
+ description: "Self-hosted"),
+ };
+
private static readonly global::Letta.EndPointSecurityRequirement s_FeedsDeleteFeedSecurityRequirement0 =
new global::Letta.EndPointSecurityRequirement
@@ -92,7 +105,9 @@ partial void ProcessFeedsDeleteFeedResponseContent(
{
var __pathBuilder = new global::Letta.PathBuilder(
path: $"/v1/feeds/{feedId}",
- baseUri: HttpClient.BaseAddress);
+ baseUri: ResolveBaseUri(
+ servers: s_FeedsDeleteFeedServers,
+ defaultBaseUrl: "https://app.letta.com/"));
var __path = __pathBuilder.ToString();
__path = global::Letta.AutoSDKRequestOptionsSupport.AppendQueryParameters(
path: __path,
diff --git a/src/libs/Letta/Generated/Letta.FeedsClient.FeedsDeleteSubscription.g.cs b/src/libs/Letta/Generated/Letta.FeedsClient.FeedsDeleteSubscription.g.cs
index 44cb490a..7037381d 100644
--- a/src/libs/Letta/Generated/Letta.FeedsClient.FeedsDeleteSubscription.g.cs
+++ b/src/libs/Letta/Generated/Letta.FeedsClient.FeedsDeleteSubscription.g.cs
@@ -6,6 +6,19 @@ namespace Letta
public partial class FeedsClient
{
+ private static readonly global::Letta.AutoSDKServer[] s_FeedsDeleteSubscriptionServers = new global::Letta.AutoSDKServer[]
+ { new global::Letta.AutoSDKServer(
+ id: "https-app-letta-com",
+ name: "Letta Cloud",
+ url: "https://app.letta.com/",
+ description: "Letta Cloud"),
+ new global::Letta.AutoSDKServer(
+ id: "http-localhost",
+ name: "Self-hosted",
+ url: "http://localhost:8283/",
+ description: "Self-hosted"),
+ };
+
private static readonly global::Letta.EndPointSecurityRequirement s_FeedsDeleteSubscriptionSecurityRequirement0 =
new global::Letta.EndPointSecurityRequirement
@@ -97,7 +110,9 @@ partial void ProcessFeedsDeleteSubscriptionResponseContent(
{
var __pathBuilder = new global::Letta.PathBuilder(
path: $"/v1/feeds/{feedId}/subscriptions/{subscriptionId}",
- baseUri: HttpClient.BaseAddress);
+ baseUri: ResolveBaseUri(
+ servers: s_FeedsDeleteSubscriptionServers,
+ defaultBaseUrl: "https://app.letta.com/"));
var __path = __pathBuilder.ToString();
__path = global::Letta.AutoSDKRequestOptionsSupport.AppendQueryParameters(
path: __path,
diff --git a/src/libs/Letta/Generated/Letta.FeedsClient.FeedsGetFeed.g.cs b/src/libs/Letta/Generated/Letta.FeedsClient.FeedsGetFeed.g.cs
index 98c2ceb8..2979f97b 100644
--- a/src/libs/Letta/Generated/Letta.FeedsClient.FeedsGetFeed.g.cs
+++ b/src/libs/Letta/Generated/Letta.FeedsClient.FeedsGetFeed.g.cs
@@ -6,6 +6,19 @@ namespace Letta
public partial class FeedsClient
{
+ private static readonly global::Letta.AutoSDKServer[] s_FeedsGetFeedServers = new global::Letta.AutoSDKServer[]
+ { new global::Letta.AutoSDKServer(
+ id: "https-app-letta-com",
+ name: "Letta Cloud",
+ url: "https://app.letta.com/",
+ description: "Letta Cloud"),
+ new global::Letta.AutoSDKServer(
+ id: "http-localhost",
+ name: "Self-hosted",
+ url: "http://localhost:8283/",
+ description: "Self-hosted"),
+ };
+
private static readonly global::Letta.EndPointSecurityRequirement s_FeedsGetFeedSecurityRequirement0 =
new global::Letta.EndPointSecurityRequirement
@@ -84,7 +97,9 @@ partial void ProcessFeedsGetFeedResponseContent(
{
var __pathBuilder = new global::Letta.PathBuilder(
path: $"/v1/feeds/{feedId}",
- baseUri: HttpClient.BaseAddress);
+ baseUri: ResolveBaseUri(
+ servers: s_FeedsGetFeedServers,
+ defaultBaseUrl: "https://app.letta.com/"));
var __path = __pathBuilder.ToString();
__path = global::Letta.AutoSDKRequestOptionsSupport.AppendQueryParameters(
path: __path,
diff --git a/src/libs/Letta/Generated/Letta.FeedsClient.FeedsGetMessage.g.cs b/src/libs/Letta/Generated/Letta.FeedsClient.FeedsGetMessage.g.cs
index 6baa8846..29bcb4e4 100644
--- a/src/libs/Letta/Generated/Letta.FeedsClient.FeedsGetMessage.g.cs
+++ b/src/libs/Letta/Generated/Letta.FeedsClient.FeedsGetMessage.g.cs
@@ -6,6 +6,19 @@ namespace Letta
public partial class FeedsClient
{
+ private static readonly global::Letta.AutoSDKServer[] s_FeedsGetMessageServers = new global::Letta.AutoSDKServer[]
+ { new global::Letta.AutoSDKServer(
+ id: "https-app-letta-com",
+ name: "Letta Cloud",
+ url: "https://app.letta.com/",
+ description: "Letta Cloud"),
+ new global::Letta.AutoSDKServer(
+ id: "http-localhost",
+ name: "Self-hosted",
+ url: "http://localhost:8283/",
+ description: "Self-hosted"),
+ };
+
private static readonly global::Letta.EndPointSecurityRequirement s_FeedsGetMessageSecurityRequirement0 =
new global::Letta.EndPointSecurityRequirement
@@ -89,7 +102,9 @@ partial void ProcessFeedsGetMessageResponseContent(
{
var __pathBuilder = new global::Letta.PathBuilder(
path: $"/v1/feeds/{feedId}/messages/{messageId}",
- baseUri: HttpClient.BaseAddress);
+ baseUri: ResolveBaseUri(
+ servers: s_FeedsGetMessageServers,
+ defaultBaseUrl: "https://app.letta.com/"));
var __path = __pathBuilder.ToString();
__path = global::Letta.AutoSDKRequestOptionsSupport.AppendQueryParameters(
path: __path,
diff --git a/src/libs/Letta/Generated/Letta.FeedsClient.FeedsListFeeds.g.cs b/src/libs/Letta/Generated/Letta.FeedsClient.FeedsListFeeds.g.cs
index 8b65cabd..a06feb31 100644
--- a/src/libs/Letta/Generated/Letta.FeedsClient.FeedsListFeeds.g.cs
+++ b/src/libs/Letta/Generated/Letta.FeedsClient.FeedsListFeeds.g.cs
@@ -6,6 +6,19 @@ namespace Letta
public partial class FeedsClient
{
+ private static readonly global::Letta.AutoSDKServer[] s_FeedsListFeedsServers = new global::Letta.AutoSDKServer[]
+ { new global::Letta.AutoSDKServer(
+ id: "https-app-letta-com",
+ name: "Letta Cloud",
+ url: "https://app.letta.com/",
+ description: "Letta Cloud"),
+ new global::Letta.AutoSDKServer(
+ id: "http-localhost",
+ name: "Self-hosted",
+ url: "http://localhost:8283/",
+ description: "Self-hosted"),
+ };
+
private static readonly global::Letta.EndPointSecurityRequirement s_FeedsListFeedsSecurityRequirement0 =
new global::Letta.EndPointSecurityRequirement
@@ -99,7 +112,9 @@ partial void ProcessFeedsListFeedsResponseContent(
{
var __pathBuilder = new global::Letta.PathBuilder(
path: "/v1/feeds",
- baseUri: HttpClient.BaseAddress);
+ baseUri: ResolveBaseUri(
+ servers: s_FeedsListFeedsServers,
+ defaultBaseUrl: "https://app.letta.com/"));
__pathBuilder
.AddOptionalParameter("project_id", projectId)
.AddOptionalParameter("name", name)
diff --git a/src/libs/Letta/Generated/Letta.FeedsClient.FeedsListMessages.g.cs b/src/libs/Letta/Generated/Letta.FeedsClient.FeedsListMessages.g.cs
index 0be93263..959efd5c 100644
--- a/src/libs/Letta/Generated/Letta.FeedsClient.FeedsListMessages.g.cs
+++ b/src/libs/Letta/Generated/Letta.FeedsClient.FeedsListMessages.g.cs
@@ -6,6 +6,19 @@ namespace Letta
public partial class FeedsClient
{
+ private static readonly global::Letta.AutoSDKServer[] s_FeedsListMessagesServers = new global::Letta.AutoSDKServer[]
+ { new global::Letta.AutoSDKServer(
+ id: "https-app-letta-com",
+ name: "Letta Cloud",
+ url: "https://app.letta.com/",
+ description: "Letta Cloud"),
+ new global::Letta.AutoSDKServer(
+ id: "http-localhost",
+ name: "Self-hosted",
+ url: "http://localhost:8283/",
+ description: "Self-hosted"),
+ };
+
private static readonly global::Letta.EndPointSecurityRequirement s_FeedsListMessagesSecurityRequirement0 =
new global::Letta.EndPointSecurityRequirement
@@ -94,7 +107,9 @@ partial void ProcessFeedsListMessagesResponseContent(
{
var __pathBuilder = new global::Letta.PathBuilder(
path: $"/v1/feeds/{feedId}/messages",
- baseUri: HttpClient.BaseAddress);
+ baseUri: ResolveBaseUri(
+ servers: s_FeedsListMessagesServers,
+ defaultBaseUrl: "https://app.letta.com/"));
__pathBuilder
.AddOptionalParameter("after_sequence", afterSequence)
.AddOptionalParameter("limit", limit)
diff --git a/src/libs/Letta/Generated/Letta.FeedsClient.FeedsListSubscriptionHistory.g.cs b/src/libs/Letta/Generated/Letta.FeedsClient.FeedsListSubscriptionHistory.g.cs
index 30e893b2..ed0c69fa 100644
--- a/src/libs/Letta/Generated/Letta.FeedsClient.FeedsListSubscriptionHistory.g.cs
+++ b/src/libs/Letta/Generated/Letta.FeedsClient.FeedsListSubscriptionHistory.g.cs
@@ -6,6 +6,19 @@ namespace Letta
public partial class FeedsClient
{
+ private static readonly global::Letta.AutoSDKServer[] s_FeedsListSubscriptionHistoryServers = new global::Letta.AutoSDKServer[]
+ { new global::Letta.AutoSDKServer(
+ id: "https-app-letta-com",
+ name: "Letta Cloud",
+ url: "https://app.letta.com/",
+ description: "Letta Cloud"),
+ new global::Letta.AutoSDKServer(
+ id: "http-localhost",
+ name: "Self-hosted",
+ url: "http://localhost:8283/",
+ description: "Self-hosted"),
+ };
+
private static readonly global::Letta.EndPointSecurityRequirement s_FeedsListSubscriptionHistorySecurityRequirement0 =
new global::Letta.EndPointSecurityRequirement
@@ -99,7 +112,9 @@ partial void ProcessFeedsListSubscriptionHistoryResponseContent(
{
var __pathBuilder = new global::Letta.PathBuilder(
path: $"/v1/feeds/{feedId}/subscriptions/{subscriptionId}/history",
- baseUri: HttpClient.BaseAddress);
+ baseUri: ResolveBaseUri(
+ servers: s_FeedsListSubscriptionHistoryServers,
+ defaultBaseUrl: "https://app.letta.com/"));
__pathBuilder
.AddOptionalParameter("page_size", pageSize)
.AddOptionalParameter("next_page_token", nextPageToken)
diff --git a/src/libs/Letta/Generated/Letta.FeedsClient.FeedsListSubscriptions.g.cs b/src/libs/Letta/Generated/Letta.FeedsClient.FeedsListSubscriptions.g.cs
index c3e0e50d..5c789927 100644
--- a/src/libs/Letta/Generated/Letta.FeedsClient.FeedsListSubscriptions.g.cs
+++ b/src/libs/Letta/Generated/Letta.FeedsClient.FeedsListSubscriptions.g.cs
@@ -6,6 +6,19 @@ namespace Letta
public partial class FeedsClient
{
+ private static readonly global::Letta.AutoSDKServer[] s_FeedsListSubscriptionsServers = new global::Letta.AutoSDKServer[]
+ { new global::Letta.AutoSDKServer(
+ id: "https-app-letta-com",
+ name: "Letta Cloud",
+ url: "https://app.letta.com/",
+ description: "Letta Cloud"),
+ new global::Letta.AutoSDKServer(
+ id: "http-localhost",
+ name: "Self-hosted",
+ url: "http://localhost:8283/",
+ description: "Self-hosted"),
+ };
+
private static readonly global::Letta.EndPointSecurityRequirement s_FeedsListSubscriptionsSecurityRequirement0 =
new global::Letta.EndPointSecurityRequirement
@@ -99,7 +112,9 @@ partial void ProcessFeedsListSubscriptionsResponseContent(
{
var __pathBuilder = new global::Letta.PathBuilder(
path: $"/v1/feeds/{feedId}/subscriptions",
- baseUri: HttpClient.BaseAddress);
+ baseUri: ResolveBaseUri(
+ servers: s_FeedsListSubscriptionsServers,
+ defaultBaseUrl: "https://app.letta.com/"));
__pathBuilder
.AddOptionalParameter("limit", limit)
.AddOptionalParameter("offset", offset?.ToString())
diff --git a/src/libs/Letta/Generated/Letta.FeedsClient.FeedsPublishMessages.g.cs b/src/libs/Letta/Generated/Letta.FeedsClient.FeedsPublishMessages.g.cs
index d368c88b..c4535e78 100644
--- a/src/libs/Letta/Generated/Letta.FeedsClient.FeedsPublishMessages.g.cs
+++ b/src/libs/Letta/Generated/Letta.FeedsClient.FeedsPublishMessages.g.cs
@@ -6,6 +6,19 @@ namespace Letta
public partial class FeedsClient
{
+ private static readonly global::Letta.AutoSDKServer[] s_FeedsPublishMessagesServers = new global::Letta.AutoSDKServer[]
+ { new global::Letta.AutoSDKServer(
+ id: "https-app-letta-com",
+ name: "Letta Cloud",
+ url: "https://app.letta.com/",
+ description: "Letta Cloud"),
+ new global::Letta.AutoSDKServer(
+ id: "http-localhost",
+ name: "Self-hosted",
+ url: "http://localhost:8283/",
+ description: "Self-hosted"),
+ };
+
private static readonly global::Letta.EndPointSecurityRequirement s_FeedsPublishMessagesSecurityRequirement0 =
new global::Letta.EndPointSecurityRequirement
@@ -92,7 +105,9 @@ partial void ProcessFeedsPublishMessagesResponseContent(
{
var __pathBuilder = new global::Letta.PathBuilder(
path: $"/v1/feeds/{feedId}/messages",
- baseUri: HttpClient.BaseAddress);
+ baseUri: ResolveBaseUri(
+ servers: s_FeedsPublishMessagesServers,
+ defaultBaseUrl: "https://app.letta.com/"));
var __path = __pathBuilder.ToString();
__path = global::Letta.AutoSDKRequestOptionsSupport.AppendQueryParameters(
path: __path,
diff --git a/src/libs/Letta/Generated/Letta.FeedsClient.FeedsSubscribeAgent.g.cs b/src/libs/Letta/Generated/Letta.FeedsClient.FeedsSubscribeAgent.g.cs
index 6e6b2e00..7018aa19 100644
--- a/src/libs/Letta/Generated/Letta.FeedsClient.FeedsSubscribeAgent.g.cs
+++ b/src/libs/Letta/Generated/Letta.FeedsClient.FeedsSubscribeAgent.g.cs
@@ -6,6 +6,19 @@ namespace Letta
public partial class FeedsClient
{
+ private static readonly global::Letta.AutoSDKServer[] s_FeedsSubscribeAgentServers = new global::Letta.AutoSDKServer[]
+ { new global::Letta.AutoSDKServer(
+ id: "https-app-letta-com",
+ name: "Letta Cloud",
+ url: "https://app.letta.com/",
+ description: "Letta Cloud"),
+ new global::Letta.AutoSDKServer(
+ id: "http-localhost",
+ name: "Self-hosted",
+ url: "http://localhost:8283/",
+ description: "Self-hosted"),
+ };
+
private static readonly global::Letta.EndPointSecurityRequirement s_FeedsSubscribeAgentSecurityRequirement0 =
new global::Letta.EndPointSecurityRequirement
@@ -92,7 +105,9 @@ partial void ProcessFeedsSubscribeAgentResponseContent(
{
var __pathBuilder = new global::Letta.PathBuilder(
path: $"/v1/feeds/{feedId}/subscribe",
- baseUri: HttpClient.BaseAddress);
+ baseUri: ResolveBaseUri(
+ servers: s_FeedsSubscribeAgentServers,
+ defaultBaseUrl: "https://app.letta.com/"));
var __path = __pathBuilder.ToString();
__path = global::Letta.AutoSDKRequestOptionsSupport.AppendQueryParameters(
path: __path,
diff --git a/src/libs/Letta/Generated/Letta.FeedsClient.FeedsTriggerSubscription.g.cs b/src/libs/Letta/Generated/Letta.FeedsClient.FeedsTriggerSubscription.g.cs
index ba437f9a..be30b51c 100644
--- a/src/libs/Letta/Generated/Letta.FeedsClient.FeedsTriggerSubscription.g.cs
+++ b/src/libs/Letta/Generated/Letta.FeedsClient.FeedsTriggerSubscription.g.cs
@@ -6,6 +6,19 @@ namespace Letta
public partial class FeedsClient
{
+ private static readonly global::Letta.AutoSDKServer[] s_FeedsTriggerSubscriptionServers = new global::Letta.AutoSDKServer[]
+ { new global::Letta.AutoSDKServer(
+ id: "https-app-letta-com",
+ name: "Letta Cloud",
+ url: "https://app.letta.com/",
+ description: "Letta Cloud"),
+ new global::Letta.AutoSDKServer(
+ id: "http-localhost",
+ name: "Self-hosted",
+ url: "http://localhost:8283/",
+ description: "Self-hosted"),
+ };
+
private static readonly global::Letta.EndPointSecurityRequirement s_FeedsTriggerSubscriptionSecurityRequirement0 =
new global::Letta.EndPointSecurityRequirement
@@ -97,7 +110,9 @@ partial void ProcessFeedsTriggerSubscriptionResponseContent(
{
var __pathBuilder = new global::Letta.PathBuilder(
path: $"/v1/feeds/{feedId}/subscriptions/{subscriptionId}/trigger",
- baseUri: HttpClient.BaseAddress);
+ baseUri: ResolveBaseUri(
+ servers: s_FeedsTriggerSubscriptionServers,
+ defaultBaseUrl: "https://app.letta.com/"));
var __path = __pathBuilder.ToString();
__path = global::Letta.AutoSDKRequestOptionsSupport.AppendQueryParameters(
path: __path,
diff --git a/src/libs/Letta/Generated/Letta.FeedsClient.FeedsUnsubscribeAgent.g.cs b/src/libs/Letta/Generated/Letta.FeedsClient.FeedsUnsubscribeAgent.g.cs
index e3c52203..bdaf80d0 100644
--- a/src/libs/Letta/Generated/Letta.FeedsClient.FeedsUnsubscribeAgent.g.cs
+++ b/src/libs/Letta/Generated/Letta.FeedsClient.FeedsUnsubscribeAgent.g.cs
@@ -6,6 +6,19 @@ namespace Letta
public partial class FeedsClient
{
+ private static readonly global::Letta.AutoSDKServer[] s_FeedsUnsubscribeAgentServers = new global::Letta.AutoSDKServer[]
+ { new global::Letta.AutoSDKServer(
+ id: "https-app-letta-com",
+ name: "Letta Cloud",
+ url: "https://app.letta.com/",
+ description: "Letta Cloud"),
+ new global::Letta.AutoSDKServer(
+ id: "http-localhost",
+ name: "Self-hosted",
+ url: "http://localhost:8283/",
+ description: "Self-hosted"),
+ };
+
private static readonly global::Letta.EndPointSecurityRequirement s_FeedsUnsubscribeAgentSecurityRequirement0 =
new global::Letta.EndPointSecurityRequirement
@@ -92,7 +105,9 @@ partial void ProcessFeedsUnsubscribeAgentResponseContent(
{
var __pathBuilder = new global::Letta.PathBuilder(
path: $"/v1/feeds/{feedId}/unsubscribe",
- baseUri: HttpClient.BaseAddress);
+ baseUri: ResolveBaseUri(
+ servers: s_FeedsUnsubscribeAgentServers,
+ defaultBaseUrl: "https://app.letta.com/"));
var __path = __pathBuilder.ToString();
__path = global::Letta.AutoSDKRequestOptionsSupport.AppendQueryParameters(
path: __path,
diff --git a/src/libs/Letta/Generated/Letta.FeedsClient.FeedsUpdateAllSubscriptionsCron.g.cs b/src/libs/Letta/Generated/Letta.FeedsClient.FeedsUpdateAllSubscriptionsCron.g.cs
index 66487996..d6d5df62 100644
--- a/src/libs/Letta/Generated/Letta.FeedsClient.FeedsUpdateAllSubscriptionsCron.g.cs
+++ b/src/libs/Letta/Generated/Letta.FeedsClient.FeedsUpdateAllSubscriptionsCron.g.cs
@@ -6,6 +6,19 @@ namespace Letta
public partial class FeedsClient
{
+ private static readonly global::Letta.AutoSDKServer[] s_FeedsUpdateAllSubscriptionsCronServers = new global::Letta.AutoSDKServer[]
+ { new global::Letta.AutoSDKServer(
+ id: "https-app-letta-com",
+ name: "Letta Cloud",
+ url: "https://app.letta.com/",
+ description: "Letta Cloud"),
+ new global::Letta.AutoSDKServer(
+ id: "http-localhost",
+ name: "Self-hosted",
+ url: "http://localhost:8283/",
+ description: "Self-hosted"),
+ };
+
private static readonly global::Letta.EndPointSecurityRequirement s_FeedsUpdateAllSubscriptionsCronSecurityRequirement0 =
new global::Letta.EndPointSecurityRequirement
@@ -92,7 +105,9 @@ partial void ProcessFeedsUpdateAllSubscriptionsCronResponseContent(
{
var __pathBuilder = new global::Letta.PathBuilder(
path: $"/v1/feeds/{feedId}/subscriptions/cron",
- baseUri: HttpClient.BaseAddress);
+ baseUri: ResolveBaseUri(
+ servers: s_FeedsUpdateAllSubscriptionsCronServers,
+ defaultBaseUrl: "https://app.letta.com/"));
var __path = __pathBuilder.ToString();
__path = global::Letta.AutoSDKRequestOptionsSupport.AppendQueryParameters(
path: __path,
diff --git a/src/libs/Letta/Generated/Letta.FeedsClient.FeedsUpdateSubscription.g.cs b/src/libs/Letta/Generated/Letta.FeedsClient.FeedsUpdateSubscription.g.cs
index 9f1bd5e7..8095a458 100644
--- a/src/libs/Letta/Generated/Letta.FeedsClient.FeedsUpdateSubscription.g.cs
+++ b/src/libs/Letta/Generated/Letta.FeedsClient.FeedsUpdateSubscription.g.cs
@@ -6,6 +6,19 @@ namespace Letta
public partial class FeedsClient
{
+ private static readonly global::Letta.AutoSDKServer[] s_FeedsUpdateSubscriptionServers = new global::Letta.AutoSDKServer[]
+ { new global::Letta.AutoSDKServer(
+ id: "https-app-letta-com",
+ name: "Letta Cloud",
+ url: "https://app.letta.com/",
+ description: "Letta Cloud"),
+ new global::Letta.AutoSDKServer(
+ id: "http-localhost",
+ name: "Self-hosted",
+ url: "http://localhost:8283/",
+ description: "Self-hosted"),
+ };
+
private static readonly global::Letta.EndPointSecurityRequirement s_FeedsUpdateSubscriptionSecurityRequirement0 =
new global::Letta.EndPointSecurityRequirement
@@ -97,7 +110,9 @@ partial void ProcessFeedsUpdateSubscriptionResponseContent(
{
var __pathBuilder = new global::Letta.PathBuilder(
path: $"/v1/feeds/{feedId}/subscriptions/{subscriptionId}",
- baseUri: HttpClient.BaseAddress);
+ baseUri: ResolveBaseUri(
+ servers: s_FeedsUpdateSubscriptionServers,
+ defaultBaseUrl: "https://app.letta.com/"));
var __path = __pathBuilder.ToString();
__path = global::Letta.AutoSDKRequestOptionsSupport.AppendQueryParameters(
path: __path,
diff --git a/src/libs/Letta/Generated/Letta.FeedsClient.g.cs b/src/libs/Letta/Generated/Letta.FeedsClient.g.cs
index 5f0d713b..ab45ab2f 100644
--- a/src/libs/Letta/Generated/Letta.FeedsClient.g.cs
+++ b/src/libs/Letta/Generated/Letta.FeedsClient.g.cs
@@ -20,7 +20,7 @@ public sealed partial class FeedsClient : global::Letta.IFeedsClient, global::Sy
public global::System.Net.Http.HttpClient HttpClient { get; }
///
- public System.Uri? BaseUri => HttpClient.BaseAddress;
+ public System.Uri? BaseUri => ResolveDisplayedBaseUri();
///
public global::System.Collections.Generic.List Authorizations { get; }
@@ -33,12 +33,43 @@ public sealed partial class FeedsClient : global::Letta.IFeedsClient, global::Sy
///
public global::Letta.AutoSDKClientOptions Options { get; }
+
+
+ internal global::Letta.AutoSDKServerConfiguration AutoSDKServerConfiguration { get; set; } = new global::Letta.AutoSDKServerConfiguration();
///
///
///
public global::System.Text.Json.Serialization.JsonSerializerContext JsonSerializerContext { get; set; } = global::Letta.SourceGenerationContext.Default;
+
+ private static readonly global::Letta.AutoSDKServer[] s_availableServers = new global::Letta.AutoSDKServer[]
+ { new global::Letta.AutoSDKServer(
+ id: "https-app-letta-com",
+ name: "Letta Cloud",
+ url: "https://app.letta.com/",
+ description: "Letta Cloud"),
+ new global::Letta.AutoSDKServer(
+ id: "http-localhost",
+ name: "Self-hosted",
+ url: "http://localhost:8283/",
+ description: "Self-hosted"),
+ };
+
+ ///
+ /// The server options available for this client.
+ ///
+ public global::System.Collections.Generic.IReadOnlyList AvailableServers => s_availableServers;
+
+ ///
+ /// The currently selected server for this client, if any.
+ ///
+ public global::Letta.AutoSDKServer? SelectedServer
+ {
+ get => ResolveSelectedServer();
+ set => SelectServer(value);
+ }
+
///
/// Creates a new instance of the FeedsClient.
/// If no httpClient is provided, a new one will be created.
@@ -85,6 +116,8 @@ public FeedsClient(
Options = options ?? new global::Letta.AutoSDKClientOptions();
_disposeHttpClient = disposeHttpClient;
+ AutoSDKServerConfiguration.ExplicitBaseUri = baseUri ?? httpClient?.BaseAddress;
+
Initialized(HttpClient);
}
@@ -111,5 +144,117 @@ partial void ProcessResponseContent(
global::System.Net.Http.HttpClient client,
global::System.Net.Http.HttpResponseMessage response,
ref string content);
+
+
+ ///
+ /// Selects one of the generated server options by id.
+ ///
+ public bool TrySelectServer(string serverId)
+ {
+ if (string.IsNullOrWhiteSpace(serverId))
+ {
+ return false;
+ }
+
+ foreach (var server in s_availableServers)
+ {
+ if (string.Equals(server.Id, serverId, global::System.StringComparison.OrdinalIgnoreCase))
+ {
+ AutoSDKServerConfiguration.SelectedServer = server;
+ AutoSDKServerConfiguration.ExplicitBaseUri = null;
+ return true;
+ }
+ }
+
+ return false;
+ }
+
+ ///
+ /// Clears the currently selected server.
+ ///
+ public void ClearSelectedServer()
+ {
+ AutoSDKServerConfiguration.SelectedServer = null;
+ }
+
+ private global::Letta.AutoSDKServer? ResolveSelectedServer()
+ {
+ var selectedServer = AutoSDKServerConfiguration.SelectedServer;
+ if (selectedServer is null)
+ {
+ return null;
+ }
+
+ foreach (var server in s_availableServers)
+ {
+ if (string.Equals(server.Id, selectedServer.Id, global::System.StringComparison.Ordinal))
+ {
+ return server;
+ }
+ }
+
+ return null;
+ }
+
+ private void SelectServer(global::Letta.AutoSDKServer? server)
+ {
+ if (server is null)
+ {
+ AutoSDKServerConfiguration.SelectedServer = null;
+ return;
+ }
+
+ foreach (var candidate in s_availableServers)
+ {
+ if (string.Equals(candidate.Id, server.Id, global::System.StringComparison.Ordinal))
+ {
+ AutoSDKServerConfiguration.SelectedServer = candidate;
+ AutoSDKServerConfiguration.ExplicitBaseUri = null;
+ return;
+ }
+ }
+
+ throw new global::System.ArgumentException("The provided server is not available for this client.", nameof(server));
+ }
+
+ private global::System.Uri? ResolveDisplayedBaseUri()
+ {
+ if (AutoSDKServerConfiguration.ExplicitBaseUri is global::System.Uri explicitBaseUri)
+ {
+ return explicitBaseUri;
+ }
+
+ return ResolveSelectedServer()?.Uri ?? HttpClient.BaseAddress;
+ }
+
+ private global::System.Uri? ResolveBaseUri(
+ global::Letta.AutoSDKServer[] servers,
+ string defaultBaseUrl)
+ {
+ if (AutoSDKServerConfiguration.ExplicitBaseUri is global::System.Uri explicitBaseUri)
+ {
+ return explicitBaseUri;
+ }
+
+ if (AutoSDKServerConfiguration.SelectedServer is global::Letta.AutoSDKServer selectedServer)
+ {
+ foreach (var server in servers)
+ {
+ if (string.Equals(server.Id, selectedServer.Id, global::System.StringComparison.Ordinal))
+ {
+ return server.Uri;
+ }
+ }
+ }
+
+ if (servers.Length > 0)
+ {
+ return servers[0].Uri;
+ }
+
+ return string.IsNullOrWhiteSpace(defaultBaseUrl)
+ ? HttpClient.BaseAddress
+ : new global::System.Uri(defaultBaseUrl, global::System.UriKind.RelativeOrAbsolute);
+ }
}
}
\ No newline at end of file
diff --git a/src/libs/Letta/Generated/Letta.FoldersClient.CountFolders.g.cs b/src/libs/Letta/Generated/Letta.FoldersClient.CountFolders.g.cs
index ddded86b..eb17f7d9 100644
--- a/src/libs/Letta/Generated/Letta.FoldersClient.CountFolders.g.cs
+++ b/src/libs/Letta/Generated/Letta.FoldersClient.CountFolders.g.cs
@@ -6,6 +6,19 @@ namespace Letta
public partial class FoldersClient
{
+ private static readonly global::Letta.AutoSDKServer[] s_CountFoldersServers = new global::Letta.AutoSDKServer[]
+ { new global::Letta.AutoSDKServer(
+ id: "https-app-letta-com",
+ name: "Letta Cloud",
+ url: "https://app.letta.com/",
+ description: "Letta Cloud"),
+ new global::Letta.AutoSDKServer(
+ id: "http-localhost",
+ name: "Self-hosted",
+ url: "http://localhost:8283/",
+ description: "Self-hosted"),
+ };
+
private static readonly global::Letta.EndPointSecurityRequirement s_CountFoldersSecurityRequirement0 =
new global::Letta.EndPointSecurityRequirement
@@ -79,7 +92,9 @@ partial void ProcessCountFoldersResponseContent(
{
var __pathBuilder = new global::Letta.PathBuilder(
path: "/v1/folders/count",
- baseUri: HttpClient.BaseAddress);
+ baseUri: ResolveBaseUri(
+ servers: s_CountFoldersServers,
+ defaultBaseUrl: "https://app.letta.com/"));
var __path = __pathBuilder.ToString();
__path = global::Letta.AutoSDKRequestOptionsSupport.AppendQueryParameters(
path: __path,
diff --git a/src/libs/Letta/Generated/Letta.FoldersClient.CreateFolder.g.cs b/src/libs/Letta/Generated/Letta.FoldersClient.CreateFolder.g.cs
index 66e7edd4..e5faa48c 100644
--- a/src/libs/Letta/Generated/Letta.FoldersClient.CreateFolder.g.cs
+++ b/src/libs/Letta/Generated/Letta.FoldersClient.CreateFolder.g.cs
@@ -6,6 +6,19 @@ namespace Letta
public partial class FoldersClient
{
+ private static readonly global::Letta.AutoSDKServer[] s_CreateFolderServers = new global::Letta.AutoSDKServer[]
+ { new global::Letta.AutoSDKServer(
+ id: "https-app-letta-com",
+ name: "Letta Cloud",
+ url: "https://app.letta.com/",
+ description: "Letta Cloud"),
+ new global::Letta.AutoSDKServer(
+ id: "http-localhost",
+ name: "Self-hosted",
+ url: "http://localhost:8283/",
+ description: "Self-hosted"),
+ };
+
private static readonly global::Letta.EndPointSecurityRequirement s_CreateFolderSecurityRequirement0 =
new global::Letta.EndPointSecurityRequirement
@@ -87,7 +100,9 @@ partial void ProcessCreateFolderResponseContent(
{
var __pathBuilder = new global::Letta.PathBuilder(
path: "/v1/folders/",
- baseUri: HttpClient.BaseAddress);
+ baseUri: ResolveBaseUri(
+ servers: s_CreateFolderServers,
+ defaultBaseUrl: "https://app.letta.com/"));
var __path = __pathBuilder.ToString();
__path = global::Letta.AutoSDKRequestOptionsSupport.AppendQueryParameters(
path: __path,
diff --git a/src/libs/Letta/Generated/Letta.FoldersClient.DeleteFileFromFolder.g.cs b/src/libs/Letta/Generated/Letta.FoldersClient.DeleteFileFromFolder.g.cs
index 8caac6b9..c0d03cb3 100644
--- a/src/libs/Letta/Generated/Letta.FoldersClient.DeleteFileFromFolder.g.cs
+++ b/src/libs/Letta/Generated/Letta.FoldersClient.DeleteFileFromFolder.g.cs
@@ -6,6 +6,19 @@ namespace Letta
public partial class FoldersClient
{
+ private static readonly global::Letta.AutoSDKServer[] s_DeleteFileFromFolderServers = new global::Letta.AutoSDKServer[]
+ { new global::Letta.AutoSDKServer(
+ id: "https-app-letta-com",
+ name: "Letta Cloud",
+ url: "https://app.letta.com/",
+ description: "Letta Cloud"),
+ new global::Letta.AutoSDKServer(
+ id: "http-localhost",
+ name: "Self-hosted",
+ url: "http://localhost:8283/",
+ description: "Self-hosted"),
+ };
+
private static readonly global::Letta.EndPointSecurityRequirement s_DeleteFileFromFolderSecurityRequirement0 =
new global::Letta.EndPointSecurityRequirement
@@ -88,7 +101,9 @@ partial void ProcessDeleteFileFromFolderResponse(
{
var __pathBuilder = new global::Letta.PathBuilder(
path: $"/v1/folders/{folderId}/{fileId}",
- baseUri: HttpClient.BaseAddress);
+ baseUri: ResolveBaseUri(
+ servers: s_DeleteFileFromFolderServers,
+ defaultBaseUrl: "https://app.letta.com/"));
var __path = __pathBuilder.ToString();
__path = global::Letta.AutoSDKRequestOptionsSupport.AppendQueryParameters(
path: __path,
diff --git a/src/libs/Letta/Generated/Letta.FoldersClient.DeleteFolder.g.cs b/src/libs/Letta/Generated/Letta.FoldersClient.DeleteFolder.g.cs
index d7f872da..15a42e88 100644
--- a/src/libs/Letta/Generated/Letta.FoldersClient.DeleteFolder.g.cs
+++ b/src/libs/Letta/Generated/Letta.FoldersClient.DeleteFolder.g.cs
@@ -6,6 +6,19 @@ namespace Letta
public partial class FoldersClient
{
+ private static readonly global::Letta.AutoSDKServer[] s_DeleteFolderServers = new global::Letta.AutoSDKServer[]
+ { new global::Letta.AutoSDKServer(
+ id: "https-app-letta-com",
+ name: "Letta Cloud",
+ url: "https://app.letta.com/",
+ description: "Letta Cloud"),
+ new global::Letta.AutoSDKServer(
+ id: "http-localhost",
+ name: "Self-hosted",
+ url: "http://localhost:8283/",
+ description: "Self-hosted"),
+ };
+
private static readonly global::Letta.EndPointSecurityRequirement s_DeleteFolderSecurityRequirement0 =
new global::Letta.EndPointSecurityRequirement
@@ -86,7 +99,9 @@ partial void ProcessDeleteFolderResponseContent(
{
var __pathBuilder = new global::Letta.PathBuilder(
path: $"/v1/folders/{folderId}",
- baseUri: HttpClient.BaseAddress);
+ baseUri: ResolveBaseUri(
+ servers: s_DeleteFolderServers,
+ defaultBaseUrl: "https://app.letta.com/"));
var __path = __pathBuilder.ToString();
__path = global::Letta.AutoSDKRequestOptionsSupport.AppendQueryParameters(
path: __path,
diff --git a/src/libs/Letta/Generated/Letta.FoldersClient.ListAgentsForFolder.g.cs b/src/libs/Letta/Generated/Letta.FoldersClient.ListAgentsForFolder.g.cs
index 9fe6a0f1..e68da494 100644
--- a/src/libs/Letta/Generated/Letta.FoldersClient.ListAgentsForFolder.g.cs
+++ b/src/libs/Letta/Generated/Letta.FoldersClient.ListAgentsForFolder.g.cs
@@ -6,6 +6,19 @@ namespace Letta
public partial class FoldersClient
{
+ private static readonly global::Letta.AutoSDKServer[] s_ListAgentsForFolderServers = new global::Letta.AutoSDKServer[]
+ { new global::Letta.AutoSDKServer(
+ id: "https-app-letta-com",
+ name: "Letta Cloud",
+ url: "https://app.letta.com/",
+ description: "Letta Cloud"),
+ new global::Letta.AutoSDKServer(
+ id: "http-localhost",
+ name: "Self-hosted",
+ url: "http://localhost:8283/",
+ description: "Self-hosted"),
+ };
+
private static readonly global::Letta.EndPointSecurityRequirement s_ListAgentsForFolderSecurityRequirement0 =
new global::Letta.EndPointSecurityRequirement
@@ -124,7 +137,9 @@ partial void ProcessListAgentsForFolderResponseContent(
{
var __pathBuilder = new global::Letta.PathBuilder(
path: $"/v1/folders/{folderId}/agents",
- baseUri: HttpClient.BaseAddress);
+ baseUri: ResolveBaseUri(
+ servers: s_ListAgentsForFolderServers,
+ defaultBaseUrl: "https://app.letta.com/"));
__pathBuilder
.AddOptionalParameter("before", before)
.AddOptionalParameter("after", after)
diff --git a/src/libs/Letta/Generated/Letta.FoldersClient.ListFilesForFolder.g.cs b/src/libs/Letta/Generated/Letta.FoldersClient.ListFilesForFolder.g.cs
index 3885bf16..dfa3f7bd 100644
--- a/src/libs/Letta/Generated/Letta.FoldersClient.ListFilesForFolder.g.cs
+++ b/src/libs/Letta/Generated/Letta.FoldersClient.ListFilesForFolder.g.cs
@@ -6,6 +6,19 @@ namespace Letta
public partial class FoldersClient
{
+ private static readonly global::Letta.AutoSDKServer[] s_ListFilesForFolderServers = new global::Letta.AutoSDKServer[]
+ { new global::Letta.AutoSDKServer(
+ id: "https-app-letta-com",
+ name: "Letta Cloud",
+ url: "https://app.letta.com/",
+ description: "Letta Cloud"),
+ new global::Letta.AutoSDKServer(
+ id: "http-localhost",
+ name: "Self-hosted",
+ url: "http://localhost:8283/",
+ description: "Self-hosted"),
+ };
+
private static readonly global::Letta.EndPointSecurityRequirement s_ListFilesForFolderSecurityRequirement0 =
new global::Letta.EndPointSecurityRequirement
@@ -132,7 +145,9 @@ partial void ProcessListFilesForFolderResponseContent(
{
var __pathBuilder = new global::Letta.PathBuilder(
path: $"/v1/folders/{folderId}/files",
- baseUri: HttpClient.BaseAddress);
+ baseUri: ResolveBaseUri(
+ servers: s_ListFilesForFolderServers,
+ defaultBaseUrl: "https://app.letta.com/"));
__pathBuilder
.AddOptionalParameter("before", before)
.AddOptionalParameter("after", after)
diff --git a/src/libs/Letta/Generated/Letta.FoldersClient.ListFolderPassages.g.cs b/src/libs/Letta/Generated/Letta.FoldersClient.ListFolderPassages.g.cs
index 8d0a5ea9..477d97b3 100644
--- a/src/libs/Letta/Generated/Letta.FoldersClient.ListFolderPassages.g.cs
+++ b/src/libs/Letta/Generated/Letta.FoldersClient.ListFolderPassages.g.cs
@@ -6,6 +6,19 @@ namespace Letta
public partial class FoldersClient
{
+ private static readonly global::Letta.AutoSDKServer[] s_ListFolderPassagesServers = new global::Letta.AutoSDKServer[]
+ { new global::Letta.AutoSDKServer(
+ id: "https-app-letta-com",
+ name: "Letta Cloud",
+ url: "https://app.letta.com/",
+ description: "Letta Cloud"),
+ new global::Letta.AutoSDKServer(
+ id: "http-localhost",
+ name: "Self-hosted",
+ url: "http://localhost:8283/",
+ description: "Self-hosted"),
+ };
+
private static readonly global::Letta.EndPointSecurityRequirement s_ListFolderPassagesSecurityRequirement0 =
new global::Letta.EndPointSecurityRequirement
@@ -124,7 +137,9 @@ partial void ProcessListFolderPassagesResponseContent(
{
var __pathBuilder = new global::Letta.PathBuilder(
path: $"/v1/folders/{folderId}/passages",
- baseUri: HttpClient.BaseAddress);
+ baseUri: ResolveBaseUri(
+ servers: s_ListFolderPassagesServers,
+ defaultBaseUrl: "https://app.letta.com/"));
__pathBuilder
.AddOptionalParameter("before", before)
.AddOptionalParameter("after", after)
diff --git a/src/libs/Letta/Generated/Letta.FoldersClient.ListFolders.g.cs b/src/libs/Letta/Generated/Letta.FoldersClient.ListFolders.g.cs
index 7ef3b82c..9c97327f 100644
--- a/src/libs/Letta/Generated/Letta.FoldersClient.ListFolders.g.cs
+++ b/src/libs/Letta/Generated/Letta.FoldersClient.ListFolders.g.cs
@@ -6,6 +6,19 @@ namespace Letta
public partial class FoldersClient
{
+ private static readonly global::Letta.AutoSDKServer[] s_ListFoldersServers = new global::Letta.AutoSDKServer[]
+ { new global::Letta.AutoSDKServer(
+ id: "https-app-letta-com",
+ name: "Letta Cloud",
+ url: "https://app.letta.com/",
+ description: "Letta Cloud"),
+ new global::Letta.AutoSDKServer(
+ id: "http-localhost",
+ name: "Self-hosted",
+ url: "http://localhost:8283/",
+ description: "Self-hosted"),
+ };
+
private static readonly global::Letta.EndPointSecurityRequirement s_ListFoldersSecurityRequirement0 =
new global::Letta.EndPointSecurityRequirement
@@ -124,7 +137,9 @@ partial void ProcessListFoldersResponseContent(
{
var __pathBuilder = new global::Letta.PathBuilder(
path: "/v1/folders/",
- baseUri: HttpClient.BaseAddress);
+ baseUri: ResolveBaseUri(
+ servers: s_ListFoldersServers,
+ defaultBaseUrl: "https://app.letta.com/"));
__pathBuilder
.AddOptionalParameter("before", before)
.AddOptionalParameter("after", after)
diff --git a/src/libs/Letta/Generated/Letta.FoldersClient.ModifyFolder.g.cs b/src/libs/Letta/Generated/Letta.FoldersClient.ModifyFolder.g.cs
index 6965ada6..29a5e454 100644
--- a/src/libs/Letta/Generated/Letta.FoldersClient.ModifyFolder.g.cs
+++ b/src/libs/Letta/Generated/Letta.FoldersClient.ModifyFolder.g.cs
@@ -6,6 +6,19 @@ namespace Letta
public partial class FoldersClient
{
+ private static readonly global::Letta.AutoSDKServer[] s_ModifyFolderServers = new global::Letta.AutoSDKServer[]
+ { new global::Letta.AutoSDKServer(
+ id: "https-app-letta-com",
+ name: "Letta Cloud",
+ url: "https://app.letta.com/",
+ description: "Letta Cloud"),
+ new global::Letta.AutoSDKServer(
+ id: "http-localhost",
+ name: "Self-hosted",
+ url: "http://localhost:8283/",
+ description: "Self-hosted"),
+ };
+
private static readonly global::Letta.EndPointSecurityRequirement s_ModifyFolderSecurityRequirement0 =
new global::Letta.EndPointSecurityRequirement
@@ -94,7 +107,9 @@ partial void ProcessModifyFolderResponseContent(
{
var __pathBuilder = new global::Letta.PathBuilder(
path: $"/v1/folders/{folderId}",
- baseUri: HttpClient.BaseAddress);
+ baseUri: ResolveBaseUri(
+ servers: s_ModifyFolderServers,
+ defaultBaseUrl: "https://app.letta.com/"));
var __path = __pathBuilder.ToString();
__path = global::Letta.AutoSDKRequestOptionsSupport.AppendQueryParameters(
path: __path,
diff --git a/src/libs/Letta/Generated/Letta.FoldersClient.RetrieveFile.g.cs b/src/libs/Letta/Generated/Letta.FoldersClient.RetrieveFile.g.cs
index a6d7a088..7fc9df12 100644
--- a/src/libs/Letta/Generated/Letta.FoldersClient.RetrieveFile.g.cs
+++ b/src/libs/Letta/Generated/Letta.FoldersClient.RetrieveFile.g.cs
@@ -6,6 +6,19 @@ namespace Letta
public partial class FoldersClient
{
+ private static readonly global::Letta.AutoSDKServer[] s_RetrieveFileServers = new global::Letta.AutoSDKServer[]
+ { new global::Letta.AutoSDKServer(
+ id: "https-app-letta-com",
+ name: "Letta Cloud",
+ url: "https://app.letta.com/",
+ description: "Letta Cloud"),
+ new global::Letta.AutoSDKServer(
+ id: "http-localhost",
+ name: "Self-hosted",
+ url: "http://localhost:8283/",
+ description: "Self-hosted"),
+ };
+
private static readonly global::Letta.EndPointSecurityRequirement s_RetrieveFileSecurityRequirement0 =
new global::Letta.EndPointSecurityRequirement
@@ -101,7 +114,9 @@ partial void ProcessRetrieveFileResponseContent(
{
var __pathBuilder = new global::Letta.PathBuilder(
path: $"/v1/folders/{folderId}/files/{fileId}",
- baseUri: HttpClient.BaseAddress);
+ baseUri: ResolveBaseUri(
+ servers: s_RetrieveFileServers,
+ defaultBaseUrl: "https://app.letta.com/"));
__pathBuilder
.AddOptionalParameter("include_content", includeContent?.ToString().ToLowerInvariant())
;
diff --git a/src/libs/Letta/Generated/Letta.FoldersClient.RetrieveFolder.g.cs b/src/libs/Letta/Generated/Letta.FoldersClient.RetrieveFolder.g.cs
index 7b5743c8..7fe7dfde 100644
--- a/src/libs/Letta/Generated/Letta.FoldersClient.RetrieveFolder.g.cs
+++ b/src/libs/Letta/Generated/Letta.FoldersClient.RetrieveFolder.g.cs
@@ -6,6 +6,19 @@ namespace Letta
public partial class FoldersClient
{
+ private static readonly global::Letta.AutoSDKServer[] s_RetrieveFolderServers = new global::Letta.AutoSDKServer[]
+ { new global::Letta.AutoSDKServer(
+ id: "https-app-letta-com",
+ name: "Letta Cloud",
+ url: "https://app.letta.com/",
+ description: "Letta Cloud"),
+ new global::Letta.AutoSDKServer(
+ id: "http-localhost",
+ name: "Self-hosted",
+ url: "http://localhost:8283/",
+ description: "Self-hosted"),
+ };
+
private static readonly global::Letta.EndPointSecurityRequirement s_RetrieveFolderSecurityRequirement0 =
new global::Letta.EndPointSecurityRequirement
@@ -86,7 +99,9 @@ partial void ProcessRetrieveFolderResponseContent(
{
var __pathBuilder = new global::Letta.PathBuilder(
path: $"/v1/folders/{folderId}",
- baseUri: HttpClient.BaseAddress);
+ baseUri: ResolveBaseUri(
+ servers: s_RetrieveFolderServers,
+ defaultBaseUrl: "https://app.letta.com/"));
var __path = __pathBuilder.ToString();
__path = global::Letta.AutoSDKRequestOptionsSupport.AppendQueryParameters(
path: __path,
diff --git a/src/libs/Letta/Generated/Letta.FoldersClient.RetrieveMetadata.g.cs b/src/libs/Letta/Generated/Letta.FoldersClient.RetrieveMetadata.g.cs
index 8382cf89..cd410b5c 100644
--- a/src/libs/Letta/Generated/Letta.FoldersClient.RetrieveMetadata.g.cs
+++ b/src/libs/Letta/Generated/Letta.FoldersClient.RetrieveMetadata.g.cs
@@ -6,6 +6,19 @@ namespace Letta
public partial class FoldersClient
{
+ private static readonly global::Letta.AutoSDKServer[] s_RetrieveMetadataServers = new global::Letta.AutoSDKServer[]
+ { new global::Letta.AutoSDKServer(
+ id: "https-app-letta-com",
+ name: "Letta Cloud",
+ url: "https://app.letta.com/",
+ description: "Letta Cloud"),
+ new global::Letta.AutoSDKServer(
+ id: "http-localhost",
+ name: "Self-hosted",
+ url: "http://localhost:8283/",
+ description: "Self-hosted"),
+ };
+
private static readonly global::Letta.EndPointSecurityRequirement s_RetrieveMetadataSecurityRequirement0 =
new global::Letta.EndPointSecurityRequirement
@@ -91,7 +104,9 @@ partial void ProcessRetrieveMetadataResponseContent(
{
var __pathBuilder = new global::Letta.PathBuilder(
path: "/v1/folders/metadata",
- baseUri: HttpClient.BaseAddress);
+ baseUri: ResolveBaseUri(
+ servers: s_RetrieveMetadataServers,
+ defaultBaseUrl: "https://app.letta.com/"));
__pathBuilder
.AddOptionalParameter("include_detailed_per_source_metadata", includeDetailedPerSourceMetadata?.ToString().ToLowerInvariant())
;
diff --git a/src/libs/Letta/Generated/Letta.FoldersClient.UploadFileToFolder.g.cs b/src/libs/Letta/Generated/Letta.FoldersClient.UploadFileToFolder.g.cs
index 534c80a5..a379fabe 100644
--- a/src/libs/Letta/Generated/Letta.FoldersClient.UploadFileToFolder.g.cs
+++ b/src/libs/Letta/Generated/Letta.FoldersClient.UploadFileToFolder.g.cs
@@ -6,6 +6,19 @@ namespace Letta
public partial class FoldersClient
{
+ private static readonly global::Letta.AutoSDKServer[] s_UploadFileToFolderServers = new global::Letta.AutoSDKServer[]
+ { new global::Letta.AutoSDKServer(
+ id: "https-app-letta-com",
+ name: "Letta Cloud",
+ url: "https://app.letta.com/",
+ description: "Letta Cloud"),
+ new global::Letta.AutoSDKServer(
+ id: "http-localhost",
+ name: "Self-hosted",
+ url: "http://localhost:8283/",
+ description: "Self-hosted"),
+ };
+
private static readonly global::Letta.EndPointSecurityRequirement s_UploadFileToFolderSecurityRequirement0 =
new global::Letta.EndPointSecurityRequirement
@@ -109,7 +122,9 @@ partial void ProcessUploadFileToFolderResponseContent(
{
var __pathBuilder = new global::Letta.PathBuilder(
path: $"/v1/folders/{folderId}/upload",
- baseUri: HttpClient.BaseAddress);
+ baseUri: ResolveBaseUri(
+ servers: s_UploadFileToFolderServers,
+ defaultBaseUrl: "https://app.letta.com/"));
__pathBuilder
.AddOptionalParameter("duplicate_handling", duplicateHandling?.ToValueString())
.AddOptionalParameter("name", name)
diff --git a/src/libs/Letta/Generated/Letta.FoldersClient.g.cs b/src/libs/Letta/Generated/Letta.FoldersClient.g.cs
index 56e900bf..a3a22297 100644
--- a/src/libs/Letta/Generated/Letta.FoldersClient.g.cs
+++ b/src/libs/Letta/Generated/Letta.FoldersClient.g.cs
@@ -20,7 +20,7 @@ public sealed partial class FoldersClient : global::Letta.IFoldersClient, global
public global::System.Net.Http.HttpClient HttpClient { get; }
///
- public System.Uri? BaseUri => HttpClient.BaseAddress;
+ public System.Uri? BaseUri => ResolveDisplayedBaseUri();
///
public global::System.Collections.Generic.List Authorizations { get; }
@@ -33,12 +33,43 @@ public sealed partial class FoldersClient : global::Letta.IFoldersClient, global
///
public global::Letta.AutoSDKClientOptions Options { get; }
+
+
+ internal global::Letta.AutoSDKServerConfiguration AutoSDKServerConfiguration { get; set; } = new global::Letta.AutoSDKServerConfiguration();
///
///
///
public global::System.Text.Json.Serialization.JsonSerializerContext JsonSerializerContext { get; set; } = global::Letta.SourceGenerationContext.Default;
+
+ private static readonly global::Letta.AutoSDKServer[] s_availableServers = new global::Letta.AutoSDKServer[]
+ { new global::Letta.AutoSDKServer(
+ id: "https-app-letta-com",
+ name: "Letta Cloud",
+ url: "https://app.letta.com/",
+ description: "Letta Cloud"),
+ new global::Letta.AutoSDKServer(
+ id: "http-localhost",
+ name: "Self-hosted",
+ url: "http://localhost:8283/",
+ description: "Self-hosted"),
+ };
+
+ ///
+ /// The server options available for this client.
+ ///
+ public global::System.Collections.Generic.IReadOnlyList AvailableServers => s_availableServers;
+
+ ///
+ /// The currently selected server for this client, if any.
+ ///
+ public global::Letta.AutoSDKServer? SelectedServer
+ {
+ get => ResolveSelectedServer();
+ set => SelectServer(value);
+ }
+
///
/// Creates a new instance of the FoldersClient.
/// If no httpClient is provided, a new one will be created.
@@ -85,6 +116,8 @@ public FoldersClient(
Options = options ?? new global::Letta.AutoSDKClientOptions();
_disposeHttpClient = disposeHttpClient;
+ AutoSDKServerConfiguration.ExplicitBaseUri = baseUri ?? httpClient?.BaseAddress;
+
Initialized(HttpClient);
}
@@ -111,5 +144,117 @@ partial void ProcessResponseContent(
global::System.Net.Http.HttpClient client,
global::System.Net.Http.HttpResponseMessage response,
ref string content);
+
+
+ ///
+ /// Selects one of the generated server options by id.
+ ///
+ public bool TrySelectServer(string serverId)
+ {
+ if (string.IsNullOrWhiteSpace(serverId))
+ {
+ return false;
+ }
+
+ foreach (var server in s_availableServers)
+ {
+ if (string.Equals(server.Id, serverId, global::System.StringComparison.OrdinalIgnoreCase))
+ {
+ AutoSDKServerConfiguration.SelectedServer = server;
+ AutoSDKServerConfiguration.ExplicitBaseUri = null;
+ return true;
+ }
+ }
+
+ return false;
+ }
+
+ ///
+ /// Clears the currently selected server.
+ ///
+ public void ClearSelectedServer()
+ {
+ AutoSDKServerConfiguration.SelectedServer = null;
+ }
+
+ private global::Letta.AutoSDKServer? ResolveSelectedServer()
+ {
+ var selectedServer = AutoSDKServerConfiguration.SelectedServer;
+ if (selectedServer is null)
+ {
+ return null;
+ }
+
+ foreach (var server in s_availableServers)
+ {
+ if (string.Equals(server.Id, selectedServer.Id, global::System.StringComparison.Ordinal))
+ {
+ return server;
+ }
+ }
+
+ return null;
+ }
+
+ private void SelectServer(global::Letta.AutoSDKServer? server)
+ {
+ if (server is null)
+ {
+ AutoSDKServerConfiguration.SelectedServer = null;
+ return;
+ }
+
+ foreach (var candidate in s_availableServers)
+ {
+ if (string.Equals(candidate.Id, server.Id, global::System.StringComparison.Ordinal))
+ {
+ AutoSDKServerConfiguration.SelectedServer = candidate;
+ AutoSDKServerConfiguration.ExplicitBaseUri = null;
+ return;
+ }
+ }
+
+ throw new global::System.ArgumentException("The provided server is not available for this client.", nameof(server));
+ }
+
+ private global::System.Uri? ResolveDisplayedBaseUri()
+ {
+ if (AutoSDKServerConfiguration.ExplicitBaseUri is global::System.Uri explicitBaseUri)
+ {
+ return explicitBaseUri;
+ }
+
+ return ResolveSelectedServer()?.Uri ?? HttpClient.BaseAddress;
+ }
+
+ private global::System.Uri? ResolveBaseUri(
+ global::Letta.AutoSDKServer[] servers,
+ string defaultBaseUrl)
+ {
+ if (AutoSDKServerConfiguration.ExplicitBaseUri is global::System.Uri explicitBaseUri)
+ {
+ return explicitBaseUri;
+ }
+
+ if (AutoSDKServerConfiguration.SelectedServer is global::Letta.AutoSDKServer selectedServer)
+ {
+ foreach (var server in servers)
+ {
+ if (string.Equals(server.Id, selectedServer.Id, global::System.StringComparison.Ordinal))
+ {
+ return server.Uri;
+ }
+ }
+ }
+
+ if (servers.Length > 0)
+ {
+ return servers[0].Uri;
+ }
+
+ return string.IsNullOrWhiteSpace(defaultBaseUrl)
+ ? HttpClient.BaseAddress
+ : new global::System.Uri(defaultBaseUrl, global::System.UriKind.RelativeOrAbsolute);
+ }
}
}
\ No newline at end of file
diff --git a/src/libs/Letta/Generated/Letta.HealthClient.CheckHealth.g.cs b/src/libs/Letta/Generated/Letta.HealthClient.CheckHealth.g.cs
index 5cc3b7a9..14fd301e 100644
--- a/src/libs/Letta/Generated/Letta.HealthClient.CheckHealth.g.cs
+++ b/src/libs/Letta/Generated/Letta.HealthClient.CheckHealth.g.cs
@@ -6,6 +6,19 @@ namespace Letta
public partial class HealthClient
{
+ private static readonly global::Letta.AutoSDKServer[] s_CheckHealthServers = new global::Letta.AutoSDKServer[]
+ { new global::Letta.AutoSDKServer(
+ id: "https-app-letta-com",
+ name: "Letta Cloud",
+ url: "https://app.letta.com/",
+ description: "Letta Cloud"),
+ new global::Letta.AutoSDKServer(
+ id: "http-localhost",
+ name: "Self-hosted",
+ url: "http://localhost:8283/",
+ description: "Self-hosted"),
+ };
+
private static readonly global::Letta.EndPointSecurityRequirement s_CheckHealthSecurityRequirement0 =
new global::Letta.EndPointSecurityRequirement
@@ -79,7 +92,9 @@ partial void ProcessCheckHealthResponseContent(
{
var __pathBuilder = new global::Letta.PathBuilder(
path: "/v1/health/",
- baseUri: HttpClient.BaseAddress);
+ baseUri: ResolveBaseUri(
+ servers: s_CheckHealthServers,
+ defaultBaseUrl: "https://app.letta.com/"));
var __path = __pathBuilder.ToString();
__path = global::Letta.AutoSDKRequestOptionsSupport.AppendQueryParameters(
path: __path,
diff --git a/src/libs/Letta/Generated/Letta.HealthClient.CheckReadiness.g.cs b/src/libs/Letta/Generated/Letta.HealthClient.CheckReadiness.g.cs
index 6a74bbd4..1b221e78 100644
--- a/src/libs/Letta/Generated/Letta.HealthClient.CheckReadiness.g.cs
+++ b/src/libs/Letta/Generated/Letta.HealthClient.CheckReadiness.g.cs
@@ -6,6 +6,19 @@ namespace Letta
public partial class HealthClient
{
+ private static readonly global::Letta.AutoSDKServer[] s_CheckReadinessServers = new global::Letta.AutoSDKServer[]
+ { new global::Letta.AutoSDKServer(
+ id: "https-app-letta-com",
+ name: "Letta Cloud",
+ url: "https://app.letta.com/",
+ description: "Letta Cloud"),
+ new global::Letta.AutoSDKServer(
+ id: "http-localhost",
+ name: "Self-hosted",
+ url: "http://localhost:8283/",
+ description: "Self-hosted"),
+ };
+
private static readonly global::Letta.EndPointSecurityRequirement s_CheckReadinessSecurityRequirement0 =
new global::Letta.EndPointSecurityRequirement
@@ -79,7 +92,9 @@ partial void ProcessCheckReadinessResponseContent(
{
var __pathBuilder = new global::Letta.PathBuilder(
path: "/v1/ready/",
- baseUri: HttpClient.BaseAddress);
+ baseUri: ResolveBaseUri(
+ servers: s_CheckReadinessServers,
+ defaultBaseUrl: "https://app.letta.com/"));
var __path = __pathBuilder.ToString();
__path = global::Letta.AutoSDKRequestOptionsSupport.AppendQueryParameters(
path: __path,
diff --git a/src/libs/Letta/Generated/Letta.HealthClient.g.cs b/src/libs/Letta/Generated/Letta.HealthClient.g.cs
index bf3945f7..eabcbb3c 100644
--- a/src/libs/Letta/Generated/Letta.HealthClient.g.cs
+++ b/src/libs/Letta/Generated/Letta.HealthClient.g.cs
@@ -20,7 +20,7 @@ public sealed partial class HealthClient : global::Letta.IHealthClient, global::
public global::System.Net.Http.HttpClient HttpClient { get; }
///
- public System.Uri? BaseUri => HttpClient.BaseAddress;
+ public System.Uri? BaseUri => ResolveDisplayedBaseUri();
///
public global::System.Collections.Generic.List Authorizations { get; }
@@ -33,12 +33,43 @@ public sealed partial class HealthClient : global::Letta.IHealthClient, global::
///
public global::Letta.AutoSDKClientOptions Options { get; }
+
+
+ internal global::Letta.AutoSDKServerConfiguration AutoSDKServerConfiguration { get; set; } = new global::Letta.AutoSDKServerConfiguration();
///
///
///
public global::System.Text.Json.Serialization.JsonSerializerContext JsonSerializerContext { get; set; } = global::Letta.SourceGenerationContext.Default;
+
+ private static readonly global::Letta.AutoSDKServer[] s_availableServers = new global::Letta.AutoSDKServer[]
+ { new global::Letta.AutoSDKServer(
+ id: "https-app-letta-com",
+ name: "Letta Cloud",
+ url: "https://app.letta.com/",
+ description: "Letta Cloud"),
+ new global::Letta.AutoSDKServer(
+ id: "http-localhost",
+ name: "Self-hosted",
+ url: "http://localhost:8283/",
+ description: "Self-hosted"),
+ };
+
+ ///
+ /// The server options available for this client.
+ ///
+ public global::System.Collections.Generic.IReadOnlyList AvailableServers => s_availableServers;
+
+ ///
+ /// The currently selected server for this client, if any.
+ ///
+ public global::Letta.AutoSDKServer? SelectedServer
+ {
+ get => ResolveSelectedServer();
+ set => SelectServer(value);
+ }
+
///
/// Creates a new instance of the HealthClient.
/// If no httpClient is provided, a new one will be created.
@@ -85,6 +116,8 @@ public HealthClient(
Options = options ?? new global::Letta.AutoSDKClientOptions();
_disposeHttpClient = disposeHttpClient;
+ AutoSDKServerConfiguration.ExplicitBaseUri = baseUri ?? httpClient?.BaseAddress;
+
Initialized(HttpClient);
}
@@ -111,5 +144,117 @@ partial void ProcessResponseContent(
global::System.Net.Http.HttpClient client,
global::System.Net.Http.HttpResponseMessage response,
ref string content);
+
+
+ ///
+ /// Selects one of the generated server options by id.
+ ///
+ public bool TrySelectServer(string serverId)
+ {
+ if (string.IsNullOrWhiteSpace(serverId))
+ {
+ return false;
+ }
+
+ foreach (var server in s_availableServers)
+ {
+ if (string.Equals(server.Id, serverId, global::System.StringComparison.OrdinalIgnoreCase))
+ {
+ AutoSDKServerConfiguration.SelectedServer = server;
+ AutoSDKServerConfiguration.ExplicitBaseUri = null;
+ return true;
+ }
+ }
+
+ return false;
+ }
+
+ ///
+ /// Clears the currently selected server.
+ ///
+ public void ClearSelectedServer()
+ {
+ AutoSDKServerConfiguration.SelectedServer = null;
+ }
+
+ private global::Letta.AutoSDKServer? ResolveSelectedServer()
+ {
+ var selectedServer = AutoSDKServerConfiguration.SelectedServer;
+ if (selectedServer is null)
+ {
+ return null;
+ }
+
+ foreach (var server in s_availableServers)
+ {
+ if (string.Equals(server.Id, selectedServer.Id, global::System.StringComparison.Ordinal))
+ {
+ return server;
+ }
+ }
+
+ return null;
+ }
+
+ private void SelectServer(global::Letta.AutoSDKServer? server)
+ {
+ if (server is null)
+ {
+ AutoSDKServerConfiguration.SelectedServer = null;
+ return;
+ }
+
+ foreach (var candidate in s_availableServers)
+ {
+ if (string.Equals(candidate.Id, server.Id, global::System.StringComparison.Ordinal))
+ {
+ AutoSDKServerConfiguration.SelectedServer = candidate;
+ AutoSDKServerConfiguration.ExplicitBaseUri = null;
+ return;
+ }
+ }
+
+ throw new global::System.ArgumentException("The provided server is not available for this client.", nameof(server));
+ }
+
+ private global::System.Uri? ResolveDisplayedBaseUri()
+ {
+ if (AutoSDKServerConfiguration.ExplicitBaseUri is global::System.Uri explicitBaseUri)
+ {
+ return explicitBaseUri;
+ }
+
+ return ResolveSelectedServer()?.Uri ?? HttpClient.BaseAddress;
+ }
+
+ private global::System.Uri? ResolveBaseUri(
+ global::Letta.AutoSDKServer[] servers,
+ string defaultBaseUrl)
+ {
+ if (AutoSDKServerConfiguration.ExplicitBaseUri is global::System.Uri explicitBaseUri)
+ {
+ return explicitBaseUri;
+ }
+
+ if (AutoSDKServerConfiguration.SelectedServer is global::Letta.AutoSDKServer selectedServer)
+ {
+ foreach (var server in servers)
+ {
+ if (string.Equals(server.Id, selectedServer.Id, global::System.StringComparison.Ordinal))
+ {
+ return server.Uri;
+ }
+ }
+ }
+
+ if (servers.Length > 0)
+ {
+ return servers[0].Uri;
+ }
+
+ return string.IsNullOrWhiteSpace(defaultBaseUrl)
+ ? HttpClient.BaseAddress
+ : new global::System.Uri(defaultBaseUrl, global::System.UriKind.RelativeOrAbsolute);
+ }
}
}
\ No newline at end of file
diff --git a/src/libs/Letta/Generated/Letta.IAgentsClient.g.cs b/src/libs/Letta/Generated/Letta.IAgentsClient.g.cs
index ed210642..39255f75 100644
--- a/src/libs/Letta/Generated/Letta.IAgentsClient.g.cs
+++ b/src/libs/Letta/Generated/Letta.IAgentsClient.g.cs
@@ -19,6 +19,27 @@ public partial interface IAgentsClient : global::System.IDisposable
///
public System.Uri? BaseUri { get; }
+
+ ///
+ /// The server options available for this client.
+ ///
+ public global::System.Collections.Generic.IReadOnlyList AvailableServers { get; }
+
+ ///
+ /// The currently selected server for this client, if any.
+ ///
+ public global::Letta.AutoSDKServer? SelectedServer { get; set; }
+
+ ///
+ /// Selects one of the generated server options by id.
+ ///
+ public bool TrySelectServer(string serverId);
+
+ ///
+ /// Clears the currently selected server.
+ ///
+ public void ClearSelectedServer();
+
///
/// The authorizations to use for the requests.
///
@@ -32,12 +53,12 @@ public partial interface IAgentsClient : global::System.IDisposable
/// ensuring is populated.
///
public bool ReadResponseAsString { get; set; }
-
///
/// Client-wide request defaults such as headers, query parameters, retries, and timeout.
///
public global::Letta.AutoSDKClientOptions Options { get; }
+
///
///
///
diff --git a/src/libs/Letta/Generated/Letta.IArchivesClient.g.cs b/src/libs/Letta/Generated/Letta.IArchivesClient.g.cs
index 95208e10..d4b1aaea 100644
--- a/src/libs/Letta/Generated/Letta.IArchivesClient.g.cs
+++ b/src/libs/Letta/Generated/Letta.IArchivesClient.g.cs
@@ -19,6 +19,27 @@ public partial interface IArchivesClient : global::System.IDisposable
///
public System.Uri? BaseUri { get; }
+
+ ///
+ /// The server options available for this client.
+ ///
+ public global::System.Collections.Generic.IReadOnlyList AvailableServers { get; }
+
+ ///
+ /// The currently selected server for this client, if any.
+ ///
+ public global::Letta.AutoSDKServer? SelectedServer { get; set; }
+
+ ///
+ /// Selects one of the generated server options by id.
+ ///
+ public bool TrySelectServer(string serverId);
+
+ ///
+ /// Clears the currently selected server.
+ ///
+ public void ClearSelectedServer();
+
///
/// The authorizations to use for the requests.
///
@@ -32,12 +53,12 @@ public partial interface IArchivesClient : global::System.IDisposable
/// ensuring is populated.
///
public bool ReadResponseAsString { get; set; }
-
///
/// Client-wide request defaults such as headers, query parameters, retries, and timeout.
///
public global::Letta.AutoSDKClientOptions Options { get; }
+
///
///
///
diff --git a/src/libs/Letta/Generated/Letta.IBlocksClient.g.cs b/src/libs/Letta/Generated/Letta.IBlocksClient.g.cs
index 82413991..6688dc5f 100644
--- a/src/libs/Letta/Generated/Letta.IBlocksClient.g.cs
+++ b/src/libs/Letta/Generated/Letta.IBlocksClient.g.cs
@@ -19,6 +19,27 @@ public partial interface IBlocksClient : global::System.IDisposable
///
public System.Uri? BaseUri { get; }
+
+ ///
+ /// The server options available for this client.
+ ///
+ public global::System.Collections.Generic.IReadOnlyList AvailableServers { get; }
+
+ ///
+ /// The currently selected server for this client, if any.
+ ///
+ public global::Letta.AutoSDKServer? SelectedServer { get; set; }
+
+ ///
+ /// Selects one of the generated server options by id.
+ ///
+ public bool TrySelectServer(string serverId);
+
+ ///
+ /// Clears the currently selected server.
+ ///
+ public void ClearSelectedServer();
+
///
/// The authorizations to use for the requests.
///
@@ -32,12 +53,12 @@ public partial interface IBlocksClient : global::System.IDisposable
/// ensuring is populated.
///
public bool ReadResponseAsString { get; set; }
-
///
/// Client-wide request defaults such as headers, query parameters, retries, and timeout.
///
public global::Letta.AutoSDKClientOptions Options { get; }
+
///
///
///
diff --git a/src/libs/Letta/Generated/Letta.IChatClient.g.cs b/src/libs/Letta/Generated/Letta.IChatClient.g.cs
index 17e027d8..e7b1f911 100644
--- a/src/libs/Letta/Generated/Letta.IChatClient.g.cs
+++ b/src/libs/Letta/Generated/Letta.IChatClient.g.cs
@@ -19,6 +19,27 @@ public partial interface IChatClient : global::System.IDisposable
///
public System.Uri? BaseUri { get; }
+
+ ///
+ /// The server options available for this client.
+ ///
+ public global::System.Collections.Generic.IReadOnlyList AvailableServers { get; }
+
+ ///
+ /// The currently selected server for this client, if any.
+ ///
+ public global::Letta.AutoSDKServer? SelectedServer { get; set; }
+
+ ///
+ /// Selects one of the generated server options by id.
+ ///
+ public bool TrySelectServer(string serverId);
+
+ ///
+ /// Clears the currently selected server.
+ ///
+ public void ClearSelectedServer();
+
///
/// The authorizations to use for the requests.
///
@@ -32,12 +53,12 @@ public partial interface IChatClient : global::System.IDisposable
/// ensuring is populated.
///
public bool ReadResponseAsString { get; set; }
-
///
/// Client-wide request defaults such as headers, query parameters, retries, and timeout.
///
public global::Letta.AutoSDKClientOptions Options { get; }
+
///
///
///
diff --git a/src/libs/Letta/Generated/Letta.IClientSideAccessTokensClient.g.cs b/src/libs/Letta/Generated/Letta.IClientSideAccessTokensClient.g.cs
index 10175036..c31a7f89 100644
--- a/src/libs/Letta/Generated/Letta.IClientSideAccessTokensClient.g.cs
+++ b/src/libs/Letta/Generated/Letta.IClientSideAccessTokensClient.g.cs
@@ -19,6 +19,27 @@ public partial interface IClientSideAccessTokensClient : global::System.IDisposa
///
public System.Uri? BaseUri { get; }
+
+ ///
+ /// The server options available for this client.
+ ///
+ public global::System.Collections.Generic.IReadOnlyList AvailableServers { get; }
+
+ ///
+ /// The currently selected server for this client, if any.
+ ///
+ public global::Letta.AutoSDKServer? SelectedServer { get; set; }
+
+ ///
+ /// Selects one of the generated server options by id.
+ ///
+ public bool TrySelectServer(string serverId);
+
+ ///
+ /// Clears the currently selected server.
+ ///
+ public void ClearSelectedServer();
+
///
/// The authorizations to use for the requests.
///
@@ -32,12 +53,12 @@ public partial interface IClientSideAccessTokensClient : global::System.IDisposa
/// ensuring is populated.
///
public bool ReadResponseAsString { get; set; }
-
///
/// Client-wide request defaults such as headers, query parameters, retries, and timeout.
///
public global::Letta.AutoSDKClientOptions Options { get; }
+
///
///
///
diff --git a/src/libs/Letta/Generated/Letta.IConversationsClient.g.cs b/src/libs/Letta/Generated/Letta.IConversationsClient.g.cs
index 74ed60fa..3ba50bfb 100644
--- a/src/libs/Letta/Generated/Letta.IConversationsClient.g.cs
+++ b/src/libs/Letta/Generated/Letta.IConversationsClient.g.cs
@@ -19,6 +19,27 @@ public partial interface IConversationsClient : global::System.IDisposable
///
public System.Uri? BaseUri { get; }
+
+ ///
+ /// The server options available for this client.
+ ///
+ public global::System.Collections.Generic.IReadOnlyList AvailableServers { get; }
+
+ ///
+ /// The currently selected server for this client, if any.
+ ///
+ public global::Letta.AutoSDKServer? SelectedServer { get; set; }
+
+ ///
+ /// Selects one of the generated server options by id.
+ ///
+ public bool TrySelectServer(string serverId);
+
+ ///
+ /// Clears the currently selected server.
+ ///
+ public void ClearSelectedServer();
+
///
/// The authorizations to use for the requests.
///
@@ -32,12 +53,12 @@ public partial interface IConversationsClient : global::System.IDisposable
/// ensuring is populated.
///
public bool ReadResponseAsString { get; set; }
-
///
/// Client-wide request defaults such as headers, query parameters, retries, and timeout.
///
public global::Letta.AutoSDKClientOptions Options { get; }
+
///
///
///
diff --git a/src/libs/Letta/Generated/Letta.IDeviceStorageClient.g.cs b/src/libs/Letta/Generated/Letta.IDeviceStorageClient.g.cs
index 1018ee10..1026d9c1 100644
--- a/src/libs/Letta/Generated/Letta.IDeviceStorageClient.g.cs
+++ b/src/libs/Letta/Generated/Letta.IDeviceStorageClient.g.cs
@@ -19,6 +19,27 @@ public partial interface IDeviceStorageClient : global::System.IDisposable
///
public System.Uri? BaseUri { get; }
+
+ ///
+ /// The server options available for this client.
+ ///
+ public global::System.Collections.Generic.IReadOnlyList AvailableServers { get; }
+
+ ///
+ /// The currently selected server for this client, if any.
+ ///
+ public global::Letta.AutoSDKServer? SelectedServer { get; set; }
+
+ ///
+ /// Selects one of the generated server options by id.
+ ///
+ public bool TrySelectServer(string serverId);
+
+ ///
+ /// Clears the currently selected server.
+ ///
+ public void ClearSelectedServer();
+
///
/// The authorizations to use for the requests.
///
@@ -32,12 +53,12 @@ public partial interface IDeviceStorageClient : global::System.IDisposable
/// ensuring is populated.
///
public bool ReadResponseAsString { get; set; }
-
///
/// Client-wide request defaults such as headers, query parameters, retries, and timeout.
///
public global::Letta.AutoSDKClientOptions Options { get; }
+
///
///
///
diff --git a/src/libs/Letta/Generated/Letta.IEmbeddingsClient.g.cs b/src/libs/Letta/Generated/Letta.IEmbeddingsClient.g.cs
index 55f9f3ae..b92dfaf2 100644
--- a/src/libs/Letta/Generated/Letta.IEmbeddingsClient.g.cs
+++ b/src/libs/Letta/Generated/Letta.IEmbeddingsClient.g.cs
@@ -19,6 +19,27 @@ public partial interface IEmbeddingsClient : global::System.IDisposable
///
public System.Uri? BaseUri { get; }
+
+ ///
+ /// The server options available for this client.
+ ///
+ public global::System.Collections.Generic.IReadOnlyList AvailableServers { get; }
+
+ ///
+ /// The currently selected server for this client, if any.
+ ///
+ public global::Letta.AutoSDKServer? SelectedServer { get; set; }
+
+ ///
+ /// Selects one of the generated server options by id.
+ ///
+ public bool TrySelectServer(string serverId);
+
+ ///
+ /// Clears the currently selected server.
+ ///
+ public void ClearSelectedServer();
+
///
/// The authorizations to use for the requests.
///
@@ -32,12 +53,12 @@ public partial interface IEmbeddingsClient : global::System.IDisposable
/// ensuring is populated.
///
public bool ReadResponseAsString { get; set; }
-
///
/// Client-wide request defaults such as headers, query parameters, retries, and timeout.
///
public global::Letta.AutoSDKClientOptions Options { get; }
+
///
///
///
diff --git a/src/libs/Letta/Generated/Letta.IEnvironmentsClient.g.cs b/src/libs/Letta/Generated/Letta.IEnvironmentsClient.g.cs
index 41eaaebb..0484a00a 100644
--- a/src/libs/Letta/Generated/Letta.IEnvironmentsClient.g.cs
+++ b/src/libs/Letta/Generated/Letta.IEnvironmentsClient.g.cs
@@ -19,6 +19,27 @@ public partial interface IEnvironmentsClient : global::System.IDisposable
///
public System.Uri? BaseUri { get; }
+
+ ///
+ /// The server options available for this client.
+ ///
+ public global::System.Collections.Generic.IReadOnlyList AvailableServers { get; }
+
+ ///
+ /// The currently selected server for this client, if any.
+ ///
+ public global::Letta.AutoSDKServer? SelectedServer { get; set; }
+
+ ///
+ /// Selects one of the generated server options by id.
+ ///
+ public bool TrySelectServer(string serverId);
+
+ ///
+ /// Clears the currently selected server.
+ ///
+ public void ClearSelectedServer();
+
///
/// The authorizations to use for the requests.
///
@@ -32,12 +53,12 @@ public partial interface IEnvironmentsClient : global::System.IDisposable
/// ensuring is populated.
///
public bool ReadResponseAsString { get; set; }
-
///
/// Client-wide request defaults such as headers, query parameters, retries, and timeout.
///
public global::Letta.AutoSDKClientOptions Options { get; }
+
///
///
///
diff --git a/src/libs/Letta/Generated/Letta.IFeedsClient.g.cs b/src/libs/Letta/Generated/Letta.IFeedsClient.g.cs
index 1685c665..b3dbe9c2 100644
--- a/src/libs/Letta/Generated/Letta.IFeedsClient.g.cs
+++ b/src/libs/Letta/Generated/Letta.IFeedsClient.g.cs
@@ -19,6 +19,27 @@ public partial interface IFeedsClient : global::System.IDisposable
///
public System.Uri? BaseUri { get; }
+
+ ///
+ /// The server options available for this client.
+ ///
+ public global::System.Collections.Generic.IReadOnlyList AvailableServers { get; }
+
+ ///
+ /// The currently selected server for this client, if any.
+ ///
+ public global::Letta.AutoSDKServer? SelectedServer { get; set; }
+
+ ///
+ /// Selects one of the generated server options by id.
+ ///
+ public bool TrySelectServer(string serverId);
+
+ ///
+ /// Clears the currently selected server.
+ ///
+ public void ClearSelectedServer();
+
///
/// The authorizations to use for the requests.
///
@@ -32,12 +53,12 @@ public partial interface IFeedsClient : global::System.IDisposable
/// ensuring is populated.
///
public bool ReadResponseAsString { get; set; }
-
///
/// Client-wide request defaults such as headers, query parameters, retries, and timeout.
///
public global::Letta.AutoSDKClientOptions Options { get; }
+
///
///
///
diff --git a/src/libs/Letta/Generated/Letta.IFoldersClient.g.cs b/src/libs/Letta/Generated/Letta.IFoldersClient.g.cs
index d0140d32..c515fbe3 100644
--- a/src/libs/Letta/Generated/Letta.IFoldersClient.g.cs
+++ b/src/libs/Letta/Generated/Letta.IFoldersClient.g.cs
@@ -19,6 +19,27 @@ public partial interface IFoldersClient : global::System.IDisposable
///
public System.Uri? BaseUri { get; }
+
+ ///
+ /// The server options available for this client.
+ ///
+ public global::System.Collections.Generic.IReadOnlyList AvailableServers { get; }
+
+ ///
+ /// The currently selected server for this client, if any.
+ ///
+ public global::Letta.AutoSDKServer? SelectedServer { get; set; }
+
+ ///
+ /// Selects one of the generated server options by id.
+ ///
+ public bool TrySelectServer(string serverId);
+
+ ///
+ /// Clears the currently selected server.
+ ///
+ public void ClearSelectedServer();
+
///
/// The authorizations to use for the requests.
///
@@ -32,12 +53,12 @@ public partial interface IFoldersClient : global::System.IDisposable
/// ensuring is populated.
///
public bool ReadResponseAsString { get; set; }
-
///
/// Client-wide request defaults such as headers, query parameters, retries, and timeout.
///
public global::Letta.AutoSDKClientOptions Options { get; }
+
///
///
///
diff --git a/src/libs/Letta/Generated/Letta.IHealthClient.g.cs b/src/libs/Letta/Generated/Letta.IHealthClient.g.cs
index e06bd9ca..9bf604e5 100644
--- a/src/libs/Letta/Generated/Letta.IHealthClient.g.cs
+++ b/src/libs/Letta/Generated/Letta.IHealthClient.g.cs
@@ -19,6 +19,27 @@ public partial interface IHealthClient : global::System.IDisposable
///
public System.Uri? BaseUri { get; }
+
+ ///
+ /// The server options available for this client.
+ ///
+ public global::System.Collections.Generic.IReadOnlyList AvailableServers { get; }
+
+ ///
+ /// The currently selected server for this client, if any.
+ ///
+ public global::Letta.AutoSDKServer? SelectedServer { get; set; }
+
+ ///
+ /// Selects one of the generated server options by id.
+ ///
+ public bool TrySelectServer(string serverId);
+
+ ///
+ /// Clears the currently selected server.
+ ///
+ public void ClearSelectedServer();
+
///
/// The authorizations to use for the requests.
///
@@ -32,12 +53,12 @@ public partial interface IHealthClient : global::System.IDisposable
/// ensuring is populated.
///
public bool ReadResponseAsString { get; set; }
-
///
/// Client-wide request defaults such as headers, query parameters, retries, and timeout.
///
public global::Letta.AutoSDKClientOptions Options { get; }
+
///
///
///
diff --git a/src/libs/Letta/Generated/Letta.IInternalAgentsClient.g.cs b/src/libs/Letta/Generated/Letta.IInternalAgentsClient.g.cs
index 6c6f5bea..f93c9a51 100644
--- a/src/libs/Letta/Generated/Letta.IInternalAgentsClient.g.cs
+++ b/src/libs/Letta/Generated/Letta.IInternalAgentsClient.g.cs
@@ -19,6 +19,27 @@ public partial interface IInternalAgentsClient : global::System.IDisposable
///
public System.Uri? BaseUri { get; }
+
+ ///
+ /// The server options available for this client.
+ ///
+ public global::System.Collections.Generic.IReadOnlyList AvailableServers { get; }
+
+ ///
+ /// The currently selected server for this client, if any.
+ ///
+ public global::Letta.AutoSDKServer? SelectedServer { get; set; }
+
+ ///
+ /// Selects one of the generated server options by id.
+ ///
+ public bool TrySelectServer(string serverId);
+
+ ///
+ /// Clears the currently selected server.
+ ///
+ public void ClearSelectedServer();
+
///
/// The authorizations to use for the requests.
///
@@ -32,12 +53,12 @@ public partial interface IInternalAgentsClient : global::System.IDisposable
/// ensuring is populated.
///
public bool ReadResponseAsString { get; set; }
-
///
/// Client-wide request defaults such as headers, query parameters, retries, and timeout.
///
public global::Letta.AutoSDKClientOptions Options { get; }
+
///
///
///
diff --git a/src/libs/Letta/Generated/Letta.IInternalBlocksClient.g.cs b/src/libs/Letta/Generated/Letta.IInternalBlocksClient.g.cs
index cc332249..24c7ff62 100644
--- a/src/libs/Letta/Generated/Letta.IInternalBlocksClient.g.cs
+++ b/src/libs/Letta/Generated/Letta.IInternalBlocksClient.g.cs
@@ -19,6 +19,27 @@ public partial interface IInternalBlocksClient : global::System.IDisposable
///
public System.Uri? BaseUri { get; }
+
+ ///
+ /// The server options available for this client.
+ ///
+ public global::System.Collections.Generic.IReadOnlyList AvailableServers { get; }
+
+ ///
+ /// The currently selected server for this client, if any.
+ ///
+ public global::Letta.AutoSDKServer? SelectedServer { get; set; }
+
+ ///
+ /// Selects one of the generated server options by id.
+ ///
+ public bool TrySelectServer(string serverId);
+
+ ///
+ /// Clears the currently selected server.
+ ///
+ public void ClearSelectedServer();
+
///
/// The authorizations to use for the requests.
///
@@ -32,12 +53,12 @@ public partial interface IInternalBlocksClient : global::System.IDisposable
/// ensuring is populated.
///
public bool ReadResponseAsString { get; set; }
-
///
/// Client-wide request defaults such as headers, query parameters, retries, and timeout.
///
public global::Letta.AutoSDKClientOptions Options { get; }
+
///
///
///
diff --git a/src/libs/Letta/Generated/Letta.IInternalRunsClient.g.cs b/src/libs/Letta/Generated/Letta.IInternalRunsClient.g.cs
index 1d83641c..43ba5593 100644
--- a/src/libs/Letta/Generated/Letta.IInternalRunsClient.g.cs
+++ b/src/libs/Letta/Generated/Letta.IInternalRunsClient.g.cs
@@ -19,6 +19,27 @@ public partial interface IInternalRunsClient : global::System.IDisposable
///
public System.Uri? BaseUri { get; }
+
+ ///
+ /// The server options available for this client.
+ ///
+ public global::System.Collections.Generic.IReadOnlyList AvailableServers { get; }
+
+ ///
+ /// The currently selected server for this client, if any.
+ ///
+ public global::Letta.AutoSDKServer? SelectedServer { get; set; }
+
+ ///
+ /// Selects one of the generated server options by id.
+ ///
+ public bool TrySelectServer(string serverId);
+
+ ///
+ /// Clears the currently selected server.
+ ///
+ public void ClearSelectedServer();
+
///
/// The authorizations to use for the requests.
///
@@ -32,12 +53,12 @@ public partial interface IInternalRunsClient : global::System.IDisposable
/// ensuring is populated.
///
public bool ReadResponseAsString { get; set; }
-
///
/// Client-wide request defaults such as headers, query parameters, retries, and timeout.
///
public global::Letta.AutoSDKClientOptions Options { get; }
+
///
///
///
diff --git a/src/libs/Letta/Generated/Letta.IInternalTemplatesClient.g.cs b/src/libs/Letta/Generated/Letta.IInternalTemplatesClient.g.cs
index 192dec3d..28d42c1d 100644
--- a/src/libs/Letta/Generated/Letta.IInternalTemplatesClient.g.cs
+++ b/src/libs/Letta/Generated/Letta.IInternalTemplatesClient.g.cs
@@ -19,6 +19,27 @@ public partial interface IInternalTemplatesClient : global::System.IDisposable
///
public System.Uri? BaseUri { get; }
+
+ ///
+ /// The server options available for this client.
+ ///
+ public global::System.Collections.Generic.IReadOnlyList AvailableServers { get; }
+
+ ///
+ /// The currently selected server for this client, if any.
+ ///
+ public global::Letta.AutoSDKServer? SelectedServer { get; set; }
+
+ ///
+ /// Selects one of the generated server options by id.
+ ///
+ public bool TrySelectServer(string serverId);
+
+ ///
+ /// Clears the currently selected server.
+ ///
+ public void ClearSelectedServer();
+
///
/// The authorizations to use for the requests.
///
@@ -32,12 +53,12 @@ public partial interface IInternalTemplatesClient : global::System.IDisposable
/// ensuring is populated.
///
public bool ReadResponseAsString { get; set; }
-
///
/// Client-wide request defaults such as headers, query parameters, retries, and timeout.
///
public global::Letta.AutoSDKClientOptions Options { get; }
+
///
///
///
diff --git a/src/libs/Letta/Generated/Letta.IJobsClient.g.cs b/src/libs/Letta/Generated/Letta.IJobsClient.g.cs
index 9e267c39..829d11cc 100644
--- a/src/libs/Letta/Generated/Letta.IJobsClient.g.cs
+++ b/src/libs/Letta/Generated/Letta.IJobsClient.g.cs
@@ -19,6 +19,27 @@ public partial interface IJobsClient : global::System.IDisposable
///
public System.Uri? BaseUri { get; }
+
+ ///
+ /// The server options available for this client.
+ ///
+ public global::System.Collections.Generic.IReadOnlyList AvailableServers { get; }
+
+ ///
+ /// The currently selected server for this client, if any.
+ ///
+ public global::Letta.AutoSDKServer? SelectedServer { get; set; }
+
+ ///
+ /// Selects one of the generated server options by id.
+ ///
+ public bool TrySelectServer(string serverId);
+
+ ///
+ /// Clears the currently selected server.
+ ///
+ public void ClearSelectedServer();
+
///
/// The authorizations to use for the requests.
///
@@ -32,12 +53,12 @@ public partial interface IJobsClient : global::System.IDisposable
/// ensuring is populated.
///
public bool ReadResponseAsString { get; set; }
-
///
/// Client-wide request defaults such as headers, query parameters, retries, and timeout.
///
public global::Letta.AutoSDKClientOptions Options { get; }
+
///
///
///
diff --git a/src/libs/Letta/Generated/Letta.ILettaClient.g.cs b/src/libs/Letta/Generated/Letta.ILettaClient.g.cs
index 6e97477d..fa3c45dd 100644
--- a/src/libs/Letta/Generated/Letta.ILettaClient.g.cs
+++ b/src/libs/Letta/Generated/Letta.ILettaClient.g.cs
@@ -19,6 +19,27 @@ public partial interface ILettaClient : global::System.IDisposable
///
public System.Uri? BaseUri { get; }
+
+ ///
+ /// The server options available for this client.
+ ///
+ public global::System.Collections.Generic.IReadOnlyList AvailableServers { get; }
+
+ ///
+ /// The currently selected server for this client, if any.
+ ///
+ public global::Letta.AutoSDKServer? SelectedServer { get; set; }
+
+ ///
+ /// Selects one of the generated server options by id.
+ ///
+ public bool TrySelectServer(string serverId);
+
+ ///
+ /// Clears the currently selected server.
+ ///
+ public void ClearSelectedServer();
+
///
/// The authorizations to use for the requests.
///
@@ -32,12 +53,12 @@ public partial interface ILettaClient : global::System.IDisposable
/// ensuring is populated.
///
public bool ReadResponseAsString { get; set; }
-
///
/// Client-wide request defaults such as headers, query parameters, retries, and timeout.
///
public global::Letta.AutoSDKClientOptions Options { get; }
+
///
///
///
diff --git a/src/libs/Letta/Generated/Letta.IMcpServersClient.g.cs b/src/libs/Letta/Generated/Letta.IMcpServersClient.g.cs
index 4f02a6b7..1f86fa2d 100644
--- a/src/libs/Letta/Generated/Letta.IMcpServersClient.g.cs
+++ b/src/libs/Letta/Generated/Letta.IMcpServersClient.g.cs
@@ -19,6 +19,27 @@ public partial interface IMcpServersClient : global::System.IDisposable
///
public System.Uri? BaseUri { get; }
+
+ ///
+ /// The server options available for this client.
+ ///
+ public global::System.Collections.Generic.IReadOnlyList AvailableServers { get; }
+
+ ///
+ /// The currently selected server for this client, if any.
+ ///
+ public global::Letta.AutoSDKServer? SelectedServer { get; set; }
+
+ ///
+ /// Selects one of the generated server options by id.
+ ///
+ public bool TrySelectServer(string serverId);
+
+ ///
+ /// Clears the currently selected server.
+ ///
+ public void ClearSelectedServer();
+
///
/// The authorizations to use for the requests.
///
@@ -32,12 +53,12 @@ public partial interface IMcpServersClient : global::System.IDisposable
/// ensuring is populated.
///
public bool ReadResponseAsString { get; set; }
-
///
/// Client-wide request defaults such as headers, query parameters, retries, and timeout.
///
public global::Letta.AutoSDKClientOptions Options { get; }
+
///
///
///
diff --git a/src/libs/Letta/Generated/Letta.IMemoryFilesClient.g.cs b/src/libs/Letta/Generated/Letta.IMemoryFilesClient.g.cs
index c62a37f1..d3c4e09e 100644
--- a/src/libs/Letta/Generated/Letta.IMemoryFilesClient.g.cs
+++ b/src/libs/Letta/Generated/Letta.IMemoryFilesClient.g.cs
@@ -19,6 +19,27 @@ public partial interface IMemoryFilesClient : global::System.IDisposable
///
public System.Uri? BaseUri { get; }
+
+ ///
+ /// The server options available for this client.
+ ///
+ public global::System.Collections.Generic.IReadOnlyList AvailableServers { get; }
+
+ ///
+ /// The currently selected server for this client, if any.
+ ///
+ public global::Letta.AutoSDKServer? SelectedServer { get; set; }
+
+ ///
+ /// Selects one of the generated server options by id.
+ ///
+ public bool TrySelectServer(string serverId);
+
+ ///
+ /// Clears the currently selected server.
+ ///
+ public void ClearSelectedServer();
+
///
/// The authorizations to use for the requests.
///
@@ -32,12 +53,12 @@ public partial interface IMemoryFilesClient : global::System.IDisposable
/// ensuring is populated.
///
public bool ReadResponseAsString { get; set; }
-
///
/// Client-wide request defaults such as headers, query parameters, retries, and timeout.
///
public global::Letta.AutoSDKClientOptions Options { get; }
+
///
///
///
diff --git a/src/libs/Letta/Generated/Letta.IMessagesClient.g.cs b/src/libs/Letta/Generated/Letta.IMessagesClient.g.cs
index 38e99db1..715018a8 100644
--- a/src/libs/Letta/Generated/Letta.IMessagesClient.g.cs
+++ b/src/libs/Letta/Generated/Letta.IMessagesClient.g.cs
@@ -19,6 +19,27 @@ public partial interface IMessagesClient : global::System.IDisposable
///
public System.Uri? BaseUri { get; }
+
+ ///
+ /// The server options available for this client.
+ ///
+ public global::System.Collections.Generic.IReadOnlyList AvailableServers { get; }
+
+ ///
+ /// The currently selected server for this client, if any.
+ ///
+ public global::Letta.AutoSDKServer? SelectedServer { get; set; }
+
+ ///
+ /// Selects one of the generated server options by id.
+ ///
+ public bool TrySelectServer(string serverId);
+
+ ///
+ /// Clears the currently selected server.
+ ///
+ public void ClearSelectedServer();
+
///
/// The authorizations to use for the requests.
///
@@ -32,12 +53,12 @@ public partial interface IMessagesClient : global::System.IDisposable
/// ensuring is populated.
///
public bool ReadResponseAsString { get; set; }
-
///
/// Client-wide request defaults such as headers, query parameters, retries, and timeout.
///
public global::Letta.AutoSDKClientOptions Options { get; }
+
///
///
///
diff --git a/src/libs/Letta/Generated/Letta.IMetadataClient.g.cs b/src/libs/Letta/Generated/Letta.IMetadataClient.g.cs
index 87f684ee..ba1f6ccb 100644
--- a/src/libs/Letta/Generated/Letta.IMetadataClient.g.cs
+++ b/src/libs/Letta/Generated/Letta.IMetadataClient.g.cs
@@ -19,6 +19,27 @@ public partial interface IMetadataClient : global::System.IDisposable
///
public System.Uri? BaseUri { get; }
+
+ ///
+ /// The server options available for this client.
+ ///
+ public global::System.Collections.Generic.IReadOnlyList AvailableServers { get; }
+
+ ///
+ /// The currently selected server for this client, if any.
+ ///
+ public global::Letta.AutoSDKServer? SelectedServer { get; set; }
+
+ ///
+ /// Selects one of the generated server options by id.
+ ///
+ public bool TrySelectServer(string serverId);
+
+ ///
+ /// Clears the currently selected server.
+ ///
+ public void ClearSelectedServer();
+
///
/// The authorizations to use for the requests.
///
@@ -32,12 +53,12 @@ public partial interface IMetadataClient : global::System.IDisposable
/// ensuring is populated.
///
public bool ReadResponseAsString { get; set; }
-
///
/// Client-wide request defaults such as headers, query parameters, retries, and timeout.
///
public global::Letta.AutoSDKClientOptions Options { get; }
+
///
///
///
diff --git a/src/libs/Letta/Generated/Letta.IModelsClient.g.cs b/src/libs/Letta/Generated/Letta.IModelsClient.g.cs
index 802a3c93..6586c57b 100644
--- a/src/libs/Letta/Generated/Letta.IModelsClient.g.cs
+++ b/src/libs/Letta/Generated/Letta.IModelsClient.g.cs
@@ -19,6 +19,27 @@ public partial interface IModelsClient : global::System.IDisposable
///
public System.Uri? BaseUri { get; }
+
+ ///
+ /// The server options available for this client.
+ ///
+ public global::System.Collections.Generic.IReadOnlyList AvailableServers { get; }
+
+ ///
+ /// The currently selected server for this client, if any.
+ ///
+ public global::Letta.AutoSDKServer? SelectedServer { get; set; }
+
+ ///
+ /// Selects one of the generated server options by id.
+ ///
+ public bool TrySelectServer(string serverId);
+
+ ///
+ /// Clears the currently selected server.
+ ///
+ public void ClearSelectedServer();
+
///
/// The authorizations to use for the requests.
///
@@ -32,12 +53,12 @@ public partial interface IModelsClient : global::System.IDisposable
/// ensuring is populated.
///
public bool ReadResponseAsString { get; set; }
-
///
/// Client-wide request defaults such as headers, query parameters, retries, and timeout.
///
public global::Letta.AutoSDKClientOptions Options { get; }
+
///
///
///
diff --git a/src/libs/Letta/Generated/Letta.IPassagesClient.g.cs b/src/libs/Letta/Generated/Letta.IPassagesClient.g.cs
index 1aef70f8..070eb231 100644
--- a/src/libs/Letta/Generated/Letta.IPassagesClient.g.cs
+++ b/src/libs/Letta/Generated/Letta.IPassagesClient.g.cs
@@ -19,6 +19,27 @@ public partial interface IPassagesClient : global::System.IDisposable
///
public System.Uri? BaseUri { get; }
+
+ ///
+ /// The server options available for this client.
+ ///
+ public global::System.Collections.Generic.IReadOnlyList AvailableServers { get; }
+
+ ///
+ /// The currently selected server for this client, if any.
+ ///
+ public global::Letta.AutoSDKServer? SelectedServer { get; set; }
+
+ ///
+ /// Selects one of the generated server options by id.
+ ///
+ public bool TrySelectServer(string serverId);
+
+ ///
+ /// Clears the currently selected server.
+ ///
+ public void ClearSelectedServer();
+
///
/// The authorizations to use for the requests.
///
@@ -32,12 +53,12 @@ public partial interface IPassagesClient : global::System.IDisposable
/// ensuring is populated.
///
public bool ReadResponseAsString { get; set; }
-
///
/// Client-wide request defaults such as headers, query parameters, retries, and timeout.
///
public global::Letta.AutoSDKClientOptions Options { get; }
+
///
///
///
diff --git a/src/libs/Letta/Generated/Letta.IPipelinesClient.g.cs b/src/libs/Letta/Generated/Letta.IPipelinesClient.g.cs
index 2567a16a..84b65f3b 100644
--- a/src/libs/Letta/Generated/Letta.IPipelinesClient.g.cs
+++ b/src/libs/Letta/Generated/Letta.IPipelinesClient.g.cs
@@ -19,6 +19,27 @@ public partial interface IPipelinesClient : global::System.IDisposable
///
public System.Uri? BaseUri { get; }
+
+ ///
+ /// The server options available for this client.
+ ///
+ public global::System.Collections.Generic.IReadOnlyList AvailableServers { get; }
+
+ ///
+ /// The currently selected server for this client, if any.
+ ///
+ public global::Letta.AutoSDKServer? SelectedServer { get; set; }
+
+ ///
+ /// Selects one of the generated server options by id.
+ ///
+ public bool TrySelectServer(string serverId);
+
+ ///
+ /// Clears the currently selected server.
+ ///
+ public void ClearSelectedServer();
+
///
/// The authorizations to use for the requests.
///
@@ -32,12 +53,12 @@ public partial interface IPipelinesClient : global::System.IDisposable
/// ensuring is populated.
///
public bool ReadResponseAsString { get; set; }
-
///
/// Client-wide request defaults such as headers, query parameters, retries, and timeout.
///
public global::Letta.AutoSDKClientOptions Options { get; }
+
///
///
///
diff --git a/src/libs/Letta/Generated/Letta.IProjectsClient.g.cs b/src/libs/Letta/Generated/Letta.IProjectsClient.g.cs
index 75828320..6b9698c2 100644
--- a/src/libs/Letta/Generated/Letta.IProjectsClient.g.cs
+++ b/src/libs/Letta/Generated/Letta.IProjectsClient.g.cs
@@ -19,6 +19,27 @@ public partial interface IProjectsClient : global::System.IDisposable
///
public System.Uri? BaseUri { get; }
+
+ ///
+ /// The server options available for this client.
+ ///
+ public global::System.Collections.Generic.IReadOnlyList AvailableServers { get; }
+
+ ///
+ /// The currently selected server for this client, if any.
+ ///
+ public global::Letta.AutoSDKServer? SelectedServer { get; set; }
+
+ ///
+ /// Selects one of the generated server options by id.
+ ///
+ public bool TrySelectServer(string serverId);
+
+ ///
+ /// Clears the currently selected server.
+ ///
+ public void ClearSelectedServer();
+
///
/// The authorizations to use for the requests.
///
@@ -32,12 +53,12 @@ public partial interface IProjectsClient : global::System.IDisposable
/// ensuring is populated.
///
public bool ReadResponseAsString { get; set; }
-
///
/// Client-wide request defaults such as headers, query parameters, retries, and timeout.
///
public global::Letta.AutoSDKClientOptions Options { get; }
+
///
///
///
diff --git a/src/libs/Letta/Generated/Letta.IProvidersClient.g.cs b/src/libs/Letta/Generated/Letta.IProvidersClient.g.cs
index 8314be98..0cc9d6d2 100644
--- a/src/libs/Letta/Generated/Letta.IProvidersClient.g.cs
+++ b/src/libs/Letta/Generated/Letta.IProvidersClient.g.cs
@@ -19,6 +19,27 @@ public partial interface IProvidersClient : global::System.IDisposable
///
public System.Uri? BaseUri { get; }
+
+ ///
+ /// The server options available for this client.
+ ///
+ public global::System.Collections.Generic.IReadOnlyList AvailableServers { get; }
+
+ ///
+ /// The currently selected server for this client, if any.
+ ///
+ public global::Letta.AutoSDKServer? SelectedServer { get; set; }
+
+ ///
+ /// Selects one of the generated server options by id.
+ ///
+ public bool TrySelectServer(string serverId);
+
+ ///
+ /// Clears the currently selected server.
+ ///
+ public void ClearSelectedServer();
+
///
/// The authorizations to use for the requests.
///
@@ -32,12 +53,12 @@ public partial interface IProvidersClient : global::System.IDisposable
/// ensuring is populated.
///
public bool ReadResponseAsString { get; set; }
-
///
/// Client-wide request defaults such as headers, query parameters, retries, and timeout.
///
public global::Letta.AutoSDKClientOptions Options { get; }
+
///
///
///
diff --git a/src/libs/Letta/Generated/Letta.IRunsClient.g.cs b/src/libs/Letta/Generated/Letta.IRunsClient.g.cs
index 65ed85d5..7aebebc8 100644
--- a/src/libs/Letta/Generated/Letta.IRunsClient.g.cs
+++ b/src/libs/Letta/Generated/Letta.IRunsClient.g.cs
@@ -19,6 +19,27 @@ public partial interface IRunsClient : global::System.IDisposable
///
public System.Uri? BaseUri { get; }
+
+ ///
+ /// The server options available for this client.
+ ///
+ public global::System.Collections.Generic.IReadOnlyList AvailableServers { get; }
+
+ ///
+ /// The currently selected server for this client, if any.
+ ///
+ public global::Letta.AutoSDKServer? SelectedServer { get; set; }
+
+ ///
+ /// Selects one of the generated server options by id.
+ ///
+ public bool TrySelectServer(string serverId);
+
+ ///
+ /// Clears the currently selected server.
+ ///
+ public void ClearSelectedServer();
+
///
/// The authorizations to use for the requests.
///
@@ -32,12 +53,12 @@ public partial interface IRunsClient : global::System.IDisposable
/// ensuring is populated.
///
public bool ReadResponseAsString { get; set; }
-
///
/// Client-wide request defaults such as headers, query parameters, retries, and timeout.
///
public global::Letta.AutoSDKClientOptions Options { get; }
+
///
///
///
diff --git a/src/libs/Letta/Generated/Letta.ISandboxesClient.g.cs b/src/libs/Letta/Generated/Letta.ISandboxesClient.g.cs
index 533fa28b..a21971d8 100644
--- a/src/libs/Letta/Generated/Letta.ISandboxesClient.g.cs
+++ b/src/libs/Letta/Generated/Letta.ISandboxesClient.g.cs
@@ -19,6 +19,27 @@ public partial interface ISandboxesClient : global::System.IDisposable
///
public System.Uri? BaseUri { get; }
+
+ ///
+ /// The server options available for this client.
+ ///
+ public global::System.Collections.Generic.IReadOnlyList AvailableServers { get; }
+
+ ///
+ /// The currently selected server for this client, if any.
+ ///
+ public global::Letta.AutoSDKServer? SelectedServer { get; set; }
+
+ ///
+ /// Selects one of the generated server options by id.
+ ///
+ public bool TrySelectServer(string serverId);
+
+ ///
+ /// Clears the currently selected server.
+ ///
+ public void ClearSelectedServer();
+
///
/// The authorizations to use for the requests.
///
@@ -32,12 +53,12 @@ public partial interface ISandboxesClient : global::System.IDisposable
/// ensuring is populated.
///
public bool ReadResponseAsString { get; set; }
-
///
/// Client-wide request defaults such as headers, query parameters, retries, and timeout.
///
public global::Letta.AutoSDKClientOptions Options { get; }
+
///
///
///
diff --git a/src/libs/Letta/Generated/Letta.IScheduledMessagesClient.g.cs b/src/libs/Letta/Generated/Letta.IScheduledMessagesClient.g.cs
index d492f476..dfffa19f 100644
--- a/src/libs/Letta/Generated/Letta.IScheduledMessagesClient.g.cs
+++ b/src/libs/Letta/Generated/Letta.IScheduledMessagesClient.g.cs
@@ -19,6 +19,27 @@ public partial interface IScheduledMessagesClient : global::System.IDisposable
///
public System.Uri? BaseUri { get; }
+
+ ///
+ /// The server options available for this client.
+ ///
+ public global::System.Collections.Generic.IReadOnlyList AvailableServers { get; }
+
+ ///
+ /// The currently selected server for this client, if any.
+ ///
+ public global::Letta.AutoSDKServer? SelectedServer { get; set; }
+
+ ///
+ /// Selects one of the generated server options by id.
+ ///
+ public bool TrySelectServer(string serverId);
+
+ ///
+ /// Clears the currently selected server.
+ ///
+ public void ClearSelectedServer();
+
///
/// The authorizations to use for the requests.
///
@@ -32,12 +53,12 @@ public partial interface IScheduledMessagesClient : global::System.IDisposable
/// ensuring is populated.
///
public bool ReadResponseAsString { get; set; }
-
///
/// Client-wide request defaults such as headers, query parameters, retries, and timeout.
///
public global::Letta.AutoSDKClientOptions Options { get; }
+
///
///
///
diff --git a/src/libs/Letta/Generated/Letta.IStepsClient.g.cs b/src/libs/Letta/Generated/Letta.IStepsClient.g.cs
index 7c9ac24b..1521742a 100644
--- a/src/libs/Letta/Generated/Letta.IStepsClient.g.cs
+++ b/src/libs/Letta/Generated/Letta.IStepsClient.g.cs
@@ -19,6 +19,27 @@ public partial interface IStepsClient : global::System.IDisposable
///
public System.Uri? BaseUri { get; }
+
+ ///
+ /// The server options available for this client.
+ ///
+ public global::System.Collections.Generic.IReadOnlyList AvailableServers { get; }
+
+ ///
+ /// The currently selected server for this client, if any.
+ ///
+ public global::Letta.AutoSDKServer? SelectedServer { get; set; }
+
+ ///
+ /// Selects one of the generated server options by id.
+ ///
+ public bool TrySelectServer(string serverId);
+
+ ///
+ /// Clears the currently selected server.
+ ///
+ public void ClearSelectedServer();
+
///
/// The authorizations to use for the requests.
///
@@ -32,12 +53,12 @@ public partial interface IStepsClient : global::System.IDisposable
/// ensuring is populated.
///
public bool ReadResponseAsString { get; set; }
-
///
/// Client-wide request defaults such as headers, query parameters, retries, and timeout.
///
public global::Letta.AutoSDKClientOptions Options { get; }
+
///
///
///
diff --git a/src/libs/Letta/Generated/Letta.ITagClient.g.cs b/src/libs/Letta/Generated/Letta.ITagClient.g.cs
index 3d37ca2d..406e4118 100644
--- a/src/libs/Letta/Generated/Letta.ITagClient.g.cs
+++ b/src/libs/Letta/Generated/Letta.ITagClient.g.cs
@@ -19,6 +19,27 @@ public partial interface ITagClient : global::System.IDisposable
///
public System.Uri? BaseUri { get; }
+
+ ///
+ /// The server options available for this client.
+ ///
+ public global::System.Collections.Generic.IReadOnlyList AvailableServers { get; }
+
+ ///
+ /// The currently selected server for this client, if any.
+ ///
+ public global::Letta.AutoSDKServer? SelectedServer { get; set; }
+
+ ///
+ /// Selects one of the generated server options by id.
+ ///
+ public bool TrySelectServer(string serverId);
+
+ ///
+ /// Clears the currently selected server.
+ ///
+ public void ClearSelectedServer();
+
///
/// The authorizations to use for the requests.
///
@@ -32,12 +53,12 @@ public partial interface ITagClient : global::System.IDisposable
/// ensuring is populated.
///
public bool ReadResponseAsString { get; set; }
-
///
/// Client-wide request defaults such as headers, query parameters, retries, and timeout.
///
public global::Letta.AutoSDKClientOptions Options { get; }
+
///
///
///
diff --git a/src/libs/Letta/Generated/Letta.ITemplatesClient.g.cs b/src/libs/Letta/Generated/Letta.ITemplatesClient.g.cs
index 826fef14..355186ec 100644
--- a/src/libs/Letta/Generated/Letta.ITemplatesClient.g.cs
+++ b/src/libs/Letta/Generated/Letta.ITemplatesClient.g.cs
@@ -19,6 +19,27 @@ public partial interface ITemplatesClient : global::System.IDisposable
///
public System.Uri? BaseUri { get; }
+
+ ///
+ /// The server options available for this client.
+ ///
+ public global::System.Collections.Generic.IReadOnlyList AvailableServers { get; }
+
+ ///
+ /// The currently selected server for this client, if any.
+ ///
+ public global::Letta.AutoSDKServer? SelectedServer { get; set; }
+
+ ///
+ /// Selects one of the generated server options by id.
+ ///
+ public bool TrySelectServer(string serverId);
+
+ ///
+ /// Clears the currently selected server.
+ ///
+ public void ClearSelectedServer();
+
///
/// The authorizations to use for the requests.
///
@@ -32,12 +53,12 @@ public partial interface ITemplatesClient : global::System.IDisposable
/// ensuring is populated.
///
public bool ReadResponseAsString { get; set; }
-
///
/// Client-wide request defaults such as headers, query parameters, retries, and timeout.
///
public global::Letta.AutoSDKClientOptions Options { get; }
+
///
///
///
diff --git a/src/libs/Letta/Generated/Letta.IToolsClient.g.cs b/src/libs/Letta/Generated/Letta.IToolsClient.g.cs
index 57987441..31e4ed07 100644
--- a/src/libs/Letta/Generated/Letta.IToolsClient.g.cs
+++ b/src/libs/Letta/Generated/Letta.IToolsClient.g.cs
@@ -19,6 +19,27 @@ public partial interface IToolsClient : global::System.IDisposable
///
public System.Uri? BaseUri { get; }
+
+ ///
+ /// The server options available for this client.
+ ///
+ public global::System.Collections.Generic.IReadOnlyList AvailableServers { get; }
+
+ ///
+ /// The currently selected server for this client, if any.
+ ///
+ public global::Letta.AutoSDKServer? SelectedServer { get; set; }
+
+ ///
+ /// Selects one of the generated server options by id.
+ ///
+ public bool TrySelectServer(string serverId);
+
+ ///
+ /// Clears the currently selected server.
+ ///
+ public void ClearSelectedServer();
+
///
/// The authorizations to use for the requests.
///
@@ -32,12 +53,12 @@ public partial interface IToolsClient : global::System.IDisposable
/// ensuring is populated.
///
public bool ReadResponseAsString { get; set; }
-
///
/// Client-wide request defaults such as headers, query parameters, retries, and timeout.
///
public global::Letta.AutoSDKClientOptions Options { get; }
+
///
///
///
diff --git a/src/libs/Letta/Generated/Letta.InternalAgentsClient.CountInternalAgents.g.cs b/src/libs/Letta/Generated/Letta.InternalAgentsClient.CountInternalAgents.g.cs
index 8e8f1a5d..266cc09d 100644
--- a/src/libs/Letta/Generated/Letta.InternalAgentsClient.CountInternalAgents.g.cs
+++ b/src/libs/Letta/Generated/Letta.InternalAgentsClient.CountInternalAgents.g.cs
@@ -6,6 +6,19 @@ namespace Letta
public partial class InternalAgentsClient
{
+ private static readonly global::Letta.AutoSDKServer[] s_CountInternalAgentsServers = new global::Letta.AutoSDKServer[]
+ { new global::Letta.AutoSDKServer(
+ id: "https-app-letta-com",
+ name: "Letta Cloud",
+ url: "https://app.letta.com/",
+ description: "Letta Cloud"),
+ new global::Letta.AutoSDKServer(
+ id: "http-localhost",
+ name: "Self-hosted",
+ url: "http://localhost:8283/",
+ description: "Self-hosted"),
+ };
+
private static readonly global::Letta.EndPointSecurityRequirement s_CountInternalAgentsSecurityRequirement0 =
new global::Letta.EndPointSecurityRequirement
@@ -87,7 +100,9 @@ partial void ProcessCountInternalAgentsResponseContent(
{
var __pathBuilder = new global::Letta.PathBuilder(
path: "/v1/_internal_agents/count",
- baseUri: HttpClient.BaseAddress);
+ baseUri: ResolveBaseUri(
+ servers: s_CountInternalAgentsServers,
+ defaultBaseUrl: "https://app.letta.com/"));
__pathBuilder
.AddOptionalParameter("exclude_hidden", excludeHidden?.ToString().ToLowerInvariant())
;
diff --git a/src/libs/Letta/Generated/Letta.InternalAgentsClient.ModifyInternalCoreMemoryBlock.g.cs b/src/libs/Letta/Generated/Letta.InternalAgentsClient.ModifyInternalCoreMemoryBlock.g.cs
index b34bf505..6c734a49 100644
--- a/src/libs/Letta/Generated/Letta.InternalAgentsClient.ModifyInternalCoreMemoryBlock.g.cs
+++ b/src/libs/Letta/Generated/Letta.InternalAgentsClient.ModifyInternalCoreMemoryBlock.g.cs
@@ -6,6 +6,19 @@ namespace Letta
public partial class InternalAgentsClient
{
+ private static readonly global::Letta.AutoSDKServer[] s_ModifyInternalCoreMemoryBlockServers = new global::Letta.AutoSDKServer[]
+ { new global::Letta.AutoSDKServer(
+ id: "https-app-letta-com",
+ name: "Letta Cloud",
+ url: "https://app.letta.com/",
+ description: "Letta Cloud"),
+ new global::Letta.AutoSDKServer(
+ id: "http-localhost",
+ name: "Self-hosted",
+ url: "http://localhost:8283/",
+ description: "Self-hosted"),
+ };
+
private static readonly global::Letta.EndPointSecurityRequirement s_ModifyInternalCoreMemoryBlockSecurityRequirement0 =
new global::Letta.EndPointSecurityRequirement
@@ -99,7 +112,9 @@ partial void ProcessModifyInternalCoreMemoryBlockResponseContent(
{
var __pathBuilder = new global::Letta.PathBuilder(
path: $"/v1/_internal_agents/{agentId}/core-memory/blocks/{blockLabel}",
- baseUri: HttpClient.BaseAddress);
+ baseUri: ResolveBaseUri(
+ servers: s_ModifyInternalCoreMemoryBlockServers,
+ defaultBaseUrl: "https://app.letta.com/"));
var __path = __pathBuilder.ToString();
__path = global::Letta.AutoSDKRequestOptionsSupport.AppendQueryParameters(
path: __path,
diff --git a/src/libs/Letta/Generated/Letta.InternalAgentsClient.g.cs b/src/libs/Letta/Generated/Letta.InternalAgentsClient.g.cs
index 3cd52ff9..56bc188b 100644
--- a/src/libs/Letta/Generated/Letta.InternalAgentsClient.g.cs
+++ b/src/libs/Letta/Generated/Letta.InternalAgentsClient.g.cs
@@ -20,7 +20,7 @@ public sealed partial class InternalAgentsClient : global::Letta.IInternalAgents
public global::System.Net.Http.HttpClient HttpClient { get; }
///
- public System.Uri? BaseUri => HttpClient.BaseAddress;
+ public System.Uri? BaseUri => ResolveDisplayedBaseUri();
///
public global::System.Collections.Generic.List Authorizations { get; }
@@ -33,12 +33,43 @@ public sealed partial class InternalAgentsClient : global::Letta.IInternalAgents
///
public global::Letta.AutoSDKClientOptions Options { get; }
+
+
+ internal global::Letta.AutoSDKServerConfiguration AutoSDKServerConfiguration { get; set; } = new global::Letta.AutoSDKServerConfiguration();
///
///
///
public global::System.Text.Json.Serialization.JsonSerializerContext JsonSerializerContext { get; set; } = global::Letta.SourceGenerationContext.Default;
+
+ private static readonly global::Letta.AutoSDKServer[] s_availableServers = new global::Letta.AutoSDKServer[]
+ { new global::Letta.AutoSDKServer(
+ id: "https-app-letta-com",
+ name: "Letta Cloud",
+ url: "https://app.letta.com/",
+ description: "Letta Cloud"),
+ new global::Letta.AutoSDKServer(
+ id: "http-localhost",
+ name: "Self-hosted",
+ url: "http://localhost:8283/",
+ description: "Self-hosted"),
+ };
+
+ ///
+ /// The server options available for this client.
+ ///
+ public global::System.Collections.Generic.IReadOnlyList AvailableServers => s_availableServers;
+
+ ///
+ /// The currently selected server for this client, if any.
+ ///
+ public global::Letta.AutoSDKServer? SelectedServer
+ {
+ get => ResolveSelectedServer();
+ set => SelectServer(value);
+ }
+
///
/// Creates a new instance of the InternalAgentsClient.
/// If no httpClient is provided, a new one will be created.
@@ -85,6 +116,8 @@ public InternalAgentsClient(
Options = options ?? new global::Letta.AutoSDKClientOptions();
_disposeHttpClient = disposeHttpClient;
+ AutoSDKServerConfiguration.ExplicitBaseUri = baseUri ?? httpClient?.BaseAddress;
+
Initialized(HttpClient);
}
@@ -111,5 +144,117 @@ partial void ProcessResponseContent(
global::System.Net.Http.HttpClient client,
global::System.Net.Http.HttpResponseMessage response,
ref string content);
+
+
+ ///
+ /// Selects one of the generated server options by id.
+ ///
+ public bool TrySelectServer(string serverId)
+ {
+ if (string.IsNullOrWhiteSpace(serverId))
+ {
+ return false;
+ }
+
+ foreach (var server in s_availableServers)
+ {
+ if (string.Equals(server.Id, serverId, global::System.StringComparison.OrdinalIgnoreCase))
+ {
+ AutoSDKServerConfiguration.SelectedServer = server;
+ AutoSDKServerConfiguration.ExplicitBaseUri = null;
+ return true;
+ }
+ }
+
+ return false;
+ }
+
+ ///
+ /// Clears the currently selected server.
+ ///
+ public void ClearSelectedServer()
+ {
+ AutoSDKServerConfiguration.SelectedServer = null;
+ }
+
+ private global::Letta.AutoSDKServer? ResolveSelectedServer()
+ {
+ var selectedServer = AutoSDKServerConfiguration.SelectedServer;
+ if (selectedServer is null)
+ {
+ return null;
+ }
+
+ foreach (var server in s_availableServers)
+ {
+ if (string.Equals(server.Id, selectedServer.Id, global::System.StringComparison.Ordinal))
+ {
+ return server;
+ }
+ }
+
+ return null;
+ }
+
+ private void SelectServer(global::Letta.AutoSDKServer? server)
+ {
+ if (server is null)
+ {
+ AutoSDKServerConfiguration.SelectedServer = null;
+ return;
+ }
+
+ foreach (var candidate in s_availableServers)
+ {
+ if (string.Equals(candidate.Id, server.Id, global::System.StringComparison.Ordinal))
+ {
+ AutoSDKServerConfiguration.SelectedServer = candidate;
+ AutoSDKServerConfiguration.ExplicitBaseUri = null;
+ return;
+ }
+ }
+
+ throw new global::System.ArgumentException("The provided server is not available for this client.", nameof(server));
+ }
+
+ private global::System.Uri? ResolveDisplayedBaseUri()
+ {
+ if (AutoSDKServerConfiguration.ExplicitBaseUri is global::System.Uri explicitBaseUri)
+ {
+ return explicitBaseUri;
+ }
+
+ return ResolveSelectedServer()?.Uri ?? HttpClient.BaseAddress;
+ }
+
+ private global::System.Uri? ResolveBaseUri(
+ global::Letta.AutoSDKServer[] servers,
+ string defaultBaseUrl)
+ {
+ if (AutoSDKServerConfiguration.ExplicitBaseUri is global::System.Uri explicitBaseUri)
+ {
+ return explicitBaseUri;
+ }
+
+ if (AutoSDKServerConfiguration.SelectedServer is global::Letta.AutoSDKServer selectedServer)
+ {
+ foreach (var server in servers)
+ {
+ if (string.Equals(server.Id, selectedServer.Id, global::System.StringComparison.Ordinal))
+ {
+ return server.Uri;
+ }
+ }
+ }
+
+ if (servers.Length > 0)
+ {
+ return servers[0].Uri;
+ }
+
+ return string.IsNullOrWhiteSpace(defaultBaseUrl)
+ ? HttpClient.BaseAddress
+ : new global::System.Uri(defaultBaseUrl, global::System.UriKind.RelativeOrAbsolute);
+ }
}
}
\ No newline at end of file
diff --git a/src/libs/Letta/Generated/Letta.InternalBlocksClient.CreateInternalBlock.g.cs b/src/libs/Letta/Generated/Letta.InternalBlocksClient.CreateInternalBlock.g.cs
index a0b43be2..35eb1a16 100644
--- a/src/libs/Letta/Generated/Letta.InternalBlocksClient.CreateInternalBlock.g.cs
+++ b/src/libs/Letta/Generated/Letta.InternalBlocksClient.CreateInternalBlock.g.cs
@@ -6,6 +6,19 @@ namespace Letta
public partial class InternalBlocksClient
{
+ private static readonly global::Letta.AutoSDKServer[] s_CreateInternalBlockServers = new global::Letta.AutoSDKServer[]
+ { new global::Letta.AutoSDKServer(
+ id: "https-app-letta-com",
+ name: "Letta Cloud",
+ url: "https://app.letta.com/",
+ description: "Letta Cloud"),
+ new global::Letta.AutoSDKServer(
+ id: "http-localhost",
+ name: "Self-hosted",
+ url: "http://localhost:8283/",
+ description: "Self-hosted"),
+ };
+
private static readonly global::Letta.EndPointSecurityRequirement s_CreateInternalBlockSecurityRequirement0 =
new global::Letta.EndPointSecurityRequirement
@@ -86,7 +99,9 @@ partial void ProcessCreateInternalBlockResponseContent(
{
var __pathBuilder = new global::Letta.PathBuilder(
path: "/v1/_internal_blocks/",
- baseUri: HttpClient.BaseAddress);
+ baseUri: ResolveBaseUri(
+ servers: s_CreateInternalBlockServers,
+ defaultBaseUrl: "https://app.letta.com/"));
var __path = __pathBuilder.ToString();
__path = global::Letta.AutoSDKRequestOptionsSupport.AppendQueryParameters(
path: __path,
diff --git a/src/libs/Letta/Generated/Letta.InternalBlocksClient.DeleteInternalBlock.g.cs b/src/libs/Letta/Generated/Letta.InternalBlocksClient.DeleteInternalBlock.g.cs
index a2cbe4f3..acefa883 100644
--- a/src/libs/Letta/Generated/Letta.InternalBlocksClient.DeleteInternalBlock.g.cs
+++ b/src/libs/Letta/Generated/Letta.InternalBlocksClient.DeleteInternalBlock.g.cs
@@ -6,6 +6,19 @@ namespace Letta
public partial class InternalBlocksClient
{
+ private static readonly global::Letta.AutoSDKServer[] s_DeleteInternalBlockServers = new global::Letta.AutoSDKServer[]
+ { new global::Letta.AutoSDKServer(
+ id: "https-app-letta-com",
+ name: "Letta Cloud",
+ url: "https://app.letta.com/",
+ description: "Letta Cloud"),
+ new global::Letta.AutoSDKServer(
+ id: "http-localhost",
+ name: "Self-hosted",
+ url: "http://localhost:8283/",
+ description: "Self-hosted"),
+ };
+
private static readonly global::Letta.EndPointSecurityRequirement s_DeleteInternalBlockSecurityRequirement0 =
new global::Letta.EndPointSecurityRequirement
@@ -85,7 +98,9 @@ partial void ProcessDeleteInternalBlockResponseContent(
{
var __pathBuilder = new global::Letta.PathBuilder(
path: $"/v1/_internal_blocks/{blockId}",
- baseUri: HttpClient.BaseAddress);
+ baseUri: ResolveBaseUri(
+ servers: s_DeleteInternalBlockServers,
+ defaultBaseUrl: "https://app.letta.com/"));
var __path = __pathBuilder.ToString();
__path = global::Letta.AutoSDKRequestOptionsSupport.AppendQueryParameters(
path: __path,
diff --git a/src/libs/Letta/Generated/Letta.InternalBlocksClient.ListAgentsForInternalBlock.g.cs b/src/libs/Letta/Generated/Letta.InternalBlocksClient.ListAgentsForInternalBlock.g.cs
index 25dc494b..e3275d18 100644
--- a/src/libs/Letta/Generated/Letta.InternalBlocksClient.ListAgentsForInternalBlock.g.cs
+++ b/src/libs/Letta/Generated/Letta.InternalBlocksClient.ListAgentsForInternalBlock.g.cs
@@ -8,6 +8,19 @@ namespace Letta
public partial class InternalBlocksClient
{
+ private static readonly global::Letta.AutoSDKServer[] s_ListAgentsForInternalBlockServers = new global::Letta.AutoSDKServer[]
+ { new global::Letta.AutoSDKServer(
+ id: "https-app-letta-com",
+ name: "Letta Cloud",
+ url: "https://app.letta.com/",
+ description: "Letta Cloud"),
+ new global::Letta.AutoSDKServer(
+ id: "http-localhost",
+ name: "Self-hosted",
+ url: "http://localhost:8283/",
+ description: "Self-hosted"),
+ };
+
private static readonly global::Letta.EndPointSecurityRequirement s_ListAgentsForInternalBlockSecurityRequirement0 =
new global::Letta.EndPointSecurityRequirement
@@ -142,7 +155,9 @@ partial void ProcessListAgentsForInternalBlockResponseContent(
{
var __pathBuilder = new global::Letta.PathBuilder(
path: $"/v1/_internal_blocks/{blockId}/agents",
- baseUri: HttpClient.BaseAddress);
+ baseUri: ResolveBaseUri(
+ servers: s_ListAgentsForInternalBlockServers,
+ defaultBaseUrl: "https://app.letta.com/"));
__pathBuilder
.AddOptionalParameter("before", before)
.AddOptionalParameter("after", after)
diff --git a/src/libs/Letta/Generated/Letta.InternalBlocksClient.ListInternalBlocks.g.cs b/src/libs/Letta/Generated/Letta.InternalBlocksClient.ListInternalBlocks.g.cs
index b55e234b..7b632570 100644
--- a/src/libs/Letta/Generated/Letta.InternalBlocksClient.ListInternalBlocks.g.cs
+++ b/src/libs/Letta/Generated/Letta.InternalBlocksClient.ListInternalBlocks.g.cs
@@ -6,6 +6,19 @@ namespace Letta
public partial class InternalBlocksClient
{
+ private static readonly global::Letta.AutoSDKServer[] s_ListInternalBlocksServers = new global::Letta.AutoSDKServer[]
+ { new global::Letta.AutoSDKServer(
+ id: "https-app-letta-com",
+ name: "Letta Cloud",
+ url: "https://app.letta.com/",
+ description: "Letta Cloud"),
+ new global::Letta.AutoSDKServer(
+ id: "http-localhost",
+ name: "Self-hosted",
+ url: "http://localhost:8283/",
+ description: "Self-hosted"),
+ };
+
private static readonly global::Letta.EndPointSecurityRequirement s_ListInternalBlocksSecurityRequirement0 =
new global::Letta.EndPointSecurityRequirement
@@ -201,7 +214,9 @@ partial void ProcessListInternalBlocksResponseContent(
{
var __pathBuilder = new global::Letta.PathBuilder(
path: "/v1/_internal_blocks/",
- baseUri: HttpClient.BaseAddress);
+ baseUri: ResolveBaseUri(
+ servers: s_ListInternalBlocksServers,
+ defaultBaseUrl: "https://app.letta.com/"));
__pathBuilder
.AddOptionalParameter("label", label)
.AddOptionalParameter("templates_only", templatesOnly?.ToString().ToLowerInvariant())
diff --git a/src/libs/Letta/Generated/Letta.InternalBlocksClient.g.cs b/src/libs/Letta/Generated/Letta.InternalBlocksClient.g.cs
index e5601c35..a0a3a519 100644
--- a/src/libs/Letta/Generated/Letta.InternalBlocksClient.g.cs
+++ b/src/libs/Letta/Generated/Letta.InternalBlocksClient.g.cs
@@ -20,7 +20,7 @@ public sealed partial class InternalBlocksClient : global::Letta.IInternalBlocks
public global::System.Net.Http.HttpClient HttpClient { get; }
///
- public System.Uri? BaseUri => HttpClient.BaseAddress;
+ public System.Uri? BaseUri => ResolveDisplayedBaseUri();
///
public global::System.Collections.Generic.List Authorizations { get; }
@@ -33,12 +33,43 @@ public sealed partial class InternalBlocksClient : global::Letta.IInternalBlocks
///
public global::Letta.AutoSDKClientOptions Options { get; }
+
+
+ internal global::Letta.AutoSDKServerConfiguration AutoSDKServerConfiguration { get; set; } = new global::Letta.AutoSDKServerConfiguration();
///
///
///
public global::System.Text.Json.Serialization.JsonSerializerContext JsonSerializerContext { get; set; } = global::Letta.SourceGenerationContext.Default;
+
+ private static readonly global::Letta.AutoSDKServer[] s_availableServers = new global::Letta.AutoSDKServer[]
+ { new global::Letta.AutoSDKServer(
+ id: "https-app-letta-com",
+ name: "Letta Cloud",
+ url: "https://app.letta.com/",
+ description: "Letta Cloud"),
+ new global::Letta.AutoSDKServer(
+ id: "http-localhost",
+ name: "Self-hosted",
+ url: "http://localhost:8283/",
+ description: "Self-hosted"),
+ };
+
+ ///
+ /// The server options available for this client.
+ ///
+ public global::System.Collections.Generic.IReadOnlyList AvailableServers => s_availableServers;
+
+ ///
+ /// The currently selected server for this client, if any.
+ ///
+ public global::Letta.AutoSDKServer? SelectedServer
+ {
+ get => ResolveSelectedServer();
+ set => SelectServer(value);
+ }
+
///
/// Creates a new instance of the InternalBlocksClient.
/// If no httpClient is provided, a new one will be created.
@@ -85,6 +116,8 @@ public InternalBlocksClient(
Options = options ?? new global::Letta.AutoSDKClientOptions();
_disposeHttpClient = disposeHttpClient;
+ AutoSDKServerConfiguration.ExplicitBaseUri = baseUri ?? httpClient?.BaseAddress;
+
Initialized(HttpClient);
}
@@ -111,5 +144,117 @@ partial void ProcessResponseContent(
global::System.Net.Http.HttpClient client,
global::System.Net.Http.HttpResponseMessage response,
ref string content);
+
+
+ ///
+ /// Selects one of the generated server options by id.
+ ///
+ public bool TrySelectServer(string serverId)
+ {
+ if (string.IsNullOrWhiteSpace(serverId))
+ {
+ return false;
+ }
+
+ foreach (var server in s_availableServers)
+ {
+ if (string.Equals(server.Id, serverId, global::System.StringComparison.OrdinalIgnoreCase))
+ {
+ AutoSDKServerConfiguration.SelectedServer = server;
+ AutoSDKServerConfiguration.ExplicitBaseUri = null;
+ return true;
+ }
+ }
+
+ return false;
+ }
+
+ ///
+ /// Clears the currently selected server.
+ ///
+ public void ClearSelectedServer()
+ {
+ AutoSDKServerConfiguration.SelectedServer = null;
+ }
+
+ private global::Letta.AutoSDKServer? ResolveSelectedServer()
+ {
+ var selectedServer = AutoSDKServerConfiguration.SelectedServer;
+ if (selectedServer is null)
+ {
+ return null;
+ }
+
+ foreach (var server in s_availableServers)
+ {
+ if (string.Equals(server.Id, selectedServer.Id, global::System.StringComparison.Ordinal))
+ {
+ return server;
+ }
+ }
+
+ return null;
+ }
+
+ private void SelectServer(global::Letta.AutoSDKServer? server)
+ {
+ if (server is null)
+ {
+ AutoSDKServerConfiguration.SelectedServer = null;
+ return;
+ }
+
+ foreach (var candidate in s_availableServers)
+ {
+ if (string.Equals(candidate.Id, server.Id, global::System.StringComparison.Ordinal))
+ {
+ AutoSDKServerConfiguration.SelectedServer = candidate;
+ AutoSDKServerConfiguration.ExplicitBaseUri = null;
+ return;
+ }
+ }
+
+ throw new global::System.ArgumentException("The provided server is not available for this client.", nameof(server));
+ }
+
+ private global::System.Uri? ResolveDisplayedBaseUri()
+ {
+ if (AutoSDKServerConfiguration.ExplicitBaseUri is global::System.Uri explicitBaseUri)
+ {
+ return explicitBaseUri;
+ }
+
+ return ResolveSelectedServer()?.Uri ?? HttpClient.BaseAddress;
+ }
+
+ private global::System.Uri? ResolveBaseUri(
+ global::Letta.AutoSDKServer[] servers,
+ string defaultBaseUrl)
+ {
+ if (AutoSDKServerConfiguration.ExplicitBaseUri is global::System.Uri explicitBaseUri)
+ {
+ return explicitBaseUri;
+ }
+
+ if (AutoSDKServerConfiguration.SelectedServer is global::Letta.AutoSDKServer selectedServer)
+ {
+ foreach (var server in servers)
+ {
+ if (string.Equals(server.Id, selectedServer.Id, global::System.StringComparison.Ordinal))
+ {
+ return server.Uri;
+ }
+ }
+ }
+
+ if (servers.Length > 0)
+ {
+ return servers[0].Uri;
+ }
+
+ return string.IsNullOrWhiteSpace(defaultBaseUrl)
+ ? HttpClient.BaseAddress
+ : new global::System.Uri(defaultBaseUrl, global::System.UriKind.RelativeOrAbsolute);
+ }
}
}
\ No newline at end of file
diff --git a/src/libs/Letta/Generated/Letta.InternalRunsClient.ListInternalRuns.g.cs b/src/libs/Letta/Generated/Letta.InternalRunsClient.ListInternalRuns.g.cs
index 47207f86..17a0a9ab 100644
--- a/src/libs/Letta/Generated/Letta.InternalRunsClient.ListInternalRuns.g.cs
+++ b/src/libs/Letta/Generated/Letta.InternalRunsClient.ListInternalRuns.g.cs
@@ -8,6 +8,19 @@ namespace Letta
public partial class InternalRunsClient
{
+ private static readonly global::Letta.AutoSDKServer[] s_ListInternalRunsServers = new global::Letta.AutoSDKServer[]
+ { new global::Letta.AutoSDKServer(
+ id: "https-app-letta-com",
+ name: "Letta Cloud",
+ url: "https://app.letta.com/",
+ description: "Letta Cloud"),
+ new global::Letta.AutoSDKServer(
+ id: "http-localhost",
+ name: "Self-hosted",
+ url: "http://localhost:8283/",
+ description: "Self-hosted"),
+ };
+
private static readonly global::Letta.EndPointSecurityRequirement s_ListInternalRunsSecurityRequirement0 =
new global::Letta.EndPointSecurityRequirement
@@ -255,7 +268,9 @@ partial void ProcessListInternalRunsResponseContent(
{
var __pathBuilder = new global::Letta.PathBuilder(
path: "/v1/_internal_runs/",
- baseUri: HttpClient.BaseAddress);
+ baseUri: ResolveBaseUri(
+ servers: s_ListInternalRunsServers,
+ defaultBaseUrl: "https://app.letta.com/"));
__pathBuilder
.AddOptionalParameter("run_id", runId)
.AddOptionalParameter("agent_id", agentId)
diff --git a/src/libs/Letta/Generated/Letta.InternalRunsClient.g.cs b/src/libs/Letta/Generated/Letta.InternalRunsClient.g.cs
index c3e02215..79b96ae9 100644
--- a/src/libs/Letta/Generated/Letta.InternalRunsClient.g.cs
+++ b/src/libs/Letta/Generated/Letta.InternalRunsClient.g.cs
@@ -20,7 +20,7 @@ public sealed partial class InternalRunsClient : global::Letta.IInternalRunsClie
public global::System.Net.Http.HttpClient HttpClient { get; }
///
- public System.Uri? BaseUri => HttpClient.BaseAddress;
+ public System.Uri? BaseUri => ResolveDisplayedBaseUri();
///
public global::System.Collections.Generic.List Authorizations { get; }
@@ -33,12 +33,43 @@ public sealed partial class InternalRunsClient : global::Letta.IInternalRunsClie
///
public global::Letta.AutoSDKClientOptions Options { get; }
+
+
+ internal global::Letta.AutoSDKServerConfiguration AutoSDKServerConfiguration { get; set; } = new global::Letta.AutoSDKServerConfiguration();
///
///
///
public global::System.Text.Json.Serialization.JsonSerializerContext JsonSerializerContext { get; set; } = global::Letta.SourceGenerationContext.Default;
+
+ private static readonly global::Letta.AutoSDKServer[] s_availableServers = new global::Letta.AutoSDKServer[]
+ { new global::Letta.AutoSDKServer(
+ id: "https-app-letta-com",
+ name: "Letta Cloud",
+ url: "https://app.letta.com/",
+ description: "Letta Cloud"),
+ new global::Letta.AutoSDKServer(
+ id: "http-localhost",
+ name: "Self-hosted",
+ url: "http://localhost:8283/",
+ description: "Self-hosted"),
+ };
+
+ ///
+ /// The server options available for this client.
+ ///
+ public global::System.Collections.Generic.IReadOnlyList AvailableServers => s_availableServers;
+
+ ///
+ /// The currently selected server for this client, if any.
+ ///
+ public global::Letta.AutoSDKServer? SelectedServer
+ {
+ get => ResolveSelectedServer();
+ set => SelectServer(value);
+ }
+
///
/// Creates a new instance of the InternalRunsClient.
/// If no httpClient is provided, a new one will be created.
@@ -85,6 +116,8 @@ public InternalRunsClient(
Options = options ?? new global::Letta.AutoSDKClientOptions();
_disposeHttpClient = disposeHttpClient;
+ AutoSDKServerConfiguration.ExplicitBaseUri = baseUri ?? httpClient?.BaseAddress;
+
Initialized(HttpClient);
}
@@ -111,5 +144,117 @@ partial void ProcessResponseContent(
global::System.Net.Http.HttpClient client,
global::System.Net.Http.HttpResponseMessage response,
ref string content);
+
+
+ ///
+ /// Selects one of the generated server options by id.
+ ///
+ public bool TrySelectServer(string serverId)
+ {
+ if (string.IsNullOrWhiteSpace(serverId))
+ {
+ return false;
+ }
+
+ foreach (var server in s_availableServers)
+ {
+ if (string.Equals(server.Id, serverId, global::System.StringComparison.OrdinalIgnoreCase))
+ {
+ AutoSDKServerConfiguration.SelectedServer = server;
+ AutoSDKServerConfiguration.ExplicitBaseUri = null;
+ return true;
+ }
+ }
+
+ return false;
+ }
+
+ ///
+ /// Clears the currently selected server.
+ ///
+ public void ClearSelectedServer()
+ {
+ AutoSDKServerConfiguration.SelectedServer = null;
+ }
+
+ private global::Letta.AutoSDKServer? ResolveSelectedServer()
+ {
+ var selectedServer = AutoSDKServerConfiguration.SelectedServer;
+ if (selectedServer is null)
+ {
+ return null;
+ }
+
+ foreach (var server in s_availableServers)
+ {
+ if (string.Equals(server.Id, selectedServer.Id, global::System.StringComparison.Ordinal))
+ {
+ return server;
+ }
+ }
+
+ return null;
+ }
+
+ private void SelectServer(global::Letta.AutoSDKServer? server)
+ {
+ if (server is null)
+ {
+ AutoSDKServerConfiguration.SelectedServer = null;
+ return;
+ }
+
+ foreach (var candidate in s_availableServers)
+ {
+ if (string.Equals(candidate.Id, server.Id, global::System.StringComparison.Ordinal))
+ {
+ AutoSDKServerConfiguration.SelectedServer = candidate;
+ AutoSDKServerConfiguration.ExplicitBaseUri = null;
+ return;
+ }
+ }
+
+ throw new global::System.ArgumentException("The provided server is not available for this client.", nameof(server));
+ }
+
+ private global::System.Uri? ResolveDisplayedBaseUri()
+ {
+ if (AutoSDKServerConfiguration.ExplicitBaseUri is global::System.Uri explicitBaseUri)
+ {
+ return explicitBaseUri;
+ }
+
+ return ResolveSelectedServer()?.Uri ?? HttpClient.BaseAddress;
+ }
+
+ private global::System.Uri? ResolveBaseUri(
+ global::Letta.AutoSDKServer[] servers,
+ string defaultBaseUrl)
+ {
+ if (AutoSDKServerConfiguration.ExplicitBaseUri is global::System.Uri explicitBaseUri)
+ {
+ return explicitBaseUri;
+ }
+
+ if (AutoSDKServerConfiguration.SelectedServer is global::Letta.AutoSDKServer selectedServer)
+ {
+ foreach (var server in servers)
+ {
+ if (string.Equals(server.Id, selectedServer.Id, global::System.StringComparison.Ordinal))
+ {
+ return server.Uri;
+ }
+ }
+ }
+
+ if (servers.Length > 0)
+ {
+ return servers[0].Uri;
+ }
+
+ return string.IsNullOrWhiteSpace(defaultBaseUrl)
+ ? HttpClient.BaseAddress
+ : new global::System.Uri(defaultBaseUrl, global::System.UriKind.RelativeOrAbsolute);
+ }
}
}
\ No newline at end of file
diff --git a/src/libs/Letta/Generated/Letta.InternalTemplatesClient.CreateInternalTemplateAgent.g.cs b/src/libs/Letta/Generated/Letta.InternalTemplatesClient.CreateInternalTemplateAgent.g.cs
index 1e9d4460..469f2c4f 100644
--- a/src/libs/Letta/Generated/Letta.InternalTemplatesClient.CreateInternalTemplateAgent.g.cs
+++ b/src/libs/Letta/Generated/Letta.InternalTemplatesClient.CreateInternalTemplateAgent.g.cs
@@ -8,6 +8,19 @@ namespace Letta
public partial class InternalTemplatesClient
{
+ private static readonly global::Letta.AutoSDKServer[] s_CreateInternalTemplateAgentServers = new global::Letta.AutoSDKServer[]
+ { new global::Letta.AutoSDKServer(
+ id: "https-app-letta-com",
+ name: "Letta Cloud",
+ url: "https://app.letta.com/",
+ description: "Letta Cloud"),
+ new global::Letta.AutoSDKServer(
+ id: "http-localhost",
+ name: "Self-hosted",
+ url: "http://localhost:8283/",
+ description: "Self-hosted"),
+ };
+
private static readonly global::Letta.EndPointSecurityRequirement s_CreateInternalTemplateAgentSecurityRequirement0 =
new global::Letta.EndPointSecurityRequirement
@@ -89,7 +102,9 @@ partial void ProcessCreateInternalTemplateAgentResponseContent(
{
var __pathBuilder = new global::Letta.PathBuilder(
path: "/v1/_internal_templates/agents",
- baseUri: HttpClient.BaseAddress);
+ baseUri: ResolveBaseUri(
+ servers: s_CreateInternalTemplateAgentServers,
+ defaultBaseUrl: "https://app.letta.com/"));
var __path = __pathBuilder.ToString();
__path = global::Letta.AutoSDKRequestOptionsSupport.AppendQueryParameters(
path: __path,
diff --git a/src/libs/Letta/Generated/Letta.InternalTemplatesClient.CreateInternalTemplateBlock.g.cs b/src/libs/Letta/Generated/Letta.InternalTemplatesClient.CreateInternalTemplateBlock.g.cs
index e01da2c9..02760d79 100644
--- a/src/libs/Letta/Generated/Letta.InternalTemplatesClient.CreateInternalTemplateBlock.g.cs
+++ b/src/libs/Letta/Generated/Letta.InternalTemplatesClient.CreateInternalTemplateBlock.g.cs
@@ -6,6 +6,19 @@ namespace Letta
public partial class InternalTemplatesClient
{
+ private static readonly global::Letta.AutoSDKServer[] s_CreateInternalTemplateBlockServers = new global::Letta.AutoSDKServer[]
+ { new global::Letta.AutoSDKServer(
+ id: "https-app-letta-com",
+ name: "Letta Cloud",
+ url: "https://app.letta.com/",
+ description: "Letta Cloud"),
+ new global::Letta.AutoSDKServer(
+ id: "http-localhost",
+ name: "Self-hosted",
+ url: "http://localhost:8283/",
+ description: "Self-hosted"),
+ };
+
private static readonly global::Letta.EndPointSecurityRequirement s_CreateInternalTemplateBlockSecurityRequirement0 =
new global::Letta.EndPointSecurityRequirement
@@ -87,7 +100,9 @@ partial void ProcessCreateInternalTemplateBlockResponseContent(
{
var __pathBuilder = new global::Letta.PathBuilder(
path: "/v1/_internal_templates/blocks",
- baseUri: HttpClient.BaseAddress);
+ baseUri: ResolveBaseUri(
+ servers: s_CreateInternalTemplateBlockServers,
+ defaultBaseUrl: "https://app.letta.com/"));
var __path = __pathBuilder.ToString();
__path = global::Letta.AutoSDKRequestOptionsSupport.AppendQueryParameters(
path: __path,
diff --git a/src/libs/Letta/Generated/Letta.InternalTemplatesClient.CreateInternalTemplateBlocksBatch.g.cs b/src/libs/Letta/Generated/Letta.InternalTemplatesClient.CreateInternalTemplateBlocksBatch.g.cs
index f73b7e68..7abc579b 100644
--- a/src/libs/Letta/Generated/Letta.InternalTemplatesClient.CreateInternalTemplateBlocksBatch.g.cs
+++ b/src/libs/Letta/Generated/Letta.InternalTemplatesClient.CreateInternalTemplateBlocksBatch.g.cs
@@ -6,6 +6,19 @@ namespace Letta
public partial class InternalTemplatesClient
{
+ private static readonly global::Letta.AutoSDKServer[] s_CreateInternalTemplateBlocksBatchServers = new global::Letta.AutoSDKServer[]
+ { new global::Letta.AutoSDKServer(
+ id: "https-app-letta-com",
+ name: "Letta Cloud",
+ url: "https://app.letta.com/",
+ description: "Letta Cloud"),
+ new global::Letta.AutoSDKServer(
+ id: "http-localhost",
+ name: "Self-hosted",
+ url: "http://localhost:8283/",
+ description: "Self-hosted"),
+ };
+
private static readonly global::Letta.EndPointSecurityRequirement s_CreateInternalTemplateBlocksBatchSecurityRequirement0 =
new global::Letta.EndPointSecurityRequirement
@@ -87,7 +100,9 @@ partial void ProcessCreateInternalTemplateBlocksBatchResponseContent(
{
var __pathBuilder = new global::Letta.PathBuilder(
path: "/v1/_internal_templates/blocks/batch",
- baseUri: HttpClient.BaseAddress);
+ baseUri: ResolveBaseUri(
+ servers: s_CreateInternalTemplateBlocksBatchServers,
+ defaultBaseUrl: "https://app.letta.com/"));
var __path = __pathBuilder.ToString();
__path = global::Letta.AutoSDKRequestOptionsSupport.AppendQueryParameters(
path: __path,
diff --git a/src/libs/Letta/Generated/Letta.InternalTemplatesClient.CreateInternalTemplateGroup.g.cs b/src/libs/Letta/Generated/Letta.InternalTemplatesClient.CreateInternalTemplateGroup.g.cs
index 32fd284c..d75e64ad 100644
--- a/src/libs/Letta/Generated/Letta.InternalTemplatesClient.CreateInternalTemplateGroup.g.cs
+++ b/src/libs/Letta/Generated/Letta.InternalTemplatesClient.CreateInternalTemplateGroup.g.cs
@@ -8,6 +8,19 @@ namespace Letta
public partial class InternalTemplatesClient
{
+ private static readonly global::Letta.AutoSDKServer[] s_CreateInternalTemplateGroupServers = new global::Letta.AutoSDKServer[]
+ { new global::Letta.AutoSDKServer(
+ id: "https-app-letta-com",
+ name: "Letta Cloud",
+ url: "https://app.letta.com/",
+ description: "Letta Cloud"),
+ new global::Letta.AutoSDKServer(
+ id: "http-localhost",
+ name: "Self-hosted",
+ url: "http://localhost:8283/",
+ description: "Self-hosted"),
+ };
+
private static readonly global::Letta.EndPointSecurityRequirement s_CreateInternalTemplateGroupSecurityRequirement0 =
new global::Letta.EndPointSecurityRequirement
@@ -89,7 +102,9 @@ partial void ProcessCreateInternalTemplateGroupResponseContent(
{
var __pathBuilder = new global::Letta.PathBuilder(
path: "/v1/_internal_templates/groups",
- baseUri: HttpClient.BaseAddress);
+ baseUri: ResolveBaseUri(
+ servers: s_CreateInternalTemplateGroupServers,
+ defaultBaseUrl: "https://app.letta.com/"));
var __path = __pathBuilder.ToString();
__path = global::Letta.AutoSDKRequestOptionsSupport.AppendQueryParameters(
path: __path,
diff --git a/src/libs/Letta/Generated/Letta.InternalTemplatesClient.DeleteDeployment.g.cs b/src/libs/Letta/Generated/Letta.InternalTemplatesClient.DeleteDeployment.g.cs
index 711ba078..686263e6 100644
--- a/src/libs/Letta/Generated/Letta.InternalTemplatesClient.DeleteDeployment.g.cs
+++ b/src/libs/Letta/Generated/Letta.InternalTemplatesClient.DeleteDeployment.g.cs
@@ -6,6 +6,19 @@ namespace Letta
public partial class InternalTemplatesClient
{
+ private static readonly global::Letta.AutoSDKServer[] s_DeleteDeploymentServers = new global::Letta.AutoSDKServer[]
+ { new global::Letta.AutoSDKServer(
+ id: "https-app-letta-com",
+ name: "Letta Cloud",
+ url: "https://app.letta.com/",
+ description: "Letta Cloud"),
+ new global::Letta.AutoSDKServer(
+ id: "http-localhost",
+ name: "Self-hosted",
+ url: "http://localhost:8283/",
+ description: "Self-hosted"),
+ };
+
private static readonly global::Letta.EndPointSecurityRequirement s_DeleteDeploymentSecurityRequirement0 =
new global::Letta.EndPointSecurityRequirement
@@ -85,7 +98,9 @@ partial void ProcessDeleteDeploymentResponseContent(
{
var __pathBuilder = new global::Letta.PathBuilder(
path: $"/v1/_internal_templates/deployment/{deploymentId}",
- baseUri: HttpClient.BaseAddress);
+ baseUri: ResolveBaseUri(
+ servers: s_DeleteDeploymentServers,
+ defaultBaseUrl: "https://app.letta.com/"));
var __path = __pathBuilder.ToString();
__path = global::Letta.AutoSDKRequestOptionsSupport.AppendQueryParameters(
path: __path,
diff --git a/src/libs/Letta/Generated/Letta.InternalTemplatesClient.ListDeploymentEntities.g.cs b/src/libs/Letta/Generated/Letta.InternalTemplatesClient.ListDeploymentEntities.g.cs
index e87839cd..ef59ccbb 100644
--- a/src/libs/Letta/Generated/Letta.InternalTemplatesClient.ListDeploymentEntities.g.cs
+++ b/src/libs/Letta/Generated/Letta.InternalTemplatesClient.ListDeploymentEntities.g.cs
@@ -6,6 +6,19 @@ namespace Letta
public partial class InternalTemplatesClient
{
+ private static readonly global::Letta.AutoSDKServer[] s_ListDeploymentEntitiesServers = new global::Letta.AutoSDKServer[]
+ { new global::Letta.AutoSDKServer(
+ id: "https-app-letta-com",
+ name: "Letta Cloud",
+ url: "https://app.letta.com/",
+ description: "Letta Cloud"),
+ new global::Letta.AutoSDKServer(
+ id: "http-localhost",
+ name: "Self-hosted",
+ url: "http://localhost:8283/",
+ description: "Self-hosted"),
+ };
+
private static readonly global::Letta.EndPointSecurityRequirement s_ListDeploymentEntitiesSecurityRequirement0 =
new global::Letta.EndPointSecurityRequirement
@@ -92,7 +105,9 @@ partial void ProcessListDeploymentEntitiesResponseContent(
{
var __pathBuilder = new global::Letta.PathBuilder(
path: $"/v1/_internal_templates/deployment/{deploymentId}",
- baseUri: HttpClient.BaseAddress);
+ baseUri: ResolveBaseUri(
+ servers: s_ListDeploymentEntitiesServers,
+ defaultBaseUrl: "https://app.letta.com/"));
__pathBuilder
.AddOptionalParameter("entity_types", entityTypes?.ToString())
;
diff --git a/src/libs/Letta/Generated/Letta.InternalTemplatesClient.g.cs b/src/libs/Letta/Generated/Letta.InternalTemplatesClient.g.cs
index b6cfba21..9c4f3f1a 100644
--- a/src/libs/Letta/Generated/Letta.InternalTemplatesClient.g.cs
+++ b/src/libs/Letta/Generated/Letta.InternalTemplatesClient.g.cs
@@ -20,7 +20,7 @@ public sealed partial class InternalTemplatesClient : global::Letta.IInternalTem
public global::System.Net.Http.HttpClient HttpClient { get; }
///
- public System.Uri? BaseUri => HttpClient.BaseAddress;
+ public System.Uri? BaseUri => ResolveDisplayedBaseUri();
///
public global::System.Collections.Generic.List Authorizations { get; }
@@ -33,12 +33,43 @@ public sealed partial class InternalTemplatesClient : global::Letta.IInternalTem
///
public global::Letta.AutoSDKClientOptions Options { get; }
+
+
+ internal global::Letta.AutoSDKServerConfiguration AutoSDKServerConfiguration { get; set; } = new global::Letta.AutoSDKServerConfiguration();
///
///
///
public global::System.Text.Json.Serialization.JsonSerializerContext JsonSerializerContext { get; set; } = global::Letta.SourceGenerationContext.Default;
+
+ private static readonly global::Letta.AutoSDKServer[] s_availableServers = new global::Letta.AutoSDKServer[]
+ { new global::Letta.AutoSDKServer(
+ id: "https-app-letta-com",
+ name: "Letta Cloud",
+ url: "https://app.letta.com/",
+ description: "Letta Cloud"),
+ new global::Letta.AutoSDKServer(
+ id: "http-localhost",
+ name: "Self-hosted",
+ url: "http://localhost:8283/",
+ description: "Self-hosted"),
+ };
+
+ ///
+ /// The server options available for this client.
+ ///
+ public global::System.Collections.Generic.IReadOnlyList AvailableServers => s_availableServers;
+
+ ///
+ /// The currently selected server for this client, if any.
+ ///
+ public global::Letta.AutoSDKServer? SelectedServer
+ {
+ get => ResolveSelectedServer();
+ set => SelectServer(value);
+ }
+
///
/// Creates a new instance of the InternalTemplatesClient.
/// If no httpClient is provided, a new one will be created.
@@ -85,6 +116,8 @@ public InternalTemplatesClient(
Options = options ?? new global::Letta.AutoSDKClientOptions();
_disposeHttpClient = disposeHttpClient;
+ AutoSDKServerConfiguration.ExplicitBaseUri = baseUri ?? httpClient?.BaseAddress;
+
Initialized(HttpClient);
}
@@ -111,5 +144,117 @@ partial void ProcessResponseContent(
global::System.Net.Http.HttpClient client,
global::System.Net.Http.HttpResponseMessage response,
ref string content);
+
+
+ ///
+ /// Selects one of the generated server options by id.
+ ///
+ public bool TrySelectServer(string serverId)
+ {
+ if (string.IsNullOrWhiteSpace(serverId))
+ {
+ return false;
+ }
+
+ foreach (var server in s_availableServers)
+ {
+ if (string.Equals(server.Id, serverId, global::System.StringComparison.OrdinalIgnoreCase))
+ {
+ AutoSDKServerConfiguration.SelectedServer = server;
+ AutoSDKServerConfiguration.ExplicitBaseUri = null;
+ return true;
+ }
+ }
+
+ return false;
+ }
+
+ ///
+ /// Clears the currently selected server.
+ ///
+ public void ClearSelectedServer()
+ {
+ AutoSDKServerConfiguration.SelectedServer = null;
+ }
+
+ private global::Letta.AutoSDKServer? ResolveSelectedServer()
+ {
+ var selectedServer = AutoSDKServerConfiguration.SelectedServer;
+ if (selectedServer is null)
+ {
+ return null;
+ }
+
+ foreach (var server in s_availableServers)
+ {
+ if (string.Equals(server.Id, selectedServer.Id, global::System.StringComparison.Ordinal))
+ {
+ return server;
+ }
+ }
+
+ return null;
+ }
+
+ private void SelectServer(global::Letta.AutoSDKServer? server)
+ {
+ if (server is null)
+ {
+ AutoSDKServerConfiguration.SelectedServer = null;
+ return;
+ }
+
+ foreach (var candidate in s_availableServers)
+ {
+ if (string.Equals(candidate.Id, server.Id, global::System.StringComparison.Ordinal))
+ {
+ AutoSDKServerConfiguration.SelectedServer = candidate;
+ AutoSDKServerConfiguration.ExplicitBaseUri = null;
+ return;
+ }
+ }
+
+ throw new global::System.ArgumentException("The provided server is not available for this client.", nameof(server));
+ }
+
+ private global::System.Uri? ResolveDisplayedBaseUri()
+ {
+ if (AutoSDKServerConfiguration.ExplicitBaseUri is global::System.Uri explicitBaseUri)
+ {
+ return explicitBaseUri;
+ }
+
+ return ResolveSelectedServer()?.Uri ?? HttpClient.BaseAddress;
+ }
+
+ private global::System.Uri? ResolveBaseUri(
+ global::Letta.AutoSDKServer[] servers,
+ string defaultBaseUrl)
+ {
+ if (AutoSDKServerConfiguration.ExplicitBaseUri is global::System.Uri explicitBaseUri)
+ {
+ return explicitBaseUri;
+ }
+
+ if (AutoSDKServerConfiguration.SelectedServer is global::Letta.AutoSDKServer selectedServer)
+ {
+ foreach (var server in servers)
+ {
+ if (string.Equals(server.Id, selectedServer.Id, global::System.StringComparison.Ordinal))
+ {
+ return server.Uri;
+ }
+ }
+ }
+
+ if (servers.Length > 0)
+ {
+ return servers[0].Uri;
+ }
+
+ return string.IsNullOrWhiteSpace(defaultBaseUrl)
+ ? HttpClient.BaseAddress
+ : new global::System.Uri(defaultBaseUrl, global::System.UriKind.RelativeOrAbsolute);
+ }
}
}
\ No newline at end of file
diff --git a/src/libs/Letta/Generated/Letta.JobsClient.CancelJob.g.cs b/src/libs/Letta/Generated/Letta.JobsClient.CancelJob.g.cs
index d0bfe552..01855741 100644
--- a/src/libs/Letta/Generated/Letta.JobsClient.CancelJob.g.cs
+++ b/src/libs/Letta/Generated/Letta.JobsClient.CancelJob.g.cs
@@ -6,6 +6,19 @@ namespace Letta
public partial class JobsClient
{
+ private static readonly global::Letta.AutoSDKServer[] s_CancelJobServers = new global::Letta.AutoSDKServer[]
+ { new global::Letta.AutoSDKServer(
+ id: "https-app-letta-com",
+ name: "Letta Cloud",
+ url: "https://app.letta.com/",
+ description: "Letta Cloud"),
+ new global::Letta.AutoSDKServer(
+ id: "http-localhost",
+ name: "Self-hosted",
+ url: "http://localhost:8283/",
+ description: "Self-hosted"),
+ };
+
private static readonly global::Letta.EndPointSecurityRequirement s_CancelJobSecurityRequirement0 =
new global::Letta.EndPointSecurityRequirement
@@ -88,7 +101,9 @@ partial void ProcessCancelJobResponseContent(
{
var __pathBuilder = new global::Letta.PathBuilder(
path: $"/v1/jobs/{jobId}/cancel",
- baseUri: HttpClient.BaseAddress);
+ baseUri: ResolveBaseUri(
+ servers: s_CancelJobServers,
+ defaultBaseUrl: "https://app.letta.com/"));
var __path = __pathBuilder.ToString();
__path = global::Letta.AutoSDKRequestOptionsSupport.AppendQueryParameters(
path: __path,
diff --git a/src/libs/Letta/Generated/Letta.JobsClient.DeleteJob.g.cs b/src/libs/Letta/Generated/Letta.JobsClient.DeleteJob.g.cs
index f8719385..220f7035 100644
--- a/src/libs/Letta/Generated/Letta.JobsClient.DeleteJob.g.cs
+++ b/src/libs/Letta/Generated/Letta.JobsClient.DeleteJob.g.cs
@@ -6,6 +6,19 @@ namespace Letta
public partial class JobsClient
{
+ private static readonly global::Letta.AutoSDKServer[] s_DeleteJobServers = new global::Letta.AutoSDKServer[]
+ { new global::Letta.AutoSDKServer(
+ id: "https-app-letta-com",
+ name: "Letta Cloud",
+ url: "https://app.letta.com/",
+ description: "Letta Cloud"),
+ new global::Letta.AutoSDKServer(
+ id: "http-localhost",
+ name: "Self-hosted",
+ url: "http://localhost:8283/",
+ description: "Self-hosted"),
+ };
+
private static readonly global::Letta.EndPointSecurityRequirement s_DeleteJobSecurityRequirement0 =
new global::Letta.EndPointSecurityRequirement
@@ -86,7 +99,9 @@ partial void ProcessDeleteJobResponseContent(
{
var __pathBuilder = new global::Letta.PathBuilder(
path: $"/v1/jobs/{jobId}",
- baseUri: HttpClient.BaseAddress);
+ baseUri: ResolveBaseUri(
+ servers: s_DeleteJobServers,
+ defaultBaseUrl: "https://app.letta.com/"));
var __path = __pathBuilder.ToString();
__path = global::Letta.AutoSDKRequestOptionsSupport.AppendQueryParameters(
path: __path,
diff --git a/src/libs/Letta/Generated/Letta.JobsClient.ListJobs.g.cs b/src/libs/Letta/Generated/Letta.JobsClient.ListJobs.g.cs
index 3ef5fd46..c43f5e70 100644
--- a/src/libs/Letta/Generated/Letta.JobsClient.ListJobs.g.cs
+++ b/src/libs/Letta/Generated/Letta.JobsClient.ListJobs.g.cs
@@ -8,6 +8,19 @@ namespace Letta
public partial class JobsClient
{
+ private static readonly global::Letta.AutoSDKServer[] s_ListJobsServers = new global::Letta.AutoSDKServer[]
+ { new global::Letta.AutoSDKServer(
+ id: "https-app-letta-com",
+ name: "Letta Cloud",
+ url: "https://app.letta.com/",
+ description: "Letta Cloud"),
+ new global::Letta.AutoSDKServer(
+ id: "http-localhost",
+ name: "Self-hosted",
+ url: "http://localhost:8283/",
+ description: "Self-hosted"),
+ };
+
private static readonly global::Letta.EndPointSecurityRequirement s_ListJobsSecurityRequirement0 =
new global::Letta.EndPointSecurityRequirement
@@ -142,7 +155,9 @@ partial void ProcessListJobsResponseContent(
{
var __pathBuilder = new global::Letta.PathBuilder(
path: "/v1/jobs/",
- baseUri: HttpClient.BaseAddress);
+ baseUri: ResolveBaseUri(
+ servers: s_ListJobsServers,
+ defaultBaseUrl: "https://app.letta.com/"));
__pathBuilder
.AddOptionalParameter("source_id", sourceId)
.AddOptionalParameter("before", before)
diff --git a/src/libs/Letta/Generated/Letta.JobsClient.RetrieveJob.g.cs b/src/libs/Letta/Generated/Letta.JobsClient.RetrieveJob.g.cs
index 15322616..71268496 100644
--- a/src/libs/Letta/Generated/Letta.JobsClient.RetrieveJob.g.cs
+++ b/src/libs/Letta/Generated/Letta.JobsClient.RetrieveJob.g.cs
@@ -6,6 +6,19 @@ namespace Letta
public partial class JobsClient
{
+ private static readonly global::Letta.AutoSDKServer[] s_RetrieveJobServers = new global::Letta.AutoSDKServer[]
+ { new global::Letta.AutoSDKServer(
+ id: "https-app-letta-com",
+ name: "Letta Cloud",
+ url: "https://app.letta.com/",
+ description: "Letta Cloud"),
+ new global::Letta.AutoSDKServer(
+ id: "http-localhost",
+ name: "Self-hosted",
+ url: "http://localhost:8283/",
+ description: "Self-hosted"),
+ };
+
private static readonly global::Letta.EndPointSecurityRequirement s_RetrieveJobSecurityRequirement0 =
new global::Letta.EndPointSecurityRequirement
@@ -86,7 +99,9 @@ partial void ProcessRetrieveJobResponseContent(
{
var __pathBuilder = new global::Letta.PathBuilder(
path: $"/v1/jobs/{jobId}",
- baseUri: HttpClient.BaseAddress);
+ baseUri: ResolveBaseUri(
+ servers: s_RetrieveJobServers,
+ defaultBaseUrl: "https://app.letta.com/"));
var __path = __pathBuilder.ToString();
__path = global::Letta.AutoSDKRequestOptionsSupport.AppendQueryParameters(
path: __path,
diff --git a/src/libs/Letta/Generated/Letta.JobsClient.g.cs b/src/libs/Letta/Generated/Letta.JobsClient.g.cs
index 2197d2c9..0aa502d7 100644
--- a/src/libs/Letta/Generated/Letta.JobsClient.g.cs
+++ b/src/libs/Letta/Generated/Letta.JobsClient.g.cs
@@ -20,7 +20,7 @@ public sealed partial class JobsClient : global::Letta.IJobsClient, global::Syst
public global::System.Net.Http.HttpClient HttpClient { get; }
///
- public System.Uri? BaseUri => HttpClient.BaseAddress;
+ public System.Uri? BaseUri => ResolveDisplayedBaseUri();
///
public global::System.Collections.Generic.List Authorizations { get; }
@@ -33,12 +33,43 @@ public sealed partial class JobsClient : global::Letta.IJobsClient, global::Syst
///
public global::Letta.AutoSDKClientOptions Options { get; }
+
+
+ internal global::Letta.AutoSDKServerConfiguration AutoSDKServerConfiguration { get; set; } = new global::Letta.AutoSDKServerConfiguration();
///
///
///
public global::System.Text.Json.Serialization.JsonSerializerContext JsonSerializerContext { get; set; } = global::Letta.SourceGenerationContext.Default;
+
+ private static readonly global::Letta.AutoSDKServer[] s_availableServers = new global::Letta.AutoSDKServer[]
+ { new global::Letta.AutoSDKServer(
+ id: "https-app-letta-com",
+ name: "Letta Cloud",
+ url: "https://app.letta.com/",
+ description: "Letta Cloud"),
+ new global::Letta.AutoSDKServer(
+ id: "http-localhost",
+ name: "Self-hosted",
+ url: "http://localhost:8283/",
+ description: "Self-hosted"),
+ };
+
+ ///
+ /// The server options available for this client.
+ ///
+ public global::System.Collections.Generic.IReadOnlyList AvailableServers => s_availableServers;
+
+ ///
+ /// The currently selected server for this client, if any.
+ ///
+ public global::Letta.AutoSDKServer? SelectedServer
+ {
+ get => ResolveSelectedServer();
+ set => SelectServer(value);
+ }
+
///
/// Creates a new instance of the JobsClient.
/// If no httpClient is provided, a new one will be created.
@@ -85,6 +116,8 @@ public JobsClient(
Options = options ?? new global::Letta.AutoSDKClientOptions();
_disposeHttpClient = disposeHttpClient;
+ AutoSDKServerConfiguration.ExplicitBaseUri = baseUri ?? httpClient?.BaseAddress;
+
Initialized(HttpClient);
}
@@ -111,5 +144,117 @@ partial void ProcessResponseContent(
global::System.Net.Http.HttpClient client,
global::System.Net.Http.HttpResponseMessage response,
ref string content);
+
+
+ ///
+ /// Selects one of the generated server options by id.
+ ///
+ public bool TrySelectServer(string serverId)
+ {
+ if (string.IsNullOrWhiteSpace(serverId))
+ {
+ return false;
+ }
+
+ foreach (var server in s_availableServers)
+ {
+ if (string.Equals(server.Id, serverId, global::System.StringComparison.OrdinalIgnoreCase))
+ {
+ AutoSDKServerConfiguration.SelectedServer = server;
+ AutoSDKServerConfiguration.ExplicitBaseUri = null;
+ return true;
+ }
+ }
+
+ return false;
+ }
+
+ ///
+ /// Clears the currently selected server.
+ ///
+ public void ClearSelectedServer()
+ {
+ AutoSDKServerConfiguration.SelectedServer = null;
+ }
+
+ private global::Letta.AutoSDKServer? ResolveSelectedServer()
+ {
+ var selectedServer = AutoSDKServerConfiguration.SelectedServer;
+ if (selectedServer is null)
+ {
+ return null;
+ }
+
+ foreach (var server in s_availableServers)
+ {
+ if (string.Equals(server.Id, selectedServer.Id, global::System.StringComparison.Ordinal))
+ {
+ return server;
+ }
+ }
+
+ return null;
+ }
+
+ private void SelectServer(global::Letta.AutoSDKServer? server)
+ {
+ if (server is null)
+ {
+ AutoSDKServerConfiguration.SelectedServer = null;
+ return;
+ }
+
+ foreach (var candidate in s_availableServers)
+ {
+ if (string.Equals(candidate.Id, server.Id, global::System.StringComparison.Ordinal))
+ {
+ AutoSDKServerConfiguration.SelectedServer = candidate;
+ AutoSDKServerConfiguration.ExplicitBaseUri = null;
+ return;
+ }
+ }
+
+ throw new global::System.ArgumentException("The provided server is not available for this client.", nameof(server));
+ }
+
+ private global::System.Uri? ResolveDisplayedBaseUri()
+ {
+ if (AutoSDKServerConfiguration.ExplicitBaseUri is global::System.Uri explicitBaseUri)
+ {
+ return explicitBaseUri;
+ }
+
+ return ResolveSelectedServer()?.Uri ?? HttpClient.BaseAddress;
+ }
+
+ private global::System.Uri? ResolveBaseUri(
+ global::Letta.AutoSDKServer[] servers,
+ string defaultBaseUrl)
+ {
+ if (AutoSDKServerConfiguration.ExplicitBaseUri is global::System.Uri explicitBaseUri)
+ {
+ return explicitBaseUri;
+ }
+
+ if (AutoSDKServerConfiguration.SelectedServer is global::Letta.AutoSDKServer selectedServer)
+ {
+ foreach (var server in servers)
+ {
+ if (string.Equals(server.Id, selectedServer.Id, global::System.StringComparison.Ordinal))
+ {
+ return server.Uri;
+ }
+ }
+ }
+
+ if (servers.Length > 0)
+ {
+ return servers[0].Uri;
+ }
+
+ return string.IsNullOrWhiteSpace(defaultBaseUrl)
+ ? HttpClient.BaseAddress
+ : new global::System.Uri(defaultBaseUrl, global::System.UriKind.RelativeOrAbsolute);
+ }
}
}
\ No newline at end of file
diff --git a/src/libs/Letta/Generated/Letta.LettaClient.g.cs b/src/libs/Letta/Generated/Letta.LettaClient.g.cs
index f37b61ae..39cc0ce6 100644
--- a/src/libs/Letta/Generated/Letta.LettaClient.g.cs
+++ b/src/libs/Letta/Generated/Letta.LettaClient.g.cs
@@ -20,7 +20,7 @@ public sealed partial class LettaClient : global::Letta.ILettaClient, global::Sy
public global::System.Net.Http.HttpClient HttpClient { get; }
///
- public System.Uri? BaseUri => HttpClient.BaseAddress;
+ public System.Uri? BaseUri => ResolveDisplayedBaseUri();
///
public global::System.Collections.Generic.List Authorizations { get; }
@@ -33,6 +33,9 @@ public sealed partial class LettaClient : global::Letta.ILettaClient, global::Sy
///
public global::Letta.AutoSDKClientOptions Options { get; }
+
+
+ internal global::Letta.AutoSDKServerConfiguration AutoSDKServerConfiguration { get; set; } = new global::Letta.AutoSDKServerConfiguration();
///
///
///
@@ -46,6 +49,7 @@ public sealed partial class LettaClient : global::Letta.ILettaClient, global::Sy
{
ReadResponseAsString = ReadResponseAsString,
JsonSerializerContext = JsonSerializerContext,
+ AutoSDKServerConfiguration = AutoSDKServerConfiguration,
};
///
@@ -55,6 +59,7 @@ public sealed partial class LettaClient : global::Letta.ILettaClient, global::Sy
{
ReadResponseAsString = ReadResponseAsString,
JsonSerializerContext = JsonSerializerContext,
+ AutoSDKServerConfiguration = AutoSDKServerConfiguration,
};
///
@@ -64,6 +69,7 @@ public sealed partial class LettaClient : global::Letta.ILettaClient, global::Sy
{
ReadResponseAsString = ReadResponseAsString,
JsonSerializerContext = JsonSerializerContext,
+ AutoSDKServerConfiguration = AutoSDKServerConfiguration,
};
///
@@ -73,6 +79,7 @@ public sealed partial class LettaClient : global::Letta.ILettaClient, global::Sy
{
ReadResponseAsString = ReadResponseAsString,
JsonSerializerContext = JsonSerializerContext,
+ AutoSDKServerConfiguration = AutoSDKServerConfiguration,
};
///
@@ -82,6 +89,7 @@ public sealed partial class LettaClient : global::Letta.ILettaClient, global::Sy
{
ReadResponseAsString = ReadResponseAsString,
JsonSerializerContext = JsonSerializerContext,
+ AutoSDKServerConfiguration = AutoSDKServerConfiguration,
};
///
@@ -91,6 +99,7 @@ public sealed partial class LettaClient : global::Letta.ILettaClient, global::Sy
{
ReadResponseAsString = ReadResponseAsString,
JsonSerializerContext = JsonSerializerContext,
+ AutoSDKServerConfiguration = AutoSDKServerConfiguration,
};
///
@@ -100,6 +109,7 @@ public sealed partial class LettaClient : global::Letta.ILettaClient, global::Sy
{
ReadResponseAsString = ReadResponseAsString,
JsonSerializerContext = JsonSerializerContext,
+ AutoSDKServerConfiguration = AutoSDKServerConfiguration,
};
///
@@ -109,6 +119,7 @@ public sealed partial class LettaClient : global::Letta.ILettaClient, global::Sy
{
ReadResponseAsString = ReadResponseAsString,
JsonSerializerContext = JsonSerializerContext,
+ AutoSDKServerConfiguration = AutoSDKServerConfiguration,
};
///
@@ -118,6 +129,7 @@ public sealed partial class LettaClient : global::Letta.ILettaClient, global::Sy
{
ReadResponseAsString = ReadResponseAsString,
JsonSerializerContext = JsonSerializerContext,
+ AutoSDKServerConfiguration = AutoSDKServerConfiguration,
};
///
@@ -127,6 +139,7 @@ public sealed partial class LettaClient : global::Letta.ILettaClient, global::Sy
{
ReadResponseAsString = ReadResponseAsString,
JsonSerializerContext = JsonSerializerContext,
+ AutoSDKServerConfiguration = AutoSDKServerConfiguration,
};
///
@@ -136,6 +149,7 @@ public sealed partial class LettaClient : global::Letta.ILettaClient, global::Sy
{
ReadResponseAsString = ReadResponseAsString,
JsonSerializerContext = JsonSerializerContext,
+ AutoSDKServerConfiguration = AutoSDKServerConfiguration,
};
///
@@ -145,6 +159,7 @@ public sealed partial class LettaClient : global::Letta.ILettaClient, global::Sy
{
ReadResponseAsString = ReadResponseAsString,
JsonSerializerContext = JsonSerializerContext,
+ AutoSDKServerConfiguration = AutoSDKServerConfiguration,
};
///
@@ -154,6 +169,7 @@ public sealed partial class LettaClient : global::Letta.ILettaClient, global::Sy
{
ReadResponseAsString = ReadResponseAsString,
JsonSerializerContext = JsonSerializerContext,
+ AutoSDKServerConfiguration = AutoSDKServerConfiguration,
};
///
@@ -163,6 +179,7 @@ public sealed partial class LettaClient : global::Letta.ILettaClient, global::Sy
{
ReadResponseAsString = ReadResponseAsString,
JsonSerializerContext = JsonSerializerContext,
+ AutoSDKServerConfiguration = AutoSDKServerConfiguration,
};
///
@@ -172,6 +189,7 @@ public sealed partial class LettaClient : global::Letta.ILettaClient, global::Sy
{
ReadResponseAsString = ReadResponseAsString,
JsonSerializerContext = JsonSerializerContext,
+ AutoSDKServerConfiguration = AutoSDKServerConfiguration,
};
///
@@ -181,6 +199,7 @@ public sealed partial class LettaClient : global::Letta.ILettaClient, global::Sy
{
ReadResponseAsString = ReadResponseAsString,
JsonSerializerContext = JsonSerializerContext,
+ AutoSDKServerConfiguration = AutoSDKServerConfiguration,
};
///
@@ -190,6 +209,7 @@ public sealed partial class LettaClient : global::Letta.ILettaClient, global::Sy
{
ReadResponseAsString = ReadResponseAsString,
JsonSerializerContext = JsonSerializerContext,
+ AutoSDKServerConfiguration = AutoSDKServerConfiguration,
};
///
@@ -199,6 +219,7 @@ public sealed partial class LettaClient : global::Letta.ILettaClient, global::Sy
{
ReadResponseAsString = ReadResponseAsString,
JsonSerializerContext = JsonSerializerContext,
+ AutoSDKServerConfiguration = AutoSDKServerConfiguration,
};
///
@@ -208,6 +229,7 @@ public sealed partial class LettaClient : global::Letta.ILettaClient, global::Sy
{
ReadResponseAsString = ReadResponseAsString,
JsonSerializerContext = JsonSerializerContext,
+ AutoSDKServerConfiguration = AutoSDKServerConfiguration,
};
///
@@ -217,6 +239,7 @@ public sealed partial class LettaClient : global::Letta.ILettaClient, global::Sy
{
ReadResponseAsString = ReadResponseAsString,
JsonSerializerContext = JsonSerializerContext,
+ AutoSDKServerConfiguration = AutoSDKServerConfiguration,
};
///
@@ -226,6 +249,7 @@ public sealed partial class LettaClient : global::Letta.ILettaClient, global::Sy
{
ReadResponseAsString = ReadResponseAsString,
JsonSerializerContext = JsonSerializerContext,
+ AutoSDKServerConfiguration = AutoSDKServerConfiguration,
};
///
@@ -235,6 +259,7 @@ public sealed partial class LettaClient : global::Letta.ILettaClient, global::Sy
{
ReadResponseAsString = ReadResponseAsString,
JsonSerializerContext = JsonSerializerContext,
+ AutoSDKServerConfiguration = AutoSDKServerConfiguration,
};
///
@@ -244,6 +269,7 @@ public sealed partial class LettaClient : global::Letta.ILettaClient, global::Sy
{
ReadResponseAsString = ReadResponseAsString,
JsonSerializerContext = JsonSerializerContext,
+ AutoSDKServerConfiguration = AutoSDKServerConfiguration,
};
///
@@ -253,6 +279,7 @@ public sealed partial class LettaClient : global::Letta.ILettaClient, global::Sy
{
ReadResponseAsString = ReadResponseAsString,
JsonSerializerContext = JsonSerializerContext,
+ AutoSDKServerConfiguration = AutoSDKServerConfiguration,
};
///
@@ -262,6 +289,7 @@ public sealed partial class LettaClient : global::Letta.ILettaClient, global::Sy
{
ReadResponseAsString = ReadResponseAsString,
JsonSerializerContext = JsonSerializerContext,
+ AutoSDKServerConfiguration = AutoSDKServerConfiguration,
};
///
@@ -271,6 +299,7 @@ public sealed partial class LettaClient : global::Letta.ILettaClient, global::Sy
{
ReadResponseAsString = ReadResponseAsString,
JsonSerializerContext = JsonSerializerContext,
+ AutoSDKServerConfiguration = AutoSDKServerConfiguration,
};
///
@@ -280,6 +309,7 @@ public sealed partial class LettaClient : global::Letta.ILettaClient, global::Sy
{
ReadResponseAsString = ReadResponseAsString,
JsonSerializerContext = JsonSerializerContext,
+ AutoSDKServerConfiguration = AutoSDKServerConfiguration,
};
///
@@ -289,6 +319,7 @@ public sealed partial class LettaClient : global::Letta.ILettaClient, global::Sy
{
ReadResponseAsString = ReadResponseAsString,
JsonSerializerContext = JsonSerializerContext,
+ AutoSDKServerConfiguration = AutoSDKServerConfiguration,
};
///
@@ -298,6 +329,7 @@ public sealed partial class LettaClient : global::Letta.ILettaClient, global::Sy
{
ReadResponseAsString = ReadResponseAsString,
JsonSerializerContext = JsonSerializerContext,
+ AutoSDKServerConfiguration = AutoSDKServerConfiguration,
};
///
@@ -307,6 +339,7 @@ public sealed partial class LettaClient : global::Letta.ILettaClient, global::Sy
{
ReadResponseAsString = ReadResponseAsString,
JsonSerializerContext = JsonSerializerContext,
+ AutoSDKServerConfiguration = AutoSDKServerConfiguration,
};
///
@@ -316,6 +349,7 @@ public sealed partial class LettaClient : global::Letta.ILettaClient, global::Sy
{
ReadResponseAsString = ReadResponseAsString,
JsonSerializerContext = JsonSerializerContext,
+ AutoSDKServerConfiguration = AutoSDKServerConfiguration,
};
///
@@ -325,6 +359,7 @@ public sealed partial class LettaClient : global::Letta.ILettaClient, global::Sy
{
ReadResponseAsString = ReadResponseAsString,
JsonSerializerContext = JsonSerializerContext,
+ AutoSDKServerConfiguration = AutoSDKServerConfiguration,
};
///
@@ -334,8 +369,37 @@ public sealed partial class LettaClient : global::Letta.ILettaClient, global::Sy
{
ReadResponseAsString = ReadResponseAsString,
JsonSerializerContext = JsonSerializerContext,
+ AutoSDKServerConfiguration = AutoSDKServerConfiguration,
+ };
+
+
+ private static readonly global::Letta.AutoSDKServer[] s_availableServers = new global::Letta.AutoSDKServer[]
+ { new global::Letta.AutoSDKServer(
+ id: "https-app-letta-com",
+ name: "Letta Cloud",
+ url: "https://app.letta.com/",
+ description: "Letta Cloud"),
+ new global::Letta.AutoSDKServer(
+ id: "http-localhost",
+ name: "Self-hosted",
+ url: "http://localhost:8283/",
+ description: "Self-hosted"),
};
+ ///
+ /// The server options available for this client.
+ ///
+ public global::System.Collections.Generic.IReadOnlyList AvailableServers => s_availableServers;
+
+ ///
+ /// The currently selected server for this client, if any.
+ ///
+ public global::Letta.AutoSDKServer? SelectedServer
+ {
+ get => ResolveSelectedServer();
+ set => SelectServer(value);
+ }
+
///
/// Creates a new instance of the LettaClient.
/// If no httpClient is provided, a new one will be created.
@@ -382,6 +446,8 @@ public LettaClient(
Options = options ?? new global::Letta.AutoSDKClientOptions();
_disposeHttpClient = disposeHttpClient;
+ AutoSDKServerConfiguration.ExplicitBaseUri = baseUri ?? httpClient?.BaseAddress;
+
Initialized(HttpClient);
}
@@ -408,5 +474,117 @@ partial void ProcessResponseContent(
global::System.Net.Http.HttpClient client,
global::System.Net.Http.HttpResponseMessage response,
ref string content);
+
+
+ ///
+ /// Selects one of the generated server options by id.
+ ///
+ public bool TrySelectServer(string serverId)
+ {
+ if (string.IsNullOrWhiteSpace(serverId))
+ {
+ return false;
+ }
+
+ foreach (var server in s_availableServers)
+ {
+ if (string.Equals(server.Id, serverId, global::System.StringComparison.OrdinalIgnoreCase))
+ {
+ AutoSDKServerConfiguration.SelectedServer = server;
+ AutoSDKServerConfiguration.ExplicitBaseUri = null;
+ return true;
+ }
+ }
+
+ return false;
+ }
+
+ ///
+ /// Clears the currently selected server.
+ ///
+ public void ClearSelectedServer()
+ {
+ AutoSDKServerConfiguration.SelectedServer = null;
+ }
+
+ private global::Letta.AutoSDKServer? ResolveSelectedServer()
+ {
+ var selectedServer = AutoSDKServerConfiguration.SelectedServer;
+ if (selectedServer is null)
+ {
+ return null;
+ }
+
+ foreach (var server in s_availableServers)
+ {
+ if (string.Equals(server.Id, selectedServer.Id, global::System.StringComparison.Ordinal))
+ {
+ return server;
+ }
+ }
+
+ return null;
+ }
+
+ private void SelectServer(global::Letta.AutoSDKServer? server)
+ {
+ if (server is null)
+ {
+ AutoSDKServerConfiguration.SelectedServer = null;
+ return;
+ }
+
+ foreach (var candidate in s_availableServers)
+ {
+ if (string.Equals(candidate.Id, server.Id, global::System.StringComparison.Ordinal))
+ {
+ AutoSDKServerConfiguration.SelectedServer = candidate;
+ AutoSDKServerConfiguration.ExplicitBaseUri = null;
+ return;
+ }
+ }
+
+ throw new global::System.ArgumentException("The provided server is not available for this client.", nameof(server));
+ }
+
+ private global::System.Uri? ResolveDisplayedBaseUri()
+ {
+ if (AutoSDKServerConfiguration.ExplicitBaseUri is global::System.Uri explicitBaseUri)
+ {
+ return explicitBaseUri;
+ }
+
+ return ResolveSelectedServer()?.Uri ?? HttpClient.BaseAddress;
+ }
+
+ private global::System.Uri? ResolveBaseUri(
+ global::Letta.AutoSDKServer[] servers,
+ string defaultBaseUrl)
+ {
+ if (AutoSDKServerConfiguration.ExplicitBaseUri is global::System.Uri explicitBaseUri)
+ {
+ return explicitBaseUri;
+ }
+
+ if (AutoSDKServerConfiguration.SelectedServer is global::Letta.AutoSDKServer selectedServer)
+ {
+ foreach (var server in servers)
+ {
+ if (string.Equals(server.Id, selectedServer.Id, global::System.StringComparison.Ordinal))
+ {
+ return server.Uri;
+ }
+ }
+ }
+
+ if (servers.Length > 0)
+ {
+ return servers[0].Uri;
+ }
+
+ return string.IsNullOrWhiteSpace(defaultBaseUrl)
+ ? HttpClient.BaseAddress
+ : new global::System.Uri(defaultBaseUrl, global::System.UriKind.RelativeOrAbsolute);
+ }
}
}
\ No newline at end of file
diff --git a/src/libs/Letta/Generated/Letta.McpServersClient.McpConnectMcpServer.g.cs b/src/libs/Letta/Generated/Letta.McpServersClient.McpConnectMcpServer.g.cs
index b24c71d5..bae1d95c 100644
--- a/src/libs/Letta/Generated/Letta.McpServersClient.McpConnectMcpServer.g.cs
+++ b/src/libs/Letta/Generated/Letta.McpServersClient.McpConnectMcpServer.g.cs
@@ -6,6 +6,19 @@ namespace Letta
public partial class McpServersClient
{
+ private static readonly global::Letta.AutoSDKServer[] s_McpConnectMcpServerServers = new global::Letta.AutoSDKServer[]
+ { new global::Letta.AutoSDKServer(
+ id: "https-app-letta-com",
+ name: "Letta Cloud",
+ url: "https://app.letta.com/",
+ description: "Letta Cloud"),
+ new global::Letta.AutoSDKServer(
+ id: "http-localhost",
+ name: "Self-hosted",
+ url: "http://localhost:8283/",
+ description: "Self-hosted"),
+ };
+
private static readonly global::Letta.EndPointSecurityRequirement s_McpConnectMcpServerSecurityRequirement0 =
new global::Letta.EndPointSecurityRequirement
@@ -85,7 +98,9 @@ partial void ProcessMcpConnectMcpServerResponseContent(
{
var __pathBuilder = new global::Letta.PathBuilder(
path: $"/v1/mcp-servers/connect/{mcpServerId}",
- baseUri: HttpClient.BaseAddress);
+ baseUri: ResolveBaseUri(
+ servers: s_McpConnectMcpServerServers,
+ defaultBaseUrl: "https://app.letta.com/"));
var __path = __pathBuilder.ToString();
__path = global::Letta.AutoSDKRequestOptionsSupport.AppendQueryParameters(
path: __path,
diff --git a/src/libs/Letta/Generated/Letta.McpServersClient.McpCreateMcpServer.g.cs b/src/libs/Letta/Generated/Letta.McpServersClient.McpCreateMcpServer.g.cs
index 410cb20f..e830ec8b 100644
--- a/src/libs/Letta/Generated/Letta.McpServersClient.McpCreateMcpServer.g.cs
+++ b/src/libs/Letta/Generated/Letta.McpServersClient.McpCreateMcpServer.g.cs
@@ -6,6 +6,19 @@ namespace Letta
public partial class McpServersClient
{
+ private static readonly global::Letta.AutoSDKServer[] s_McpCreateMcpServerServers = new global::Letta.AutoSDKServer[]
+ { new global::Letta.AutoSDKServer(
+ id: "https-app-letta-com",
+ name: "Letta Cloud",
+ url: "https://app.letta.com/",
+ description: "Letta Cloud"),
+ new global::Letta.AutoSDKServer(
+ id: "http-localhost",
+ name: "Self-hosted",
+ url: "http://localhost:8283/",
+ description: "Self-hosted"),
+ };
+
private static readonly global::Letta.EndPointSecurityRequirement s_McpCreateMcpServerSecurityRequirement0 =
new global::Letta.EndPointSecurityRequirement
@@ -87,7 +100,9 @@ partial void ProcessMcpCreateMcpServerResponseContent(
{
var __pathBuilder = new global::Letta.PathBuilder(
path: "/v1/mcp-servers/",
- baseUri: HttpClient.BaseAddress);
+ baseUri: ResolveBaseUri(
+ servers: s_McpCreateMcpServerServers,
+ defaultBaseUrl: "https://app.letta.com/"));
var __path = __pathBuilder.ToString();
__path = global::Letta.AutoSDKRequestOptionsSupport.AppendQueryParameters(
path: __path,
diff --git a/src/libs/Letta/Generated/Letta.McpServersClient.McpDeleteMcpServer.g.cs b/src/libs/Letta/Generated/Letta.McpServersClient.McpDeleteMcpServer.g.cs
index 04fbe691..3e5ed873 100644
--- a/src/libs/Letta/Generated/Letta.McpServersClient.McpDeleteMcpServer.g.cs
+++ b/src/libs/Letta/Generated/Letta.McpServersClient.McpDeleteMcpServer.g.cs
@@ -6,6 +6,19 @@ namespace Letta
public partial class McpServersClient
{
+ private static readonly global::Letta.AutoSDKServer[] s_McpDeleteMcpServerServers = new global::Letta.AutoSDKServer[]
+ { new global::Letta.AutoSDKServer(
+ id: "https-app-letta-com",
+ name: "Letta Cloud",
+ url: "https://app.letta.com/",
+ description: "Letta Cloud"),
+ new global::Letta.AutoSDKServer(
+ id: "http-localhost",
+ name: "Self-hosted",
+ url: "http://localhost:8283/",
+ description: "Self-hosted"),
+ };
+
private static readonly global::Letta.EndPointSecurityRequirement s_McpDeleteMcpServerSecurityRequirement0 =
new global::Letta.EndPointSecurityRequirement
@@ -79,7 +92,9 @@ partial void ProcessMcpDeleteMcpServerResponse(
{
var __pathBuilder = new global::Letta.PathBuilder(
path: $"/v1/mcp-servers/{mcpServerId}",
- baseUri: HttpClient.BaseAddress);
+ baseUri: ResolveBaseUri(
+ servers: s_McpDeleteMcpServerServers,
+ defaultBaseUrl: "https://app.letta.com/"));
var __path = __pathBuilder.ToString();
__path = global::Letta.AutoSDKRequestOptionsSupport.AppendQueryParameters(
path: __path,
diff --git a/src/libs/Letta/Generated/Letta.McpServersClient.McpListMcpServers.g.cs b/src/libs/Letta/Generated/Letta.McpServersClient.McpListMcpServers.g.cs
index 91cc99a0..ff17ff58 100644
--- a/src/libs/Letta/Generated/Letta.McpServersClient.McpListMcpServers.g.cs
+++ b/src/libs/Letta/Generated/Letta.McpServersClient.McpListMcpServers.g.cs
@@ -6,6 +6,19 @@ namespace Letta
public partial class McpServersClient
{
+ private static readonly global::Letta.AutoSDKServer[] s_McpListMcpServersServers = new global::Letta.AutoSDKServer[]
+ { new global::Letta.AutoSDKServer(
+ id: "https-app-letta-com",
+ name: "Letta Cloud",
+ url: "https://app.letta.com/",
+ description: "Letta Cloud"),
+ new global::Letta.AutoSDKServer(
+ id: "http-localhost",
+ name: "Self-hosted",
+ url: "http://localhost:8283/",
+ description: "Self-hosted"),
+ };
+
private static readonly global::Letta.EndPointSecurityRequirement s_McpListMcpServersSecurityRequirement0 =
new global::Letta.EndPointSecurityRequirement
@@ -79,7 +92,9 @@ partial void ProcessMcpListMcpServersResponseContent(
{
var __pathBuilder = new global::Letta.PathBuilder(
path: "/v1/mcp-servers/",
- baseUri: HttpClient.BaseAddress);
+ baseUri: ResolveBaseUri(
+ servers: s_McpListMcpServersServers,
+ defaultBaseUrl: "https://app.letta.com/"));
var __path = __pathBuilder.ToString();
__path = global::Letta.AutoSDKRequestOptionsSupport.AppendQueryParameters(
path: __path,
diff --git a/src/libs/Letta/Generated/Letta.McpServersClient.McpListToolsForMcpServer.g.cs b/src/libs/Letta/Generated/Letta.McpServersClient.McpListToolsForMcpServer.g.cs
index a9126349..7130ae2e 100644
--- a/src/libs/Letta/Generated/Letta.McpServersClient.McpListToolsForMcpServer.g.cs
+++ b/src/libs/Letta/Generated/Letta.McpServersClient.McpListToolsForMcpServer.g.cs
@@ -6,6 +6,19 @@ namespace Letta
public partial class McpServersClient
{
+ private static readonly global::Letta.AutoSDKServer[] s_McpListToolsForMcpServerServers = new global::Letta.AutoSDKServer[]
+ { new global::Letta.AutoSDKServer(
+ id: "https-app-letta-com",
+ name: "Letta Cloud",
+ url: "https://app.letta.com/",
+ description: "Letta Cloud"),
+ new global::Letta.AutoSDKServer(
+ id: "http-localhost",
+ name: "Self-hosted",
+ url: "http://localhost:8283/",
+ description: "Self-hosted"),
+ };
+
private static readonly global::Letta.EndPointSecurityRequirement s_McpListToolsForMcpServerSecurityRequirement0 =
new global::Letta.EndPointSecurityRequirement
@@ -84,7 +97,9 @@ partial void ProcessMcpListToolsForMcpServerResponseContent(
{
var __pathBuilder = new global::Letta.PathBuilder(
path: $"/v1/mcp-servers/{mcpServerId}/tools",
- baseUri: HttpClient.BaseAddress);
+ baseUri: ResolveBaseUri(
+ servers: s_McpListToolsForMcpServerServers,
+ defaultBaseUrl: "https://app.letta.com/"));
var __path = __pathBuilder.ToString();
__path = global::Letta.AutoSDKRequestOptionsSupport.AppendQueryParameters(
path: __path,
diff --git a/src/libs/Letta/Generated/Letta.McpServersClient.McpRefreshMcpServerTools.g.cs b/src/libs/Letta/Generated/Letta.McpServersClient.McpRefreshMcpServerTools.g.cs
index b723fd50..ff38363f 100644
--- a/src/libs/Letta/Generated/Letta.McpServersClient.McpRefreshMcpServerTools.g.cs
+++ b/src/libs/Letta/Generated/Letta.McpServersClient.McpRefreshMcpServerTools.g.cs
@@ -6,6 +6,19 @@ namespace Letta
public partial class McpServersClient
{
+ private static readonly global::Letta.AutoSDKServer[] s_McpRefreshMcpServerToolsServers = new global::Letta.AutoSDKServer[]
+ { new global::Letta.AutoSDKServer(
+ id: "https-app-letta-com",
+ name: "Letta Cloud",
+ url: "https://app.letta.com/",
+ description: "Letta Cloud"),
+ new global::Letta.AutoSDKServer(
+ id: "http-localhost",
+ name: "Self-hosted",
+ url: "http://localhost:8283/",
+ description: "Self-hosted"),
+ };
+
private static readonly global::Letta.EndPointSecurityRequirement s_McpRefreshMcpServerToolsSecurityRequirement0 =
new global::Letta.EndPointSecurityRequirement
@@ -94,7 +107,9 @@ partial void ProcessMcpRefreshMcpServerToolsResponseContent(
{
var __pathBuilder = new global::Letta.PathBuilder(
path: $"/v1/mcp-servers/{mcpServerId}/refresh",
- baseUri: HttpClient.BaseAddress);
+ baseUri: ResolveBaseUri(
+ servers: s_McpRefreshMcpServerToolsServers,
+ defaultBaseUrl: "https://app.letta.com/"));
__pathBuilder
.AddOptionalParameter("agent_id", agentId)
;
diff --git a/src/libs/Letta/Generated/Letta.McpServersClient.McpRetrieveMcpServer.g.cs b/src/libs/Letta/Generated/Letta.McpServersClient.McpRetrieveMcpServer.g.cs
index 972786fd..4142066c 100644
--- a/src/libs/Letta/Generated/Letta.McpServersClient.McpRetrieveMcpServer.g.cs
+++ b/src/libs/Letta/Generated/Letta.McpServersClient.McpRetrieveMcpServer.g.cs
@@ -6,6 +6,19 @@ namespace Letta
public partial class McpServersClient
{
+ private static readonly global::Letta.AutoSDKServer[] s_McpRetrieveMcpServerServers = new global::Letta.AutoSDKServer[]
+ { new global::Letta.AutoSDKServer(
+ id: "https-app-letta-com",
+ name: "Letta Cloud",
+ url: "https://app.letta.com/",
+ description: "Letta Cloud"),
+ new global::Letta.AutoSDKServer(
+ id: "http-localhost",
+ name: "Self-hosted",
+ url: "http://localhost:8283/",
+ description: "Self-hosted"),
+ };
+
private static readonly global::Letta.EndPointSecurityRequirement s_McpRetrieveMcpServerSecurityRequirement0 =
new global::Letta.EndPointSecurityRequirement
@@ -84,7 +97,9 @@ partial void ProcessMcpRetrieveMcpServerResponseContent(
{
var __pathBuilder = new global::Letta.PathBuilder(
path: $"/v1/mcp-servers/{mcpServerId}",
- baseUri: HttpClient.BaseAddress);
+ baseUri: ResolveBaseUri(
+ servers: s_McpRetrieveMcpServerServers,
+ defaultBaseUrl: "https://app.letta.com/"));
var __path = __pathBuilder.ToString();
__path = global::Letta.AutoSDKRequestOptionsSupport.AppendQueryParameters(
path: __path,
diff --git a/src/libs/Letta/Generated/Letta.McpServersClient.McpRetrieveMcpTool.g.cs b/src/libs/Letta/Generated/Letta.McpServersClient.McpRetrieveMcpTool.g.cs
index 5ae9722e..6c11f21b 100644
--- a/src/libs/Letta/Generated/Letta.McpServersClient.McpRetrieveMcpTool.g.cs
+++ b/src/libs/Letta/Generated/Letta.McpServersClient.McpRetrieveMcpTool.g.cs
@@ -6,6 +6,19 @@ namespace Letta
public partial class McpServersClient
{
+ private static readonly global::Letta.AutoSDKServer[] s_McpRetrieveMcpToolServers = new global::Letta.AutoSDKServer[]
+ { new global::Letta.AutoSDKServer(
+ id: "https-app-letta-com",
+ name: "Letta Cloud",
+ url: "https://app.letta.com/",
+ description: "Letta Cloud"),
+ new global::Letta.AutoSDKServer(
+ id: "http-localhost",
+ name: "Self-hosted",
+ url: "http://localhost:8283/",
+ description: "Self-hosted"),
+ };
+
private static readonly global::Letta.EndPointSecurityRequirement s_McpRetrieveMcpToolSecurityRequirement0 =
new global::Letta.EndPointSecurityRequirement
@@ -89,7 +102,9 @@ partial void ProcessMcpRetrieveMcpToolResponseContent(
{
var __pathBuilder = new global::Letta.PathBuilder(
path: $"/v1/mcp-servers/{mcpServerId}/tools/{toolId}",
- baseUri: HttpClient.BaseAddress);
+ baseUri: ResolveBaseUri(
+ servers: s_McpRetrieveMcpToolServers,
+ defaultBaseUrl: "https://app.letta.com/"));
var __path = __pathBuilder.ToString();
__path = global::Letta.AutoSDKRequestOptionsSupport.AppendQueryParameters(
path: __path,
diff --git a/src/libs/Letta/Generated/Letta.McpServersClient.McpRunTool.g.cs b/src/libs/Letta/Generated/Letta.McpServersClient.McpRunTool.g.cs
index 8dfffce6..de61691c 100644
--- a/src/libs/Letta/Generated/Letta.McpServersClient.McpRunTool.g.cs
+++ b/src/libs/Letta/Generated/Letta.McpServersClient.McpRunTool.g.cs
@@ -6,6 +6,19 @@ namespace Letta
public partial class McpServersClient
{
+ private static readonly global::Letta.AutoSDKServer[] s_McpRunToolServers = new global::Letta.AutoSDKServer[]
+ { new global::Letta.AutoSDKServer(
+ id: "https-app-letta-com",
+ name: "Letta Cloud",
+ url: "https://app.letta.com/",
+ description: "Letta Cloud"),
+ new global::Letta.AutoSDKServer(
+ id: "http-localhost",
+ name: "Self-hosted",
+ url: "http://localhost:8283/",
+ description: "Self-hosted"),
+ };
+
private static readonly global::Letta.EndPointSecurityRequirement s_McpRunToolSecurityRequirement0 =
new global::Letta.EndPointSecurityRequirement
@@ -98,7 +111,9 @@ partial void ProcessMcpRunToolResponseContent(
{
var __pathBuilder = new global::Letta.PathBuilder(
path: $"/v1/mcp-servers/{mcpServerId}/tools/{toolId}/run",
- baseUri: HttpClient.BaseAddress);
+ baseUri: ResolveBaseUri(
+ servers: s_McpRunToolServers,
+ defaultBaseUrl: "https://app.letta.com/"));
var __path = __pathBuilder.ToString();
__path = global::Letta.AutoSDKRequestOptionsSupport.AppendQueryParameters(
path: __path,
diff --git a/src/libs/Letta/Generated/Letta.McpServersClient.McpUpdateMcpServer.g.cs b/src/libs/Letta/Generated/Letta.McpServersClient.McpUpdateMcpServer.g.cs
index 055c9ce2..8df719f5 100644
--- a/src/libs/Letta/Generated/Letta.McpServersClient.McpUpdateMcpServer.g.cs
+++ b/src/libs/Letta/Generated/Letta.McpServersClient.McpUpdateMcpServer.g.cs
@@ -6,6 +6,19 @@ namespace Letta
public partial class McpServersClient
{
+ private static readonly global::Letta.AutoSDKServer[] s_McpUpdateMcpServerServers = new global::Letta.AutoSDKServer[]
+ { new global::Letta.AutoSDKServer(
+ id: "https-app-letta-com",
+ name: "Letta Cloud",
+ url: "https://app.letta.com/",
+ description: "Letta Cloud"),
+ new global::Letta.AutoSDKServer(
+ id: "http-localhost",
+ name: "Self-hosted",
+ url: "http://localhost:8283/",
+ description: "Self-hosted"),
+ };
+
private static readonly global::Letta.EndPointSecurityRequirement s_McpUpdateMcpServerSecurityRequirement0 =
new global::Letta.EndPointSecurityRequirement
@@ -92,7 +105,9 @@ partial void ProcessMcpUpdateMcpServerResponseContent(
{
var __pathBuilder = new global::Letta.PathBuilder(
path: $"/v1/mcp-servers/{mcpServerId}",
- baseUri: HttpClient.BaseAddress);
+ baseUri: ResolveBaseUri(
+ servers: s_McpUpdateMcpServerServers,
+ defaultBaseUrl: "https://app.letta.com/"));
var __path = __pathBuilder.ToString();
__path = global::Letta.AutoSDKRequestOptionsSupport.AppendQueryParameters(
path: __path,
diff --git a/src/libs/Letta/Generated/Letta.McpServersClient.g.cs b/src/libs/Letta/Generated/Letta.McpServersClient.g.cs
index 04c2d88b..11ddf428 100644
--- a/src/libs/Letta/Generated/Letta.McpServersClient.g.cs
+++ b/src/libs/Letta/Generated/Letta.McpServersClient.g.cs
@@ -20,7 +20,7 @@ public sealed partial class McpServersClient : global::Letta.IMcpServersClient,
public global::System.Net.Http.HttpClient HttpClient { get; }
///
- public System.Uri? BaseUri => HttpClient.BaseAddress;
+ public System.Uri? BaseUri => ResolveDisplayedBaseUri();
///
public global::System.Collections.Generic.List Authorizations { get; }
@@ -33,12 +33,43 @@ public sealed partial class McpServersClient : global::Letta.IMcpServersClient,
///
public global::Letta.AutoSDKClientOptions Options { get; }
+
+
+ internal global::Letta.AutoSDKServerConfiguration AutoSDKServerConfiguration { get; set; } = new global::Letta.AutoSDKServerConfiguration();
///
///
///
public global::System.Text.Json.Serialization.JsonSerializerContext JsonSerializerContext { get; set; } = global::Letta.SourceGenerationContext.Default;
+
+ private static readonly global::Letta.AutoSDKServer[] s_availableServers = new global::Letta.AutoSDKServer[]
+ { new global::Letta.AutoSDKServer(
+ id: "https-app-letta-com",
+ name: "Letta Cloud",
+ url: "https://app.letta.com/",
+ description: "Letta Cloud"),
+ new global::Letta.AutoSDKServer(
+ id: "http-localhost",
+ name: "Self-hosted",
+ url: "http://localhost:8283/",
+ description: "Self-hosted"),
+ };
+
+ ///
+ /// The server options available for this client.
+ ///
+ public global::System.Collections.Generic.IReadOnlyList AvailableServers => s_availableServers;
+
+ ///
+ /// The currently selected server for this client, if any.
+ ///
+ public global::Letta.AutoSDKServer? SelectedServer
+ {
+ get => ResolveSelectedServer();
+ set => SelectServer(value);
+ }
+
///
/// Creates a new instance of the McpServersClient.
/// If no httpClient is provided, a new one will be created.
@@ -85,6 +116,8 @@ public McpServersClient(
Options = options ?? new global::Letta.AutoSDKClientOptions();
_disposeHttpClient = disposeHttpClient;
+ AutoSDKServerConfiguration.ExplicitBaseUri = baseUri ?? httpClient?.BaseAddress;
+
Initialized(HttpClient);
}
@@ -111,5 +144,117 @@ partial void ProcessResponseContent(
global::System.Net.Http.HttpClient client,
global::System.Net.Http.HttpResponseMessage response,
ref string content);
+
+
+ ///
+ /// Selects one of the generated server options by id.
+ ///
+ public bool TrySelectServer(string serverId)
+ {
+ if (string.IsNullOrWhiteSpace(serverId))
+ {
+ return false;
+ }
+
+ foreach (var server in s_availableServers)
+ {
+ if (string.Equals(server.Id, serverId, global::System.StringComparison.OrdinalIgnoreCase))
+ {
+ AutoSDKServerConfiguration.SelectedServer = server;
+ AutoSDKServerConfiguration.ExplicitBaseUri = null;
+ return true;
+ }
+ }
+
+ return false;
+ }
+
+ ///
+ /// Clears the currently selected server.
+ ///
+ public void ClearSelectedServer()
+ {
+ AutoSDKServerConfiguration.SelectedServer = null;
+ }
+
+ private global::Letta.AutoSDKServer? ResolveSelectedServer()
+ {
+ var selectedServer = AutoSDKServerConfiguration.SelectedServer;
+ if (selectedServer is null)
+ {
+ return null;
+ }
+
+ foreach (var server in s_availableServers)
+ {
+ if (string.Equals(server.Id, selectedServer.Id, global::System.StringComparison.Ordinal))
+ {
+ return server;
+ }
+ }
+
+ return null;
+ }
+
+ private void SelectServer(global::Letta.AutoSDKServer? server)
+ {
+ if (server is null)
+ {
+ AutoSDKServerConfiguration.SelectedServer = null;
+ return;
+ }
+
+ foreach (var candidate in s_availableServers)
+ {
+ if (string.Equals(candidate.Id, server.Id, global::System.StringComparison.Ordinal))
+ {
+ AutoSDKServerConfiguration.SelectedServer = candidate;
+ AutoSDKServerConfiguration.ExplicitBaseUri = null;
+ return;
+ }
+ }
+
+ throw new global::System.ArgumentException("The provided server is not available for this client.", nameof(server));
+ }
+
+ private global::System.Uri? ResolveDisplayedBaseUri()
+ {
+ if (AutoSDKServerConfiguration.ExplicitBaseUri is global::System.Uri explicitBaseUri)
+ {
+ return explicitBaseUri;
+ }
+
+ return ResolveSelectedServer()?.Uri ?? HttpClient.BaseAddress;
+ }
+
+ private global::System.Uri? ResolveBaseUri(
+ global::Letta.AutoSDKServer[] servers,
+ string defaultBaseUrl)
+ {
+ if (AutoSDKServerConfiguration.ExplicitBaseUri is global::System.Uri explicitBaseUri)
+ {
+ return explicitBaseUri;
+ }
+
+ if (AutoSDKServerConfiguration.SelectedServer is global::Letta.AutoSDKServer selectedServer)
+ {
+ foreach (var server in servers)
+ {
+ if (string.Equals(server.Id, selectedServer.Id, global::System.StringComparison.Ordinal))
+ {
+ return server.Uri;
+ }
+ }
+ }
+
+ if (servers.Length > 0)
+ {
+ return servers[0].Uri;
+ }
+
+ return string.IsNullOrWhiteSpace(defaultBaseUrl)
+ ? HttpClient.BaseAddress
+ : new global::System.Uri(defaultBaseUrl, global::System.UriKind.RelativeOrAbsolute);
+ }
}
}
\ No newline at end of file
diff --git a/src/libs/Letta/Generated/Letta.MemoryFilesClient.MemoryFilesGetFileHistory.g.cs b/src/libs/Letta/Generated/Letta.MemoryFilesClient.MemoryFilesGetFileHistory.g.cs
index e583dcab..70272d1e 100644
--- a/src/libs/Letta/Generated/Letta.MemoryFilesClient.MemoryFilesGetFileHistory.g.cs
+++ b/src/libs/Letta/Generated/Letta.MemoryFilesClient.MemoryFilesGetFileHistory.g.cs
@@ -6,6 +6,19 @@ namespace Letta
public partial class MemoryFilesClient
{
+ private static readonly global::Letta.AutoSDKServer[] s_MemoryFilesGetFileHistoryServers = new global::Letta.AutoSDKServer[]
+ { new global::Letta.AutoSDKServer(
+ id: "https-app-letta-com",
+ name: "Letta Cloud",
+ url: "https://app.letta.com/",
+ description: "Letta Cloud"),
+ new global::Letta.AutoSDKServer(
+ id: "http-localhost",
+ name: "Self-hosted",
+ url: "http://localhost:8283/",
+ description: "Self-hosted"),
+ };
+
private static readonly global::Letta.EndPointSecurityRequirement s_MemoryFilesGetFileHistorySecurityRequirement0 =
new global::Letta.EndPointSecurityRequirement
@@ -94,7 +107,9 @@ partial void ProcessMemoryFilesGetFileHistoryResponseContent(
{
var __pathBuilder = new global::Letta.PathBuilder(
path: $"/v1/agents/{agentId}/memory-files/history",
- baseUri: HttpClient.BaseAddress);
+ baseUri: ResolveBaseUri(
+ servers: s_MemoryFilesGetFileHistoryServers,
+ defaultBaseUrl: "https://app.letta.com/"));
__pathBuilder
.AddRequiredParameter("file_path", filePath)
.AddOptionalParameter("limit", limit?.ToString())
diff --git a/src/libs/Letta/Generated/Letta.MemoryFilesClient.MemoryFilesListDirectory.g.cs b/src/libs/Letta/Generated/Letta.MemoryFilesClient.MemoryFilesListDirectory.g.cs
index ec99d41d..9877bcb9 100644
--- a/src/libs/Letta/Generated/Letta.MemoryFilesClient.MemoryFilesListDirectory.g.cs
+++ b/src/libs/Letta/Generated/Letta.MemoryFilesClient.MemoryFilesListDirectory.g.cs
@@ -6,6 +6,19 @@ namespace Letta
public partial class MemoryFilesClient
{
+ private static readonly global::Letta.AutoSDKServer[] s_MemoryFilesListDirectoryServers = new global::Letta.AutoSDKServer[]
+ { new global::Letta.AutoSDKServer(
+ id: "https-app-letta-com",
+ name: "Letta Cloud",
+ url: "https://app.letta.com/",
+ description: "Letta Cloud"),
+ new global::Letta.AutoSDKServer(
+ id: "http-localhost",
+ name: "Self-hosted",
+ url: "http://localhost:8283/",
+ description: "Self-hosted"),
+ };
+
private static readonly global::Letta.EndPointSecurityRequirement s_MemoryFilesListDirectorySecurityRequirement0 =
new global::Letta.EndPointSecurityRequirement
@@ -99,7 +112,9 @@ partial void ProcessMemoryFilesListDirectoryResponseContent(
{
var __pathBuilder = new global::Letta.PathBuilder(
path: $"/v1/agents/{agentId}/memory-files/directory",
- baseUri: HttpClient.BaseAddress);
+ baseUri: ResolveBaseUri(
+ servers: s_MemoryFilesListDirectoryServers,
+ defaultBaseUrl: "https://app.letta.com/"));
__pathBuilder
.AddOptionalParameter("path", path)
.AddOptionalParameter("depth", depth?.ToString())
diff --git a/src/libs/Letta/Generated/Letta.MemoryFilesClient.MemoryFilesReadFileContent.g.cs b/src/libs/Letta/Generated/Letta.MemoryFilesClient.MemoryFilesReadFileContent.g.cs
index e12e9ce5..c56f391b 100644
--- a/src/libs/Letta/Generated/Letta.MemoryFilesClient.MemoryFilesReadFileContent.g.cs
+++ b/src/libs/Letta/Generated/Letta.MemoryFilesClient.MemoryFilesReadFileContent.g.cs
@@ -6,6 +6,19 @@ namespace Letta
public partial class MemoryFilesClient
{
+ private static readonly global::Letta.AutoSDKServer[] s_MemoryFilesReadFileContentServers = new global::Letta.AutoSDKServer[]
+ { new global::Letta.AutoSDKServer(
+ id: "https-app-letta-com",
+ name: "Letta Cloud",
+ url: "https://app.letta.com/",
+ description: "Letta Cloud"),
+ new global::Letta.AutoSDKServer(
+ id: "http-localhost",
+ name: "Self-hosted",
+ url: "http://localhost:8283/",
+ description: "Self-hosted"),
+ };
+
private static readonly global::Letta.EndPointSecurityRequirement s_MemoryFilesReadFileContentSecurityRequirement0 =
new global::Letta.EndPointSecurityRequirement
@@ -94,7 +107,9 @@ partial void ProcessMemoryFilesReadFileContentResponseContent(
{
var __pathBuilder = new global::Letta.PathBuilder(
path: $"/v1/agents/{agentId}/memory-files/content",
- baseUri: HttpClient.BaseAddress);
+ baseUri: ResolveBaseUri(
+ servers: s_MemoryFilesReadFileContentServers,
+ defaultBaseUrl: "https://app.letta.com/"));
__pathBuilder
.AddRequiredParameter("file_path", filePath)
.AddOptionalParameter("ref", @ref)
diff --git a/src/libs/Letta/Generated/Letta.MemoryFilesClient.g.cs b/src/libs/Letta/Generated/Letta.MemoryFilesClient.g.cs
index fbcab555..5b0e3455 100644
--- a/src/libs/Letta/Generated/Letta.MemoryFilesClient.g.cs
+++ b/src/libs/Letta/Generated/Letta.MemoryFilesClient.g.cs
@@ -20,7 +20,7 @@ public sealed partial class MemoryFilesClient : global::Letta.IMemoryFilesClient
public global::System.Net.Http.HttpClient HttpClient { get; }
///
- public System.Uri? BaseUri => HttpClient.BaseAddress;
+ public System.Uri? BaseUri => ResolveDisplayedBaseUri();
///
public global::System.Collections.Generic.List Authorizations { get; }
@@ -33,12 +33,43 @@ public sealed partial class MemoryFilesClient : global::Letta.IMemoryFilesClient
///
public global::Letta.AutoSDKClientOptions Options { get; }
+
+
+ internal global::Letta.AutoSDKServerConfiguration AutoSDKServerConfiguration { get; set; } = new global::Letta.AutoSDKServerConfiguration();
///
///
///
public global::System.Text.Json.Serialization.JsonSerializerContext JsonSerializerContext { get; set; } = global::Letta.SourceGenerationContext.Default;
+
+ private static readonly global::Letta.AutoSDKServer[] s_availableServers = new global::Letta.AutoSDKServer[]
+ { new global::Letta.AutoSDKServer(
+ id: "https-app-letta-com",
+ name: "Letta Cloud",
+ url: "https://app.letta.com/",
+ description: "Letta Cloud"),
+ new global::Letta.AutoSDKServer(
+ id: "http-localhost",
+ name: "Self-hosted",
+ url: "http://localhost:8283/",
+ description: "Self-hosted"),
+ };
+
+ ///
+ /// The server options available for this client.
+ ///
+ public global::System.Collections.Generic.IReadOnlyList AvailableServers => s_availableServers;
+
+ ///
+ /// The currently selected server for this client, if any.
+ ///
+ public global::Letta.AutoSDKServer? SelectedServer
+ {
+ get => ResolveSelectedServer();
+ set => SelectServer(value);
+ }
+
///
/// Creates a new instance of the MemoryFilesClient.
/// If no httpClient is provided, a new one will be created.
@@ -85,6 +116,8 @@ public MemoryFilesClient(
Options = options ?? new global::Letta.AutoSDKClientOptions();
_disposeHttpClient = disposeHttpClient;
+ AutoSDKServerConfiguration.ExplicitBaseUri = baseUri ?? httpClient?.BaseAddress;
+
Initialized(HttpClient);
}
@@ -111,5 +144,117 @@ partial void ProcessResponseContent(
global::System.Net.Http.HttpClient client,
global::System.Net.Http.HttpResponseMessage response,
ref string content);
+
+
+ ///
+ /// Selects one of the generated server options by id.
+ ///
+ public bool TrySelectServer(string serverId)
+ {
+ if (string.IsNullOrWhiteSpace(serverId))
+ {
+ return false;
+ }
+
+ foreach (var server in s_availableServers)
+ {
+ if (string.Equals(server.Id, serverId, global::System.StringComparison.OrdinalIgnoreCase))
+ {
+ AutoSDKServerConfiguration.SelectedServer = server;
+ AutoSDKServerConfiguration.ExplicitBaseUri = null;
+ return true;
+ }
+ }
+
+ return false;
+ }
+
+ ///
+ /// Clears the currently selected server.
+ ///
+ public void ClearSelectedServer()
+ {
+ AutoSDKServerConfiguration.SelectedServer = null;
+ }
+
+ private global::Letta.AutoSDKServer? ResolveSelectedServer()
+ {
+ var selectedServer = AutoSDKServerConfiguration.SelectedServer;
+ if (selectedServer is null)
+ {
+ return null;
+ }
+
+ foreach (var server in s_availableServers)
+ {
+ if (string.Equals(server.Id, selectedServer.Id, global::System.StringComparison.Ordinal))
+ {
+ return server;
+ }
+ }
+
+ return null;
+ }
+
+ private void SelectServer(global::Letta.AutoSDKServer? server)
+ {
+ if (server is null)
+ {
+ AutoSDKServerConfiguration.SelectedServer = null;
+ return;
+ }
+
+ foreach (var candidate in s_availableServers)
+ {
+ if (string.Equals(candidate.Id, server.Id, global::System.StringComparison.Ordinal))
+ {
+ AutoSDKServerConfiguration.SelectedServer = candidate;
+ AutoSDKServerConfiguration.ExplicitBaseUri = null;
+ return;
+ }
+ }
+
+ throw new global::System.ArgumentException("The provided server is not available for this client.", nameof(server));
+ }
+
+ private global::System.Uri? ResolveDisplayedBaseUri()
+ {
+ if (AutoSDKServerConfiguration.ExplicitBaseUri is global::System.Uri explicitBaseUri)
+ {
+ return explicitBaseUri;
+ }
+
+ return ResolveSelectedServer()?.Uri ?? HttpClient.BaseAddress;
+ }
+
+ private global::System.Uri? ResolveBaseUri(
+ global::Letta.AutoSDKServer[] servers,
+ string defaultBaseUrl)
+ {
+ if (AutoSDKServerConfiguration.ExplicitBaseUri is global::System.Uri explicitBaseUri)
+ {
+ return explicitBaseUri;
+ }
+
+ if (AutoSDKServerConfiguration.SelectedServer is global::Letta.AutoSDKServer selectedServer)
+ {
+ foreach (var server in servers)
+ {
+ if (string.Equals(server.Id, selectedServer.Id, global::System.StringComparison.Ordinal))
+ {
+ return server.Uri;
+ }
+ }
+ }
+
+ if (servers.Length > 0)
+ {
+ return servers[0].Uri;
+ }
+
+ return string.IsNullOrWhiteSpace(defaultBaseUrl)
+ ? HttpClient.BaseAddress
+ : new global::System.Uri(defaultBaseUrl, global::System.UriKind.RelativeOrAbsolute);
+ }
}
}
\ No newline at end of file
diff --git a/src/libs/Letta/Generated/Letta.MessagesClient.CancelBatch.g.cs b/src/libs/Letta/Generated/Letta.MessagesClient.CancelBatch.g.cs
index 07303c2f..633c55cb 100644
--- a/src/libs/Letta/Generated/Letta.MessagesClient.CancelBatch.g.cs
+++ b/src/libs/Letta/Generated/Letta.MessagesClient.CancelBatch.g.cs
@@ -6,6 +6,19 @@ namespace Letta
public partial class MessagesClient
{
+ private static readonly global::Letta.AutoSDKServer[] s_CancelBatchServers = new global::Letta.AutoSDKServer[]
+ { new global::Letta.AutoSDKServer(
+ id: "https-app-letta-com",
+ name: "Letta Cloud",
+ url: "https://app.letta.com/",
+ description: "Letta Cloud"),
+ new global::Letta.AutoSDKServer(
+ id: "http-localhost",
+ name: "Self-hosted",
+ url: "http://localhost:8283/",
+ description: "Self-hosted"),
+ };
+
private static readonly global::Letta.EndPointSecurityRequirement s_CancelBatchSecurityRequirement0 =
new global::Letta.EndPointSecurityRequirement
@@ -84,7 +97,9 @@ partial void ProcessCancelBatchResponseContent(
{
var __pathBuilder = new global::Letta.PathBuilder(
path: $"/v1/messages/batches/{batchId}/cancel",
- baseUri: HttpClient.BaseAddress);
+ baseUri: ResolveBaseUri(
+ servers: s_CancelBatchServers,
+ defaultBaseUrl: "https://app.letta.com/"));
var __path = __pathBuilder.ToString();
__path = global::Letta.AutoSDKRequestOptionsSupport.AppendQueryParameters(
path: __path,
diff --git a/src/libs/Letta/Generated/Letta.MessagesClient.CreateBatch.g.cs b/src/libs/Letta/Generated/Letta.MessagesClient.CreateBatch.g.cs
index 822f94fe..4d55a851 100644
--- a/src/libs/Letta/Generated/Letta.MessagesClient.CreateBatch.g.cs
+++ b/src/libs/Letta/Generated/Letta.MessagesClient.CreateBatch.g.cs
@@ -6,6 +6,19 @@ namespace Letta
public partial class MessagesClient
{
+ private static readonly global::Letta.AutoSDKServer[] s_CreateBatchServers = new global::Letta.AutoSDKServer[]
+ { new global::Letta.AutoSDKServer(
+ id: "https-app-letta-com",
+ name: "Letta Cloud",
+ url: "https://app.letta.com/",
+ description: "Letta Cloud"),
+ new global::Letta.AutoSDKServer(
+ id: "http-localhost",
+ name: "Self-hosted",
+ url: "http://localhost:8283/",
+ description: "Self-hosted"),
+ };
+
private static readonly global::Letta.EndPointSecurityRequirement s_CreateBatchSecurityRequirement0 =
new global::Letta.EndPointSecurityRequirement
@@ -89,7 +102,9 @@ partial void ProcessCreateBatchResponseContent(
{
var __pathBuilder = new global::Letta.PathBuilder(
path: "/v1/messages/batches",
- baseUri: HttpClient.BaseAddress);
+ baseUri: ResolveBaseUri(
+ servers: s_CreateBatchServers,
+ defaultBaseUrl: "https://app.letta.com/"));
var __path = __pathBuilder.ToString();
__path = global::Letta.AutoSDKRequestOptionsSupport.AppendQueryParameters(
path: __path,
diff --git a/src/libs/Letta/Generated/Letta.MessagesClient.ListAllMessages.g.cs b/src/libs/Letta/Generated/Letta.MessagesClient.ListAllMessages.g.cs
index 15c3c119..e0aa0501 100644
--- a/src/libs/Letta/Generated/Letta.MessagesClient.ListAllMessages.g.cs
+++ b/src/libs/Letta/Generated/Letta.MessagesClient.ListAllMessages.g.cs
@@ -6,6 +6,19 @@ namespace Letta
public partial class MessagesClient
{
+ private static readonly global::Letta.AutoSDKServer[] s_ListAllMessagesServers = new global::Letta.AutoSDKServer[]
+ { new global::Letta.AutoSDKServer(
+ id: "https-app-letta-com",
+ name: "Letta Cloud",
+ url: "https://app.letta.com/",
+ description: "Letta Cloud"),
+ new global::Letta.AutoSDKServer(
+ id: "http-localhost",
+ name: "Self-hosted",
+ url: "http://localhost:8283/",
+ description: "Self-hosted"),
+ };
+
private static readonly global::Letta.EndPointSecurityRequirement s_ListAllMessagesSecurityRequirement0 =
new global::Letta.EndPointSecurityRequirement
@@ -123,7 +136,9 @@ partial void ProcessListAllMessagesResponseContent(
{
var __pathBuilder = new global::Letta.PathBuilder(
path: "/v1/messages/",
- baseUri: HttpClient.BaseAddress);
+ baseUri: ResolveBaseUri(
+ servers: s_ListAllMessagesServers,
+ defaultBaseUrl: "https://app.letta.com/"));
__pathBuilder
.AddOptionalParameter("before", before)
.AddOptionalParameter("after", after)
diff --git a/src/libs/Letta/Generated/Letta.MessagesClient.ListBatches.g.cs b/src/libs/Letta/Generated/Letta.MessagesClient.ListBatches.g.cs
index 7abdfa8e..975ebec9 100644
--- a/src/libs/Letta/Generated/Letta.MessagesClient.ListBatches.g.cs
+++ b/src/libs/Letta/Generated/Letta.MessagesClient.ListBatches.g.cs
@@ -6,6 +6,19 @@ namespace Letta
public partial class MessagesClient
{
+ private static readonly global::Letta.AutoSDKServer[] s_ListBatchesServers = new global::Letta.AutoSDKServer[]
+ { new global::Letta.AutoSDKServer(
+ id: "https-app-letta-com",
+ name: "Letta Cloud",
+ url: "https://app.letta.com/",
+ description: "Letta Cloud"),
+ new global::Letta.AutoSDKServer(
+ id: "http-localhost",
+ name: "Self-hosted",
+ url: "http://localhost:8283/",
+ description: "Self-hosted"),
+ };
+
private static readonly global::Letta.EndPointSecurityRequirement s_ListBatchesSecurityRequirement0 =
new global::Letta.EndPointSecurityRequirement
@@ -117,7 +130,9 @@ partial void ProcessListBatchesResponseContent(
{
var __pathBuilder = new global::Letta.PathBuilder(
path: "/v1/messages/batches",
- baseUri: HttpClient.BaseAddress);
+ baseUri: ResolveBaseUri(
+ servers: s_ListBatchesServers,
+ defaultBaseUrl: "https://app.letta.com/"));
__pathBuilder
.AddOptionalParameter("before", before)
.AddOptionalParameter("after", after)
diff --git a/src/libs/Letta/Generated/Letta.MessagesClient.ListMessagesForBatch.g.cs b/src/libs/Letta/Generated/Letta.MessagesClient.ListMessagesForBatch.g.cs
index 6518d548..1c61a6b6 100644
--- a/src/libs/Letta/Generated/Letta.MessagesClient.ListMessagesForBatch.g.cs
+++ b/src/libs/Letta/Generated/Letta.MessagesClient.ListMessagesForBatch.g.cs
@@ -6,6 +6,19 @@ namespace Letta
public partial class MessagesClient
{
+ private static readonly global::Letta.AutoSDKServer[] s_ListMessagesForBatchServers = new global::Letta.AutoSDKServer[]
+ { new global::Letta.AutoSDKServer(
+ id: "https-app-letta-com",
+ name: "Letta Cloud",
+ url: "https://app.letta.com/",
+ description: "Letta Cloud"),
+ new global::Letta.AutoSDKServer(
+ id: "http-localhost",
+ name: "Self-hosted",
+ url: "http://localhost:8283/",
+ description: "Self-hosted"),
+ };
+
private static readonly global::Letta.EndPointSecurityRequirement s_ListMessagesForBatchSecurityRequirement0 =
new global::Letta.EndPointSecurityRequirement
@@ -129,7 +142,9 @@ partial void ProcessListMessagesForBatchResponseContent(
{
var __pathBuilder = new global::Letta.PathBuilder(
path: $"/v1/messages/batches/{batchId}/messages",
- baseUri: HttpClient.BaseAddress);
+ baseUri: ResolveBaseUri(
+ servers: s_ListMessagesForBatchServers,
+ defaultBaseUrl: "https://app.letta.com/"));
__pathBuilder
.AddOptionalParameter("before", before)
.AddOptionalParameter("after", after)
diff --git a/src/libs/Letta/Generated/Letta.MessagesClient.RetrieveBatch.g.cs b/src/libs/Letta/Generated/Letta.MessagesClient.RetrieveBatch.g.cs
index 63e8f172..2637c30b 100644
--- a/src/libs/Letta/Generated/Letta.MessagesClient.RetrieveBatch.g.cs
+++ b/src/libs/Letta/Generated/Letta.MessagesClient.RetrieveBatch.g.cs
@@ -6,6 +6,19 @@ namespace Letta
public partial class MessagesClient
{
+ private static readonly global::Letta.AutoSDKServer[] s_RetrieveBatchServers = new global::Letta.AutoSDKServer[]
+ { new global::Letta.AutoSDKServer(
+ id: "https-app-letta-com",
+ name: "Letta Cloud",
+ url: "https://app.letta.com/",
+ description: "Letta Cloud"),
+ new global::Letta.AutoSDKServer(
+ id: "http-localhost",
+ name: "Self-hosted",
+ url: "http://localhost:8283/",
+ description: "Self-hosted"),
+ };
+
private static readonly global::Letta.EndPointSecurityRequirement s_RetrieveBatchSecurityRequirement0 =
new global::Letta.EndPointSecurityRequirement
@@ -84,7 +97,9 @@ partial void ProcessRetrieveBatchResponseContent(
{
var __pathBuilder = new global::Letta.PathBuilder(
path: $"/v1/messages/batches/{batchId}",
- baseUri: HttpClient.BaseAddress);
+ baseUri: ResolveBaseUri(
+ servers: s_RetrieveBatchServers,
+ defaultBaseUrl: "https://app.letta.com/"));
var __path = __pathBuilder.ToString();
__path = global::Letta.AutoSDKRequestOptionsSupport.AppendQueryParameters(
path: __path,
diff --git a/src/libs/Letta/Generated/Letta.MessagesClient.RetrieveMessage.g.cs b/src/libs/Letta/Generated/Letta.MessagesClient.RetrieveMessage.g.cs
index 84a907a6..beb86d15 100644
--- a/src/libs/Letta/Generated/Letta.MessagesClient.RetrieveMessage.g.cs
+++ b/src/libs/Letta/Generated/Letta.MessagesClient.RetrieveMessage.g.cs
@@ -6,6 +6,19 @@ namespace Letta
public partial class MessagesClient
{
+ private static readonly global::Letta.AutoSDKServer[] s_RetrieveMessageServers = new global::Letta.AutoSDKServer[]
+ { new global::Letta.AutoSDKServer(
+ id: "https-app-letta-com",
+ name: "Letta Cloud",
+ url: "https://app.letta.com/",
+ description: "Letta Cloud"),
+ new global::Letta.AutoSDKServer(
+ id: "http-localhost",
+ name: "Self-hosted",
+ url: "http://localhost:8283/",
+ description: "Self-hosted"),
+ };
+
private static readonly global::Letta.EndPointSecurityRequirement s_RetrieveMessageSecurityRequirement0 =
new global::Letta.EndPointSecurityRequirement
@@ -86,7 +99,9 @@ partial void ProcessRetrieveMessageResponseContent(
{
var __pathBuilder = new global::Letta.PathBuilder(
path: $"/v1/messages/{messageId}",
- baseUri: HttpClient.BaseAddress);
+ baseUri: ResolveBaseUri(
+ servers: s_RetrieveMessageServers,
+ defaultBaseUrl: "https://app.letta.com/"));
var __path = __pathBuilder.ToString();
__path = global::Letta.AutoSDKRequestOptionsSupport.AppendQueryParameters(
path: __path,
diff --git a/src/libs/Letta/Generated/Letta.MessagesClient.SearchAllMessages.g.cs b/src/libs/Letta/Generated/Letta.MessagesClient.SearchAllMessages.g.cs
index 92c17da6..d98ce42a 100644
--- a/src/libs/Letta/Generated/Letta.MessagesClient.SearchAllMessages.g.cs
+++ b/src/libs/Letta/Generated/Letta.MessagesClient.SearchAllMessages.g.cs
@@ -6,6 +6,19 @@ namespace Letta
public partial class MessagesClient
{
+ private static readonly global::Letta.AutoSDKServer[] s_SearchAllMessagesServers = new global::Letta.AutoSDKServer[]
+ { new global::Letta.AutoSDKServer(
+ id: "https-app-letta-com",
+ name: "Letta Cloud",
+ url: "https://app.letta.com/",
+ description: "Letta Cloud"),
+ new global::Letta.AutoSDKServer(
+ id: "http-localhost",
+ name: "Self-hosted",
+ url: "http://localhost:8283/",
+ description: "Self-hosted"),
+ };
+
private static readonly global::Letta.EndPointSecurityRequirement s_SearchAllMessagesSecurityRequirement0 =
new global::Letta.EndPointSecurityRequirement
@@ -89,7 +102,9 @@ partial void ProcessSearchAllMessagesResponseContent(
{
var __pathBuilder = new global::Letta.PathBuilder(
path: "/v1/messages/search",
- baseUri: HttpClient.BaseAddress);
+ baseUri: ResolveBaseUri(
+ servers: s_SearchAllMessagesServers,
+ defaultBaseUrl: "https://app.letta.com/"));
var __path = __pathBuilder.ToString();
__path = global::Letta.AutoSDKRequestOptionsSupport.AppendQueryParameters(
path: __path,
diff --git a/src/libs/Letta/Generated/Letta.MessagesClient.g.cs b/src/libs/Letta/Generated/Letta.MessagesClient.g.cs
index 013e6aad..104cc0ea 100644
--- a/src/libs/Letta/Generated/Letta.MessagesClient.g.cs
+++ b/src/libs/Letta/Generated/Letta.MessagesClient.g.cs
@@ -20,7 +20,7 @@ public sealed partial class MessagesClient : global::Letta.IMessagesClient, glob
public global::System.Net.Http.HttpClient HttpClient { get; }
///
- public System.Uri? BaseUri => HttpClient.BaseAddress;
+ public System.Uri? BaseUri => ResolveDisplayedBaseUri();
///
public global::System.Collections.Generic.List Authorizations { get; }
@@ -33,12 +33,43 @@ public sealed partial class MessagesClient : global::Letta.IMessagesClient, glob
///
public global::Letta.AutoSDKClientOptions Options { get; }
+
+
+ internal global::Letta.AutoSDKServerConfiguration AutoSDKServerConfiguration { get; set; } = new global::Letta.AutoSDKServerConfiguration();
///
///
///
public global::System.Text.Json.Serialization.JsonSerializerContext JsonSerializerContext { get; set; } = global::Letta.SourceGenerationContext.Default;
+
+ private static readonly global::Letta.AutoSDKServer[] s_availableServers = new global::Letta.AutoSDKServer[]
+ { new global::Letta.AutoSDKServer(
+ id: "https-app-letta-com",
+ name: "Letta Cloud",
+ url: "https://app.letta.com/",
+ description: "Letta Cloud"),
+ new global::Letta.AutoSDKServer(
+ id: "http-localhost",
+ name: "Self-hosted",
+ url: "http://localhost:8283/",
+ description: "Self-hosted"),
+ };
+
+ ///
+ /// The server options available for this client.
+ ///
+ public global::System.Collections.Generic.IReadOnlyList AvailableServers => s_availableServers;
+
+ ///
+ /// The currently selected server for this client, if any.
+ ///
+ public global::Letta.AutoSDKServer? SelectedServer
+ {
+ get => ResolveSelectedServer();
+ set => SelectServer(value);
+ }
+
///
/// Creates a new instance of the MessagesClient.
/// If no httpClient is provided, a new one will be created.
@@ -85,6 +116,8 @@ public MessagesClient(
Options = options ?? new global::Letta.AutoSDKClientOptions();
_disposeHttpClient = disposeHttpClient;
+ AutoSDKServerConfiguration.ExplicitBaseUri = baseUri ?? httpClient?.BaseAddress;
+
Initialized(HttpClient);
}
@@ -111,5 +144,117 @@ partial void ProcessResponseContent(
global::System.Net.Http.HttpClient client,
global::System.Net.Http.HttpResponseMessage response,
ref string content);
+
+
+ ///
+ /// Selects one of the generated server options by id.
+ ///
+ public bool TrySelectServer(string serverId)
+ {
+ if (string.IsNullOrWhiteSpace(serverId))
+ {
+ return false;
+ }
+
+ foreach (var server in s_availableServers)
+ {
+ if (string.Equals(server.Id, serverId, global::System.StringComparison.OrdinalIgnoreCase))
+ {
+ AutoSDKServerConfiguration.SelectedServer = server;
+ AutoSDKServerConfiguration.ExplicitBaseUri = null;
+ return true;
+ }
+ }
+
+ return false;
+ }
+
+ ///
+ /// Clears the currently selected server.
+ ///
+ public void ClearSelectedServer()
+ {
+ AutoSDKServerConfiguration.SelectedServer = null;
+ }
+
+ private global::Letta.AutoSDKServer? ResolveSelectedServer()
+ {
+ var selectedServer = AutoSDKServerConfiguration.SelectedServer;
+ if (selectedServer is null)
+ {
+ return null;
+ }
+
+ foreach (var server in s_availableServers)
+ {
+ if (string.Equals(server.Id, selectedServer.Id, global::System.StringComparison.Ordinal))
+ {
+ return server;
+ }
+ }
+
+ return null;
+ }
+
+ private void SelectServer(global::Letta.AutoSDKServer? server)
+ {
+ if (server is null)
+ {
+ AutoSDKServerConfiguration.SelectedServer = null;
+ return;
+ }
+
+ foreach (var candidate in s_availableServers)
+ {
+ if (string.Equals(candidate.Id, server.Id, global::System.StringComparison.Ordinal))
+ {
+ AutoSDKServerConfiguration.SelectedServer = candidate;
+ AutoSDKServerConfiguration.ExplicitBaseUri = null;
+ return;
+ }
+ }
+
+ throw new global::System.ArgumentException("The provided server is not available for this client.", nameof(server));
+ }
+
+ private global::System.Uri? ResolveDisplayedBaseUri()
+ {
+ if (AutoSDKServerConfiguration.ExplicitBaseUri is global::System.Uri explicitBaseUri)
+ {
+ return explicitBaseUri;
+ }
+
+ return ResolveSelectedServer()?.Uri ?? HttpClient.BaseAddress;
+ }
+
+ private global::System.Uri? ResolveBaseUri(
+ global::Letta.AutoSDKServer[] servers,
+ string defaultBaseUrl)
+ {
+ if (AutoSDKServerConfiguration.ExplicitBaseUri is global::System.Uri explicitBaseUri)
+ {
+ return explicitBaseUri;
+ }
+
+ if (AutoSDKServerConfiguration.SelectedServer is global::Letta.AutoSDKServer selectedServer)
+ {
+ foreach (var server in servers)
+ {
+ if (string.Equals(server.Id, selectedServer.Id, global::System.StringComparison.Ordinal))
+ {
+ return server.Uri;
+ }
+ }
+ }
+
+ if (servers.Length > 0)
+ {
+ return servers[0].Uri;
+ }
+
+ return string.IsNullOrWhiteSpace(defaultBaseUrl)
+ ? HttpClient.BaseAddress
+ : new global::System.Uri(defaultBaseUrl, global::System.UriKind.RelativeOrAbsolute);
+ }
}
}
\ No newline at end of file
diff --git a/src/libs/Letta/Generated/Letta.MetadataClient.MetadataGetStatus.g.cs b/src/libs/Letta/Generated/Letta.MetadataClient.MetadataGetStatus.g.cs
index 5b7598d4..e31e25ca 100644
--- a/src/libs/Letta/Generated/Letta.MetadataClient.MetadataGetStatus.g.cs
+++ b/src/libs/Letta/Generated/Letta.MetadataClient.MetadataGetStatus.g.cs
@@ -6,6 +6,19 @@ namespace Letta
public partial class MetadataClient
{
+ private static readonly global::Letta.AutoSDKServer[] s_MetadataGetStatusServers = new global::Letta.AutoSDKServer[]
+ { new global::Letta.AutoSDKServer(
+ id: "https-app-letta-com",
+ name: "Letta Cloud",
+ url: "https://app.letta.com/",
+ description: "Letta Cloud"),
+ new global::Letta.AutoSDKServer(
+ id: "http-localhost",
+ name: "Self-hosted",
+ url: "http://localhost:8283/",
+ description: "Self-hosted"),
+ };
+
private static readonly global::Letta.EndPointSecurityRequirement s_MetadataGetStatusSecurityRequirement0 =
new global::Letta.EndPointSecurityRequirement
@@ -78,7 +91,9 @@ partial void ProcessMetadataGetStatusResponseContent(
{
var __pathBuilder = new global::Letta.PathBuilder(
path: "/v1/metadata/status",
- baseUri: HttpClient.BaseAddress);
+ baseUri: ResolveBaseUri(
+ servers: s_MetadataGetStatusServers,
+ defaultBaseUrl: "https://app.letta.com/"));
var __path = __pathBuilder.ToString();
__path = global::Letta.AutoSDKRequestOptionsSupport.AppendQueryParameters(
path: __path,
diff --git a/src/libs/Letta/Generated/Letta.MetadataClient.MetadataGetUser.g.cs b/src/libs/Letta/Generated/Letta.MetadataClient.MetadataGetUser.g.cs
index ff78c87f..87a9044f 100644
--- a/src/libs/Letta/Generated/Letta.MetadataClient.MetadataGetUser.g.cs
+++ b/src/libs/Letta/Generated/Letta.MetadataClient.MetadataGetUser.g.cs
@@ -6,6 +6,19 @@ namespace Letta
public partial class MetadataClient
{
+ private static readonly global::Letta.AutoSDKServer[] s_MetadataGetUserServers = new global::Letta.AutoSDKServer[]
+ { new global::Letta.AutoSDKServer(
+ id: "https-app-letta-com",
+ name: "Letta Cloud",
+ url: "https://app.letta.com/",
+ description: "Letta Cloud"),
+ new global::Letta.AutoSDKServer(
+ id: "http-localhost",
+ name: "Self-hosted",
+ url: "http://localhost:8283/",
+ description: "Self-hosted"),
+ };
+
private static readonly global::Letta.EndPointSecurityRequirement s_MetadataGetUserSecurityRequirement0 =
new global::Letta.EndPointSecurityRequirement
@@ -79,7 +92,9 @@ partial void ProcessMetadataGetUserResponseContent(
{
var __pathBuilder = new global::Letta.PathBuilder(
path: "/v1/metadata/user",
- baseUri: HttpClient.BaseAddress);
+ baseUri: ResolveBaseUri(
+ servers: s_MetadataGetUserServers,
+ defaultBaseUrl: "https://app.letta.com/"));
var __path = __pathBuilder.ToString();
__path = global::Letta.AutoSDKRequestOptionsSupport.AppendQueryParameters(
path: __path,
diff --git a/src/libs/Letta/Generated/Letta.MetadataClient.MetadataRetrieveCurrentBalances.g.cs b/src/libs/Letta/Generated/Letta.MetadataClient.MetadataRetrieveCurrentBalances.g.cs
index bb8316e1..d94fc04f 100644
--- a/src/libs/Letta/Generated/Letta.MetadataClient.MetadataRetrieveCurrentBalances.g.cs
+++ b/src/libs/Letta/Generated/Letta.MetadataClient.MetadataRetrieveCurrentBalances.g.cs
@@ -6,6 +6,19 @@ namespace Letta
public partial class MetadataClient
{
+ private static readonly global::Letta.AutoSDKServer[] s_MetadataRetrieveCurrentBalancesServers = new global::Letta.AutoSDKServer[]
+ { new global::Letta.AutoSDKServer(
+ id: "https-app-letta-com",
+ name: "Letta Cloud",
+ url: "https://app.letta.com/",
+ description: "Letta Cloud"),
+ new global::Letta.AutoSDKServer(
+ id: "http-localhost",
+ name: "Self-hosted",
+ url: "http://localhost:8283/",
+ description: "Self-hosted"),
+ };
+
private static readonly global::Letta.EndPointSecurityRequirement s_MetadataRetrieveCurrentBalancesSecurityRequirement0 =
new global::Letta.EndPointSecurityRequirement
@@ -79,7 +92,9 @@ partial void ProcessMetadataRetrieveCurrentBalancesResponseContent(
{
var __pathBuilder = new global::Letta.PathBuilder(
path: "/v1/metadata/balance",
- baseUri: HttpClient.BaseAddress);
+ baseUri: ResolveBaseUri(
+ servers: s_MetadataRetrieveCurrentBalancesServers,
+ defaultBaseUrl: "https://app.letta.com/"));
var __path = __pathBuilder.ToString();
__path = global::Letta.AutoSDKRequestOptionsSupport.AppendQueryParameters(
path: __path,
diff --git a/src/libs/Letta/Generated/Letta.MetadataClient.MetadataSendFeedback.g.cs b/src/libs/Letta/Generated/Letta.MetadataClient.MetadataSendFeedback.g.cs
index 4be4d9ba..56c1ad35 100644
--- a/src/libs/Letta/Generated/Letta.MetadataClient.MetadataSendFeedback.g.cs
+++ b/src/libs/Letta/Generated/Letta.MetadataClient.MetadataSendFeedback.g.cs
@@ -6,6 +6,19 @@ namespace Letta
public partial class MetadataClient
{
+ private static readonly global::Letta.AutoSDKServer[] s_MetadataSendFeedbackServers = new global::Letta.AutoSDKServer[]
+ { new global::Letta.AutoSDKServer(
+ id: "https-app-letta-com",
+ name: "Letta Cloud",
+ url: "https://app.letta.com/",
+ description: "Letta Cloud"),
+ new global::Letta.AutoSDKServer(
+ id: "http-localhost",
+ name: "Self-hosted",
+ url: "http://localhost:8283/",
+ description: "Self-hosted"),
+ };
+
private static readonly global::Letta.EndPointSecurityRequirement s_MetadataSendFeedbackSecurityRequirement0 =
new global::Letta.EndPointSecurityRequirement
@@ -87,7 +100,9 @@ partial void ProcessMetadataSendFeedbackResponseContent(
{
var __pathBuilder = new global::Letta.PathBuilder(
path: "/v1/metadata/feedback",
- baseUri: HttpClient.BaseAddress);
+ baseUri: ResolveBaseUri(
+ servers: s_MetadataSendFeedbackServers,
+ defaultBaseUrl: "https://app.letta.com/"));
var __path = __pathBuilder.ToString();
__path = global::Letta.AutoSDKRequestOptionsSupport.AppendQueryParameters(
path: __path,
diff --git a/src/libs/Letta/Generated/Letta.MetadataClient.MetadataSendTelemetry.g.cs b/src/libs/Letta/Generated/Letta.MetadataClient.MetadataSendTelemetry.g.cs
index b20dcff2..de68ca13 100644
--- a/src/libs/Letta/Generated/Letta.MetadataClient.MetadataSendTelemetry.g.cs
+++ b/src/libs/Letta/Generated/Letta.MetadataClient.MetadataSendTelemetry.g.cs
@@ -6,6 +6,19 @@ namespace Letta
public partial class MetadataClient
{
+ private static readonly global::Letta.AutoSDKServer[] s_MetadataSendTelemetryServers = new global::Letta.AutoSDKServer[]
+ { new global::Letta.AutoSDKServer(
+ id: "https-app-letta-com",
+ name: "Letta Cloud",
+ url: "https://app.letta.com/",
+ description: "Letta Cloud"),
+ new global::Letta.AutoSDKServer(
+ id: "http-localhost",
+ name: "Self-hosted",
+ url: "http://localhost:8283/",
+ description: "Self-hosted"),
+ };
+
private static readonly global::Letta.EndPointSecurityRequirement s_MetadataSendTelemetrySecurityRequirement0 =
new global::Letta.EndPointSecurityRequirement
@@ -87,7 +100,9 @@ partial void ProcessMetadataSendTelemetryResponseContent(
{
var __pathBuilder = new global::Letta.PathBuilder(
path: "/v1/metadata/telemetry",
- baseUri: HttpClient.BaseAddress);
+ baseUri: ResolveBaseUri(
+ servers: s_MetadataSendTelemetryServers,
+ defaultBaseUrl: "https://app.letta.com/"));
var __path = __pathBuilder.ToString();
__path = global::Letta.AutoSDKRequestOptionsSupport.AppendQueryParameters(
path: __path,
diff --git a/src/libs/Letta/Generated/Letta.MetadataClient.g.cs b/src/libs/Letta/Generated/Letta.MetadataClient.g.cs
index 0bb44258..a61f52ea 100644
--- a/src/libs/Letta/Generated/Letta.MetadataClient.g.cs
+++ b/src/libs/Letta/Generated/Letta.MetadataClient.g.cs
@@ -20,7 +20,7 @@ public sealed partial class MetadataClient : global::Letta.IMetadataClient, glob
public global::System.Net.Http.HttpClient HttpClient { get; }
///
- public System.Uri? BaseUri => HttpClient.BaseAddress;
+ public System.Uri? BaseUri => ResolveDisplayedBaseUri();
///
public global::System.Collections.Generic.List Authorizations { get; }
@@ -33,12 +33,43 @@ public sealed partial class MetadataClient : global::Letta.IMetadataClient, glob
///
public global::Letta.AutoSDKClientOptions Options { get; }
+
+
+ internal global::Letta.AutoSDKServerConfiguration AutoSDKServerConfiguration { get; set; } = new global::Letta.AutoSDKServerConfiguration();
///
///
///
public global::System.Text.Json.Serialization.JsonSerializerContext JsonSerializerContext { get; set; } = global::Letta.SourceGenerationContext.Default;
+
+ private static readonly global::Letta.AutoSDKServer[] s_availableServers = new global::Letta.AutoSDKServer[]
+ { new global::Letta.AutoSDKServer(
+ id: "https-app-letta-com",
+ name: "Letta Cloud",
+ url: "https://app.letta.com/",
+ description: "Letta Cloud"),
+ new global::Letta.AutoSDKServer(
+ id: "http-localhost",
+ name: "Self-hosted",
+ url: "http://localhost:8283/",
+ description: "Self-hosted"),
+ };
+
+ ///
+ /// The server options available for this client.
+ ///
+ public global::System.Collections.Generic.IReadOnlyList AvailableServers => s_availableServers;
+
+ ///
+ /// The currently selected server for this client, if any.
+ ///
+ public global::Letta.AutoSDKServer? SelectedServer
+ {
+ get => ResolveSelectedServer();
+ set => SelectServer(value);
+ }
+
///
/// Creates a new instance of the MetadataClient.
/// If no httpClient is provided, a new one will be created.
@@ -85,6 +116,8 @@ public MetadataClient(
Options = options ?? new global::Letta.AutoSDKClientOptions();
_disposeHttpClient = disposeHttpClient;
+ AutoSDKServerConfiguration.ExplicitBaseUri = baseUri ?? httpClient?.BaseAddress;
+
Initialized(HttpClient);
}
@@ -111,5 +144,117 @@ partial void ProcessResponseContent(
global::System.Net.Http.HttpClient client,
global::System.Net.Http.HttpResponseMessage response,
ref string content);
+
+
+ ///
+ /// Selects one of the generated server options by id.
+ ///
+ public bool TrySelectServer(string serverId)
+ {
+ if (string.IsNullOrWhiteSpace(serverId))
+ {
+ return false;
+ }
+
+ foreach (var server in s_availableServers)
+ {
+ if (string.Equals(server.Id, serverId, global::System.StringComparison.OrdinalIgnoreCase))
+ {
+ AutoSDKServerConfiguration.SelectedServer = server;
+ AutoSDKServerConfiguration.ExplicitBaseUri = null;
+ return true;
+ }
+ }
+
+ return false;
+ }
+
+ ///
+ /// Clears the currently selected server.
+ ///
+ public void ClearSelectedServer()
+ {
+ AutoSDKServerConfiguration.SelectedServer = null;
+ }
+
+ private global::Letta.AutoSDKServer? ResolveSelectedServer()
+ {
+ var selectedServer = AutoSDKServerConfiguration.SelectedServer;
+ if (selectedServer is null)
+ {
+ return null;
+ }
+
+ foreach (var server in s_availableServers)
+ {
+ if (string.Equals(server.Id, selectedServer.Id, global::System.StringComparison.Ordinal))
+ {
+ return server;
+ }
+ }
+
+ return null;
+ }
+
+ private void SelectServer(global::Letta.AutoSDKServer? server)
+ {
+ if (server is null)
+ {
+ AutoSDKServerConfiguration.SelectedServer = null;
+ return;
+ }
+
+ foreach (var candidate in s_availableServers)
+ {
+ if (string.Equals(candidate.Id, server.Id, global::System.StringComparison.Ordinal))
+ {
+ AutoSDKServerConfiguration.SelectedServer = candidate;
+ AutoSDKServerConfiguration.ExplicitBaseUri = null;
+ return;
+ }
+ }
+
+ throw new global::System.ArgumentException("The provided server is not available for this client.", nameof(server));
+ }
+
+ private global::System.Uri? ResolveDisplayedBaseUri()
+ {
+ if (AutoSDKServerConfiguration.ExplicitBaseUri is global::System.Uri explicitBaseUri)
+ {
+ return explicitBaseUri;
+ }
+
+ return ResolveSelectedServer()?.Uri ?? HttpClient.BaseAddress;
+ }
+
+ private global::System.Uri? ResolveBaseUri(
+ global::Letta.AutoSDKServer[] servers,
+ string defaultBaseUrl)
+ {
+ if (AutoSDKServerConfiguration.ExplicitBaseUri is global::System.Uri explicitBaseUri)
+ {
+ return explicitBaseUri;
+ }
+
+ if (AutoSDKServerConfiguration.SelectedServer is global::Letta.AutoSDKServer selectedServer)
+ {
+ foreach (var server in servers)
+ {
+ if (string.Equals(server.Id, selectedServer.Id, global::System.StringComparison.Ordinal))
+ {
+ return server.Uri;
+ }
+ }
+ }
+
+ if (servers.Length > 0)
+ {
+ return servers[0].Uri;
+ }
+
+ return string.IsNullOrWhiteSpace(defaultBaseUrl)
+ ? HttpClient.BaseAddress
+ : new global::System.Uri(defaultBaseUrl, global::System.UriKind.RelativeOrAbsolute);
+ }
}
}
\ No newline at end of file
diff --git a/src/libs/Letta/Generated/Letta.ModelsClient.ListEmbeddingModels.g.cs b/src/libs/Letta/Generated/Letta.ModelsClient.ListEmbeddingModels.g.cs
index 080465ce..6da76c0b 100644
--- a/src/libs/Letta/Generated/Letta.ModelsClient.ListEmbeddingModels.g.cs
+++ b/src/libs/Letta/Generated/Letta.ModelsClient.ListEmbeddingModels.g.cs
@@ -6,6 +6,19 @@ namespace Letta
public partial class ModelsClient
{
+ private static readonly global::Letta.AutoSDKServer[] s_ListEmbeddingModelsServers = new global::Letta.AutoSDKServer[]
+ { new global::Letta.AutoSDKServer(
+ id: "https-app-letta-com",
+ name: "Letta Cloud",
+ url: "https://app.letta.com/",
+ description: "Letta Cloud"),
+ new global::Letta.AutoSDKServer(
+ id: "http-localhost",
+ name: "Self-hosted",
+ url: "http://localhost:8283/",
+ description: "Self-hosted"),
+ };
+
private static readonly global::Letta.EndPointSecurityRequirement s_ListEmbeddingModelsSecurityRequirement0 =
new global::Letta.EndPointSecurityRequirement
@@ -81,7 +94,9 @@ partial void ProcessListEmbeddingModelsResponseContent(
{
var __pathBuilder = new global::Letta.PathBuilder(
path: "/v1/models/embedding",
- baseUri: HttpClient.BaseAddress);
+ baseUri: ResolveBaseUri(
+ servers: s_ListEmbeddingModelsServers,
+ defaultBaseUrl: "https://app.letta.com/"));
var __path = __pathBuilder.ToString();
__path = global::Letta.AutoSDKRequestOptionsSupport.AppendQueryParameters(
path: __path,
diff --git a/src/libs/Letta/Generated/Letta.ModelsClient.ListModels.g.cs b/src/libs/Letta/Generated/Letta.ModelsClient.ListModels.g.cs
index 98cec2e8..8d03e3db 100644
--- a/src/libs/Letta/Generated/Letta.ModelsClient.ListModels.g.cs
+++ b/src/libs/Letta/Generated/Letta.ModelsClient.ListModels.g.cs
@@ -6,6 +6,19 @@ namespace Letta
public partial class ModelsClient
{
+ private static readonly global::Letta.AutoSDKServer[] s_ListModelsServers = new global::Letta.AutoSDKServer[]
+ { new global::Letta.AutoSDKServer(
+ id: "https-app-letta-com",
+ name: "Letta Cloud",
+ url: "https://app.letta.com/",
+ description: "Letta Cloud"),
+ new global::Letta.AutoSDKServer(
+ id: "http-localhost",
+ name: "Self-hosted",
+ url: "http://localhost:8283/",
+ description: "Self-hosted"),
+ };
+
private static readonly global::Letta.EndPointSecurityRequirement s_ListModelsSecurityRequirement0 =
new global::Letta.EndPointSecurityRequirement
@@ -96,7 +109,9 @@ partial void ProcessListModelsResponseContent(
{
var __pathBuilder = new global::Letta.PathBuilder(
path: "/v1/models/",
- baseUri: HttpClient.BaseAddress);
+ baseUri: ResolveBaseUri(
+ servers: s_ListModelsServers,
+ defaultBaseUrl: "https://app.letta.com/"));
__pathBuilder
.AddOptionalParameter("provider_category", providerCategory?.ToString())
.AddOptionalParameter("provider_name", providerName)
diff --git a/src/libs/Letta/Generated/Letta.ModelsClient.ModelsListEmbeddingModels.g.cs b/src/libs/Letta/Generated/Letta.ModelsClient.ModelsListEmbeddingModels.g.cs
index 6e62a54c..fd5decd0 100644
--- a/src/libs/Letta/Generated/Letta.ModelsClient.ModelsListEmbeddingModels.g.cs
+++ b/src/libs/Letta/Generated/Letta.ModelsClient.ModelsListEmbeddingModels.g.cs
@@ -6,6 +6,19 @@ namespace Letta
public partial class ModelsClient
{
+ private static readonly global::Letta.AutoSDKServer[] s_ModelsListEmbeddingModelsServers = new global::Letta.AutoSDKServer[]
+ { new global::Letta.AutoSDKServer(
+ id: "https-app-letta-com",
+ name: "Letta Cloud",
+ url: "https://app.letta.com/",
+ description: "Letta Cloud"),
+ new global::Letta.AutoSDKServer(
+ id: "http-localhost",
+ name: "Self-hosted",
+ url: "http://localhost:8283/",
+ description: "Self-hosted"),
+ };
+
private static readonly global::Letta.EndPointSecurityRequirement s_ModelsListEmbeddingModelsSecurityRequirement0 =
new global::Letta.EndPointSecurityRequirement
@@ -73,7 +86,9 @@ partial void ProcessModelsListEmbeddingModelsResponse(
{
var __pathBuilder = new global::Letta.PathBuilder(
path: "/v1/models/embeddings",
- baseUri: HttpClient.BaseAddress);
+ baseUri: ResolveBaseUri(
+ servers: s_ModelsListEmbeddingModelsServers,
+ defaultBaseUrl: "https://app.letta.com/"));
var __path = __pathBuilder.ToString();
__path = global::Letta.AutoSDKRequestOptionsSupport.AppendQueryParameters(
path: __path,
diff --git a/src/libs/Letta/Generated/Letta.ModelsClient.g.cs b/src/libs/Letta/Generated/Letta.ModelsClient.g.cs
index 4005ea24..e408e174 100644
--- a/src/libs/Letta/Generated/Letta.ModelsClient.g.cs
+++ b/src/libs/Letta/Generated/Letta.ModelsClient.g.cs
@@ -20,7 +20,7 @@ public sealed partial class ModelsClient : global::Letta.IModelsClient, global::
public global::System.Net.Http.HttpClient HttpClient { get; }
///
- public System.Uri? BaseUri => HttpClient.BaseAddress;
+ public System.Uri? BaseUri => ResolveDisplayedBaseUri();
///
public global::System.Collections.Generic.List Authorizations { get; }
@@ -33,12 +33,43 @@ public sealed partial class ModelsClient : global::Letta.IModelsClient, global::
///
public global::Letta.AutoSDKClientOptions Options { get; }
+
+
+ internal global::Letta.AutoSDKServerConfiguration AutoSDKServerConfiguration { get; set; } = new global::Letta.AutoSDKServerConfiguration();
///
///
///
public global::System.Text.Json.Serialization.JsonSerializerContext JsonSerializerContext { get; set; } = global::Letta.SourceGenerationContext.Default;
+
+ private static readonly global::Letta.AutoSDKServer[] s_availableServers = new global::Letta.AutoSDKServer[]
+ { new global::Letta.AutoSDKServer(
+ id: "https-app-letta-com",
+ name: "Letta Cloud",
+ url: "https://app.letta.com/",
+ description: "Letta Cloud"),
+ new global::Letta.AutoSDKServer(
+ id: "http-localhost",
+ name: "Self-hosted",
+ url: "http://localhost:8283/",
+ description: "Self-hosted"),
+ };
+
+ ///
+ /// The server options available for this client.
+ ///
+ public global::System.Collections.Generic.IReadOnlyList AvailableServers => s_availableServers;
+
+ ///
+ /// The currently selected server for this client, if any.
+ ///
+ public global::Letta.AutoSDKServer? SelectedServer
+ {
+ get => ResolveSelectedServer();
+ set => SelectServer(value);
+ }
+
///
/// Creates a new instance of the ModelsClient.
/// If no httpClient is provided, a new one will be created.
@@ -85,6 +116,8 @@ public ModelsClient(
Options = options ?? new global::Letta.AutoSDKClientOptions();
_disposeHttpClient = disposeHttpClient;
+ AutoSDKServerConfiguration.ExplicitBaseUri = baseUri ?? httpClient?.BaseAddress;
+
Initialized(HttpClient);
}
@@ -111,5 +144,117 @@ partial void ProcessResponseContent(
global::System.Net.Http.HttpClient client,
global::System.Net.Http.HttpResponseMessage response,
ref string content);
+
+
+ ///
+ /// Selects one of the generated server options by id.
+ ///
+ public bool TrySelectServer(string serverId)
+ {
+ if (string.IsNullOrWhiteSpace(serverId))
+ {
+ return false;
+ }
+
+ foreach (var server in s_availableServers)
+ {
+ if (string.Equals(server.Id, serverId, global::System.StringComparison.OrdinalIgnoreCase))
+ {
+ AutoSDKServerConfiguration.SelectedServer = server;
+ AutoSDKServerConfiguration.ExplicitBaseUri = null;
+ return true;
+ }
+ }
+
+ return false;
+ }
+
+ ///
+ /// Clears the currently selected server.
+ ///
+ public void ClearSelectedServer()
+ {
+ AutoSDKServerConfiguration.SelectedServer = null;
+ }
+
+ private global::Letta.AutoSDKServer? ResolveSelectedServer()
+ {
+ var selectedServer = AutoSDKServerConfiguration.SelectedServer;
+ if (selectedServer is null)
+ {
+ return null;
+ }
+
+ foreach (var server in s_availableServers)
+ {
+ if (string.Equals(server.Id, selectedServer.Id, global::System.StringComparison.Ordinal))
+ {
+ return server;
+ }
+ }
+
+ return null;
+ }
+
+ private void SelectServer(global::Letta.AutoSDKServer? server)
+ {
+ if (server is null)
+ {
+ AutoSDKServerConfiguration.SelectedServer = null;
+ return;
+ }
+
+ foreach (var candidate in s_availableServers)
+ {
+ if (string.Equals(candidate.Id, server.Id, global::System.StringComparison.Ordinal))
+ {
+ AutoSDKServerConfiguration.SelectedServer = candidate;
+ AutoSDKServerConfiguration.ExplicitBaseUri = null;
+ return;
+ }
+ }
+
+ throw new global::System.ArgumentException("The provided server is not available for this client.", nameof(server));
+ }
+
+ private global::System.Uri? ResolveDisplayedBaseUri()
+ {
+ if (AutoSDKServerConfiguration.ExplicitBaseUri is global::System.Uri explicitBaseUri)
+ {
+ return explicitBaseUri;
+ }
+
+ return ResolveSelectedServer()?.Uri ?? HttpClient.BaseAddress;
+ }
+
+ private global::System.Uri? ResolveBaseUri(
+ global::Letta.AutoSDKServer[] servers,
+ string defaultBaseUrl)
+ {
+ if (AutoSDKServerConfiguration.ExplicitBaseUri is global::System.Uri explicitBaseUri)
+ {
+ return explicitBaseUri;
+ }
+
+ if (AutoSDKServerConfiguration.SelectedServer is global::Letta.AutoSDKServer selectedServer)
+ {
+ foreach (var server in servers)
+ {
+ if (string.Equals(server.Id, selectedServer.Id, global::System.StringComparison.Ordinal))
+ {
+ return server.Uri;
+ }
+ }
+ }
+
+ if (servers.Length > 0)
+ {
+ return servers[0].Uri;
+ }
+
+ return string.IsNullOrWhiteSpace(defaultBaseUrl)
+ ? HttpClient.BaseAddress
+ : new global::System.Uri(defaultBaseUrl, global::System.UriKind.RelativeOrAbsolute);
+ }
}
}
\ No newline at end of file
diff --git a/src/libs/Letta/Generated/Letta.OptionsSupport.g.cs b/src/libs/Letta/Generated/Letta.OptionsSupport.g.cs
index 39dccab5..c254a10e 100644
--- a/src/libs/Letta/Generated/Letta.OptionsSupport.g.cs
+++ b/src/libs/Letta/Generated/Letta.OptionsSupport.g.cs
@@ -106,6 +106,7 @@ public sealed class AutoSDKRetryOptions
public global::System.TimeSpan? Delay { get; set; }
}
+
///
/// Runtime hook interface for generated SDK lifecycle events.
///
@@ -236,6 +237,7 @@ public sealed class AutoSDKHookContext
public global::System.Threading.CancellationToken CancellationToken { get; set; }
}
+
internal static class AutoSDKRequestOptionsSupport
{
internal static global::Letta.AutoSDKHookContext CreateHookContext(
diff --git a/src/libs/Letta/Generated/Letta.PassagesClient.SearchPassages.g.cs b/src/libs/Letta/Generated/Letta.PassagesClient.SearchPassages.g.cs
index 7440d448..e0fa8d84 100644
--- a/src/libs/Letta/Generated/Letta.PassagesClient.SearchPassages.g.cs
+++ b/src/libs/Letta/Generated/Letta.PassagesClient.SearchPassages.g.cs
@@ -6,6 +6,19 @@ namespace Letta
public partial class PassagesClient
{
+ private static readonly global::Letta.AutoSDKServer[] s_SearchPassagesServers = new global::Letta.AutoSDKServer[]
+ { new global::Letta.AutoSDKServer(
+ id: "https-app-letta-com",
+ name: "Letta Cloud",
+ url: "https://app.letta.com/",
+ description: "Letta Cloud"),
+ new global::Letta.AutoSDKServer(
+ id: "http-localhost",
+ name: "Self-hosted",
+ url: "http://localhost:8283/",
+ description: "Self-hosted"),
+ };
+
private static readonly global::Letta.EndPointSecurityRequirement s_SearchPassagesSecurityRequirement0 =
new global::Letta.EndPointSecurityRequirement
@@ -93,7 +106,9 @@ partial void ProcessSearchPassagesResponseContent(
{
var __pathBuilder = new global::Letta.PathBuilder(
path: "/v1/passages/search",
- baseUri: HttpClient.BaseAddress);
+ baseUri: ResolveBaseUri(
+ servers: s_SearchPassagesServers,
+ defaultBaseUrl: "https://app.letta.com/"));
var __path = __pathBuilder.ToString();
__path = global::Letta.AutoSDKRequestOptionsSupport.AppendQueryParameters(
path: __path,
diff --git a/src/libs/Letta/Generated/Letta.PassagesClient.g.cs b/src/libs/Letta/Generated/Letta.PassagesClient.g.cs
index 551c56b4..2474d545 100644
--- a/src/libs/Letta/Generated/Letta.PassagesClient.g.cs
+++ b/src/libs/Letta/Generated/Letta.PassagesClient.g.cs
@@ -20,7 +20,7 @@ public sealed partial class PassagesClient : global::Letta.IPassagesClient, glob
public global::System.Net.Http.HttpClient HttpClient { get; }
///
- public System.Uri? BaseUri => HttpClient.BaseAddress;
+ public System.Uri? BaseUri => ResolveDisplayedBaseUri();
///
public global::System.Collections.Generic.List Authorizations { get; }
@@ -33,12 +33,43 @@ public sealed partial class PassagesClient : global::Letta.IPassagesClient, glob
///
public global::Letta.AutoSDKClientOptions Options { get; }
+
+
+ internal global::Letta.AutoSDKServerConfiguration AutoSDKServerConfiguration { get; set; } = new global::Letta.AutoSDKServerConfiguration();
///
///
///
public global::System.Text.Json.Serialization.JsonSerializerContext JsonSerializerContext { get; set; } = global::Letta.SourceGenerationContext.Default;
+
+ private static readonly global::Letta.AutoSDKServer[] s_availableServers = new global::Letta.AutoSDKServer[]
+ { new global::Letta.AutoSDKServer(
+ id: "https-app-letta-com",
+ name: "Letta Cloud",
+ url: "https://app.letta.com/",
+ description: "Letta Cloud"),
+ new global::Letta.AutoSDKServer(
+ id: "http-localhost",
+ name: "Self-hosted",
+ url: "http://localhost:8283/",
+ description: "Self-hosted"),
+ };
+
+ ///
+ /// The server options available for this client.
+ ///
+ public global::System.Collections.Generic.IReadOnlyList AvailableServers => s_availableServers;
+
+ ///
+ /// The currently selected server for this client, if any.
+ ///
+ public global::Letta.AutoSDKServer? SelectedServer
+ {
+ get => ResolveSelectedServer();
+ set => SelectServer(value);
+ }
+
///
/// Creates a new instance of the PassagesClient.
/// If no httpClient is provided, a new one will be created.
@@ -85,6 +116,8 @@ public PassagesClient(
Options = options ?? new global::Letta.AutoSDKClientOptions();
_disposeHttpClient = disposeHttpClient;
+ AutoSDKServerConfiguration.ExplicitBaseUri = baseUri ?? httpClient?.BaseAddress;
+
Initialized(HttpClient);
}
@@ -111,5 +144,117 @@ partial void ProcessResponseContent(
global::System.Net.Http.HttpClient client,
global::System.Net.Http.HttpResponseMessage response,
ref string content);
+
+
+ ///
+ /// Selects one of the generated server options by id.
+ ///
+ public bool TrySelectServer(string serverId)
+ {
+ if (string.IsNullOrWhiteSpace(serverId))
+ {
+ return false;
+ }
+
+ foreach (var server in s_availableServers)
+ {
+ if (string.Equals(server.Id, serverId, global::System.StringComparison.OrdinalIgnoreCase))
+ {
+ AutoSDKServerConfiguration.SelectedServer = server;
+ AutoSDKServerConfiguration.ExplicitBaseUri = null;
+ return true;
+ }
+ }
+
+ return false;
+ }
+
+ ///
+ /// Clears the currently selected server.
+ ///
+ public void ClearSelectedServer()
+ {
+ AutoSDKServerConfiguration.SelectedServer = null;
+ }
+
+ private global::Letta.AutoSDKServer? ResolveSelectedServer()
+ {
+ var selectedServer = AutoSDKServerConfiguration.SelectedServer;
+ if (selectedServer is null)
+ {
+ return null;
+ }
+
+ foreach (var server in s_availableServers)
+ {
+ if (string.Equals(server.Id, selectedServer.Id, global::System.StringComparison.Ordinal))
+ {
+ return server;
+ }
+ }
+
+ return null;
+ }
+
+ private void SelectServer(global::Letta.AutoSDKServer? server)
+ {
+ if (server is null)
+ {
+ AutoSDKServerConfiguration.SelectedServer = null;
+ return;
+ }
+
+ foreach (var candidate in s_availableServers)
+ {
+ if (string.Equals(candidate.Id, server.Id, global::System.StringComparison.Ordinal))
+ {
+ AutoSDKServerConfiguration.SelectedServer = candidate;
+ AutoSDKServerConfiguration.ExplicitBaseUri = null;
+ return;
+ }
+ }
+
+ throw new global::System.ArgumentException("The provided server is not available for this client.", nameof(server));
+ }
+
+ private global::System.Uri? ResolveDisplayedBaseUri()
+ {
+ if (AutoSDKServerConfiguration.ExplicitBaseUri is global::System.Uri explicitBaseUri)
+ {
+ return explicitBaseUri;
+ }
+
+ return ResolveSelectedServer()?.Uri ?? HttpClient.BaseAddress;
+ }
+
+ private global::System.Uri? ResolveBaseUri(
+ global::Letta.AutoSDKServer[] servers,
+ string defaultBaseUrl)
+ {
+ if (AutoSDKServerConfiguration.ExplicitBaseUri is global::System.Uri explicitBaseUri)
+ {
+ return explicitBaseUri;
+ }
+
+ if (AutoSDKServerConfiguration.SelectedServer is global::Letta.AutoSDKServer selectedServer)
+ {
+ foreach (var server in servers)
+ {
+ if (string.Equals(server.Id, selectedServer.Id, global::System.StringComparison.Ordinal))
+ {
+ return server.Uri;
+ }
+ }
+ }
+
+ if (servers.Length > 0)
+ {
+ return servers[0].Uri;
+ }
+
+ return string.IsNullOrWhiteSpace(defaultBaseUrl)
+ ? HttpClient.BaseAddress
+ : new global::System.Uri(defaultBaseUrl, global::System.UriKind.RelativeOrAbsolute);
+ }
}
}
\ No newline at end of file
diff --git a/src/libs/Letta/Generated/Letta.PipelinesClient.PipelinesCountPipelines.g.cs b/src/libs/Letta/Generated/Letta.PipelinesClient.PipelinesCountPipelines.g.cs
index 6730b26a..1b929812 100644
--- a/src/libs/Letta/Generated/Letta.PipelinesClient.PipelinesCountPipelines.g.cs
+++ b/src/libs/Letta/Generated/Letta.PipelinesClient.PipelinesCountPipelines.g.cs
@@ -6,6 +6,19 @@ namespace Letta
public partial class PipelinesClient
{
+ private static readonly global::Letta.AutoSDKServer[] s_PipelinesCountPipelinesServers = new global::Letta.AutoSDKServer[]
+ { new global::Letta.AutoSDKServer(
+ id: "https-app-letta-com",
+ name: "Letta Cloud",
+ url: "https://app.letta.com/",
+ description: "Letta Cloud"),
+ new global::Letta.AutoSDKServer(
+ id: "http-localhost",
+ name: "Self-hosted",
+ url: "http://localhost:8283/",
+ description: "Self-hosted"),
+ };
+
private static readonly global::Letta.EndPointSecurityRequirement s_PipelinesCountPipelinesSecurityRequirement0 =
new global::Letta.EndPointSecurityRequirement
@@ -94,7 +107,9 @@ partial void ProcessPipelinesCountPipelinesResponseContent(
{
var __pathBuilder = new global::Letta.PathBuilder(
path: "/v1/pipelines/count",
- baseUri: HttpClient.BaseAddress);
+ baseUri: ResolveBaseUri(
+ servers: s_PipelinesCountPipelinesServers,
+ defaultBaseUrl: "https://app.letta.com/"));
__pathBuilder
.AddOptionalParameter("search", search)
.AddOptionalParameter("integration_type", integrationType)
diff --git a/src/libs/Letta/Generated/Letta.PipelinesClient.PipelinesCreatePipeline.g.cs b/src/libs/Letta/Generated/Letta.PipelinesClient.PipelinesCreatePipeline.g.cs
index c0696f07..6617aae4 100644
--- a/src/libs/Letta/Generated/Letta.PipelinesClient.PipelinesCreatePipeline.g.cs
+++ b/src/libs/Letta/Generated/Letta.PipelinesClient.PipelinesCreatePipeline.g.cs
@@ -6,6 +6,19 @@ namespace Letta
public partial class PipelinesClient
{
+ private static readonly global::Letta.AutoSDKServer[] s_PipelinesCreatePipelineServers = new global::Letta.AutoSDKServer[]
+ { new global::Letta.AutoSDKServer(
+ id: "https-app-letta-com",
+ name: "Letta Cloud",
+ url: "https://app.letta.com/",
+ description: "Letta Cloud"),
+ new global::Letta.AutoSDKServer(
+ id: "http-localhost",
+ name: "Self-hosted",
+ url: "http://localhost:8283/",
+ description: "Self-hosted"),
+ };
+
private static readonly global::Letta.EndPointSecurityRequirement s_PipelinesCreatePipelineSecurityRequirement0 =
new global::Letta.EndPointSecurityRequirement
@@ -87,7 +100,9 @@ partial void ProcessPipelinesCreatePipelineResponseContent(
{
var __pathBuilder = new global::Letta.PathBuilder(
path: "/v1/pipelines",
- baseUri: HttpClient.BaseAddress);
+ baseUri: ResolveBaseUri(
+ servers: s_PipelinesCreatePipelineServers,
+ defaultBaseUrl: "https://app.letta.com/"));
var __path = __pathBuilder.ToString();
__path = global::Letta.AutoSDKRequestOptionsSupport.AppendQueryParameters(
path: __path,
diff --git a/src/libs/Letta/Generated/Letta.PipelinesClient.PipelinesDeletePipeline.g.cs b/src/libs/Letta/Generated/Letta.PipelinesClient.PipelinesDeletePipeline.g.cs
index 03a2a362..fca3221f 100644
--- a/src/libs/Letta/Generated/Letta.PipelinesClient.PipelinesDeletePipeline.g.cs
+++ b/src/libs/Letta/Generated/Letta.PipelinesClient.PipelinesDeletePipeline.g.cs
@@ -6,6 +6,19 @@ namespace Letta
public partial class PipelinesClient
{
+ private static readonly global::Letta.AutoSDKServer[] s_PipelinesDeletePipelineServers = new global::Letta.AutoSDKServer[]
+ { new global::Letta.AutoSDKServer(
+ id: "https-app-letta-com",
+ name: "Letta Cloud",
+ url: "https://app.letta.com/",
+ description: "Letta Cloud"),
+ new global::Letta.AutoSDKServer(
+ id: "http-localhost",
+ name: "Self-hosted",
+ url: "http://localhost:8283/",
+ description: "Self-hosted"),
+ };
+
private static readonly global::Letta.EndPointSecurityRequirement s_PipelinesDeletePipelineSecurityRequirement0 =
new global::Letta.EndPointSecurityRequirement
@@ -92,7 +105,9 @@ partial void ProcessPipelinesDeletePipelineResponseContent(
{
var __pathBuilder = new global::Letta.PathBuilder(
path: $"/v1/pipelines/{pipelineId}",
- baseUri: HttpClient.BaseAddress);
+ baseUri: ResolveBaseUri(
+ servers: s_PipelinesDeletePipelineServers,
+ defaultBaseUrl: "https://app.letta.com/"));
var __path = __pathBuilder.ToString();
__path = global::Letta.AutoSDKRequestOptionsSupport.AppendQueryParameters(
path: __path,
diff --git a/src/libs/Letta/Generated/Letta.PipelinesClient.PipelinesGetPipeline.g.cs b/src/libs/Letta/Generated/Letta.PipelinesClient.PipelinesGetPipeline.g.cs
index b192936e..383b2f2f 100644
--- a/src/libs/Letta/Generated/Letta.PipelinesClient.PipelinesGetPipeline.g.cs
+++ b/src/libs/Letta/Generated/Letta.PipelinesClient.PipelinesGetPipeline.g.cs
@@ -6,6 +6,19 @@ namespace Letta
public partial class PipelinesClient
{
+ private static readonly global::Letta.AutoSDKServer[] s_PipelinesGetPipelineServers = new global::Letta.AutoSDKServer[]
+ { new global::Letta.AutoSDKServer(
+ id: "https-app-letta-com",
+ name: "Letta Cloud",
+ url: "https://app.letta.com/",
+ description: "Letta Cloud"),
+ new global::Letta.AutoSDKServer(
+ id: "http-localhost",
+ name: "Self-hosted",
+ url: "http://localhost:8283/",
+ description: "Self-hosted"),
+ };
+
private static readonly global::Letta.EndPointSecurityRequirement s_PipelinesGetPipelineSecurityRequirement0 =
new global::Letta.EndPointSecurityRequirement
@@ -84,7 +97,9 @@ partial void ProcessPipelinesGetPipelineResponseContent(
{
var __pathBuilder = new global::Letta.PathBuilder(
path: $"/v1/pipelines/{pipelineId}",
- baseUri: HttpClient.BaseAddress);
+ baseUri: ResolveBaseUri(
+ servers: s_PipelinesGetPipelineServers,
+ defaultBaseUrl: "https://app.letta.com/"));
var __path = __pathBuilder.ToString();
__path = global::Letta.AutoSDKRequestOptionsSupport.AppendQueryParameters(
path: __path,
diff --git a/src/libs/Letta/Generated/Letta.PipelinesClient.PipelinesListPipelineSyncHistory.g.cs b/src/libs/Letta/Generated/Letta.PipelinesClient.PipelinesListPipelineSyncHistory.g.cs
index 65b0bc68..5fc01a46 100644
--- a/src/libs/Letta/Generated/Letta.PipelinesClient.PipelinesListPipelineSyncHistory.g.cs
+++ b/src/libs/Letta/Generated/Letta.PipelinesClient.PipelinesListPipelineSyncHistory.g.cs
@@ -6,6 +6,19 @@ namespace Letta
public partial class PipelinesClient
{
+ private static readonly global::Letta.AutoSDKServer[] s_PipelinesListPipelineSyncHistoryServers = new global::Letta.AutoSDKServer[]
+ { new global::Letta.AutoSDKServer(
+ id: "https-app-letta-com",
+ name: "Letta Cloud",
+ url: "https://app.letta.com/",
+ description: "Letta Cloud"),
+ new global::Letta.AutoSDKServer(
+ id: "http-localhost",
+ name: "Self-hosted",
+ url: "http://localhost:8283/",
+ description: "Self-hosted"),
+ };
+
private static readonly global::Letta.EndPointSecurityRequirement s_PipelinesListPipelineSyncHistorySecurityRequirement0 =
new global::Letta.EndPointSecurityRequirement
@@ -84,7 +97,9 @@ partial void ProcessPipelinesListPipelineSyncHistoryResponseContent(
{
var __pathBuilder = new global::Letta.PathBuilder(
path: $"/v1/pipelines/{pipelineId}/sync/history",
- baseUri: HttpClient.BaseAddress);
+ baseUri: ResolveBaseUri(
+ servers: s_PipelinesListPipelineSyncHistoryServers,
+ defaultBaseUrl: "https://app.letta.com/"));
var __path = __pathBuilder.ToString();
__path = global::Letta.AutoSDKRequestOptionsSupport.AppendQueryParameters(
path: __path,
diff --git a/src/libs/Letta/Generated/Letta.PipelinesClient.PipelinesListPipelines.g.cs b/src/libs/Letta/Generated/Letta.PipelinesClient.PipelinesListPipelines.g.cs
index d6de2b0a..042d53bd 100644
--- a/src/libs/Letta/Generated/Letta.PipelinesClient.PipelinesListPipelines.g.cs
+++ b/src/libs/Letta/Generated/Letta.PipelinesClient.PipelinesListPipelines.g.cs
@@ -6,6 +6,19 @@ namespace Letta
public partial class PipelinesClient
{
+ private static readonly global::Letta.AutoSDKServer[] s_PipelinesListPipelinesServers = new global::Letta.AutoSDKServer[]
+ { new global::Letta.AutoSDKServer(
+ id: "https-app-letta-com",
+ name: "Letta Cloud",
+ url: "https://app.letta.com/",
+ description: "Letta Cloud"),
+ new global::Letta.AutoSDKServer(
+ id: "http-localhost",
+ name: "Self-hosted",
+ url: "http://localhost:8283/",
+ description: "Self-hosted"),
+ };
+
private static readonly global::Letta.EndPointSecurityRequirement s_PipelinesListPipelinesSecurityRequirement0 =
new global::Letta.EndPointSecurityRequirement
@@ -104,7 +117,9 @@ partial void ProcessPipelinesListPipelinesResponseContent(
{
var __pathBuilder = new global::Letta.PathBuilder(
path: "/v1/pipelines",
- baseUri: HttpClient.BaseAddress);
+ baseUri: ResolveBaseUri(
+ servers: s_PipelinesListPipelinesServers,
+ defaultBaseUrl: "https://app.letta.com/"));
__pathBuilder
.AddOptionalParameter("search", search)
.AddOptionalParameter("integration_type", integrationType)
diff --git a/src/libs/Letta/Generated/Letta.PipelinesClient.PipelinesPreviewPipeline.g.cs b/src/libs/Letta/Generated/Letta.PipelinesClient.PipelinesPreviewPipeline.g.cs
index f06c93e9..b8f549f1 100644
--- a/src/libs/Letta/Generated/Letta.PipelinesClient.PipelinesPreviewPipeline.g.cs
+++ b/src/libs/Letta/Generated/Letta.PipelinesClient.PipelinesPreviewPipeline.g.cs
@@ -6,6 +6,19 @@ namespace Letta
public partial class PipelinesClient
{
+ private static readonly global::Letta.AutoSDKServer[] s_PipelinesPreviewPipelineServers = new global::Letta.AutoSDKServer[]
+ { new global::Letta.AutoSDKServer(
+ id: "https-app-letta-com",
+ name: "Letta Cloud",
+ url: "https://app.letta.com/",
+ description: "Letta Cloud"),
+ new global::Letta.AutoSDKServer(
+ id: "http-localhost",
+ name: "Self-hosted",
+ url: "http://localhost:8283/",
+ description: "Self-hosted"),
+ };
+
private static readonly global::Letta.EndPointSecurityRequirement s_PipelinesPreviewPipelineSecurityRequirement0 =
new global::Letta.EndPointSecurityRequirement
@@ -87,7 +100,9 @@ partial void ProcessPipelinesPreviewPipelineResponseContent(
{
var __pathBuilder = new global::Letta.PathBuilder(
path: "/v1/pipelines/preview",
- baseUri: HttpClient.BaseAddress);
+ baseUri: ResolveBaseUri(
+ servers: s_PipelinesPreviewPipelineServers,
+ defaultBaseUrl: "https://app.letta.com/"));
var __path = __pathBuilder.ToString();
__path = global::Letta.AutoSDKRequestOptionsSupport.AppendQueryParameters(
path: __path,
diff --git a/src/libs/Letta/Generated/Letta.PipelinesClient.PipelinesSyncPipeline.g.cs b/src/libs/Letta/Generated/Letta.PipelinesClient.PipelinesSyncPipeline.g.cs
index ad179929..59f63cb7 100644
--- a/src/libs/Letta/Generated/Letta.PipelinesClient.PipelinesSyncPipeline.g.cs
+++ b/src/libs/Letta/Generated/Letta.PipelinesClient.PipelinesSyncPipeline.g.cs
@@ -6,6 +6,19 @@ namespace Letta
public partial class PipelinesClient
{
+ private static readonly global::Letta.AutoSDKServer[] s_PipelinesSyncPipelineServers = new global::Letta.AutoSDKServer[]
+ { new global::Letta.AutoSDKServer(
+ id: "https-app-letta-com",
+ name: "Letta Cloud",
+ url: "https://app.letta.com/",
+ description: "Letta Cloud"),
+ new global::Letta.AutoSDKServer(
+ id: "http-localhost",
+ name: "Self-hosted",
+ url: "http://localhost:8283/",
+ description: "Self-hosted"),
+ };
+
private static readonly global::Letta.EndPointSecurityRequirement s_PipelinesSyncPipelineSecurityRequirement0 =
new global::Letta.EndPointSecurityRequirement
@@ -92,7 +105,9 @@ partial void ProcessPipelinesSyncPipelineResponseContent(
{
var __pathBuilder = new global::Letta.PathBuilder(
path: $"/v1/pipelines/{pipelineId}/sync",
- baseUri: HttpClient.BaseAddress);
+ baseUri: ResolveBaseUri(
+ servers: s_PipelinesSyncPipelineServers,
+ defaultBaseUrl: "https://app.letta.com/"));
var __path = __pathBuilder.ToString();
__path = global::Letta.AutoSDKRequestOptionsSupport.AppendQueryParameters(
path: __path,
diff --git a/src/libs/Letta/Generated/Letta.PipelinesClient.PipelinesUpdatePipeline.g.cs b/src/libs/Letta/Generated/Letta.PipelinesClient.PipelinesUpdatePipeline.g.cs
index 3ff2febf..fbf8a000 100644
--- a/src/libs/Letta/Generated/Letta.PipelinesClient.PipelinesUpdatePipeline.g.cs
+++ b/src/libs/Letta/Generated/Letta.PipelinesClient.PipelinesUpdatePipeline.g.cs
@@ -6,6 +6,19 @@ namespace Letta
public partial class PipelinesClient
{
+ private static readonly global::Letta.AutoSDKServer[] s_PipelinesUpdatePipelineServers = new global::Letta.AutoSDKServer[]
+ { new global::Letta.AutoSDKServer(
+ id: "https-app-letta-com",
+ name: "Letta Cloud",
+ url: "https://app.letta.com/",
+ description: "Letta Cloud"),
+ new global::Letta.AutoSDKServer(
+ id: "http-localhost",
+ name: "Self-hosted",
+ url: "http://localhost:8283/",
+ description: "Self-hosted"),
+ };
+
private static readonly global::Letta.EndPointSecurityRequirement s_PipelinesUpdatePipelineSecurityRequirement0 =
new global::Letta.EndPointSecurityRequirement
@@ -92,7 +105,9 @@ partial void ProcessPipelinesUpdatePipelineResponseContent(
{
var __pathBuilder = new global::Letta.PathBuilder(
path: $"/v1/pipelines/{pipelineId}",
- baseUri: HttpClient.BaseAddress);
+ baseUri: ResolveBaseUri(
+ servers: s_PipelinesUpdatePipelineServers,
+ defaultBaseUrl: "https://app.letta.com/"));
var __path = __pathBuilder.ToString();
__path = global::Letta.AutoSDKRequestOptionsSupport.AppendQueryParameters(
path: __path,
diff --git a/src/libs/Letta/Generated/Letta.PipelinesClient.PipelinesUpdatePipelineProducerConfig.g.cs b/src/libs/Letta/Generated/Letta.PipelinesClient.PipelinesUpdatePipelineProducerConfig.g.cs
index 32a5d499..5d581254 100644
--- a/src/libs/Letta/Generated/Letta.PipelinesClient.PipelinesUpdatePipelineProducerConfig.g.cs
+++ b/src/libs/Letta/Generated/Letta.PipelinesClient.PipelinesUpdatePipelineProducerConfig.g.cs
@@ -6,6 +6,19 @@ namespace Letta
public partial class PipelinesClient
{
+ private static readonly global::Letta.AutoSDKServer[] s_PipelinesUpdatePipelineProducerConfigServers = new global::Letta.AutoSDKServer[]
+ { new global::Letta.AutoSDKServer(
+ id: "https-app-letta-com",
+ name: "Letta Cloud",
+ url: "https://app.letta.com/",
+ description: "Letta Cloud"),
+ new global::Letta.AutoSDKServer(
+ id: "http-localhost",
+ name: "Self-hosted",
+ url: "http://localhost:8283/",
+ description: "Self-hosted"),
+ };
+
private static readonly global::Letta.EndPointSecurityRequirement s_PipelinesUpdatePipelineProducerConfigSecurityRequirement0 =
new global::Letta.EndPointSecurityRequirement
@@ -92,7 +105,9 @@ partial void ProcessPipelinesUpdatePipelineProducerConfigResponseContent(
{
var __pathBuilder = new global::Letta.PathBuilder(
path: $"/v1/pipelines/{pipelineId}/config",
- baseUri: HttpClient.BaseAddress);
+ baseUri: ResolveBaseUri(
+ servers: s_PipelinesUpdatePipelineProducerConfigServers,
+ defaultBaseUrl: "https://app.letta.com/"));
var __path = __pathBuilder.ToString();
__path = global::Letta.AutoSDKRequestOptionsSupport.AppendQueryParameters(
path: __path,
diff --git a/src/libs/Letta/Generated/Letta.PipelinesClient.g.cs b/src/libs/Letta/Generated/Letta.PipelinesClient.g.cs
index 2ec25c8c..361b812c 100644
--- a/src/libs/Letta/Generated/Letta.PipelinesClient.g.cs
+++ b/src/libs/Letta/Generated/Letta.PipelinesClient.g.cs
@@ -20,7 +20,7 @@ public sealed partial class PipelinesClient : global::Letta.IPipelinesClient, gl
public global::System.Net.Http.HttpClient HttpClient { get; }
///
- public System.Uri? BaseUri => HttpClient.BaseAddress;
+ public System.Uri? BaseUri => ResolveDisplayedBaseUri();
///
public global::System.Collections.Generic.List Authorizations { get; }
@@ -33,12 +33,43 @@ public sealed partial class PipelinesClient : global::Letta.IPipelinesClient, gl
///
public global::Letta.AutoSDKClientOptions Options { get; }
+
+
+ internal global::Letta.AutoSDKServerConfiguration AutoSDKServerConfiguration { get; set; } = new global::Letta.AutoSDKServerConfiguration();
///
///
///
public global::System.Text.Json.Serialization.JsonSerializerContext JsonSerializerContext { get; set; } = global::Letta.SourceGenerationContext.Default;
+
+ private static readonly global::Letta.AutoSDKServer[] s_availableServers = new global::Letta.AutoSDKServer[]
+ { new global::Letta.AutoSDKServer(
+ id: "https-app-letta-com",
+ name: "Letta Cloud",
+ url: "https://app.letta.com/",
+ description: "Letta Cloud"),
+ new global::Letta.AutoSDKServer(
+ id: "http-localhost",
+ name: "Self-hosted",
+ url: "http://localhost:8283/",
+ description: "Self-hosted"),
+ };
+
+ ///
+ /// The server options available for this client.
+ ///
+ public global::System.Collections.Generic.IReadOnlyList AvailableServers => s_availableServers;
+
+ ///
+ /// The currently selected server for this client, if any.
+ ///
+ public global::Letta.AutoSDKServer? SelectedServer
+ {
+ get => ResolveSelectedServer();
+ set => SelectServer(value);
+ }
+
///
/// Creates a new instance of the PipelinesClient.
/// If no httpClient is provided, a new one will be created.
@@ -85,6 +116,8 @@ public PipelinesClient(
Options = options ?? new global::Letta.AutoSDKClientOptions();
_disposeHttpClient = disposeHttpClient;
+ AutoSDKServerConfiguration.ExplicitBaseUri = baseUri ?? httpClient?.BaseAddress;
+
Initialized(HttpClient);
}
@@ -111,5 +144,117 @@ partial void ProcessResponseContent(
global::System.Net.Http.HttpClient client,
global::System.Net.Http.HttpResponseMessage response,
ref string content);
+
+
+ ///
+ /// Selects one of the generated server options by id.
+ ///
+ public bool TrySelectServer(string serverId)
+ {
+ if (string.IsNullOrWhiteSpace(serverId))
+ {
+ return false;
+ }
+
+ foreach (var server in s_availableServers)
+ {
+ if (string.Equals(server.Id, serverId, global::System.StringComparison.OrdinalIgnoreCase))
+ {
+ AutoSDKServerConfiguration.SelectedServer = server;
+ AutoSDKServerConfiguration.ExplicitBaseUri = null;
+ return true;
+ }
+ }
+
+ return false;
+ }
+
+ ///
+ /// Clears the currently selected server.
+ ///
+ public void ClearSelectedServer()
+ {
+ AutoSDKServerConfiguration.SelectedServer = null;
+ }
+
+ private global::Letta.AutoSDKServer? ResolveSelectedServer()
+ {
+ var selectedServer = AutoSDKServerConfiguration.SelectedServer;
+ if (selectedServer is null)
+ {
+ return null;
+ }
+
+ foreach (var server in s_availableServers)
+ {
+ if (string.Equals(server.Id, selectedServer.Id, global::System.StringComparison.Ordinal))
+ {
+ return server;
+ }
+ }
+
+ return null;
+ }
+
+ private void SelectServer(global::Letta.AutoSDKServer? server)
+ {
+ if (server is null)
+ {
+ AutoSDKServerConfiguration.SelectedServer = null;
+ return;
+ }
+
+ foreach (var candidate in s_availableServers)
+ {
+ if (string.Equals(candidate.Id, server.Id, global::System.StringComparison.Ordinal))
+ {
+ AutoSDKServerConfiguration.SelectedServer = candidate;
+ AutoSDKServerConfiguration.ExplicitBaseUri = null;
+ return;
+ }
+ }
+
+ throw new global::System.ArgumentException("The provided server is not available for this client.", nameof(server));
+ }
+
+ private global::System.Uri? ResolveDisplayedBaseUri()
+ {
+ if (AutoSDKServerConfiguration.ExplicitBaseUri is global::System.Uri explicitBaseUri)
+ {
+ return explicitBaseUri;
+ }
+
+ return ResolveSelectedServer()?.Uri ?? HttpClient.BaseAddress;
+ }
+
+ private global::System.Uri? ResolveBaseUri(
+ global::Letta.AutoSDKServer[] servers,
+ string defaultBaseUrl)
+ {
+ if (AutoSDKServerConfiguration.ExplicitBaseUri is global::System.Uri explicitBaseUri)
+ {
+ return explicitBaseUri;
+ }
+
+ if (AutoSDKServerConfiguration.SelectedServer is global::Letta.AutoSDKServer selectedServer)
+ {
+ foreach (var server in servers)
+ {
+ if (string.Equals(server.Id, selectedServer.Id, global::System.StringComparison.Ordinal))
+ {
+ return server.Uri;
+ }
+ }
+ }
+
+ if (servers.Length > 0)
+ {
+ return servers[0].Uri;
+ }
+
+ return string.IsNullOrWhiteSpace(defaultBaseUrl)
+ ? HttpClient.BaseAddress
+ : new global::System.Uri(defaultBaseUrl, global::System.UriKind.RelativeOrAbsolute);
+ }
}
}
\ No newline at end of file
diff --git a/src/libs/Letta/Generated/Letta.ProjectsClient.ProjectsCreateProject.g.cs b/src/libs/Letta/Generated/Letta.ProjectsClient.ProjectsCreateProject.g.cs
index d962c5df..38063c78 100644
--- a/src/libs/Letta/Generated/Letta.ProjectsClient.ProjectsCreateProject.g.cs
+++ b/src/libs/Letta/Generated/Letta.ProjectsClient.ProjectsCreateProject.g.cs
@@ -6,6 +6,19 @@ namespace Letta
public partial class ProjectsClient
{
+ private static readonly global::Letta.AutoSDKServer[] s_ProjectsCreateProjectServers = new global::Letta.AutoSDKServer[]
+ { new global::Letta.AutoSDKServer(
+ id: "https-app-letta-com",
+ name: "Letta Cloud",
+ url: "https://app.letta.com/",
+ description: "Letta Cloud"),
+ new global::Letta.AutoSDKServer(
+ id: "http-localhost",
+ name: "Self-hosted",
+ url: "http://localhost:8283/",
+ description: "Self-hosted"),
+ };
+
private static readonly global::Letta.EndPointSecurityRequirement s_ProjectsCreateProjectSecurityRequirement0 =
new global::Letta.EndPointSecurityRequirement
@@ -87,7 +100,9 @@ partial void ProcessProjectsCreateProjectResponseContent(
{
var __pathBuilder = new global::Letta.PathBuilder(
path: "/v1/projects",
- baseUri: HttpClient.BaseAddress);
+ baseUri: ResolveBaseUri(
+ servers: s_ProjectsCreateProjectServers,
+ defaultBaseUrl: "https://app.letta.com/"));
var __path = __pathBuilder.ToString();
__path = global::Letta.AutoSDKRequestOptionsSupport.AppendQueryParameters(
path: __path,
diff --git a/src/libs/Letta/Generated/Letta.ProjectsClient.ProjectsDeleteProject.g.cs b/src/libs/Letta/Generated/Letta.ProjectsClient.ProjectsDeleteProject.g.cs
index ff0e7b91..ed0b0600 100644
--- a/src/libs/Letta/Generated/Letta.ProjectsClient.ProjectsDeleteProject.g.cs
+++ b/src/libs/Letta/Generated/Letta.ProjectsClient.ProjectsDeleteProject.g.cs
@@ -6,6 +6,19 @@ namespace Letta
public partial class ProjectsClient
{
+ private static readonly global::Letta.AutoSDKServer[] s_ProjectsDeleteProjectServers = new global::Letta.AutoSDKServer[]
+ { new global::Letta.AutoSDKServer(
+ id: "https-app-letta-com",
+ name: "Letta Cloud",
+ url: "https://app.letta.com/",
+ description: "Letta Cloud"),
+ new global::Letta.AutoSDKServer(
+ id: "http-localhost",
+ name: "Self-hosted",
+ url: "http://localhost:8283/",
+ description: "Self-hosted"),
+ };
+
private static readonly global::Letta.EndPointSecurityRequirement s_ProjectsDeleteProjectSecurityRequirement0 =
new global::Letta.EndPointSecurityRequirement
@@ -92,7 +105,9 @@ partial void ProcessProjectsDeleteProjectResponseContent(
{
var __pathBuilder = new global::Letta.PathBuilder(
path: $"/v1/projects/{projectId}",
- baseUri: HttpClient.BaseAddress);
+ baseUri: ResolveBaseUri(
+ servers: s_ProjectsDeleteProjectServers,
+ defaultBaseUrl: "https://app.letta.com/"));
var __path = __pathBuilder.ToString();
__path = global::Letta.AutoSDKRequestOptionsSupport.AppendQueryParameters(
path: __path,
diff --git a/src/libs/Letta/Generated/Letta.ProjectsClient.ProjectsListProjects.g.cs b/src/libs/Letta/Generated/Letta.ProjectsClient.ProjectsListProjects.g.cs
index 7d872778..e5bdf0f5 100644
--- a/src/libs/Letta/Generated/Letta.ProjectsClient.ProjectsListProjects.g.cs
+++ b/src/libs/Letta/Generated/Letta.ProjectsClient.ProjectsListProjects.g.cs
@@ -6,6 +6,19 @@ namespace Letta
public partial class ProjectsClient
{
+ private static readonly global::Letta.AutoSDKServer[] s_ProjectsListProjectsServers = new global::Letta.AutoSDKServer[]
+ { new global::Letta.AutoSDKServer(
+ id: "https-app-letta-com",
+ name: "Letta Cloud",
+ url: "https://app.letta.com/",
+ description: "Letta Cloud"),
+ new global::Letta.AutoSDKServer(
+ id: "http-localhost",
+ name: "Self-hosted",
+ url: "http://localhost:8283/",
+ description: "Self-hosted"),
+ };
+
private static readonly global::Letta.EndPointSecurityRequirement s_ProjectsListProjectsSecurityRequirement0 =
new global::Letta.EndPointSecurityRequirement
@@ -94,7 +107,9 @@ partial void ProcessProjectsListProjectsResponseContent(
{
var __pathBuilder = new global::Letta.PathBuilder(
path: "/v1/projects",
- baseUri: HttpClient.BaseAddress);
+ baseUri: ResolveBaseUri(
+ servers: s_ProjectsListProjectsServers,
+ defaultBaseUrl: "https://app.letta.com/"));
__pathBuilder
.AddOptionalParameter("name", name)
.AddOptionalParameter("offset", offset?.ToString())
diff --git a/src/libs/Letta/Generated/Letta.ProjectsClient.g.cs b/src/libs/Letta/Generated/Letta.ProjectsClient.g.cs
index eee63523..aeb85f19 100644
--- a/src/libs/Letta/Generated/Letta.ProjectsClient.g.cs
+++ b/src/libs/Letta/Generated/Letta.ProjectsClient.g.cs
@@ -20,7 +20,7 @@ public sealed partial class ProjectsClient : global::Letta.IProjectsClient, glob
public global::System.Net.Http.HttpClient HttpClient { get; }
///
- public System.Uri? BaseUri => HttpClient.BaseAddress;
+ public System.Uri? BaseUri => ResolveDisplayedBaseUri();
///
public global::System.Collections.Generic.List Authorizations { get; }
@@ -33,12 +33,43 @@ public sealed partial class ProjectsClient : global::Letta.IProjectsClient, glob
///
public global::Letta.AutoSDKClientOptions Options { get; }
+
+
+ internal global::Letta.AutoSDKServerConfiguration AutoSDKServerConfiguration { get; set; } = new global::Letta.AutoSDKServerConfiguration();
///
///
///
public global::System.Text.Json.Serialization.JsonSerializerContext JsonSerializerContext { get; set; } = global::Letta.SourceGenerationContext.Default;
+
+ private static readonly global::Letta.AutoSDKServer[] s_availableServers = new global::Letta.AutoSDKServer[]
+ { new global::Letta.AutoSDKServer(
+ id: "https-app-letta-com",
+ name: "Letta Cloud",
+ url: "https://app.letta.com/",
+ description: "Letta Cloud"),
+ new global::Letta.AutoSDKServer(
+ id: "http-localhost",
+ name: "Self-hosted",
+ url: "http://localhost:8283/",
+ description: "Self-hosted"),
+ };
+
+ ///
+ /// The server options available for this client.
+ ///
+ public global::System.Collections.Generic.IReadOnlyList AvailableServers => s_availableServers;
+
+ ///
+ /// The currently selected server for this client, if any.
+ ///
+ public global::Letta.AutoSDKServer? SelectedServer
+ {
+ get => ResolveSelectedServer();
+ set => SelectServer(value);
+ }
+
///
/// Creates a new instance of the ProjectsClient.
/// If no httpClient is provided, a new one will be created.
@@ -85,6 +116,8 @@ public ProjectsClient(
Options = options ?? new global::Letta.AutoSDKClientOptions();
_disposeHttpClient = disposeHttpClient;
+ AutoSDKServerConfiguration.ExplicitBaseUri = baseUri ?? httpClient?.BaseAddress;
+
Initialized(HttpClient);
}
@@ -111,5 +144,117 @@ partial void ProcessResponseContent(
global::System.Net.Http.HttpClient client,
global::System.Net.Http.HttpResponseMessage response,
ref string content);
+
+
+ ///
+ /// Selects one of the generated server options by id.
+ ///
+ public bool TrySelectServer(string serverId)
+ {
+ if (string.IsNullOrWhiteSpace(serverId))
+ {
+ return false;
+ }
+
+ foreach (var server in s_availableServers)
+ {
+ if (string.Equals(server.Id, serverId, global::System.StringComparison.OrdinalIgnoreCase))
+ {
+ AutoSDKServerConfiguration.SelectedServer = server;
+ AutoSDKServerConfiguration.ExplicitBaseUri = null;
+ return true;
+ }
+ }
+
+ return false;
+ }
+
+ ///
+ /// Clears the currently selected server.
+ ///
+ public void ClearSelectedServer()
+ {
+ AutoSDKServerConfiguration.SelectedServer = null;
+ }
+
+ private global::Letta.AutoSDKServer? ResolveSelectedServer()
+ {
+ var selectedServer = AutoSDKServerConfiguration.SelectedServer;
+ if (selectedServer is null)
+ {
+ return null;
+ }
+
+ foreach (var server in s_availableServers)
+ {
+ if (string.Equals(server.Id, selectedServer.Id, global::System.StringComparison.Ordinal))
+ {
+ return server;
+ }
+ }
+
+ return null;
+ }
+
+ private void SelectServer(global::Letta.AutoSDKServer? server)
+ {
+ if (server is null)
+ {
+ AutoSDKServerConfiguration.SelectedServer = null;
+ return;
+ }
+
+ foreach (var candidate in s_availableServers)
+ {
+ if (string.Equals(candidate.Id, server.Id, global::System.StringComparison.Ordinal))
+ {
+ AutoSDKServerConfiguration.SelectedServer = candidate;
+ AutoSDKServerConfiguration.ExplicitBaseUri = null;
+ return;
+ }
+ }
+
+ throw new global::System.ArgumentException("The provided server is not available for this client.", nameof(server));
+ }
+
+ private global::System.Uri? ResolveDisplayedBaseUri()
+ {
+ if (AutoSDKServerConfiguration.ExplicitBaseUri is global::System.Uri explicitBaseUri)
+ {
+ return explicitBaseUri;
+ }
+
+ return ResolveSelectedServer()?.Uri ?? HttpClient.BaseAddress;
+ }
+
+ private global::System.Uri? ResolveBaseUri(
+ global::Letta.AutoSDKServer[] servers,
+ string defaultBaseUrl)
+ {
+ if (AutoSDKServerConfiguration.ExplicitBaseUri is global::System.Uri explicitBaseUri)
+ {
+ return explicitBaseUri;
+ }
+
+ if (AutoSDKServerConfiguration.SelectedServer is global::Letta.AutoSDKServer selectedServer)
+ {
+ foreach (var server in servers)
+ {
+ if (string.Equals(server.Id, selectedServer.Id, global::System.StringComparison.Ordinal))
+ {
+ return server.Uri;
+ }
+ }
+ }
+
+ if (servers.Length > 0)
+ {
+ return servers[0].Uri;
+ }
+
+ return string.IsNullOrWhiteSpace(defaultBaseUrl)
+ ? HttpClient.BaseAddress
+ : new global::System.Uri(defaultBaseUrl, global::System.UriKind.RelativeOrAbsolute);
+ }
}
}
\ No newline at end of file
diff --git a/src/libs/Letta/Generated/Letta.ProvidersClient.CheckExistingProvider.g.cs b/src/libs/Letta/Generated/Letta.ProvidersClient.CheckExistingProvider.g.cs
index 491ee535..f7d7d2d2 100644
--- a/src/libs/Letta/Generated/Letta.ProvidersClient.CheckExistingProvider.g.cs
+++ b/src/libs/Letta/Generated/Letta.ProvidersClient.CheckExistingProvider.g.cs
@@ -6,6 +6,19 @@ namespace Letta
public partial class ProvidersClient
{
+ private static readonly global::Letta.AutoSDKServer[] s_CheckExistingProviderServers = new global::Letta.AutoSDKServer[]
+ { new global::Letta.AutoSDKServer(
+ id: "https-app-letta-com",
+ name: "Letta Cloud",
+ url: "https://app.letta.com/",
+ description: "Letta Cloud"),
+ new global::Letta.AutoSDKServer(
+ id: "http-localhost",
+ name: "Self-hosted",
+ url: "http://localhost:8283/",
+ description: "Self-hosted"),
+ };
+
private static readonly global::Letta.EndPointSecurityRequirement s_CheckExistingProviderSecurityRequirement0 =
new global::Letta.EndPointSecurityRequirement
@@ -86,7 +99,9 @@ partial void ProcessCheckExistingProviderResponseContent(
{
var __pathBuilder = new global::Letta.PathBuilder(
path: $"/v1/providers/{providerId}/check",
- baseUri: HttpClient.BaseAddress);
+ baseUri: ResolveBaseUri(
+ servers: s_CheckExistingProviderServers,
+ defaultBaseUrl: "https://app.letta.com/"));
var __path = __pathBuilder.ToString();
__path = global::Letta.AutoSDKRequestOptionsSupport.AppendQueryParameters(
path: __path,
diff --git a/src/libs/Letta/Generated/Letta.ProvidersClient.CheckProvider.g.cs b/src/libs/Letta/Generated/Letta.ProvidersClient.CheckProvider.g.cs
index fb720ac0..c1462983 100644
--- a/src/libs/Letta/Generated/Letta.ProvidersClient.CheckProvider.g.cs
+++ b/src/libs/Letta/Generated/Letta.ProvidersClient.CheckProvider.g.cs
@@ -6,6 +6,19 @@ namespace Letta
public partial class ProvidersClient
{
+ private static readonly global::Letta.AutoSDKServer[] s_CheckProviderServers = new global::Letta.AutoSDKServer[]
+ { new global::Letta.AutoSDKServer(
+ id: "https-app-letta-com",
+ name: "Letta Cloud",
+ url: "https://app.letta.com/",
+ description: "Letta Cloud"),
+ new global::Letta.AutoSDKServer(
+ id: "http-localhost",
+ name: "Self-hosted",
+ url: "http://localhost:8283/",
+ description: "Self-hosted"),
+ };
+
private static readonly global::Letta.EndPointSecurityRequirement s_CheckProviderSecurityRequirement0 =
new global::Letta.EndPointSecurityRequirement
@@ -87,7 +100,9 @@ partial void ProcessCheckProviderResponseContent(
{
var __pathBuilder = new global::Letta.PathBuilder(
path: "/v1/providers/check",
- baseUri: HttpClient.BaseAddress);
+ baseUri: ResolveBaseUri(
+ servers: s_CheckProviderServers,
+ defaultBaseUrl: "https://app.letta.com/"));
var __path = __pathBuilder.ToString();
__path = global::Letta.AutoSDKRequestOptionsSupport.AppendQueryParameters(
path: __path,
diff --git a/src/libs/Letta/Generated/Letta.ProvidersClient.CreateProvider.g.cs b/src/libs/Letta/Generated/Letta.ProvidersClient.CreateProvider.g.cs
index 0143acd5..9cf9f82a 100644
--- a/src/libs/Letta/Generated/Letta.ProvidersClient.CreateProvider.g.cs
+++ b/src/libs/Letta/Generated/Letta.ProvidersClient.CreateProvider.g.cs
@@ -6,6 +6,19 @@ namespace Letta
public partial class ProvidersClient
{
+ private static readonly global::Letta.AutoSDKServer[] s_CreateProviderServers = new global::Letta.AutoSDKServer[]
+ { new global::Letta.AutoSDKServer(
+ id: "https-app-letta-com",
+ name: "Letta Cloud",
+ url: "https://app.letta.com/",
+ description: "Letta Cloud"),
+ new global::Letta.AutoSDKServer(
+ id: "http-localhost",
+ name: "Self-hosted",
+ url: "http://localhost:8283/",
+ description: "Self-hosted"),
+ };
+
private static readonly global::Letta.EndPointSecurityRequirement s_CreateProviderSecurityRequirement0 =
new global::Letta.EndPointSecurityRequirement
@@ -87,7 +100,9 @@ partial void ProcessCreateProviderResponseContent(
{
var __pathBuilder = new global::Letta.PathBuilder(
path: "/v1/providers/",
- baseUri: HttpClient.BaseAddress);
+ baseUri: ResolveBaseUri(
+ servers: s_CreateProviderServers,
+ defaultBaseUrl: "https://app.letta.com/"));
var __path = __pathBuilder.ToString();
__path = global::Letta.AutoSDKRequestOptionsSupport.AppendQueryParameters(
path: __path,
diff --git a/src/libs/Letta/Generated/Letta.ProvidersClient.DeleteProvider.g.cs b/src/libs/Letta/Generated/Letta.ProvidersClient.DeleteProvider.g.cs
index 7d5b983e..7915057e 100644
--- a/src/libs/Letta/Generated/Letta.ProvidersClient.DeleteProvider.g.cs
+++ b/src/libs/Letta/Generated/Letta.ProvidersClient.DeleteProvider.g.cs
@@ -6,6 +6,19 @@ namespace Letta
public partial class ProvidersClient
{
+ private static readonly global::Letta.AutoSDKServer[] s_DeleteProviderServers = new global::Letta.AutoSDKServer[]
+ { new global::Letta.AutoSDKServer(
+ id: "https-app-letta-com",
+ name: "Letta Cloud",
+ url: "https://app.letta.com/",
+ description: "Letta Cloud"),
+ new global::Letta.AutoSDKServer(
+ id: "http-localhost",
+ name: "Self-hosted",
+ url: "http://localhost:8283/",
+ description: "Self-hosted"),
+ };
+
private static readonly global::Letta.EndPointSecurityRequirement s_DeleteProviderSecurityRequirement0 =
new global::Letta.EndPointSecurityRequirement
@@ -86,7 +99,9 @@ partial void ProcessDeleteProviderResponseContent(
{
var __pathBuilder = new global::Letta.PathBuilder(
path: $"/v1/providers/{providerId}",
- baseUri: HttpClient.BaseAddress);
+ baseUri: ResolveBaseUri(
+ servers: s_DeleteProviderServers,
+ defaultBaseUrl: "https://app.letta.com/"));
var __path = __pathBuilder.ToString();
__path = global::Letta.AutoSDKRequestOptionsSupport.AppendQueryParameters(
path: __path,
diff --git a/src/libs/Letta/Generated/Letta.ProvidersClient.ListProviders.g.cs b/src/libs/Letta/Generated/Letta.ProvidersClient.ListProviders.g.cs
index acc05eb6..8bdb9e3c 100644
--- a/src/libs/Letta/Generated/Letta.ProvidersClient.ListProviders.g.cs
+++ b/src/libs/Letta/Generated/Letta.ProvidersClient.ListProviders.g.cs
@@ -6,6 +6,19 @@ namespace Letta
public partial class ProvidersClient
{
+ private static readonly global::Letta.AutoSDKServer[] s_ListProvidersServers = new global::Letta.AutoSDKServer[]
+ { new global::Letta.AutoSDKServer(
+ id: "https-app-letta-com",
+ name: "Letta Cloud",
+ url: "https://app.letta.com/",
+ description: "Letta Cloud"),
+ new global::Letta.AutoSDKServer(
+ id: "http-localhost",
+ name: "Self-hosted",
+ url: "http://localhost:8283/",
+ description: "Self-hosted"),
+ };
+
private static readonly global::Letta.EndPointSecurityRequirement s_ListProvidersSecurityRequirement0 =
new global::Letta.EndPointSecurityRequirement
@@ -131,7 +144,9 @@ partial void ProcessListProvidersResponseContent(
{
var __pathBuilder = new global::Letta.PathBuilder(
path: "/v1/providers/",
- baseUri: HttpClient.BaseAddress);
+ baseUri: ResolveBaseUri(
+ servers: s_ListProvidersServers,
+ defaultBaseUrl: "https://app.letta.com/"));
__pathBuilder
.AddOptionalParameter("before", before)
.AddOptionalParameter("after", after)
diff --git a/src/libs/Letta/Generated/Letta.ProvidersClient.ModifyProvider.g.cs b/src/libs/Letta/Generated/Letta.ProvidersClient.ModifyProvider.g.cs
index b9431d2f..c33ff5a7 100644
--- a/src/libs/Letta/Generated/Letta.ProvidersClient.ModifyProvider.g.cs
+++ b/src/libs/Letta/Generated/Letta.ProvidersClient.ModifyProvider.g.cs
@@ -6,6 +6,19 @@ namespace Letta
public partial class ProvidersClient
{
+ private static readonly global::Letta.AutoSDKServer[] s_ModifyProviderServers = new global::Letta.AutoSDKServer[]
+ { new global::Letta.AutoSDKServer(
+ id: "https-app-letta-com",
+ name: "Letta Cloud",
+ url: "https://app.letta.com/",
+ description: "Letta Cloud"),
+ new global::Letta.AutoSDKServer(
+ id: "http-localhost",
+ name: "Self-hosted",
+ url: "http://localhost:8283/",
+ description: "Self-hosted"),
+ };
+
private static readonly global::Letta.EndPointSecurityRequirement s_ModifyProviderSecurityRequirement0 =
new global::Letta.EndPointSecurityRequirement
@@ -94,7 +107,9 @@ partial void ProcessModifyProviderResponseContent(
{
var __pathBuilder = new global::Letta.PathBuilder(
path: $"/v1/providers/{providerId}",
- baseUri: HttpClient.BaseAddress);
+ baseUri: ResolveBaseUri(
+ servers: s_ModifyProviderServers,
+ defaultBaseUrl: "https://app.letta.com/"));
var __path = __pathBuilder.ToString();
__path = global::Letta.AutoSDKRequestOptionsSupport.AppendQueryParameters(
path: __path,
diff --git a/src/libs/Letta/Generated/Letta.ProvidersClient.RefreshProviderModels.g.cs b/src/libs/Letta/Generated/Letta.ProvidersClient.RefreshProviderModels.g.cs
index 42577e57..5ce88cba 100644
--- a/src/libs/Letta/Generated/Letta.ProvidersClient.RefreshProviderModels.g.cs
+++ b/src/libs/Letta/Generated/Letta.ProvidersClient.RefreshProviderModels.g.cs
@@ -6,6 +6,19 @@ namespace Letta
public partial class ProvidersClient
{
+ private static readonly global::Letta.AutoSDKServer[] s_RefreshProviderModelsServers = new global::Letta.AutoSDKServer[]
+ { new global::Letta.AutoSDKServer(
+ id: "https-app-letta-com",
+ name: "Letta Cloud",
+ url: "https://app.letta.com/",
+ description: "Letta Cloud"),
+ new global::Letta.AutoSDKServer(
+ id: "http-localhost",
+ name: "Self-hosted",
+ url: "http://localhost:8283/",
+ description: "Self-hosted"),
+ };
+
private static readonly global::Letta.EndPointSecurityRequirement s_RefreshProviderModelsSecurityRequirement0 =
new global::Letta.EndPointSecurityRequirement
@@ -87,7 +100,9 @@ partial void ProcessRefreshProviderModelsResponseContent(
{
var __pathBuilder = new global::Letta.PathBuilder(
path: $"/v1/providers/{providerId}/refresh",
- baseUri: HttpClient.BaseAddress);
+ baseUri: ResolveBaseUri(
+ servers: s_RefreshProviderModelsServers,
+ defaultBaseUrl: "https://app.letta.com/"));
var __path = __pathBuilder.ToString();
__path = global::Letta.AutoSDKRequestOptionsSupport.AppendQueryParameters(
path: __path,
diff --git a/src/libs/Letta/Generated/Letta.ProvidersClient.RetrieveProvider.g.cs b/src/libs/Letta/Generated/Letta.ProvidersClient.RetrieveProvider.g.cs
index 0da845ac..fbf19286 100644
--- a/src/libs/Letta/Generated/Letta.ProvidersClient.RetrieveProvider.g.cs
+++ b/src/libs/Letta/Generated/Letta.ProvidersClient.RetrieveProvider.g.cs
@@ -6,6 +6,19 @@ namespace Letta
public partial class ProvidersClient
{
+ private static readonly global::Letta.AutoSDKServer[] s_RetrieveProviderServers = new global::Letta.AutoSDKServer[]
+ { new global::Letta.AutoSDKServer(
+ id: "https-app-letta-com",
+ name: "Letta Cloud",
+ url: "https://app.letta.com/",
+ description: "Letta Cloud"),
+ new global::Letta.AutoSDKServer(
+ id: "http-localhost",
+ name: "Self-hosted",
+ url: "http://localhost:8283/",
+ description: "Self-hosted"),
+ };
+
private static readonly global::Letta.EndPointSecurityRequirement s_RetrieveProviderSecurityRequirement0 =
new global::Letta.EndPointSecurityRequirement
@@ -86,7 +99,9 @@ partial void ProcessRetrieveProviderResponseContent(
{
var __pathBuilder = new global::Letta.PathBuilder(
path: $"/v1/providers/{providerId}",
- baseUri: HttpClient.BaseAddress);
+ baseUri: ResolveBaseUri(
+ servers: s_RetrieveProviderServers,
+ defaultBaseUrl: "https://app.letta.com/"));
var __path = __pathBuilder.ToString();
__path = global::Letta.AutoSDKRequestOptionsSupport.AppendQueryParameters(
path: __path,
diff --git a/src/libs/Letta/Generated/Letta.ProvidersClient.g.cs b/src/libs/Letta/Generated/Letta.ProvidersClient.g.cs
index 8891fabf..417cd4bd 100644
--- a/src/libs/Letta/Generated/Letta.ProvidersClient.g.cs
+++ b/src/libs/Letta/Generated/Letta.ProvidersClient.g.cs
@@ -20,7 +20,7 @@ public sealed partial class ProvidersClient : global::Letta.IProvidersClient, gl
public global::System.Net.Http.HttpClient HttpClient { get; }
///
- public System.Uri? BaseUri => HttpClient.BaseAddress;
+ public System.Uri? BaseUri => ResolveDisplayedBaseUri();
///
public global::System.Collections.Generic.List Authorizations { get; }
@@ -33,12 +33,43 @@ public sealed partial class ProvidersClient : global::Letta.IProvidersClient, gl
///
public global::Letta.AutoSDKClientOptions Options { get; }
+
+
+ internal global::Letta.AutoSDKServerConfiguration AutoSDKServerConfiguration { get; set; } = new global::Letta.AutoSDKServerConfiguration();
///
///
///
public global::System.Text.Json.Serialization.JsonSerializerContext JsonSerializerContext { get; set; } = global::Letta.SourceGenerationContext.Default;
+
+ private static readonly global::Letta.AutoSDKServer[] s_availableServers = new global::Letta.AutoSDKServer[]
+ { new global::Letta.AutoSDKServer(
+ id: "https-app-letta-com",
+ name: "Letta Cloud",
+ url: "https://app.letta.com/",
+ description: "Letta Cloud"),
+ new global::Letta.AutoSDKServer(
+ id: "http-localhost",
+ name: "Self-hosted",
+ url: "http://localhost:8283/",
+ description: "Self-hosted"),
+ };
+
+ ///
+ /// The server options available for this client.
+ ///
+ public global::System.Collections.Generic.IReadOnlyList AvailableServers => s_availableServers;
+
+ ///
+ /// The currently selected server for this client, if any.
+ ///
+ public global::Letta.AutoSDKServer? SelectedServer
+ {
+ get => ResolveSelectedServer();
+ set => SelectServer(value);
+ }
+
///
/// Creates a new instance of the ProvidersClient.
/// If no httpClient is provided, a new one will be created.
@@ -85,6 +116,8 @@ public ProvidersClient(
Options = options ?? new global::Letta.AutoSDKClientOptions();
_disposeHttpClient = disposeHttpClient;
+ AutoSDKServerConfiguration.ExplicitBaseUri = baseUri ?? httpClient?.BaseAddress;
+
Initialized(HttpClient);
}
@@ -111,5 +144,117 @@ partial void ProcessResponseContent(
global::System.Net.Http.HttpClient client,
global::System.Net.Http.HttpResponseMessage response,
ref string content);
+
+
+ ///
+ /// Selects one of the generated server options by id.
+ ///
+ public bool TrySelectServer(string serverId)
+ {
+ if (string.IsNullOrWhiteSpace(serverId))
+ {
+ return false;
+ }
+
+ foreach (var server in s_availableServers)
+ {
+ if (string.Equals(server.Id, serverId, global::System.StringComparison.OrdinalIgnoreCase))
+ {
+ AutoSDKServerConfiguration.SelectedServer = server;
+ AutoSDKServerConfiguration.ExplicitBaseUri = null;
+ return true;
+ }
+ }
+
+ return false;
+ }
+
+ ///
+ /// Clears the currently selected server.
+ ///
+ public void ClearSelectedServer()
+ {
+ AutoSDKServerConfiguration.SelectedServer = null;
+ }
+
+ private global::Letta.AutoSDKServer? ResolveSelectedServer()
+ {
+ var selectedServer = AutoSDKServerConfiguration.SelectedServer;
+ if (selectedServer is null)
+ {
+ return null;
+ }
+
+ foreach (var server in s_availableServers)
+ {
+ if (string.Equals(server.Id, selectedServer.Id, global::System.StringComparison.Ordinal))
+ {
+ return server;
+ }
+ }
+
+ return null;
+ }
+
+ private void SelectServer(global::Letta.AutoSDKServer? server)
+ {
+ if (server is null)
+ {
+ AutoSDKServerConfiguration.SelectedServer = null;
+ return;
+ }
+
+ foreach (var candidate in s_availableServers)
+ {
+ if (string.Equals(candidate.Id, server.Id, global::System.StringComparison.Ordinal))
+ {
+ AutoSDKServerConfiguration.SelectedServer = candidate;
+ AutoSDKServerConfiguration.ExplicitBaseUri = null;
+ return;
+ }
+ }
+
+ throw new global::System.ArgumentException("The provided server is not available for this client.", nameof(server));
+ }
+
+ private global::System.Uri? ResolveDisplayedBaseUri()
+ {
+ if (AutoSDKServerConfiguration.ExplicitBaseUri is global::System.Uri explicitBaseUri)
+ {
+ return explicitBaseUri;
+ }
+
+ return ResolveSelectedServer()?.Uri ?? HttpClient.BaseAddress;
+ }
+
+ private global::System.Uri? ResolveBaseUri(
+ global::Letta.AutoSDKServer[] servers,
+ string defaultBaseUrl)
+ {
+ if (AutoSDKServerConfiguration.ExplicitBaseUri is global::System.Uri explicitBaseUri)
+ {
+ return explicitBaseUri;
+ }
+
+ if (AutoSDKServerConfiguration.SelectedServer is global::Letta.AutoSDKServer selectedServer)
+ {
+ foreach (var server in servers)
+ {
+ if (string.Equals(server.Id, selectedServer.Id, global::System.StringComparison.Ordinal))
+ {
+ return server.Uri;
+ }
+ }
+ }
+
+ if (servers.Length > 0)
+ {
+ return servers[0].Uri;
+ }
+
+ return string.IsNullOrWhiteSpace(defaultBaseUrl)
+ ? HttpClient.BaseAddress
+ : new global::System.Uri(defaultBaseUrl, global::System.UriKind.RelativeOrAbsolute);
+ }
}
}
\ No newline at end of file
diff --git a/src/libs/Letta/Generated/Letta.RunsClient.DeleteRun.g.cs b/src/libs/Letta/Generated/Letta.RunsClient.DeleteRun.g.cs
index 58ceae31..007e0a37 100644
--- a/src/libs/Letta/Generated/Letta.RunsClient.DeleteRun.g.cs
+++ b/src/libs/Letta/Generated/Letta.RunsClient.DeleteRun.g.cs
@@ -6,6 +6,19 @@ namespace Letta
public partial class RunsClient
{
+ private static readonly global::Letta.AutoSDKServer[] s_DeleteRunServers = new global::Letta.AutoSDKServer[]
+ { new global::Letta.AutoSDKServer(
+ id: "https-app-letta-com",
+ name: "Letta Cloud",
+ url: "https://app.letta.com/",
+ description: "Letta Cloud"),
+ new global::Letta.AutoSDKServer(
+ id: "http-localhost",
+ name: "Self-hosted",
+ url: "http://localhost:8283/",
+ description: "Self-hosted"),
+ };
+
private static readonly global::Letta.EndPointSecurityRequirement s_DeleteRunSecurityRequirement0 =
new global::Letta.EndPointSecurityRequirement
@@ -84,7 +97,9 @@ partial void ProcessDeleteRunResponseContent(
{
var __pathBuilder = new global::Letta.PathBuilder(
path: $"/v1/runs/{runId}",
- baseUri: HttpClient.BaseAddress);
+ baseUri: ResolveBaseUri(
+ servers: s_DeleteRunServers,
+ defaultBaseUrl: "https://app.letta.com/"));
var __path = __pathBuilder.ToString();
__path = global::Letta.AutoSDKRequestOptionsSupport.AppendQueryParameters(
path: __path,
diff --git a/src/libs/Letta/Generated/Letta.RunsClient.ListMessagesForRun.g.cs b/src/libs/Letta/Generated/Letta.RunsClient.ListMessagesForRun.g.cs
index 4e7945a3..cb1b0347 100644
--- a/src/libs/Letta/Generated/Letta.RunsClient.ListMessagesForRun.g.cs
+++ b/src/libs/Letta/Generated/Letta.RunsClient.ListMessagesForRun.g.cs
@@ -6,6 +6,19 @@ namespace Letta
public partial class RunsClient
{
+ private static readonly global::Letta.AutoSDKServer[] s_ListMessagesForRunServers = new global::Letta.AutoSDKServer[]
+ { new global::Letta.AutoSDKServer(
+ id: "https-app-letta-com",
+ name: "Letta Cloud",
+ url: "https://app.letta.com/",
+ description: "Letta Cloud"),
+ new global::Letta.AutoSDKServer(
+ id: "http-localhost",
+ name: "Self-hosted",
+ url: "http://localhost:8283/",
+ description: "Self-hosted"),
+ };
+
private static readonly global::Letta.EndPointSecurityRequirement s_ListMessagesForRunSecurityRequirement0 =
new global::Letta.EndPointSecurityRequirement
@@ -122,7 +135,9 @@ partial void ProcessListMessagesForRunResponseContent(
{
var __pathBuilder = new global::Letta.PathBuilder(
path: $"/v1/runs/{runId}/messages",
- baseUri: HttpClient.BaseAddress);
+ baseUri: ResolveBaseUri(
+ servers: s_ListMessagesForRunServers,
+ defaultBaseUrl: "https://app.letta.com/"));
__pathBuilder
.AddOptionalParameter("before", before)
.AddOptionalParameter("after", after)
diff --git a/src/libs/Letta/Generated/Letta.RunsClient.ListRuns.g.cs b/src/libs/Letta/Generated/Letta.RunsClient.ListRuns.g.cs
index 6d7a86ba..1459124c 100644
--- a/src/libs/Letta/Generated/Letta.RunsClient.ListRuns.g.cs
+++ b/src/libs/Letta/Generated/Letta.RunsClient.ListRuns.g.cs
@@ -8,6 +8,19 @@ namespace Letta
public partial class RunsClient
{
+ private static readonly global::Letta.AutoSDKServer[] s_ListRunsServers = new global::Letta.AutoSDKServer[]
+ { new global::Letta.AutoSDKServer(
+ id: "https-app-letta-com",
+ name: "Letta Cloud",
+ url: "https://app.letta.com/",
+ description: "Letta Cloud"),
+ new global::Letta.AutoSDKServer(
+ id: "http-localhost",
+ name: "Self-hosted",
+ url: "http://localhost:8283/",
+ description: "Self-hosted"),
+ };
+
private static readonly global::Letta.EndPointSecurityRequirement s_ListRunsSecurityRequirement0 =
new global::Letta.EndPointSecurityRequirement
@@ -177,7 +190,9 @@ partial void ProcessListRunsResponseContent(
{
var __pathBuilder = new global::Letta.PathBuilder(
path: "/v1/runs/",
- baseUri: HttpClient.BaseAddress);
+ baseUri: ResolveBaseUri(
+ servers: s_ListRunsServers,
+ defaultBaseUrl: "https://app.letta.com/"));
__pathBuilder
.AddOptionalParameter("agent_id", agentId)
.AddOptionalParameter("agent_ids", agentIds?.ToString())
diff --git a/src/libs/Letta/Generated/Letta.RunsClient.ListStepsForRun.g.cs b/src/libs/Letta/Generated/Letta.RunsClient.ListStepsForRun.g.cs
index a0d14350..d119f55d 100644
--- a/src/libs/Letta/Generated/Letta.RunsClient.ListStepsForRun.g.cs
+++ b/src/libs/Letta/Generated/Letta.RunsClient.ListStepsForRun.g.cs
@@ -6,6 +6,19 @@ namespace Letta
public partial class RunsClient
{
+ private static readonly global::Letta.AutoSDKServer[] s_ListStepsForRunServers = new global::Letta.AutoSDKServer[]
+ { new global::Letta.AutoSDKServer(
+ id: "https-app-letta-com",
+ name: "Letta Cloud",
+ url: "https://app.letta.com/",
+ description: "Letta Cloud"),
+ new global::Letta.AutoSDKServer(
+ id: "http-localhost",
+ name: "Self-hosted",
+ url: "http://localhost:8283/",
+ description: "Self-hosted"),
+ };
+
private static readonly global::Letta.EndPointSecurityRequirement s_ListStepsForRunSecurityRequirement0 =
new global::Letta.EndPointSecurityRequirement
@@ -122,7 +135,9 @@ partial void ProcessListStepsForRunResponseContent(
{
var __pathBuilder = new global::Letta.PathBuilder(
path: $"/v1/runs/{runId}/steps",
- baseUri: HttpClient.BaseAddress);
+ baseUri: ResolveBaseUri(
+ servers: s_ListStepsForRunServers,
+ defaultBaseUrl: "https://app.letta.com/"));
__pathBuilder
.AddOptionalParameter("before", before)
.AddOptionalParameter("after", after)
diff --git a/src/libs/Letta/Generated/Letta.RunsClient.RetrieveMetricsForRun.g.cs b/src/libs/Letta/Generated/Letta.RunsClient.RetrieveMetricsForRun.g.cs
index 2d14ec0f..438d4e21 100644
--- a/src/libs/Letta/Generated/Letta.RunsClient.RetrieveMetricsForRun.g.cs
+++ b/src/libs/Letta/Generated/Letta.RunsClient.RetrieveMetricsForRun.g.cs
@@ -6,6 +6,19 @@ namespace Letta
public partial class RunsClient
{
+ private static readonly global::Letta.AutoSDKServer[] s_RetrieveMetricsForRunServers = new global::Letta.AutoSDKServer[]
+ { new global::Letta.AutoSDKServer(
+ id: "https-app-letta-com",
+ name: "Letta Cloud",
+ url: "https://app.letta.com/",
+ description: "Letta Cloud"),
+ new global::Letta.AutoSDKServer(
+ id: "http-localhost",
+ name: "Self-hosted",
+ url: "http://localhost:8283/",
+ description: "Self-hosted"),
+ };
+
private static readonly global::Letta.EndPointSecurityRequirement s_RetrieveMetricsForRunSecurityRequirement0 =
new global::Letta.EndPointSecurityRequirement
@@ -84,7 +97,9 @@ partial void ProcessRetrieveMetricsForRunResponseContent(
{
var __pathBuilder = new global::Letta.PathBuilder(
path: $"/v1/runs/{runId}/metrics",
- baseUri: HttpClient.BaseAddress);
+ baseUri: ResolveBaseUri(
+ servers: s_RetrieveMetricsForRunServers,
+ defaultBaseUrl: "https://app.letta.com/"));
var __path = __pathBuilder.ToString();
__path = global::Letta.AutoSDKRequestOptionsSupport.AppendQueryParameters(
path: __path,
diff --git a/src/libs/Letta/Generated/Letta.RunsClient.RetrieveRun.g.cs b/src/libs/Letta/Generated/Letta.RunsClient.RetrieveRun.g.cs
index 2143bbc7..968cd232 100644
--- a/src/libs/Letta/Generated/Letta.RunsClient.RetrieveRun.g.cs
+++ b/src/libs/Letta/Generated/Letta.RunsClient.RetrieveRun.g.cs
@@ -6,6 +6,19 @@ namespace Letta
public partial class RunsClient
{
+ private static readonly global::Letta.AutoSDKServer[] s_RetrieveRunServers = new global::Letta.AutoSDKServer[]
+ { new global::Letta.AutoSDKServer(
+ id: "https-app-letta-com",
+ name: "Letta Cloud",
+ url: "https://app.letta.com/",
+ description: "Letta Cloud"),
+ new global::Letta.AutoSDKServer(
+ id: "http-localhost",
+ name: "Self-hosted",
+ url: "http://localhost:8283/",
+ description: "Self-hosted"),
+ };
+
private static readonly global::Letta.EndPointSecurityRequirement s_RetrieveRunSecurityRequirement0 =
new global::Letta.EndPointSecurityRequirement
@@ -84,7 +97,9 @@ partial void ProcessRetrieveRunResponseContent(
{
var __pathBuilder = new global::Letta.PathBuilder(
path: $"/v1/runs/{runId}",
- baseUri: HttpClient.BaseAddress);
+ baseUri: ResolveBaseUri(
+ servers: s_RetrieveRunServers,
+ defaultBaseUrl: "https://app.letta.com/"));
var __path = __pathBuilder.ToString();
__path = global::Letta.AutoSDKRequestOptionsSupport.AppendQueryParameters(
path: __path,
diff --git a/src/libs/Letta/Generated/Letta.RunsClient.RetrieveStreamForRun.g.cs b/src/libs/Letta/Generated/Letta.RunsClient.RetrieveStreamForRun.g.cs
index aeff3fd1..410e6e1a 100644
--- a/src/libs/Letta/Generated/Letta.RunsClient.RetrieveStreamForRun.g.cs
+++ b/src/libs/Letta/Generated/Letta.RunsClient.RetrieveStreamForRun.g.cs
@@ -6,6 +6,19 @@ namespace Letta
public partial class RunsClient
{
+ private static readonly global::Letta.AutoSDKServer[] s_RetrieveStreamForRunServers = new global::Letta.AutoSDKServer[]
+ { new global::Letta.AutoSDKServer(
+ id: "https-app-letta-com",
+ name: "Letta Cloud",
+ url: "https://app.letta.com/",
+ description: "Letta Cloud"),
+ new global::Letta.AutoSDKServer(
+ id: "http-localhost",
+ name: "Self-hosted",
+ url: "http://localhost:8283/",
+ description: "Self-hosted"),
+ };
+
private static readonly global::Letta.EndPointSecurityRequirement s_RetrieveStreamForRunSecurityRequirement0 =
new global::Letta.EndPointSecurityRequirement
@@ -91,7 +104,9 @@ partial void ProcessRetrieveStreamForRunResponseContent(
{
var __pathBuilder = new global::Letta.PathBuilder(
path: $"/v1/runs/{runId}/stream",
- baseUri: HttpClient.BaseAddress);
+ baseUri: ResolveBaseUri(
+ servers: s_RetrieveStreamForRunServers,
+ defaultBaseUrl: "https://app.letta.com/"));
var __path = __pathBuilder.ToString();
__path = global::Letta.AutoSDKRequestOptionsSupport.AppendQueryParameters(
path: __path,
diff --git a/src/libs/Letta/Generated/Letta.RunsClient.RetrieveTraceForRun.g.cs b/src/libs/Letta/Generated/Letta.RunsClient.RetrieveTraceForRun.g.cs
index b815a774..06dcd119 100644
--- a/src/libs/Letta/Generated/Letta.RunsClient.RetrieveTraceForRun.g.cs
+++ b/src/libs/Letta/Generated/Letta.RunsClient.RetrieveTraceForRun.g.cs
@@ -6,6 +6,19 @@ namespace Letta
public partial class RunsClient
{
+ private static readonly global::Letta.AutoSDKServer[] s_RetrieveTraceForRunServers = new global::Letta.AutoSDKServer[]
+ { new global::Letta.AutoSDKServer(
+ id: "https-app-letta-com",
+ name: "Letta Cloud",
+ url: "https://app.letta.com/",
+ description: "Letta Cloud"),
+ new global::Letta.AutoSDKServer(
+ id: "http-localhost",
+ name: "Self-hosted",
+ url: "http://localhost:8283/",
+ description: "Self-hosted"),
+ };
+
private static readonly global::Letta.EndPointSecurityRequirement s_RetrieveTraceForRunSecurityRequirement0 =
new global::Letta.EndPointSecurityRequirement
@@ -98,7 +111,9 @@ partial void ProcessRetrieveTraceForRunResponseContent(
{
var __pathBuilder = new global::Letta.PathBuilder(
path: $"/v1/runs/{runId}/trace",
- baseUri: HttpClient.BaseAddress);
+ baseUri: ResolveBaseUri(
+ servers: s_RetrieveTraceForRunServers,
+ defaultBaseUrl: "https://app.letta.com/"));
__pathBuilder
.AddOptionalParameter("limit", limit?.ToString())
;
diff --git a/src/libs/Letta/Generated/Letta.RunsClient.RetrieveUsageForRun.g.cs b/src/libs/Letta/Generated/Letta.RunsClient.RetrieveUsageForRun.g.cs
index f9790980..61b93826 100644
--- a/src/libs/Letta/Generated/Letta.RunsClient.RetrieveUsageForRun.g.cs
+++ b/src/libs/Letta/Generated/Letta.RunsClient.RetrieveUsageForRun.g.cs
@@ -6,6 +6,19 @@ namespace Letta
public partial class RunsClient
{
+ private static readonly global::Letta.AutoSDKServer[] s_RetrieveUsageForRunServers = new global::Letta.AutoSDKServer[]
+ { new global::Letta.AutoSDKServer(
+ id: "https-app-letta-com",
+ name: "Letta Cloud",
+ url: "https://app.letta.com/",
+ description: "Letta Cloud"),
+ new global::Letta.AutoSDKServer(
+ id: "http-localhost",
+ name: "Self-hosted",
+ url: "http://localhost:8283/",
+ description: "Self-hosted"),
+ };
+
private static readonly global::Letta.EndPointSecurityRequirement s_RetrieveUsageForRunSecurityRequirement0 =
new global::Letta.EndPointSecurityRequirement
@@ -84,7 +97,9 @@ partial void ProcessRetrieveUsageForRunResponseContent(
{
var __pathBuilder = new global::Letta.PathBuilder(
path: $"/v1/runs/{runId}/usage",
- baseUri: HttpClient.BaseAddress);
+ baseUri: ResolveBaseUri(
+ servers: s_RetrieveUsageForRunServers,
+ defaultBaseUrl: "https://app.letta.com/"));
var __path = __pathBuilder.ToString();
__path = global::Letta.AutoSDKRequestOptionsSupport.AppendQueryParameters(
path: __path,
diff --git a/src/libs/Letta/Generated/Letta.RunsClient.g.cs b/src/libs/Letta/Generated/Letta.RunsClient.g.cs
index 0beb255b..4b29077d 100644
--- a/src/libs/Letta/Generated/Letta.RunsClient.g.cs
+++ b/src/libs/Letta/Generated/Letta.RunsClient.g.cs
@@ -20,7 +20,7 @@ public sealed partial class RunsClient : global::Letta.IRunsClient, global::Syst
public global::System.Net.Http.HttpClient HttpClient { get; }
///
- public System.Uri? BaseUri => HttpClient.BaseAddress;
+ public System.Uri? BaseUri => ResolveDisplayedBaseUri();
///
public global::System.Collections.Generic.List Authorizations { get; }
@@ -33,12 +33,43 @@ public sealed partial class RunsClient : global::Letta.IRunsClient, global::Syst
///
public global::Letta.AutoSDKClientOptions Options { get; }
+
+
+ internal global::Letta.AutoSDKServerConfiguration AutoSDKServerConfiguration { get; set; } = new global::Letta.AutoSDKServerConfiguration();
///
///
///
public global::System.Text.Json.Serialization.JsonSerializerContext JsonSerializerContext { get; set; } = global::Letta.SourceGenerationContext.Default;
+
+ private static readonly global::Letta.AutoSDKServer[] s_availableServers = new global::Letta.AutoSDKServer[]
+ { new global::Letta.AutoSDKServer(
+ id: "https-app-letta-com",
+ name: "Letta Cloud",
+ url: "https://app.letta.com/",
+ description: "Letta Cloud"),
+ new global::Letta.AutoSDKServer(
+ id: "http-localhost",
+ name: "Self-hosted",
+ url: "http://localhost:8283/",
+ description: "Self-hosted"),
+ };
+
+ ///
+ /// The server options available for this client.
+ ///
+ public global::System.Collections.Generic.IReadOnlyList AvailableServers => s_availableServers;
+
+ ///
+ /// The currently selected server for this client, if any.
+ ///
+ public global::Letta.AutoSDKServer? SelectedServer
+ {
+ get => ResolveSelectedServer();
+ set => SelectServer(value);
+ }
+
///
/// Creates a new instance of the RunsClient.
/// If no httpClient is provided, a new one will be created.
@@ -85,6 +116,8 @@ public RunsClient(
Options = options ?? new global::Letta.AutoSDKClientOptions();
_disposeHttpClient = disposeHttpClient;
+ AutoSDKServerConfiguration.ExplicitBaseUri = baseUri ?? httpClient?.BaseAddress;
+
Initialized(HttpClient);
}
@@ -111,5 +144,117 @@ partial void ProcessResponseContent(
global::System.Net.Http.HttpClient client,
global::System.Net.Http.HttpResponseMessage response,
ref string content);
+
+
+ ///
+ /// Selects one of the generated server options by id.
+ ///
+ public bool TrySelectServer(string serverId)
+ {
+ if (string.IsNullOrWhiteSpace(serverId))
+ {
+ return false;
+ }
+
+ foreach (var server in s_availableServers)
+ {
+ if (string.Equals(server.Id, serverId, global::System.StringComparison.OrdinalIgnoreCase))
+ {
+ AutoSDKServerConfiguration.SelectedServer = server;
+ AutoSDKServerConfiguration.ExplicitBaseUri = null;
+ return true;
+ }
+ }
+
+ return false;
+ }
+
+ ///
+ /// Clears the currently selected server.
+ ///
+ public void ClearSelectedServer()
+ {
+ AutoSDKServerConfiguration.SelectedServer = null;
+ }
+
+ private global::Letta.AutoSDKServer? ResolveSelectedServer()
+ {
+ var selectedServer = AutoSDKServerConfiguration.SelectedServer;
+ if (selectedServer is null)
+ {
+ return null;
+ }
+
+ foreach (var server in s_availableServers)
+ {
+ if (string.Equals(server.Id, selectedServer.Id, global::System.StringComparison.Ordinal))
+ {
+ return server;
+ }
+ }
+
+ return null;
+ }
+
+ private void SelectServer(global::Letta.AutoSDKServer? server)
+ {
+ if (server is null)
+ {
+ AutoSDKServerConfiguration.SelectedServer = null;
+ return;
+ }
+
+ foreach (var candidate in s_availableServers)
+ {
+ if (string.Equals(candidate.Id, server.Id, global::System.StringComparison.Ordinal))
+ {
+ AutoSDKServerConfiguration.SelectedServer = candidate;
+ AutoSDKServerConfiguration.ExplicitBaseUri = null;
+ return;
+ }
+ }
+
+ throw new global::System.ArgumentException("The provided server is not available for this client.", nameof(server));
+ }
+
+ private global::System.Uri? ResolveDisplayedBaseUri()
+ {
+ if (AutoSDKServerConfiguration.ExplicitBaseUri is global::System.Uri explicitBaseUri)
+ {
+ return explicitBaseUri;
+ }
+
+ return ResolveSelectedServer()?.Uri ?? HttpClient.BaseAddress;
+ }
+
+ private global::System.Uri? ResolveBaseUri(
+ global::Letta.AutoSDKServer[] servers,
+ string defaultBaseUrl)
+ {
+ if (AutoSDKServerConfiguration.ExplicitBaseUri is global::System.Uri explicitBaseUri)
+ {
+ return explicitBaseUri;
+ }
+
+ if (AutoSDKServerConfiguration.SelectedServer is global::Letta.AutoSDKServer selectedServer)
+ {
+ foreach (var server in servers)
+ {
+ if (string.Equals(server.Id, selectedServer.Id, global::System.StringComparison.Ordinal))
+ {
+ return server.Uri;
+ }
+ }
+ }
+
+ if (servers.Length > 0)
+ {
+ return servers[0].Uri;
+ }
+
+ return string.IsNullOrWhiteSpace(defaultBaseUrl)
+ ? HttpClient.BaseAddress
+ : new global::System.Uri(defaultBaseUrl, global::System.UriKind.RelativeOrAbsolute);
+ }
}
}
\ No newline at end of file
diff --git a/src/libs/Letta/Generated/Letta.SandboxesClient.SandboxesCreateSandbox.g.cs b/src/libs/Letta/Generated/Letta.SandboxesClient.SandboxesCreateSandbox.g.cs
index e8fdab3a..673ce46e 100644
--- a/src/libs/Letta/Generated/Letta.SandboxesClient.SandboxesCreateSandbox.g.cs
+++ b/src/libs/Letta/Generated/Letta.SandboxesClient.SandboxesCreateSandbox.g.cs
@@ -6,6 +6,19 @@ namespace Letta
public partial class SandboxesClient
{
+ private static readonly global::Letta.AutoSDKServer[] s_SandboxesCreateSandboxServers = new global::Letta.AutoSDKServer[]
+ { new global::Letta.AutoSDKServer(
+ id: "https-app-letta-com",
+ name: "Letta Cloud",
+ url: "https://app.letta.com/",
+ description: "Letta Cloud"),
+ new global::Letta.AutoSDKServer(
+ id: "http-localhost",
+ name: "Self-hosted",
+ url: "http://localhost:8283/",
+ description: "Self-hosted"),
+ };
+
private static readonly global::Letta.EndPointSecurityRequirement s_SandboxesCreateSandboxSecurityRequirement0 =
new global::Letta.EndPointSecurityRequirement
@@ -87,7 +100,9 @@ partial void ProcessSandboxesCreateSandboxResponseContent(
{
var __pathBuilder = new global::Letta.PathBuilder(
path: "/v1/sandboxes",
- baseUri: HttpClient.BaseAddress);
+ baseUri: ResolveBaseUri(
+ servers: s_SandboxesCreateSandboxServers,
+ defaultBaseUrl: "https://app.letta.com/"));
var __path = __pathBuilder.ToString();
__path = global::Letta.AutoSDKRequestOptionsSupport.AppendQueryParameters(
path: __path,
diff --git a/src/libs/Letta/Generated/Letta.SandboxesClient.SandboxesListSandboxes.g.cs b/src/libs/Letta/Generated/Letta.SandboxesClient.SandboxesListSandboxes.g.cs
index b56ffe88..f58299ff 100644
--- a/src/libs/Letta/Generated/Letta.SandboxesClient.SandboxesListSandboxes.g.cs
+++ b/src/libs/Letta/Generated/Letta.SandboxesClient.SandboxesListSandboxes.g.cs
@@ -6,6 +6,19 @@ namespace Letta
public partial class SandboxesClient
{
+ private static readonly global::Letta.AutoSDKServer[] s_SandboxesListSandboxesServers = new global::Letta.AutoSDKServer[]
+ { new global::Letta.AutoSDKServer(
+ id: "https-app-letta-com",
+ name: "Letta Cloud",
+ url: "https://app.letta.com/",
+ description: "Letta Cloud"),
+ new global::Letta.AutoSDKServer(
+ id: "http-localhost",
+ name: "Self-hosted",
+ url: "http://localhost:8283/",
+ description: "Self-hosted"),
+ };
+
private static readonly global::Letta.EndPointSecurityRequirement s_SandboxesListSandboxesSecurityRequirement0 =
new global::Letta.EndPointSecurityRequirement
@@ -89,7 +102,9 @@ partial void ProcessSandboxesListSandboxesResponseContent(
{
var __pathBuilder = new global::Letta.PathBuilder(
path: "/v1/sandboxes",
- baseUri: HttpClient.BaseAddress);
+ baseUri: ResolveBaseUri(
+ servers: s_SandboxesListSandboxesServers,
+ defaultBaseUrl: "https://app.letta.com/"));
__pathBuilder
.AddOptionalParameter("agentId", agentId)
.AddOptionalParameter("limit", limit)
diff --git a/src/libs/Letta/Generated/Letta.SandboxesClient.SandboxesTerminateSandbox.g.cs b/src/libs/Letta/Generated/Letta.SandboxesClient.SandboxesTerminateSandbox.g.cs
index 4c4a2a99..eecd77e6 100644
--- a/src/libs/Letta/Generated/Letta.SandboxesClient.SandboxesTerminateSandbox.g.cs
+++ b/src/libs/Letta/Generated/Letta.SandboxesClient.SandboxesTerminateSandbox.g.cs
@@ -6,6 +6,19 @@ namespace Letta
public partial class SandboxesClient
{
+ private static readonly global::Letta.AutoSDKServer[] s_SandboxesTerminateSandboxServers = new global::Letta.AutoSDKServer[]
+ { new global::Letta.AutoSDKServer(
+ id: "https-app-letta-com",
+ name: "Letta Cloud",
+ url: "https://app.letta.com/",
+ description: "Letta Cloud"),
+ new global::Letta.AutoSDKServer(
+ id: "http-localhost",
+ name: "Self-hosted",
+ url: "http://localhost:8283/",
+ description: "Self-hosted"),
+ };
+
private static readonly global::Letta.EndPointSecurityRequirement s_SandboxesTerminateSandboxSecurityRequirement0 =
new global::Letta.EndPointSecurityRequirement
@@ -92,7 +105,9 @@ partial void ProcessSandboxesTerminateSandboxResponseContent(
{
var __pathBuilder = new global::Letta.PathBuilder(
path: $"/v1/sandboxes/{sandboxId}/terminate",
- baseUri: HttpClient.BaseAddress);
+ baseUri: ResolveBaseUri(
+ servers: s_SandboxesTerminateSandboxServers,
+ defaultBaseUrl: "https://app.letta.com/"));
var __path = __pathBuilder.ToString();
__path = global::Letta.AutoSDKRequestOptionsSupport.AppendQueryParameters(
path: __path,
diff --git a/src/libs/Letta/Generated/Letta.SandboxesClient.g.cs b/src/libs/Letta/Generated/Letta.SandboxesClient.g.cs
index 6c338bd7..3c40f9cc 100644
--- a/src/libs/Letta/Generated/Letta.SandboxesClient.g.cs
+++ b/src/libs/Letta/Generated/Letta.SandboxesClient.g.cs
@@ -20,7 +20,7 @@ public sealed partial class SandboxesClient : global::Letta.ISandboxesClient, gl
public global::System.Net.Http.HttpClient HttpClient { get; }
///
- public System.Uri? BaseUri => HttpClient.BaseAddress;
+ public System.Uri? BaseUri => ResolveDisplayedBaseUri();
///
public global::System.Collections.Generic.List Authorizations { get; }
@@ -33,12 +33,43 @@ public sealed partial class SandboxesClient : global::Letta.ISandboxesClient, gl
///
public global::Letta.AutoSDKClientOptions Options { get; }
+
+
+ internal global::Letta.AutoSDKServerConfiguration AutoSDKServerConfiguration { get; set; } = new global::Letta.AutoSDKServerConfiguration();
///
///
///
public global::System.Text.Json.Serialization.JsonSerializerContext JsonSerializerContext { get; set; } = global::Letta.SourceGenerationContext.Default;
+
+ private static readonly global::Letta.AutoSDKServer[] s_availableServers = new global::Letta.AutoSDKServer[]
+ { new global::Letta.AutoSDKServer(
+ id: "https-app-letta-com",
+ name: "Letta Cloud",
+ url: "https://app.letta.com/",
+ description: "Letta Cloud"),
+ new global::Letta.AutoSDKServer(
+ id: "http-localhost",
+ name: "Self-hosted",
+ url: "http://localhost:8283/",
+ description: "Self-hosted"),
+ };
+
+ ///
+ /// The server options available for this client.
+ ///
+ public global::System.Collections.Generic.IReadOnlyList AvailableServers => s_availableServers;
+
+ ///
+ /// The currently selected server for this client, if any.
+ ///
+ public global::Letta.AutoSDKServer? SelectedServer
+ {
+ get => ResolveSelectedServer();
+ set => SelectServer(value);
+ }
+
///
/// Creates a new instance of the SandboxesClient.
/// If no httpClient is provided, a new one will be created.
@@ -85,6 +116,8 @@ public SandboxesClient(
Options = options ?? new global::Letta.AutoSDKClientOptions();
_disposeHttpClient = disposeHttpClient;
+ AutoSDKServerConfiguration.ExplicitBaseUri = baseUri ?? httpClient?.BaseAddress;
+
Initialized(HttpClient);
}
@@ -111,5 +144,117 @@ partial void ProcessResponseContent(
global::System.Net.Http.HttpClient client,
global::System.Net.Http.HttpResponseMessage response,
ref string content);
+
+
+ ///
+ /// Selects one of the generated server options by id.
+ ///
+ public bool TrySelectServer(string serverId)
+ {
+ if (string.IsNullOrWhiteSpace(serverId))
+ {
+ return false;
+ }
+
+ foreach (var server in s_availableServers)
+ {
+ if (string.Equals(server.Id, serverId, global::System.StringComparison.OrdinalIgnoreCase))
+ {
+ AutoSDKServerConfiguration.SelectedServer = server;
+ AutoSDKServerConfiguration.ExplicitBaseUri = null;
+ return true;
+ }
+ }
+
+ return false;
+ }
+
+ ///
+ /// Clears the currently selected server.
+ ///
+ public void ClearSelectedServer()
+ {
+ AutoSDKServerConfiguration.SelectedServer = null;
+ }
+
+ private global::Letta.AutoSDKServer? ResolveSelectedServer()
+ {
+ var selectedServer = AutoSDKServerConfiguration.SelectedServer;
+ if (selectedServer is null)
+ {
+ return null;
+ }
+
+ foreach (var server in s_availableServers)
+ {
+ if (string.Equals(server.Id, selectedServer.Id, global::System.StringComparison.Ordinal))
+ {
+ return server;
+ }
+ }
+
+ return null;
+ }
+
+ private void SelectServer(global::Letta.AutoSDKServer? server)
+ {
+ if (server is null)
+ {
+ AutoSDKServerConfiguration.SelectedServer = null;
+ return;
+ }
+
+ foreach (var candidate in s_availableServers)
+ {
+ if (string.Equals(candidate.Id, server.Id, global::System.StringComparison.Ordinal))
+ {
+ AutoSDKServerConfiguration.SelectedServer = candidate;
+ AutoSDKServerConfiguration.ExplicitBaseUri = null;
+ return;
+ }
+ }
+
+ throw new global::System.ArgumentException("The provided server is not available for this client.", nameof(server));
+ }
+
+ private global::System.Uri? ResolveDisplayedBaseUri()
+ {
+ if (AutoSDKServerConfiguration.ExplicitBaseUri is global::System.Uri explicitBaseUri)
+ {
+ return explicitBaseUri;
+ }
+
+ return ResolveSelectedServer()?.Uri ?? HttpClient.BaseAddress;
+ }
+
+ private global::System.Uri? ResolveBaseUri(
+ global::Letta.AutoSDKServer[] servers,
+ string defaultBaseUrl)
+ {
+ if (AutoSDKServerConfiguration.ExplicitBaseUri is global::System.Uri explicitBaseUri)
+ {
+ return explicitBaseUri;
+ }
+
+ if (AutoSDKServerConfiguration.SelectedServer is global::Letta.AutoSDKServer selectedServer)
+ {
+ foreach (var server in servers)
+ {
+ if (string.Equals(server.Id, selectedServer.Id, global::System.StringComparison.Ordinal))
+ {
+ return server.Uri;
+ }
+ }
+ }
+
+ if (servers.Length > 0)
+ {
+ return servers[0].Uri;
+ }
+
+ return string.IsNullOrWhiteSpace(defaultBaseUrl)
+ ? HttpClient.BaseAddress
+ : new global::System.Uri(defaultBaseUrl, global::System.UriKind.RelativeOrAbsolute);
+ }
}
}
\ No newline at end of file
diff --git a/src/libs/Letta/Generated/Letta.ScheduledMessagesClient.ScheduledMessagesDeleteScheduledMessage.g.cs b/src/libs/Letta/Generated/Letta.ScheduledMessagesClient.ScheduledMessagesDeleteScheduledMessage.g.cs
index ef042f14..87a3270f 100644
--- a/src/libs/Letta/Generated/Letta.ScheduledMessagesClient.ScheduledMessagesDeleteScheduledMessage.g.cs
+++ b/src/libs/Letta/Generated/Letta.ScheduledMessagesClient.ScheduledMessagesDeleteScheduledMessage.g.cs
@@ -6,6 +6,19 @@ namespace Letta
public partial class ScheduledMessagesClient
{
+ private static readonly global::Letta.AutoSDKServer[] s_ScheduledMessagesDeleteScheduledMessageServers = new global::Letta.AutoSDKServer[]
+ { new global::Letta.AutoSDKServer(
+ id: "https-app-letta-com",
+ name: "Letta Cloud",
+ url: "https://app.letta.com/",
+ description: "Letta Cloud"),
+ new global::Letta.AutoSDKServer(
+ id: "http-localhost",
+ name: "Self-hosted",
+ url: "http://localhost:8283/",
+ description: "Self-hosted"),
+ };
+
private static readonly global::Letta.EndPointSecurityRequirement s_ScheduledMessagesDeleteScheduledMessageSecurityRequirement0 =
new global::Letta.EndPointSecurityRequirement
@@ -97,7 +110,9 @@ partial void ProcessScheduledMessagesDeleteScheduledMessageResponseContent(
{
var __pathBuilder = new global::Letta.PathBuilder(
path: $"/v1/agents/{agentId}/schedule/{scheduledMessageId}",
- baseUri: HttpClient.BaseAddress);
+ baseUri: ResolveBaseUri(
+ servers: s_ScheduledMessagesDeleteScheduledMessageServers,
+ defaultBaseUrl: "https://app.letta.com/"));
var __path = __pathBuilder.ToString();
__path = global::Letta.AutoSDKRequestOptionsSupport.AppendQueryParameters(
path: __path,
diff --git a/src/libs/Letta/Generated/Letta.ScheduledMessagesClient.ScheduledMessagesListScheduledMessages.g.cs b/src/libs/Letta/Generated/Letta.ScheduledMessagesClient.ScheduledMessagesListScheduledMessages.g.cs
index 0844642d..f137e468 100644
--- a/src/libs/Letta/Generated/Letta.ScheduledMessagesClient.ScheduledMessagesListScheduledMessages.g.cs
+++ b/src/libs/Letta/Generated/Letta.ScheduledMessagesClient.ScheduledMessagesListScheduledMessages.g.cs
@@ -6,6 +6,19 @@ namespace Letta
public partial class ScheduledMessagesClient
{
+ private static readonly global::Letta.AutoSDKServer[] s_ScheduledMessagesListScheduledMessagesServers = new global::Letta.AutoSDKServer[]
+ { new global::Letta.AutoSDKServer(
+ id: "https-app-letta-com",
+ name: "Letta Cloud",
+ url: "https://app.letta.com/",
+ description: "Letta Cloud"),
+ new global::Letta.AutoSDKServer(
+ id: "http-localhost",
+ name: "Self-hosted",
+ url: "http://localhost:8283/",
+ description: "Self-hosted"),
+ };
+
private static readonly global::Letta.EndPointSecurityRequirement s_ScheduledMessagesListScheduledMessagesSecurityRequirement0 =
new global::Letta.EndPointSecurityRequirement
@@ -94,7 +107,9 @@ partial void ProcessScheduledMessagesListScheduledMessagesResponseContent(
{
var __pathBuilder = new global::Letta.PathBuilder(
path: $"/v1/agents/{agentId}/schedule",
- baseUri: HttpClient.BaseAddress);
+ baseUri: ResolveBaseUri(
+ servers: s_ScheduledMessagesListScheduledMessagesServers,
+ defaultBaseUrl: "https://app.letta.com/"));
__pathBuilder
.AddOptionalParameter("limit", limit)
.AddOptionalParameter("after", after)
diff --git a/src/libs/Letta/Generated/Letta.ScheduledMessagesClient.ScheduledMessagesRetrieveScheduledMessage.g.cs b/src/libs/Letta/Generated/Letta.ScheduledMessagesClient.ScheduledMessagesRetrieveScheduledMessage.g.cs
index f85346a4..f0a2e329 100644
--- a/src/libs/Letta/Generated/Letta.ScheduledMessagesClient.ScheduledMessagesRetrieveScheduledMessage.g.cs
+++ b/src/libs/Letta/Generated/Letta.ScheduledMessagesClient.ScheduledMessagesRetrieveScheduledMessage.g.cs
@@ -6,6 +6,19 @@ namespace Letta
public partial class ScheduledMessagesClient
{
+ private static readonly global::Letta.AutoSDKServer[] s_ScheduledMessagesRetrieveScheduledMessageServers = new global::Letta.AutoSDKServer[]
+ { new global::Letta.AutoSDKServer(
+ id: "https-app-letta-com",
+ name: "Letta Cloud",
+ url: "https://app.letta.com/",
+ description: "Letta Cloud"),
+ new global::Letta.AutoSDKServer(
+ id: "http-localhost",
+ name: "Self-hosted",
+ url: "http://localhost:8283/",
+ description: "Self-hosted"),
+ };
+
private static readonly global::Letta.EndPointSecurityRequirement s_ScheduledMessagesRetrieveScheduledMessageSecurityRequirement0 =
new global::Letta.EndPointSecurityRequirement
@@ -89,7 +102,9 @@ partial void ProcessScheduledMessagesRetrieveScheduledMessageResponseContent(
{
var __pathBuilder = new global::Letta.PathBuilder(
path: $"/v1/agents/{agentId}/schedule/{scheduledMessageId}",
- baseUri: HttpClient.BaseAddress);
+ baseUri: ResolveBaseUri(
+ servers: s_ScheduledMessagesRetrieveScheduledMessageServers,
+ defaultBaseUrl: "https://app.letta.com/"));
var __path = __pathBuilder.ToString();
__path = global::Letta.AutoSDKRequestOptionsSupport.AppendQueryParameters(
path: __path,
diff --git a/src/libs/Letta/Generated/Letta.ScheduledMessagesClient.ScheduledMessagesScheduleAgentMessage.g.cs b/src/libs/Letta/Generated/Letta.ScheduledMessagesClient.ScheduledMessagesScheduleAgentMessage.g.cs
index 3f658a3e..63612c35 100644
--- a/src/libs/Letta/Generated/Letta.ScheduledMessagesClient.ScheduledMessagesScheduleAgentMessage.g.cs
+++ b/src/libs/Letta/Generated/Letta.ScheduledMessagesClient.ScheduledMessagesScheduleAgentMessage.g.cs
@@ -6,6 +6,19 @@ namespace Letta
public partial class ScheduledMessagesClient
{
+ private static readonly global::Letta.AutoSDKServer[] s_ScheduledMessagesScheduleAgentMessageServers = new global::Letta.AutoSDKServer[]
+ { new global::Letta.AutoSDKServer(
+ id: "https-app-letta-com",
+ name: "Letta Cloud",
+ url: "https://app.letta.com/",
+ description: "Letta Cloud"),
+ new global::Letta.AutoSDKServer(
+ id: "http-localhost",
+ name: "Self-hosted",
+ url: "http://localhost:8283/",
+ description: "Self-hosted"),
+ };
+
private static readonly global::Letta.EndPointSecurityRequirement s_ScheduledMessagesScheduleAgentMessageSecurityRequirement0 =
new global::Letta.EndPointSecurityRequirement
@@ -92,7 +105,9 @@ partial void ProcessScheduledMessagesScheduleAgentMessageResponseContent(
{
var __pathBuilder = new global::Letta.PathBuilder(
path: $"/v1/agents/{agentId}/schedule",
- baseUri: HttpClient.BaseAddress);
+ baseUri: ResolveBaseUri(
+ servers: s_ScheduledMessagesScheduleAgentMessageServers,
+ defaultBaseUrl: "https://app.letta.com/"));
var __path = __pathBuilder.ToString();
__path = global::Letta.AutoSDKRequestOptionsSupport.AppendQueryParameters(
path: __path,
diff --git a/src/libs/Letta/Generated/Letta.ScheduledMessagesClient.g.cs b/src/libs/Letta/Generated/Letta.ScheduledMessagesClient.g.cs
index f3f73aca..0a427377 100644
--- a/src/libs/Letta/Generated/Letta.ScheduledMessagesClient.g.cs
+++ b/src/libs/Letta/Generated/Letta.ScheduledMessagesClient.g.cs
@@ -20,7 +20,7 @@ public sealed partial class ScheduledMessagesClient : global::Letta.IScheduledMe
public global::System.Net.Http.HttpClient HttpClient { get; }
///
- public System.Uri? BaseUri => HttpClient.BaseAddress;
+ public System.Uri? BaseUri => ResolveDisplayedBaseUri();
///
public global::System.Collections.Generic.List Authorizations { get; }
@@ -33,12 +33,43 @@ public sealed partial class ScheduledMessagesClient : global::Letta.IScheduledMe
///
public global::Letta.AutoSDKClientOptions Options { get; }
+
+
+ internal global::Letta.AutoSDKServerConfiguration AutoSDKServerConfiguration { get; set; } = new global::Letta.AutoSDKServerConfiguration();
///
///
///
public global::System.Text.Json.Serialization.JsonSerializerContext JsonSerializerContext { get; set; } = global::Letta.SourceGenerationContext.Default;
+
+ private static readonly global::Letta.AutoSDKServer[] s_availableServers = new global::Letta.AutoSDKServer[]
+ { new global::Letta.AutoSDKServer(
+ id: "https-app-letta-com",
+ name: "Letta Cloud",
+ url: "https://app.letta.com/",
+ description: "Letta Cloud"),
+ new global::Letta.AutoSDKServer(
+ id: "http-localhost",
+ name: "Self-hosted",
+ url: "http://localhost:8283/",
+ description: "Self-hosted"),
+ };
+
+ ///
+ /// The server options available for this client.
+ ///
+ public global::System.Collections.Generic.IReadOnlyList AvailableServers => s_availableServers;
+
+ ///
+ /// The currently selected server for this client, if any.
+ ///
+ public global::Letta.AutoSDKServer? SelectedServer
+ {
+ get => ResolveSelectedServer();
+ set => SelectServer(value);
+ }
+
///
/// Creates a new instance of the ScheduledMessagesClient.
/// If no httpClient is provided, a new one will be created.
@@ -85,6 +116,8 @@ public ScheduledMessagesClient(
Options = options ?? new global::Letta.AutoSDKClientOptions();
_disposeHttpClient = disposeHttpClient;
+ AutoSDKServerConfiguration.ExplicitBaseUri = baseUri ?? httpClient?.BaseAddress;
+
Initialized(HttpClient);
}
@@ -111,5 +144,117 @@ partial void ProcessResponseContent(
global::System.Net.Http.HttpClient client,
global::System.Net.Http.HttpResponseMessage response,
ref string content);
+
+
+ ///
+ /// Selects one of the generated server options by id.
+ ///
+ public bool TrySelectServer(string serverId)
+ {
+ if (string.IsNullOrWhiteSpace(serverId))
+ {
+ return false;
+ }
+
+ foreach (var server in s_availableServers)
+ {
+ if (string.Equals(server.Id, serverId, global::System.StringComparison.OrdinalIgnoreCase))
+ {
+ AutoSDKServerConfiguration.SelectedServer = server;
+ AutoSDKServerConfiguration.ExplicitBaseUri = null;
+ return true;
+ }
+ }
+
+ return false;
+ }
+
+ ///
+ /// Clears the currently selected server.
+ ///
+ public void ClearSelectedServer()
+ {
+ AutoSDKServerConfiguration.SelectedServer = null;
+ }
+
+ private global::Letta.AutoSDKServer? ResolveSelectedServer()
+ {
+ var selectedServer = AutoSDKServerConfiguration.SelectedServer;
+ if (selectedServer is null)
+ {
+ return null;
+ }
+
+ foreach (var server in s_availableServers)
+ {
+ if (string.Equals(server.Id, selectedServer.Id, global::System.StringComparison.Ordinal))
+ {
+ return server;
+ }
+ }
+
+ return null;
+ }
+
+ private void SelectServer(global::Letta.AutoSDKServer? server)
+ {
+ if (server is null)
+ {
+ AutoSDKServerConfiguration.SelectedServer = null;
+ return;
+ }
+
+ foreach (var candidate in s_availableServers)
+ {
+ if (string.Equals(candidate.Id, server.Id, global::System.StringComparison.Ordinal))
+ {
+ AutoSDKServerConfiguration.SelectedServer = candidate;
+ AutoSDKServerConfiguration.ExplicitBaseUri = null;
+ return;
+ }
+ }
+
+ throw new global::System.ArgumentException("The provided server is not available for this client.", nameof(server));
+ }
+
+ private global::System.Uri? ResolveDisplayedBaseUri()
+ {
+ if (AutoSDKServerConfiguration.ExplicitBaseUri is global::System.Uri explicitBaseUri)
+ {
+ return explicitBaseUri;
+ }
+
+ return ResolveSelectedServer()?.Uri ?? HttpClient.BaseAddress;
+ }
+
+ private global::System.Uri? ResolveBaseUri(
+ global::Letta.AutoSDKServer[] servers,
+ string defaultBaseUrl)
+ {
+ if (AutoSDKServerConfiguration.ExplicitBaseUri is global::System.Uri explicitBaseUri)
+ {
+ return explicitBaseUri;
+ }
+
+ if (AutoSDKServerConfiguration.SelectedServer is global::Letta.AutoSDKServer selectedServer)
+ {
+ foreach (var server in servers)
+ {
+ if (string.Equals(server.Id, selectedServer.Id, global::System.StringComparison.Ordinal))
+ {
+ return server.Uri;
+ }
+ }
+ }
+
+ if (servers.Length > 0)
+ {
+ return servers[0].Uri;
+ }
+
+ return string.IsNullOrWhiteSpace(defaultBaseUrl)
+ ? HttpClient.BaseAddress
+ : new global::System.Uri(defaultBaseUrl, global::System.UriKind.RelativeOrAbsolute);
+ }
}
}
\ No newline at end of file
diff --git a/src/libs/Letta/Generated/Letta.ServerSelection.g.cs b/src/libs/Letta/Generated/Letta.ServerSelection.g.cs
new file mode 100644
index 00000000..51abd191
--- /dev/null
+++ b/src/libs/Letta/Generated/Letta.ServerSelection.g.cs
@@ -0,0 +1,57 @@
+#nullable enable
+
+namespace Letta
+{
+ ///
+ /// Represents a concrete OpenAPI server option.
+ ///
+ public sealed class AutoSDKServer
+ {
+ ///
+ /// Initializes a new instance of the class.
+ ///
+ /// The stable identifier for this server option.
+ /// The display name for this server option.
+ /// The server URL.
+ /// The server description.
+ public AutoSDKServer(
+ string id,
+ string name,
+ string url,
+ string description)
+ {
+ Id = id ?? throw new global::System.ArgumentNullException(nameof(id));
+ Name = name ?? string.Empty;
+ Url = url ?? throw new global::System.ArgumentNullException(nameof(url));
+ Description = description ?? string.Empty;
+ Uri = new global::System.Uri(url, global::System.UriKind.RelativeOrAbsolute);
+ }
+
+ ///
+ /// Gets the stable identifier for this server option.
+ ///
+ public string Id { get; }
+ ///
+ /// Gets the display name for this server option.
+ ///
+ public string Name { get; }
+ ///
+ /// Gets the server URL.
+ ///
+ public string Url { get; }
+ ///
+ /// Gets the server description.
+ ///
+ public string Description { get; }
+ ///
+ /// Gets the parsed server URI.
+ ///
+ public global::System.Uri Uri { get; }
+ }
+
+ internal sealed class AutoSDKServerConfiguration
+ {
+ public global::System.Uri? ExplicitBaseUri { get; set; }
+ public global::Letta.AutoSDKServer? SelectedServer { get; set; }
+ }
+}
\ No newline at end of file
diff --git a/src/libs/Letta/Generated/Letta.StepsClient.ListMessagesForStep.g.cs b/src/libs/Letta/Generated/Letta.StepsClient.ListMessagesForStep.g.cs
index 15a4c7be..7f24089c 100644
--- a/src/libs/Letta/Generated/Letta.StepsClient.ListMessagesForStep.g.cs
+++ b/src/libs/Letta/Generated/Letta.StepsClient.ListMessagesForStep.g.cs
@@ -6,6 +6,19 @@ namespace Letta
public partial class StepsClient
{
+ private static readonly global::Letta.AutoSDKServer[] s_ListMessagesForStepServers = new global::Letta.AutoSDKServer[]
+ { new global::Letta.AutoSDKServer(
+ id: "https-app-letta-com",
+ name: "Letta Cloud",
+ url: "https://app.letta.com/",
+ description: "Letta Cloud"),
+ new global::Letta.AutoSDKServer(
+ id: "http-localhost",
+ name: "Self-hosted",
+ url: "http://localhost:8283/",
+ description: "Self-hosted"),
+ };
+
private static readonly global::Letta.EndPointSecurityRequirement s_ListMessagesForStepSecurityRequirement0 =
new global::Letta.EndPointSecurityRequirement
@@ -124,7 +137,9 @@ partial void ProcessListMessagesForStepResponseContent(
{
var __pathBuilder = new global::Letta.PathBuilder(
path: $"/v1/steps/{stepId}/messages",
- baseUri: HttpClient.BaseAddress);
+ baseUri: ResolveBaseUri(
+ servers: s_ListMessagesForStepServers,
+ defaultBaseUrl: "https://app.letta.com/"));
__pathBuilder
.AddOptionalParameter("before", before)
.AddOptionalParameter("after", after)
diff --git a/src/libs/Letta/Generated/Letta.StepsClient.ListSteps.g.cs b/src/libs/Letta/Generated/Letta.StepsClient.ListSteps.g.cs
index 9e9b863e..ca57fac1 100644
--- a/src/libs/Letta/Generated/Letta.StepsClient.ListSteps.g.cs
+++ b/src/libs/Letta/Generated/Letta.StepsClient.ListSteps.g.cs
@@ -6,6 +6,19 @@ namespace Letta
public partial class StepsClient
{
+ private static readonly global::Letta.AutoSDKServer[] s_ListStepsServers = new global::Letta.AutoSDKServer[]
+ { new global::Letta.AutoSDKServer(
+ id: "https-app-letta-com",
+ name: "Letta Cloud",
+ url: "https://app.letta.com/",
+ description: "Letta Cloud"),
+ new global::Letta.AutoSDKServer(
+ id: "http-localhost",
+ name: "Self-hosted",
+ url: "http://localhost:8283/",
+ description: "Self-hosted"),
+ };
+
private static readonly global::Letta.EndPointSecurityRequirement s_ListStepsSecurityRequirement0 =
new global::Letta.EndPointSecurityRequirement
@@ -187,7 +200,9 @@ partial void ProcessListStepsResponseContent(
{
var __pathBuilder = new global::Letta.PathBuilder(
path: "/v1/steps/",
- baseUri: HttpClient.BaseAddress);
+ baseUri: ResolveBaseUri(
+ servers: s_ListStepsServers,
+ defaultBaseUrl: "https://app.letta.com/"));
__pathBuilder
.AddOptionalParameter("before", before)
.AddOptionalParameter("after", after)
@@ -234,10 +249,10 @@ partial void ProcessListStepsResponseContent(
}
}
- if (xProject != default)
- {
- __httpRequest.Headers.TryAddWithoutValidation("X-Project", xProject.ToString());
- }
+ if (xProject != default)
+ {
+ __httpRequest.Headers.TryAddWithoutValidation("X-Project", xProject.ToString());
+ }
global::Letta.AutoSDKRequestOptionsSupport.ApplyHeaders(
request: __httpRequest,
diff --git a/src/libs/Letta/Generated/Letta.StepsClient.ModifyFeedbackForStep.g.cs b/src/libs/Letta/Generated/Letta.StepsClient.ModifyFeedbackForStep.g.cs
index 0c6bc4cf..7b5b0c45 100644
--- a/src/libs/Letta/Generated/Letta.StepsClient.ModifyFeedbackForStep.g.cs
+++ b/src/libs/Letta/Generated/Letta.StepsClient.ModifyFeedbackForStep.g.cs
@@ -6,6 +6,19 @@ namespace Letta
public partial class StepsClient
{
+ private static readonly global::Letta.AutoSDKServer[] s_ModifyFeedbackForStepServers = new global::Letta.AutoSDKServer[]
+ { new global::Letta.AutoSDKServer(
+ id: "https-app-letta-com",
+ name: "Letta Cloud",
+ url: "https://app.letta.com/",
+ description: "Letta Cloud"),
+ new global::Letta.AutoSDKServer(
+ id: "http-localhost",
+ name: "Self-hosted",
+ url: "http://localhost:8283/",
+ description: "Self-hosted"),
+ };
+
private static readonly global::Letta.EndPointSecurityRequirement s_ModifyFeedbackForStepSecurityRequirement0 =
new global::Letta.EndPointSecurityRequirement
@@ -94,7 +107,9 @@ partial void ProcessModifyFeedbackForStepResponseContent(
{
var __pathBuilder = new global::Letta.PathBuilder(
path: $"/v1/steps/{stepId}/feedback",
- baseUri: HttpClient.BaseAddress);
+ baseUri: ResolveBaseUri(
+ servers: s_ModifyFeedbackForStepServers,
+ defaultBaseUrl: "https://app.letta.com/"));
var __path = __pathBuilder.ToString();
__path = global::Letta.AutoSDKRequestOptionsSupport.AppendQueryParameters(
path: __path,
diff --git a/src/libs/Letta/Generated/Letta.StepsClient.RetrieveMetricsForStep.g.cs b/src/libs/Letta/Generated/Letta.StepsClient.RetrieveMetricsForStep.g.cs
index 876b1f1c..5eb2c2c7 100644
--- a/src/libs/Letta/Generated/Letta.StepsClient.RetrieveMetricsForStep.g.cs
+++ b/src/libs/Letta/Generated/Letta.StepsClient.RetrieveMetricsForStep.g.cs
@@ -6,6 +6,19 @@ namespace Letta
public partial class StepsClient
{
+ private static readonly global::Letta.AutoSDKServer[] s_RetrieveMetricsForStepServers = new global::Letta.AutoSDKServer[]
+ { new global::Letta.AutoSDKServer(
+ id: "https-app-letta-com",
+ name: "Letta Cloud",
+ url: "https://app.letta.com/",
+ description: "Letta Cloud"),
+ new global::Letta.AutoSDKServer(
+ id: "http-localhost",
+ name: "Self-hosted",
+ url: "http://localhost:8283/",
+ description: "Self-hosted"),
+ };
+
private static readonly global::Letta.EndPointSecurityRequirement s_RetrieveMetricsForStepSecurityRequirement0 =
new global::Letta.EndPointSecurityRequirement
@@ -86,7 +99,9 @@ partial void ProcessRetrieveMetricsForStepResponseContent(
{
var __pathBuilder = new global::Letta.PathBuilder(
path: $"/v1/steps/{stepId}/metrics",
- baseUri: HttpClient.BaseAddress);
+ baseUri: ResolveBaseUri(
+ servers: s_RetrieveMetricsForStepServers,
+ defaultBaseUrl: "https://app.letta.com/"));
var __path = __pathBuilder.ToString();
__path = global::Letta.AutoSDKRequestOptionsSupport.AppendQueryParameters(
path: __path,
diff --git a/src/libs/Letta/Generated/Letta.StepsClient.RetrieveStep.g.cs b/src/libs/Letta/Generated/Letta.StepsClient.RetrieveStep.g.cs
index ff8b5d6f..bb2c58e1 100644
--- a/src/libs/Letta/Generated/Letta.StepsClient.RetrieveStep.g.cs
+++ b/src/libs/Letta/Generated/Letta.StepsClient.RetrieveStep.g.cs
@@ -6,6 +6,19 @@ namespace Letta
public partial class StepsClient
{
+ private static readonly global::Letta.AutoSDKServer[] s_RetrieveStepServers = new global::Letta.AutoSDKServer[]
+ { new global::Letta.AutoSDKServer(
+ id: "https-app-letta-com",
+ name: "Letta Cloud",
+ url: "https://app.letta.com/",
+ description: "Letta Cloud"),
+ new global::Letta.AutoSDKServer(
+ id: "http-localhost",
+ name: "Self-hosted",
+ url: "http://localhost:8283/",
+ description: "Self-hosted"),
+ };
+
private static readonly global::Letta.EndPointSecurityRequirement s_RetrieveStepSecurityRequirement0 =
new global::Letta.EndPointSecurityRequirement
@@ -86,7 +99,9 @@ partial void ProcessRetrieveStepResponseContent(
{
var __pathBuilder = new global::Letta.PathBuilder(
path: $"/v1/steps/{stepId}",
- baseUri: HttpClient.BaseAddress);
+ baseUri: ResolveBaseUri(
+ servers: s_RetrieveStepServers,
+ defaultBaseUrl: "https://app.letta.com/"));
var __path = __pathBuilder.ToString();
__path = global::Letta.AutoSDKRequestOptionsSupport.AppendQueryParameters(
path: __path,
diff --git a/src/libs/Letta/Generated/Letta.StepsClient.RetrieveTraceForStep.g.cs b/src/libs/Letta/Generated/Letta.StepsClient.RetrieveTraceForStep.g.cs
index 72e734e9..16567e4c 100644
--- a/src/libs/Letta/Generated/Letta.StepsClient.RetrieveTraceForStep.g.cs
+++ b/src/libs/Letta/Generated/Letta.StepsClient.RetrieveTraceForStep.g.cs
@@ -6,6 +6,19 @@ namespace Letta
public partial class StepsClient
{
+ private static readonly global::Letta.AutoSDKServer[] s_RetrieveTraceForStepServers = new global::Letta.AutoSDKServer[]
+ { new global::Letta.AutoSDKServer(
+ id: "https-app-letta-com",
+ name: "Letta Cloud",
+ url: "https://app.letta.com/",
+ description: "Letta Cloud"),
+ new global::Letta.AutoSDKServer(
+ id: "http-localhost",
+ name: "Self-hosted",
+ url: "http://localhost:8283/",
+ description: "Self-hosted"),
+ };
+
private static readonly global::Letta.EndPointSecurityRequirement s_RetrieveTraceForStepSecurityRequirement0 =
new global::Letta.EndPointSecurityRequirement
@@ -85,7 +98,9 @@ partial void ProcessRetrieveTraceForStepResponseContent(
{
var __pathBuilder = new global::Letta.PathBuilder(
path: $"/v1/steps/{stepId}/trace",
- baseUri: HttpClient.BaseAddress);
+ baseUri: ResolveBaseUri(
+ servers: s_RetrieveTraceForStepServers,
+ defaultBaseUrl: "https://app.letta.com/"));
var __path = __pathBuilder.ToString();
__path = global::Letta.AutoSDKRequestOptionsSupport.AppendQueryParameters(
path: __path,
diff --git a/src/libs/Letta/Generated/Letta.StepsClient.g.cs b/src/libs/Letta/Generated/Letta.StepsClient.g.cs
index 74184ee3..b9f1db4f 100644
--- a/src/libs/Letta/Generated/Letta.StepsClient.g.cs
+++ b/src/libs/Letta/Generated/Letta.StepsClient.g.cs
@@ -20,7 +20,7 @@ public sealed partial class StepsClient : global::Letta.IStepsClient, global::Sy
public global::System.Net.Http.HttpClient HttpClient { get; }
///
- public System.Uri? BaseUri => HttpClient.BaseAddress;
+ public System.Uri? BaseUri => ResolveDisplayedBaseUri();
///
public global::System.Collections.Generic.List Authorizations { get; }
@@ -33,12 +33,43 @@ public sealed partial class StepsClient : global::Letta.IStepsClient, global::Sy
///
public global::Letta.AutoSDKClientOptions Options { get; }
+
+
+ internal global::Letta.AutoSDKServerConfiguration AutoSDKServerConfiguration { get; set; } = new global::Letta.AutoSDKServerConfiguration();
///
///
///
public global::System.Text.Json.Serialization.JsonSerializerContext JsonSerializerContext { get; set; } = global::Letta.SourceGenerationContext.Default;
+
+ private static readonly global::Letta.AutoSDKServer[] s_availableServers = new global::Letta.AutoSDKServer[]
+ { new global::Letta.AutoSDKServer(
+ id: "https-app-letta-com",
+ name: "Letta Cloud",
+ url: "https://app.letta.com/",
+ description: "Letta Cloud"),
+ new global::Letta.AutoSDKServer(
+ id: "http-localhost",
+ name: "Self-hosted",
+ url: "http://localhost:8283/",
+ description: "Self-hosted"),
+ };
+
+ ///
+ /// The server options available for this client.
+ ///
+ public global::System.Collections.Generic.IReadOnlyList AvailableServers => s_availableServers;
+
+ ///
+ /// The currently selected server for this client, if any.
+ ///
+ public global::Letta.AutoSDKServer? SelectedServer
+ {
+ get => ResolveSelectedServer();
+ set => SelectServer(value);
+ }
+
///
/// Creates a new instance of the StepsClient.
/// If no httpClient is provided, a new one will be created.
@@ -85,6 +116,8 @@ public StepsClient(
Options = options ?? new global::Letta.AutoSDKClientOptions();
_disposeHttpClient = disposeHttpClient;
+ AutoSDKServerConfiguration.ExplicitBaseUri = baseUri ?? httpClient?.BaseAddress;
+
Initialized(HttpClient);
}
@@ -111,5 +144,117 @@ partial void ProcessResponseContent(
global::System.Net.Http.HttpClient client,
global::System.Net.Http.HttpResponseMessage response,
ref string content);
+
+
+ ///
+ /// Selects one of the generated server options by id.
+ ///
+ public bool TrySelectServer(string serverId)
+ {
+ if (string.IsNullOrWhiteSpace(serverId))
+ {
+ return false;
+ }
+
+ foreach (var server in s_availableServers)
+ {
+ if (string.Equals(server.Id, serverId, global::System.StringComparison.OrdinalIgnoreCase))
+ {
+ AutoSDKServerConfiguration.SelectedServer = server;
+ AutoSDKServerConfiguration.ExplicitBaseUri = null;
+ return true;
+ }
+ }
+
+ return false;
+ }
+
+ ///
+ /// Clears the currently selected server.
+ ///
+ public void ClearSelectedServer()
+ {
+ AutoSDKServerConfiguration.SelectedServer = null;
+ }
+
+ private global::Letta.AutoSDKServer? ResolveSelectedServer()
+ {
+ var selectedServer = AutoSDKServerConfiguration.SelectedServer;
+ if (selectedServer is null)
+ {
+ return null;
+ }
+
+ foreach (var server in s_availableServers)
+ {
+ if (string.Equals(server.Id, selectedServer.Id, global::System.StringComparison.Ordinal))
+ {
+ return server;
+ }
+ }
+
+ return null;
+ }
+
+ private void SelectServer(global::Letta.AutoSDKServer? server)
+ {
+ if (server is null)
+ {
+ AutoSDKServerConfiguration.SelectedServer = null;
+ return;
+ }
+
+ foreach (var candidate in s_availableServers)
+ {
+ if (string.Equals(candidate.Id, server.Id, global::System.StringComparison.Ordinal))
+ {
+ AutoSDKServerConfiguration.SelectedServer = candidate;
+ AutoSDKServerConfiguration.ExplicitBaseUri = null;
+ return;
+ }
+ }
+
+ throw new global::System.ArgumentException("The provided server is not available for this client.", nameof(server));
+ }
+
+ private global::System.Uri? ResolveDisplayedBaseUri()
+ {
+ if (AutoSDKServerConfiguration.ExplicitBaseUri is global::System.Uri explicitBaseUri)
+ {
+ return explicitBaseUri;
+ }
+
+ return ResolveSelectedServer()?.Uri ?? HttpClient.BaseAddress;
+ }
+
+ private global::System.Uri? ResolveBaseUri(
+ global::Letta.AutoSDKServer[] servers,
+ string defaultBaseUrl)
+ {
+ if (AutoSDKServerConfiguration.ExplicitBaseUri is global::System.Uri explicitBaseUri)
+ {
+ return explicitBaseUri;
+ }
+
+ if (AutoSDKServerConfiguration.SelectedServer is global::Letta.AutoSDKServer selectedServer)
+ {
+ foreach (var server in servers)
+ {
+ if (string.Equals(server.Id, selectedServer.Id, global::System.StringComparison.Ordinal))
+ {
+ return server.Uri;
+ }
+ }
+ }
+
+ if (servers.Length > 0)
+ {
+ return servers[0].Uri;
+ }
+
+ return string.IsNullOrWhiteSpace(defaultBaseUrl)
+ ? HttpClient.BaseAddress
+ : new global::System.Uri(defaultBaseUrl, global::System.UriKind.RelativeOrAbsolute);
+ }
}
}
\ No newline at end of file
diff --git a/src/libs/Letta/Generated/Letta.TagClient.ListTags.g.cs b/src/libs/Letta/Generated/Letta.TagClient.ListTags.g.cs
index b2b8f780..bd235107 100644
--- a/src/libs/Letta/Generated/Letta.TagClient.ListTags.g.cs
+++ b/src/libs/Letta/Generated/Letta.TagClient.ListTags.g.cs
@@ -8,6 +8,19 @@ namespace Letta
public partial class TagClient
{
+ private static readonly global::Letta.AutoSDKServer[] s_ListTagsServers = new global::Letta.AutoSDKServer[]
+ { new global::Letta.AutoSDKServer(
+ id: "https-app-letta-com",
+ name: "Letta Cloud",
+ url: "https://app.letta.com/",
+ description: "Letta Cloud"),
+ new global::Letta.AutoSDKServer(
+ id: "http-localhost",
+ name: "Self-hosted",
+ url: "http://localhost:8283/",
+ description: "Self-hosted"),
+ };
+
private static readonly global::Letta.EndPointSecurityRequirement s_ListTagsSecurityRequirement0 =
new global::Letta.EndPointSecurityRequirement
@@ -133,7 +146,9 @@ partial void ProcessListTagsResponseContent(
{
var __pathBuilder = new global::Letta.PathBuilder(
path: "/v1/tags/",
- baseUri: HttpClient.BaseAddress);
+ baseUri: ResolveBaseUri(
+ servers: s_ListTagsServers,
+ defaultBaseUrl: "https://app.letta.com/"));
__pathBuilder
.AddOptionalParameter("before", before)
.AddOptionalParameter("after", after)
diff --git a/src/libs/Letta/Generated/Letta.TagClient.g.cs b/src/libs/Letta/Generated/Letta.TagClient.g.cs
index 6141e8fc..8c2496a5 100644
--- a/src/libs/Letta/Generated/Letta.TagClient.g.cs
+++ b/src/libs/Letta/Generated/Letta.TagClient.g.cs
@@ -20,7 +20,7 @@ public sealed partial class TagClient : global::Letta.ITagClient, global::System
public global::System.Net.Http.HttpClient HttpClient { get; }
///
- public System.Uri? BaseUri => HttpClient.BaseAddress;
+ public System.Uri? BaseUri => ResolveDisplayedBaseUri();
///
public global::System.Collections.Generic.List Authorizations { get; }
@@ -33,12 +33,43 @@ public sealed partial class TagClient : global::Letta.ITagClient, global::System
///
public global::Letta.AutoSDKClientOptions Options { get; }
+
+
+ internal global::Letta.AutoSDKServerConfiguration AutoSDKServerConfiguration { get; set; } = new global::Letta.AutoSDKServerConfiguration();
///
///
///
public global::System.Text.Json.Serialization.JsonSerializerContext JsonSerializerContext { get; set; } = global::Letta.SourceGenerationContext.Default;
+
+ private static readonly global::Letta.AutoSDKServer[] s_availableServers = new global::Letta.AutoSDKServer[]
+ { new global::Letta.AutoSDKServer(
+ id: "https-app-letta-com",
+ name: "Letta Cloud",
+ url: "https://app.letta.com/",
+ description: "Letta Cloud"),
+ new global::Letta.AutoSDKServer(
+ id: "http-localhost",
+ name: "Self-hosted",
+ url: "http://localhost:8283/",
+ description: "Self-hosted"),
+ };
+
+ ///
+ /// The server options available for this client.
+ ///
+ public global::System.Collections.Generic.IReadOnlyList AvailableServers => s_availableServers;
+
+ ///
+ /// The currently selected server for this client, if any.
+ ///
+ public global::Letta.AutoSDKServer? SelectedServer
+ {
+ get => ResolveSelectedServer();
+ set => SelectServer(value);
+ }
+
///
/// Creates a new instance of the TagClient.
/// If no httpClient is provided, a new one will be created.
@@ -85,6 +116,8 @@ public TagClient(
Options = options ?? new global::Letta.AutoSDKClientOptions();
_disposeHttpClient = disposeHttpClient;
+ AutoSDKServerConfiguration.ExplicitBaseUri = baseUri ?? httpClient?.BaseAddress;
+
Initialized(HttpClient);
}
@@ -111,5 +144,117 @@ partial void ProcessResponseContent(
global::System.Net.Http.HttpClient client,
global::System.Net.Http.HttpResponseMessage response,
ref string content);
+
+
+ ///
+ /// Selects one of the generated server options by id.
+ ///
+ public bool TrySelectServer(string serverId)
+ {
+ if (string.IsNullOrWhiteSpace(serverId))
+ {
+ return false;
+ }
+
+ foreach (var server in s_availableServers)
+ {
+ if (string.Equals(server.Id, serverId, global::System.StringComparison.OrdinalIgnoreCase))
+ {
+ AutoSDKServerConfiguration.SelectedServer = server;
+ AutoSDKServerConfiguration.ExplicitBaseUri = null;
+ return true;
+ }
+ }
+
+ return false;
+ }
+
+ ///
+ /// Clears the currently selected server.
+ ///
+ public void ClearSelectedServer()
+ {
+ AutoSDKServerConfiguration.SelectedServer = null;
+ }
+
+ private global::Letta.AutoSDKServer? ResolveSelectedServer()
+ {
+ var selectedServer = AutoSDKServerConfiguration.SelectedServer;
+ if (selectedServer is null)
+ {
+ return null;
+ }
+
+ foreach (var server in s_availableServers)
+ {
+ if (string.Equals(server.Id, selectedServer.Id, global::System.StringComparison.Ordinal))
+ {
+ return server;
+ }
+ }
+
+ return null;
+ }
+
+ private void SelectServer(global::Letta.AutoSDKServer? server)
+ {
+ if (server is null)
+ {
+ AutoSDKServerConfiguration.SelectedServer = null;
+ return;
+ }
+
+ foreach (var candidate in s_availableServers)
+ {
+ if (string.Equals(candidate.Id, server.Id, global::System.StringComparison.Ordinal))
+ {
+ AutoSDKServerConfiguration.SelectedServer = candidate;
+ AutoSDKServerConfiguration.ExplicitBaseUri = null;
+ return;
+ }
+ }
+
+ throw new global::System.ArgumentException("The provided server is not available for this client.", nameof(server));
+ }
+
+ private global::System.Uri? ResolveDisplayedBaseUri()
+ {
+ if (AutoSDKServerConfiguration.ExplicitBaseUri is global::System.Uri explicitBaseUri)
+ {
+ return explicitBaseUri;
+ }
+
+ return ResolveSelectedServer()?.Uri ?? HttpClient.BaseAddress;
+ }
+
+ private global::System.Uri? ResolveBaseUri(
+ global::Letta.AutoSDKServer[] servers,
+ string defaultBaseUrl)
+ {
+ if (AutoSDKServerConfiguration.ExplicitBaseUri is global::System.Uri explicitBaseUri)
+ {
+ return explicitBaseUri;
+ }
+
+ if (AutoSDKServerConfiguration.SelectedServer is global::Letta.AutoSDKServer selectedServer)
+ {
+ foreach (var server in servers)
+ {
+ if (string.Equals(server.Id, selectedServer.Id, global::System.StringComparison.Ordinal))
+ {
+ return server.Uri;
+ }
+ }
+ }
+
+ if (servers.Length > 0)
+ {
+ return servers[0].Uri;
+ }
+
+ return string.IsNullOrWhiteSpace(defaultBaseUrl)
+ ? HttpClient.BaseAddress
+ : new global::System.Uri(defaultBaseUrl, global::System.UriKind.RelativeOrAbsolute);
+ }
}
}
\ No newline at end of file
diff --git a/src/libs/Letta/Generated/Letta.TemplatesClient.TemplatesCreateAgentsFromTemplate.g.cs b/src/libs/Letta/Generated/Letta.TemplatesClient.TemplatesCreateAgentsFromTemplate.g.cs
index 8f82daf6..508b7dac 100644
--- a/src/libs/Letta/Generated/Letta.TemplatesClient.TemplatesCreateAgentsFromTemplate.g.cs
+++ b/src/libs/Letta/Generated/Letta.TemplatesClient.TemplatesCreateAgentsFromTemplate.g.cs
@@ -6,6 +6,19 @@ namespace Letta
public partial class TemplatesClient
{
+ private static readonly global::Letta.AutoSDKServer[] s_TemplatesCreateAgentsFromTemplateServers = new global::Letta.AutoSDKServer[]
+ { new global::Letta.AutoSDKServer(
+ id: "https-app-letta-com",
+ name: "Letta Cloud",
+ url: "https://app.letta.com/",
+ description: "Letta Cloud"),
+ new global::Letta.AutoSDKServer(
+ id: "http-localhost",
+ name: "Self-hosted",
+ url: "http://localhost:8283/",
+ description: "Self-hosted"),
+ };
+
private static readonly global::Letta.EndPointSecurityRequirement s_TemplatesCreateAgentsFromTemplateSecurityRequirement0 =
new global::Letta.EndPointSecurityRequirement
@@ -92,7 +105,9 @@ partial void ProcessTemplatesCreateAgentsFromTemplateResponse(
{
var __pathBuilder = new global::Letta.PathBuilder(
path: $"/v1/templates/{projectId}/{templateVersion}/agents",
- baseUri: HttpClient.BaseAddress);
+ baseUri: ResolveBaseUri(
+ servers: s_TemplatesCreateAgentsFromTemplateServers,
+ defaultBaseUrl: "https://app.letta.com/"));
var __path = __pathBuilder.ToString();
__path = global::Letta.AutoSDKRequestOptionsSupport.AppendQueryParameters(
path: __path,
diff --git a/src/libs/Letta/Generated/Letta.TemplatesClient.TemplatesCreateAgentsFromTemplateNoProject.g.cs b/src/libs/Letta/Generated/Letta.TemplatesClient.TemplatesCreateAgentsFromTemplateNoProject.g.cs
index b12fdce6..5149d09e 100644
--- a/src/libs/Letta/Generated/Letta.TemplatesClient.TemplatesCreateAgentsFromTemplateNoProject.g.cs
+++ b/src/libs/Letta/Generated/Letta.TemplatesClient.TemplatesCreateAgentsFromTemplateNoProject.g.cs
@@ -6,6 +6,19 @@ namespace Letta
public partial class TemplatesClient
{
+ private static readonly global::Letta.AutoSDKServer[] s_TemplatesCreateAgentsFromTemplateNoProjectServers = new global::Letta.AutoSDKServer[]
+ { new global::Letta.AutoSDKServer(
+ id: "https-app-letta-com",
+ name: "Letta Cloud",
+ url: "https://app.letta.com/",
+ description: "Letta Cloud"),
+ new global::Letta.AutoSDKServer(
+ id: "http-localhost",
+ name: "Self-hosted",
+ url: "http://localhost:8283/",
+ description: "Self-hosted"),
+ };
+
private static readonly global::Letta.EndPointSecurityRequirement s_TemplatesCreateAgentsFromTemplateNoProjectSecurityRequirement0 =
new global::Letta.EndPointSecurityRequirement
@@ -92,7 +105,9 @@ partial void ProcessTemplatesCreateAgentsFromTemplateNoProjectResponseContent(
{
var __pathBuilder = new global::Letta.PathBuilder(
path: $"/v1/templates/{templateVersion}/agents",
- baseUri: HttpClient.BaseAddress);
+ baseUri: ResolveBaseUri(
+ servers: s_TemplatesCreateAgentsFromTemplateNoProjectServers,
+ defaultBaseUrl: "https://app.letta.com/"));
var __path = __pathBuilder.ToString();
__path = global::Letta.AutoSDKRequestOptionsSupport.AppendQueryParameters(
path: __path,
diff --git a/src/libs/Letta/Generated/Letta.TemplatesClient.TemplatesCreateTemplate.g.cs b/src/libs/Letta/Generated/Letta.TemplatesClient.TemplatesCreateTemplate.g.cs
index 3c2373df..f7912f6c 100644
--- a/src/libs/Letta/Generated/Letta.TemplatesClient.TemplatesCreateTemplate.g.cs
+++ b/src/libs/Letta/Generated/Letta.TemplatesClient.TemplatesCreateTemplate.g.cs
@@ -6,6 +6,19 @@ namespace Letta
public partial class TemplatesClient
{
+ private static readonly global::Letta.AutoSDKServer[] s_TemplatesCreateTemplateServers = new global::Letta.AutoSDKServer[]
+ { new global::Letta.AutoSDKServer(
+ id: "https-app-letta-com",
+ name: "Letta Cloud",
+ url: "https://app.letta.com/",
+ description: "Letta Cloud"),
+ new global::Letta.AutoSDKServer(
+ id: "http-localhost",
+ name: "Self-hosted",
+ url: "http://localhost:8283/",
+ description: "Self-hosted"),
+ };
+
private static readonly global::Letta.EndPointSecurityRequirement s_TemplatesCreateTemplateSecurityRequirement0 =
new global::Letta.EndPointSecurityRequirement
@@ -90,7 +103,9 @@ partial void ProcessTemplatesCreateTemplateResponseContent(
{
var __pathBuilder = new global::Letta.PathBuilder(
path: $"/v1/templates/{projectId}",
- baseUri: HttpClient.BaseAddress);
+ baseUri: ResolveBaseUri(
+ servers: s_TemplatesCreateTemplateServers,
+ defaultBaseUrl: "https://app.letta.com/"));
var __path = __pathBuilder.ToString();
__path = global::Letta.AutoSDKRequestOptionsSupport.AppendQueryParameters(
path: __path,
diff --git a/src/libs/Letta/Generated/Letta.TemplatesClient.TemplatesCreateTemplateNoProject.g.cs b/src/libs/Letta/Generated/Letta.TemplatesClient.TemplatesCreateTemplateNoProject.g.cs
index 409dc798..d2eff7e7 100644
--- a/src/libs/Letta/Generated/Letta.TemplatesClient.TemplatesCreateTemplateNoProject.g.cs
+++ b/src/libs/Letta/Generated/Letta.TemplatesClient.TemplatesCreateTemplateNoProject.g.cs
@@ -6,6 +6,19 @@ namespace Letta
public partial class TemplatesClient
{
+ private static readonly global::Letta.AutoSDKServer[] s_TemplatesCreateTemplateNoProjectServers = new global::Letta.AutoSDKServer[]
+ { new global::Letta.AutoSDKServer(
+ id: "https-app-letta-com",
+ name: "Letta Cloud",
+ url: "https://app.letta.com/",
+ description: "Letta Cloud"),
+ new global::Letta.AutoSDKServer(
+ id: "http-localhost",
+ name: "Self-hosted",
+ url: "http://localhost:8283/",
+ description: "Self-hosted"),
+ };
+
private static readonly global::Letta.EndPointSecurityRequirement s_TemplatesCreateTemplateNoProjectSecurityRequirement0 =
new global::Letta.EndPointSecurityRequirement
@@ -85,7 +98,9 @@ partial void ProcessTemplatesCreateTemplateNoProjectResponseContent(
{
var __pathBuilder = new global::Letta.PathBuilder(
path: "/v1/templates",
- baseUri: HttpClient.BaseAddress);
+ baseUri: ResolveBaseUri(
+ servers: s_TemplatesCreateTemplateNoProjectServers,
+ defaultBaseUrl: "https://app.letta.com/"));
var __path = __pathBuilder.ToString();
__path = global::Letta.AutoSDKRequestOptionsSupport.AppendQueryParameters(
path: __path,
diff --git a/src/libs/Letta/Generated/Letta.TemplatesClient.TemplatesDeleteTemplate.g.cs b/src/libs/Letta/Generated/Letta.TemplatesClient.TemplatesDeleteTemplate.g.cs
index c2834730..2943bd77 100644
--- a/src/libs/Letta/Generated/Letta.TemplatesClient.TemplatesDeleteTemplate.g.cs
+++ b/src/libs/Letta/Generated/Letta.TemplatesClient.TemplatesDeleteTemplate.g.cs
@@ -6,6 +6,19 @@ namespace Letta
public partial class TemplatesClient
{
+ private static readonly global::Letta.AutoSDKServer[] s_TemplatesDeleteTemplateServers = new global::Letta.AutoSDKServer[]
+ { new global::Letta.AutoSDKServer(
+ id: "https-app-letta-com",
+ name: "Letta Cloud",
+ url: "https://app.letta.com/",
+ description: "Letta Cloud"),
+ new global::Letta.AutoSDKServer(
+ id: "http-localhost",
+ name: "Self-hosted",
+ url: "http://localhost:8283/",
+ description: "Self-hosted"),
+ };
+
private static readonly global::Letta.EndPointSecurityRequirement s_TemplatesDeleteTemplateSecurityRequirement0 =
new global::Letta.EndPointSecurityRequirement
@@ -97,7 +110,9 @@ partial void ProcessTemplatesDeleteTemplateResponseContent(
{
var __pathBuilder = new global::Letta.PathBuilder(
path: $"/v1/templates/{projectId}/{templateName}",
- baseUri: HttpClient.BaseAddress);
+ baseUri: ResolveBaseUri(
+ servers: s_TemplatesDeleteTemplateServers,
+ defaultBaseUrl: "https://app.letta.com/"));
var __path = __pathBuilder.ToString();
__path = global::Letta.AutoSDKRequestOptionsSupport.AppendQueryParameters(
path: __path,
diff --git a/src/libs/Letta/Generated/Letta.TemplatesClient.TemplatesDeleteTemplateNoProject.g.cs b/src/libs/Letta/Generated/Letta.TemplatesClient.TemplatesDeleteTemplateNoProject.g.cs
index e3f09802..7c210945 100644
--- a/src/libs/Letta/Generated/Letta.TemplatesClient.TemplatesDeleteTemplateNoProject.g.cs
+++ b/src/libs/Letta/Generated/Letta.TemplatesClient.TemplatesDeleteTemplateNoProject.g.cs
@@ -6,6 +6,19 @@ namespace Letta
public partial class TemplatesClient
{
+ private static readonly global::Letta.AutoSDKServer[] s_TemplatesDeleteTemplateNoProjectServers = new global::Letta.AutoSDKServer[]
+ { new global::Letta.AutoSDKServer(
+ id: "https-app-letta-com",
+ name: "Letta Cloud",
+ url: "https://app.letta.com/",
+ description: "Letta Cloud"),
+ new global::Letta.AutoSDKServer(
+ id: "http-localhost",
+ name: "Self-hosted",
+ url: "http://localhost:8283/",
+ description: "Self-hosted"),
+ };
+
private static readonly global::Letta.EndPointSecurityRequirement s_TemplatesDeleteTemplateNoProjectSecurityRequirement0 =
new global::Letta.EndPointSecurityRequirement
@@ -92,7 +105,9 @@ partial void ProcessTemplatesDeleteTemplateNoProjectResponseContent(
{
var __pathBuilder = new global::Letta.PathBuilder(
path: $"/v1/templates/{templateName}",
- baseUri: HttpClient.BaseAddress);
+ baseUri: ResolveBaseUri(
+ servers: s_TemplatesDeleteTemplateNoProjectServers,
+ defaultBaseUrl: "https://app.letta.com/"));
var __path = __pathBuilder.ToString();
__path = global::Letta.AutoSDKRequestOptionsSupport.AppendQueryParameters(
path: __path,
diff --git a/src/libs/Letta/Generated/Letta.TemplatesClient.TemplatesForkTemplate.g.cs b/src/libs/Letta/Generated/Letta.TemplatesClient.TemplatesForkTemplate.g.cs
index c849c513..23bd8b57 100644
--- a/src/libs/Letta/Generated/Letta.TemplatesClient.TemplatesForkTemplate.g.cs
+++ b/src/libs/Letta/Generated/Letta.TemplatesClient.TemplatesForkTemplate.g.cs
@@ -6,6 +6,19 @@ namespace Letta
public partial class TemplatesClient
{
+ private static readonly global::Letta.AutoSDKServer[] s_TemplatesForkTemplateServers = new global::Letta.AutoSDKServer[]
+ { new global::Letta.AutoSDKServer(
+ id: "https-app-letta-com",
+ name: "Letta Cloud",
+ url: "https://app.letta.com/",
+ description: "Letta Cloud"),
+ new global::Letta.AutoSDKServer(
+ id: "http-localhost",
+ name: "Self-hosted",
+ url: "http://localhost:8283/",
+ description: "Self-hosted"),
+ };
+
private static readonly global::Letta.EndPointSecurityRequirement s_TemplatesForkTemplateSecurityRequirement0 =
new global::Letta.EndPointSecurityRequirement
@@ -97,7 +110,9 @@ partial void ProcessTemplatesForkTemplateResponseContent(
{
var __pathBuilder = new global::Letta.PathBuilder(
path: $"/v1/templates/{projectId}/{templateVersion}/fork",
- baseUri: HttpClient.BaseAddress);
+ baseUri: ResolveBaseUri(
+ servers: s_TemplatesForkTemplateServers,
+ defaultBaseUrl: "https://app.letta.com/"));
var __path = __pathBuilder.ToString();
__path = global::Letta.AutoSDKRequestOptionsSupport.AppendQueryParameters(
path: __path,
diff --git a/src/libs/Letta/Generated/Letta.TemplatesClient.TemplatesGetTemplateSnapshot.g.cs b/src/libs/Letta/Generated/Letta.TemplatesClient.TemplatesGetTemplateSnapshot.g.cs
index ece65333..ab3cec9a 100644
--- a/src/libs/Letta/Generated/Letta.TemplatesClient.TemplatesGetTemplateSnapshot.g.cs
+++ b/src/libs/Letta/Generated/Letta.TemplatesClient.TemplatesGetTemplateSnapshot.g.cs
@@ -6,6 +6,19 @@ namespace Letta
public partial class TemplatesClient
{
+ private static readonly global::Letta.AutoSDKServer[] s_TemplatesGetTemplateSnapshotServers = new global::Letta.AutoSDKServer[]
+ { new global::Letta.AutoSDKServer(
+ id: "https-app-letta-com",
+ name: "Letta Cloud",
+ url: "https://app.letta.com/",
+ description: "Letta Cloud"),
+ new global::Letta.AutoSDKServer(
+ id: "http-localhost",
+ name: "Self-hosted",
+ url: "http://localhost:8283/",
+ description: "Self-hosted"),
+ };
+
private static readonly global::Letta.EndPointSecurityRequirement s_TemplatesGetTemplateSnapshotSecurityRequirement0 =
new global::Letta.EndPointSecurityRequirement
@@ -89,7 +102,9 @@ partial void ProcessTemplatesGetTemplateSnapshotResponseContent(
{
var __pathBuilder = new global::Letta.PathBuilder(
path: $"/v1/templates/{projectId}/{templateVersion}/snapshot",
- baseUri: HttpClient.BaseAddress);
+ baseUri: ResolveBaseUri(
+ servers: s_TemplatesGetTemplateSnapshotServers,
+ defaultBaseUrl: "https://app.letta.com/"));
var __path = __pathBuilder.ToString();
__path = global::Letta.AutoSDKRequestOptionsSupport.AppendQueryParameters(
path: __path,
diff --git a/src/libs/Letta/Generated/Letta.TemplatesClient.TemplatesLegacyMigration.g.cs b/src/libs/Letta/Generated/Letta.TemplatesClient.TemplatesLegacyMigration.g.cs
index 15483168..e58de410 100644
--- a/src/libs/Letta/Generated/Letta.TemplatesClient.TemplatesLegacyMigration.g.cs
+++ b/src/libs/Letta/Generated/Letta.TemplatesClient.TemplatesLegacyMigration.g.cs
@@ -6,6 +6,19 @@ namespace Letta
public partial class TemplatesClient
{
+ private static readonly global::Letta.AutoSDKServer[] s_TemplatesLegacyMigrationServers = new global::Letta.AutoSDKServer[]
+ { new global::Letta.AutoSDKServer(
+ id: "https-app-letta-com",
+ name: "Letta Cloud",
+ url: "https://app.letta.com/",
+ description: "Letta Cloud"),
+ new global::Letta.AutoSDKServer(
+ id: "http-localhost",
+ name: "Self-hosted",
+ url: "http://localhost:8283/",
+ description: "Self-hosted"),
+ };
+
private static readonly global::Letta.EndPointSecurityRequirement s_TemplatesLegacyMigrationSecurityRequirement0 =
new global::Letta.EndPointSecurityRequirement
@@ -92,7 +105,9 @@ partial void ProcessTemplatesLegacyMigrationResponseContent(
{
var __pathBuilder = new global::Letta.PathBuilder(
path: $"/v1/legacy-templates/{templateId}/migrates",
- baseUri: HttpClient.BaseAddress);
+ baseUri: ResolveBaseUri(
+ servers: s_TemplatesLegacyMigrationServers,
+ defaultBaseUrl: "https://app.letta.com/"));
var __path = __pathBuilder.ToString();
__path = global::Letta.AutoSDKRequestOptionsSupport.AppendQueryParameters(
path: __path,
diff --git a/src/libs/Letta/Generated/Letta.TemplatesClient.TemplatesListTemplateVersions.g.cs b/src/libs/Letta/Generated/Letta.TemplatesClient.TemplatesListTemplateVersions.g.cs
index 3748bb9e..3f9bf4dc 100644
--- a/src/libs/Letta/Generated/Letta.TemplatesClient.TemplatesListTemplateVersions.g.cs
+++ b/src/libs/Letta/Generated/Letta.TemplatesClient.TemplatesListTemplateVersions.g.cs
@@ -6,6 +6,19 @@ namespace Letta
public partial class TemplatesClient
{
+ private static readonly global::Letta.AutoSDKServer[] s_TemplatesListTemplateVersionsServers = new global::Letta.AutoSDKServer[]
+ { new global::Letta.AutoSDKServer(
+ id: "https-app-letta-com",
+ name: "Letta Cloud",
+ url: "https://app.letta.com/",
+ description: "Letta Cloud"),
+ new global::Letta.AutoSDKServer(
+ id: "http-localhost",
+ name: "Self-hosted",
+ url: "http://localhost:8283/",
+ description: "Self-hosted"),
+ };
+
private static readonly global::Letta.EndPointSecurityRequirement s_TemplatesListTemplateVersionsSecurityRequirement0 =
new global::Letta.EndPointSecurityRequirement
@@ -99,7 +112,9 @@ partial void ProcessTemplatesListTemplateVersionsResponseContent(
{
var __pathBuilder = new global::Letta.PathBuilder(
path: $"/v1/templates/{projectId}/{name}/versions",
- baseUri: HttpClient.BaseAddress);
+ baseUri: ResolveBaseUri(
+ servers: s_TemplatesListTemplateVersionsServers,
+ defaultBaseUrl: "https://app.letta.com/"));
__pathBuilder
.AddOptionalParameter("offset", offset?.ToString())
.AddOptionalParameter("limit", limit)
diff --git a/src/libs/Letta/Generated/Letta.TemplatesClient.TemplatesListTemplates.g.cs b/src/libs/Letta/Generated/Letta.TemplatesClient.TemplatesListTemplates.g.cs
index 1233b97e..18b07298 100644
--- a/src/libs/Letta/Generated/Letta.TemplatesClient.TemplatesListTemplates.g.cs
+++ b/src/libs/Letta/Generated/Letta.TemplatesClient.TemplatesListTemplates.g.cs
@@ -6,6 +6,19 @@ namespace Letta
public partial class TemplatesClient
{
+ private static readonly global::Letta.AutoSDKServer[] s_TemplatesListTemplatesServers = new global::Letta.AutoSDKServer[]
+ { new global::Letta.AutoSDKServer(
+ id: "https-app-letta-com",
+ name: "Letta Cloud",
+ url: "https://app.letta.com/",
+ description: "Letta Cloud"),
+ new global::Letta.AutoSDKServer(
+ id: "http-localhost",
+ name: "Self-hosted",
+ url: "http://localhost:8283/",
+ description: "Self-hosted"),
+ };
+
private static readonly global::Letta.EndPointSecurityRequirement s_TemplatesListTemplatesSecurityRequirement0 =
new global::Letta.EndPointSecurityRequirement
@@ -129,7 +142,9 @@ partial void ProcessTemplatesListTemplatesResponseContent(
{
var __pathBuilder = new global::Letta.PathBuilder(
path: "/v1/templates",
- baseUri: HttpClient.BaseAddress);
+ baseUri: ResolveBaseUri(
+ servers: s_TemplatesListTemplatesServers,
+ defaultBaseUrl: "https://app.letta.com/"));
__pathBuilder
.AddOptionalParameter("offset", offset?.ToString())
.AddOptionalParameter("exact", exact)
diff --git a/src/libs/Letta/Generated/Letta.TemplatesClient.TemplatesMigrateDeployment.g.cs b/src/libs/Letta/Generated/Letta.TemplatesClient.TemplatesMigrateDeployment.g.cs
index 2cccfcac..40030536 100644
--- a/src/libs/Letta/Generated/Letta.TemplatesClient.TemplatesMigrateDeployment.g.cs
+++ b/src/libs/Letta/Generated/Letta.TemplatesClient.TemplatesMigrateDeployment.g.cs
@@ -6,6 +6,19 @@ namespace Letta
public partial class TemplatesClient
{
+ private static readonly global::Letta.AutoSDKServer[] s_TemplatesMigrateDeploymentServers = new global::Letta.AutoSDKServer[]
+ { new global::Letta.AutoSDKServer(
+ id: "https-app-letta-com",
+ name: "Letta Cloud",
+ url: "https://app.letta.com/",
+ description: "Letta Cloud"),
+ new global::Letta.AutoSDKServer(
+ id: "http-localhost",
+ name: "Self-hosted",
+ url: "http://localhost:8283/",
+ description: "Self-hosted"),
+ };
+
private static readonly global::Letta.EndPointSecurityRequirement s_TemplatesMigrateDeploymentSecurityRequirement0 =
new global::Letta.EndPointSecurityRequirement
@@ -102,7 +115,9 @@ partial void ProcessTemplatesMigrateDeploymentResponseContent(
{
var __pathBuilder = new global::Letta.PathBuilder(
path: $"/v1/templates/{projectId}/{templateName}/deployments/{deploymentId}/migrate",
- baseUri: HttpClient.BaseAddress);
+ baseUri: ResolveBaseUri(
+ servers: s_TemplatesMigrateDeploymentServers,
+ defaultBaseUrl: "https://app.letta.com/"));
var __path = __pathBuilder.ToString();
__path = global::Letta.AutoSDKRequestOptionsSupport.AppendQueryParameters(
path: __path,
diff --git a/src/libs/Letta/Generated/Letta.TemplatesClient.TemplatesRenameTemplate.g.cs b/src/libs/Letta/Generated/Letta.TemplatesClient.TemplatesRenameTemplate.g.cs
index b397885c..eb18dfd9 100644
--- a/src/libs/Letta/Generated/Letta.TemplatesClient.TemplatesRenameTemplate.g.cs
+++ b/src/libs/Letta/Generated/Letta.TemplatesClient.TemplatesRenameTemplate.g.cs
@@ -6,6 +6,19 @@ namespace Letta
public partial class TemplatesClient
{
+ private static readonly global::Letta.AutoSDKServer[] s_TemplatesRenameTemplateServers = new global::Letta.AutoSDKServer[]
+ { new global::Letta.AutoSDKServer(
+ id: "https-app-letta-com",
+ name: "Letta Cloud",
+ url: "https://app.letta.com/",
+ description: "Letta Cloud"),
+ new global::Letta.AutoSDKServer(
+ id: "http-localhost",
+ name: "Self-hosted",
+ url: "http://localhost:8283/",
+ description: "Self-hosted"),
+ };
+
private static readonly global::Letta.EndPointSecurityRequirement s_TemplatesRenameTemplateSecurityRequirement0 =
new global::Letta.EndPointSecurityRequirement
@@ -97,7 +110,9 @@ partial void ProcessTemplatesRenameTemplateResponseContent(
{
var __pathBuilder = new global::Letta.PathBuilder(
path: $"/v1/templates/{projectId}/{templateName}/name",
- baseUri: HttpClient.BaseAddress);
+ baseUri: ResolveBaseUri(
+ servers: s_TemplatesRenameTemplateServers,
+ defaultBaseUrl: "https://app.letta.com/"));
var __path = __pathBuilder.ToString();
__path = global::Letta.AutoSDKRequestOptionsSupport.AppendQueryParameters(
path: __path,
diff --git a/src/libs/Letta/Generated/Letta.TemplatesClient.TemplatesRollbackTemplate.g.cs b/src/libs/Letta/Generated/Letta.TemplatesClient.TemplatesRollbackTemplate.g.cs
index a56c13a5..2bb7109b 100644
--- a/src/libs/Letta/Generated/Letta.TemplatesClient.TemplatesRollbackTemplate.g.cs
+++ b/src/libs/Letta/Generated/Letta.TemplatesClient.TemplatesRollbackTemplate.g.cs
@@ -6,6 +6,19 @@ namespace Letta
public partial class TemplatesClient
{
+ private static readonly global::Letta.AutoSDKServer[] s_TemplatesRollbackTemplateServers = new global::Letta.AutoSDKServer[]
+ { new global::Letta.AutoSDKServer(
+ id: "https-app-letta-com",
+ name: "Letta Cloud",
+ url: "https://app.letta.com/",
+ description: "Letta Cloud"),
+ new global::Letta.AutoSDKServer(
+ id: "http-localhost",
+ name: "Self-hosted",
+ url: "http://localhost:8283/",
+ description: "Self-hosted"),
+ };
+
private static readonly global::Letta.EndPointSecurityRequirement s_TemplatesRollbackTemplateSecurityRequirement0 =
new global::Letta.EndPointSecurityRequirement
@@ -97,7 +110,9 @@ partial void ProcessTemplatesRollbackTemplateResponseContent(
{
var __pathBuilder = new global::Letta.PathBuilder(
path: $"/v1/templates/{projectId}/{templateName}/rollback",
- baseUri: HttpClient.BaseAddress);
+ baseUri: ResolveBaseUri(
+ servers: s_TemplatesRollbackTemplateServers,
+ defaultBaseUrl: "https://app.letta.com/"));
var __path = __pathBuilder.ToString();
__path = global::Letta.AutoSDKRequestOptionsSupport.AppendQueryParameters(
path: __path,
diff --git a/src/libs/Letta/Generated/Letta.TemplatesClient.TemplatesRollbackTemplateNoProject.g.cs b/src/libs/Letta/Generated/Letta.TemplatesClient.TemplatesRollbackTemplateNoProject.g.cs
index 09f20ad3..6f4748da 100644
--- a/src/libs/Letta/Generated/Letta.TemplatesClient.TemplatesRollbackTemplateNoProject.g.cs
+++ b/src/libs/Letta/Generated/Letta.TemplatesClient.TemplatesRollbackTemplateNoProject.g.cs
@@ -6,6 +6,19 @@ namespace Letta
public partial class TemplatesClient
{
+ private static readonly global::Letta.AutoSDKServer[] s_TemplatesRollbackTemplateNoProjectServers = new global::Letta.AutoSDKServer[]
+ { new global::Letta.AutoSDKServer(
+ id: "https-app-letta-com",
+ name: "Letta Cloud",
+ url: "https://app.letta.com/",
+ description: "Letta Cloud"),
+ new global::Letta.AutoSDKServer(
+ id: "http-localhost",
+ name: "Self-hosted",
+ url: "http://localhost:8283/",
+ description: "Self-hosted"),
+ };
+
private static readonly global::Letta.EndPointSecurityRequirement s_TemplatesRollbackTemplateNoProjectSecurityRequirement0 =
new global::Letta.EndPointSecurityRequirement
@@ -92,7 +105,9 @@ partial void ProcessTemplatesRollbackTemplateNoProjectResponseContent(
{
var __pathBuilder = new global::Letta.PathBuilder(
path: $"/v1/templates/{templateName}/rollback",
- baseUri: HttpClient.BaseAddress);
+ baseUri: ResolveBaseUri(
+ servers: s_TemplatesRollbackTemplateNoProjectServers,
+ defaultBaseUrl: "https://app.letta.com/"));
var __path = __pathBuilder.ToString();
__path = global::Letta.AutoSDKRequestOptionsSupport.AppendQueryParameters(
path: __path,
diff --git a/src/libs/Letta/Generated/Letta.TemplatesClient.TemplatesSaveTemplateVersion.g.cs b/src/libs/Letta/Generated/Letta.TemplatesClient.TemplatesSaveTemplateVersion.g.cs
index 849a6a33..4fdeccc6 100644
--- a/src/libs/Letta/Generated/Letta.TemplatesClient.TemplatesSaveTemplateVersion.g.cs
+++ b/src/libs/Letta/Generated/Letta.TemplatesClient.TemplatesSaveTemplateVersion.g.cs
@@ -6,6 +6,19 @@ namespace Letta
public partial class TemplatesClient
{
+ private static readonly global::Letta.AutoSDKServer[] s_TemplatesSaveTemplateVersionServers = new global::Letta.AutoSDKServer[]
+ { new global::Letta.AutoSDKServer(
+ id: "https-app-letta-com",
+ name: "Letta Cloud",
+ url: "https://app.letta.com/",
+ description: "Letta Cloud"),
+ new global::Letta.AutoSDKServer(
+ id: "http-localhost",
+ name: "Self-hosted",
+ url: "http://localhost:8283/",
+ description: "Self-hosted"),
+ };
+
private static readonly global::Letta.EndPointSecurityRequirement s_TemplatesSaveTemplateVersionSecurityRequirement0 =
new global::Letta.EndPointSecurityRequirement
@@ -97,7 +110,9 @@ partial void ProcessTemplatesSaveTemplateVersionResponseContent(
{
var __pathBuilder = new global::Letta.PathBuilder(
path: $"/v1/templates/{projectId}/{templateName}",
- baseUri: HttpClient.BaseAddress);
+ baseUri: ResolveBaseUri(
+ servers: s_TemplatesSaveTemplateVersionServers,
+ defaultBaseUrl: "https://app.letta.com/"));
var __path = __pathBuilder.ToString();
__path = global::Letta.AutoSDKRequestOptionsSupport.AppendQueryParameters(
path: __path,
diff --git a/src/libs/Letta/Generated/Letta.TemplatesClient.TemplatesSaveTemplateVersionNoProject.g.cs b/src/libs/Letta/Generated/Letta.TemplatesClient.TemplatesSaveTemplateVersionNoProject.g.cs
index 8c5d8d4c..c6bee5d4 100644
--- a/src/libs/Letta/Generated/Letta.TemplatesClient.TemplatesSaveTemplateVersionNoProject.g.cs
+++ b/src/libs/Letta/Generated/Letta.TemplatesClient.TemplatesSaveTemplateVersionNoProject.g.cs
@@ -6,6 +6,19 @@ namespace Letta
public partial class TemplatesClient
{
+ private static readonly global::Letta.AutoSDKServer[] s_TemplatesSaveTemplateVersionNoProjectServers = new global::Letta.AutoSDKServer[]
+ { new global::Letta.AutoSDKServer(
+ id: "https-app-letta-com",
+ name: "Letta Cloud",
+ url: "https://app.letta.com/",
+ description: "Letta Cloud"),
+ new global::Letta.AutoSDKServer(
+ id: "http-localhost",
+ name: "Self-hosted",
+ url: "http://localhost:8283/",
+ description: "Self-hosted"),
+ };
+
private static readonly global::Letta.EndPointSecurityRequirement s_TemplatesSaveTemplateVersionNoProjectSecurityRequirement0 =
new global::Letta.EndPointSecurityRequirement
@@ -92,7 +105,9 @@ partial void ProcessTemplatesSaveTemplateVersionNoProjectResponseContent(
{
var __pathBuilder = new global::Letta.PathBuilder(
path: $"/v1/templates/{templateName}/save",
- baseUri: HttpClient.BaseAddress);
+ baseUri: ResolveBaseUri(
+ servers: s_TemplatesSaveTemplateVersionNoProjectServers,
+ defaultBaseUrl: "https://app.letta.com/"));
var __path = __pathBuilder.ToString();
__path = global::Letta.AutoSDKRequestOptionsSupport.AppendQueryParameters(
path: __path,
diff --git a/src/libs/Letta/Generated/Letta.TemplatesClient.TemplatesSetCurrentTemplateFromSnapshot.g.cs b/src/libs/Letta/Generated/Letta.TemplatesClient.TemplatesSetCurrentTemplateFromSnapshot.g.cs
index 41847521..31384363 100644
--- a/src/libs/Letta/Generated/Letta.TemplatesClient.TemplatesSetCurrentTemplateFromSnapshot.g.cs
+++ b/src/libs/Letta/Generated/Letta.TemplatesClient.TemplatesSetCurrentTemplateFromSnapshot.g.cs
@@ -6,6 +6,19 @@ namespace Letta
public partial class TemplatesClient
{
+ private static readonly global::Letta.AutoSDKServer[] s_TemplatesSetCurrentTemplateFromSnapshotServers = new global::Letta.AutoSDKServer[]
+ { new global::Letta.AutoSDKServer(
+ id: "https-app-letta-com",
+ name: "Letta Cloud",
+ url: "https://app.letta.com/",
+ description: "Letta Cloud"),
+ new global::Letta.AutoSDKServer(
+ id: "http-localhost",
+ name: "Self-hosted",
+ url: "http://localhost:8283/",
+ description: "Self-hosted"),
+ };
+
private static readonly global::Letta.EndPointSecurityRequirement s_TemplatesSetCurrentTemplateFromSnapshotSecurityRequirement0 =
new global::Letta.EndPointSecurityRequirement
@@ -97,7 +110,9 @@ partial void ProcessTemplatesSetCurrentTemplateFromSnapshotResponseContent(
{
var __pathBuilder = new global::Letta.PathBuilder(
path: $"/v1/templates/{projectId}/{templateVersion}/snapshot",
- baseUri: HttpClient.BaseAddress);
+ baseUri: ResolveBaseUri(
+ servers: s_TemplatesSetCurrentTemplateFromSnapshotServers,
+ defaultBaseUrl: "https://app.letta.com/"));
var __path = __pathBuilder.ToString();
__path = global::Letta.AutoSDKRequestOptionsSupport.AppendQueryParameters(
path: __path,
diff --git a/src/libs/Letta/Generated/Letta.TemplatesClient.TemplatesUpdateCurrentTemplateFromAgentFile.g.cs b/src/libs/Letta/Generated/Letta.TemplatesClient.TemplatesUpdateCurrentTemplateFromAgentFile.g.cs
index 04b695ef..0f8128d0 100644
--- a/src/libs/Letta/Generated/Letta.TemplatesClient.TemplatesUpdateCurrentTemplateFromAgentFile.g.cs
+++ b/src/libs/Letta/Generated/Letta.TemplatesClient.TemplatesUpdateCurrentTemplateFromAgentFile.g.cs
@@ -6,6 +6,19 @@ namespace Letta
public partial class TemplatesClient
{
+ private static readonly global::Letta.AutoSDKServer[] s_TemplatesUpdateCurrentTemplateFromAgentFileServers = new global::Letta.AutoSDKServer[]
+ { new global::Letta.AutoSDKServer(
+ id: "https-app-letta-com",
+ name: "Letta Cloud",
+ url: "https://app.letta.com/",
+ description: "Letta Cloud"),
+ new global::Letta.AutoSDKServer(
+ id: "http-localhost",
+ name: "Self-hosted",
+ url: "http://localhost:8283/",
+ description: "Self-hosted"),
+ };
+
private static readonly global::Letta.EndPointSecurityRequirement s_TemplatesUpdateCurrentTemplateFromAgentFileSecurityRequirement0 =
new global::Letta.EndPointSecurityRequirement
@@ -97,7 +110,9 @@ partial void ProcessTemplatesUpdateCurrentTemplateFromAgentFileResponseContent(
{
var __pathBuilder = new global::Letta.PathBuilder(
path: $"/v1/templates/{projectId}/{templateName}/agent-file",
- baseUri: HttpClient.BaseAddress);
+ baseUri: ResolveBaseUri(
+ servers: s_TemplatesUpdateCurrentTemplateFromAgentFileServers,
+ defaultBaseUrl: "https://app.letta.com/"));
var __path = __pathBuilder.ToString();
__path = global::Letta.AutoSDKRequestOptionsSupport.AppendQueryParameters(
path: __path,
diff --git a/src/libs/Letta/Generated/Letta.TemplatesClient.TemplatesUpdateCurrentTemplateFromAgentFileNoProject.g.cs b/src/libs/Letta/Generated/Letta.TemplatesClient.TemplatesUpdateCurrentTemplateFromAgentFileNoProject.g.cs
index 71842e67..03d53938 100644
--- a/src/libs/Letta/Generated/Letta.TemplatesClient.TemplatesUpdateCurrentTemplateFromAgentFileNoProject.g.cs
+++ b/src/libs/Letta/Generated/Letta.TemplatesClient.TemplatesUpdateCurrentTemplateFromAgentFileNoProject.g.cs
@@ -6,6 +6,19 @@ namespace Letta
public partial class TemplatesClient
{
+ private static readonly global::Letta.AutoSDKServer[] s_TemplatesUpdateCurrentTemplateFromAgentFileNoProjectServers = new global::Letta.AutoSDKServer[]
+ { new global::Letta.AutoSDKServer(
+ id: "https-app-letta-com",
+ name: "Letta Cloud",
+ url: "https://app.letta.com/",
+ description: "Letta Cloud"),
+ new global::Letta.AutoSDKServer(
+ id: "http-localhost",
+ name: "Self-hosted",
+ url: "http://localhost:8283/",
+ description: "Self-hosted"),
+ };
+
private static readonly global::Letta.EndPointSecurityRequirement s_TemplatesUpdateCurrentTemplateFromAgentFileNoProjectSecurityRequirement0 =
new global::Letta.EndPointSecurityRequirement
@@ -92,7 +105,9 @@ partial void ProcessTemplatesUpdateCurrentTemplateFromAgentFileNoProjectResponse
{
var __pathBuilder = new global::Letta.PathBuilder(
path: $"/v1/templates/{templateName}",
- baseUri: HttpClient.BaseAddress);
+ baseUri: ResolveBaseUri(
+ servers: s_TemplatesUpdateCurrentTemplateFromAgentFileNoProjectServers,
+ defaultBaseUrl: "https://app.letta.com/"));
var __path = __pathBuilder.ToString();
__path = global::Letta.AutoSDKRequestOptionsSupport.AppendQueryParameters(
path: __path,
diff --git a/src/libs/Letta/Generated/Letta.TemplatesClient.TemplatesUpdateTemplateDescription.g.cs b/src/libs/Letta/Generated/Letta.TemplatesClient.TemplatesUpdateTemplateDescription.g.cs
index b66c2dd6..ece5d88c 100644
--- a/src/libs/Letta/Generated/Letta.TemplatesClient.TemplatesUpdateTemplateDescription.g.cs
+++ b/src/libs/Letta/Generated/Letta.TemplatesClient.TemplatesUpdateTemplateDescription.g.cs
@@ -6,6 +6,19 @@ namespace Letta
public partial class TemplatesClient
{
+ private static readonly global::Letta.AutoSDKServer[] s_TemplatesUpdateTemplateDescriptionServers = new global::Letta.AutoSDKServer[]
+ { new global::Letta.AutoSDKServer(
+ id: "https-app-letta-com",
+ name: "Letta Cloud",
+ url: "https://app.letta.com/",
+ description: "Letta Cloud"),
+ new global::Letta.AutoSDKServer(
+ id: "http-localhost",
+ name: "Self-hosted",
+ url: "http://localhost:8283/",
+ description: "Self-hosted"),
+ };
+
private static readonly global::Letta.EndPointSecurityRequirement s_TemplatesUpdateTemplateDescriptionSecurityRequirement0 =
new global::Letta.EndPointSecurityRequirement
@@ -97,7 +110,9 @@ partial void ProcessTemplatesUpdateTemplateDescriptionResponseContent(
{
var __pathBuilder = new global::Letta.PathBuilder(
path: $"/v1/templates/{projectId}/{templateName}/description",
- baseUri: HttpClient.BaseAddress);
+ baseUri: ResolveBaseUri(
+ servers: s_TemplatesUpdateTemplateDescriptionServers,
+ defaultBaseUrl: "https://app.letta.com/"));
var __path = __pathBuilder.ToString();
__path = global::Letta.AutoSDKRequestOptionsSupport.AppendQueryParameters(
path: __path,
diff --git a/src/libs/Letta/Generated/Letta.TemplatesClient.g.cs b/src/libs/Letta/Generated/Letta.TemplatesClient.g.cs
index 61d5c870..0829345b 100644
--- a/src/libs/Letta/Generated/Letta.TemplatesClient.g.cs
+++ b/src/libs/Letta/Generated/Letta.TemplatesClient.g.cs
@@ -20,7 +20,7 @@ public sealed partial class TemplatesClient : global::Letta.ITemplatesClient, gl
public global::System.Net.Http.HttpClient HttpClient { get; }
///
- public System.Uri? BaseUri => HttpClient.BaseAddress;
+ public System.Uri? BaseUri => ResolveDisplayedBaseUri();
///
public global::System.Collections.Generic.List Authorizations { get; }
@@ -33,12 +33,43 @@ public sealed partial class TemplatesClient : global::Letta.ITemplatesClient, gl
///
public global::Letta.AutoSDKClientOptions Options { get; }
+
+
+ internal global::Letta.AutoSDKServerConfiguration AutoSDKServerConfiguration { get; set; } = new global::Letta.AutoSDKServerConfiguration();
///
///
///
public global::System.Text.Json.Serialization.JsonSerializerContext JsonSerializerContext { get; set; } = global::Letta.SourceGenerationContext.Default;
+
+ private static readonly global::Letta.AutoSDKServer[] s_availableServers = new global::Letta.AutoSDKServer[]
+ { new global::Letta.AutoSDKServer(
+ id: "https-app-letta-com",
+ name: "Letta Cloud",
+ url: "https://app.letta.com/",
+ description: "Letta Cloud"),
+ new global::Letta.AutoSDKServer(
+ id: "http-localhost",
+ name: "Self-hosted",
+ url: "http://localhost:8283/",
+ description: "Self-hosted"),
+ };
+
+ ///
+ /// The server options available for this client.
+ ///
+ public global::System.Collections.Generic.IReadOnlyList AvailableServers => s_availableServers;
+
+ ///
+ /// The currently selected server for this client, if any.
+ ///
+ public global::Letta.AutoSDKServer? SelectedServer
+ {
+ get => ResolveSelectedServer();
+ set => SelectServer(value);
+ }
+
///
/// Creates a new instance of the TemplatesClient.
/// If no httpClient is provided, a new one will be created.
@@ -85,6 +116,8 @@ public TemplatesClient(
Options = options ?? new global::Letta.AutoSDKClientOptions();
_disposeHttpClient = disposeHttpClient;
+ AutoSDKServerConfiguration.ExplicitBaseUri = baseUri ?? httpClient?.BaseAddress;
+
Initialized(HttpClient);
}
@@ -111,5 +144,117 @@ partial void ProcessResponseContent(
global::System.Net.Http.HttpClient client,
global::System.Net.Http.HttpResponseMessage response,
ref string content);
+
+
+ ///
+ /// Selects one of the generated server options by id.
+ ///
+ public bool TrySelectServer(string serverId)
+ {
+ if (string.IsNullOrWhiteSpace(serverId))
+ {
+ return false;
+ }
+
+ foreach (var server in s_availableServers)
+ {
+ if (string.Equals(server.Id, serverId, global::System.StringComparison.OrdinalIgnoreCase))
+ {
+ AutoSDKServerConfiguration.SelectedServer = server;
+ AutoSDKServerConfiguration.ExplicitBaseUri = null;
+ return true;
+ }
+ }
+
+ return false;
+ }
+
+ ///
+ /// Clears the currently selected server.
+ ///
+ public void ClearSelectedServer()
+ {
+ AutoSDKServerConfiguration.SelectedServer = null;
+ }
+
+ private global::Letta.AutoSDKServer? ResolveSelectedServer()
+ {
+ var selectedServer = AutoSDKServerConfiguration.SelectedServer;
+ if (selectedServer is null)
+ {
+ return null;
+ }
+
+ foreach (var server in s_availableServers)
+ {
+ if (string.Equals(server.Id, selectedServer.Id, global::System.StringComparison.Ordinal))
+ {
+ return server;
+ }
+ }
+
+ return null;
+ }
+
+ private void SelectServer(global::Letta.AutoSDKServer? server)
+ {
+ if (server is null)
+ {
+ AutoSDKServerConfiguration.SelectedServer = null;
+ return;
+ }
+
+ foreach (var candidate in s_availableServers)
+ {
+ if (string.Equals(candidate.Id, server.Id, global::System.StringComparison.Ordinal))
+ {
+ AutoSDKServerConfiguration.SelectedServer = candidate;
+ AutoSDKServerConfiguration.ExplicitBaseUri = null;
+ return;
+ }
+ }
+
+ throw new global::System.ArgumentException("The provided server is not available for this client.", nameof(server));
+ }
+
+ private global::System.Uri? ResolveDisplayedBaseUri()
+ {
+ if (AutoSDKServerConfiguration.ExplicitBaseUri is global::System.Uri explicitBaseUri)
+ {
+ return explicitBaseUri;
+ }
+
+ return ResolveSelectedServer()?.Uri ?? HttpClient.BaseAddress;
+ }
+
+ private global::System.Uri? ResolveBaseUri(
+ global::Letta.AutoSDKServer[] servers,
+ string defaultBaseUrl)
+ {
+ if (AutoSDKServerConfiguration.ExplicitBaseUri is global::System.Uri explicitBaseUri)
+ {
+ return explicitBaseUri;
+ }
+
+ if (AutoSDKServerConfiguration.SelectedServer is global::Letta.AutoSDKServer selectedServer)
+ {
+ foreach (var server in servers)
+ {
+ if (string.Equals(server.Id, selectedServer.Id, global::System.StringComparison.Ordinal))
+ {
+ return server.Uri;
+ }
+ }
+ }
+
+ if (servers.Length > 0)
+ {
+ return servers[0].Uri;
+ }
+
+ return string.IsNullOrWhiteSpace(defaultBaseUrl)
+ ? HttpClient.BaseAddress
+ : new global::System.Uri(defaultBaseUrl, global::System.UriKind.RelativeOrAbsolute);
+ }
}
}
\ No newline at end of file
diff --git a/src/libs/Letta/Generated/Letta.ToolsClient.AddBaseTools.g.cs b/src/libs/Letta/Generated/Letta.ToolsClient.AddBaseTools.g.cs
index de8fc547..5eab9365 100644
--- a/src/libs/Letta/Generated/Letta.ToolsClient.AddBaseTools.g.cs
+++ b/src/libs/Letta/Generated/Letta.ToolsClient.AddBaseTools.g.cs
@@ -6,6 +6,19 @@ namespace Letta
public partial class ToolsClient
{
+ private static readonly global::Letta.AutoSDKServer[] s_AddBaseToolsServers = new global::Letta.AutoSDKServer[]
+ { new global::Letta.AutoSDKServer(
+ id: "https-app-letta-com",
+ name: "Letta Cloud",
+ url: "https://app.letta.com/",
+ description: "Letta Cloud"),
+ new global::Letta.AutoSDKServer(
+ id: "http-localhost",
+ name: "Self-hosted",
+ url: "http://localhost:8283/",
+ description: "Self-hosted"),
+ };
+
private static readonly global::Letta.EndPointSecurityRequirement s_AddBaseToolsSecurityRequirement0 =
new global::Letta.EndPointSecurityRequirement
@@ -79,7 +92,9 @@ partial void ProcessAddBaseToolsResponseContent(
{
var __pathBuilder = new global::Letta.PathBuilder(
path: "/v1/tools/add-base-tools",
- baseUri: HttpClient.BaseAddress);
+ baseUri: ResolveBaseUri(
+ servers: s_AddBaseToolsServers,
+ defaultBaseUrl: "https://app.letta.com/"));
var __path = __pathBuilder.ToString();
__path = global::Letta.AutoSDKRequestOptionsSupport.AppendQueryParameters(
path: __path,
diff --git a/src/libs/Letta/Generated/Letta.ToolsClient.AddMcpServer.g.cs b/src/libs/Letta/Generated/Letta.ToolsClient.AddMcpServer.g.cs
index 3ec8c6ee..2986fd9a 100644
--- a/src/libs/Letta/Generated/Letta.ToolsClient.AddMcpServer.g.cs
+++ b/src/libs/Letta/Generated/Letta.ToolsClient.AddMcpServer.g.cs
@@ -6,6 +6,19 @@ namespace Letta
public partial class ToolsClient
{
+ private static readonly global::Letta.AutoSDKServer[] s_AddMcpServerServers = new global::Letta.AutoSDKServer[]
+ { new global::Letta.AutoSDKServer(
+ id: "https-app-letta-com",
+ name: "Letta Cloud",
+ url: "https://app.letta.com/",
+ description: "Letta Cloud"),
+ new global::Letta.AutoSDKServer(
+ id: "http-localhost",
+ name: "Self-hosted",
+ url: "http://localhost:8283/",
+ description: "Self-hosted"),
+ };
+
private static readonly global::Letta.EndPointSecurityRequirement s_AddMcpServerSecurityRequirement0 =
new global::Letta.EndPointSecurityRequirement
@@ -85,7 +98,9 @@ partial void ProcessAddMcpServerResponseContent(
{
var __pathBuilder = new global::Letta.PathBuilder(
path: "/v1/tools/mcp/servers",
- baseUri: HttpClient.BaseAddress);
+ baseUri: ResolveBaseUri(
+ servers: s_AddMcpServerServers,
+ defaultBaseUrl: "https://app.letta.com/"));
var __path = __pathBuilder.ToString();
__path = global::Letta.AutoSDKRequestOptionsSupport.AppendQueryParameters(
path: __path,
diff --git a/src/libs/Letta/Generated/Letta.ToolsClient.AddMcpTool.g.cs b/src/libs/Letta/Generated/Letta.ToolsClient.AddMcpTool.g.cs
index 5475b80a..9ffef3b0 100644
--- a/src/libs/Letta/Generated/Letta.ToolsClient.AddMcpTool.g.cs
+++ b/src/libs/Letta/Generated/Letta.ToolsClient.AddMcpTool.g.cs
@@ -6,6 +6,19 @@ namespace Letta
public partial class ToolsClient
{
+ private static readonly global::Letta.AutoSDKServer[] s_AddMcpToolServers = new global::Letta.AutoSDKServer[]
+ { new global::Letta.AutoSDKServer(
+ id: "https-app-letta-com",
+ name: "Letta Cloud",
+ url: "https://app.letta.com/",
+ description: "Letta Cloud"),
+ new global::Letta.AutoSDKServer(
+ id: "http-localhost",
+ name: "Self-hosted",
+ url: "http://localhost:8283/",
+ description: "Self-hosted"),
+ };
+
private static readonly global::Letta.EndPointSecurityRequirement s_AddMcpToolSecurityRequirement0 =
new global::Letta.EndPointSecurityRequirement
@@ -89,7 +102,9 @@ partial void ProcessAddMcpToolResponseContent(
{
var __pathBuilder = new global::Letta.PathBuilder(
path: $"/v1/tools/mcp/servers/{mcpServerName}/{mcpToolName}",
- baseUri: HttpClient.BaseAddress);
+ baseUri: ResolveBaseUri(
+ servers: s_AddMcpToolServers,
+ defaultBaseUrl: "https://app.letta.com/"));
var __path = __pathBuilder.ToString();
__path = global::Letta.AutoSDKRequestOptionsSupport.AppendQueryParameters(
path: __path,
diff --git a/src/libs/Letta/Generated/Letta.ToolsClient.ConnectMcpServer.g.cs b/src/libs/Letta/Generated/Letta.ToolsClient.ConnectMcpServer.g.cs
index bc3cb98f..a4f6709f 100644
--- a/src/libs/Letta/Generated/Letta.ToolsClient.ConnectMcpServer.g.cs
+++ b/src/libs/Letta/Generated/Letta.ToolsClient.ConnectMcpServer.g.cs
@@ -6,6 +6,19 @@ namespace Letta
public partial class ToolsClient
{
+ private static readonly global::Letta.AutoSDKServer[] s_ConnectMcpServerServers = new global::Letta.AutoSDKServer[]
+ { new global::Letta.AutoSDKServer(
+ id: "https-app-letta-com",
+ name: "Letta Cloud",
+ url: "https://app.letta.com/",
+ description: "Letta Cloud"),
+ new global::Letta.AutoSDKServer(
+ id: "http-localhost",
+ name: "Self-hosted",
+ url: "http://localhost:8283/",
+ description: "Self-hosted"),
+ };
+
private static readonly global::Letta.EndPointSecurityRequirement s_ConnectMcpServerSecurityRequirement0 =
new global::Letta.EndPointSecurityRequirement
@@ -86,7 +99,9 @@ partial void ProcessConnectMcpServerResponseContent(
{
var __pathBuilder = new global::Letta.PathBuilder(
path: "/v1/tools/mcp/servers/connect",
- baseUri: HttpClient.BaseAddress);
+ baseUri: ResolveBaseUri(
+ servers: s_ConnectMcpServerServers,
+ defaultBaseUrl: "https://app.letta.com/"));
var __path = __pathBuilder.ToString();
__path = global::Letta.AutoSDKRequestOptionsSupport.AppendQueryParameters(
path: __path,
diff --git a/src/libs/Letta/Generated/Letta.ToolsClient.CountTools.g.cs b/src/libs/Letta/Generated/Letta.ToolsClient.CountTools.g.cs
index 301a62fe..0b42f273 100644
--- a/src/libs/Letta/Generated/Letta.ToolsClient.CountTools.g.cs
+++ b/src/libs/Letta/Generated/Letta.ToolsClient.CountTools.g.cs
@@ -6,6 +6,19 @@ namespace Letta
public partial class ToolsClient
{
+ private static readonly global::Letta.AutoSDKServer[] s_CountToolsServers = new global::Letta.AutoSDKServer[]
+ { new global::Letta.AutoSDKServer(
+ id: "https-app-letta-com",
+ name: "Letta Cloud",
+ url: "https://app.letta.com/",
+ description: "Letta Cloud"),
+ new global::Letta.AutoSDKServer(
+ id: "http-localhost",
+ name: "Self-hosted",
+ url: "http://localhost:8283/",
+ description: "Self-hosted"),
+ };
+
private static readonly global::Letta.EndPointSecurityRequirement s_CountToolsSecurityRequirement0 =
new global::Letta.EndPointSecurityRequirement
@@ -135,7 +148,9 @@ partial void ProcessCountToolsResponseContent(
{
var __pathBuilder = new global::Letta.PathBuilder(
path: "/v1/tools/count",
- baseUri: HttpClient.BaseAddress);
+ baseUri: ResolveBaseUri(
+ servers: s_CountToolsServers,
+ defaultBaseUrl: "https://app.letta.com/"));
__pathBuilder
.AddOptionalParameter("name", name)
.AddOptionalParameter("names", names?.ToString())
diff --git a/src/libs/Letta/Generated/Letta.ToolsClient.CreateTool.g.cs b/src/libs/Letta/Generated/Letta.ToolsClient.CreateTool.g.cs
index 2f496901..918deab6 100644
--- a/src/libs/Letta/Generated/Letta.ToolsClient.CreateTool.g.cs
+++ b/src/libs/Letta/Generated/Letta.ToolsClient.CreateTool.g.cs
@@ -6,6 +6,19 @@ namespace Letta
public partial class ToolsClient
{
+ private static readonly global::Letta.AutoSDKServer[] s_CreateToolServers = new global::Letta.AutoSDKServer[]
+ { new global::Letta.AutoSDKServer(
+ id: "https-app-letta-com",
+ name: "Letta Cloud",
+ url: "https://app.letta.com/",
+ description: "Letta Cloud"),
+ new global::Letta.AutoSDKServer(
+ id: "http-localhost",
+ name: "Self-hosted",
+ url: "http://localhost:8283/",
+ description: "Self-hosted"),
+ };
+
private static readonly global::Letta.EndPointSecurityRequirement s_CreateToolSecurityRequirement0 =
new global::Letta.EndPointSecurityRequirement
@@ -87,7 +100,9 @@ partial void ProcessCreateToolResponseContent(
{
var __pathBuilder = new global::Letta.PathBuilder(
path: "/v1/tools/",
- baseUri: HttpClient.BaseAddress);
+ baseUri: ResolveBaseUri(
+ servers: s_CreateToolServers,
+ defaultBaseUrl: "https://app.letta.com/"));
var __path = __pathBuilder.ToString();
__path = global::Letta.AutoSDKRequestOptionsSupport.AppendQueryParameters(
path: __path,
diff --git a/src/libs/Letta/Generated/Letta.ToolsClient.DeleteMcpServer.g.cs b/src/libs/Letta/Generated/Letta.ToolsClient.DeleteMcpServer.g.cs
index 58323d77..f6f687f8 100644
--- a/src/libs/Letta/Generated/Letta.ToolsClient.DeleteMcpServer.g.cs
+++ b/src/libs/Letta/Generated/Letta.ToolsClient.DeleteMcpServer.g.cs
@@ -6,6 +6,19 @@ namespace Letta
public partial class ToolsClient
{
+ private static readonly global::Letta.AutoSDKServer[] s_DeleteMcpServerServers = new global::Letta.AutoSDKServer[]
+ { new global::Letta.AutoSDKServer(
+ id: "https-app-letta-com",
+ name: "Letta Cloud",
+ url: "https://app.letta.com/",
+ description: "Letta Cloud"),
+ new global::Letta.AutoSDKServer(
+ id: "http-localhost",
+ name: "Self-hosted",
+ url: "http://localhost:8283/",
+ description: "Self-hosted"),
+ };
+
private static readonly global::Letta.EndPointSecurityRequirement s_DeleteMcpServerSecurityRequirement0 =
new global::Letta.EndPointSecurityRequirement
@@ -84,7 +97,9 @@ partial void ProcessDeleteMcpServerResponseContent(
{
var __pathBuilder = new global::Letta.PathBuilder(
path: $"/v1/tools/mcp/servers/{mcpServerName}",
- baseUri: HttpClient.BaseAddress);
+ baseUri: ResolveBaseUri(
+ servers: s_DeleteMcpServerServers,
+ defaultBaseUrl: "https://app.letta.com/"));
var __path = __pathBuilder.ToString();
__path = global::Letta.AutoSDKRequestOptionsSupport.AppendQueryParameters(
path: __path,
diff --git a/src/libs/Letta/Generated/Letta.ToolsClient.DeleteTool.g.cs b/src/libs/Letta/Generated/Letta.ToolsClient.DeleteTool.g.cs
index a8a4b301..7cae2065 100644
--- a/src/libs/Letta/Generated/Letta.ToolsClient.DeleteTool.g.cs
+++ b/src/libs/Letta/Generated/Letta.ToolsClient.DeleteTool.g.cs
@@ -6,6 +6,19 @@ namespace Letta
public partial class ToolsClient
{
+ private static readonly global::Letta.AutoSDKServer[] s_DeleteToolServers = new global::Letta.AutoSDKServer[]
+ { new global::Letta.AutoSDKServer(
+ id: "https-app-letta-com",
+ name: "Letta Cloud",
+ url: "https://app.letta.com/",
+ description: "Letta Cloud"),
+ new global::Letta.AutoSDKServer(
+ id: "http-localhost",
+ name: "Self-hosted",
+ url: "http://localhost:8283/",
+ description: "Self-hosted"),
+ };
+
private static readonly global::Letta.EndPointSecurityRequirement s_DeleteToolSecurityRequirement0 =
new global::Letta.EndPointSecurityRequirement
@@ -86,7 +99,9 @@ partial void ProcessDeleteToolResponseContent(
{
var __pathBuilder = new global::Letta.PathBuilder(
path: $"/v1/tools/{toolId}",
- baseUri: HttpClient.BaseAddress);
+ baseUri: ResolveBaseUri(
+ servers: s_DeleteToolServers,
+ defaultBaseUrl: "https://app.letta.com/"));
var __path = __pathBuilder.ToString();
__path = global::Letta.AutoSDKRequestOptionsSupport.AppendQueryParameters(
path: __path,
diff --git a/src/libs/Letta/Generated/Letta.ToolsClient.ExecuteMcpTool.g.cs b/src/libs/Letta/Generated/Letta.ToolsClient.ExecuteMcpTool.g.cs
index 58950677..af52718f 100644
--- a/src/libs/Letta/Generated/Letta.ToolsClient.ExecuteMcpTool.g.cs
+++ b/src/libs/Letta/Generated/Letta.ToolsClient.ExecuteMcpTool.g.cs
@@ -6,6 +6,19 @@ namespace Letta
public partial class ToolsClient
{
+ private static readonly global::Letta.AutoSDKServer[] s_ExecuteMcpToolServers = new global::Letta.AutoSDKServer[]
+ { new global::Letta.AutoSDKServer(
+ id: "https-app-letta-com",
+ name: "Letta Cloud",
+ url: "https://app.letta.com/",
+ description: "Letta Cloud"),
+ new global::Letta.AutoSDKServer(
+ id: "http-localhost",
+ name: "Self-hosted",
+ url: "http://localhost:8283/",
+ description: "Self-hosted"),
+ };
+
private static readonly global::Letta.EndPointSecurityRequirement s_ExecuteMcpToolSecurityRequirement0 =
new global::Letta.EndPointSecurityRequirement
@@ -98,7 +111,9 @@ partial void ProcessExecuteMcpToolResponseContent(
{
var __pathBuilder = new global::Letta.PathBuilder(
path: $"/v1/tools/mcp/servers/{mcpServerName}/tools/{toolName}/execute",
- baseUri: HttpClient.BaseAddress);
+ baseUri: ResolveBaseUri(
+ servers: s_ExecuteMcpToolServers,
+ defaultBaseUrl: "https://app.letta.com/"));
var __path = __pathBuilder.ToString();
__path = global::Letta.AutoSDKRequestOptionsSupport.AppendQueryParameters(
path: __path,
diff --git a/src/libs/Letta/Generated/Letta.ToolsClient.ListMcpServers.g.cs b/src/libs/Letta/Generated/Letta.ToolsClient.ListMcpServers.g.cs
index 3a744ea9..59d200bb 100644
--- a/src/libs/Letta/Generated/Letta.ToolsClient.ListMcpServers.g.cs
+++ b/src/libs/Letta/Generated/Letta.ToolsClient.ListMcpServers.g.cs
@@ -6,6 +6,19 @@ namespace Letta
public partial class ToolsClient
{
+ private static readonly global::Letta.AutoSDKServer[] s_ListMcpServersServers = new global::Letta.AutoSDKServer[]
+ { new global::Letta.AutoSDKServer(
+ id: "https-app-letta-com",
+ name: "Letta Cloud",
+ url: "https://app.letta.com/",
+ description: "Letta Cloud"),
+ new global::Letta.AutoSDKServer(
+ id: "http-localhost",
+ name: "Self-hosted",
+ url: "http://localhost:8283/",
+ description: "Self-hosted"),
+ };
+
private static readonly global::Letta.EndPointSecurityRequirement s_ListMcpServersSecurityRequirement0 =
new global::Letta.EndPointSecurityRequirement
@@ -79,7 +92,9 @@ partial void ProcessListMcpServersResponseContent(
{
var __pathBuilder = new global::Letta.PathBuilder(
path: "/v1/tools/mcp/servers",
- baseUri: HttpClient.BaseAddress);
+ baseUri: ResolveBaseUri(
+ servers: s_ListMcpServersServers,
+ defaultBaseUrl: "https://app.letta.com/"));
var __path = __pathBuilder.ToString();
__path = global::Letta.AutoSDKRequestOptionsSupport.AppendQueryParameters(
path: __path,
diff --git a/src/libs/Letta/Generated/Letta.ToolsClient.ListMcpToolsByServer.g.cs b/src/libs/Letta/Generated/Letta.ToolsClient.ListMcpToolsByServer.g.cs
index a646a1aa..4318ff23 100644
--- a/src/libs/Letta/Generated/Letta.ToolsClient.ListMcpToolsByServer.g.cs
+++ b/src/libs/Letta/Generated/Letta.ToolsClient.ListMcpToolsByServer.g.cs
@@ -6,6 +6,19 @@ namespace Letta
public partial class ToolsClient
{
+ private static readonly global::Letta.AutoSDKServer[] s_ListMcpToolsByServerServers = new global::Letta.AutoSDKServer[]
+ { new global::Letta.AutoSDKServer(
+ id: "https-app-letta-com",
+ name: "Letta Cloud",
+ url: "https://app.letta.com/",
+ description: "Letta Cloud"),
+ new global::Letta.AutoSDKServer(
+ id: "http-localhost",
+ name: "Self-hosted",
+ url: "http://localhost:8283/",
+ description: "Self-hosted"),
+ };
+
private static readonly global::Letta.EndPointSecurityRequirement s_ListMcpToolsByServerSecurityRequirement0 =
new global::Letta.EndPointSecurityRequirement
@@ -84,7 +97,9 @@ partial void ProcessListMcpToolsByServerResponseContent(
{
var __pathBuilder = new global::Letta.PathBuilder(
path: $"/v1/tools/mcp/servers/{mcpServerName}/tools",
- baseUri: HttpClient.BaseAddress);
+ baseUri: ResolveBaseUri(
+ servers: s_ListMcpToolsByServerServers,
+ defaultBaseUrl: "https://app.letta.com/"));
var __path = __pathBuilder.ToString();
__path = global::Letta.AutoSDKRequestOptionsSupport.AppendQueryParameters(
path: __path,
diff --git a/src/libs/Letta/Generated/Letta.ToolsClient.ListTools.g.cs b/src/libs/Letta/Generated/Letta.ToolsClient.ListTools.g.cs
index 1b356343..93475795 100644
--- a/src/libs/Letta/Generated/Letta.ToolsClient.ListTools.g.cs
+++ b/src/libs/Letta/Generated/Letta.ToolsClient.ListTools.g.cs
@@ -6,6 +6,19 @@ namespace Letta
public partial class ToolsClient
{
+ private static readonly global::Letta.AutoSDKServer[] s_ListToolsServers = new global::Letta.AutoSDKServer[]
+ { new global::Letta.AutoSDKServer(
+ id: "https-app-letta-com",
+ name: "Letta Cloud",
+ url: "https://app.letta.com/",
+ description: "Letta Cloud"),
+ new global::Letta.AutoSDKServer(
+ id: "http-localhost",
+ name: "Self-hosted",
+ url: "http://localhost:8283/",
+ description: "Self-hosted"),
+ };
+
private static readonly global::Letta.EndPointSecurityRequirement s_ListToolsSecurityRequirement0 =
new global::Letta.EndPointSecurityRequirement
@@ -167,7 +180,9 @@ partial void ProcessListToolsResponseContent(
{
var __pathBuilder = new global::Letta.PathBuilder(
path: "/v1/tools/",
- baseUri: HttpClient.BaseAddress);
+ baseUri: ResolveBaseUri(
+ servers: s_ListToolsServers,
+ defaultBaseUrl: "https://app.letta.com/"));
__pathBuilder
.AddOptionalParameter("before", before)
.AddOptionalParameter("after", after)
diff --git a/src/libs/Letta/Generated/Letta.ToolsClient.McpOauthCallback.g.cs b/src/libs/Letta/Generated/Letta.ToolsClient.McpOauthCallback.g.cs
index 2bbfdba2..cd6319c5 100644
--- a/src/libs/Letta/Generated/Letta.ToolsClient.McpOauthCallback.g.cs
+++ b/src/libs/Letta/Generated/Letta.ToolsClient.McpOauthCallback.g.cs
@@ -6,6 +6,19 @@ namespace Letta
public partial class ToolsClient
{
+ private static readonly global::Letta.AutoSDKServer[] s_McpOauthCallbackServers = new global::Letta.AutoSDKServer[]
+ { new global::Letta.AutoSDKServer(
+ id: "https-app-letta-com",
+ name: "Letta Cloud",
+ url: "https://app.letta.com/",
+ description: "Letta Cloud"),
+ new global::Letta.AutoSDKServer(
+ id: "http-localhost",
+ name: "Self-hosted",
+ url: "http://localhost:8283/",
+ description: "Self-hosted"),
+ };
+
private static readonly global::Letta.EndPointSecurityRequirement s_McpOauthCallbackSecurityRequirement0 =
new global::Letta.EndPointSecurityRequirement
@@ -108,7 +121,9 @@ partial void ProcessMcpOauthCallbackResponseContent(
{
var __pathBuilder = new global::Letta.PathBuilder(
path: "/v1/tools/mcp/oauth/callback",
- baseUri: HttpClient.BaseAddress);
+ baseUri: ResolveBaseUri(
+ servers: s_McpOauthCallbackServers,
+ defaultBaseUrl: "https://app.letta.com/"));
__pathBuilder
.AddOptionalParameter("code", code)
.AddOptionalParameter("state", state)
diff --git a/src/libs/Letta/Generated/Letta.ToolsClient.ModifyTool.g.cs b/src/libs/Letta/Generated/Letta.ToolsClient.ModifyTool.g.cs
index 29f10cb6..73e8e42d 100644
--- a/src/libs/Letta/Generated/Letta.ToolsClient.ModifyTool.g.cs
+++ b/src/libs/Letta/Generated/Letta.ToolsClient.ModifyTool.g.cs
@@ -6,6 +6,19 @@ namespace Letta
public partial class ToolsClient
{
+ private static readonly global::Letta.AutoSDKServer[] s_ModifyToolServers = new global::Letta.AutoSDKServer[]
+ { new global::Letta.AutoSDKServer(
+ id: "https-app-letta-com",
+ name: "Letta Cloud",
+ url: "https://app.letta.com/",
+ description: "Letta Cloud"),
+ new global::Letta.AutoSDKServer(
+ id: "http-localhost",
+ name: "Self-hosted",
+ url: "http://localhost:8283/",
+ description: "Self-hosted"),
+ };
+
private static readonly global::Letta.EndPointSecurityRequirement s_ModifyToolSecurityRequirement0 =
new global::Letta.EndPointSecurityRequirement
@@ -94,7 +107,9 @@ partial void ProcessModifyToolResponseContent(
{
var __pathBuilder = new global::Letta.PathBuilder(
path: $"/v1/tools/{toolId}",
- baseUri: HttpClient.BaseAddress);
+ baseUri: ResolveBaseUri(
+ servers: s_ModifyToolServers,
+ defaultBaseUrl: "https://app.letta.com/"));
var __path = __pathBuilder.ToString();
__path = global::Letta.AutoSDKRequestOptionsSupport.AppendQueryParameters(
path: __path,
diff --git a/src/libs/Letta/Generated/Letta.ToolsClient.ResyncMcpServerTools.g.cs b/src/libs/Letta/Generated/Letta.ToolsClient.ResyncMcpServerTools.g.cs
index f00449aa..0d26cf50 100644
--- a/src/libs/Letta/Generated/Letta.ToolsClient.ResyncMcpServerTools.g.cs
+++ b/src/libs/Letta/Generated/Letta.ToolsClient.ResyncMcpServerTools.g.cs
@@ -6,6 +6,19 @@ namespace Letta
public partial class ToolsClient
{
+ private static readonly global::Letta.AutoSDKServer[] s_ResyncMcpServerToolsServers = new global::Letta.AutoSDKServer[]
+ { new global::Letta.AutoSDKServer(
+ id: "https-app-letta-com",
+ name: "Letta Cloud",
+ url: "https://app.letta.com/",
+ description: "Letta Cloud"),
+ new global::Letta.AutoSDKServer(
+ id: "http-localhost",
+ name: "Self-hosted",
+ url: "http://localhost:8283/",
+ description: "Self-hosted"),
+ };
+
private static readonly global::Letta.EndPointSecurityRequirement s_ResyncMcpServerToolsSecurityRequirement0 =
new global::Letta.EndPointSecurityRequirement
@@ -94,7 +107,9 @@ partial void ProcessResyncMcpServerToolsResponseContent(
{
var __pathBuilder = new global::Letta.PathBuilder(
path: $"/v1/tools/mcp/servers/{mcpServerName}/resync",
- baseUri: HttpClient.BaseAddress);
+ baseUri: ResolveBaseUri(
+ servers: s_ResyncMcpServerToolsServers,
+ defaultBaseUrl: "https://app.letta.com/"));
__pathBuilder
.AddOptionalParameter("agent_id", agentId)
;
diff --git a/src/libs/Letta/Generated/Letta.ToolsClient.RetrieveTool.g.cs b/src/libs/Letta/Generated/Letta.ToolsClient.RetrieveTool.g.cs
index d5b7a757..e51ef962 100644
--- a/src/libs/Letta/Generated/Letta.ToolsClient.RetrieveTool.g.cs
+++ b/src/libs/Letta/Generated/Letta.ToolsClient.RetrieveTool.g.cs
@@ -6,6 +6,19 @@ namespace Letta
public partial class ToolsClient
{
+ private static readonly global::Letta.AutoSDKServer[] s_RetrieveToolServers = new global::Letta.AutoSDKServer[]
+ { new global::Letta.AutoSDKServer(
+ id: "https-app-letta-com",
+ name: "Letta Cloud",
+ url: "https://app.letta.com/",
+ description: "Letta Cloud"),
+ new global::Letta.AutoSDKServer(
+ id: "http-localhost",
+ name: "Self-hosted",
+ url: "http://localhost:8283/",
+ description: "Self-hosted"),
+ };
+
private static readonly global::Letta.EndPointSecurityRequirement s_RetrieveToolSecurityRequirement0 =
new global::Letta.EndPointSecurityRequirement
@@ -86,7 +99,9 @@ partial void ProcessRetrieveToolResponseContent(
{
var __pathBuilder = new global::Letta.PathBuilder(
path: $"/v1/tools/{toolId}",
- baseUri: HttpClient.BaseAddress);
+ baseUri: ResolveBaseUri(
+ servers: s_RetrieveToolServers,
+ defaultBaseUrl: "https://app.letta.com/"));
var __path = __pathBuilder.ToString();
__path = global::Letta.AutoSDKRequestOptionsSupport.AppendQueryParameters(
path: __path,
diff --git a/src/libs/Letta/Generated/Letta.ToolsClient.RunToolFromSource.g.cs b/src/libs/Letta/Generated/Letta.ToolsClient.RunToolFromSource.g.cs
index 77d5ff5a..b16f1f68 100644
--- a/src/libs/Letta/Generated/Letta.ToolsClient.RunToolFromSource.g.cs
+++ b/src/libs/Letta/Generated/Letta.ToolsClient.RunToolFromSource.g.cs
@@ -6,6 +6,19 @@ namespace Letta
public partial class ToolsClient
{
+ private static readonly global::Letta.AutoSDKServer[] s_RunToolFromSourceServers = new global::Letta.AutoSDKServer[]
+ { new global::Letta.AutoSDKServer(
+ id: "https-app-letta-com",
+ name: "Letta Cloud",
+ url: "https://app.letta.com/",
+ description: "Letta Cloud"),
+ new global::Letta.AutoSDKServer(
+ id: "http-localhost",
+ name: "Self-hosted",
+ url: "http://localhost:8283/",
+ description: "Self-hosted"),
+ };
+
private static readonly global::Letta.EndPointSecurityRequirement s_RunToolFromSourceSecurityRequirement0 =
new global::Letta.EndPointSecurityRequirement
@@ -87,7 +100,9 @@ partial void ProcessRunToolFromSourceResponseContent(
{
var __pathBuilder = new global::Letta.PathBuilder(
path: "/v1/tools/run",
- baseUri: HttpClient.BaseAddress);
+ baseUri: ResolveBaseUri(
+ servers: s_RunToolFromSourceServers,
+ defaultBaseUrl: "https://app.letta.com/"));
var __path = __pathBuilder.ToString();
__path = global::Letta.AutoSDKRequestOptionsSupport.AppendQueryParameters(
path: __path,
diff --git a/src/libs/Letta/Generated/Letta.ToolsClient.SearchTools.g.cs b/src/libs/Letta/Generated/Letta.ToolsClient.SearchTools.g.cs
index 20719db9..aaa0fd19 100644
--- a/src/libs/Letta/Generated/Letta.ToolsClient.SearchTools.g.cs
+++ b/src/libs/Letta/Generated/Letta.ToolsClient.SearchTools.g.cs
@@ -6,6 +6,19 @@ namespace Letta
public partial class ToolsClient
{
+ private static readonly global::Letta.AutoSDKServer[] s_SearchToolsServers = new global::Letta.AutoSDKServer[]
+ { new global::Letta.AutoSDKServer(
+ id: "https-app-letta-com",
+ name: "Letta Cloud",
+ url: "https://app.letta.com/",
+ description: "Letta Cloud"),
+ new global::Letta.AutoSDKServer(
+ id: "http-localhost",
+ name: "Self-hosted",
+ url: "http://localhost:8283/",
+ description: "Self-hosted"),
+ };
+
private static readonly global::Letta.EndPointSecurityRequirement s_SearchToolsSecurityRequirement0 =
new global::Letta.EndPointSecurityRequirement
@@ -90,7 +103,9 @@ partial void ProcessSearchToolsResponseContent(
{
var __pathBuilder = new global::Letta.PathBuilder(
path: "/v1/tools/search",
- baseUri: HttpClient.BaseAddress);
+ baseUri: ResolveBaseUri(
+ servers: s_SearchToolsServers,
+ defaultBaseUrl: "https://app.letta.com/"));
var __path = __pathBuilder.ToString();
__path = global::Letta.AutoSDKRequestOptionsSupport.AppendQueryParameters(
path: __path,
diff --git a/src/libs/Letta/Generated/Letta.ToolsClient.TestMcpServer.g.cs b/src/libs/Letta/Generated/Letta.ToolsClient.TestMcpServer.g.cs
index 912c7d11..042fec4f 100644
--- a/src/libs/Letta/Generated/Letta.ToolsClient.TestMcpServer.g.cs
+++ b/src/libs/Letta/Generated/Letta.ToolsClient.TestMcpServer.g.cs
@@ -6,6 +6,19 @@ namespace Letta
public partial class ToolsClient
{
+ private static readonly global::Letta.AutoSDKServer[] s_TestMcpServerServers = new global::Letta.AutoSDKServer[]
+ { new global::Letta.AutoSDKServer(
+ id: "https-app-letta-com",
+ name: "Letta Cloud",
+ url: "https://app.letta.com/",
+ description: "Letta Cloud"),
+ new global::Letta.AutoSDKServer(
+ id: "http-localhost",
+ name: "Self-hosted",
+ url: "http://localhost:8283/",
+ description: "Self-hosted"),
+ };
+
private static readonly global::Letta.EndPointSecurityRequirement s_TestMcpServerSecurityRequirement0 =
new global::Letta.EndPointSecurityRequirement
@@ -86,7 +99,9 @@ partial void ProcessTestMcpServerResponseContent(
{
var __pathBuilder = new global::Letta.PathBuilder(
path: "/v1/tools/mcp/servers/test",
- baseUri: HttpClient.BaseAddress);
+ baseUri: ResolveBaseUri(
+ servers: s_TestMcpServerServers,
+ defaultBaseUrl: "https://app.letta.com/"));
var __path = __pathBuilder.ToString();
__path = global::Letta.AutoSDKRequestOptionsSupport.AppendQueryParameters(
path: __path,
diff --git a/src/libs/Letta/Generated/Letta.ToolsClient.UpdateMcpServer.g.cs b/src/libs/Letta/Generated/Letta.ToolsClient.UpdateMcpServer.g.cs
index 4426d9cf..463fe197 100644
--- a/src/libs/Letta/Generated/Letta.ToolsClient.UpdateMcpServer.g.cs
+++ b/src/libs/Letta/Generated/Letta.ToolsClient.UpdateMcpServer.g.cs
@@ -6,6 +6,19 @@ namespace Letta
public partial class ToolsClient
{
+ private static readonly global::Letta.AutoSDKServer[] s_UpdateMcpServerServers = new global::Letta.AutoSDKServer[]
+ { new global::Letta.AutoSDKServer(
+ id: "https-app-letta-com",
+ name: "Letta Cloud",
+ url: "https://app.letta.com/",
+ description: "Letta Cloud"),
+ new global::Letta.AutoSDKServer(
+ id: "http-localhost",
+ name: "Self-hosted",
+ url: "http://localhost:8283/",
+ description: "Self-hosted"),
+ };
+
private static readonly global::Letta.EndPointSecurityRequirement s_UpdateMcpServerSecurityRequirement0 =
new global::Letta.EndPointSecurityRequirement
@@ -90,7 +103,9 @@ partial void ProcessUpdateMcpServerResponseContent(
{
var __pathBuilder = new global::Letta.PathBuilder(
path: $"/v1/tools/mcp/servers/{mcpServerName}",
- baseUri: HttpClient.BaseAddress);
+ baseUri: ResolveBaseUri(
+ servers: s_UpdateMcpServerServers,
+ defaultBaseUrl: "https://app.letta.com/"));
var __path = __pathBuilder.ToString();
__path = global::Letta.AutoSDKRequestOptionsSupport.AppendQueryParameters(
path: __path,
diff --git a/src/libs/Letta/Generated/Letta.ToolsClient.UpsertTool.g.cs b/src/libs/Letta/Generated/Letta.ToolsClient.UpsertTool.g.cs
index 0703506c..d8766f75 100644
--- a/src/libs/Letta/Generated/Letta.ToolsClient.UpsertTool.g.cs
+++ b/src/libs/Letta/Generated/Letta.ToolsClient.UpsertTool.g.cs
@@ -6,6 +6,19 @@ namespace Letta
public partial class ToolsClient
{
+ private static readonly global::Letta.AutoSDKServer[] s_UpsertToolServers = new global::Letta.AutoSDKServer[]
+ { new global::Letta.AutoSDKServer(
+ id: "https-app-letta-com",
+ name: "Letta Cloud",
+ url: "https://app.letta.com/",
+ description: "Letta Cloud"),
+ new global::Letta.AutoSDKServer(
+ id: "http-localhost",
+ name: "Self-hosted",
+ url: "http://localhost:8283/",
+ description: "Self-hosted"),
+ };
+
private static readonly global::Letta.EndPointSecurityRequirement s_UpsertToolSecurityRequirement0 =
new global::Letta.EndPointSecurityRequirement
@@ -87,7 +100,9 @@ partial void ProcessUpsertToolResponseContent(
{
var __pathBuilder = new global::Letta.PathBuilder(
path: "/v1/tools/",
- baseUri: HttpClient.BaseAddress);
+ baseUri: ResolveBaseUri(
+ servers: s_UpsertToolServers,
+ defaultBaseUrl: "https://app.letta.com/"));
var __path = __pathBuilder.ToString();
__path = global::Letta.AutoSDKRequestOptionsSupport.AppendQueryParameters(
path: __path,
diff --git a/src/libs/Letta/Generated/Letta.ToolsClient.g.cs b/src/libs/Letta/Generated/Letta.ToolsClient.g.cs
index 6eec9988..8acee90c 100644
--- a/src/libs/Letta/Generated/Letta.ToolsClient.g.cs
+++ b/src/libs/Letta/Generated/Letta.ToolsClient.g.cs
@@ -20,7 +20,7 @@ public sealed partial class ToolsClient : global::Letta.IToolsClient, global::Sy
public global::System.Net.Http.HttpClient HttpClient { get; }
///
- public System.Uri? BaseUri => HttpClient.BaseAddress;
+ public System.Uri? BaseUri => ResolveDisplayedBaseUri();
///
public global::System.Collections.Generic.List Authorizations { get; }
@@ -33,12 +33,43 @@ public sealed partial class ToolsClient : global::Letta.IToolsClient, global::Sy
///
public global::Letta.AutoSDKClientOptions Options { get; }
+
+
+ internal global::Letta.AutoSDKServerConfiguration AutoSDKServerConfiguration { get; set; } = new global::Letta.AutoSDKServerConfiguration();
///
///
///
public global::System.Text.Json.Serialization.JsonSerializerContext JsonSerializerContext { get; set; } = global::Letta.SourceGenerationContext.Default;
+
+ private static readonly global::Letta.AutoSDKServer[] s_availableServers = new global::Letta.AutoSDKServer[]
+ { new global::Letta.AutoSDKServer(
+ id: "https-app-letta-com",
+ name: "Letta Cloud",
+ url: "https://app.letta.com/",
+ description: "Letta Cloud"),
+ new global::Letta.AutoSDKServer(
+ id: "http-localhost",
+ name: "Self-hosted",
+ url: "http://localhost:8283/",
+ description: "Self-hosted"),
+ };
+
+ ///
+ /// The server options available for this client.
+ ///
+ public global::System.Collections.Generic.IReadOnlyList AvailableServers => s_availableServers;
+
+ ///
+ /// The currently selected server for this client, if any.
+ ///
+ public global::Letta.AutoSDKServer? SelectedServer
+ {
+ get => ResolveSelectedServer();
+ set => SelectServer(value);
+ }
+
///
/// Creates a new instance of the ToolsClient.
/// If no httpClient is provided, a new one will be created.
@@ -85,6 +116,8 @@ public ToolsClient(
Options = options ?? new global::Letta.AutoSDKClientOptions();
_disposeHttpClient = disposeHttpClient;
+ AutoSDKServerConfiguration.ExplicitBaseUri = baseUri ?? httpClient?.BaseAddress;
+
Initialized(HttpClient);
}
@@ -111,5 +144,117 @@ partial void ProcessResponseContent(
global::System.Net.Http.HttpClient client,
global::System.Net.Http.HttpResponseMessage response,
ref string content);
+
+
+ ///
+ /// Selects one of the generated server options by id.
+ ///
+ public bool TrySelectServer(string serverId)
+ {
+ if (string.IsNullOrWhiteSpace(serverId))
+ {
+ return false;
+ }
+
+ foreach (var server in s_availableServers)
+ {
+ if (string.Equals(server.Id, serverId, global::System.StringComparison.OrdinalIgnoreCase))
+ {
+ AutoSDKServerConfiguration.SelectedServer = server;
+ AutoSDKServerConfiguration.ExplicitBaseUri = null;
+ return true;
+ }
+ }
+
+ return false;
+ }
+
+ ///
+ /// Clears the currently selected server.
+ ///
+ public void ClearSelectedServer()
+ {
+ AutoSDKServerConfiguration.SelectedServer = null;
+ }
+
+ private global::Letta.AutoSDKServer? ResolveSelectedServer()
+ {
+ var selectedServer = AutoSDKServerConfiguration.SelectedServer;
+ if (selectedServer is null)
+ {
+ return null;
+ }
+
+ foreach (var server in s_availableServers)
+ {
+ if (string.Equals(server.Id, selectedServer.Id, global::System.StringComparison.Ordinal))
+ {
+ return server;
+ }
+ }
+
+ return null;
+ }
+
+ private void SelectServer(global::Letta.AutoSDKServer? server)
+ {
+ if (server is null)
+ {
+ AutoSDKServerConfiguration.SelectedServer = null;
+ return;
+ }
+
+ foreach (var candidate in s_availableServers)
+ {
+ if (string.Equals(candidate.Id, server.Id, global::System.StringComparison.Ordinal))
+ {
+ AutoSDKServerConfiguration.SelectedServer = candidate;
+ AutoSDKServerConfiguration.ExplicitBaseUri = null;
+ return;
+ }
+ }
+
+ throw new global::System.ArgumentException("The provided server is not available for this client.", nameof(server));
+ }
+
+ private global::System.Uri? ResolveDisplayedBaseUri()
+ {
+ if (AutoSDKServerConfiguration.ExplicitBaseUri is global::System.Uri explicitBaseUri)
+ {
+ return explicitBaseUri;
+ }
+
+ return ResolveSelectedServer()?.Uri ?? HttpClient.BaseAddress;
+ }
+
+ private global::System.Uri? ResolveBaseUri(
+ global::Letta.AutoSDKServer[] servers,
+ string defaultBaseUrl)
+ {
+ if (AutoSDKServerConfiguration.ExplicitBaseUri is global::System.Uri explicitBaseUri)
+ {
+ return explicitBaseUri;
+ }
+
+ if (AutoSDKServerConfiguration.SelectedServer is global::Letta.AutoSDKServer selectedServer)
+ {
+ foreach (var server in servers)
+ {
+ if (string.Equals(server.Id, selectedServer.Id, global::System.StringComparison.Ordinal))
+ {
+ return server.Uri;
+ }
+ }
+ }
+
+ if (servers.Length > 0)
+ {
+ return servers[0].Uri;
+ }
+
+ return string.IsNullOrWhiteSpace(defaultBaseUrl)
+ ? HttpClient.BaseAddress
+ : new global::System.Uri(defaultBaseUrl, global::System.UriKind.RelativeOrAbsolute);
+ }
}
}
\ No newline at end of file