POST | /members/{EmployeeGuid}/investmentprofile |
---|
import java.math.*
import java.util.*
import net.servicestack.client.*
open class InvestmentRiskProfileSaveRequest
{
var employeeGuid:UUID? = null
var answers:ArrayList<QuestionnaireAnswers>? = null
}
open class QuestionnaireAnswers
{
var questionNumber:Int? = null
var optionNumber:Int? = null
}
open class InvestmentRiskProfileSaveResponse
{
var risk:RiskModel? = null
var product:RecommendedProducts? = null
var recommendedProductGraph:RecommendedProductGraph? = null
}
open class RiskModel
{
var recommendedRisk:RecommendedRisk? = null
var chosenRisk:RecommendedRisk? = null
}
open class RecommendedRisk
{
var riskName:String? = null
var riskValue:Int? = null
var riskId:String? = null
}
open class RecommendedProducts
{
var recommendedProduct:RecommendedProductType? = null
var chosenProduct:RecommendedProductType? = null
}
open class RecommendedProductType
{
var product:String? = null
var investmentProduct:String? = null
var score:Double? = null
var productType:Int? = null
var investmentProducts:ArrayList<InvestmentProduct> = ArrayList<InvestmentProduct>()
}
open class InvestmentProduct
{
var code:String? = null
var name:String? = null
var group:String? = null
var isAssetClassFund:Boolean? = null
var allocs:ArrayList<InvestmentProductAllocationsSpec> = ArrayList<InvestmentProductAllocationsSpec>()
var order:Int? = null
var allocationsDictionary:HashMap<Int,HashMap<String,Double>> = HashMap<Int,HashMap<String,Double>>()
}
open class InvestmentProductAllocationsSpec
{
var fromAge:Int? = null
var term:Int? = null
var allocs:HashMap<String,Double> = HashMap<String,Double>()
var totalAlloc:Double? = null
}
open class RecommendedProductGraph
{
var barGraphData:ArrayList<HashMap<String,String>> = ArrayList<HashMap<String,String>>()
var pieGraphInfo:MatrixNoRisk? = null
}
open class MatrixNoRisk
{
var minimumAllocationInStocks:String? = null
var maximumAllocationinStocks:String? = null
}
Kotlin InvestmentRiskProfileSaveRequest DTOs
To override the Content-type in your clients, use the HTTP Accept Header, append the .jsv suffix or ?format=jsv
The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.
POST /members/{EmployeeGuid}/investmentprofile HTTP/1.1
Host: hcbtas-q-albamfs-api.azurewebsites.net
Accept: text/jsv
Content-Type: text/jsv
Content-Length: length
{
employeeGuid: 00000000000000000000000000000000,
answers:
[
{
questionNumber: 0,
optionNumber: 0
}
]
}
HTTP/1.1 200 OK Content-Type: text/jsv Content-Length: length { risk: { recommendedRisk: { riskName: String, riskValue: 0, riskId: String }, chosenRisk: { riskName: String, riskValue: 0, riskId: String } }, product: { recommendedProduct: { product: String, investmentProduct: String, score: 0, productType: 0, investmentProducts: [ { riskId: String, riskName: String } ] }, chosenProduct: { product: String, investmentProduct: String, score: 0, productType: 0, investmentProducts: [ { riskId: String, riskName: String } ] } }, recommendedProductGraph: { barGraphData: [ { String: String } ], pieGraphInfo: { minimumAllocationInStocks: String, maximumAllocationinStocks: String } } }