API Reference v2.1

API 参考手册

R1kkoSec 提供完整的 RESTful API,支持流式对话、会话管理、工具调用等核心功能的程序化集成。

端点列表

Base URL: https://api.r1kkosec.com/v2

POST
/api/chat/stream
发起流式对话请求。支持上下文记忆、工具调用与多轮渗透任务编排。返回 Server-Sent Events 流。
SSE需认证
POST
/api/session/create
创建新的渗透测试会话。每个会话关联独立的沙箱实例与上下文状态,支持设置目标范围与策略。
需认证
GET
/api/session/:id/history
获取指定会话的完整对话历史与工具执行记录。支持分页查询与时间范围筛选。
分页需认证
POST
/api/tools/execute
直接调用特定安全工具(nmap、sqlmap、nuclei 等),绕过 AI 对话层。适用于自动化脚本集成。
异步需认证
GET
/api/health
检查服务健康状态,返回各子系统(API、LLM、沙箱)的运行状态与版本信息。
无需认证

请求示例

使用 curl 发起一次流式对话

请求
curl -X POST https://api.r1kkosec.com/v2/api/chat/stream \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "session_id": "sess_abc123",
    "message": "扫描目标 192.168.1.100 的开放端口",
    "tools": ["nmap", "masscan"],
    "stream": true
  }'
响应 (SSE)
event: message
data: {"type":"text","content":"正在使用 nmap 扫描目标..."}

event: tool_call
data: {"type":"tool","name":"nmap","args":"-sV -p- 192.168.1.100"}

event: tool_result
data: {"type":"result","ports":[22,80,443,3306],"services":["ssh","http","https","mysql"]}

event: message
data: {"type":"text","content":"发现 4 个开放端口:22(SSH), 80(HTTP), 443(HTTPS), 3306(MySQL)..."}

event: done
data: {"type":"done","tokens_used":1247}

认证方式

所有需认证端点均使用 Bearer Token 进行身份验证

Bearer Token 认证

在控制台的「设置 → API 密钥」中生成 Token。每个 Token 关联一个用户身份与权限集,请妥善保管,勿将 Token 硬编码至代码仓库。

Authorization: Bearer r1ks_live_xxxxxxxxxxxxxxxxxxxxxxxxxx

Token 以 r1ks_live_ 开头表示生产环境,r1ks_test_ 开头表示测试环境。