01 / GETTING STARTED
QUICK STARTROSE APITEXT / CODING / MESSAGES

开始使用 Rose API

一个 API 地址、一个访问令牌,按实际需要选择 Chat、Responses 或 Claude Messages 协议。

01 / CHATChat Completions

常规聊天、问答与应用集成

POST /v1/chat/completions查看接口文档 ↗
02 / CODINGResponses API

Codex、编程客户端与工具调用

POST /v1/responses查看接口文档 ↗
03 / CLAUDEMessages API

Claude Code 与 Anthropic SDK

POST /v1/messages查看接口文档 ↗

接入前准备

  1. 进入 Rose API 登录账户。
  2. 在控制台生成 API Key,并确认令牌分组与可用模型。
  3. 打开 模型与价格,复制真实可用的模型 ID,替换文档中的 YOUR_MODEL_ID。
  4. 根据软件需要选择协议,先用下面的模型列表测试鉴权,再进行正式调用。

基础地址与接口约定

项目填写内容说明
网站地址https://api.365rose.com站点首页,不含版本前缀
OpenAI SDK Base URLhttps://api.365rose.com/v1SDK 自动拼接 /chat/completions 或 /responses
Claude Code Base URLhttps://api.365rose.comClaude Code 自行附加 /v1/messages
鉴权Authorization: Bearer sk-...OpenAI 格式;Claude 原生格式也可使用 x-api-key
编码application/json请求体主要为 JSON;流式以 text/event-stream 返回

第一步:测试密钥与模型列表

curl -sS https://api.365rose.com/v1/models \
  -H "Authorization: Bearer YOUR_API_KEY"

成功时通常会得到包含 data 的模型列表。展示内容与可用权限可能受令牌分组限制。请以站点模型与价格页面和你的令牌可用性为准。

选择哪个协议?

应用场景推荐协议需要填写的 Base URL
聊天机器人、OpenAI SDK、常规问答Chat Completionshttps://api.365rose.com/v1
Codex、使用 Responses 的编程工具Responseshttps://api.365rose.com/v1
Claude Code、Anthropic SDKMessageshttps://api.365rose.com
不同客户端要求的 Base URL 前缀可能不同。不要把完整的 /v1/chat/completions URL 填进只需要 Base URL 的输入框,否则可能拼成重复路径。

常见状态与排查

现象优先检查
401API Key 是否正确、请求头是否携带,以及令牌是否已停用
403 / 权限错误令牌分组、可用模型、账号额度和站点访问限制
404Base URL 是否多写 / 少写 /v1,以及请求的路径是否被该渠道支持
429请求频率、并发限制与配额
格式或参数错误协议是否选对、模型是否支持该协议与参数
这里介绍的是 New API 常见接口格式;某个模型是否支持 Responses、工具调用或 Claude Messages,需要以 Rose API 实际上架渠道及其兼容性为准。
02 / CHAT COMPLETIONS
TEXT GENERATIONROSE APIPOST /v1/chat/completions

OpenAI Chat Completions

面向常规对话、问答、文本任务与兼容 OpenAI Chat API 的应用。

请求方法 POST · 完整地址:https://api.365rose.com/v1/chat/completions。
OpenAI SDK 的 base_url 填 https://api.365rose.com/v1。

接口规范

项目说明
路径POST /v1/chat/completions
Content-Typeapplication/json
鉴权Authorization: Bearer YOUR_API_KEY
输入model + messages
典型输出choices[0].message.content
流式stream: true 返回逐块增量数据

请求参数

参数类型是否必需说明
modelstring是站点实际可用模型 ID,如模型价格页所示
messagesarray是消息数组,包含 role 与 content
streamboolean否设为 true 启用流式响应
temperaturenumber视模型支持采样参数;部分推理模型不接受或忽略此项
max_completion_tokensinteger视模型支持输出 token 上限;旧模型可能采用其他参数
toolsarray视模型支持函数工具定义;依赖模型及渠道的工具调用能力

cURL 示例

curl https://api.365rose.com/v1/chat/completions \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "YOUR_MODEL_ID",
    "messages": [
      {"role": "user", "content": "用一句话介绍 Rose API"}
    ],
    "stream": false
  }' 

