aiconductor-cli 1.3.3 → 1.3.5
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/AGENTS.md +44 -4
- package/README.md +26 -0
- package/api_docs/aic_web_search.md +84 -0
- package/api_docs/audio_converter.md +51 -0
- package/api_docs/balance_query.md +38 -0
- package/api_docs/bing_search.md +55 -0
- package/api_docs/china_stock_data.md +221 -0
- package/api_docs/delete_published_webpage.md +38 -0
- package/api_docs/doubao_search.md +80 -0
- package/api_docs/douyin_link_to_text_v1.md +50 -0
- package/api_docs/douyin_link_to_text_v2.md +50 -0
- package/api_docs/douyin_user_detail.md +65 -0
- package/api_docs/douyin_user_search.md +58 -0
- package/api_docs/douyin_user_videos.md +49 -0
- package/api_docs/douyin_user_videos_async.md +45 -0
- package/api_docs/douyin_user_videos_async_query.md +41 -0
- package/api_docs/douyin_user_videos_max.md +59 -0
- package/api_docs/douyin_video_comments.md +68 -0
- package/api_docs/douyin_video_info.md +70 -0
- package/api_docs/douyin_video_search.md +60 -0
- package/api_docs/douyin_video_search_fast.md +48 -0
- package/api_docs/fast_ocr.md +51 -0
- package/api_docs/flow_article2podcast_creat.md +41 -0
- package/api_docs/flow_article2podcast_query.md +41 -0
- package/api_docs/flow_wx_history_articles.md +45 -0
- package/api_docs/generate_image.md +68 -0
- package/api_docs/get_duration.md +37 -0
- package/api_docs/hot_list_mixed.md +122 -0
- package/api_docs/html_publish.md +50 -0
- package/api_docs/html_publish_flexible.md +65 -0
- package/api_docs/image_resize.md +58 -0
- package/api_docs/image_to_permalink.md +61 -0
- package/api_docs/link_expander.md +39 -0
- package/api_docs/llm_proxy.md +61 -0
- package/api_docs/markitdown.md +47 -0
- package/api_docs/md_to_docx.md +51 -0
- package/api_docs/md_to_html.md +53 -0
- package/api_docs/md_to_mindmap.md +52 -0
- package/api_docs/md_to_pdf.md +52 -0
- package/api_docs/md_to_png.md +53 -0
- package/api_docs/md_to_txt.md +51 -0
- package/api_docs/md_to_wxhtml.md +64 -0
- package/api_docs/md_to_xhs.md +87 -0
- package/api_docs/md_to_xlsx.md +52 -0
- package/api_docs/portrait_enhancement.md +69 -0
- package/api_docs/published_webpages.md +45 -0
- package/api_docs/r2_uploader.md +51 -0
- package/api_docs/schedulerx_job_create.md +56 -0
- package/api_docs/transaction_query.md +52 -0
- package/api_docs/url_to_markdown.md +50 -0
- package/api_docs/video_download_url.md +57 -0
- package/api_docs/video_download_url_oss.md +55 -0
- package/api_docs/video_to_text.md +48 -0
- package/api_docs/video_to_text_v2.md +49 -0
- package/api_docs/volcengine_face_pretty.md +55 -0
- package/api_docs/volcengine_faceswap.md +55 -0
- package/api_docs/website_screenshot.md +49 -0
- package/api_docs/wx_access_token.md +44 -0
- package/api_docs/wx_article_analysis_data_push.md +43 -0
- package/api_docs/wx_article_data.md +48 -0
- package/api_docs/wx_article_style_rewrite.md +45 -0
- package/api_docs/wx_draft_add.md +56 -0
- package/api_docs/wx_draft_publish.md +47 -0
- package/api_docs/wx_history_articles.md +70 -0
- package/api_docs/wx_image_upload.md +46 -0
- package/api_docs/wx_md_to_html.md +48 -0
- package/api_docs/wx_rss_reader.md +59 -0
- package/api_docs/xhs_hot_list.md +48 -0
- package/api_docs/xhs_note_comments_fast.md +54 -0
- package/api_docs/xhs_note_info_v2.md +45 -0
- package/api_docs/xhs_note_info_v3.md +69 -0
- package/api_docs/xhs_note_publish.md +54 -0
- package/api_docs/xhs_note_search_v2.md +73 -0
- package/api_docs/xhs_note_search_v3.md +54 -0
- package/api_docs/xhs_user_info_v2.md +57 -0
- package/api_docs/xhs_user_notes_v2.md +56 -0
- package/api_docs/xhs_user_notes_v3.md +46 -0
- package/bin/aiconductor-cli.js +23 -6
- package/package.json +1 -1
- package/src/api.js +58 -13
- package/src/api.test.js +127 -6
- package/src/commands/content.js +90 -0
- package/src/commands/web_search.js +3 -3
package/AGENTS.md
CHANGED
|
@@ -13,17 +13,23 @@ src/
|
|
|
13
13
|
web_search.js `search web` / `search image` commands
|
|
14
14
|
douyin.js All `douyin` subcommands
|
|
15
15
|
xhs.js `xhs note-publish` command
|
|
16
|
+
.codex/skills/
|
|
17
|
+
<skill-name>/
|
|
18
|
+
SKILL.md Skill entry point and decision/execution workflow
|
|
19
|
+
references/ Documentation loaded only when its stated condition applies
|
|
20
|
+
scripts/ Optional deterministic, reusable helper scripts
|
|
16
21
|
```
|
|
17
22
|
|
|
18
23
|
- Commands are thin wrappers: parse options, call `src/api.js`, format output, and exit.
|
|
19
24
|
- Shared logic (key resolution, error formatting, output) goes into `src/lib/cli-utils.js`.
|
|
20
25
|
- Each command file exports an async function; no side effects on load.
|
|
26
|
+
- Skills are versioned source assets that guide use of one or more real CLI workflows. They are maintained with the corresponding command surface, but are not included in the npm package unless an explicit skill distribution mechanism is added.
|
|
21
27
|
|
|
22
28
|
## Build, Test, and Development Commands
|
|
23
29
|
|
|
24
30
|
- `node bin/aiconductor-cli.js --help` — run locally without a build step
|
|
25
31
|
- `npm install` — install the single runtime dependency (`commander`)
|
|
26
|
-
-
|
|
32
|
+
- `npm test` — run the Node.js built-in test suite (`node --test`)
|
|
27
33
|
|
|
28
34
|
## Coding Style & Naming Conventions
|
|
29
35
|
|
|
@@ -42,9 +48,43 @@ src/
|
|
|
42
48
|
|
|
43
49
|
## Testing Guidelines
|
|
44
50
|
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
51
|
+
Use the Node.js built-in test runner via `npm test`. Place tests next to the module they cover when practical (for example, `src/commands/web_search.test.js`).
|
|
52
|
+
|
|
53
|
+
For changes to a CLI contract (commands, arguments, options, output, or errors), verify:
|
|
54
|
+
- The affected `--help` output exposes the intended command surface.
|
|
55
|
+
- A representative successful response is parsed and formatted correctly.
|
|
56
|
+
- A representative validation, authentication, or upstream API failure reports a non-zero exit path with useful error output.
|
|
57
|
+
|
|
58
|
+
## Skill Design & Maintenance
|
|
59
|
+
|
|
60
|
+
Skills in `.codex/skills` turn the CLI's verified capabilities into agent workflows. Keep them concise and operational; do not treat them as a second, independently authored API reference.
|
|
61
|
+
|
|
62
|
+
### Structure & Triggering
|
|
63
|
+
|
|
64
|
+
- The skill directory name and the `name` field in `SKILL.md` frontmatter must identify the same skill.
|
|
65
|
+
- The frontmatter `description` must state the capability, likely user phrasing or context, and boundaries with adjacent skills. Define one clear owner for overlapping workflows so similar skills do not compete for the same request.
|
|
66
|
+
- Keep `SKILL.md` focused on routing, decisions, command invocation, response handling, and safety rules. Move long option tables, platform-specific setup, and detailed background material into `references/`, and state exactly when that reference should be read.
|
|
67
|
+
- Add `scripts/` only for deterministic, reusable work that avoids repeated implementation. Do not add scripts solely to wrap a single documented CLI command.
|
|
68
|
+
- Add platform-specific metadata (such as files under `agents/`) only after validating its schema and behavior in the target runtime. Remove obsolete or unverified metadata rather than preserving it by convention.
|
|
69
|
+
|
|
70
|
+
### CLI Contract & Execution
|
|
71
|
+
|
|
72
|
+
- Derive command names, arguments, option names, defaults, response fields, and error semantics from the local `--help` output, implementation, or tests. Do not copy stale documentation or infer unsupported behavior.
|
|
73
|
+
- Default to JSON output and document stable response paths for the information the agent must return. Use text output only when the user asks for terminal-readable results.
|
|
74
|
+
- A user's request for a CLI operation authorizes direct execution. Do not preflight installation, API Key availability, or environment setup on every invocation.
|
|
75
|
+
- Put installation, upgrade, and API Key recovery instructions in an on-demand reference. Read it only when the user requests configuration or the command reports a missing CLI, authentication failure, or option/version incompatibility; after recovery, retry the original command at most once.
|
|
76
|
+
|
|
77
|
+
### Safety & External Effects
|
|
78
|
+
|
|
79
|
+
- Never write, commit, or echo API Keys, `.env` content, Base64 media, or other sensitive user material.
|
|
80
|
+
- Describe externally visible effects such as paid calls, temporary links, and public publishing accurately, including their success condition. Do not expose internal billing fields in user-facing output.
|
|
81
|
+
- For irreversible actions, including deletion or invalidating public links, first show the exact target and obtain explicit confirmation unless the user already supplied the unique target and explicitly requested deletion.
|
|
82
|
+
|
|
83
|
+
## CLI & Skill Synchronization
|
|
84
|
+
|
|
85
|
+
- When a command, argument, option, default, output shape, or error behavior is added, renamed, or removed, search for affected skills, README sections, and tests. Update all impacted artifacts in the same change.
|
|
86
|
+
- New or changed skills must be added to Git with their `.codex/skills/**` files. Keep `.codex/` excluded from `.npmignore` so skills remain versioned repository assets without being included in the npm package.
|
|
87
|
+
- Before finalizing a skill-related change, validate the referenced command's `--help` output and the documented JSON response path against implementation or tests.
|
|
48
88
|
|
|
49
89
|
## Commit & Pull Request Guidelines
|
|
50
90
|
|
package/README.md
CHANGED
|
@@ -157,6 +157,32 @@ aiconductor-cli search image <关键词> [选项]
|
|
|
157
157
|
aiconductor-cli search image "长城风景" -n 3 --image-width-min 1200 --image-shapes "横长方形|方形" -f text
|
|
158
158
|
```
|
|
159
159
|
|
|
160
|
+
### 热点选题简报
|
|
161
|
+
|
|
162
|
+
聚合多个平台的热点条目,为内容选题提供带来源链接的原料。默认查询知乎、微博、抖音和 AIHOT,每个来源返回 30 条。
|
|
163
|
+
|
|
164
|
+
```bash
|
|
165
|
+
aiconductor-cli content briefing [选项]
|
|
166
|
+
```
|
|
167
|
+
|
|
168
|
+
| 选项 | 说明 | 默认值 |
|
|
169
|
+
|------|------|--------|
|
|
170
|
+
| `--sources <ids>` | 来源 ID,逗号分隔;例如 `zhihu,weibo,aihot` | `zhihu,weibo,douyin,aihot` |
|
|
171
|
+
| `--limit <n>` | 每个来源返回条数,范围 1 到 30 | 30 |
|
|
172
|
+
| `-k, --api-key <key>` | API Key(可选) | 环境变量 |
|
|
173
|
+
| `-f, --format <format>` | 输出格式:`json` 或 `text` | json |
|
|
174
|
+
|
|
175
|
+
示例:
|
|
176
|
+
```bash
|
|
177
|
+
# 默认综合热点简报
|
|
178
|
+
aiconductor-cli content briefing -f text
|
|
179
|
+
|
|
180
|
+
# 只查看技术与产品来源
|
|
181
|
+
aiconductor-cli content briefing --sources aihot,hackernews,producthunt,juejin --limit 15 -f text
|
|
182
|
+
```
|
|
183
|
+
|
|
184
|
+
默认 JSON 输出会保留成功来源、缓存状态和失败来源,便于后续选题处理。部分来源失败时仍返回其他成功来源;仅成功返回数据的来源会计费。
|
|
185
|
+
|
|
160
186
|
### 抖音数据工具箱
|
|
161
187
|
|
|
162
188
|
```bash
|
|
@@ -0,0 +1,84 @@
|
|
|
1
|
+
## 接口信息
|
|
2
|
+
- **URL**: `http://plugin.aiconductor.fun/api/aic_web_search`
|
|
3
|
+
- **方法**: `POST` / `GET`
|
|
4
|
+
- **Content-Type**: `application/json`
|
|
5
|
+
|
|
6
|
+
## 功能说明
|
|
7
|
+
基于火山引擎融合信息搜索,支持网页搜索和图片搜索,按次计费(0.03元/次)。
|
|
8
|
+
|
|
9
|
+
## 请求参数
|
|
10
|
+
|
|
11
|
+
| 参数名 | 类型 | 必填 | 默认值 | 说明 |
|
|
12
|
+
|--------|------|------|--------|------|
|
|
13
|
+
| api_key | string | 是 | - | 计费系统API密钥 |
|
|
14
|
+
| query | string | 是 | - | 搜索关键词,1~100字符 |
|
|
15
|
+
| search_type | string | 是 | - | 搜索类型:`web`(网页搜索)/ `image`(图片搜索) |
|
|
16
|
+
| count | integer | 否 | 5 | 返回条数。web最多50,image最多5 |
|
|
17
|
+
| time_range | string | 否 | - | 时间范围过滤,可选值见下方说明 |
|
|
18
|
+
| need_summary | boolean | 否 | true | 是否返回摘要(仅web类型有效) |
|
|
19
|
+
| content_formats | string | 否 | Text | 内容格式:`Text` / `Markdown` |
|
|
20
|
+
|
|
21
|
+
### time_range 可选值
|
|
22
|
+
|
|
23
|
+
| 值 | 说明 |
|
|
24
|
+
|----|------|
|
|
25
|
+
| OneDay | 最近一天 |
|
|
26
|
+
| OneWeek | 最近一周 |
|
|
27
|
+
| OneMonth | 最近一月 |
|
|
28
|
+
| OneYear | 最近一年 |
|
|
29
|
+
| YYYY-MM-DD..YYYY-MM-DD | 自定义日期区间,如 `2025-01-01..2025-04-18` |
|
|
30
|
+
|
|
31
|
+
## 响应参数
|
|
32
|
+
|
|
33
|
+
| 参数名 | 类型 | 说明 |
|
|
34
|
+
|--------|------|------|
|
|
35
|
+
| success | boolean | 是否成功 |
|
|
36
|
+
| message | string | 响应消息 |
|
|
37
|
+
| data | object | 搜索结果数据 |
|
|
38
|
+
| data.ResultCount | integer | 结果数量 |
|
|
39
|
+
| data.TimeCost | integer | 搜索耗时(毫秒) |
|
|
40
|
+
| data.WebResults | array | 网页搜索结果(search_type=web时) |
|
|
41
|
+
| data.WebResults[].SortId | integer | 排序序号 |
|
|
42
|
+
| data.WebResults[].Title | string | 页面标题 |
|
|
43
|
+
| data.WebResults[].SiteName | string | 站点名称 |
|
|
44
|
+
| data.WebResults[].Url | string | 页面链接 |
|
|
45
|
+
| data.WebResults[].Snippet | string | 摘要片段 |
|
|
46
|
+
| data.WebResults[].Summary | string | 内容摘要(需need_summary=true) |
|
|
47
|
+
| data.WebResults[].Content | string | 页面正文内容 |
|
|
48
|
+
| data.WebResults[].PublishTime | string | 发布时间 |
|
|
49
|
+
| data.WebResults[].RankScore | float | 相关度评分 |
|
|
50
|
+
| data.ImageResults | array | 图片搜索结果(search_type=image时) |
|
|
51
|
+
| data.ImageResults[].SortId | integer | 排序序号 |
|
|
52
|
+
| data.ImageResults[].Title | string | 图片标题 |
|
|
53
|
+
| data.ImageResults[].SiteName | string | 来源站点 |
|
|
54
|
+
| data.ImageResults[].Url | string | 来源页面链接 |
|
|
55
|
+
| data.ImageResults[].Image.Url | string | 图片直链 |
|
|
56
|
+
| data.ImageResults[].Image.Width | integer | 图片宽度(px) |
|
|
57
|
+
| data.ImageResults[].Image.Height | integer | 图片高度(px) |
|
|
58
|
+
| billing | object | 计费信息 |
|
|
59
|
+
| billing.service_fee | float | 服务费 |
|
|
60
|
+
| billing.discount_applied | boolean | 是否应用折扣 |
|
|
61
|
+
| billing.balance_before | float | 扣费前余额 |
|
|
62
|
+
| billing.balance_after | float | 扣费后余额 |
|
|
63
|
+
| billing.currency | string | 货币类型(CNY) |
|
|
64
|
+
| billing.transaction_id | string | 交易ID |
|
|
65
|
+
|
|
66
|
+
## 请求示例
|
|
67
|
+
|
|
68
|
+
```bash
|
|
69
|
+
curl -X POST "http://plugin.aiconductor.fun/api/aic_web_search" \
|
|
70
|
+
-H "Content-Type: application/json" \
|
|
71
|
+
-d '{
|
|
72
|
+
"api_key": "your_api_key_here",
|
|
73
|
+
"query": "北京今日天气",
|
|
74
|
+
"search_type": "web",
|
|
75
|
+
"count": 5,
|
|
76
|
+
"need_summary": true
|
|
77
|
+
}'
|
|
78
|
+
```
|
|
79
|
+
|
|
80
|
+
## 注意事项
|
|
81
|
+
1. query为必填参数,长度1~100字符
|
|
82
|
+
2. search_type只支持web和image两种类型
|
|
83
|
+
3. need_summary仅对web搜索有效
|
|
84
|
+
4. 搜索失败不扣费,仅成功时计费
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
## 接口信息
|
|
2
|
+
- **URL**: `http://plugin.aiconductor.fun/api/audio_converter`
|
|
3
|
+
- **方法**: `POST`
|
|
4
|
+
- **Content-Type**: `application/json`
|
|
5
|
+
- **鉴权**: 请求头 `Authorization: Bearer <api_key>`(兼容 body/query 中 `api_key` 参数)
|
|
6
|
+
|
|
7
|
+
## 功能说明
|
|
8
|
+
将视频 URL 转换为音频文件,支持多种输出格式(默认 mp3),包含 API 密钥验证与按秒计费(基础费率 × 音频时长秒数,向上取整),具体费率以 api_services 表配置为准。
|
|
9
|
+
|
|
10
|
+
## 请求参数
|
|
11
|
+
|
|
12
|
+
| 参数名 | 类型 | 必填 | 默认值 | 说明 |
|
|
13
|
+
|--------|------|------|--------|------|
|
|
14
|
+
| video_url | string | 是 | - | 待转换的视频文件 URL |
|
|
15
|
+
| output_format | string | 否 | mp3 | 输出音频格式,如 mp3、wav 等 |
|
|
16
|
+
|
|
17
|
+
> **鉴权参数**:api_key 通过请求头 `Authorization: Bearer <api_key>` 传递,不再列入请求参数表。
|
|
18
|
+
|
|
19
|
+
## 响应参数
|
|
20
|
+
|
|
21
|
+
| 参数名 | 类型 | 说明 |
|
|
22
|
+
|--------|------|------|
|
|
23
|
+
| success | boolean | 是否成功 |
|
|
24
|
+
| message | string | 响应消息 |
|
|
25
|
+
| data | object | 转换结果数据 |
|
|
26
|
+
| data.duration | number | 音频时长(秒) |
|
|
27
|
+
| data.* | any | 转换后音频文件信息(URL 等),结构取决于底层转换服务 |
|
|
28
|
+
| billing | object | 计费信息 |
|
|
29
|
+
| billing.service_fee | number | 本次服务费用 |
|
|
30
|
+
| billing.discount_applied | boolean | 是否应用折扣/计费 |
|
|
31
|
+
| billing.balance_before | number | 扣费前余额 |
|
|
32
|
+
| billing.balance_after | number | 扣费后余额 |
|
|
33
|
+
| billing.currency | string | 货币单位(CNY) |
|
|
34
|
+
| billing.transaction_id | string | 交易流水号(失败为 null) |
|
|
35
|
+
| billing.base_fee | number | 基础费率(成功及余额不足分支返回) |
|
|
36
|
+
| billing.duration_seconds | number | 计费时长(秒,向上取整,成功及余额不足分支返回) |
|
|
37
|
+
|
|
38
|
+
## 请求示例
|
|
39
|
+
|
|
40
|
+
```bash
|
|
41
|
+
curl -X POST "http://plugin.aiconductor.fun/api/audio_converter" \
|
|
42
|
+
-H "Authorization: Bearer your_api_key" \
|
|
43
|
+
-H "Content-Type: application/json" \
|
|
44
|
+
-d '{"video_url": "https://example.com/video.mp4", "output_format": "mp3"}'
|
|
45
|
+
```
|
|
46
|
+
|
|
47
|
+
## 注意事项
|
|
48
|
+
1. 采用后扣费模式:转换失败、API 密钥无效、余额不足以外的其他异常均不扣费(service_fee 为 0)。
|
|
49
|
+
2. 费用 = 基础费率 × 音频时长(向上取整秒数);余额不足时返回失败且预置计费信息(discount_applied 为 true 但 transaction_id 为 null)。
|
|
50
|
+
3. API 密钥无效或无权限时返回对应错误且不计费。
|
|
51
|
+
4. data 字段具体结构依赖底层音频转换服务,duration 为可靠返回字段。
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
## 接口信息
|
|
2
|
+
- **URL**: `http://plugin.aiconductor.fun/api/balance_query`
|
|
3
|
+
- **方法**: `POST` / `GET`
|
|
4
|
+
- **Content-Type**: `application/json`
|
|
5
|
+
- **鉴权**: 请求头 `Authorization: Bearer <api_key>`(兼容 body/query 中 `api_key` 参数)
|
|
6
|
+
|
|
7
|
+
## 功能说明
|
|
8
|
+
通过 API 密钥查询当前账户余额。查询功能,不计费。
|
|
9
|
+
|
|
10
|
+
## 请求参数
|
|
11
|
+
|
|
12
|
+
| 参数名 | 类型 | 必填 | 默认值 | 说明 |
|
|
13
|
+
|--------|------|------|--------|------|
|
|
14
|
+
| (无业务参数) | - | - | - | 仅需通过请求头鉴权,无需业务参数 |
|
|
15
|
+
|
|
16
|
+
> **鉴权参数**:api_key 通过请求头 `Authorization: Bearer <api_key>` 传递,不再列入请求参数表。
|
|
17
|
+
|
|
18
|
+
## 响应参数
|
|
19
|
+
|
|
20
|
+
| 参数名 | 类型 | 说明 |
|
|
21
|
+
|--------|------|------|
|
|
22
|
+
| success | boolean | 是否成功 |
|
|
23
|
+
| message | string | 响应消息 |
|
|
24
|
+
| balance | float | 账户余额 |
|
|
25
|
+
|
|
26
|
+
## 请求示例
|
|
27
|
+
|
|
28
|
+
```bash
|
|
29
|
+
curl -X POST "http://plugin.aiconductor.fun/api/balance_query" \
|
|
30
|
+
-H "Authorization: Bearer your_api_key" \
|
|
31
|
+
-H "Content-Type: application/json" \
|
|
32
|
+
-d '{}'
|
|
33
|
+
```
|
|
34
|
+
|
|
35
|
+
## 注意事项
|
|
36
|
+
1. 仅依赖请求头中的 `api_key` 鉴权,无需任何业务参数。
|
|
37
|
+
2. API 密钥无效返回 `success=false` 且 `balance=0`;账户被禁用(status≠1)同样返回 `success=false`。
|
|
38
|
+
3. 该接口为只读查询,不触发任何扣费或交易记录。
|
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
## 接口信息
|
|
2
|
+
- **URL**: `http://plugin.aiconductor.fun/api/bing_search`
|
|
3
|
+
- **方法**: `POST`
|
|
4
|
+
- **Content-Type**: `application/json`
|
|
5
|
+
- **鉴权**: 请求头 `Authorization: Bearer <api_key>`(兼容 body/query 中 `api_key` 参数)
|
|
6
|
+
|
|
7
|
+
## 功能说明
|
|
8
|
+
通过 Coze 工作流调用 Bing 搜索 API,支持关键词搜索、结果数量、时间范围和偏移量参数,包含 API 密钥验证与按次计费,费用以 api_services 表配置为准。
|
|
9
|
+
|
|
10
|
+
## 请求参数
|
|
11
|
+
|
|
12
|
+
| 参数名 | 类型 | 必填 | 默认值 | 说明 |
|
|
13
|
+
|--------|------|------|--------|------|
|
|
14
|
+
| query | string | 是 | - | 搜索关键词 |
|
|
15
|
+
| count | int | 否 | 10 | 返回结果数量,范围 1~50 |
|
|
16
|
+
| freshness | string | 否 | 空字符串 | 时间范围,格式 YYYY-MM-DD..YYYY-MM-DD |
|
|
17
|
+
| offset | int | 否 | 0 | 结果偏移量 |
|
|
18
|
+
|
|
19
|
+
> **鉴权参数**:api_key 通过请求头 `Authorization: Bearer <api_key>` 传递,不再列入请求参数表。
|
|
20
|
+
|
|
21
|
+
## 响应参数
|
|
22
|
+
|
|
23
|
+
| 参数名 | 类型 | 说明 |
|
|
24
|
+
|--------|------|------|
|
|
25
|
+
| success | boolean | 是否成功 |
|
|
26
|
+
| message | string | 响应消息 |
|
|
27
|
+
| data | object | 搜索结果数据 |
|
|
28
|
+
| data.results | array | 搜索结果列表 |
|
|
29
|
+
| data.results[].name | string | 结果标题 |
|
|
30
|
+
| data.results[].url | string | 结果链接 |
|
|
31
|
+
| data.results[].snippet | string | 结果摘要 |
|
|
32
|
+
| billing | object | 计费信息 |
|
|
33
|
+
| billing.service_fee | number | 本次服务费用 |
|
|
34
|
+
| billing.discount_applied | boolean | 是否应用折扣/计费 |
|
|
35
|
+
| billing.balance_before | number | 扣费前余额 |
|
|
36
|
+
| billing.balance_after | number | 扣费后余额 |
|
|
37
|
+
| billing.currency | string | 货币单位(CNY) |
|
|
38
|
+
| billing.transaction_id | string | 交易流水号(失败为 null) |
|
|
39
|
+
| billing.error | string | 错误描述(失败时返回,成功时无此字段) |
|
|
40
|
+
|
|
41
|
+
## 请求示例
|
|
42
|
+
|
|
43
|
+
```bash
|
|
44
|
+
curl -X POST "http://plugin.aiconductor.fun/api/bing_search" \
|
|
45
|
+
-H "Authorization: Bearer your_api_key" \
|
|
46
|
+
-H "Content-Type: application/json" \
|
|
47
|
+
-d '{"query": "人工智能 最新进展", "count": 10, "freshness": "2024-01-01..2024-12-31", "offset": 0}'
|
|
48
|
+
```
|
|
49
|
+
|
|
50
|
+
## 注意事项
|
|
51
|
+
1. 采用后扣费模式:搜索失败、参数错误、余额不足、上游异常均不扣费(service_fee 为 0)。
|
|
52
|
+
2. query 为必填;count 须在 1~50 之间,否则返回参数错误且不扣费。
|
|
53
|
+
3. 上游 Coze 工作流请求超时 60 秒,超时视为服务异常且不扣费。
|
|
54
|
+
4. 按次计费:搜索成功即扣费。
|
|
55
|
+
5. billing.error 仅在失败分支返回,用于说明失败原因。
|
|
@@ -0,0 +1,221 @@
|
|
|
1
|
+
# 中国股票数据 API 文档(统一 params 结构)
|
|
2
|
+
|
|
3
|
+
- **Base URL**:`https://plugin.aiconductor.fun`
|
|
4
|
+
- **统一入口**:`POST /api/china_stock_data`
|
|
5
|
+
- **请求结构**:
|
|
6
|
+
|
|
7
|
+
```json
|
|
8
|
+
{
|
|
9
|
+
"api_key": "",
|
|
10
|
+
"tool_name": "",
|
|
11
|
+
"params": {}
|
|
12
|
+
}
|
|
13
|
+
```
|
|
14
|
+
|
|
15
|
+
- **示例股票**:贵州茅台 `600519`
|
|
16
|
+
|
|
17
|
+
## output_format(点到即可)
|
|
18
|
+
|
|
19
|
+
多数工具支持 `params.output_format` 指定输出格式:`json | markdown | csv | html | xml | excel`,不传通常默认 `markdown`。
|
|
20
|
+
|
|
21
|
+
[0m---
|
|
22
|
+
|
|
23
|
+
## 通用 curl 模板
|
|
24
|
+
|
|
25
|
+
```bash
|
|
26
|
+
curl -X POST 'https://plugin.aiconductor.fun/api/china_stock_data' \
|
|
27
|
+
-H 'Content-Type: application/json' \
|
|
28
|
+
-d '{
|
|
29
|
+
"api_key": "sk_ece2677ec2137c37bab9df9f56a2b2",
|
|
30
|
+
"tool_name": "<TOOL_NAME>",
|
|
31
|
+
"params": {
|
|
32
|
+
|
|
33
|
+
}
|
|
34
|
+
}'
|
|
35
|
+
```
|
|
36
|
+
|
|
37
|
+
---
|
|
38
|
+
|
|
39
|
+
## 接口列表(30 个 tool_name)
|
|
40
|
+
|
|
41
|
+
下面每个“接口”都给一个可直接用的 curl 示例(统一用 `600519`)。
|
|
42
|
+
|
|
43
|
+
### 1) get_time_info(时间信息)
|
|
44
|
+
```bash
|
|
45
|
+
curl -X POST 'https://plugin.aiconductor.fun/api/china_stock_data' -H 'Content-Type: application/json' \
|
|
46
|
+
-d '{"api_key":"sk_ece2677ec2137c37bab9df9f56a2b2","tool_name":"get_time_info","params":{}}'
|
|
47
|
+
```
|
|
48
|
+
|
|
49
|
+
### 2) get_realtime_data(实时行情)
|
|
50
|
+
```bash
|
|
51
|
+
curl -X POST 'https://plugin.aiconductor.fun/api/china_stock_data' -H 'Content-Type: application/json' \
|
|
52
|
+
-d '{"api_key":"sk_ece2677ec2137c37bab9df9f56a2b2","tool_name":"get_realtime_data","params":{"symbol":"600519","output_format":"json"}}'
|
|
53
|
+
```
|
|
54
|
+
|
|
55
|
+
### 3) get_hist_data(历史行情)
|
|
56
|
+
```bash
|
|
57
|
+
curl -X POST 'https://plugin.aiconductor.fun/api/china_stock_data' -H 'Content-Type: application/json' \
|
|
58
|
+
-d '{"api_key":"sk_ece2677ec2137c37bab9df9f56a2b2","tool_name":"get_hist_data","params":{"symbol":"600519","interval":"day","interval_multiplier":1,"start_date":"2026-01-01","end_date":"2026-03-18","adjust":"none","indicators_list":null,"output_format":"json"}}'
|
|
59
|
+
```
|
|
60
|
+
|
|
61
|
+
### 4) get_news_data(相关新闻)
|
|
62
|
+
```bash
|
|
63
|
+
curl -X POST 'https://plugin.aiconductor.fun/api/china_stock_data' -H 'Content-Type: application/json' \
|
|
64
|
+
-d '{"api_key":"sk_ece2677ec2137c37bab9df9f56a2b2","tool_name":"get_news_data","params":{"symbol":"600519","output_format":"json"}}'
|
|
65
|
+
```
|
|
66
|
+
|
|
67
|
+
### 5) get_stock_basic_info(股票概要)
|
|
68
|
+
```bash
|
|
69
|
+
curl -X POST 'https://plugin.aiconductor.fun/api/china_stock_data' -H 'Content-Type: application/json' \
|
|
70
|
+
-d '{"api_key":"sk_ece2677ec2137c37bab9df9f56a2b2","tool_name":"get_stock_basic_info","params":{"symbol":"600519","output_format":"json"}}'
|
|
71
|
+
```
|
|
72
|
+
|
|
73
|
+
### 6) get_financial_metrics(关键财务指标)
|
|
74
|
+
```bash
|
|
75
|
+
curl -X POST 'https://plugin.aiconductor.fun/api/china_stock_data' -H 'Content-Type: application/json' \
|
|
76
|
+
-d '{"api_key":"sk_ece2677ec2137c37bab9df9f56a2b2","tool_name":"get_financial_metrics","params":{"symbol":"600519","output_format":"json"}}'
|
|
77
|
+
```
|
|
78
|
+
|
|
79
|
+
### 7) get_balance_sheet(资产负债表)
|
|
80
|
+
```bash
|
|
81
|
+
curl -X POST 'https://plugin.aiconductor.fun/api/china_stock_data' -H 'Content-Type: application/json' \
|
|
82
|
+
-d '{"api_key":"sk_ece2677ec2137c37bab9df9f56a2b2","tool_name":"get_balance_sheet","params":{"symbol":"600519","output_format":"json"}}'
|
|
83
|
+
```
|
|
84
|
+
|
|
85
|
+
### 8) get_income_statement(利润表)
|
|
86
|
+
```bash
|
|
87
|
+
curl -X POST 'https://plugin.aiconductor.fun/api/china_stock_data' -H 'Content-Type: application/json' \
|
|
88
|
+
-d '{"api_key":"sk_ece2677ec2137c37bab9df9f56a2b2","tool_name":"get_income_statement","params":{"symbol":"600519","output_format":"json"}}'
|
|
89
|
+
```
|
|
90
|
+
|
|
91
|
+
### 9) get_cash_flow(现金流量表)
|
|
92
|
+
```bash
|
|
93
|
+
curl -X POST 'https://plugin.aiconductor.fun/api/china_stock_data' -H 'Content-Type: application/json' \
|
|
94
|
+
-d '{"api_key":"sk_ece2677ec2137c37bab9df9f56a2b2","tool_name":"get_cash_flow","params":{"symbol":"600519","output_format":"json"}}'
|
|
95
|
+
```
|
|
96
|
+
|
|
97
|
+
### 10) get_fund_flow(资金流向)
|
|
98
|
+
```bash
|
|
99
|
+
curl -X POST 'https://plugin.aiconductor.fun/api/china_stock_data' -H 'Content-Type: application/json' \
|
|
100
|
+
-d '{"api_key":"sk_ece2677ec2137c37bab9df9f56a2b2","tool_name":"get_fund_flow","params":{"symbol":"600519","output_format":"json"}}'
|
|
101
|
+
```
|
|
102
|
+
|
|
103
|
+
### 11) get_inner_trade_data(内部股东交易)
|
|
104
|
+
```bash
|
|
105
|
+
curl -X POST 'https://plugin.aiconductor.fun/api/china_stock_data' -H 'Content-Type: application/json' \
|
|
106
|
+
-d '{"api_key":"sk_ece2677ec2137c37bab9df9f56a2b2","tool_name":"get_inner_trade_data","params":{"symbol":"600519","output_format":"json"}}'
|
|
107
|
+
```
|
|
108
|
+
|
|
109
|
+
### 12) get_investor_sentiment(投资情绪)
|
|
110
|
+
```bash
|
|
111
|
+
curl -X POST 'https://plugin.aiconductor.fun/api/china_stock_data' -H 'Content-Type: application/json' \
|
|
112
|
+
-d '{"api_key":"sk_ece2677ec2137c37bab9df9f56a2b2","tool_name":"get_investor_sentiment","params":{"symbol":"600519","output_format":"json"}}'
|
|
113
|
+
```
|
|
114
|
+
|
|
115
|
+
### 13) get_shareholder_info(股东情况)
|
|
116
|
+
```bash
|
|
117
|
+
curl -X POST 'https://plugin.aiconductor.fun/api/china_stock_data' -H 'Content-Type: application/json' \
|
|
118
|
+
-d '{"api_key":"sk_ece2677ec2137c37bab9df9f56a2b2","tool_name":"get_shareholder_info","params":{"symbol":"600519","output_format":"json"}}'
|
|
119
|
+
```
|
|
120
|
+
|
|
121
|
+
### 14) get_product_info(主营构成/产品情况)
|
|
122
|
+
```bash
|
|
123
|
+
curl -X POST 'https://plugin.aiconductor.fun/api/china_stock_data' -H 'Content-Type: application/json' \
|
|
124
|
+
-d '{"api_key":"sk_ece2677ec2137c37bab9df9f56a2b2","tool_name":"get_product_info","params":{"symbol":"600519","output_format":"json"}}'
|
|
125
|
+
```
|
|
126
|
+
|
|
127
|
+
### 15) get_profit_forecast(业绩预测)
|
|
128
|
+
```bash
|
|
129
|
+
curl -X POST 'https://plugin.aiconductor.fun/api/china_stock_data' -H 'Content-Type: application/json' \
|
|
130
|
+
-d '{"api_key":"sk_ece2677ec2137c37bab9df9f56a2b2","tool_name":"get_profit_forecast","params":{"symbol":"600519","output_format":"json"}}'
|
|
131
|
+
```
|
|
132
|
+
|
|
133
|
+
### 16) get_stock_fhps_detail(分红送股详情)
|
|
134
|
+
```bash
|
|
135
|
+
curl -X POST 'https://plugin.aiconductor.fun/api/china_stock_data' -H 'Content-Type: application/json' \
|
|
136
|
+
-d '{"api_key":"sk_ece2677ec2137c37bab9df9f56a2b2","tool_name":"get_stock_fhps_detail","params":{"symbol":"600519","output_format":"json"}}'
|
|
137
|
+
```
|
|
138
|
+
|
|
139
|
+
### 17) get_stock_cyq(筹码分布)
|
|
140
|
+
```bash
|
|
141
|
+
curl -X POST 'https://plugin.aiconductor.fun/api/china_stock_data' -H 'Content-Type: application/json' \
|
|
142
|
+
-d '{"api_key":"sk_ece2677ec2137c37bab9df9f56a2b2","tool_name":"get_stock_cyq","params":{"symbol":"600519","output_format":"json"}}'
|
|
143
|
+
```
|
|
144
|
+
|
|
145
|
+
### 18) get_stock_research_report(研究报告)
|
|
146
|
+
```bash
|
|
147
|
+
curl -X POST 'https://plugin.aiconductor.fun/api/china_stock_data' -H 'Content-Type: application/json' \
|
|
148
|
+
-d '{"api_key":"sk_ece2677ec2137c37bab9df9f56a2b2","tool_name":"get_stock_research_report","params":{"symbol":"600519","output_format":"json"}}'
|
|
149
|
+
```
|
|
150
|
+
|
|
151
|
+
### 19) get_stock_circulate_stock_holder(流通股东)
|
|
152
|
+
```bash
|
|
153
|
+
curl -X POST 'https://plugin.aiconductor.fun/api/china_stock_data' -H 'Content-Type: application/json' \
|
|
154
|
+
-d '{"api_key":"sk_ece2677ec2137c37bab9df9f56a2b2","tool_name":"get_stock_circulate_stock_holder","params":{"symbol":"600519","output_format":"json"}}'
|
|
155
|
+
```
|
|
156
|
+
|
|
157
|
+
### 20) get_stock_management_change(高管变动)
|
|
158
|
+
```bash
|
|
159
|
+
curl -X POST 'https://plugin.aiconductor.fun/api/china_stock_data' -H 'Content-Type: application/json' \
|
|
160
|
+
-d '{"api_key":"sk_ece2677ec2137c37bab9df9f56a2b2","tool_name":"get_stock_management_change","params":{"symbol":"600519","output_format":"json"}}'
|
|
161
|
+
```
|
|
162
|
+
|
|
163
|
+
### 21) get_stock_restricted_release_queue(限售解禁)
|
|
164
|
+
```bash
|
|
165
|
+
curl -X POST 'https://plugin.aiconductor.fun/api/china_stock_data' -H 'Content-Type: application/json' \
|
|
166
|
+
-d '{"api_key":"sk_ece2677ec2137c37bab9df9f56a2b2","tool_name":"get_stock_restricted_release_queue","params":{"symbol":"600519","output_format":"json"}}'
|
|
167
|
+
```
|
|
168
|
+
|
|
169
|
+
### 22) get_stock_value(估值/价值指标)
|
|
170
|
+
```bash
|
|
171
|
+
curl -X POST 'https://plugin.aiconductor.fun/api/china_stock_data' -H 'Content-Type: application/json' \
|
|
172
|
+
-d '{"api_key":"sk_ece2677ec2137c37bab9df9f56a2b2","tool_name":"get_stock_value","params":{"symbol":"600519","output_format":"json"}}'
|
|
173
|
+
```
|
|
174
|
+
|
|
175
|
+
### 23) get_macro_data(宏观指标)
|
|
176
|
+
```bash
|
|
177
|
+
curl -X POST 'https://plugin.aiconductor.fun/api/china_stock_data' -H 'Content-Type: application/json' \
|
|
178
|
+
-d '{"api_key":"sk_ece2677ec2137c37bab9df9f56a2b2","tool_name":"get_macro_data","params":{"indicator":"gdp","output_format":"json"}}'
|
|
179
|
+
```
|
|
180
|
+
|
|
181
|
+
### 24) get_stock_a_code_name(A股代码-名称表)
|
|
182
|
+
```bash
|
|
183
|
+
curl -X POST 'https://plugin.aiconductor.fun/api/china_stock_data' -H 'Content-Type: application/json' \
|
|
184
|
+
-d '{"api_key":"sk_ece2677ec2137c37bab9df9f56a2b2","tool_name":"get_stock_a_code_name","params":{"output_format":"json"}}'
|
|
185
|
+
```
|
|
186
|
+
|
|
187
|
+
### 25) get_stock_technical_rank(技术形态榜单)
|
|
188
|
+
```bash
|
|
189
|
+
curl -X POST 'https://plugin.aiconductor.fun/api/china_stock_data' -H 'Content-Type: application/json' \
|
|
190
|
+
-d '{"api_key":"sk_ece2677ec2137c37bab9df9f56a2b2","tool_name":"get_stock_technical_rank","params":{"indicator_name":"连续上涨","output_format":"json"}}'
|
|
191
|
+
```
|
|
192
|
+
|
|
193
|
+
### 26) get_stock_board_industry_summary(板块行业概览)
|
|
194
|
+
```bash
|
|
195
|
+
curl -X POST 'https://plugin.aiconductor.fun/api/china_stock_data' -H 'Content-Type: application/json' \
|
|
196
|
+
-d '{"api_key":"sk_ece2677ec2137c37bab9df9f56a2b2","tool_name":"get_stock_board_industry_summary","params":{"output_format":"json"}}'
|
|
197
|
+
```
|
|
198
|
+
|
|
199
|
+
### 27) get_all_cni_indices(全部中证指数列表)
|
|
200
|
+
```bash
|
|
201
|
+
curl -X POST 'https://plugin.aiconductor.fun/api/china_stock_data' -H 'Content-Type: application/json' \
|
|
202
|
+
-d '{"api_key":"sk_ece2677ec2137c37bab9df9f56a2b2","tool_name":"get_all_cni_indices","params":{"output_format":"json"}}'
|
|
203
|
+
```
|
|
204
|
+
|
|
205
|
+
### 28) get_cni_index_hist(中证指数历史)
|
|
206
|
+
```bash
|
|
207
|
+
curl -X POST 'https://plugin.aiconductor.fun/api/china_stock_data' -H 'Content-Type: application/json' \
|
|
208
|
+
-d '{"api_key":"sk_ece2677ec2137c37bab9df9f56a2b2","tool_name":"get_cni_index_hist","params":{"symbol":"399300","start_date":"20260101","end_date":"20260318","output_format":"json"}}'
|
|
209
|
+
```
|
|
210
|
+
|
|
211
|
+
### 29) get_cni_index_detail(中证指数成分)
|
|
212
|
+
```bash
|
|
213
|
+
curl -X POST 'https://plugin.aiconductor.fun/api/china_stock_data' -H 'Content-Type: application/json' \
|
|
214
|
+
-d '{"api_key":"sk_ece2677ec2137c37bab9df9f56a2b2","tool_name":"get_cni_index_detail","params":{"symbol":"399300","date":"202603","output_format":"json"}}'
|
|
215
|
+
```
|
|
216
|
+
|
|
217
|
+
### 30) get_stock_volatility(分钟级波动率)
|
|
218
|
+
```bash
|
|
219
|
+
curl -X POST 'https://plugin.aiconductor.fun/api/china_stock_data' -H 'Content-Type: application/json' \
|
|
220
|
+
-d '{"api_key":"sk_ece2677ec2137c37bab9df9f56a2b2","tool_name":"get_stock_volatility","params":{"symbol":"600519","start_date":"2026-03-18 09:30:00","end_date":"2026-03-18 15:00:00","period":"1","adjust":"none","output_format":"json"}}'
|
|
221
|
+
```
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
## 接口信息
|
|
2
|
+
- **URL**: `http://plugin.aiconductor.fun/api/delete_published_webpage`
|
|
3
|
+
- **方法**: `POST` / `GET`
|
|
4
|
+
- **Content-Type**: `application/json`
|
|
5
|
+
- **鉴权**: 请求头 `Authorization: Bearer <api_key>`(兼容 body/query 中 `api_key` 参数)
|
|
6
|
+
|
|
7
|
+
## 功能说明
|
|
8
|
+
删除当前用户指定的已发布网页,同时删除 OSS 上的 HTML 对象使公开链接失效,免费。
|
|
9
|
+
|
|
10
|
+
## 请求参数
|
|
11
|
+
|
|
12
|
+
| 参数名 | 类型 | 必填 | 默认值 | 说明 |
|
|
13
|
+
|--------|------|------|--------|------|
|
|
14
|
+
| webpage_id | integer | 是 | - | 已发布网页的记录 ID,从网页列表接口的 `webpages[].id` 获取 |
|
|
15
|
+
|
|
16
|
+
> **鉴权参数**:api_key 通过请求头 `Authorization: Bearer <api_key>` 传递,不再列入请求参数表。
|
|
17
|
+
|
|
18
|
+
## 响应参数
|
|
19
|
+
|
|
20
|
+
| 参数名 | 类型 | 说明 |
|
|
21
|
+
|--------|------|------|
|
|
22
|
+
| success | boolean | 是否成功 |
|
|
23
|
+
| message | string | 响应消息 |
|
|
24
|
+
| webpage_id | integer / null | 删除成功时返回已删除的记录 ID;失败时为 null |
|
|
25
|
+
|
|
26
|
+
## 请求示例
|
|
27
|
+
|
|
28
|
+
```bash
|
|
29
|
+
curl -X POST "http://plugin.aiconductor.fun/api/delete_published_webpage" \
|
|
30
|
+
-H "Authorization: Bearer your_api_key" \
|
|
31
|
+
-H "Content-Type: application/json" \
|
|
32
|
+
-d '{"webpage_id": 123}'
|
|
33
|
+
```
|
|
34
|
+
|
|
35
|
+
## 注意事项
|
|
36
|
+
1. 只能删除当前 API 密钥所属用户的记录;不存在或无权的记录会返回同一提示。
|
|
37
|
+
2. 删除会同时移除 OSS 对象,原公开链接将无法再访问。
|
|
38
|
+
3. OSS 删除或数据库删除失败时,接口会返回失败,可重试。
|