PUT | /members |
---|
import java.math.*;
import java.util.*;
import net.servicestack.client.*;
public class dtos
{
public static class Member extends Member
{
public String id = null;
public String email = null;
public String employeeGuidString = null;
public Boolean ignoreGender = null;
public String getId() { return id; }
public Member setId(String value) { this.id = value; return this; }
public String getEmail() { return email; }
public Member setEmail(String value) { this.email = value; return this; }
public String getEmployeeGuidString() { return employeeGuidString; }
public Member setEmployeeGuidString(String value) { this.employeeGuidString = value; return this; }
public Boolean isIgnoreGender() { return ignoreGender; }
public Member setIgnoreGender(Boolean value) { this.ignoreGender = value; return this; }
}
}
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.
PUT /members HTTP/1.1
Host: hcbtas-q-albamfs-api.azurewebsites.net
Accept: text/jsv
Content-Type: text/jsv
Content-Length: length
{
id: String,
email: String,
employeeGuidString: String,
ignoreGender: False,
userId: String,
systemId: String,
schemeCode: String,
sessionId: String,
clientId: String,
clientCode: String,
isDefault: False,
groupId: String,
groupNameUpper: String,
appName: String,
appNameUpper: String,
key: String,
keyUpper: String,
country: String,
locale: String,
ccy: String,
cdy: String,
status: String,
statusCode: String,
category: String,
scheme: String,
primarySalary: String,
employer:
{
id: String,
code: String,
name: String,
logo: String,
config: {}
},
roles: 0,
asAt: 0001-01-01,
calcDate: 0001-01-01,
nextEOFY: 0001-06-30,
periodToNextEOFY: 0.5,
year: 0,
hasPartner: False,
includePartner: False,
includePartnerInCalc: False,
homeOwner: False,
targetAge: 0,
targetTime: 0,
targetIncomeR: 0,
targetIncomeRFreq: 0,
targetIncomeRAnnual: 0,
targetP: 0,
includeSS: False,
firstName: String,
lastName: String,
gender: Female,
dob: 0001-01-01,
salary: 0,
people:
[
{
type: Primary,
index: 0,
firstName: String,
lastName: String,
gender: Female,
isAgeInput: False,
dob: 0001-01-01,
age: 0,
exactAge: 0,
ageAtLast30June: 0,
privateHealthInsurance: False,
serviceDate: 0001-01-01,
service: 0,
intService: 0,
ageR: 0,
ageRMonths: 0,
email: String,
salaries:
{
String:
{
type: String,
ccy: String,
amount: 0,
freq: 0,
annualAmount: 0,
indexType: String,
salaryChanges:
[
{
fromAge: 0,
amount: 0
}
]
}
},
salary: 0,
salaryFreq: 0,
salaryChangeSeries:
[
0
],
hasOtherIncome: False,
otherIncome:
[
{
name: String,
type: Pension,
amount: 0,
fromAge: 0,
toAge: 0,
isTaxable: False,
isVector: False,
vector:
[
0
],
custom:
{
String: String
},
asAt: 0001-01-01,
age: 0,
intAge: 0,
year: 0,
periodToNextEOFY: 0.5,
indexType: String,
deflationType: String,
indexTypePre: String,
indexTypePost: String
}
],
socialSecurity:
{
asAt: 0001-01-01,
age: 0,
intAge: 0,
year: 0,
periodToNextEOFY: 0.5,
indexType: String,
deflationType: String,
indexTypePre: String,
indexTypePost: String
},
taxableDeductions: 0,
nonTaxableDeductions: 0,
careerChanges:
{
willTake: False,
breaks:
[
{
fromAge: 0,
toAge: 0,
workingRate: 0
}
],
careerBreakSeries:
[
0
],
totalYears: 0
},
custom:
{
String: String
},
salaryKey: String,
annualProjectibleSalary: 0,
projectionBreakdownCode: Salary You,
lookup: "Salary You:Primary",
ssBreakdownCode: SocialSecurityYou,
ssLookup: "SocialSecurityYou:Primary",
asAt: 0001-01-01,
intAge: 0,
year: 0,
periodToNextEOFY: 0.5,
indexType: String,
deflationType: String,
indexTypePre: String,
indexTypePost: String
}
],
assets:
[
{
type: FinAsset,
owner: Primary,
code: String,
assetIndex: 0,
lookup: "String:Primary:0",
name: String,
ccy: String,
value: 0,
change: 0,
transferTo: 0,
transferAge: 0,
willSpend: False,
minRule: NoMinimum,
maxRule: NoMaximum,
ssTreatment: Exempt,
spendOnAnnuity: False,
contTaxRate: 0,
totalConts: 0,
usePreCalculatedContributions: False,
totalContributions:
[
[
0
]
],
futureAllocations:
[
[
{
String: 0
}
]
],
assetType: FinAsset,
totalContsFreq: 1,
totalLumpSumConts: 0,
contributions:
[
{
code: String,
index: 0,
name: String,
ccy: String,
contTable: String,
isEmployeeCont: False,
employerFlag: False,
type: Fixed,
linkedContIndex: 0,
sourceRate: String,
isTaxable: False,
amount: 0,
coreAmount: 0,
freq: 0,
rate: 0,
coreRate: 0,
fromAge: 0,
toAge: 0,
salary: 0,
annualAmount: 0,
annualCoreAmount: 0,
isAlwaysOneOff: False,
isOneOff: True,
constraintType: LumpSum,
custom:
{
String: String
},
memberRateLookup:
{
0: 0
},
isFromSalary: False,
asAt: 0001-01-01,
age: 0,
intAge: 0,
year: 0,
periodToNextEOFY: 0.5,
indexType: String,
deflationType: String,
indexTypePre: String,
indexTypePost: String
}
],
fees:
[
{
name: String,
ccy: String,
amount: 0,
freq: 0,
annualAmount: 0,
rate: 0,
isTaxable: False,
fromAge: 0,
toAge: 0,
custom:
{
String: String
},
asAt: 0001-01-01,
age: 0,
intAge: 0,
year: 0,
periodToNextEOFY: 0.5,
indexType: String,
deflationType: String,
indexTypePre: String,
indexTypePost: String
}
],
feeCapArrangements:
[
{
name: String,
amount: 0,
indexationRateSeries: 0,
rate: 0,
feesIncluded:
[
0
],
fromTime: 0,
toTime: 0,
custom:
{
String: String
},
asAt: 0001-01-01,
age: 0,
intAge: 0,
year: 0,
periodToNextEOFY: 0.5,
indexType: String,
deflationType: String,
indexTypePre: String,
indexTypePost: String
}
],
custom:
{
String: String
},
rebalance: False,
retLumpSum: False,
allocSeries:
[
{
current:
{
String: 0
},
future:
{
String: 0
}
}
],
currentAssetClassAllocSeries:
{
0:
{
String: 0
}
},
futureAssetClassAllocSeries:
{
0:
{
String: 0
}
},
ratesSource: DB,
alloc:
[
{
name: String,
fromAge: 0,
optAlloc:
{
current:
{
String: 0
},
future:
{
String: 0
}
},
currentAssetClassAlloc:
{
String: 0
},
futureAssetClassAlloc:
{
String: 0
},
totalCurrentAlloc: 0,
totalFutureAlloc: 0
}
],
allocKeys:
[
String
],
returns:
{
String:
[
{
name: String,
fromAge: 0,
earningRate: 0,
taxRate: 0,
returnRate: 0
}
]
},
returnRates:
{
String:
{
earningRates:
[
0
],
taxRates:
[
0
]
}
},
asAt: 0001-01-01,
age: 0,
intAge: 0,
year: 0,
periodToNextEOFY: 0.5,
indexType: String,
deflationType: String,
indexTypePre: String,
indexTypePost: String
}
],
includeAnnuities: False,
annuities:
[
{
priceType: Calc,
price: 0,
owner: Primary,
gender: Female,
ownerAge: 0,
spouseAge: 0,
type: Deferred,
purchaseType: Perc,
purchaseAmount: 0,
percBalanceSpent: 0,
amountSpent: 0,
incomePurchased: 0,
purchaseAge: 0,
deferralPeriod: 0,
indexationName: String,
drStochastic: String,
impliedInflationStochasticSeries: String,
reversion: 0,
guarantee: 0,
timing: 0,
scaleQx: 0,
scaleQxPartner: 0,
scaleImpr: 0,
scaleImprPartner: 0,
ageRating: 0,
spouseAgeRating: 0,
custom:
{
String: String
},
tableName: String,
tableNamePartner: String,
imprFactorTableName: String,
imprFactorTableNamePartner: String,
hasPartnerTables: True,
spouseAgeAtPurchase: 0,
expense: 0,
cacheKey: LifeTables-String-String,
partnerCacheKey: LifeTables-String-String,
targetTpx: 0,
paymentTerm: 0,
asAt: 0001-01-01,
age: 0,
intAge: 0,
year: 0,
periodToNextEOFY: 0.5,
indexType: String,
deflationType: String,
indexTypePre: String,
indexTypePost: String
}
],
spending:
{
selected: String,
willChangeLate: False,
ageRLate: 0,
selectedLate: String,
goals:
[
{
name: String,
amount: 0,
freq: 0,
effectiveFreq: 1,
excludeFromProjection: False,
fromAge: 0,
toAge: 0,
selectedPersonalised: String,
tag: String,
custom:
{
String: String
},
asAt: 0001-01-01,
age: 0,
intAge: 0,
year: 0,
periodToNextEOFY: 0.5,
indexType: String,
deflationType: String,
indexTypePre: String,
indexTypePost: String
}
],
lumpSumType: Perc,
lumpSumRate: 0,
lumpSumAmount: 0,
count: 1,
custom:
{
String: String
},
asAt: 0001-01-01,
age: 0,
intAge: 0,
year: 0,
periodToNextEOFY: 0.5,
indexType: String,
deflationType: String,
indexTypePre: String,
indexTypePost: String
},
investmentProperties:
[
{
owner: Primary,
value: 0,
rentYield: 0,
expense: 0,
downsize: 0,
downsizeAge: 0,
downsizeToAsset: 0,
rates: 0,
lookup: "Prop:Primary",
asAt: 0001-01-01,
age: 0,
intAge: 0,
year: 0,
periodToNextEOFY: 0.5,
indexType: String,
deflationType: String,
indexTypePre: String,
indexTypePost: String
}
],
incomeVectors:
{
String:
[
0
]
},
config:
{
country: String,
clientCode: String,
isStochastic: False,
stochasticLoopType: Parallel,
stochProjServiceLoc: WebServer,
stochProjSvcCallType: Sync,
dataSet: String,
solveTarget: NA,
solveTolerance: 0,
indexationRatesSource: DB,
discRatesSource: DB,
returnRatesSource: DB,
deterministicSim: 0,
stochasticSim: 0,
simCount: 0,
simsToIncludeDetails:
[
0
],
includeBalArray: False,
includeProjectionInStochasticResult: False,
includeFirstProjectionInStochasticResult: False,
usesStochasticData: True,
includeAllSpendingResult: False,
includeAllContributionProjectionResult: False,
includeAllAssetsProjectionResults: False,
includeAllSummaryProjectionResult: False,
includePreCalculatedContributionsInResponse: False,
includedProjections:
[
String
]
},
indexation:
[
{
name: String,
fromAge: 0,
rate: 0
}
],
annuityDisc:
[
{
name: String,
fromAge: 0,
rate: 0
}
],
indexationRates:
{
String:
[
0
]
},
annuityDiscRates:
{
String:
[
0
]
},
balance: 0,
planSomeValue: String,
flag1: False,
flag2: True,
isFriendly: True,
financingOption: String,
totalYears: 7,
totalLoopYears: 100,
age: 0,
ageR: 0,
intAge: 0,
indexType: String,
indexTypePre: String,
indexTypePost: String,
deflationType: String,
custom:
{
String: String
},
countryCalcConfig: {},
summary:
{
age: 0,
salary: 0,
balance: 0,
invOption: String,
contributions:
[
{
code: String,
name: String,
assetCode: String,
assetName: String,
isEmployeeCont: False,
amount: 0,
freq: 0,
rate: 0
}
]
},
lastModified: 0001-01-01,
isReturningUser: False,
clientCountryConfigCacheKey: ClientCountryConfig-String-String,
personalAssets: 0,
resultsSummary:
{
asAt: 0001-01-01,
age: 0,
intAge: 0,
year: 0,
periodToNextEOFY: 0.5,
indexType: String,
deflationType: String,
indexTypePre: String,
indexTypePost: String
},
totalContribution:
{
asAt: 0001-01-01,
age: 0,
intAge: 0,
year: 0,
periodToNextEOFY: 0.5,
indexType: String,
deflationType: String,
indexTypePre: String,
indexTypePost: String
}
}
HTTP/1.1 200 OK Content-Type: text/jsv Content-Length: length { id: String, email: String, employeeGuidString: String, ignoreGender: False, userId: String, systemId: String, schemeCode: String, sessionId: String, clientId: String, clientCode: String, isDefault: False, groupId: String, groupNameUpper: String, appName: String, appNameUpper: String, key: String, keyUpper: String, country: String, locale: String, ccy: String, cdy: String, status: String, statusCode: String, category: String, scheme: String, primarySalary: String, employer: { id: String, code: String, name: String, logo: String, config: {} }, roles: 0, asAt: 0001-01-01, calcDate: 0001-01-01, nextEOFY: 0001-06-30, periodToNextEOFY: 0.5, year: 0, hasPartner: False, includePartner: False, includePartnerInCalc: False, homeOwner: False, targetAge: 0, targetTime: 0, targetIncomeR: 0, targetIncomeRFreq: 0, targetIncomeRAnnual: 0, targetP: 0, includeSS: False, firstName: String, lastName: String, gender: Female, dob: 0001-01-01, salary: 0, people: [ { type: Primary, index: 0, firstName: String, lastName: String, gender: Female, isAgeInput: False, dob: 0001-01-01, age: 0, exactAge: 0, ageAtLast30June: 0, privateHealthInsurance: False, serviceDate: 0001-01-01, service: 0, intService: 0, ageR: 0, ageRMonths: 0, email: String, salaries: { String: { type: String, ccy: String, amount: 0, freq: 0, annualAmount: 0, indexType: String, salaryChanges: [ { fromAge: 0, amount: 0 } ] } }, salary: 0, salaryFreq: 0, salaryChangeSeries: [ 0 ], hasOtherIncome: False, otherIncome: [ { name: String, type: Pension, amount: 0, fromAge: 0, toAge: 0, isTaxable: False, isVector: False, vector: [ 0 ], custom: { String: String }, asAt: 0001-01-01, age: 0, intAge: 0, year: 0, periodToNextEOFY: 0.5, indexType: String, deflationType: String, indexTypePre: String, indexTypePost: String } ], socialSecurity: { asAt: 0001-01-01, age: 0, intAge: 0, year: 0, periodToNextEOFY: 0.5, indexType: String, deflationType: String, indexTypePre: String, indexTypePost: String }, taxableDeductions: 0, nonTaxableDeductions: 0, careerChanges: { willTake: False, breaks: [ { fromAge: 0, toAge: 0, workingRate: 0 } ], careerBreakSeries: [ 0 ], totalYears: 0 }, custom: { String: String }, salaryKey: String, annualProjectibleSalary: 0, projectionBreakdownCode: Salary You, lookup: "Salary You:Primary", ssBreakdownCode: SocialSecurityYou, ssLookup: "SocialSecurityYou:Primary", asAt: 0001-01-01, intAge: 0, year: 0, periodToNextEOFY: 0.5, indexType: String, deflationType: String, indexTypePre: String, indexTypePost: String } ], assets: [ { type: FinAsset, owner: Primary, code: String, assetIndex: 0, lookup: "String:Primary:0", name: String, ccy: String, value: 0, change: 0, transferTo: 0, transferAge: 0, willSpend: False, minRule: NoMinimum, maxRule: NoMaximum, ssTreatment: Exempt, spendOnAnnuity: False, contTaxRate: 0, totalConts: 0, usePreCalculatedContributions: False, totalContributions: [ [ 0 ] ], futureAllocations: [ [ { String: 0 } ] ], assetType: FinAsset, totalContsFreq: 1, totalLumpSumConts: 0, contributions: [ { code: String, index: 0, name: String, ccy: String, contTable: String, isEmployeeCont: False, employerFlag: False, type: Fixed, linkedContIndex: 0, sourceRate: String, isTaxable: False, amount: 0, coreAmount: 0, freq: 0, rate: 0, coreRate: 0, fromAge: 0, toAge: 0, salary: 0, annualAmount: 0, annualCoreAmount: 0, isAlwaysOneOff: False, isOneOff: True, constraintType: LumpSum, custom: { String: String }, memberRateLookup: { 0: 0 }, isFromSalary: False, asAt: 0001-01-01, age: 0, intAge: 0, year: 0, periodToNextEOFY: 0.5, indexType: String, deflationType: String, indexTypePre: String, indexTypePost: String } ], fees: [ { name: String, ccy: String, amount: 0, freq: 0, annualAmount: 0, rate: 0, isTaxable: False, fromAge: 0, toAge: 0, custom: { String: String }, asAt: 0001-01-01, age: 0, intAge: 0, year: 0, periodToNextEOFY: 0.5, indexType: String, deflationType: String, indexTypePre: String, indexTypePost: String } ], feeCapArrangements: [ { name: String, amount: 0, indexationRateSeries: 0, rate: 0, feesIncluded: [ 0 ], fromTime: 0, toTime: 0, custom: { String: String }, asAt: 0001-01-01, age: 0, intAge: 0, year: 0, periodToNextEOFY: 0.5, indexType: String, deflationType: String, indexTypePre: String, indexTypePost: String } ], custom: { String: String }, rebalance: False, retLumpSum: False, allocSeries: [ { current: { String: 0 }, future: { String: 0 } } ], currentAssetClassAllocSeries: { 0: { String: 0 } }, futureAssetClassAllocSeries: { 0: { String: 0 } }, ratesSource: DB, alloc: [ { name: String, fromAge: 0, optAlloc: { current: { String: 0 }, future: { String: 0 } }, currentAssetClassAlloc: { String: 0 }, futureAssetClassAlloc: { String: 0 }, totalCurrentAlloc: 0, totalFutureAlloc: 0 } ], allocKeys: [ String ], returns: { String: [ { name: String, fromAge: 0, earningRate: 0, taxRate: 0, returnRate: 0 } ] }, returnRates: { String: { earningRates: [ 0 ], taxRates: [ 0 ] } }, asAt: 0001-01-01, age: 0, intAge: 0, year: 0, periodToNextEOFY: 0.5, indexType: String, deflationType: String, indexTypePre: String, indexTypePost: String } ], includeAnnuities: False, annuities: [ { priceType: Calc, price: 0, owner: Primary, gender: Female, ownerAge: 0, spouseAge: 0, type: Deferred, purchaseType: Perc, purchaseAmount: 0, percBalanceSpent: 0, amountSpent: 0, incomePurchased: 0, purchaseAge: 0, deferralPeriod: 0, indexationName: String, drStochastic: String, impliedInflationStochasticSeries: String, reversion: 0, guarantee: 0, timing: 0, scaleQx: 0, scaleQxPartner: 0, scaleImpr: 0, scaleImprPartner: 0, ageRating: 0, spouseAgeRating: 0, custom: { String: String }, tableName: String, tableNamePartner: String, imprFactorTableName: String, imprFactorTableNamePartner: String, hasPartnerTables: True, spouseAgeAtPurchase: 0, expense: 0, cacheKey: LifeTables-String-String, partnerCacheKey: LifeTables-String-String, targetTpx: 0, paymentTerm: 0, asAt: 0001-01-01, age: 0, intAge: 0, year: 0, periodToNextEOFY: 0.5, indexType: String, deflationType: String, indexTypePre: String, indexTypePost: String } ], spending: { selected: String, willChangeLate: False, ageRLate: 0, selectedLate: String, goals: [ { name: String, amount: 0, freq: 0, effectiveFreq: 1, excludeFromProjection: False, fromAge: 0, toAge: 0, selectedPersonalised: String, tag: String, custom: { String: String }, asAt: 0001-01-01, age: 0, intAge: 0, year: 0, periodToNextEOFY: 0.5, indexType: String, deflationType: String, indexTypePre: String, indexTypePost: String } ], lumpSumType: Perc, lumpSumRate: 0, lumpSumAmount: 0, count: 1, custom: { String: String }, asAt: 0001-01-01, age: 0, intAge: 0, year: 0, periodToNextEOFY: 0.5, indexType: String, deflationType: String, indexTypePre: String, indexTypePost: String }, investmentProperties: [ { owner: Primary, value: 0, rentYield: 0, expense: 0, downsize: 0, downsizeAge: 0, downsizeToAsset: 0, rates: 0, lookup: "Prop:Primary", asAt: 0001-01-01, age: 0, intAge: 0, year: 0, periodToNextEOFY: 0.5, indexType: String, deflationType: String, indexTypePre: String, indexTypePost: String } ], incomeVectors: { String: [ 0 ] }, config: { country: String, clientCode: String, isStochastic: False, stochasticLoopType: Parallel, stochProjServiceLoc: WebServer, stochProjSvcCallType: Sync, dataSet: String, solveTarget: NA, solveTolerance: 0, indexationRatesSource: DB, discRatesSource: DB, returnRatesSource: DB, deterministicSim: 0, stochasticSim: 0, simCount: 0, simsToIncludeDetails: [ 0 ], includeBalArray: False, includeProjectionInStochasticResult: False, includeFirstProjectionInStochasticResult: False, usesStochasticData: True, includeAllSpendingResult: False, includeAllContributionProjectionResult: False, includeAllAssetsProjectionResults: False, includeAllSummaryProjectionResult: False, includePreCalculatedContributionsInResponse: False, includedProjections: [ String ] }, indexation: [ { name: String, fromAge: 0, rate: 0 } ], annuityDisc: [ { name: String, fromAge: 0, rate: 0 } ], indexationRates: { String: [ 0 ] }, annuityDiscRates: { String: [ 0 ] }, balance: 0, planSomeValue: String, flag1: False, flag2: True, isFriendly: True, financingOption: String, totalYears: 7, totalLoopYears: 100, age: 0, ageR: 0, intAge: 0, indexType: String, indexTypePre: String, indexTypePost: String, deflationType: String, custom: { String: String }, countryCalcConfig: {}, summary: { age: 0, salary: 0, balance: 0, invOption: String, contributions: [ { code: String, name: String, assetCode: String, assetName: String, isEmployeeCont: False, amount: 0, freq: 0, rate: 0 } ] }, lastModified: 0001-01-01, isReturningUser: False, clientCountryConfigCacheKey: ClientCountryConfig-String-String, personalAssets: 0, resultsSummary: { asAt: 0001-01-01, age: 0, intAge: 0, year: 0, periodToNextEOFY: 0.5, indexType: String, deflationType: String, indexTypePre: String, indexTypePost: String }, totalContribution: { asAt: 0001-01-01, age: 0, intAge: 0, year: 0, periodToNextEOFY: 0.5, indexType: String, deflationType: String, indexTypePre: String, indexTypePost: String } }