Python · OpenAI SDK

# pip install --upgrade openai
from openai import OpenAI

client = OpenAI(
    api_key="YOUR_API_KEY",
    base_url="https://api.365rose.com/v1"
)

result = client.chat.completions.create(
    model="YOUR_MODEL_ID",
    messages=[{"role": "user", "content": "你好"}]
)
print(result.choices[0].message.content)

返回结构与读取

{
  "id": "chatcmpl_...",
  "object": "chat.completion",
  "choices": [
    {"index": 0, "message": {"role": "assistant", "content": "你好!"}, "finish_reason": "stop"}
  ],
  "usage": {"prompt_tokens": 8, "completion_tokens": 5, "total_tokens": 13}
}

以上仅为结构示意。不同模型、渠道或流式模式下,返回字段可能不同;其中 choices 为常用的回复数组。

适用客户端与注意事项

03 / OPENAI RESPONSES
CODING & AGENTSROSE APIPOST /v1/responses

Responses API · 编程接口

适用于使用 OpenAI Responses 协议的编程客户端、Agent 工作流和部分 Codex 接入场景。

Responses 与 Chat Completions 不是同一请求结构。前者使用 input,后者使用 messages;客户端选择哪套协议,就需要使用对应接口。

接口规范

项目说明
路径POST /v1/responses
Content-Typeapplication/json
鉴权Authorization: Bearer YOUR_API_KEY
输入model + input
输出常见为 output 数组,或 SDK 提供的 output_text
流式stream: true 事件流,使用事件类型逐步接收结果

请求参数

参数类型必需说明
modelstring是支持 Responses 的站内模型 ID
inputstring / array是字符串或结构化输入项数组
instructionsstring否用于定义模型行为的高优先级指令
streamboolean否是否使用事件流
toolsarray视模型支持函数等工具配置;协议转换可能限制字段
max_output_tokensinteger视模型支持输出 token 上限
previous_response_idstring视服务支持引用已有 Responses 结果;需后端支持会话存储

cURL · 最简调用

curl https://api.365rose.com/v1/responses \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "YOUR_RESPONSES_MODEL_ID",
    "instructions": "你是一位编程助手。",
    "input": "请写一个读取 JSON 文件的 Python 函数。",
    "stream": false
  }' 

Python · OpenAI SDK

# pip install --upgrade openai
from openai import OpenAI

client = OpenAI(
    api_key="YOUR_API_KEY",
    base_url="https://api.365rose.com/v1"
)
response = client.responses.create(
    model="YOUR_RESPONSES_MODEL_ID",
    input="编写一个健壮的重试装饰器"
)
print(response.output_text)

Codex 配置参考

支持 Responses 的 Codex 客户端通常需要 base_url 包含 /v1,并将协议指定为 responses。以下为配置结构示例,具体写入方式与当前 Codex / CC Switch 版本有关。

# ~/.codex/config.toml(配置结构示例)
model_provider = "rose-api"
model = "YOUR_RESPONSES_MODEL_ID"

[model_providers.rose-api]
name = "Rose API"
base_url = "https://api.365rose.com/v1"
wire_api = "responses"
experimental_bearer_token = "YOUR_API_KEY"
并非所有 Chat 模型都能在 /v1/responses 上使用。Codex 或编程客户端还可能依赖流式事件、工具调用或特殊字段;请先通过 cURL 检测目标模型的 Responses 能力,再配置客户端。

如何判断接口已经通了?

04 / ANTHROPIC MESSAGES
CLAUDE / MESSAGESROSE APIPOST /v1/messages

Claude Code · Messages API

兼容 Anthropic Messages 的模型可通过原生协议调用;Claude Code 使用的也是这类接口。

Claude 原生 Messages 与 OpenAI Chat Completions 是不同的格式。Rose API 的 New API 后端提供 POST /v1/messages 接口,但不代表所有模型都支持 Claude Code 所需的功能。

接口规范

项目说明
路径POST /v1/messages
鉴权x-api-key: YOUR_API_KEY 或 Authorization: Bearer YOUR_API_KEY
版本头anthropic-version: 2023-06-01
Content-Typeapplication/json
输入model、max_tokens、messages
输出content 数组;文本一般为 content[].text

