/v1/models
接入前查询当前可调用模型 ID。ChatGPT 模型 ID 以此列表为准。
IWKey 统一网关的接入指南:可用模型、快速开始、调用入口、代码示例、SDK 配置与常见问题。
统一查看 Claude、ChatGPT 与视频模型的调用入口、模型 ID 获取方式和状态;完整目录见 模型页面。
接口定义见 /docs/openapi.json;模型详情以实时 /v1/models 与 模型市场 为准。
最后更新:2026-10-13
文本模型替换 SDK base URL;视频模型用 /videos/v1/videos/generations 提交任务。
文本请求实时返回;视频模型按任务轮询,完成后可下载结果,并进入使用记录汇总。
最后更新:2026-09-04
/v1/models接入前查询当前可调用模型 ID。ChatGPT 模型 ID 以此列表为准。
/v1/chat/completionsOpenAI 兼容入口。完成 base URL 替换后,OpenAI SDK、Cursor、Codex CLI、opencode、LangChain 可走此入口。
/v1/messagesAnthropic Messages 原生入口。Claude Code 与 Anthropic SDK 可直接切换到 IWKey base URL。
/videos/v1/videos/generations视频模型异步任务入口。提交 prompt、时长、清晰度和画幅后返回 job_id 与 poll_url。
/videos/v1/videos/jobs/{job_id}优先请求提交响应返回的 poll_url;该地址用于查询任务状态、完成结果、失败原因和视频下载地址。
/videos/api/v3/contents/generations/tasks火山方舟原生格式的视频模型入口。model 可直接填官方 ID(doubao-seedance-2-0-260128 / doubao-seedance-2-0-fast-260128 / doubao-seedance-2-5-260628);顶层不支持的参数会明确报错,不会静默丢弃。
/videos/api/v3/contents/generations/tasks/{id}方舟原生格式的任务查询入口,返回方舟状态枚举(queued / running / succeeded / failed / cancelled / expired)。成功时 content.video_url 为生成引擎官方直链(有效期通常约 24 小时),与标准接口的 video_url 完全一致;若该任务有平台副本,会额外附带 content.platform_video_url 与 content.platform_expires_at(本平台保存 7 天;这两个字段为本平台额外返回,方舟原生格式中没有)。
已经在用火山方舟原生请求格式的开发者,可以直接使用上面的方舟兼容入口;与方舟原生的具体差异见视频模型 API 接入指南「方舟兼容入口:与方舟原生的差异」。
最后更新:2026-09-24
文本高级能力与视频模型异步任务示例,每个场景给出 cURL / Python / JavaScript 三种写法。
| 参数 | 类型 | 说明 |
|---|---|---|
model |
string | doubao-seedance-2.0 / doubao-seedance-2.0-fast / doubao-seedance-2.5 / MiniMax-H3 |
prompt |
string | 文本描述,必填 |
duration |
integer | 时长(秒),doubao-seedance-2.0 / doubao-seedance-2.0-fast 与 MiniMax-H3 为 4–15,doubao-seedance-2.5 为 4–30 |
resolution |
string | 按模型取值:doubao-seedance-2.0 为 480p / 720p / 1080p / 4k;doubao-seedance-2.0-fast 为 480p / 720p;doubao-seedance-2.5 为 480p / 720p / 1080p;MiniMax-H3 为 768p / 2k |
image_urls |
array ≤9(doubao-seedance-2.5 ≤30) |
参考图片。每项可以是 URL 字符串(默认角色 = first_frame,图生视频)或对象 {"url":"…","role":"first_frame|last_frame|reference_image"} |
video_urls |
array ≤3(doubao-seedance-2.5 ≤10) |
参考视频 |
audio_urls |
array ≤3(doubao-seedance-2.5 ≤10) |
参考音频;doubao-seedance-2.5 可单独使用;doubao-seedance-2.0、doubao-seedance-2.0-fast、MiniMax-H3 不能单独使用,必须搭配 role:"reference_image" 的图片或 video_urls;首帧/尾帧图片不能与音频同时使用 |
generate_audio |
boolean | 输出是否带音频,默认 false |
计费:提交时预扣,成功后按实际用量结算,多退少补;失败全额退款。
| 字段 | 说明 |
|---|---|
video_url |
生成引擎官方原始出片链接,约 24 小时有效(有效期以 expires_at 为准)。 |
platform_video_url |
平台存储链接,自生成完成起保留 7 天,到期后文件删除且不可恢复。未启用平台存储或无副本时为 null,此时用 video_url。 |
platform_expires_at |
platform_video_url 的到期时间。 |
平台采用官方标准模型 ID,推理强度通过 API 参数 控制——Anthropic 用 thinking 对象,OpenAI 用 reasoning_effort。
最后更新:2026-09-29
ANTHROPIC_BASE_URL 只到主机名 https://iwkey.com,不要加 /v1(与 OpenAI 接口不同;加了会拼成 /v1/v1/messages → 404)/v1(OpenAI 协议入口,Cursor 直接拼接 /chat/completions;与 Claude Code 的 ANTHROPIC_BASE_URL 不带 /v1 不同)base_url 只到 /v1,不要加 /chat/completions,否则 Codex 会拼出错误路径导致 404gpt-6-sol,Codex 走 Responses API(非 chat/completions),需在 config.toml 声明 wire_api = "responses"options.baseURL 须带 /v1(@ai-sdk/openai-compatible 直接拼接 /chat/completions,不会自动补 /v1)最后更新:2026-10-13
视频生成是异步任务,支持参考素材与素材库,接入规范见独立文档:/docs/video-model/(共用 API Key 与入口域名)。
POST /videos/v1/videos/generationsPOST /videos/v1/videos/generations/estimateGET /videos/v1/videos/jobs/{job_id}GET /videos/v1/videos/jobsGET /videos/v1/videos/jobs/statsGET /videos/v1/videos/jobs/export.csv最后更新:2026-10-20
在发起调用前、或在你自己的调度服务里查一下余额:余额不足时提前预警,避免请求中途因余额不足被拒。只读,查询不收费。
GET https://iwkey.com/v1/usageapi.infwave.com 同样可用。鉴权用你调用模型的同一把 API Key:Authorization: Bearer <你的密钥>(也接受 x-api-key 请求头)。
返回什么取决于这把 Key:同一个接口,下面三种 Key 返回的含义不同,接入前先确认你用的是哪一种。
| Key 类型 | 返回内容 |
|---|---|
| 普通 Key | 账户的钱包余额:planName 为「钱包余额」,balance / remaining 是余额,unit 为 USD |
| 设了额度上限或速率限制的 Key | 这把 Key 自身的剩余额度,不是账户余额 |
| 订阅套餐分组的 Key | 套餐剩余额度,以及日 / 周 / 月已用量、对应上限和到期时间 |
三种情况都会附带 usage:今日与累计的请求数、token 数和费用,以及 rpm、tpm。
查询频率:余额变化不快,建议每小时查询一次即可。
用程序调用必须设置 User-Agent:用 Python 等程序调用时,请求头里要带上 User-Agent,否则请求可能被 Cloudflare 拦截(返回 403,或直接连接失败);curl 不受影响。下面的示例脚本已经带上。
余额偏低时提前收到通知,避免调用因余额不足中断。用定时任务每小时调用一次上面的接口,余额低于你设定的线时,把提醒发到你自己的飞书群、钉钉群、企业微信群、手机短信或 Telegram 等通道。示例只用 Python 标准库,通过环境变量 NOTIFY_CHANNEL 在飞书、钉钉、企业微信、Telegram 之间切换;短信需要接入你们自己的短信服务商,见下表。
| 平台 | 先准备 | 环境变量 |
|---|---|---|
飞书(feishu) | 在群里添加「自定义机器人」,复制 webhook 地址;机器人如果开启了「签名校验」,同时复制密钥 | FEISHU_WEBHOOK;开了签名校验再加 FEISHU_SECRET |
钉钉(dingtalk) | 在群里添加「自定义机器人」,复制 webhook 地址;安全设置如果选了「加签」,同时复制密钥 | DINGTALK_WEBHOOK;选了加签再加 DINGTALK_SECRET |
企业微信(wecom) | 在群里添加「群机器人」,复制 webhook 地址 | WECOM_WEBHOOK |
| 短信 | 在阿里云短信、腾讯云短信等服务商开通,先申请短信签名和模板,审核通过后才能发送。示例未内置短信,把示例里的发送函数换成服务商的发送接口即可 | 按服务商要求(如密钥、签名、模板 ID、接收手机号) |
Telegram(telegram) | 用 @BotFather 创建机器人拿到 token,把机器人加进目标群或私聊,取得 chat_id。国内服务器直连 Telegram 通常不通,需要能访问 Telegram 的网络 | TG_BOT_TOKEN、TG_CHAT_ID |
另需设置 IWKEY_KEY(你调用模型的 API Key);LOW_USD / CRIT_USD 为偏低线 / 告急线(美元),默认 40 / 10。webhook 地址和 bot token 等同于密码,不要外传。示例读取的是 balance:普通 Key 是账户钱包余额;设了额度上限的 Key 读到的是这把 Key 的剩余额度,提醒线请按此理解;订阅套餐分组的 Key 返回结构不同,本示例不适用。示例的行为:偏低、告急各提醒一次,同一档不重复;充值后回到偏低线的 1.2 倍以上才算恢复;查询失败不当作余额不足,连续 3 次失败会提醒「监控断了」;消息发送失败不记账,下一轮重试。建议用 crontab 每小时运行一次:0 * * * *。
最后更新:2026-10-12
request_id、OpenAI 的 id 与 system_fingerprint)。文本请求不留存提示词和回答正文,完整边界见 透明度页面。
"stream": true 即可。视频模型不是 streaming 响应;提交任务后应优先请求响应中的 poll_url,当前地址为 /videos/v1/videos/jobs/{job_id}。
POST /videos/v1/videos/generations,提交后会返回 job_id 和 poll_url。任务完成后可在轮询响应或「视频模型使用记录」里查看结果、下载地址和失败原因。
-thinking/-high/-low 等后缀变体。推理强度由 API 参数控制:
claude-opus-5-5、claude-sonnet-5-5、claude-fable-5-1 在请求体加 "thinking": {"type": "adaptive"},用 "output_config": {"effort": "high"} 调推理深度(可选 low/medium/high/xhigh/max)。"reasoning_effort": "high"(可选 low/medium/high)。支持模型:gpt-6-sol 等,查 GET /v1/models 确认。/v1/messages 格式,并在消息/系统提示中标记 cache_control 断点。注意:OpenAI 兼容的 /v1/chat/completions 格式不支持 Claude 提示缓存,每次请求按全价输入计费。
最后更新:2026-10-08