BASE 通用参数

所有接口共享的请求规范,包括认证方式、通用请求头和响应格式。

Base URL
http://ai.dwicoud.com/v1
认证方式
Bearer Token 认证,在请求头中传入 API Key
-H "Authorization: Bearer sk-your-api-key-here"

API Key 在用户中心的「API Keys」页面创建和管理。每个 Key 可单独设置名称和权限。

通用请求头
application/json
Bearer <your-api-key>
通用响应格式
// 成功响应
{
  "success": true,
  "data": { ... },
  "usage": {
    "prompt_tokens": N,
    "completion_tokens": N,
    "total_tokens": N
  }
}

// 错误响应
{
  "detail": "错误描述信息"
}
HTTP 状态码
请求成功
请求参数错误(缺少必填字段等)
认证失败(API Key 无效或已过期)
429
请求频率超限,请稍后重试
上游服务异常(Ollama 或抓取失败)
请求超时(AI 推理或网页抓取超时)
POST Chat Completions

OpenAI 兼容的对话补全接口。支持流式输出、知识库注入、自动配图、创意方向控制等扩展能力。传入扩展字段时,Gateway 自动组装增强版 system prompt,一次请求返回标题 + 正文 + 图片引用。

请求字段
创作数量,前端必传,无默认值
企业图片链接数组,前端必传,无默认值
核心关键词数组
长尾关键词数组,默认 []
公司全称
公司简称,默认 ""
创作方向数组,支持 20-30 个,每篇文章随机选取一个
文章类型数组,支持 20-30 个,每篇文章随机选取一个
产品服务描述文本
产品特点,默认 ""
品牌故事,默认 ""
用户痛点,默认 ""
信任背书,默认 ""
客户案例,默认 ""
其他补充信息,默认 ""
内容创作指令,默认 ""
标题创作指令,默认 ""
流量复刻指令,默认 ""
目标字数,默认 1500
地域关键词,默认 ""
去重强度:off(默认)/ light(轻度≥80%)/ deep(重度≥90%)
是否启用联网搜索,默认 false。开启后会根据实时搜索结果增强回答。
联网搜索优先渠道:auto(默认自动)/ qwen(通义千问)/ doubao(豆包)/ yuanbao(腾讯元宝)。分别复用 bailian / volcengine / hunyuan Provider 配置。
指定联网搜索模型或 endpoint,例如 qwen3.6-flash-2026-04-16、doubao-seed-1-6、hunyuan-turbos-latest。不传则优先走后台对应 Provider 中的默认联网模型。

💡 联网搜索已并入 Provider 配置:qwen -> bailiandoubao -> volcengineyuanbao -> hunyuan,无需单独再配一套联网凭证。

cURL 示例
curl -X POST "http://ai.dwicoud.com/v1/chat/completions" \ -H "Content-Type: application/json" \ -H "Authorization: Bearer YOUR_API_KEY" \ -d '{ "knowledge_base_id": "kb_brewing_guide", "creative_direction": "经验分享", "creative_type": "场景代入", "creative_role": "行业从业者", "topic": "产品的5种创意用法", "web_search": true, "search_provider": "qwen", "search_provider_model": "qwen3.6-flash-2026-04-16", "word_count": 1500, "dedup_intensity": "off", "messages": [ {"role": "user", "content": "请按照以上要求撰写文章"} ] }'

💡 传入 knowledge_base_id 后,Gateway 自动从后台拉取图片,无需手动传 images 字段。