请求参数

参数类型必需说明
modelstring是实际可用的 Claude 或 Anthropic Messages 兼容模型 ID
messagesarray是聊天数组,包含用户和助手角色
max_tokensinteger是最大输出 token 数;需要合理设置
systemstring / array否系统指令,在 Messages 格式中作为顶层字段
streamboolean否启用流式输出
toolsarray视模型支持工具定义,Claude Code 高级功能常依赖工具调用

cURL 示例

curl https://api.365rose.com/v1/messages \
  -H "x-api-key: YOUR_API_KEY" \
  -H "anthropic-version: 2023-06-01" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "YOUR_MESSAGES_MODEL_ID",
    "max_tokens": 512,
    "messages": [
      {"role": "user", "content": "用两句话说明 REST API"}
    ]
  }' 

Python · Anthropic SDK

# pip install --upgrade anthropic
from anthropic import Anthropic

client = Anthropic(
    api_key="YOUR_API_KEY",
    base_url="https://api.365rose.com"
)
message = client.messages.create(
    model="YOUR_MESSAGES_MODEL_ID",
    max_tokens=512,
    messages=[{"role": "user", "content": "你好"}]
)
for block in message.content:
    if block.type == "text":
        print(block.text)

Claude Code · 环境配置

如果使用 Claude Code,可以将其 API 地址指向 Rose API。这里不要在 ANTHROPIC_BASE_URL 末尾添加 /v1。

// ~/.claude/settings.json · 示例
{
  "env": {
    "ANTHROPIC_BASE_URL": "https://api.365rose.com",
    "ANTHROPIC_AUTH_TOKEN": "YOUR_API_KEY",
    "ANTHROPIC_MODEL": "YOUR_MESSAGES_MODEL_ID"
  }
}

也可以让 CC Switch 代为管理供应商配置与切换,不需要同时手工修改多个客户端配置。查看 CC Switch 教程 →

将 API Key 写进本地配置后,注意保护本机文件。不同版本 Claude Code 对模型别名、认证变量或额外功能有区别;遇到身份验证或模型加载问题,先确认当前客户端版本及实际支持的模型。
05 / TOOLS & SETUP
CLIENT SETUPROSE APICLI / DESKTOP / APP

CC Switch 与第三方工具

通过 CC Switch 管理多个模型服务配置;使用其他 AI 客户端时,只需提供对应的接口地址、协议与密钥。

CC Switch 是什么?

CC Switch 是一个开源的 AI 编程工具供应商管理器,可以帮助你在 Claude Code、Codex 等客户端之间添加或切换 API 服务。这里以 Rose API 作为自定义供应商举例。

配置 Claude Code

  1. 安装并打开 CC Switch,切换到 Claude Code 页面。
  2. 点击新增供应商,选择自定义供应商,名称填写 Rose API。
  3. API 格式选择 Anthropic Messages;接口地址填写 https://api.365rose.com。
  4. 填入你的 Rose API Key,并将默认模型设为实际可用的 Messages 兼容模型。
  5. 保存并启用供应商,再打开 Claude Code 测试简单消息。
不同版本 CC Switch 的按钮可能叫「启用」「切换」或「Route here」;如果开启了本地路由,请确认该路由处于运行状态。原生 Messages 格式通常不需要额外协议转换。

配置 Codex / Responses

  1. 在 CC Switch 的 Codex 页面添加自定义供应商 Rose API。
  2. Base URL 填写 https://api.365rose.com/v1,协议使用 responses。
  3. 填写 API Key,选择站内实际支持 Responses 的模型。
  4. 启用供应商;如使用本地路由模式,先确保 CC Switch 已启动路由服务,再重启 Codex 终端。

常见配置对照

工具 / SDK协议推荐填入的基础地址
OpenAI SDK / Chat AppChat Completionshttps://api.365rose.com/v1
Codex / Responses 客户端Responseshttps://api.365rose.com/v1
Claude Code / Anthropic SDKMessageshttps://api.365rose.com
CC Switch 的 Claude 供应商Anthropic Messageshttps://api.365rose.com

其他第三方工具怎么配置?

