feat: add upstream model sync frontend API

Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent)

Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
This commit is contained in:
benjamin 2026-05-18 19:01:44 +08:00
parent 36c00374d3
commit 3b4eccdd5d
3 changed files with 29 additions and 0 deletions

View File

@ -446,6 +446,20 @@ export async function getAvailableModels(id: number): Promise<ClaudeModel[]> {
return data
}
export interface SyncUpstreamModelsResult {
models: string[]
}
/**
* Sync live supported models from the account's upstream model-list endpoint
* @param id - Account ID
* @returns List of model IDs returned by the upstream
*/
export async function syncUpstreamModels(id: number): Promise<SyncUpstreamModelsResult> {
const { data } = await apiClient.post<SyncUpstreamModelsResult>(`/admin/accounts/${id}/models/sync-upstream`)
return data
}
export interface CRSPreviewAccount {
crs_account_id: string
kind: string
@ -660,6 +674,7 @@ export const accountsAPI = {
resetTempUnschedulable,
setSchedulable,
getAvailableModels,
syncUpstreamModels,
generateAuthUrl,
exchangeCode,
refreshOpenAIToken,

View File

@ -3216,6 +3216,13 @@ export default {
searchModels: 'Search models...',
noMatchingModels: 'No matching models',
fillRelatedModels: 'Sync latest supported models',
syncUpstreamModels: 'Sync upstream supported models',
syncUpstreamModelsLoading: 'Syncing upstream...',
syncUpstreamModelsSuccess: 'Synced {count} new model(s) from upstream ({total} upstream total)',
syncUpstreamModelsNoChanges: 'All {count} upstream model(s) are already in the whitelist',
syncUpstreamModelsEmpty: 'Upstream returned no models to sync',
syncUpstreamModelsFailed: 'Failed to sync upstream models',
syncUpstreamModelsError: 'Failed to sync upstream models: {message}',
clearAllModels: 'Clear all models',
customModelName: 'Custom model name',
enterCustomModelName: 'Enter custom model name',

View File

@ -3360,6 +3360,13 @@ export default {
searchModels: '搜索模型...',
noMatchingModels: '没有匹配的模型',
fillRelatedModels: '同步最新支持模型',
syncUpstreamModels: '同步上游支持的模型',
syncUpstreamModelsLoading: '同步上游中...',
syncUpstreamModelsSuccess: '已从上游同步 {count} 个新模型(上游共 {total} 个)',
syncUpstreamModelsNoChanges: '上游 {count} 个模型均已在白名单中',
syncUpstreamModelsEmpty: '上游没有返回可同步的模型',
syncUpstreamModelsFailed: '同步上游模型失败',
syncUpstreamModelsError: '同步上游模型失败:{message}',
clearAllModels: '清除所有模型',
customModelName: '自定义模型名称',
enterCustomModelName: '输入自定义模型名称',