diff --git a/ui/app/workspace/providers/fragments/openaiConfigFormFragment.tsx b/ui/app/workspace/providers/fragments/openaiConfigFormFragment.tsx
index 0cc5ecaa7b..08894d4c35 100644
--- a/ui/app/workspace/providers/fragments/openaiConfigFormFragment.tsx
+++ b/ui/app/workspace/providers/fragments/openaiConfigFormFragment.tsx
@@ -1,12 +1,12 @@
"use client";
+import { buildProviderUpdatePayload } from "@/app/workspace/providers/views/utils";
import { Button } from "@/components/ui/button";
import { Form, FormControl, FormField, FormItem, FormLabel, FormMessage } from "@/components/ui/form";
import { Switch } from "@/components/ui/switch";
import { getErrorMessage, setProviderFormDirtyState, useAppDispatch } from "@/lib/store";
import { useUpdateProviderMutation } from "@/lib/store/apis/providersApi";
import { ModelProvider } from "@/lib/types/config";
-import { buildProviderUpdatePayload } from "@/app/workspace/providers/views/utils";
import { openaiConfigFormSchema, type OpenAIConfigFormSchema } from "@/lib/types/schemas";
import { RbacOperation, RbacResource, useRbac } from "@enterprise/lib";
import { zodResolver } from "@hookform/resolvers/zod";
@@ -72,9 +72,9 @@ export function OpenAIConfigFormFragment({ provider }: OpenAIConfigFormFragmentP
Disable Store
- With the Responses API, store defaults to true, and when it is on, the generated response is stored for later retrieval via API. OpenAI
- exposes endpoints to retrieve and delete stored responses, so your response IDs become durable server-side objects instead of one-shot
- IDs.
+ With the Responses API, store defaults to true, and when it is on, the generated response is stored for later
+ retrieval via API. OpenAI exposes endpoints to retrieve and delete stored responses, so your response IDs become
+ durable server-side objects instead of one-shot IDs.
diff --git a/ui/app/workspace/providers/views/utils.ts b/ui/app/workspace/providers/views/utils.ts
index e754f8e62c..a047c3f737 100644
--- a/ui/app/workspace/providers/views/utils.ts
+++ b/ui/app/workspace/providers/views/utils.ts
@@ -13,5 +13,6 @@ export const buildProviderUpdatePayload = (provider: ModelProvider, updates: Par
send_back_raw_response: updates.send_back_raw_response ?? provider.send_back_raw_response,
store_raw_request_response: updates.store_raw_request_response ?? provider.store_raw_request_response,
custom_provider_config: updates.custom_provider_config ?? provider.custom_provider_config,
+ openai_config: updates.openai_config ?? provider.openai_config,
};
};
diff --git a/ui/lib/types/schemas.ts b/ui/lib/types/schemas.ts
index 85a12ccbff..9419805393 100644
--- a/ui/lib/types/schemas.ts
+++ b/ui/lib/types/schemas.ts
@@ -405,6 +405,13 @@ export const proxyFormConfigSchema = z
},
);
+// OpenAI Config tab
+export const openaiConfigFormSchema = z.object({
+ disable_store: z.boolean(),
+});
+
+export type OpenAIConfigFormSchema = z.infer;
+
// Allowed requests schema
export const allowedRequestsSchema = z.object({
text_completion: z.boolean(),
@@ -523,6 +530,7 @@ export const addProviderRequestSchema = z.object({
send_back_raw_response: z.boolean().optional(),
store_raw_request_response: z.boolean().optional(),
custom_provider_config: customProviderConfigSchema.optional(),
+ openai_config: openaiConfigFormSchema.optional(),
});
// Update provider request schema
@@ -535,6 +543,7 @@ export const updateProviderRequestSchema = z.object({
send_back_raw_response: z.boolean().optional(),
store_raw_request_response: z.boolean().optional(),
custom_provider_config: customProviderConfigSchema.optional(),
+ openai_config: openaiConfigFormSchema.optional(),
});
// Cache config schema
@@ -640,13 +649,6 @@ export const betaHeadersFormSchema = z.object({
export type BetaHeadersFormSchema = z.infer;
-// OpenAI Config tab
-export const openaiConfigFormSchema = z.object({
- disable_store: z.boolean(),
-});
-
-export type OpenAIConfigFormSchema = z.infer;
-
// OTEL Configuration Schema
export const otelConfigSchema = z
.object({