如 Cherry Studio、Chatbox、OpenCode、Cline 或其他兼容客户端,界面和字段名常随版本变化。你可以直接让 AI 助手根据软件版本一步步指导,不必照搬不适用的设置。

你可以把下面这段话复制给 ChatGPT,并补充你用的软件名称和版本。不要在聊天中发送真实 API Key。
请教我把 [工具名称和版本] 接入 Rose API。
API 网站:https://api.365rose.com
OpenAI Chat/Responses 的 Base URL:https://api.365rose.com/v1
Claude Messages 的 Base URL:https://api.365rose.com
我的目标协议:[Chat Completions / Responses / Messages]
请按当前工具界面一步步告诉我在哪填地址、模型 ID、API Key,
并说明如何测试连通性和排查 401/404/模型不支持的错误。
我会自己在软件中输入真实密钥。

安全与兼容提醒

06 / FLOW · OMNI
VIDEO GENERATIONROSE APIOPENAI COMPATIBLE

Flow · Omni 1.1 Flash Video

🎬 Flow · Omni 1.1 Flash:一个模型名 flow-omni-1.1-flash,支持文生视频、多图参考图生视频两种模式,按请求里是否带参考图自动切换。无水印、约 8 秒、720p出片,OpenAI 兼容异步接口,按次计费、失败不计费。画幅朝向用 aspect_ratio(16:9 横屏默认 / 9:16 竖屏),也可用 size 指定。

模型与价格

模型模式分辨率计费价格 / 次(约 8 秒)
flow-omni-1.1-flash文生视频 / 多图参考图生视频720p按次$5.8
按次计费:文生视频、多图参考图生视频均为 $5.8 / 次。约 8 秒出片、无需传时长,720p,失败不计费。

两种模式(按素材自动切换)

模式怎么触发价格 / 次说明
文生视频(T2V)只传 prompt,不带参考图$5.8纯文字生成视频
图生视频(I2V)prompt + images(或单张 image)$5.8多图参考图生视频;参考图须公网可直接下载或用 base64(需登录 / 内网 / 拦爬虫的链接会失败)
选档规则:带参考图(images)→ 图生视频;不带 → 文生视频。两种模式同一模型名 flow-omni-1.1-flash,均为 $5.8 / 次。

接口信息

项说明
Base URLhttps://api.365rose.com
提交任务POST /v1/videos(JSON)
轮询进度GET /v1/videos/{task_id},status=completed 表示完成
下载成片用轮询返回的顶层 video_url 直接下载 mp4(地址已脱敏、我方域名)
鉴权Authorization: Bearer sk-你的令牌
令牌分组Gemini flow
耗时通常 1–2 分钟;客户端应轮询,不要重复提交同一任务

核心参数

参数类型必填默认说明
modelstring是-固定 flow-omni-1.1-flash(文生 / 图生视频都用这一个名字)
promptstring是-画面 / 运动描述
resolutionstring否720p固定 720p(本模型仅提供 720p)
aspect_ratiostring否16:9决定画幅 / 朝向:16:9(横屏,默认)/ 9:16(竖屏)。不传即横屏,要竖屏传 9:16
sizestring否-也可用 WxH 指定朝向(如 1280x720 横 / 720x1280 竖);传了 size 时以它为准。清晰度恒 720p
images数组(URL / base64)否(图生必填)-图生视频:多图参考(建议 ≤6 张,多传模型可能只取前几张、不提升效果);公网可直取 URL 或 data:image/...;base64,。单张也可用 image
⚠️ 约 8 秒出片,无需传 seconds / duration。朝向用 aspect_ratio(或 size),清晰度恒 720p。

画幅与朝向(横屏 / 竖屏怎么定)

想要用 aspect_ratio或用 size输出(恒 720p)
横屏(默认)不传 或 "16:9""1280x720"1280 × 720
竖屏"9:16""720x1280"(或 "1080x1920")720 × 1280
比例不是必填:不传默认出横屏 16:9(1280×720);要竖屏传 aspect_ratio:"9:16",或用 size 传竖版 WxH(如 720x1280、1080x1920——超过 720p 会自动缩放到 720p)。同时传 size 和 aspect_ratio 时以 size 为准。清晰度恒 720p;图生视频同样用 aspect_ratio / size 指定朝向。

