API Reference
Below is the API documentation for the HocChungKhoan CMS endpoints, auto-rendered from the project's OpenAPI Specification 3.0.
To test these APIs interactively, you can send HTTP requests directly to the base endpoint: https://api.hocchungkhoan.com.vn
HocChungKhoan CMS API (1.0.0)
Download OpenAPI specification:Download
API cung cấp dữ liá»u khách hà ng, danh mục Äầu tư, lá»ch sá» giao dá»ch và thá»ng kê hiá»u quả Äầu tư cho HocChungKhoan CMS.
Lấy thông tin chi tiết khách hà ng
Truy vấn chi tiết há» sÆ¡ khách hà ng theo slug, bao gá»m thông tin cá nhân, nhân viên chÄm sóc và danh sách tà i khoản liên kết.
path Parameters
| slug required | string Slug Äá»nh danh duy nhất cá»§a khách hà ng (và dụ: bangnh) |
Responses
Response samples
- 200
- 404
{- "success": true,
- "data": {
- "id": "a1b07384-c113-4ec2-a5d6-c95a2d67d7d4",
- "slug": "bangnh",
- "name": "Nguyen Huu Bang",
- "email": "bangnh@example.com",
- "phone": "0987654321",
- "staff_id": "d3b07384-d113-4ec2-a5d6-c95a2d67d712",
- "staff": {
- "id": "d3b07384-d113-4ec2-a5d6-c95a2d67d712",
- "name": "Lê VÄn A",
- "email": "vana.le@hocchungkhoan.com"
}, - "accounts": [
- {
- "id": "c1b07384-b113-4ec2-a5d6-c95a2d67d7e3",
- "customer_id": "a1b07384-c113-4ec2-a5d6-c95a2d67d7d4",
- "broker_id": "e2b07384-a113-4ec2-a5d6-c95a2d67d7f1",
- "account_no": "0001234567",
- "broker": {
- "id": "e2b07384-a113-4ec2-a5d6-c95a2d67d7f1",
- "name": "SSI Securities",
- "code": "SSI"
}
}
]
}
}Lấy danh mục Äầu tư hiá»n tại
Truy vấn danh sách holdings (mã cá» phiếu, khá»i lượng, giá vá»n, công ty chứng khoán) cá»§a khách hà ng theo slug.
path Parameters
| slug required | string Slug Äá»nh danh duy nhất cá»§a khách hà ng |
Responses
Response samples
- 200
- 404
{- "success": true,
- "data": [
- {
- "id": "f4b07384-f113-4ec2-a5d6-c95a2d67d7b2",
- "stock_code": "FPT",
- "isin_code": "VN000000FPT4",
- "quantity": 1500,
- "avg_cost": 125000,
- "total_cost": 187500000,
- "account": {
- "id": "c1b07384-b113-4ec2-a5d6-c95a2d67d7e3",
- "account_no": "0001234567",
- "broker": {
- "id": "e2b07384-a113-4ec2-a5d6-c95a2d67d7f1",
- "name": "SSI Securities",
- "code": "SSI"
}
}
}
]
}Lấy lá»ch sá» giao dá»ch (toà n bá» tà i khoản)
Truy vấn toà n bá» lá»ch sá» giao dá»ch mua/bán cá»§a khách hà ng há» trợ phân trang và bá» lá»c theo mã cá» phiếu, công ty chứng khoán, loại giao dá»ch.
path Parameters
| slug required | string Slug Äá»nh danh duy nhất cá»§a khách hà ng |
query Parameters
| page | integer Default: 1 Sá» trang kết quả (mặc Äá»nh: 1) |
| per_page | integer Default: 10 Sá» lượng kết quả trên má»i trang (mặc Äá»nh: 10) |
| broker | string Mã công ty chứng khoán Äá» lá»c (và dụ: SSI, PINETREE) |
| stock_code | string Mã chứng khoán Äá» lá»c (và dụ: FPT, HPG) |
| type | string Enum: "buy" "sell" Loại giao dá»ch (buy hoặc sell) |
| start_date | string <date> Ngà y bắt Äầu lá»c (YYYY-MM-DD) |
| end_date | string <date> Ngà y kết thúc lá»c (YYYY-MM-DD) |
Responses
Response samples
- 200
- 404
{- "success": true,
- "data": [
- {
- "id": "7a007384-a113-4ec2-a5d6-c95a2d67d7a1",
- "trade_date": "2026-05-20",
- "stock_code": "FPT",
- "isin_code": "VN000000FPT4",
- "type": "buy",
- "quantity": 500,
- "price": 126000,
- "total_value": 63000000,
- "fee": 63000,
- "personal_tax": 0,
- "account": {
- "id": "c1b07384-b113-4ec2-a5d6-c95a2d67d7e3",
- "account_no": "0001234567",
- "broker": {
- "id": "e2b07384-a113-4ec2-a5d6-c95a2d67d7f1",
- "name": "SSI Securities",
- "code": "SSI"
}
}
}
], - "pagination": {
- "page": 1,
- "per_page": 10,
- "total": 45
}
}Lấy lá»ch sá» giao dá»ch theo tà i khoản cụ thá»
Truy vấn lá»ch sá» giao dá»ch lá»c theo ID tà i khoản chứng khoán cụ thá» cá»§a khách hà ng.
path Parameters
| slug required | string Slug Äá»nh danh duy nhất cá»§a khách hà ng |
| accountId required | string <uuid> UUID tà i khoản chứng khoán liên kết |
query Parameters
| page | integer Default: 1 |
| per_page | integer Default: 10 |
Responses
Response samples
- 200
- 404
{- "success": true,
- "data": [
- {
- "id": "7a007384-a113-4ec2-a5d6-c95a2d67d7a1",
- "trade_date": "2026-05-20",
- "stock_code": "FPT",
- "isin_code": "VN000000FPT4",
- "type": "buy",
- "quantity": 500,
- "price": 126000,
- "total_value": 63000000,
- "fee": 63000,
- "personal_tax": 0,
- "account": {
- "id": "c1b07384-b113-4ec2-a5d6-c95a2d67d7e3",
- "account_no": "0001234567",
- "broker": {
- "id": "e2b07384-a113-4ec2-a5d6-c95a2d67d7f1",
- "name": "SSI Securities",
- "code": "SSI"
}
}
}
], - "pagination": {
- "page": 1,
- "per_page": 10,
- "total": 45
}
}Lấy thá»ng kê hiá»u quả Äầu tư (P&L)
Truy vấn thá»ng kê tá»ng giá trá» mua/bán, tá»ng phà thuế và lợi nhuáºn thá»±c tế (realized P&L) cá»§a khách hà ng.
path Parameters
| slug required | string Slug Äá»nh danh duy nhất cá»§a khách hà ng |
Responses
Response samples
- 200
- 404
{- "success": true,
- "data": {
- "total_buy_value": 540000000,
- "total_sell_value": 620000000,
- "total_buy_fee": 540000,
- "total_sell_fee": 620000,
- "total_tax": 620000,
- "realized_pnl": 80000000,
- "transaction_count": 34,
- "date_range": {
- "from": "2026-01-10",
- "to": "2026-05-24"
}
}
}Lấy phân tÃch phong cách giao dá»ch
Truy vấn phân tÃch hiá»u quả giao dá»ch và phong cách Äầu tư cá»§a khách hà ng theo slug (bao gá»m win rate, profit factor, holding time, trading frequency, và top 5 thắng/thua).
path Parameters
| slug required | string Slug Äá»nh danh duy nhất cá»§a khách hà ng (và dụ: bangnh) |
Responses
Response samples
- 200
- 404
{- "success": true,
- "data": {
- "summary": {
- "total_deals": 14,
- "win_deals": 9,
- "loss_deals": 5,
- "win_rate": 0.643,
- "avg_win_pnl": 12000000,
- "avg_loss_pnl": -4500000,
- "profit_factor": 4.8,
- "avg_holding_days_win": 18.5,
- "avg_holding_days_loss": 12.3,
- "total_realized_pnl": 85500000,
- "total_fee_tax": 1160000,
- "monthly_trade_counts": {
- "2026-01": 4,
- "2026-02": 6,
- "2026-03": 8,
- "2026-04": 10,
- "2026-05": 6
}
}, - "top_wins": [
- {
- "stock_code": "FPT",
- "sell_date": "2026-05-18",
- "realized_pnl": 25000000,
- "holding_days": 22,
- "quantity_sold": 1000
}
], - "top_losses": [
- {
- "stock_code": "FPT",
- "sell_date": "2026-05-18",
- "realized_pnl": 25000000,
- "holding_days": 22,
- "quantity_sold": 1000
}
]
}
}Lấy dữ liá»u tá»ng hợp khách hà ng (All-in-one)
Truy vấn toà n bá» dữ liá»u há» sÆ¡, danh mục holdings, thá»ng kê P&L và phân tÃch phong cách giao dá»ch chá» trong má»t lượt gá»i duy nhất giúp giảm sá» lượng HTTP request từ frontend.
path Parameters
| slug required | string Slug Äá»nh danh duy nhất cá»§a khách hà ng |
Responses
Response samples
- 200
- 404
{- "success": true,
- "data": {
- "customer": {
- "id": "a1b07384-c113-4ec2-a5d6-c95a2d67d7d4",
- "slug": "bangnh",
- "name": "Nguyen Huu Bang",
- "email": "bangnh@example.com",
- "phone": "0987654321",
- "staff_id": "d3b07384-d113-4ec2-a5d6-c95a2d67d712",
- "staff": {
- "id": "d3b07384-d113-4ec2-a5d6-c95a2d67d712",
- "name": "Lê VÄn A",
- "email": "vana.le@hocchungkhoan.com"
}, - "accounts": [
- {
- "id": "c1b07384-b113-4ec2-a5d6-c95a2d67d7e3",
- "customer_id": "a1b07384-c113-4ec2-a5d6-c95a2d67d7d4",
- "broker_id": "e2b07384-a113-4ec2-a5d6-c95a2d67d7f1",
- "account_no": "0001234567",
- "broker": {
- "id": "e2b07384-a113-4ec2-a5d6-c95a2d67d7f1",
- "name": "SSI Securities",
- "code": "SSI"
}
}
]
}, - "portfolio": [
- {
- "id": "f4b07384-f113-4ec2-a5d6-c95a2d67d7b2",
- "stock_code": "FPT",
- "isin_code": "VN000000FPT4",
- "quantity": 1500,
- "avg_cost": 125000,
- "total_cost": 187500000,
- "account": {
- "id": "c1b07384-b113-4ec2-a5d6-c95a2d67d7e3",
- "account_no": "0001234567",
- "broker": {
- "id": "e2b07384-a113-4ec2-a5d6-c95a2d67d7f1",
- "name": "SSI Securities",
- "code": "SSI"
}
}
}
], - "stats": {
- "total_buy_value": 540000000,
- "total_sell_value": 620000000,
- "total_buy_fee": 540000,
- "total_sell_fee": 620000,
- "total_tax": 620000,
- "realized_pnl": 80000000,
- "transaction_count": 34,
- "date_range": {
- "from": "2026-01-10",
- "to": "2026-05-24"
}
}, - "analytics": {
- "summary": {
- "total_deals": 14,
- "win_deals": 9,
- "loss_deals": 5,
- "win_rate": 0.643,
- "avg_win_pnl": 12000000,
- "avg_loss_pnl": -4500000,
- "profit_factor": 4.8,
- "avg_holding_days_win": 18.5,
- "avg_holding_days_loss": 12.3,
- "total_realized_pnl": 85500000,
- "total_fee_tax": 1160000,
- "monthly_trade_counts": {
- "2026-01": 4,
- "2026-02": 6,
- "2026-03": 8,
- "2026-04": 10,
- "2026-05": 6
}
}, - "top_wins": [
- {
- "stock_code": "FPT",
- "sell_date": "2026-05-18",
- "realized_pnl": 25000000,
- "holding_days": 22,
- "quantity_sold": 1000
}
], - "top_losses": [
- {
- "stock_code": "FPT",
- "sell_date": "2026-05-18",
- "realized_pnl": 25000000,
- "holding_days": 22,
- "quantity_sold": 1000
}
]
}
}
}Lấy danh sách các công ty chứng khoán
Truy vấn danh mục các công ty chứng khoán ÄÆ°á»£c há» trợ trong há» thá»ng (và dụ: SSI, Pinetree).
Responses
Response samples
- 200
{- "success": true,
- "data": [
- {
- "id": "e2b07384-a113-4ec2-a5d6-c95a2d67d7f1",
- "name": "SSI Securities",
- "code": "SSI"
}
]
}Trigger Äá»ng bá» dữ liá»u thá»§ công (Admin)
Cho phép Admin trigger thá»§ công viá»c kéo dữ liá»u thay Äá»i từ Neon Postgres sang Insforge Postgres.
header Parameters
| X-Admin-Key required | string API key xác thá»±c quyá»n Admin |
Responses
Response samples
- 200
- 401
{- "success": true,
- "data": {
- "synced_rows": 145,
- "duration_ms": 320
}
}