Files
a-share-analysis/server/openapi/openapi.json
T

319 lines
9.8 KiB
JSON

{
"components": {
"schemas": {
"BreadthDataDto": {
"properties": {
"advancing": { "type": "number" },
"declining": { "type": "number" },
"unchanged": { "type": "number" }
},
"required": ["advancing", "declining", "unchanged"],
"type": "object"
},
"BreadthResponseDto": {
"properties": {
"asOf": { "format": "date-time", "type": "string" },
"data": {
"allOf": [{ "$ref": "#/components/schemas/BreadthDataDto" }],
"nullable": true,
"type": "object"
},
"snapshotId": { "type": "string" },
"source": { "enum": ["tdx"], "type": "string" },
"status": {
"enum": ["fresh", "delayed", "partial", "unavailable"],
"type": "string"
},
"warnings": { "items": { "type": "string" }, "type": "array" }
},
"required": ["snapshotId", "asOf", "source", "status", "warnings", "data"],
"type": "object"
},
"DependencyHealthDto": {
"properties": {
"detail": { "type": "string" },
"status": {
"enum": ["healthy", "unavailable", "disabled"],
"type": "string"
}
},
"required": ["status", "detail"],
"type": "object"
},
"FundDataDto": {
"properties": {
"items": { "items": { "type": "string" }, "type": "array" }
},
"required": ["items"],
"type": "object"
},
"FundsResponseDto": {
"properties": {
"asOf": { "format": "date-time", "type": "string" },
"data": {
"allOf": [{ "$ref": "#/components/schemas/FundDataDto" }],
"nullable": true,
"type": "object"
},
"snapshotId": { "type": "string" },
"source": { "enum": ["tdx"], "type": "string" },
"status": {
"enum": ["fresh", "delayed", "partial", "unavailable"],
"type": "string"
},
"warnings": { "items": { "type": "string" }, "type": "array" }
},
"required": ["snapshotId", "asOf", "source", "status", "warnings", "data"],
"type": "object"
},
"HealthDependenciesDto": {
"properties": {
"mysql": { "$ref": "#/components/schemas/DependencyHealthDto" },
"redis": { "$ref": "#/components/schemas/DependencyHealthDto" },
"rocketMq": { "$ref": "#/components/schemas/DependencyHealthDto" }
},
"required": ["redis", "mysql", "rocketMq"],
"type": "object"
},
"HealthResponseDto": {
"properties": {
"checkedAt": { "format": "date-time", "type": "string" },
"dependencies": {
"$ref": "#/components/schemas/HealthDependenciesDto"
},
"process": { "enum": ["api"], "type": "string" },
"status": { "enum": ["healthy", "unavailable"], "type": "string" }
},
"required": ["status", "process", "checkedAt", "dependencies"],
"type": "object"
},
"IndexQuoteDto": {
"properties": {
"changePercent": { "nullable": true, "type": "number" },
"code": { "type": "string" },
"direction": { "enum": ["up", "down", "flat"], "type": "string" },
"name": { "type": "string" },
"price": { "type": "number" },
"tradeDate": { "type": "string" }
},
"required": ["code", "name", "price", "direction", "tradeDate"],
"type": "object"
},
"IndicesDataDto": {
"properties": {
"items": {
"items": { "$ref": "#/components/schemas/IndexQuoteDto" },
"type": "array"
}
},
"required": ["items"],
"type": "object"
},
"IndicesResponseDto": {
"properties": {
"asOf": { "format": "date-time", "type": "string" },
"data": {
"allOf": [{ "$ref": "#/components/schemas/IndicesDataDto" }],
"nullable": true,
"type": "object"
},
"snapshotId": { "type": "string" },
"source": { "enum": ["tdx"], "type": "string" },
"status": {
"enum": ["fresh", "delayed", "partial", "unavailable"],
"type": "string"
},
"warnings": { "items": { "type": "string" }, "type": "array" }
},
"required": ["snapshotId", "asOf", "source", "status", "warnings", "data"],
"type": "object"
},
"SectorDataDto": {
"properties": {
"items": { "items": { "type": "string" }, "type": "array" }
},
"required": ["items"],
"type": "object"
},
"SectorsResponseDto": {
"properties": {
"asOf": { "format": "date-time", "type": "string" },
"data": {
"allOf": [{ "$ref": "#/components/schemas/SectorDataDto" }],
"nullable": true,
"type": "object"
},
"snapshotId": { "type": "string" },
"source": { "enum": ["tdx"], "type": "string" },
"status": {
"enum": ["fresh", "delayed", "partial", "unavailable"],
"type": "string"
},
"warnings": { "items": { "type": "string" }, "type": "array" }
},
"required": ["snapshotId", "asOf", "source", "status", "warnings", "data"],
"type": "object"
},
"SummaryDataDto": {
"properties": {
"drivers": { "items": { "type": "string" }, "type": "array" },
"marketStatus": { "type": "string" },
"risks": { "items": { "type": "string" }, "type": "array" },
"sentimentStatus": { "type": "string" },
"verdict": { "type": "string" },
"volumeStatus": { "type": "string" }
},
"required": [
"verdict",
"marketStatus",
"volumeStatus",
"sentimentStatus",
"drivers",
"risks"
],
"type": "object"
},
"SummaryResponseDto": {
"properties": {
"asOf": { "format": "date-time", "type": "string" },
"data": {
"allOf": [{ "$ref": "#/components/schemas/SummaryDataDto" }],
"nullable": true,
"type": "object"
},
"snapshotId": { "type": "string" },
"source": { "enum": ["tdx"], "type": "string" },
"status": {
"enum": ["fresh", "delayed", "partial", "unavailable"],
"type": "string"
},
"warnings": { "items": { "type": "string" }, "type": "array" }
},
"required": ["snapshotId", "asOf", "source", "status", "warnings", "data"],
"type": "object"
}
}
},
"info": {
"contact": {},
"description": "",
"title": "A 股市场分析工具 API",
"version": "0.0.8-draft"
},
"openapi": "3.0.0",
"paths": {
"/api/v1/health": {
"get": {
"operationId": "HealthController_getHealth",
"parameters": [],
"responses": {
"200": {
"content": {
"application/json": {
"schema": { "$ref": "#/components/schemas/HealthResponseDto" }
}
},
"description": ""
},
"503": {
"content": {
"application/json": {
"schema": { "$ref": "#/components/schemas/HealthResponseDto" }
}
},
"description": ""
}
},
"tags": ["health"]
}
},
"/api/v1/market-overview/breadth": {
"get": {
"operationId": "MarketOverviewController_getBreadth",
"parameters": [],
"responses": {
"200": {
"content": {
"application/json": {
"schema": { "$ref": "#/components/schemas/BreadthResponseDto" }
}
},
"description": ""
}
},
"tags": ["market-overview"]
}
},
"/api/v1/market-overview/funds": {
"get": {
"operationId": "MarketOverviewController_getFunds",
"parameters": [],
"responses": {
"200": {
"content": {
"application/json": {
"schema": { "$ref": "#/components/schemas/FundsResponseDto" }
}
},
"description": ""
}
},
"tags": ["market-overview"]
}
},
"/api/v1/market-overview/indices": {
"get": {
"operationId": "MarketOverviewController_getIndices",
"parameters": [],
"responses": {
"200": {
"content": {
"application/json": {
"schema": { "$ref": "#/components/schemas/IndicesResponseDto" }
}
},
"description": ""
}
},
"tags": ["market-overview"]
}
},
"/api/v1/market-overview/sectors": {
"get": {
"operationId": "MarketOverviewController_getSectors",
"parameters": [],
"responses": {
"200": {
"content": {
"application/json": {
"schema": { "$ref": "#/components/schemas/SectorsResponseDto" }
}
},
"description": ""
}
},
"tags": ["market-overview"]
}
},
"/api/v1/market-overview/summary": {
"get": {
"operationId": "MarketOverviewController_getSummary",
"parameters": [],
"responses": {
"200": {
"content": {
"application/json": {
"schema": { "$ref": "#/components/schemas/SummaryResponseDto" }
}
},
"description": ""
}
},
"tags": ["market-overview"]
}
}
},
"servers": [],
"tags": []
}