示例请求(curl)

BASE_URL="https://api.365rose.com"

TOKEN="sk-你的令牌"



# 1) 文生视频(720p 横屏,默认)

curl -sS -X POST "$BASE_URL/v1/videos" \

  -H "Authorization: Bearer $TOKEN" -H "Content-Type: application/json" \

  -d '{"model":"flow-omni-1.1-flash","prompt":"日出时分平静的湖面雾气升腾,电影感镜头"}'



# 2) 文生视频(竖屏 9:16)

curl -sS -X POST "$BASE_URL/v1/videos" \

  -H "Authorization: Bearer $TOKEN" -H "Content-Type: application/json" \

  -d '{"model":"flow-omni-1.1-flash","prompt":"竖屏短视频:城市夜景延时,霓虹流光","aspect_ratio":"9:16"}'



# 3) 图生视频(参考图,URL 或 base64)

curl -sS -X POST "$BASE_URL/v1/videos" \

  -H "Authorization: Bearer $TOKEN" -H "Content-Type: application/json" \

  -d '{"model":"flow-omni-1.1-flash","prompt":"参考这些图片生成连贯运镜","images":["https://img1.jpg","https://img2.jpg"]}'

# => {"task_id":"task_xxx","status":"queued",...}

Python 完整示例(提交 → 轮询 → 下载)

import time, requests



BASE = "https://api.365rose.com"

TOKEN = "sk-你的令牌"

H = {"Authorization": f"Bearer {TOKEN}", "Content-Type": "application/json"}



# 提交:文生 720p 横屏。

#   竖屏 -> 加 "aspect_ratio": "9:16"

#   图生 -> 加 "images": ["https://.../a.jpg", "https://.../b.jpg"](也支持 base64)

payload = {

    "model": "flow-omni-1.1-flash",

    "prompt": "日出时分平静的湖面雾气升腾,电影感镜头",

    "aspect_ratio": "16:9",     # 16:9 横屏 / 9:16 竖屏

}

r = requests.post(f"{BASE}/v1/videos", headers=H, json=payload, timeout=60)

r.raise_for_status()

task = r.json()

task_id = task.get("task_id") or task.get("id")

print("task_id:", task_id)



# 轮询直到完成(约 8 秒成片,通常 1-2 分钟)

while True:

    time.sleep(5)

    d = requests.get(f"{BASE}/v1/videos/{task_id}", headers=H, timeout=30).json()

    status = str(d.get("status", "")).lower()

    print("status:", status)

    if status == "completed":

        video_url = d.get("video_url") or (d.get("data") or [{}])[0].get("url")

        break

    if status == "failed":

        raise RuntimeError(d.get("error") or d)



open("out.mp4", "wb").write(requests.get(video_url, timeout=180).content)

print("成片:", video_url)

轮询取片

# 轮询直到 status=completed

curl -sS "$BASE_URL/v1/videos/task_xxx" -H "Authorization: Bearer $TOKEN"

# => {"status":"completed","video_url":"https://api.365rose.com/d/dl/xxx.mp4",...}



# 下载成片:用上面返回的 video_url(mp4,地址已脱敏、我方域名)

curl -sSL "<上面返回的 video_url>" -o out.mp4

轮询间隔建议 3–5 秒、客户端超时 ≥ 300 秒;勿重复提交同一任务。

注意事项

07 / OMNI VIDEO
VIDEO GENERATIONROSE APIOPENAI COMPATIBLE

Omni 视频生成

基于 Gemini Veo 的视频生成服务,支持文生视频、图生视频(最多 5 张参考图)。

模型与价格

模型能力计费价格
omni-fast文生视频 / 图生视频按次$3.25/次
omni-fast-no-water文生 / 图生视频(无水印)按次$3.45/次
无水印模型输出经过自动清洗处理,完成前可能多一个 processing 阶段,稍慢。失败不计费。

接口信息

项说明
Base URLhttps://api.365rose.com
提交任务POST /v1/videos(JSON 或 multipart)
轮询进度GET /v1/videos/{task_id}
下载成片GET /v1/videos/{task_id}/content 或返回的 data[0].url
鉴权Authorization: Bearer sk-你的令牌
令牌分组gemini-fast

核心参数

