import { z } from 'zod' const schema = z.object({ name: z.string().default(''), type: z.enum(['openai-compatible', 'anthropic', 'google']), baseUrl: z.string().default(''), apiKey: z.string().default(''), models: z.array(z.string()).default([]) }) /** 新建 API 连接,并一次性添加所选模型 */ export default defineEventHandler(async (event) => { const body = await readJson(event, schema) const id = newId() useDb().transaction(() => { useDb().insert(tables.providers).values({ id, name: body.name.trim() || defaultProviderName(body.type, body.baseUrl), type: body.type, baseUrl: body.baseUrl.trim(), apiKeyEnc: encryptSecret(body.apiKey.trim()) }).run() syncProviderModels(id, body.models) }) return { id } })