GetSecuritiesDetails
Method
POST
http://fc-data.ssi.com.vn/api/Market/GetSecuritiesDetails
Description
Sample code
Not supported yet
Detail
[Javascript] const rxjs = require('rxjs'); const express = require('express'); const config = require('./config.js'); const marketStreaming = require('./Streamings/marketStreaming'); const app = express(); const port = 3051; Not supported yet[End]
Detail
[Python] from .fc_client import TradingAPIClient from .fc_client import MarketDataClient from .models import tapi_model_pb2 from .models import md_model_pb2 from .config import fc_config # from fc_client import TradingAPIClient # from fc_client import MarketDataClient # from models import tapi_model_pb2 # from models import md_model_pb2 # from config import fc_config import random def md_get_securities_details(market, symbol, page_index, page_size, option, ct_config): md_rq = md_model_pb2.SecuritiesDetailsRequest() md_rq.Market = market.upper() md_rq.Symbol = symbol.upper() ifpage_index == None: md_rq.PageIndex = 1 else: md_rq.PageIndex = page_index ifpage_size == None: md_rq.PageSize = 10 else: md_rq.PageSize = page_size[End]
Not supported yet
Sample Response
{
"data": [
{
"RType": "SAMPLE",
"ReportDate": "04/08/2025",
"TotalNoSym": "1",
"RepeatedInfo": [
{
"Isin": "SAMPLE",
"Symbol": "SAMPLE",
"SymbolName": "SAMPLE",
"SymbolEngName": "SAMPLE",
"SecType": "SAMPLE",
"MarketId": "SAMPLE",
"Exchange": "SAMPLE",
"Issuer": "SAMPLE",
"LotSize": "1",
"IssueDate": "04/08/2025",
"MaturityDate": "04/08/2025",
"FirstTradingDate": "04/08/2025",
"LastTradingDate": "04/08/2025",
"ContractMultiplier": "1",
"SettlMethod": "SAMPLE",
"Underlying": "SAMPLE",
"PutOrCall": "P",
"ExercisePrice": "1",
"ExerciseStyle": "SAMPLE",
"ExcerciseRatio": "SAMPLE",
"ListedShare": "1",
"TickPrice1": "1",
"TickIncrement1": "1",
"TickPrice2": "1",
"TickIncrement2": "1",
"TickPrice3": "1",
"TickIncrement3": "1",
"TickPrice4": "1",
"TickIncrement4": "1"
}
]
}
],
"message": "Undefine",
"status": "Undefine",
"totalRecord": 0
}
Request Information
SecuritiesDetailsRequest
| Property Name | Data Type | Sample value | Required | Description |
|---|---|---|---|---|
| Market | String | SAMPLE | YES | HOSE,HNX,UPCOM,DER, or ALL |
| Symbol | String | SAMPLE | NO | |
| PageIndex | Int32 | 100 | NO | Number of page, start from 1, default 1 |
| PageSize | Int32 | 1 | NO | Size of a page, 10; 20; 50; 100; 1000 Default 10 |
Response Information
SecuritiesDetailsResponse
| Property Name | Data Type | Property Name | Data Type | Sample value | Description |
|---|---|---|---|---|---|
| Data | SecuritiesDetailsResponseModel [ ] | RType | String | ||
| Data | SecuritiesDetailsResponseModel [ ] | ReportDate | String | ||
| Data | SecuritiesDetailsResponseModel [ ] | TotalNoSym | String | ||
| Data | SecuritiesDetailsResponseModel [ ] | RepeatedInfo | RepeatedInfo [ ] | ||
| Isin | String | ||||
| Symbol | String | ||||
| SymbolName | String | ||||
| SymbolEngName | String | ||||
| SecType | String | ||||
| MarketId | String | ||||
| Exchange | String | ||||
| Issuer | String | ||||
| LotSize | String | ||||
| IssueDate | String | ||||
| MaturityDate | String | ||||
| FirstTradingDate | String | ||||
| LastTradingDate | String | ||||
| ContractMultiplier | String | ||||
| SettlMethod | String | ||||
| Underlying | String | ||||
| PutOrCall | String | ||||
| ExercisePrice | String | ||||
| ExerciseStyle | String | ||||
| ExcerciseRatio | String | ||||
| ListedShare | String | ||||
| TickPrice1 | String | ||||
| TickIncrement1 | String | ||||
| TickPrice2 | String | ||||
| TickIncrement2 | String | ||||
| TickPrice3 | String | ||||
| TickIncrement3 | String | ||||
| TickPrice4 | String | ||||
| TickIncrement4 | String |
Syntax protocol message
{
Syntax Request Protocol 2 Message
syntax = "proto2";
package SSI.FastConnect.DataContracts.Market.Request;
message SecuritiesDetailsRequest {
optional string Market = 1;
optional string Symbol = 2;
optional int32 PageIndex = 3 [default = 0];
optional int32 PageSize = 4 [default = 0];
}
Syntax Request Protocol 3 Message
syntax = "proto3";
package SSI.FastConnect.DataContracts.Market.Request;
message SecuritiesDetailsRequest {
string Market = 1;
string Symbol = 2;
int32 PageIndex = 3;
int32 PageSize = 4;
}
{
Syntax Response Protocol 2 Message
syntax = "proto2";
message RepeatedInfo {
optional string Isin = 5;
optional string Symbol = 6;
optional string SymbolName = 7;
optional string SymbolEngName = 8;
optional string SecType = 9;
optional string MarketId = 10;
optional string Exchange = 11;
optional string Issuer = 12;
optional string LotSize = 13;
optional string IssueDate = 14;
optional string MaturityDate = 15;
optional string FirstTradingDate = 16;
optional string LastTradingDate = 17;
optional string ContractMultiplier = 18;
optional string SettlMethod = 19;
optional string Underlying = 20;
optional string PutOrCall = 21;
optional string ExercisePrice = 22;
optional string ExerciseStyle = 23;
optional string ExcerciseRatio = 24;
optional string ListedShare = 25;
optional string TickPrice1 = 26;
optional string TickIncrement1 = 27;
optional string TickPrice2 = 28;
optional string TickIncrement2 = 29;
optional string TickPrice3 = 30;
optional string TickIncrement3 = 31;
optional string TickPrice4 = 32;
optional string TickIncrement4 = 33;
}
message ResponseBase_SecuritiesDetailsResponseModel {
repeated SecuritiesDetailsResponseModel data = 1;
optional string message = 2;
optional string status = 3;
optional int32 totalRecord = 4 [default = 0];
oneof subtype {
SecuritiesDetailsResponse SecuritiesDetailsResponse = 104;
}
}
message ResponseClient_SecuritiesDetailsResponse {
optional bytes Data = 1;
optional string Message = 2;
optional int32 StatusCode = 3 [default = 0];
}
message SecuritiesDetailsResponse {
}
message SecuritiesDetailsResponseModel {
optional string RType = 1;
optional string ReportDate = 2;
optional string TotalNoSym = 3;
repeated RepeatedInfo RepeatedInfo = 4;
}
Syntax Response Protocol 3 Message
syntax = "proto3";
message RepeatedInfo {
string Isin = 5;
string Symbol = 6;
string SymbolName = 7;
string SymbolEngName = 8;
string SecType = 9;
string MarketId = 10;
string Exchange = 11;
string Issuer = 12;
string LotSize = 13;
string IssueDate = 14;
string MaturityDate = 15;
string FirstTradingDate = 16;
string LastTradingDate = 17;
string ContractMultiplier = 18;
string SettlMethod = 19;
string Underlying = 20;
string PutOrCall = 21;
string ExercisePrice = 22;
string ExerciseStyle = 23;
string ExcerciseRatio = 24;
string ListedShare = 25;
string TickPrice1 = 26;
string TickIncrement1 = 27;
string TickPrice2 = 28;
string TickIncrement2 = 29;
string TickPrice3 = 30;
string TickIncrement3 = 31;
string TickPrice4 = 32;
string TickIncrement4 = 33;
}
message ResponseBase_SecuritiesDetailsResponseModel {
repeated SecuritiesDetailsResponseModel data = 1;
string message = 2;
string status = 3;
int32 totalRecord = 4;
oneof subtype {
SecuritiesDetailsResponse SecuritiesDetailsResponse = 104;
}
}
message ResponseClient_SecuritiesDetailsResponse {
bytes Data = 1;
string Message = 2;
int32 StatusCode = 3;
}
message SecuritiesDetailsResponse {
}
message SecuritiesDetailsResponseModel {
string RType = 1;
string ReportDate = 2;
string TotalNoSym = 3;
repeated RepeatedInfo RepeatedInfo = 4;
}
https://developers.google.com/protocol-buffers/docs/csharptutorial