参数类型必填默认说明
modelstring是-模型名,见上表
promptstring是-视频描述提示词(无我方硬性长度上限,走 Gemini 官方)
aspect_ratiostring否16:9画幅比例:16:9(横)、9:16(竖)
seconds / durationstring/int否10时长秒数(接收但当前 Gemini 固定输出约 10 秒)
image_urlstring否(图生必填其一)-单张参考图(公网 URL 或 data:image Base64)
first_image_urlstring否-首帧参考图 URL
last_image_urlstring否-末帧参考图 URL
imagesstring[]否-多参考图数组(最多 5 张,每张 ≤8MB;也可传 data:...;base64,)

Multipart 提交(支持文件上传)

字段说明
input_reference / input_reference[]参考图文件上传(最多 5 张,每张 ≤8MB)。input_reference[] 为浏览器画布 / Sora 兼容客户端的数组写法:单张=图生视频(首帧动画),多张=多参考图;两种写法均可

示例:文生视频

curl -X POST https://api.365rose.com/v1/videos \

  -H "Authorization: Bearer sk-xxx" \

  -H "Content-Type: application/json" \

  -d '{

    "model": "omni-fast",

    "prompt": "雨夜霓虹街道,镜头缓慢推进,电影感光影",

    "aspect_ratio": "16:9"

  }'

示例:图生视频

# JSON:参考图 URL

curl -X POST https://api.365rose.com/v1/videos \

  -H "Authorization: Bearer sk-xxx" \

  -H "Content-Type: application/json" \

  -d '{

    "model": "omni-fast",

    "prompt": "保持人物一致,缓慢走动",

    "image_url": "https://your-cdn.com/photo.jpg",

    "aspect_ratio": "16:9"

  }'



# multipart:直接上传图片文件

curl -X POST https://api.365rose.com/v1/videos \

  -H "Authorization: Bearer sk-xxx" \

  -F "model=omni-fast" \

  -F "prompt=保持人物一致,缓慢走动" \

  -F "[email protected]"

参考图 URL 要求

参考图直接给公网 URL 即可,服务端会替你下载(经代理,不暴露你我的 IP),你只要保证链接能被匿名 GET 到;也可以传 data:image/...;base64,。URL 必须满足:

要求说明
匿名可下载服务端下载时不会带你的任何鉴权头。需要签名/登录才能访问的私有链接一律取不到,请用预签名直链(presigned URL)或公开对象。
直链,返回 200要指向文件本身,不是网盘的分享页。302 跳转可以,会自动跟随。
时效要够预签名 URL 的有效期建议留 30 分钟以上:任务排队 + 生成可能需要数分钟。
Content-Type不强制。服务端识别不了时按 image/jpeg 兜底。

让它照着念台词

omni-fast 文生 / 图生视频会把你写的英文台词一字不差地念出来——把台词用引号写进提示词即可。8 个不同场景实测逐字 8/8,按序命中率 1.00。

curl -X POST https://api.365rose.com/v1/videos \

  -H "Authorization: Bearer sk-xxx" \

  -H "Content-Type: application/json" \

  -d '{

    "model": "omni-fast",

    "prompt": "A woman in a bright studio holds up a wireless earbud case to the camera. She speaks clearly to camera and says, \"This one lasts nine hours on a single charge.\" Bright commercial product-ad look.",

    "aspect_ratio": "16:9"

  }'
要照着念台词,选哪个模型逐字命中说明
omni-fast 文生 / 图生视频 + 引号台词8/8✅ 想要精确台词就用它
实测 8 个不同场景、同一句台词,逐字 8/8。所以:要精确台词 → 把台词用引号写进提示词。

轮询取片

curl https://api.365rose.com/v1/videos/{task_id} \

  -H "Authorization: Bearer sk-xxx"



# 完成后(优先读顶层 video_url,兼容 data[0].url;均为完整下载直链):

# {"status":"completed",

#  "video_url":"https://api.365rose.com/v1/videos/vid-xxxx/content",

#  "data":[{"url":"https://api.365rose.com/v1/videos/vid-xxxx/content"}]}
08 / GROK IMAGINE
VIDEO & IMAGE GENERATIONROSE APIOPENAI COMPATIBLE

