{ "info": { "_postman_id": "aiaa-notification-service", "name": "AIAA Notification Service", "description": "通知服务 API。HTTPie:Import → Postman → 选择本文件。\n\n变量:\n- baseUrl:服务地址\n- adminKey:config.yaml → server.admin_key\n- sourceApiKey:创建 Source 时返回的 api_key", "schema": "https://schema.getpostman.com/json/collection/v2.1.0/collection.json" }, "variable": [ { "key": "baseUrl", "value": "http://localhost:8080" }, { "key": "adminKey", "value": "admin-sk-change-me" }, { "key": "sourceApiKey", "value": "SOURCE_API_KEY" }, { "key": "sourceId", "value": "1" }, { "key": "templateId", "value": "1" }, { "key": "channelId", "value": "1" }, { "key": "ruleId", "value": "1" } ], "item": [ { "name": "Health", "item": [ { "name": "健康检查", "request": { "method": "GET", "header": [], "url": "{{baseUrl}}/health" } } ] }, { "name": "Notify", "item": [ { "name": "发送通知(JSON)", "request": { "auth": { "type": "bearer", "bearer": [{ "key": "token", "value": "{{sourceApiKey}}", "type": "string" }] }, "method": "POST", "header": [ { "key": "Content-Type", "value": "application/json" } ], "body": { "mode": "raw", "raw": "{\n \"event\": \"trade.open\",\n \"data\": {\n \"symbol\": \"BTC\",\n \"price\": 65000\n }\n}" }, "url": "{{baseUrl}}/api/v1/notify" } }, { "name": "发送通知(Regex)", "request": { "auth": { "type": "bearer", "bearer": [{ "key": "token", "value": "{{sourceApiKey}}", "type": "string" }] }, "method": "POST", "header": [ { "key": "Content-Type", "value": "text/plain" } ], "body": { "mode": "raw", "raw": "trade.open BTC 开仓 价格:65000" }, "url": "{{baseUrl}}/api/v1/notify" } }, { "name": "发送通知(Text)", "request": { "auth": { "type": "bearer", "bearer": [{ "key": "token", "value": "{{sourceApiKey}}", "type": "string" }] }, "method": "POST", "header": [ { "key": "Content-Type", "value": "text/plain" } ], "body": { "mode": "raw", "raw": "BTC 突破 68000,请注意风险" }, "url": "{{baseUrl}}/api/v1/notify", "description": "parse_mode=text 时 event 固定为 default" } } ] }, { "name": "Sources", "item": [ { "name": "创建 Source(JSON)", "request": { "auth": { "type": "bearer", "bearer": [{ "key": "token", "value": "{{adminKey}}", "type": "string" }] }, "method": "POST", "header": [ { "key": "Content-Type", "value": "application/json" } ], "body": { "mode": "raw", "raw": "{\n \"name\": \"trading-system\",\n \"parse_mode\": \"json\",\n \"status\": 1\n}" }, "url": "{{baseUrl}}/api/v1/sources" } }, { "name": "创建 Source(Regex)", "request": { "auth": { "type": "bearer", "bearer": [{ "key": "token", "value": "{{adminKey}}", "type": "string" }] }, "method": "POST", "header": [ { "key": "Content-Type", "value": "application/json" } ], "body": { "mode": "raw", "raw": "{\n \"name\": \"legacy-monitor\",\n \"parse_mode\": \"regex\",\n \"parse_pattern\": \"(?P\\\\w+)\\\\s+(?P.+)\"\n}" }, "url": "{{baseUrl}}/api/v1/sources" } }, { "name": "创建 Source(Text)", "request": { "auth": { "type": "bearer", "bearer": [{ "key": "token", "value": "{{adminKey}}", "type": "string" }] }, "method": "POST", "header": [ { "key": "Content-Type", "value": "application/json" } ], "body": { "mode": "raw", "raw": "{\n \"name\": \"alert-bot\",\n \"parse_mode\": \"text\"\n}" }, "url": "{{baseUrl}}/api/v1/sources" } }, { "name": "列出 Source", "request": { "auth": { "type": "bearer", "bearer": [{ "key": "token", "value": "{{adminKey}}", "type": "string" }] }, "method": "GET", "header": [], "url": "{{baseUrl}}/api/v1/sources" } }, { "name": "获取 Source", "request": { "auth": { "type": "bearer", "bearer": [{ "key": "token", "value": "{{adminKey}}", "type": "string" }] }, "method": "GET", "header": [], "url": "{{baseUrl}}/api/v1/sources/{{sourceId}}" } }, { "name": "更新 Source", "request": { "auth": { "type": "bearer", "bearer": [{ "key": "token", "value": "{{adminKey}}", "type": "string" }] }, "method": "PUT", "header": [ { "key": "Content-Type", "value": "application/json" } ], "body": { "mode": "raw", "raw": "{\n \"name\": \"trading-system\",\n \"parse_mode\": \"json\",\n \"status\": 1\n}" }, "url": "{{baseUrl}}/api/v1/sources/{{sourceId}}" } }, { "name": "删除 Source", "request": { "auth": { "type": "bearer", "bearer": [{ "key": "token", "value": "{{adminKey}}", "type": "string" }] }, "method": "DELETE", "header": [], "url": "{{baseUrl}}/api/v1/sources/{{sourceId}}" } } ] }, { "name": "Templates", "item": [ { "name": "创建 Template", "request": { "auth": { "type": "bearer", "bearer": [{ "key": "token", "value": "{{adminKey}}", "type": "string" }] }, "method": "POST", "header": [ { "key": "Content-Type", "value": "application/json" } ], "body": { "mode": "raw", "raw": "{\n \"name\": \"trade_open\",\n \"content\": \"### {{.symbol}} 开仓\\n价格: {{.price}}\"\n}" }, "url": "{{baseUrl}}/api/v1/templates" } }, { "name": "列出 Template", "request": { "auth": { "type": "bearer", "bearer": [{ "key": "token", "value": "{{adminKey}}", "type": "string" }] }, "method": "GET", "header": [], "url": "{{baseUrl}}/api/v1/templates" } }, { "name": "获取 Template", "request": { "auth": { "type": "bearer", "bearer": [{ "key": "token", "value": "{{adminKey}}", "type": "string" }] }, "method": "GET", "header": [], "url": "{{baseUrl}}/api/v1/templates/{{templateId}}" } }, { "name": "更新 Template", "request": { "auth": { "type": "bearer", "bearer": [{ "key": "token", "value": "{{adminKey}}", "type": "string" }] }, "method": "PUT", "header": [ { "key": "Content-Type", "value": "application/json" } ], "body": { "mode": "raw", "raw": "{\n \"name\": \"trade_open\",\n \"content\": \"### {{.symbol}} 开仓\\n价格: {{.price}}\"\n}" }, "url": "{{baseUrl}}/api/v1/templates/{{templateId}}" } }, { "name": "删除 Template", "request": { "auth": { "type": "bearer", "bearer": [{ "key": "token", "value": "{{adminKey}}", "type": "string" }] }, "method": "DELETE", "header": [], "url": "{{baseUrl}}/api/v1/templates/{{templateId}}" } } ] }, { "name": "Channels", "item": [ { "name": "创建 Channel(Email)", "request": { "auth": { "type": "bearer", "bearer": [{ "key": "token", "value": "{{adminKey}}", "type": "string" }] }, "method": "POST", "header": [ { "key": "Content-Type", "value": "application/json" } ], "body": { "mode": "raw", "raw": "{\n \"name\": \"email-ops\",\n \"type\": \"email\",\n \"config\": {\n \"to\": [\"148516886@qq.com\"]\n },\n \"status\": 1\n}" }, "url": "{{baseUrl}}/api/v1/channels" } }, { "name": "创建 Channel(钉钉)", "request": { "auth": { "type": "bearer", "bearer": [{ "key": "token", "value": "{{adminKey}}", "type": "string" }] }, "method": "POST", "header": [ { "key": "Content-Type", "value": "application/json" } ], "body": { "mode": "raw", "raw": "{\n \"name\": \"dingtalk-prod\",\n \"type\": \"dingtalk\",\n \"config\": {\n \"webhook_url\": \"https://oapi.dingtalk.com/robot/send?access_token=xxx\",\n \"secret\": \"SEC...\"\n },\n \"status\": 1\n}" }, "url": "{{baseUrl}}/api/v1/channels" } }, { "name": "创建 Channel(企业微信)", "request": { "auth": { "type": "bearer", "bearer": [{ "key": "token", "value": "{{adminKey}}", "type": "string" }] }, "method": "POST", "header": [ { "key": "Content-Type", "value": "application/json" } ], "body": { "mode": "raw", "raw": "{\n \"name\": \"wecom-ops\",\n \"type\": \"wecom\",\n \"config\": {\n \"webhook_url\": \"https://qyapi.weixin.qq.com/cgi-bin/webhook/send?key=xxx\"\n },\n \"status\": 1\n}" }, "url": "{{baseUrl}}/api/v1/channels" } }, { "name": "创建 Channel(Bark)", "request": { "auth": { "type": "bearer", "bearer": [{ "key": "token", "value": "{{adminKey}}", "type": "string" }] }, "method": "POST", "header": [ { "key": "Content-Type", "value": "application/json" } ], "body": { "mode": "raw", "raw": "{\n \"name\": \"bark-phone\",\n \"type\": \"bark\",\n \"config\": {\n \"url\": \"https://api.day.app/\"\n },\n \"status\": 1\n}" }, "url": "{{baseUrl}}/api/v1/channels" } }, { "name": "列出 Channel", "request": { "auth": { "type": "bearer", "bearer": [{ "key": "token", "value": "{{adminKey}}", "type": "string" }] }, "method": "GET", "header": [], "url": "{{baseUrl}}/api/v1/channels" } }, { "name": "获取 Channel", "request": { "auth": { "type": "bearer", "bearer": [{ "key": "token", "value": "{{adminKey}}", "type": "string" }] }, "method": "GET", "header": [], "url": "{{baseUrl}}/api/v1/channels/{{channelId}}" } }, { "name": "更新 Channel", "request": { "auth": { "type": "bearer", "bearer": [{ "key": "token", "value": "{{adminKey}}", "type": "string" }] }, "method": "PUT", "header": [ { "key": "Content-Type", "value": "application/json" } ], "body": { "mode": "raw", "raw": "{\n \"name\": \"email-ops\",\n \"type\": \"email\",\n \"config\": {\n \"to\": [\"148516886@qq.com\"]\n },\n \"status\": 1\n}" }, "url": "{{baseUrl}}/api/v1/channels/{{channelId}}" } }, { "name": "删除 Channel", "request": { "auth": { "type": "bearer", "bearer": [{ "key": "token", "value": "{{adminKey}}", "type": "string" }] }, "method": "DELETE", "header": [], "url": "{{baseUrl}}/api/v1/channels/{{channelId}}" } } ] }, { "name": "Rules", "item": [ { "name": "创建 Rule", "request": { "auth": { "type": "bearer", "bearer": [{ "key": "token", "value": "{{adminKey}}", "type": "string" }] }, "method": "POST", "header": [ { "key": "Content-Type", "value": "application/json" } ], "body": { "mode": "raw", "raw": "{\n \"name\": \"trade-open-alert\",\n \"source_name\": \"trading-system\",\n \"event\": \"trade.open\",\n \"template_name\": \"trade_open\",\n \"channels\": [\"email-ops\"],\n \"conditions\": [\n {\"field\": \"symbol\", \"op\": \"exists\"},\n {\"field\": \"price\", \"op\": \"gt\", \"value\": \"0\"}\n ],\n \"enabled\": 1\n}" }, "url": "{{baseUrl}}/api/v1/rules" } }, { "name": "列出 Rule", "request": { "auth": { "type": "bearer", "bearer": [{ "key": "token", "value": "{{adminKey}}", "type": "string" }] }, "method": "GET", "header": [], "url": "{{baseUrl}}/api/v1/rules" } }, { "name": "获取 Rule", "request": { "auth": { "type": "bearer", "bearer": [{ "key": "token", "value": "{{adminKey}}", "type": "string" }] }, "method": "GET", "header": [], "url": "{{baseUrl}}/api/v1/rules/{{ruleId}}" } }, { "name": "更新 Rule", "request": { "auth": { "type": "bearer", "bearer": [{ "key": "token", "value": "{{adminKey}}", "type": "string" }] }, "method": "PUT", "header": [ { "key": "Content-Type", "value": "application/json" } ], "body": { "mode": "raw", "raw": "{\n \"name\": \"trade-open-alert\",\n \"source_name\": \"trading-system\",\n \"event\": \"trade.open\",\n \"template_name\": \"trade_open\",\n \"channels\": [\"email-ops\"],\n \"enabled\": 1\n}" }, "url": "{{baseUrl}}/api/v1/rules/{{ruleId}}" } }, { "name": "删除 Rule", "request": { "auth": { "type": "bearer", "bearer": [{ "key": "token", "value": "{{adminKey}}", "type": "string" }] }, "method": "DELETE", "header": [], "url": "{{baseUrl}}/api/v1/rules/{{ruleId}}" } }, { "name": "启用 Rule", "request": { "auth": { "type": "bearer", "bearer": [{ "key": "token", "value": "{{adminKey}}", "type": "string" }] }, "method": "PATCH", "header": [], "url": "{{baseUrl}}/api/v1/rules/{{ruleId}}/enable" } }, { "name": "禁用 Rule", "request": { "auth": { "type": "bearer", "bearer": [{ "key": "token", "value": "{{adminKey}}", "type": "string" }] }, "method": "PATCH", "header": [], "url": "{{baseUrl}}/api/v1/rules/{{ruleId}}/disable" } }, { "name": "启用规则下某渠道", "request": { "auth": { "type": "bearer", "bearer": [{ "key": "token", "value": "{{adminKey}}", "type": "string" }] }, "method": "PATCH", "header": [], "url": "{{baseUrl}}/api/v1/rules/{{ruleId}}/channels/{{channelId}}/enable" } }, { "name": "禁用规则下某渠道", "request": { "auth": { "type": "bearer", "bearer": [{ "key": "token", "value": "{{adminKey}}", "type": "string" }] }, "method": "PATCH", "header": [], "url": "{{baseUrl}}/api/v1/rules/{{ruleId}}/channels/{{channelId}}/disable" } } ] }, { "name": "Message Logs", "item": [ { "name": "查询消息记录", "request": { "auth": { "type": "bearer", "bearer": [{ "key": "token", "value": "{{adminKey}}", "type": "string" }] }, "method": "GET", "header": [], "url": { "raw": "{{baseUrl}}/api/v1/message-logs?source=trading-system&event=trade.open&status=success&page=1&page_size=20", "host": ["{{baseUrl}}"], "path": ["api", "v1", "message-logs"], "query": [ { "key": "source", "value": "trading-system" }, { "key": "event", "value": "trade.open" }, { "key": "status", "value": "success" }, { "key": "page", "value": "1" }, { "key": "page_size", "value": "20" } ] } } } ] } ] }