模型发现
GET /v1/models 会以 OpenAI-compatible list 形态返回 Onehop 模型目录。每个模型都保留 OpenAI 核心字段 id、object、owned_by,所以严格客户端只读 data[].id 也能正常工作。
这个端点需要 API Key,但不创建 usage record、不扣费,也不会转发到模型服务商。
curl https://api.onehop.ai/v1/models \ -H "Authorization: Bearer $ONEHOP_API_KEY"OpenAI SDK
import OpenAI from "openai";
const client = new OpenAI({ apiKey: process.env.ONEHOP_API_KEY, baseURL: "https://api.onehop.ai/v1",});
const models = await client.models.list();console.log(models.data.map((model) => model.id));如果只想要严格 OpenAI-compatible 形态:
curl "https://api.onehop.ai/v1/models?compat=openai" \ -H "Authorization: Bearer $ONEHOP_API_KEY"cc-switch
cc-switch 这类客户端可以通过标准 OpenAI-compatible endpoint 自动发现 Onehop 模型。它们只需要 data[].id,这里永远返回 Onehop canonical model slug,例如 openai/gpt-5.5。
curl "https://api.onehop.ai/v1/models?compat=openai" \ -H "Authorization: Bearer $ONEHOP_API_KEY" \ | jq -r ".data[].id"OpenRouter 风格字段
需要 pricing、architecture、top_provider、supported_parameters 时,使用 compat=openrouter。
curl "https://api.onehop.ai/v1/models?compat=openrouter&supported_parameter=tools" \ -H "Authorization: Bearer $ONEHOP_API_KEY"pricing 会按生态兼容的 per-token 字符串返回。Onehop 扣费真值在 onehop.pricing.our;onehop.pricing.official 只是官方参考价。
ZenMux 风格字段
需要按 prompt、completion、input_cache_read、image、video、audio 等分组的 pricings 时,使用 compat=zenmux。
curl "https://api.onehop.ai/v1/models?compat=zenmux&input_modality=image" \ -H "Authorization: Bearer $ONEHOP_API_KEY"Anthropic-Compatible 列表
Anthropic-compatible 模型发现位于 /anthropic/v1/models,只返回支持 Anthropic Messages 协议的模型。
curl https://api.onehop.ai/anthropic/v1/models \ -H "x-api-key: $ONEHOP_API_KEY"查询参数
常用筛选:
q: 按 id、provider、summary 或 alias 搜索id: 精确匹配 model id、alias 或 provider model idprovider或owned_by: provider slugprotocol:openai_chat、openai_responses、anthropic_messages、openai_images、openai_sora或google_vertex_aicapability: 例如reasoning、tool_calling、vision或image_generationinput_modality/output_modality: 例如text、image、audio或videosupported_parameter: 例如tools、temperature、reasoning或max_tokens
分页和排序:
limit: 默认100,最大500cursor: 使用响应里的next_cursorsort:display_order、id、created_desc、context_desc、price_prompt_asc或price_completion_asc
字段控制:
compat: 默认onehop,也支持openai、openrouter、zenmux、anthropicinclude: 逗号分隔的pricing、official_pricing、capabilities、protocols或aliases