Grok Imagine xAI

🎬 Grok Imagine:基于 xAI Grok Imagine 的媒体生成接口。当前文档仅保留 grok-imagine-video(1.0)与 grok-imagine-video-1.5-preview(1.5)两款视频模型,不包含固定 6 秒版本。视频走 OpenAI 兼容异步接口;图像生成与编辑走同步接口。本站统一 Base URL:https://api.365rose.com。

Grok 视频 · 模型与价格

模型分辨率计费价格
grok-imagine-video480p(默认)按秒¥0.10 / 秒
grok-imagine-video720p按秒¥0.15 / 秒
grok-imagine-video-1.5-preview480p按秒¥0.20 / 秒
grok-imagine-video-1.5-preview720p(推荐)按秒¥0.26 / 秒
grok-imagine-video-1.5-preview1080p按秒¥0.30 / 秒
按秒计费:费用 = 分辨率单价 × seconds。失败不计费。1.0 支持 480p / 720p;1.5-preview 额外支持 1080p。

视频接口信息

项说明
Base URLhttps://api.365rose.com
提交任务POST /v1/videos(JSON)
轮询进度GET /v1/videos/{task_id},status=completed 时读取 video_url
下载成片直接 GET 轮询结果中的 video_url
鉴权Authorization: Bearer sk-你的令牌
令牌分组xAI 或 auto

视频核心参数

参数类型 / 取值默认说明
modelgrok-imagine-video / grok-imagine-video-1.5-preview-必填。1.0 适合纯文生;1.5 画面质感更高,建议搭配参考图
promptstring-必填,画面与运动描述
image公网 URL / base64 Data URI-可选,单张首帧;带图即图生视频
reference_imagesURL 数组,最多 7 张-仅 1.5-preview 的 480p / 720p 多图参考生效;1080p 仅支持单张 image
seconds字符串,1 ~ 156视频时长,按秒计费
aspect_ratio16:9 / 9:16 / 1:116:9Grok 视频仅支持这三种画幅
resolution480p / 720p;1.5 另支持 1080p480p决定输出清晰度与单价
size如 720x1280 / 1024x1024-兼容旧客户端,系统会换算为接近的 aspect_ratio
⚠️ 1080p 限制:grok-imagine-video-1.5-preview 的 1080p 仅支持单张首帧 image,不支持多图 reference_images。需要多图参考请使用 480p / 720p。

视频示例请求

# 文生视频 · Grok Imagine 1.0
curl -X POST https://api.365rose.com/v1/videos \
  -H "Authorization: Bearer sk-xxx" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "grok-imagine-video",
    "prompt": "灯塔在日落时分,海浪拍打礁石,电影感镜头",
    "seconds": "8",
    "aspect_ratio": "16:9",
    "resolution": "720p"
  }'

# 图生视频 · Grok Imagine 1.5
curl -X POST https://api.365rose.com/v1/videos \
  -H "Authorization: Bearer sk-xxx" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "grok-imagine-video-1.5-preview",
    "resolution": "720p",
    "prompt": "轻微镜头推移,画面自然生动",
    "image": "https://your-public-image.jpg",
    "seconds": "8",
    "aspect_ratio": "16:9"
  }'

# 多图参考 · 1.5-preview 720p
curl -X POST https://api.365rose.com/v1/videos \
  -H "Authorization: Bearer sk-xxx" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "grok-imagine-video-1.5-preview",
    "resolution": "720p",
    "prompt": "融合多张参考图的场景,电影感转场",
    "reference_images": ["https://img-a.jpg", "https://img-b.jpg"],
    "seconds": "8"
  }'

轮询取片

curl https://api.365rose.com/v1/videos/task_xxx \
  -H "Authorization: Bearer sk-xxx"

# status=completed 后读取 video_url 并下载
curl -L "<video_url>" -o grok.mp4

建议每 3–5 秒轮询一次;客户端超时建议 ≥ 300 秒。任务已经受理后只轮询同一个 task_id,不要重复 POST。

Python 完整示例

import time
import requests

BASE = "https://api.365rose.com/v1"
TOKEN = "sk-你的令牌"
H = {
    "Authorization": f"Bearer {TOKEN}",
    "Content-Type": "application/json",
}

