mirror of
https://github.com/EKKOLearnAI/hermes-web-ui.git
synced 2026-05-25 13:30:14 +00:00
3307 lines
76 KiB
JSON
3307 lines
76 KiB
JSON
{
|
|
"openapi": "3.0.3",
|
|
"info": {
|
|
"title": "Hermes Web UI API",
|
|
"description": "BFF server API for Hermes Web UI — chat sessions, scheduled jobs, platform channels, model management, skills, memory, logs, file browser, group chat, and terminal.",
|
|
"version": "0.5.9"
|
|
},
|
|
"servers": [
|
|
{
|
|
"url": "http://localhost:8648",
|
|
"description": "Local development"
|
|
}
|
|
],
|
|
"tags": [
|
|
{
|
|
"name": "Codex Auth",
|
|
"description": "OpenAI Codex OAuth"
|
|
},
|
|
{
|
|
"name": "Config",
|
|
"description": "Configuration management"
|
|
},
|
|
{
|
|
"name": "Copilot Auth",
|
|
"description": "GitHub Copilot OAuth"
|
|
},
|
|
{
|
|
"name": "Jobs",
|
|
"description": "Scheduled job management"
|
|
},
|
|
{
|
|
"name": "Download",
|
|
"description": "File download"
|
|
},
|
|
{
|
|
"name": "Files",
|
|
"description": "Hermes file browser"
|
|
},
|
|
{
|
|
"name": "Gateways",
|
|
"description": "Gateway process management"
|
|
},
|
|
{
|
|
"name": "Group Chat",
|
|
"description": "Group chat management"
|
|
},
|
|
{
|
|
"name": "Logs",
|
|
"description": "Log file access"
|
|
},
|
|
{
|
|
"name": "Memory",
|
|
"description": "Agent memory files"
|
|
},
|
|
{
|
|
"name": "Models",
|
|
"description": "Model configuration"
|
|
},
|
|
{
|
|
"name": "Nous Auth",
|
|
"description": "Nous Research OAuth"
|
|
},
|
|
{
|
|
"name": "Profiles",
|
|
"description": "Hermes profile management"
|
|
},
|
|
{
|
|
"name": "Providers",
|
|
"description": "Model provider management"
|
|
},
|
|
{
|
|
"name": "Sessions",
|
|
"description": "Chat session management"
|
|
},
|
|
{
|
|
"name": "Skills",
|
|
"description": "Skill browsing and management"
|
|
},
|
|
{
|
|
"name": "Weixin",
|
|
"description": "WeChat QR code login"
|
|
},
|
|
{
|
|
"name": "Health",
|
|
"description": "Health check"
|
|
},
|
|
{
|
|
"name": "Update",
|
|
"description": "Self-update management"
|
|
},
|
|
{
|
|
"name": "Upload",
|
|
"description": "File upload"
|
|
},
|
|
{
|
|
"name": "Webhook",
|
|
"description": "Incoming webhooks"
|
|
},
|
|
{
|
|
"name": "Auth",
|
|
"description": "Authentication management"
|
|
},
|
|
{
|
|
"name": "Proxy",
|
|
"description": "Gateway proxy to upstream Hermes API"
|
|
},
|
|
{
|
|
"name": "Terminal",
|
|
"description": "WebSocket terminal access"
|
|
}
|
|
],
|
|
"paths": {
|
|
"/api/auth/change-password": {
|
|
"post": {
|
|
"tags": [
|
|
"Auth"
|
|
],
|
|
"summary": "Create change-password",
|
|
"description": "POST /api/auth/change-password",
|
|
"operationId": "changePassword",
|
|
"security": [
|
|
{
|
|
"BearerAuth": []
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Success"
|
|
},
|
|
"400": {
|
|
"$ref": "#/components/responses/BadRequest"
|
|
},
|
|
"401": {
|
|
"$ref": "#/components/responses/Unauthorized"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/auth/change-username": {
|
|
"post": {
|
|
"tags": [
|
|
"Auth"
|
|
],
|
|
"summary": "Create change-username",
|
|
"description": "POST /api/auth/change-username",
|
|
"operationId": "changeUsername",
|
|
"security": [
|
|
{
|
|
"BearerAuth": []
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Success"
|
|
},
|
|
"400": {
|
|
"$ref": "#/components/responses/BadRequest"
|
|
},
|
|
"401": {
|
|
"$ref": "#/components/responses/Unauthorized"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/auth/locked-ips": {
|
|
"get": {
|
|
"tags": [
|
|
"Auth"
|
|
],
|
|
"summary": "Get locked-ips",
|
|
"description": "GET /api/auth/locked-ips",
|
|
"operationId": "listLockedIps",
|
|
"security": [
|
|
{
|
|
"BearerAuth": []
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Success"
|
|
},
|
|
"401": {
|
|
"$ref": "#/components/responses/Unauthorized"
|
|
},
|
|
"404": {
|
|
"description": "Not found"
|
|
}
|
|
}
|
|
},
|
|
"delete": {
|
|
"tags": [
|
|
"Auth"
|
|
],
|
|
"summary": "Delete locked-ips",
|
|
"description": "DELETE /api/auth/locked-ips",
|
|
"operationId": "unlockIpHandler",
|
|
"security": [
|
|
{
|
|
"BearerAuth": []
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Success"
|
|
},
|
|
"401": {
|
|
"$ref": "#/components/responses/Unauthorized"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/auth/login": {
|
|
"post": {
|
|
"tags": [
|
|
"Auth"
|
|
],
|
|
"summary": "Create login",
|
|
"description": "POST /api/auth/login",
|
|
"operationId": "login",
|
|
"security": [
|
|
{
|
|
"BearerAuth": []
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Success"
|
|
},
|
|
"400": {
|
|
"$ref": "#/components/responses/BadRequest"
|
|
},
|
|
"401": {
|
|
"$ref": "#/components/responses/Unauthorized"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/auth/password": {
|
|
"delete": {
|
|
"tags": [
|
|
"Auth"
|
|
],
|
|
"summary": "Delete password",
|
|
"description": "DELETE /api/auth/password",
|
|
"operationId": "removePassword",
|
|
"security": [
|
|
{
|
|
"BearerAuth": []
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Success"
|
|
},
|
|
"401": {
|
|
"$ref": "#/components/responses/Unauthorized"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/auth/setup": {
|
|
"post": {
|
|
"tags": [
|
|
"Auth"
|
|
],
|
|
"summary": "Create setup",
|
|
"description": "POST /api/auth/setup",
|
|
"operationId": "setupPassword",
|
|
"security": [
|
|
{
|
|
"BearerAuth": []
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Success"
|
|
},
|
|
"400": {
|
|
"$ref": "#/components/responses/BadRequest"
|
|
},
|
|
"401": {
|
|
"$ref": "#/components/responses/Unauthorized"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/auth/status": {
|
|
"get": {
|
|
"tags": [
|
|
"Auth"
|
|
],
|
|
"summary": "Get status",
|
|
"description": "GET /api/auth/status",
|
|
"operationId": "authStatus",
|
|
"security": [
|
|
{
|
|
"BearerAuth": []
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Success"
|
|
},
|
|
"401": {
|
|
"$ref": "#/components/responses/Unauthorized"
|
|
},
|
|
"404": {
|
|
"description": "Not found"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/cron-history": {
|
|
"get": {
|
|
"tags": [
|
|
"Jobs"
|
|
],
|
|
"summary": "Get cron-history",
|
|
"description": "GET /api/cron-history",
|
|
"operationId": "listRuns",
|
|
"security": [
|
|
{
|
|
"BearerAuth": []
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Success"
|
|
},
|
|
"401": {
|
|
"$ref": "#/components/responses/Unauthorized"
|
|
},
|
|
"404": {
|
|
"description": "Not found"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/cron-history/{jobId}/{fileName}": {
|
|
"get": {
|
|
"tags": [
|
|
"Jobs"
|
|
],
|
|
"summary": "Get :fileName",
|
|
"description": "GET /api/cron-history/:jobId/:fileName",
|
|
"operationId": "readRun",
|
|
"security": [
|
|
{
|
|
"BearerAuth": []
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Success"
|
|
},
|
|
"401": {
|
|
"$ref": "#/components/responses/Unauthorized"
|
|
},
|
|
"404": {
|
|
"description": "Not found"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/hermes/auth/codex/poll/{sessionId}": {
|
|
"get": {
|
|
"tags": [
|
|
"Codex Auth"
|
|
],
|
|
"summary": "Get :sessionId",
|
|
"description": "GET /api/hermes/auth/codex/poll/:sessionId",
|
|
"operationId": "poll",
|
|
"security": [
|
|
{
|
|
"BearerAuth": []
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Success"
|
|
},
|
|
"401": {
|
|
"$ref": "#/components/responses/Unauthorized"
|
|
},
|
|
"404": {
|
|
"description": "Not found"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/hermes/auth/codex/start": {
|
|
"post": {
|
|
"tags": [
|
|
"Codex Auth"
|
|
],
|
|
"summary": "Create start",
|
|
"description": "POST /api/hermes/auth/codex/start",
|
|
"operationId": "start",
|
|
"security": [
|
|
{
|
|
"BearerAuth": []
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Success"
|
|
},
|
|
"400": {
|
|
"$ref": "#/components/responses/BadRequest"
|
|
},
|
|
"401": {
|
|
"$ref": "#/components/responses/Unauthorized"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/hermes/auth/codex/status": {
|
|
"get": {
|
|
"tags": [
|
|
"Codex Auth"
|
|
],
|
|
"summary": "Get status",
|
|
"description": "GET /api/hermes/auth/codex/status",
|
|
"operationId": "status",
|
|
"security": [
|
|
{
|
|
"BearerAuth": []
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Success"
|
|
},
|
|
"401": {
|
|
"$ref": "#/components/responses/Unauthorized"
|
|
},
|
|
"404": {
|
|
"description": "Not found"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/hermes/auth/copilot/check-token": {
|
|
"get": {
|
|
"tags": [
|
|
"Copilot Auth"
|
|
],
|
|
"summary": "Get check-token",
|
|
"description": "GET /api/hermes/auth/copilot/check-token",
|
|
"operationId": "checkToken",
|
|
"security": [
|
|
{
|
|
"BearerAuth": []
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Success"
|
|
},
|
|
"401": {
|
|
"$ref": "#/components/responses/Unauthorized"
|
|
},
|
|
"404": {
|
|
"description": "Not found"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/hermes/auth/copilot/disable": {
|
|
"post": {
|
|
"tags": [
|
|
"Copilot Auth"
|
|
],
|
|
"summary": "Create disable",
|
|
"description": "POST /api/hermes/auth/copilot/disable",
|
|
"operationId": "disable",
|
|
"security": [
|
|
{
|
|
"BearerAuth": []
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Success"
|
|
},
|
|
"400": {
|
|
"$ref": "#/components/responses/BadRequest"
|
|
},
|
|
"401": {
|
|
"$ref": "#/components/responses/Unauthorized"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/hermes/auth/copilot/enable": {
|
|
"post": {
|
|
"tags": [
|
|
"Copilot Auth"
|
|
],
|
|
"summary": "Create enable",
|
|
"description": "POST /api/hermes/auth/copilot/enable",
|
|
"operationId": "enable",
|
|
"security": [
|
|
{
|
|
"BearerAuth": []
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Success"
|
|
},
|
|
"400": {
|
|
"$ref": "#/components/responses/BadRequest"
|
|
},
|
|
"401": {
|
|
"$ref": "#/components/responses/Unauthorized"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/hermes/auth/copilot/poll/{sessionId}": {
|
|
"get": {
|
|
"tags": [
|
|
"Copilot Auth"
|
|
],
|
|
"summary": "Get :sessionId",
|
|
"description": "GET /api/hermes/auth/copilot/poll/:sessionId",
|
|
"operationId": "poll",
|
|
"security": [
|
|
{
|
|
"BearerAuth": []
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Success"
|
|
},
|
|
"401": {
|
|
"$ref": "#/components/responses/Unauthorized"
|
|
},
|
|
"404": {
|
|
"description": "Not found"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/hermes/auth/copilot/start": {
|
|
"post": {
|
|
"tags": [
|
|
"Copilot Auth"
|
|
],
|
|
"summary": "Create start",
|
|
"description": "POST /api/hermes/auth/copilot/start",
|
|
"operationId": "start",
|
|
"security": [
|
|
{
|
|
"BearerAuth": []
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Success"
|
|
},
|
|
"400": {
|
|
"$ref": "#/components/responses/BadRequest"
|
|
},
|
|
"401": {
|
|
"$ref": "#/components/responses/Unauthorized"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/hermes/auth/nous/poll/{sessionId}": {
|
|
"get": {
|
|
"tags": [
|
|
"Nous Auth"
|
|
],
|
|
"summary": "Get :sessionId",
|
|
"description": "GET /api/hermes/auth/nous/poll/:sessionId",
|
|
"operationId": "poll",
|
|
"security": [
|
|
{
|
|
"BearerAuth": []
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Success"
|
|
},
|
|
"401": {
|
|
"$ref": "#/components/responses/Unauthorized"
|
|
},
|
|
"404": {
|
|
"description": "Not found"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/hermes/auth/nous/start": {
|
|
"post": {
|
|
"tags": [
|
|
"Nous Auth"
|
|
],
|
|
"summary": "Create start",
|
|
"description": "POST /api/hermes/auth/nous/start",
|
|
"operationId": "start",
|
|
"security": [
|
|
{
|
|
"BearerAuth": []
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Success"
|
|
},
|
|
"400": {
|
|
"$ref": "#/components/responses/BadRequest"
|
|
},
|
|
"401": {
|
|
"$ref": "#/components/responses/Unauthorized"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/hermes/auth/nous/status": {
|
|
"get": {
|
|
"tags": [
|
|
"Nous Auth"
|
|
],
|
|
"summary": "Get status",
|
|
"description": "GET /api/hermes/auth/nous/status",
|
|
"operationId": "status",
|
|
"security": [
|
|
{
|
|
"BearerAuth": []
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Success"
|
|
},
|
|
"401": {
|
|
"$ref": "#/components/responses/Unauthorized"
|
|
},
|
|
"404": {
|
|
"description": "Not found"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/hermes/available-models": {
|
|
"get": {
|
|
"tags": [
|
|
"Models"
|
|
],
|
|
"summary": "Get available-models",
|
|
"description": "GET /api/hermes/available-models",
|
|
"operationId": "getAvailable",
|
|
"security": [
|
|
{
|
|
"BearerAuth": []
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Success"
|
|
},
|
|
"401": {
|
|
"$ref": "#/components/responses/Unauthorized"
|
|
},
|
|
"404": {
|
|
"description": "Not found"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/hermes/config": {
|
|
"get": {
|
|
"tags": [
|
|
"Config"
|
|
],
|
|
"summary": "Get config",
|
|
"description": "GET /api/hermes/config",
|
|
"operationId": "getConfig",
|
|
"security": [
|
|
{
|
|
"BearerAuth": []
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Success"
|
|
},
|
|
"401": {
|
|
"$ref": "#/components/responses/Unauthorized"
|
|
},
|
|
"404": {
|
|
"description": "Not found"
|
|
}
|
|
}
|
|
},
|
|
"put": {
|
|
"tags": [
|
|
"Config"
|
|
],
|
|
"summary": "Update config",
|
|
"description": "PUT /api/hermes/config",
|
|
"operationId": "updateConfig",
|
|
"security": [
|
|
{
|
|
"BearerAuth": []
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Success"
|
|
},
|
|
"400": {
|
|
"$ref": "#/components/responses/BadRequest"
|
|
},
|
|
"401": {
|
|
"$ref": "#/components/responses/Unauthorized"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/hermes/config/credentials": {
|
|
"put": {
|
|
"tags": [
|
|
"Config"
|
|
],
|
|
"summary": "Update credentials",
|
|
"description": "PUT /api/hermes/config/credentials",
|
|
"operationId": "updateCredentials",
|
|
"security": [
|
|
{
|
|
"BearerAuth": []
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Success"
|
|
},
|
|
"400": {
|
|
"$ref": "#/components/responses/BadRequest"
|
|
},
|
|
"401": {
|
|
"$ref": "#/components/responses/Unauthorized"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/hermes/config/model": {
|
|
"put": {
|
|
"tags": [
|
|
"Models"
|
|
],
|
|
"summary": "Update model",
|
|
"description": "PUT /api/hermes/config/model",
|
|
"operationId": "setConfigModel",
|
|
"security": [
|
|
{
|
|
"BearerAuth": []
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Success"
|
|
},
|
|
"400": {
|
|
"$ref": "#/components/responses/BadRequest"
|
|
},
|
|
"401": {
|
|
"$ref": "#/components/responses/Unauthorized"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/hermes/config/models": {
|
|
"get": {
|
|
"tags": [
|
|
"Models"
|
|
],
|
|
"summary": "Get models",
|
|
"description": "GET /api/hermes/config/models",
|
|
"operationId": "getConfigModels",
|
|
"security": [
|
|
{
|
|
"BearerAuth": []
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Success"
|
|
},
|
|
"401": {
|
|
"$ref": "#/components/responses/Unauthorized"
|
|
},
|
|
"404": {
|
|
"description": "Not found"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/hermes/config/providers": {
|
|
"post": {
|
|
"tags": [
|
|
"Providers"
|
|
],
|
|
"summary": "Create providers",
|
|
"description": "POST /api/hermes/config/providers",
|
|
"operationId": "create",
|
|
"security": [
|
|
{
|
|
"BearerAuth": []
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Success"
|
|
},
|
|
"400": {
|
|
"$ref": "#/components/responses/BadRequest"
|
|
},
|
|
"401": {
|
|
"$ref": "#/components/responses/Unauthorized"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/hermes/config/providers/{poolKey}": {
|
|
"put": {
|
|
"tags": [
|
|
"Providers"
|
|
],
|
|
"summary": "Update :poolKey",
|
|
"description": "PUT /api/hermes/config/providers/:poolKey",
|
|
"operationId": "update",
|
|
"security": [
|
|
{
|
|
"BearerAuth": []
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Success"
|
|
},
|
|
"400": {
|
|
"$ref": "#/components/responses/BadRequest"
|
|
},
|
|
"401": {
|
|
"$ref": "#/components/responses/Unauthorized"
|
|
}
|
|
}
|
|
},
|
|
"delete": {
|
|
"tags": [
|
|
"Providers"
|
|
],
|
|
"summary": "Delete :poolKey",
|
|
"description": "DELETE /api/hermes/config/providers/:poolKey",
|
|
"operationId": "remove",
|
|
"security": [
|
|
{
|
|
"BearerAuth": []
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Success"
|
|
},
|
|
"401": {
|
|
"$ref": "#/components/responses/Unauthorized"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/hermes/download": {
|
|
"get": {
|
|
"tags": [
|
|
"Download"
|
|
],
|
|
"summary": "Get download",
|
|
"description": "GET /api/hermes/download",
|
|
"operationId": "getDownload",
|
|
"security": [
|
|
{
|
|
"BearerAuth": []
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Success"
|
|
},
|
|
"401": {
|
|
"$ref": "#/components/responses/Unauthorized"
|
|
},
|
|
"404": {
|
|
"description": "Not found"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/hermes/files/copy": {
|
|
"post": {
|
|
"tags": [
|
|
"Files"
|
|
],
|
|
"summary": "Create copy",
|
|
"description": "POST /api/hermes/files/copy",
|
|
"operationId": "createCopy",
|
|
"security": [
|
|
{
|
|
"BearerAuth": []
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Success"
|
|
},
|
|
"400": {
|
|
"$ref": "#/components/responses/BadRequest"
|
|
},
|
|
"401": {
|
|
"$ref": "#/components/responses/Unauthorized"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/hermes/files/delete": {
|
|
"delete": {
|
|
"tags": [
|
|
"Files"
|
|
],
|
|
"summary": "Delete delete",
|
|
"description": "DELETE /api/hermes/files/delete",
|
|
"operationId": "deleteDelete",
|
|
"security": [
|
|
{
|
|
"BearerAuth": []
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Success"
|
|
},
|
|
"401": {
|
|
"$ref": "#/components/responses/Unauthorized"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/hermes/files/list": {
|
|
"get": {
|
|
"tags": [
|
|
"Files"
|
|
],
|
|
"summary": "Get list",
|
|
"description": "GET /api/hermes/files/list",
|
|
"operationId": "getList",
|
|
"security": [
|
|
{
|
|
"BearerAuth": []
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Success"
|
|
},
|
|
"401": {
|
|
"$ref": "#/components/responses/Unauthorized"
|
|
},
|
|
"404": {
|
|
"description": "Not found"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/hermes/files/mkdir": {
|
|
"post": {
|
|
"tags": [
|
|
"Files"
|
|
],
|
|
"summary": "Create mkdir",
|
|
"description": "POST /api/hermes/files/mkdir",
|
|
"operationId": "createMkdir",
|
|
"security": [
|
|
{
|
|
"BearerAuth": []
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Success"
|
|
},
|
|
"400": {
|
|
"$ref": "#/components/responses/BadRequest"
|
|
},
|
|
"401": {
|
|
"$ref": "#/components/responses/Unauthorized"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/hermes/files/read": {
|
|
"get": {
|
|
"tags": [
|
|
"Files"
|
|
],
|
|
"summary": "Get read",
|
|
"description": "GET /api/hermes/files/read",
|
|
"operationId": "getRead",
|
|
"security": [
|
|
{
|
|
"BearerAuth": []
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Success"
|
|
},
|
|
"401": {
|
|
"$ref": "#/components/responses/Unauthorized"
|
|
},
|
|
"404": {
|
|
"description": "Not found"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/hermes/files/rename": {
|
|
"post": {
|
|
"tags": [
|
|
"Files"
|
|
],
|
|
"summary": "Create rename",
|
|
"description": "POST /api/hermes/files/rename",
|
|
"operationId": "createRename",
|
|
"security": [
|
|
{
|
|
"BearerAuth": []
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Success"
|
|
},
|
|
"400": {
|
|
"$ref": "#/components/responses/BadRequest"
|
|
},
|
|
"401": {
|
|
"$ref": "#/components/responses/Unauthorized"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/hermes/files/stat": {
|
|
"get": {
|
|
"tags": [
|
|
"Files"
|
|
],
|
|
"summary": "Get stat",
|
|
"description": "GET /api/hermes/files/stat",
|
|
"operationId": "getStat",
|
|
"security": [
|
|
{
|
|
"BearerAuth": []
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Success"
|
|
},
|
|
"401": {
|
|
"$ref": "#/components/responses/Unauthorized"
|
|
},
|
|
"404": {
|
|
"description": "Not found"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/hermes/files/upload": {
|
|
"post": {
|
|
"tags": [
|
|
"Files"
|
|
],
|
|
"summary": "Create upload",
|
|
"description": "POST /api/hermes/files/upload",
|
|
"operationId": "createUpload",
|
|
"security": [
|
|
{
|
|
"BearerAuth": []
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Success"
|
|
},
|
|
"400": {
|
|
"$ref": "#/components/responses/BadRequest"
|
|
},
|
|
"401": {
|
|
"$ref": "#/components/responses/Unauthorized"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/hermes/files/write": {
|
|
"put": {
|
|
"tags": [
|
|
"Files"
|
|
],
|
|
"summary": "Update write",
|
|
"description": "PUT /api/hermes/files/write",
|
|
"operationId": "updateWrite",
|
|
"security": [
|
|
{
|
|
"BearerAuth": []
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Success"
|
|
},
|
|
"400": {
|
|
"$ref": "#/components/responses/BadRequest"
|
|
},
|
|
"401": {
|
|
"$ref": "#/components/responses/Unauthorized"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/hermes/gateways": {
|
|
"get": {
|
|
"tags": [
|
|
"Gateways"
|
|
],
|
|
"summary": "List gateways",
|
|
"description": "GET /api/hermes/gateways",
|
|
"operationId": "list",
|
|
"security": [
|
|
{
|
|
"BearerAuth": []
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Success"
|
|
},
|
|
"401": {
|
|
"$ref": "#/components/responses/Unauthorized"
|
|
},
|
|
"404": {
|
|
"description": "Not found"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/hermes/gateways/{name}/health": {
|
|
"get": {
|
|
"tags": [
|
|
"Gateways"
|
|
],
|
|
"summary": "Get health",
|
|
"description": "GET /api/hermes/gateways/:name/health",
|
|
"operationId": "health",
|
|
"security": [
|
|
{
|
|
"BearerAuth": []
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Success"
|
|
},
|
|
"401": {
|
|
"$ref": "#/components/responses/Unauthorized"
|
|
},
|
|
"404": {
|
|
"description": "Not found"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/hermes/gateways/{name}/start": {
|
|
"post": {
|
|
"tags": [
|
|
"Gateways"
|
|
],
|
|
"summary": "Create start",
|
|
"description": "POST /api/hermes/gateways/:name/start",
|
|
"operationId": "start",
|
|
"security": [
|
|
{
|
|
"BearerAuth": []
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Success"
|
|
},
|
|
"400": {
|
|
"$ref": "#/components/responses/BadRequest"
|
|
},
|
|
"401": {
|
|
"$ref": "#/components/responses/Unauthorized"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/hermes/gateways/{name}/stop": {
|
|
"post": {
|
|
"tags": [
|
|
"Gateways"
|
|
],
|
|
"summary": "Create stop",
|
|
"description": "POST /api/hermes/gateways/:name/stop",
|
|
"operationId": "stop",
|
|
"security": [
|
|
{
|
|
"BearerAuth": []
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Success"
|
|
},
|
|
"400": {
|
|
"$ref": "#/components/responses/BadRequest"
|
|
},
|
|
"401": {
|
|
"$ref": "#/components/responses/Unauthorized"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/hermes/group-chat/rooms": {
|
|
"post": {
|
|
"tags": [
|
|
"Group Chat"
|
|
],
|
|
"summary": "Create rooms",
|
|
"description": "POST /api/hermes/group-chat/rooms",
|
|
"operationId": "createRooms",
|
|
"security": [
|
|
{
|
|
"BearerAuth": []
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Success"
|
|
},
|
|
"400": {
|
|
"$ref": "#/components/responses/BadRequest"
|
|
},
|
|
"401": {
|
|
"$ref": "#/components/responses/Unauthorized"
|
|
}
|
|
}
|
|
},
|
|
"get": {
|
|
"tags": [
|
|
"Group Chat"
|
|
],
|
|
"summary": "Get rooms",
|
|
"description": "GET /api/hermes/group-chat/rooms",
|
|
"operationId": "getRooms",
|
|
"security": [
|
|
{
|
|
"BearerAuth": []
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Success"
|
|
},
|
|
"401": {
|
|
"$ref": "#/components/responses/Unauthorized"
|
|
},
|
|
"404": {
|
|
"description": "Not found"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/hermes/group-chat/rooms/join/{code}": {
|
|
"get": {
|
|
"tags": [
|
|
"Group Chat"
|
|
],
|
|
"summary": "Get :code",
|
|
"description": "GET /api/hermes/group-chat/rooms/join/:code",
|
|
"operationId": "getJoin",
|
|
"security": [
|
|
{
|
|
"BearerAuth": []
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Success"
|
|
},
|
|
"401": {
|
|
"$ref": "#/components/responses/Unauthorized"
|
|
},
|
|
"404": {
|
|
"description": "Not found"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/hermes/group-chat/rooms/{roomId}": {
|
|
"get": {
|
|
"tags": [
|
|
"Group Chat"
|
|
],
|
|
"summary": "Get :roomId",
|
|
"description": "GET /api/hermes/group-chat/rooms/:roomId",
|
|
"operationId": "getRooms",
|
|
"security": [
|
|
{
|
|
"BearerAuth": []
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Success"
|
|
},
|
|
"401": {
|
|
"$ref": "#/components/responses/Unauthorized"
|
|
},
|
|
"404": {
|
|
"description": "Not found"
|
|
}
|
|
}
|
|
},
|
|
"delete": {
|
|
"tags": [
|
|
"Group Chat"
|
|
],
|
|
"summary": "Delete :roomId",
|
|
"description": "DELETE /api/hermes/group-chat/rooms/:roomId",
|
|
"operationId": "deleteRooms",
|
|
"security": [
|
|
{
|
|
"BearerAuth": []
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Success"
|
|
},
|
|
"401": {
|
|
"$ref": "#/components/responses/Unauthorized"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/hermes/group-chat/rooms/{roomId}/agents": {
|
|
"post": {
|
|
"tags": [
|
|
"Group Chat"
|
|
],
|
|
"summary": "Create agents",
|
|
"description": "POST /api/hermes/group-chat/rooms/:roomId/agents",
|
|
"operationId": "createAgents",
|
|
"security": [
|
|
{
|
|
"BearerAuth": []
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Success"
|
|
},
|
|
"400": {
|
|
"$ref": "#/components/responses/BadRequest"
|
|
},
|
|
"401": {
|
|
"$ref": "#/components/responses/Unauthorized"
|
|
}
|
|
}
|
|
},
|
|
"get": {
|
|
"tags": [
|
|
"Group Chat"
|
|
],
|
|
"summary": "Get agents",
|
|
"description": "GET /api/hermes/group-chat/rooms/:roomId/agents",
|
|
"operationId": "getAgents",
|
|
"security": [
|
|
{
|
|
"BearerAuth": []
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Success"
|
|
},
|
|
"401": {
|
|
"$ref": "#/components/responses/Unauthorized"
|
|
},
|
|
"404": {
|
|
"description": "Not found"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/hermes/group-chat/rooms/{roomId}/agents/{agentId}": {
|
|
"delete": {
|
|
"tags": [
|
|
"Group Chat"
|
|
],
|
|
"summary": "Delete :agentId",
|
|
"description": "DELETE /api/hermes/group-chat/rooms/:roomId/agents/:agentId",
|
|
"operationId": "deleteAgents",
|
|
"security": [
|
|
{
|
|
"BearerAuth": []
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Success"
|
|
},
|
|
"401": {
|
|
"$ref": "#/components/responses/Unauthorized"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/hermes/group-chat/rooms/{roomId}/clear-context": {
|
|
"post": {
|
|
"tags": [
|
|
"Group Chat"
|
|
],
|
|
"summary": "Create clear-context",
|
|
"description": "POST /api/hermes/group-chat/rooms/:roomId/clear-context",
|
|
"operationId": "createClear-context",
|
|
"security": [
|
|
{
|
|
"BearerAuth": []
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Success"
|
|
},
|
|
"400": {
|
|
"$ref": "#/components/responses/BadRequest"
|
|
},
|
|
"401": {
|
|
"$ref": "#/components/responses/Unauthorized"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/hermes/group-chat/rooms/{roomId}/clone": {
|
|
"post": {
|
|
"tags": [
|
|
"Group Chat"
|
|
],
|
|
"summary": "Create clone",
|
|
"description": "POST /api/hermes/group-chat/rooms/:roomId/clone",
|
|
"operationId": "createClone",
|
|
"security": [
|
|
{
|
|
"BearerAuth": []
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Success"
|
|
},
|
|
"400": {
|
|
"$ref": "#/components/responses/BadRequest"
|
|
},
|
|
"401": {
|
|
"$ref": "#/components/responses/Unauthorized"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/hermes/group-chat/rooms/{roomId}/compress": {
|
|
"post": {
|
|
"tags": [
|
|
"Group Chat"
|
|
],
|
|
"summary": "Create compress",
|
|
"description": "POST /api/hermes/group-chat/rooms/:roomId/compress",
|
|
"operationId": "createCompress",
|
|
"security": [
|
|
{
|
|
"BearerAuth": []
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Success"
|
|
},
|
|
"400": {
|
|
"$ref": "#/components/responses/BadRequest"
|
|
},
|
|
"401": {
|
|
"$ref": "#/components/responses/Unauthorized"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/hermes/group-chat/rooms/{roomId}/config": {
|
|
"put": {
|
|
"tags": [
|
|
"Group Chat"
|
|
],
|
|
"summary": "Update config",
|
|
"description": "PUT /api/hermes/group-chat/rooms/:roomId/config",
|
|
"operationId": "updateConfig",
|
|
"security": [
|
|
{
|
|
"BearerAuth": []
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Success"
|
|
},
|
|
"400": {
|
|
"$ref": "#/components/responses/BadRequest"
|
|
},
|
|
"401": {
|
|
"$ref": "#/components/responses/Unauthorized"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/hermes/group-chat/rooms/{roomId}/invite-code": {
|
|
"put": {
|
|
"tags": [
|
|
"Group Chat"
|
|
],
|
|
"summary": "Update invite-code",
|
|
"description": "PUT /api/hermes/group-chat/rooms/:roomId/invite-code",
|
|
"operationId": "updateInvite-code",
|
|
"security": [
|
|
{
|
|
"BearerAuth": []
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Success"
|
|
},
|
|
"400": {
|
|
"$ref": "#/components/responses/BadRequest"
|
|
},
|
|
"401": {
|
|
"$ref": "#/components/responses/Unauthorized"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/hermes/jobs": {
|
|
"get": {
|
|
"tags": [
|
|
"Jobs"
|
|
],
|
|
"summary": "List jobs",
|
|
"description": "GET /api/hermes/jobs",
|
|
"operationId": "list",
|
|
"security": [
|
|
{
|
|
"BearerAuth": []
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Success"
|
|
},
|
|
"401": {
|
|
"$ref": "#/components/responses/Unauthorized"
|
|
},
|
|
"404": {
|
|
"description": "Not found"
|
|
}
|
|
}
|
|
},
|
|
"post": {
|
|
"tags": [
|
|
"Jobs"
|
|
],
|
|
"summary": "Create jobs",
|
|
"description": "POST /api/hermes/jobs",
|
|
"operationId": "create",
|
|
"security": [
|
|
{
|
|
"BearerAuth": []
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Success"
|
|
},
|
|
"400": {
|
|
"$ref": "#/components/responses/BadRequest"
|
|
},
|
|
"401": {
|
|
"$ref": "#/components/responses/Unauthorized"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/hermes/jobs/{id}": {
|
|
"get": {
|
|
"tags": [
|
|
"Jobs"
|
|
],
|
|
"summary": "Get :id",
|
|
"description": "GET /api/hermes/jobs/:id",
|
|
"operationId": "get",
|
|
"security": [
|
|
{
|
|
"BearerAuth": []
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Success"
|
|
},
|
|
"401": {
|
|
"$ref": "#/components/responses/Unauthorized"
|
|
},
|
|
"404": {
|
|
"description": "Not found"
|
|
}
|
|
}
|
|
},
|
|
"patch": {
|
|
"tags": [
|
|
"Jobs"
|
|
],
|
|
"summary": "Update :id",
|
|
"description": "PATCH /api/hermes/jobs/:id",
|
|
"operationId": "update",
|
|
"security": [
|
|
{
|
|
"BearerAuth": []
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Success"
|
|
},
|
|
"400": {
|
|
"$ref": "#/components/responses/BadRequest"
|
|
},
|
|
"401": {
|
|
"$ref": "#/components/responses/Unauthorized"
|
|
}
|
|
}
|
|
},
|
|
"delete": {
|
|
"tags": [
|
|
"Jobs"
|
|
],
|
|
"summary": "Delete :id",
|
|
"description": "DELETE /api/hermes/jobs/:id",
|
|
"operationId": "remove",
|
|
"security": [
|
|
{
|
|
"BearerAuth": []
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Success"
|
|
},
|
|
"401": {
|
|
"$ref": "#/components/responses/Unauthorized"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/hermes/jobs/{id}/pause": {
|
|
"post": {
|
|
"tags": [
|
|
"Jobs"
|
|
],
|
|
"summary": "Pause pause",
|
|
"description": "POST /api/hermes/jobs/:id/pause",
|
|
"operationId": "pause",
|
|
"security": [
|
|
{
|
|
"BearerAuth": []
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Success"
|
|
},
|
|
"400": {
|
|
"$ref": "#/components/responses/BadRequest"
|
|
},
|
|
"401": {
|
|
"$ref": "#/components/responses/Unauthorized"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/hermes/jobs/{id}/resume": {
|
|
"post": {
|
|
"tags": [
|
|
"Jobs"
|
|
],
|
|
"summary": "Resume resume",
|
|
"description": "POST /api/hermes/jobs/:id/resume",
|
|
"operationId": "resume",
|
|
"security": [
|
|
{
|
|
"BearerAuth": []
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Success"
|
|
},
|
|
"400": {
|
|
"$ref": "#/components/responses/BadRequest"
|
|
},
|
|
"401": {
|
|
"$ref": "#/components/responses/Unauthorized"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/hermes/jobs/{id}/run": {
|
|
"post": {
|
|
"tags": [
|
|
"Jobs"
|
|
],
|
|
"summary": "Run run",
|
|
"description": "POST /api/hermes/jobs/:id/run",
|
|
"operationId": "run",
|
|
"security": [
|
|
{
|
|
"BearerAuth": []
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Success"
|
|
},
|
|
"400": {
|
|
"$ref": "#/components/responses/BadRequest"
|
|
},
|
|
"401": {
|
|
"$ref": "#/components/responses/Unauthorized"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/hermes/logs": {
|
|
"get": {
|
|
"tags": [
|
|
"Logs"
|
|
],
|
|
"summary": "List logs",
|
|
"description": "GET /api/hermes/logs",
|
|
"operationId": "list",
|
|
"security": [
|
|
{
|
|
"BearerAuth": []
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Success"
|
|
},
|
|
"401": {
|
|
"$ref": "#/components/responses/Unauthorized"
|
|
},
|
|
"404": {
|
|
"description": "Not found"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/hermes/logs/{name}": {
|
|
"get": {
|
|
"tags": [
|
|
"Logs"
|
|
],
|
|
"summary": "Get :name",
|
|
"description": "GET /api/hermes/logs/:name",
|
|
"operationId": "read",
|
|
"security": [
|
|
{
|
|
"BearerAuth": []
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Success"
|
|
},
|
|
"401": {
|
|
"$ref": "#/components/responses/Unauthorized"
|
|
},
|
|
"404": {
|
|
"description": "Not found"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/hermes/memory": {
|
|
"get": {
|
|
"tags": [
|
|
"Memory"
|
|
],
|
|
"summary": "Get memory",
|
|
"description": "GET /api/hermes/memory",
|
|
"operationId": "get",
|
|
"security": [
|
|
{
|
|
"BearerAuth": []
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Success"
|
|
},
|
|
"401": {
|
|
"$ref": "#/components/responses/Unauthorized"
|
|
},
|
|
"404": {
|
|
"description": "Not found"
|
|
}
|
|
}
|
|
},
|
|
"post": {
|
|
"tags": [
|
|
"Memory"
|
|
],
|
|
"summary": "Create memory",
|
|
"description": "POST /api/hermes/memory",
|
|
"operationId": "save",
|
|
"security": [
|
|
{
|
|
"BearerAuth": []
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Success"
|
|
},
|
|
"400": {
|
|
"$ref": "#/components/responses/BadRequest"
|
|
},
|
|
"401": {
|
|
"$ref": "#/components/responses/Unauthorized"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/hermes/model-alias": {
|
|
"put": {
|
|
"tags": [
|
|
"Models"
|
|
],
|
|
"summary": "Update model-alias",
|
|
"description": "PUT /api/hermes/model-alias",
|
|
"operationId": "setModelAlias",
|
|
"security": [
|
|
{
|
|
"BearerAuth": []
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Success"
|
|
},
|
|
"400": {
|
|
"$ref": "#/components/responses/BadRequest"
|
|
},
|
|
"401": {
|
|
"$ref": "#/components/responses/Unauthorized"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/hermes/model-context": {
|
|
"get": {
|
|
"tags": [
|
|
"Models"
|
|
],
|
|
"summary": "Get model-context",
|
|
"description": "GET /api/hermes/model-context",
|
|
"operationId": "getModelContext",
|
|
"security": [
|
|
{
|
|
"BearerAuth": []
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Success"
|
|
},
|
|
"401": {
|
|
"$ref": "#/components/responses/Unauthorized"
|
|
},
|
|
"404": {
|
|
"description": "Not found"
|
|
}
|
|
}
|
|
},
|
|
"put": {
|
|
"tags": [
|
|
"Models"
|
|
],
|
|
"summary": "Update model-context",
|
|
"description": "PUT /api/hermes/model-context",
|
|
"operationId": "updateModelContext",
|
|
"security": [
|
|
{
|
|
"BearerAuth": []
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Success"
|
|
},
|
|
"400": {
|
|
"$ref": "#/components/responses/BadRequest"
|
|
},
|
|
"401": {
|
|
"$ref": "#/components/responses/Unauthorized"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/hermes/model-context/{provider}/{model}": {
|
|
"get": {
|
|
"tags": [
|
|
"Models"
|
|
],
|
|
"summary": "Get :model",
|
|
"description": "GET /api/hermes/model-context/:provider/:model",
|
|
"operationId": "getModelContext",
|
|
"security": [
|
|
{
|
|
"BearerAuth": []
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Success"
|
|
},
|
|
"401": {
|
|
"$ref": "#/components/responses/Unauthorized"
|
|
},
|
|
"404": {
|
|
"description": "Not found"
|
|
}
|
|
}
|
|
},
|
|
"put": {
|
|
"tags": [
|
|
"Models"
|
|
],
|
|
"summary": "Update :model",
|
|
"description": "PUT /api/hermes/model-context/:provider/:model",
|
|
"operationId": "updateModelContext",
|
|
"security": [
|
|
{
|
|
"BearerAuth": []
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Success"
|
|
},
|
|
"400": {
|
|
"$ref": "#/components/responses/BadRequest"
|
|
},
|
|
"401": {
|
|
"$ref": "#/components/responses/Unauthorized"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/hermes/model-visibility": {
|
|
"put": {
|
|
"tags": [
|
|
"Models"
|
|
],
|
|
"summary": "Update model-visibility",
|
|
"description": "PUT /api/hermes/model-visibility",
|
|
"operationId": "setModelVisibility",
|
|
"security": [
|
|
{
|
|
"BearerAuth": []
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Success"
|
|
},
|
|
"400": {
|
|
"$ref": "#/components/responses/BadRequest"
|
|
},
|
|
"401": {
|
|
"$ref": "#/components/responses/Unauthorized"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/hermes/profiles": {
|
|
"get": {
|
|
"tags": [
|
|
"Profiles"
|
|
],
|
|
"summary": "List profiles",
|
|
"description": "GET /api/hermes/profiles",
|
|
"operationId": "list",
|
|
"security": [
|
|
{
|
|
"BearerAuth": []
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Success"
|
|
},
|
|
"401": {
|
|
"$ref": "#/components/responses/Unauthorized"
|
|
},
|
|
"404": {
|
|
"description": "Not found"
|
|
}
|
|
}
|
|
},
|
|
"post": {
|
|
"tags": [
|
|
"Profiles"
|
|
],
|
|
"summary": "Create profiles",
|
|
"description": "POST /api/hermes/profiles",
|
|
"operationId": "create",
|
|
"security": [
|
|
{
|
|
"BearerAuth": []
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Success"
|
|
},
|
|
"400": {
|
|
"$ref": "#/components/responses/BadRequest"
|
|
},
|
|
"401": {
|
|
"$ref": "#/components/responses/Unauthorized"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/hermes/profiles/active": {
|
|
"put": {
|
|
"tags": [
|
|
"Profiles"
|
|
],
|
|
"summary": "Update active",
|
|
"description": "PUT /api/hermes/profiles/active",
|
|
"operationId": "switchProfile",
|
|
"security": [
|
|
{
|
|
"BearerAuth": []
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Success"
|
|
},
|
|
"400": {
|
|
"$ref": "#/components/responses/BadRequest"
|
|
},
|
|
"401": {
|
|
"$ref": "#/components/responses/Unauthorized"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/hermes/profiles/import": {
|
|
"post": {
|
|
"tags": [
|
|
"Profiles"
|
|
],
|
|
"summary": "Create import",
|
|
"description": "POST /api/hermes/profiles/import",
|
|
"operationId": "importProfile",
|
|
"security": [
|
|
{
|
|
"BearerAuth": []
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Success"
|
|
},
|
|
"400": {
|
|
"$ref": "#/components/responses/BadRequest"
|
|
},
|
|
"401": {
|
|
"$ref": "#/components/responses/Unauthorized"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/hermes/profiles/{name}": {
|
|
"get": {
|
|
"tags": [
|
|
"Profiles"
|
|
],
|
|
"summary": "Get :name",
|
|
"description": "GET /api/hermes/profiles/:name",
|
|
"operationId": "get",
|
|
"security": [
|
|
{
|
|
"BearerAuth": []
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Success"
|
|
},
|
|
"401": {
|
|
"$ref": "#/components/responses/Unauthorized"
|
|
},
|
|
"404": {
|
|
"description": "Not found"
|
|
}
|
|
}
|
|
},
|
|
"delete": {
|
|
"tags": [
|
|
"Profiles"
|
|
],
|
|
"summary": "Delete :name",
|
|
"description": "DELETE /api/hermes/profiles/:name",
|
|
"operationId": "remove",
|
|
"security": [
|
|
{
|
|
"BearerAuth": []
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Success"
|
|
},
|
|
"401": {
|
|
"$ref": "#/components/responses/Unauthorized"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/hermes/profiles/{name}/export": {
|
|
"post": {
|
|
"tags": [
|
|
"Profiles"
|
|
],
|
|
"summary": "Create export",
|
|
"description": "POST /api/hermes/profiles/:name/export",
|
|
"operationId": "exportProfile",
|
|
"security": [
|
|
{
|
|
"BearerAuth": []
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Success"
|
|
},
|
|
"400": {
|
|
"$ref": "#/components/responses/BadRequest"
|
|
},
|
|
"401": {
|
|
"$ref": "#/components/responses/Unauthorized"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/hermes/profiles/{name}/rename": {
|
|
"post": {
|
|
"tags": [
|
|
"Profiles"
|
|
],
|
|
"summary": "Rename rename",
|
|
"description": "POST /api/hermes/profiles/:name/rename",
|
|
"operationId": "rename",
|
|
"security": [
|
|
{
|
|
"BearerAuth": []
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Success"
|
|
},
|
|
"400": {
|
|
"$ref": "#/components/responses/BadRequest"
|
|
},
|
|
"401": {
|
|
"$ref": "#/components/responses/Unauthorized"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/hermes/search/sessions": {
|
|
"get": {
|
|
"tags": [
|
|
"Sessions"
|
|
],
|
|
"summary": "Search sessions",
|
|
"description": "GET /api/hermes/search/sessions",
|
|
"operationId": "search",
|
|
"security": [
|
|
{
|
|
"BearerAuth": []
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Success"
|
|
},
|
|
"401": {
|
|
"$ref": "#/components/responses/Unauthorized"
|
|
},
|
|
"404": {
|
|
"description": "Not found"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/hermes/sessions": {
|
|
"get": {
|
|
"tags": [
|
|
"Sessions"
|
|
],
|
|
"summary": "List sessions",
|
|
"description": "GET /api/hermes/sessions",
|
|
"operationId": "list",
|
|
"security": [
|
|
{
|
|
"BearerAuth": []
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Success"
|
|
},
|
|
"401": {
|
|
"$ref": "#/components/responses/Unauthorized"
|
|
},
|
|
"404": {
|
|
"description": "Not found"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/hermes/sessions/batch-delete": {
|
|
"post": {
|
|
"tags": [
|
|
"Sessions"
|
|
],
|
|
"summary": "Create batch-delete",
|
|
"description": "POST /api/hermes/sessions/batch-delete",
|
|
"operationId": "batchRemove",
|
|
"security": [
|
|
{
|
|
"BearerAuth": []
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Success"
|
|
},
|
|
"400": {
|
|
"$ref": "#/components/responses/BadRequest"
|
|
},
|
|
"401": {
|
|
"$ref": "#/components/responses/Unauthorized"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/hermes/sessions/context-length": {
|
|
"get": {
|
|
"tags": [
|
|
"Sessions"
|
|
],
|
|
"summary": "Get context-length",
|
|
"description": "GET /api/hermes/sessions/context-length",
|
|
"operationId": "contextLength",
|
|
"security": [
|
|
{
|
|
"BearerAuth": []
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Success"
|
|
},
|
|
"401": {
|
|
"$ref": "#/components/responses/Unauthorized"
|
|
},
|
|
"404": {
|
|
"description": "Not found"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/hermes/sessions/conversations": {
|
|
"get": {
|
|
"tags": [
|
|
"Sessions"
|
|
],
|
|
"summary": "Get conversations",
|
|
"description": "GET /api/hermes/sessions/conversations",
|
|
"operationId": "listConversations",
|
|
"security": [
|
|
{
|
|
"BearerAuth": []
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Success"
|
|
},
|
|
"401": {
|
|
"$ref": "#/components/responses/Unauthorized"
|
|
},
|
|
"404": {
|
|
"description": "Not found"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/hermes/sessions/conversations/{id}/messages": {
|
|
"get": {
|
|
"tags": [
|
|
"Sessions"
|
|
],
|
|
"summary": "Get messages",
|
|
"description": "GET /api/hermes/sessions/conversations/:id/messages",
|
|
"operationId": "getConversationMessages",
|
|
"security": [
|
|
{
|
|
"BearerAuth": []
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Success"
|
|
},
|
|
"401": {
|
|
"$ref": "#/components/responses/Unauthorized"
|
|
},
|
|
"404": {
|
|
"description": "Not found"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/hermes/sessions/conversations/{id}/messages/paginated": {
|
|
"get": {
|
|
"tags": [
|
|
"Sessions"
|
|
],
|
|
"summary": "Get paginated",
|
|
"description": "GET /api/hermes/sessions/conversations/:id/messages/paginated",
|
|
"operationId": "getConversationMessagesPaginated",
|
|
"security": [
|
|
{
|
|
"BearerAuth": []
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Success"
|
|
},
|
|
"401": {
|
|
"$ref": "#/components/responses/Unauthorized"
|
|
},
|
|
"404": {
|
|
"description": "Not found"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/hermes/sessions/hermes": {
|
|
"get": {
|
|
"tags": [
|
|
"Sessions"
|
|
],
|
|
"summary": "Get hermes",
|
|
"description": "GET /api/hermes/sessions/hermes",
|
|
"operationId": "listHermesSessions",
|
|
"security": [
|
|
{
|
|
"BearerAuth": []
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Success"
|
|
},
|
|
"401": {
|
|
"$ref": "#/components/responses/Unauthorized"
|
|
},
|
|
"404": {
|
|
"description": "Not found"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/hermes/sessions/hermes/{id}": {
|
|
"get": {
|
|
"tags": [
|
|
"Sessions"
|
|
],
|
|
"summary": "Get :id",
|
|
"description": "GET /api/hermes/sessions/hermes/:id",
|
|
"operationId": "getHermesSession",
|
|
"security": [
|
|
{
|
|
"BearerAuth": []
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Success"
|
|
},
|
|
"401": {
|
|
"$ref": "#/components/responses/Unauthorized"
|
|
},
|
|
"404": {
|
|
"description": "Not found"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/hermes/sessions/search": {
|
|
"get": {
|
|
"tags": [
|
|
"Sessions"
|
|
],
|
|
"summary": "Search search",
|
|
"description": "GET /api/hermes/sessions/search",
|
|
"operationId": "search",
|
|
"security": [
|
|
{
|
|
"BearerAuth": []
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Success"
|
|
},
|
|
"401": {
|
|
"$ref": "#/components/responses/Unauthorized"
|
|
},
|
|
"404": {
|
|
"description": "Not found"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/hermes/sessions/usage": {
|
|
"get": {
|
|
"tags": [
|
|
"Sessions"
|
|
],
|
|
"summary": "Get usage",
|
|
"description": "GET /api/hermes/sessions/usage",
|
|
"operationId": "usageBatch",
|
|
"security": [
|
|
{
|
|
"BearerAuth": []
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Success"
|
|
},
|
|
"401": {
|
|
"$ref": "#/components/responses/Unauthorized"
|
|
},
|
|
"404": {
|
|
"description": "Not found"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/hermes/sessions/{id}": {
|
|
"get": {
|
|
"tags": [
|
|
"Sessions"
|
|
],
|
|
"summary": "Get :id",
|
|
"description": "GET /api/hermes/sessions/:id",
|
|
"operationId": "get",
|
|
"security": [
|
|
{
|
|
"BearerAuth": []
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Success"
|
|
},
|
|
"401": {
|
|
"$ref": "#/components/responses/Unauthorized"
|
|
},
|
|
"404": {
|
|
"description": "Not found"
|
|
}
|
|
}
|
|
},
|
|
"delete": {
|
|
"tags": [
|
|
"Sessions"
|
|
],
|
|
"summary": "Delete :id",
|
|
"description": "DELETE /api/hermes/sessions/:id",
|
|
"operationId": "remove",
|
|
"security": [
|
|
{
|
|
"BearerAuth": []
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Success"
|
|
},
|
|
"401": {
|
|
"$ref": "#/components/responses/Unauthorized"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/hermes/sessions/{id}/export": {
|
|
"get": {
|
|
"tags": [
|
|
"Sessions"
|
|
],
|
|
"summary": "Get export",
|
|
"description": "GET /api/hermes/sessions/:id/export",
|
|
"operationId": "exportSession",
|
|
"security": [
|
|
{
|
|
"BearerAuth": []
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Success"
|
|
},
|
|
"401": {
|
|
"$ref": "#/components/responses/Unauthorized"
|
|
},
|
|
"404": {
|
|
"description": "Not found"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/hermes/sessions/{id}/rename": {
|
|
"post": {
|
|
"tags": [
|
|
"Sessions"
|
|
],
|
|
"summary": "Rename rename",
|
|
"description": "POST /api/hermes/sessions/:id/rename",
|
|
"operationId": "rename",
|
|
"security": [
|
|
{
|
|
"BearerAuth": []
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Success"
|
|
},
|
|
"400": {
|
|
"$ref": "#/components/responses/BadRequest"
|
|
},
|
|
"401": {
|
|
"$ref": "#/components/responses/Unauthorized"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/hermes/sessions/{id}/usage": {
|
|
"get": {
|
|
"tags": [
|
|
"Sessions"
|
|
],
|
|
"summary": "Get usage",
|
|
"description": "GET /api/hermes/sessions/:id/usage",
|
|
"operationId": "usageSingle",
|
|
"security": [
|
|
{
|
|
"BearerAuth": []
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Success"
|
|
},
|
|
"401": {
|
|
"$ref": "#/components/responses/Unauthorized"
|
|
},
|
|
"404": {
|
|
"description": "Not found"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/hermes/sessions/{id}/workspace": {
|
|
"post": {
|
|
"tags": [
|
|
"Sessions"
|
|
],
|
|
"summary": "Create workspace",
|
|
"description": "POST /api/hermes/sessions/:id/workspace",
|
|
"operationId": "setWorkspace",
|
|
"security": [
|
|
{
|
|
"BearerAuth": []
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Success"
|
|
},
|
|
"400": {
|
|
"$ref": "#/components/responses/BadRequest"
|
|
},
|
|
"401": {
|
|
"$ref": "#/components/responses/Unauthorized"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/hermes/skills": {
|
|
"get": {
|
|
"tags": [
|
|
"Skills"
|
|
],
|
|
"summary": "List skills",
|
|
"description": "GET /api/hermes/skills",
|
|
"operationId": "list",
|
|
"security": [
|
|
{
|
|
"BearerAuth": []
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Success"
|
|
},
|
|
"401": {
|
|
"$ref": "#/components/responses/Unauthorized"
|
|
},
|
|
"404": {
|
|
"description": "Not found"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/hermes/skills/pin": {
|
|
"put": {
|
|
"tags": [
|
|
"Skills"
|
|
],
|
|
"summary": "Update pin",
|
|
"description": "PUT /api/hermes/skills/pin",
|
|
"operationId": "pin_",
|
|
"security": [
|
|
{
|
|
"BearerAuth": []
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Success"
|
|
},
|
|
"400": {
|
|
"$ref": "#/components/responses/BadRequest"
|
|
},
|
|
"401": {
|
|
"$ref": "#/components/responses/Unauthorized"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/hermes/skills/toggle": {
|
|
"put": {
|
|
"tags": [
|
|
"Skills"
|
|
],
|
|
"summary": "Update toggle",
|
|
"description": "PUT /api/hermes/skills/toggle",
|
|
"operationId": "toggle",
|
|
"security": [
|
|
{
|
|
"BearerAuth": []
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Success"
|
|
},
|
|
"400": {
|
|
"$ref": "#/components/responses/BadRequest"
|
|
},
|
|
"401": {
|
|
"$ref": "#/components/responses/Unauthorized"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/hermes/skills/usage/stats": {
|
|
"get": {
|
|
"tags": [
|
|
"Skills"
|
|
],
|
|
"summary": "Get stats",
|
|
"description": "GET /api/hermes/skills/usage/stats",
|
|
"operationId": "usageStats",
|
|
"security": [
|
|
{
|
|
"BearerAuth": []
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Success"
|
|
},
|
|
"401": {
|
|
"$ref": "#/components/responses/Unauthorized"
|
|
},
|
|
"404": {
|
|
"description": "Not found"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/hermes/skills/{*path}": {
|
|
"get": {
|
|
"tags": [
|
|
"Skills"
|
|
],
|
|
"summary": "Get skills by *path",
|
|
"description": "GET /api/hermes/skills/{*path}",
|
|
"operationId": "readFile_",
|
|
"security": [
|
|
{
|
|
"BearerAuth": []
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Success"
|
|
},
|
|
"401": {
|
|
"$ref": "#/components/responses/Unauthorized"
|
|
},
|
|
"404": {
|
|
"description": "Not found"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/hermes/skills/{category}/{skill}/files": {
|
|
"get": {
|
|
"tags": [
|
|
"Skills"
|
|
],
|
|
"summary": "Get files",
|
|
"description": "GET /api/hermes/skills/:category/:skill/files",
|
|
"operationId": "listFiles",
|
|
"security": [
|
|
{
|
|
"BearerAuth": []
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Success"
|
|
},
|
|
"401": {
|
|
"$ref": "#/components/responses/Unauthorized"
|
|
},
|
|
"404": {
|
|
"description": "Not found"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/hermes/update": {
|
|
"post": {
|
|
"tags": [
|
|
"Update"
|
|
],
|
|
"summary": "Create update",
|
|
"description": "POST /api/hermes/update",
|
|
"operationId": "handleUpdate",
|
|
"security": [
|
|
{
|
|
"BearerAuth": []
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Success"
|
|
},
|
|
"400": {
|
|
"$ref": "#/components/responses/BadRequest"
|
|
},
|
|
"401": {
|
|
"$ref": "#/components/responses/Unauthorized"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/hermes/usage/stats": {
|
|
"get": {
|
|
"tags": [
|
|
"Sessions"
|
|
],
|
|
"summary": "Get stats",
|
|
"description": "GET /api/hermes/usage/stats",
|
|
"operationId": "usageStats",
|
|
"security": [
|
|
{
|
|
"BearerAuth": []
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Success"
|
|
},
|
|
"401": {
|
|
"$ref": "#/components/responses/Unauthorized"
|
|
},
|
|
"404": {
|
|
"description": "Not found"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/hermes/weixin/qrcode": {
|
|
"get": {
|
|
"tags": [
|
|
"Weixin"
|
|
],
|
|
"summary": "Get qrcode",
|
|
"description": "GET /api/hermes/weixin/qrcode",
|
|
"operationId": "getQrcode",
|
|
"security": [
|
|
{
|
|
"BearerAuth": []
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Success"
|
|
},
|
|
"401": {
|
|
"$ref": "#/components/responses/Unauthorized"
|
|
},
|
|
"404": {
|
|
"description": "Not found"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/hermes/weixin/qrcode/status": {
|
|
"get": {
|
|
"tags": [
|
|
"Weixin"
|
|
],
|
|
"summary": "Get status",
|
|
"description": "GET /api/hermes/weixin/qrcode/status",
|
|
"operationId": "pollStatus",
|
|
"security": [
|
|
{
|
|
"BearerAuth": []
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Success"
|
|
},
|
|
"401": {
|
|
"$ref": "#/components/responses/Unauthorized"
|
|
},
|
|
"404": {
|
|
"description": "Not found"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/hermes/weixin/save": {
|
|
"post": {
|
|
"tags": [
|
|
"Weixin"
|
|
],
|
|
"summary": "Create save",
|
|
"description": "POST /api/hermes/weixin/save",
|
|
"operationId": "save",
|
|
"security": [
|
|
{
|
|
"BearerAuth": []
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Success"
|
|
},
|
|
"400": {
|
|
"$ref": "#/components/responses/BadRequest"
|
|
},
|
|
"401": {
|
|
"$ref": "#/components/responses/Unauthorized"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/hermes/workspace/folders": {
|
|
"get": {
|
|
"tags": [
|
|
"Sessions"
|
|
],
|
|
"summary": "Get folders",
|
|
"description": "GET /api/hermes/workspace/folders",
|
|
"operationId": "listWorkspaceFolders",
|
|
"security": [
|
|
{
|
|
"BearerAuth": []
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Success"
|
|
},
|
|
"401": {
|
|
"$ref": "#/components/responses/Unauthorized"
|
|
},
|
|
"404": {
|
|
"description": "Not found"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/health": {
|
|
"get": {
|
|
"tags": [
|
|
"Health"
|
|
],
|
|
"summary": "Get health",
|
|
"description": "GET /health",
|
|
"operationId": "healthCheck",
|
|
"security": [
|
|
{
|
|
"BearerAuth": []
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Success"
|
|
},
|
|
"401": {
|
|
"$ref": "#/components/responses/Unauthorized"
|
|
},
|
|
"404": {
|
|
"description": "Not found"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/upload": {
|
|
"post": {
|
|
"tags": [
|
|
"Upload"
|
|
],
|
|
"summary": "Create upload",
|
|
"description": "POST /upload",
|
|
"operationId": "handleUpload",
|
|
"security": [
|
|
{
|
|
"BearerAuth": []
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Success"
|
|
},
|
|
"400": {
|
|
"$ref": "#/components/responses/BadRequest"
|
|
},
|
|
"401": {
|
|
"$ref": "#/components/responses/Unauthorized"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/webhook": {
|
|
"post": {
|
|
"tags": [
|
|
"Webhook"
|
|
],
|
|
"summary": "Create webhook",
|
|
"description": "POST /webhook",
|
|
"operationId": "handleWebhook",
|
|
"security": [
|
|
{
|
|
"BearerAuth": []
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Success"
|
|
},
|
|
"400": {
|
|
"$ref": "#/components/responses/BadRequest"
|
|
},
|
|
"401": {
|
|
"$ref": "#/components/responses/Unauthorized"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/hermes/{*any}": {
|
|
"get": {
|
|
"tags": [
|
|
"Proxy"
|
|
],
|
|
"summary": "Proxy to upstream Hermes API",
|
|
"description": "Forwards unmatched /api/hermes/* requests to upstream Hermes gateway. Supports all upstream endpoints.",
|
|
"operationId": "proxyHermes",
|
|
"responses": {
|
|
"200": {
|
|
"description": "Proxied response from upstream"
|
|
},
|
|
"401": {
|
|
"$ref": "#/components/responses/Unauthorized"
|
|
},
|
|
"502": {
|
|
"description": "Proxy failure"
|
|
}
|
|
}
|
|
},
|
|
"post": {
|
|
"tags": [
|
|
"Proxy"
|
|
],
|
|
"summary": "Proxy to upstream Hermes API",
|
|
"description": "Forwards unmatched /api/hermes/* requests to upstream Hermes gateway. Supports all upstream endpoints.",
|
|
"operationId": "proxyHermesPost",
|
|
"responses": {
|
|
"200": {
|
|
"description": "Proxied response from upstream"
|
|
},
|
|
"401": {
|
|
"$ref": "#/components/responses/Unauthorized"
|
|
},
|
|
"502": {
|
|
"description": "Proxy failure"
|
|
}
|
|
}
|
|
},
|
|
"put": {
|
|
"tags": [
|
|
"Proxy"
|
|
],
|
|
"summary": "Proxy to upstream Hermes API",
|
|
"description": "Forwards unmatched /api/hermes/* requests to upstream Hermes gateway. Supports all upstream endpoints.",
|
|
"operationId": "proxyHermesPut",
|
|
"responses": {
|
|
"200": {
|
|
"description": "Proxied response from upstream"
|
|
},
|
|
"401": {
|
|
"$ref": "#/components/responses/Unauthorized"
|
|
},
|
|
"502": {
|
|
"description": "Proxy failure"
|
|
}
|
|
}
|
|
},
|
|
"delete": {
|
|
"tags": [
|
|
"Proxy"
|
|
],
|
|
"summary": "Proxy to upstream Hermes API",
|
|
"description": "Forwards unmatched /api/hermes/* requests to upstream Hermes gateway. Supports all upstream endpoints.",
|
|
"operationId": "proxyHermesDelete",
|
|
"responses": {
|
|
"200": {
|
|
"description": "Proxied response from upstream"
|
|
},
|
|
"401": {
|
|
"$ref": "#/components/responses/Unauthorized"
|
|
},
|
|
"502": {
|
|
"description": "Proxy failure"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/v1/{*any}": {
|
|
"get": {
|
|
"tags": [
|
|
"Proxy"
|
|
],
|
|
"summary": "Proxy to upstream Hermes v1 API",
|
|
"description": "Forwards /v1/* requests to upstream Hermes gateway. Supports all upstream v1 endpoints.",
|
|
"operationId": "proxyV1",
|
|
"responses": {
|
|
"200": {
|
|
"description": "Proxied response from upstream"
|
|
},
|
|
"401": {
|
|
"$ref": "#/components/responses/Unauthorized"
|
|
},
|
|
"502": {
|
|
"description": "Proxy failure"
|
|
}
|
|
}
|
|
},
|
|
"post": {
|
|
"tags": [
|
|
"Proxy"
|
|
],
|
|
"summary": "Proxy to upstream Hermes v1 API",
|
|
"description": "Forwards /v1/* requests to upstream Hermes gateway. Supports all upstream v1 endpoints.",
|
|
"operationId": "proxyV1Post",
|
|
"responses": {
|
|
"200": {
|
|
"description": "Proxied response from upstream"
|
|
},
|
|
"401": {
|
|
"$ref": "#/components/responses/Unauthorized"
|
|
},
|
|
"502": {
|
|
"description": "Proxy failure"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/hermes/terminal": {
|
|
"get": {
|
|
"tags": [
|
|
"Terminal"
|
|
],
|
|
"summary": "WebSocket terminal connection",
|
|
"description": "Establish a WebSocket connection for interactive terminal access. Uses the `ws` or `wss` protocol with `?token=` for authentication.",
|
|
"operationId": "terminalWebSocket",
|
|
"responses": {
|
|
"101": {
|
|
"description": "Switching Protocols - WebSocket connection established"
|
|
},
|
|
"401": {
|
|
"$ref": "#/components/responses/Unauthorized"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/hermes/v1/runs/{runId}/events": {
|
|
"get": {
|
|
"tags": [
|
|
"Chat"
|
|
],
|
|
"summary": "Server-Sent Events for chat streaming",
|
|
"description": "Stream chat events using Server-Sent Events (SSE). Authentication via `?token=` query parameter.",
|
|
"operationId": "chatStreamEvents",
|
|
"parameters": [
|
|
{
|
|
"name": "runId",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "Chat run ID",
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
},
|
|
{
|
|
"name": "token",
|
|
"in": "query",
|
|
"required": true,
|
|
"description": "Authentication token",
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "SSE stream established",
|
|
"content": {
|
|
"text/event-stream": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"event": {
|
|
"type": "string",
|
|
"enum": [
|
|
"run.created",
|
|
"run.queued",
|
|
"run.started",
|
|
"run.streaming",
|
|
"run.completed",
|
|
"run.failed"
|
|
]
|
|
},
|
|
"data": {
|
|
"type": "object"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"401": {
|
|
"$ref": "#/components/responses/Unauthorized"
|
|
},
|
|
"404": {
|
|
"description": "Run not found"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"components": {
|
|
"securitySchemes": {
|
|
"BearerAuth": {
|
|
"type": "http",
|
|
"scheme": "bearer",
|
|
"bearerFormat": "API Token"
|
|
}
|
|
},
|
|
"schemas": {},
|
|
"responses": {
|
|
"Unauthorized": {
|
|
"description": "Unauthorized - Invalid or missing authentication token",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"error": {
|
|
"type": "string",
|
|
"example": "Unauthorized"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"BadRequest": {
|
|
"description": "Bad Request - Invalid parameters",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"error": {
|
|
"type": "string",
|
|
"example": "Invalid request"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"NotFound": {
|
|
"description": "Resource not found",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"error": {
|
|
"type": "string",
|
|
"example": "Not found"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
} |