响应示例
// choices[0].message.content 解析后:
{
  "title": "从业三年总结:5种创意用法",
  "content": "...\n\n![配图1](https://cdn.example.com/image-1.jpg)\n\n...\n\n![配图2](https://cdn.example.com/image-2.jpg)\n\n...",
  "images_used": [
    "https://cdn.example.com/image-1.jpg",
    "https://cdn.example.com/image-2.jpg"
  ]
}
Python 调用
import re, json from openai import OpenAI client = OpenAI( api_key="YOUR_API_KEY", base_url="http://ai.dwicoud.com/v1" ) response = client.chat.completions.create( # 不传 model 或传 "auto" 启用智能路由 knowledge_base_id="kb_brewing_guide", creative_direction="经验分享", creative_type="场景代入", creative_role="行业从业者", topic="产品的5种创意用法", web_search=True, search_provider="qwen", # 可选:qwen / doubao / yuanbao search_provider_model="qwen3.6-flash-2026-04-16", word_count=1500, messages=[ {"role": "user", "content": "请按照以上要求撰写文章"} ] ) # 过滤 <think/> 块,解析 JSON raw = response.choices[0].message.content clean = re.sub(r'<think.*?</think\s*>', '', raw, flags=re.DOTALL).strip() result = json.loads(clean) title = result["title"] content = result["content"] used_images = result["images_used"] print("标题:", title) print("正文:", content) print("引用图片:", used_images)
POST Article Rewrite

文章改写接口。输入原文链接和改写指令,Gateway 自动抓取网页正文、去除图片和 HTML 标签,然后由 AI 进行深度改写(整体重构,非近义词替换),返回纯 Markdown 格式的全新文章。

请求字段
原文链接,Gateway 自动抓取并提取正文文本
改写指令,如「用更口语化的风格重写」「突出健康养生角度」「以第一人称体验视角重写」
模型名称,不传或传 "auto" 使用智能路由自动选择
目标字数,默认 1500 字
cURL 示例
curl -X POST "http://ai.dwicoud.com/v1/article/rewrite" \ -H "Content-Type: application/json" \ -H "Authorization: Bearer YOUR_API_KEY" \ -d '{ "url": "https://example.com/original-article", "instruction": "用更口语化的风格重写,以第一人称体验视角展开" }'
响应示例
// 响应:
{
  "success": true,
  "data": {
    "title": "改写后的文章标题",
    "content": "# 改写后的正文...\n\n正文内容(Markdown格式)..."
  },
  "usage": {
    "prompt_tokens": 1234,
    "completion_tokens": 567,
    "total_tokens": 1801
  }
}

💡 Gateway 会自动抓取链接内容、去除图片和 HTML 标签,将纯文本发给 AI 进行深度改写(不是近义词替换)。输出保证无任何图片信息,纯 Markdown 文本。

POST AI 去重改写

独立的文章改写接口,支持轻度/深度两种改写强度。输入原文内容,AI 自动进行深度改写,输出高原创度版本。

请求字段
原始内容,至少 20 个字符。Gateway 将对内容进行深度改写,确保原创度。
改写强度:light(轻度,同义词替换+句式调整,目标80%+原创度)/ deep(深度,结构重构+全面改写,目标90%+原创度),默认 light
cURL 示例
curl -X POST "http://ai.dwicoud.com/v1/article/rewrite" \ -H "Content-Type: application/json" \ -H "Authorization: Bearer YOUR_API_KEY" \ -d '{ "content": "这是一段需要改写的原始内容...", "intensity": "light" }'
响应字段
请求是否成功
原始内容
改写后的内容
改动说明列表
原创度评分(0-100)
实际使用的改写强度
Token 消耗统计(prompt_tokens / completion_tokens / total_tokens)
响应示例
// 响应:
{   "success": true,   "original": "原始内容...",   "rewritten": "改写后的内容...",   "changes": ["将「重要」替换为「关键」", "调整句子结构"],   "originality": 85,   "intensity": "light",   "usage": {     "prompt_tokens": 150,     "completion_tokens": 180,     "total_tokens": 330   } }
POST 内容去重

内容原创度检测与去重处理接口。支持关闭去重(仅检测原创度)、轻度去重、深度去重三种模式。

请求字段
待检测内容,任意长度的文本
去重强度:off(只检测原创度,不改写)/ light(轻度,目标80%+原创度)/ deep(深度,目标90%+原创度),默认 light
cURL 示例
curl -X POST "http://ai.dwicoud.com/v1/dedup" \ -H "Content-Type: application/json" \ -H "Authorization: Bearer YOUR_API_KEY" \ -d '{ "content": "这是一段需要去重检测的内容...", "intensity": "light" }'
响应字段
请求是否成功
原创度评分(0-100),分数越高越原创
去重后内容(当 intensity 非 off 时返回)
实际使用的去重强度
Token 消耗统计
响应示例
// 响应:
{   "success": true,   "originality": 92,   "rewritten": "去重后的内容...",   "intensity": "light",   "usage": {     "prompt_tokens": 200,     "completion_tokens": 250,     "total_tokens": 450   } }
POST 批量文章生成

一次性提交所有内容字段,指定生成篇数,接口按篇逐篇返回结果。每篇文章独立生成,每篇只返回1条标题,标题与正文完全匹配适配。通过 SSE 流式输出,单篇完成后立即推送,前端可实时展示进度。

请求字段
创作数量,前端必传,无默认值
企业图片链接数组,前端必传,如 ["https://img.example.com/1.jpg", "https://img.example.com/2.jpg"],无默认值
蒸馏训练词
核心关键词数组,如 ["协同办公系统", "审批流程管理"]
长尾关键词数组,如 ["协同办公系统怎么选", "跨部门审批怎么提效"]
企业知识库
公司全称,如 "杭州云协同科技有限公司"
公司简称,如 "云协同"
创作方向数组,如 ["B端内容", "C端内容", "品牌内容"],支持 20-30 个,每篇随机选取
文章类型数组,如 ["场景代入", "干货清单", "案例分析"],支持 20-30 个,每篇随机选取
产品服务描述文本,如 "协同办公系统、审批流配置、项目协作看板,支持权限分层"
产品特点文本,如 "支持跨部门审批、权限分层、流程留痕和消息提醒"
品牌故事文本
用户痛点文本,如 "审批流分散、信息同步慢、项目进度不透明"
信任背书文本,如 "ISO22000认证、10年出口经验、服务500+企业客户"
客户案例文本,如 "某区域服务团队上线后减少重复录入和跨部门等待"
其他补充信息
创作指令
内容创作指令,自定义内容风格和要求,默认遵循 E-E-A-T 原则
标题创作指令,自定义标题风格和格式
流量复刻指令,自定义标题吸引力和互动引导策略
参数配置
目标字数,默认 1500
地域关键词,如 "杭州,浙江",用于地域化内容生成
去重强度:off(关闭,默认)/ light(轻度,原创度≥80%)/ deep(重度,原创度≥90%)
cURL 示例
curl -X POST "http://ai.dwicoud.com/v1/batch/articles" \ -H "Content-Type: application/json" \ -H "Authorization: Bearer YOUR_API_KEY" \ -d '{ "count": 3, "images": ["https://img.example.com/1.jpg", "https://img.example.com/2.jpg"], "core_keywords": ["协同办公系统", "审批流程管理"], "longtail_keywords": ["协同办公系统怎么选", "跨部门审批怎么提效"], "company_name": "杭州云协同科技有限公司", "company_short": "云协同", "directions": ["B端内容", "C端内容", "品牌内容"], "article_types": ["场景代入", "干货清单", "案例分析"], "products": "协同办公系统、审批流配置、项目协作看板", "features": "支持跨部门审批、权限分层和流程留痕", "brand_story": "长期服务成长型团队,聚焦流程协同和项目透明度", "pain_points": "审批流分散、信息同步慢、项目进度不透明", "trust_backing": "通过等保测评,服务500+企业团队", "cases": "某区域服务团队上线后减少重复录入和跨部门等待", "other_info": "支持私有化部署和 API 集成", "content_instruction": "专业深度分析,符合E-E-A-T原则", "title_instruction": "标题含数字或疑问句式,吸引点击", "flow_instruction": "结尾引导互动,设置悬念", "word_count": 1500, "geo_keywords": "杭州,浙江", "dedup_intensity": "off", "article_blueprints": [{ "direction": "选购避坑", "article_type": "问题解答", "allowed_fields": ["pain_points", "cases", "products"], "blocked_fields": ["brand_story"], "brand_mentions": 2, "knowledge_usage_plan": ["cases", "pain_points"] }], "humanization_mode": "case_driven", "enable_dynamic_knowledge_plan": true, "enable_product_presence_audit": true, "enable_safe_product_boost": true, "enable_soft_ad_precise_rewrite": true, "enable_knowledge_usage_trace": true, "enable_humanization_observability": true }'
SSE 响应格式(单篇返回)

每生成完一篇即推送一条 SSE 数据,包含该篇文章完整内容。batch_index 从 0 开始,最后一篇 done=true。

// 第 1 篇完成
{
  "batch_index": 0,
  "batch_total": 3,
  "article": {
    "title": "5个标准帮你选对协同办公系统",
    "cover_image": "https://img.example.com/1.jpg",
    "content": "正文 Markdown,配图用 ![描述](URL) 穿插...",
    "images_used": ["https://img.example.com/1.jpg", "https://img.example.com/2.jpg"],
    "word_count": 1523,
    "score": 85,
    "knowledge_usage": { "primary_field": "cases", "product_presence": { "safe_mentions": 2 } },
    "acceptance": { "soft_ad": { "soft_ad_risk_score": 32, "product_presence_score": 80, "safe_product_mentions": 2, "unsafe_promo_mentions": 0 } },
    "observability": { "blueprint_applied": true, "safe_product_boost_applied": false }
  },
  "done": false
}

// 最后一篇 done=true
{
  "batch_index": 2,
  "batch_total": 3,
  "article": { ... },
  "done": true
}
错误响应
{
  "error": "生成失败",
  "detail": "具体错误信息"
}
WS 实时数据

WebSocket 实时数据推送接口,用于实时盯盘场景。支持热点文章、关键词趋势、竞品告警三个数据主题的订阅。

连接地址
ws://localhost:8080/ws/memberApi/data-center/realtime
订阅主题
订阅主题:hot-articles(热点文章)/ keyword-trends(关键词趋势)/ competitor-alerts(竞品告警)
连接示例
const ws = new WebSocket('ws://localhost:8080/ws/memberApi/data-center/realtime?topic=hot-articles'); ws.onopen = () => { console.log('连接成功'); }; ws.onmessage = (event) => { const data = JSON.parse(event.data); console.log('收到数据:', data); }; ws.onclose = () => { console.log('连接关闭'); };
客户端消息
发送搜索关键词获取相关数据
ws.send('{ "action": "search", "query": "协同办公" }');
动态切换订阅的数据主题
ws.send('{ "action": "subscribe", "topic": "keyword-trends" }');
服务端推送格式
// 连接成功响应:
{   "code": 0,   "msg": "connected",   "topic": "hot-articles",   "data": { ... } }
数据主题详情
包含排名、标题、浏览量、趋势方向、热度分数
包含关键词、搜索量、变化率、竞争度指标
包含品牌名称、动作类型、详情描述、告警级别、时间戳
热点文章数据示例
{   "topic": "hot-articles",   "data": [     {       "rank": 1,       "title": "2026年协同办公系统趋势分析",       "views": 50000,       "trend": "up",       "score": 95.5     }   ],   "timestamp": 1712643200 }
GET 开发者验证

开发者验证接口,验证 API Key 是否有效且授权该网站使用。支持域名/IP 二选一验证。

请求参数
API Key
网站 URL,用于验证域名授权
响应字段
API Key 是否有效
是否授权该域名/IP
状态说明
套餐名称
剩余额度,"无限" 或数字
cURL 示例
curl -X GET "http://ai.dwicoud.com/api/v1/developer/verify?api_key=YOUR_API_KEY&website_url=https://yourdomain.com"
响应示例
{ "valid": true, "authorized": true, "message": "授权成功", "plan_name": "专业版", "remaining_quota": 4500000, "allowed_domains": "yourdomain.com", "allowed_ips": "" }
验证逻辑
配置了任一条件即生效,匹配任一即可通过。支持子域名匹配:example.com 匹配 www.example.com
POST WatchTower 实时盯盘

实时监测关键词在各大 AI 平台的收录情况,智能分析 GEO 优化方向。支持豆包、DeepSeek、Kimi、纳米AI、通义千问、腾讯元宝、文心一言等国内主流平台及 ChatGPT、Perplexity 等国际平台,共 16 个 AI 平台。

支持平台(16个)
豆包、DeepSeek、Kimi、纳米AI、通义千问、腾讯元宝、文心一言
智谱清言、海螺AI、讯飞星火、百小应、天工AI
ChatGPT、Perplexity、Claude、Gemini
核心功能
实时查询关键词在 16 个 AI 平台的收录状态、可见度分数、排名位置
追踪收录变化趋势,识别上升/下降/稳定态势
基于 GEO 的关键词覆盖、密度调整、矩阵拓展建议
E-E-A-T 质量、情感分析、形式适配、多模态建议
技术 SEO、内部链接、知识图谱、平台适配结构建议
接口列表
单次关键词收录分析(无需创建任务),返回 GEO 三维优化建议
创建实时盯盘任务,持续监测关键词
获取所有盯盘任务列表
获取指定任务的详细信息和历史记录
手动执行一次收录检查
删除盯盘任务
获取支持的 16 个 AI 平台列表及优先级
生成完整 GEO 优化分析报告(6大章节),包含关键词/内容/结构优化策略
单次分析示例(国内平台)
curl -X POST "http://localhost:8080/api/v1/watchtower/analyze" \ -H "Content-Type: application/json" \ -d '{ "keyword": "协同办公系统", "platforms": ["doubao", "deepseek", "kimi", "nami", "tongyi", "yuanbao", "wenxin"], "target_platform": "doubao" }'
指定目标平台,自动调整内容风格。支持:doubao、deepseek、kimi、nami、tongyi、yuanbao、wenxin等12个平台
创建盯盘任务示例
curl -X POST "http://localhost:8080/api/v1/watchtower/tasks" \ -H "Content-Type: application/json" \ -d '{ "keyword": "云协同", "platforms": ["doubao", "deepseek", "kimi", "nami", "tongyi", "wenxin"], "interval": 300 }'
GEO 优化建议分类
收录覆盖(国内平台优先)、密度调整、矩阵拓展
E-E-A-T 质量、情感分析、形式适配、多模态内容
技术SEO、Schema标记、内部链接、知识图谱
响应字段说明
各平台收录详情:platform_name(平台名称)、platform_type(类型)、indexed(是否收录)、visibility_score(可见度)、rank(排名)、mentions(提及次数)、sentiment(情感)、images(图片数)、trend(趋势)
GEO 三维优化建议数组:type(类型)、category(分类:关键词/内容/结构优化)、title(标题)、description(描述)、action(行动建议)、priority(优先级)、geo_direction(固定为"GEO")
汇总数据:total_platforms、indexed_platforms、coverage_rate、国内平台覆盖率、average_visibility、overall_status
响应示例(缩略)
{   "success": true,   "analysis": {     "keyword": "协同办公系统",     "summary": {       "total_platforms": 7,       "indexed_platforms": 5,       "coverage_rate": 71.4,       "average_visibility": 72.3,       "overall_status": "good"     },     "platform_details": {       "doubao": {         "platform_name": "豆包",         "platform_type": "对话",         "region": "国内",         "indexed": true,         "visibility_score": 85.5,         "rank": 3,         "trend": "up"       }     },     "geo_suggestions": [       {         "type": "urgent",         "category": "关键词优化-收录覆盖",         "title": "2个平台未被收录",         "action": "优先覆盖国内主流平台",         "priority": "high",         "geo_direction": "GEO"       }     ]   } }