# 1.5 图生视频 · 720p
task = requests.post(f"{BASE}/videos", headers=H, json={
    "model": "grok-imagine-video-1.5-preview",
    "resolution": "720p",
    "prompt": "轻微镜头推移,画面自然生动",
    "image": "https://your-public-image.jpg",
    "seconds": "8",
    "aspect_ratio": "16:9",
}, timeout=60).json()

task_id = task.get("task_id") or task.get("id")
print("task_id:", task_id)

while True:
    time.sleep(4)
    s = requests.get(f"{BASE}/videos/{task_id}", headers=H, timeout=30).json()
    status = s.get("status")
    print("status:", status)

    if status == "completed":
        video_url = s.get("video_url") or (s.get("data") or [{}])[0].get("url")
        print("下载:", video_url)
        break

    if status == "failed":
        raise RuntimeError(s.get("error") or s)

视频注意事项

Grok 图像 · 用法总览

场景端点模型
文生图POST /v1/images/generationsgrok-imagine-image / grok-imagine-image-2.0 / grok-imagine-image-lite
图生图 / 图片编辑POST /v1/images/editsgrok-imagine-image / grok-imagine-image-2.0
grok-imagine-image 与 grok-imagine-image-2.0 同一个模型名可用于两种接口:/generations 做文生图,/edits 做图生图 / 编辑。-lite 仅支持文生图。

Grok 图像 · 模型与价格

模型能力计费价格
grok-imagine-image-lite文生图按张¥0.02 / 张
grok-imagine-image文生图 + 图生图 / 编辑按张¥0.055 / 张
grok-imagine-image-2.0文生图 + 图生图 / 编辑(新版)按张¥0.065 / 张
图片接口为同步接口,请求成功后直接返回图片,无需轮询 task_id。失败不计费。

图像尺寸与画幅

模型size 可选aspect_ratio 可选默认
grok-imagine-image / grok-imagine-image-2.01024x1024 / 1792x1024 / 1024x17921:1 / 16:9 / 9:16 / 2:3 / 3:2 / 4:3 / 3:41024x1024
grok-imagine-image-lite1280x720 / 720x1280 / 960x960--

size 与 aspect_ratio 二选一;其它取值可能报错。

图像核心参数

参数取值默认说明
model见上表-必填;-lite 仅文生图
promptstring-必填,生成或修改描述
ninteger1生成数量,建议一次请求 1 张
response_formaturl / b64_jsonurl返回下载地址或 Base64 数据
size模型支持的尺寸1024x1024与 aspect_ratio 二选一
aspect_ratio模型支持的画幅-grok-imagine-image / -2.0 使用
image公网 URL / base64 Data URI-图生图单张参考图
imagesURL / Data URI 数组-JSON 多参考图

图像示例请求

# 文生图
curl -X POST https://api.365rose.com/v1/images/generations \
  -H "Authorization: Bearer sk-xxx" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "grok-imagine-image-2.0",
    "prompt": "一座漂浮在云海上的未来城市,清晨柔光,电影感",
    "n": 1,
    "size": "1024x1024",
    "response_format": "url"
  }'

# 图生图 / 图片编辑 · JSON 单图
curl -X POST https://api.365rose.com/v1/images/edits \
  -H "Authorization: Bearer sk-xxx" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "grok-imagine-image-2.0",
    "prompt": "保留主体构图,将背景改为雨后的霓虹街道",
    "image": "https://your-public-image.jpg",
    "response_format": "url"
  }'

# 图生图 / 图片编辑 · multipart 多图
curl -X POST https://api.365rose.com/v1/images/edits \
  -H "Authorization: Bearer sk-xxx" \
  -F "model=grok-imagine-image-2.0" \
  -F "prompt=融合两张参考图的风格,生成商品展示图" \
  -F "image[][email protected]" \
  -F "image[][email protected]" \
  -F "response_format=url"

图像返回

{
  "created": 1786675686,
  "data": [
    {
      "url": "https://api.365rose.com/v1/images/proxy/<encrypted-token>"
    }
  ]
}

response_format=url 时直接读取 data[].url;需要本地持久化或继续作为参考图使用时可选择 b64_json。

图像注意事项