Trendsic Platform Service

<back to all web services

FactFinderRequest

Requires Authentication
Requires any of the roles:Agent, Administrator, Agent, Administrator
The following routes are available for this service:
POST,PUT,OPTIONS/v1/FactFinder
"use strict";
export class Contact {
    /** @param {{ContactId?:number,ContactType?:number,FirstName?:string,LastName?:string,Name?:string,Role?:string,Title?:string,EmailWork?:string,EmailPersonal?:string,District?:string,DistrictID?:number,School?:string,SchoolID?:number,State?:string,StateName?:string,StateID?:number,CountyID?:number,County?:string,Phone?:string,Department?:string,Flow?:string,LastContact?:string,DoNotContact?:boolean,Active?:boolean,AgentId?:number,PhoneAlt?:string,PeraContactId?:number,RoomNumber?:string,SourceTypeId?:number,SourceTypeDesc?:string,SourceNote?:string,ContactStatusId?:number,ContactStatusDesc?:string,SSN?:string,DateOfBirth?:string,Deleted?:boolean,IsShared?:boolean,address_line1?:string,address_city?:string,address_state?:string,address_zip?:string,DeletedBy?:string,DeletedDateTimeUtc?:string,HasNBC?:boolean,HasFactFinderSheet?:boolean,MiddleInitial?:string,Tags?:string,DateCreated?:string,PhoneLabel?:string,AltPhoneLabel?:string,Carriers?:string,ContactImage?:string,CompanyAffiliation?:string,AdditionalInformation?:string,HasGiftCard?:boolean,ContactCategory?:number,WritingAgentId?:number,WritingAgentName?:string,MaritalStatus?:string,TotalDebtAmount?:number,NumberOfDebtAccounts?:number,FactFinderCodeId?:number,BusinessName?:string,DBA?:string,ContactGUID?:string,ProjectEndDate?:string,Rate?:number,JobID?:number,JobName?:string,JobCount?:number,Locked?:boolean,LockedByAgentId?:number,LockedTimestamp?:string,Initials?:string,ContactCategoryName?:string,SMSOptIn?:boolean}} [init] */
    constructor(init) { Object.assign(this, init) }
    /** @type {number} */
    ContactId;
    /** @type {number} */
    ContactType;
    /** @type {string} */
    FirstName;
    /** @type {string} */
    LastName;
    /** @type {string} */
    Name;
    /** @type {string} */
    Role;
    /** @type {string} */
    Title;
    /** @type {string} */
    EmailWork;
    /** @type {string} */
    EmailPersonal;
    /** @type {string} */
    District;
    /** @type {number} */
    DistrictID;
    /** @type {string} */
    School;
    /** @type {number} */
    SchoolID;
    /** @type {string} */
    State;
    /** @type {string} */
    StateName;
    /** @type {number} */
    StateID;
    /** @type {number} */
    CountyID;
    /** @type {string} */
    County;
    /** @type {string} */
    Phone;
    /** @type {string} */
    Department;
    /** @type {string} */
    Flow;
    /** @type {string} */
    LastContact;
    /** @type {boolean} */
    DoNotContact;
    /** @type {boolean} */
    Active;
    /** @type {number} */
    AgentId;
    /** @type {string} */
    PhoneAlt;
    /** @type {number} */
    PeraContactId;
    /** @type {string} */
    RoomNumber;
    /** @type {number} */
    SourceTypeId;
    /** @type {string} */
    SourceTypeDesc;
    /** @type {string} */
    SourceNote;
    /** @type {number} */
    ContactStatusId;
    /** @type {string} */
    ContactStatusDesc;
    /** @type {string} */
    SSN;
    /** @type {string} */
    DateOfBirth;
    /** @type {boolean} */
    Deleted;
    /** @type {boolean} */
    IsShared;
    /** @type {string} */
    address_line1;
    /** @type {string} */
    address_city;
    /** @type {string} */
    address_state;
    /** @type {string} */
    address_zip;
    /** @type {string} */
    DeletedBy;
    /** @type {?string} */
    DeletedDateTimeUtc;
    /** @type {boolean} */
    HasNBC;
    /** @type {boolean} */
    HasFactFinderSheet;
    /** @type {string} */
    MiddleInitial;
    /** @type {string} */
    Tags;
    /** @type {string} */
    DateCreated;
    /** @type {string} */
    PhoneLabel;
    /** @type {string} */
    AltPhoneLabel;
    /** @type {string} */
    Carriers;
    /** @type {string} */
    ContactImage;
    /** @type {string} */
    CompanyAffiliation;
    /** @type {string} */
    AdditionalInformation;
    /** @type {boolean} */
    HasGiftCard;
    /** @type {number} */
    ContactCategory;
    /** @type {number} */
    WritingAgentId;
    /** @type {string} */
    WritingAgentName;
    /** @type {string} */
    MaritalStatus;
    /** @type {number} */
    TotalDebtAmount;
    /** @type {number} */
    NumberOfDebtAccounts;
    /** @type {number} */
    FactFinderCodeId;
    /** @type {string} */
    BusinessName;
    /** @type {string} */
    DBA;
    /** @type {string} */
    ContactGUID;
    /** @type {string} */
    ProjectEndDate;
    /** @type {number} */
    Rate;
    /** @type {number} */
    JobID;
    /** @type {string} */
    JobName;
    /** @type {number} */
    JobCount;
    /** @type {boolean} */
    Locked;
    /** @type {number} */
    LockedByAgentId;
    /** @type {string} */
    LockedTimestamp;
    /** @type {string} */
    Initials;
    /** @type {string} */
    ContactCategoryName;
    /** @type {boolean} */
    SMSOptIn;
}
export class FactFinderSheet {
    /** @param {{FactFinderSheetId?:number,ContactId?:number,EmploymentYears?:string,PastOccupations?:string,ClientGrossMthlyIncome?:number,ClientNetMthlyIncome?:number,HouseholdGrossMthlyIncome?:number,HouseholdNetMthlyIncome?:number,EstimatedExpenses?:number,DiscretionaryIncome?:number,DesiredRetirementIncome?:number,RetirementGoals?:string,EmergencyFundMthlyContrib?:number,EmergencyFundBalance?:number,EmergencyFundComplete?:boolean,WorkStatus?:string,UnusedSickDays?:number,UnusedSickHours?:number,ContractBaseServPerYrDays?:number,ContractBaseServPerYrHours?:number,DaysPerWeek?:number,HoursPerWeek?:number,MonthsPerYear?:number,NumPreTaxChecksPerYr?:number,YearsWithOtherDistricts?:number,PrimaryLifeInsurance?:boolean,PLICarrier?:string,PLIFaceAmount?:number,PLIIssueDate?:string,PLIPremium?:number,PLIType?:string,PLITypeOf?:string,PLICashValue?:number,SpouseLifeInsurance?:boolean,SLICarrier?:string,SLIFaceAmount?:number,SLIIssueDate?:string,SLIPremium?:number,SLIType?:string,SLITypeOf?:string,SLICashValue?:number,PrimaryLTCInsurance?:boolean,PLTCPremium?:number,PrimaryDisabilityInsurance?:boolean,PDIPremium?:number,SpouseLTCInsurance?:boolean,SLTCPremium?:number,SpouseDisabilityInsurance?:boolean,SDIPremium?:number,HasRetirementSavings?:boolean,HasPriorEmploymentRetirementSavings?:boolean,HasDistributionPlan?:boolean}} [init] */
    constructor(init) { Object.assign(this, init) }
    /** @type {number} */
    FactFinderSheetId;
    /** @type {number} */
    ContactId;
    /** @type {string} */
    EmploymentYears;
    /** @type {string} */
    PastOccupations;
    /** @type {?number} */
    ClientGrossMthlyIncome;
    /** @type {?number} */
    ClientNetMthlyIncome;
    /** @type {?number} */
    HouseholdGrossMthlyIncome;
    /** @type {?number} */
    HouseholdNetMthlyIncome;
    /** @type {?number} */
    EstimatedExpenses;
    /** @type {?number} */
    DiscretionaryIncome;
    /** @type {?number} */
    DesiredRetirementIncome;
    /** @type {string} */
    RetirementGoals;
    /** @type {?number} */
    EmergencyFundMthlyContrib;
    /** @type {?number} */
    EmergencyFundBalance;
    /** @type {?boolean} */
    EmergencyFundComplete;
    /** @type {string} */
    WorkStatus;
    /** @type {?number} */
    UnusedSickDays;
    /** @type {?number} */
    UnusedSickHours;
    /** @type {?number} */
    ContractBaseServPerYrDays;
    /** @type {?number} */
    ContractBaseServPerYrHours;
    /** @type {?number} */
    DaysPerWeek;
    /** @type {?number} */
    HoursPerWeek;
    /** @type {?number} */
    MonthsPerYear;
    /** @type {?number} */
    NumPreTaxChecksPerYr;
    /** @type {?number} */
    YearsWithOtherDistricts;
    /** @type {?boolean} */
    PrimaryLifeInsurance;
    /** @type {string} */
    PLICarrier;
    /** @type {?number} */
    PLIFaceAmount;
    /** @type {?string} */
    PLIIssueDate;
    /** @type {?number} */
    PLIPremium;
    /** @type {string} */
    PLIType;
    /** @type {string} */
    PLITypeOf;
    /** @type {?number} */
    PLICashValue;
    /** @type {?boolean} */
    SpouseLifeInsurance;
    /** @type {string} */
    SLICarrier;
    /** @type {?number} */
    SLIFaceAmount;
    /** @type {?string} */
    SLIIssueDate;
    /** @type {?number} */
    SLIPremium;
    /** @type {string} */
    SLIType;
    /** @type {string} */
    SLITypeOf;
    /** @type {?number} */
    SLICashValue;
    /** @type {?boolean} */
    PrimaryLTCInsurance;
    /** @type {?number} */
    PLTCPremium;
    /** @type {?boolean} */
    PrimaryDisabilityInsurance;
    /** @type {?number} */
    PDIPremium;
    /** @type {?boolean} */
    SpouseLTCInsurance;
    /** @type {?number} */
    SLTCPremium;
    /** @type {?boolean} */
    SpouseDisabilityInsurance;
    /** @type {?number} */
    SDIPremium;
    /** @type {?boolean} */
    HasRetirementSavings;
    /** @type {?boolean} */
    HasPriorEmploymentRetirementSavings;
    /** @type {?boolean} */
    HasDistributionPlan;
}
export class ContactSpouse {
    /** @param {{ContactSpouseId?:number,ContactId?:number,Name?:string,DOB?:string,Cell?:string,Employer?:string,Years?:number,Position?:string,Email?:string,PastOccupations?:string}} [init] */
    constructor(init) { Object.assign(this, init) }
    /** @type {number} */
    ContactSpouseId;
    /** @type {number} */
    ContactId;
    /** @type {string} */
    Name;
    /** @type {?string} */
    DOB;
    /** @type {string} */
    Cell;
    /** @type {string} */
    Employer;
    /** @type {?number} */
    Years;
    /** @type {string} */
    Position;
    /** @type {string} */
    Email;
    /** @type {string} */
    PastOccupations;
}
export class ContactChild {
    /** @param {{ContactChildId?:number,ContactId?:number,Name?:string,DOB?:string,Fund?:string,Contribution?:number,Balance?:number}} [init] */
    constructor(init) { Object.assign(this, init) }
    /** @type {number} */
    ContactChildId;
    /** @type {number} */
    ContactId;
    /** @type {string} */
    Name;
    /** @type {?string} */
    DOB;
    /** @type {string} */
    Fund;
    /** @type {?number} */
    Contribution;
    /** @type {?number} */
    Balance;
}
export class ContactRetirementIncome {
    /** @param {{ContactRetirementIncomeId?:number,ContactId?:number,AccountOwner?:string,AccountType?:string,Carrier?:string,TotalValue?:number,SurrValue?:number,DateOfIssue?:string,Fees?:number,PolicyNum?:string,Contrib?:number,EmpNotes?:string,TaxCode?:string,SurrCharge?:number,ThirdPrtyPprwrkOK?:boolean,AddlFormsReqd?:boolean,OriginalFormsReqd?:boolean,SignatureGuarReqd?:boolean,FaxAccepted?:boolean,FaxNumber?:string,MailingAddr?:string,MailingCity?:string,MailingState?:string,MailingZip?:string,HasOutstandingLoans?:boolean}} [init] */
    constructor(init) { Object.assign(this, init) }
    /** @type {number} */
    ContactRetirementIncomeId;
    /** @type {number} */
    ContactId;
    /** @type {string} */
    AccountOwner;
    /** @type {string} */
    AccountType;
    /** @type {string} */
    Carrier;
    /** @type {?number} */
    TotalValue;
    /** @type {?number} */
    SurrValue;
    /** @type {?string} */
    DateOfIssue;
    /** @type {?number} */
    Fees;
    /** @type {string} */
    PolicyNum;
    /** @type {?number} */
    Contrib;
    /** @type {string} */
    EmpNotes;
    /** @type {string} */
    TaxCode;
    /** @type {?number} */
    SurrCharge;
    /** @type {?boolean} */
    ThirdPrtyPprwrkOK;
    /** @type {?boolean} */
    AddlFormsReqd;
    /** @type {?boolean} */
    OriginalFormsReqd;
    /** @type {?boolean} */
    SignatureGuarReqd;
    /** @type {?boolean} */
    FaxAccepted;
    /** @type {string} */
    FaxNumber;
    /** @type {string} */
    MailingAddr;
    /** @type {string} */
    MailingCity;
    /** @type {string} */
    MailingState;
    /** @type {string} */
    MailingZip;
    /** @type {?boolean} */
    HasOutstandingLoans;
}
export class ContactExpense {
    /** @param {{ContactExpenseId?:number,ContactId?:number,ExpenseType?:string,Description?:string,Balance?:number,InterestRate?:number,MinimumPayment?:number,MonthlyPayment?:number}} [init] */
    constructor(init) { Object.assign(this, init) }
    /** @type {number} */
    ContactExpenseId;
    /** @type {number} */
    ContactId;
    /** @type {string} */
    ExpenseType;
    /** @type {string} */
    Description;
    /** @type {?number} */
    Balance;
    /** @type {?number} */
    InterestRate;
    /** @type {?number} */
    MinimumPayment;
    /** @type {?number} */
    MonthlyPayment;
}
export class ContactClientReferral {
    /** @param {{ContactClientReferralId?:number,ContactId?:number,Name?:string,Campus?:string,Room?:string,Phone?:string}} [init] */
    constructor(init) { Object.assign(this, init) }
    /** @type {number} */
    ContactClientReferralId;
    /** @type {number} */
    ContactId;
    /** @type {string} */
    Name;
    /** @type {string} */
    Campus;
    /** @type {string} */
    Room;
    /** @type {string} */
    Phone;
}
export class ContactLTAInfo {
    /** @param {{ContactLTAInfoId?:number,ContactId?:number,PlanType?:string,Company?:string,Contribution?:number,Balance?:number}} [init] */
    constructor(init) { Object.assign(this, init) }
    /** @type {number} */
    ContactLTAInfoId;
    /** @type {number} */
    ContactId;
    /** @type {string} */
    PlanType;
    /** @type {string} */
    Company;
    /** @type {?number} */
    Contribution;
    /** @type {?number} */
    Balance;
}
export class ContactPension {
    /** @param {{ContactPensionId?:number,ContactId?:number,PensionSystem?:string,PensionStartDate?:string,ServiceCredit?:number,ServiceCreditAsOfDate?:string,DesiredRetirementDate?:string,DesiredRetirementAge?:number,SpousalBenefitDesired?:boolean,FormulaPercent?:number,FormulaAt?:number,DefinedBenefitBalance?:number,DefinedBenefitSpouseBalance?:number}} [init] */
    constructor(init) { Object.assign(this, init) }
    /** @type {number} */
    ContactPensionId;
    /** @type {number} */
    ContactId;
    /** @type {string} */
    PensionSystem;
    /** @type {?string} */
    PensionStartDate;
    /** @type {?number} */
    ServiceCredit;
    /** @type {?string} */
    ServiceCreditAsOfDate;
    /** @type {?string} */
    DesiredRetirementDate;
    /** @type {number} */
    DesiredRetirementAge;
    /** @type {?boolean} */
    SpousalBenefitDesired;
    /** @type {?number} */
    FormulaPercent;
    /** @type {?number} */
    FormulaAt;
    /** @type {?number} */
    DefinedBenefitBalance;
    /** @type {?number} */
    DefinedBenefitSpouseBalance;
}
export class FactFinderSheetExtended {
    /** @param {{Contact?:Contact,FactFinderSheet?:FactFinderSheet,Spouse?:ContactSpouse,Children?:ContactChild[],IncomeSources?:ContactRetirementIncome[],AdditionalNotes?:string,Expenses?:ContactExpense[],Referrals?:ContactClientReferral[],LTAInfo?:ContactLTAInfo[],Pensions?:ContactPension[]}} [init] */
    constructor(init) { Object.assign(this, init) }
    /** @type {Contact} */
    Contact;
    /** @type {FactFinderSheet} */
    FactFinderSheet;
    /** @type {ContactSpouse} */
    Spouse;
    /** @type {ContactChild[]} */
    Children = [];
    /** @type {ContactRetirementIncome[]} */
    IncomeSources = [];
    /** @type {string} */
    AdditionalNotes;
    /** @type {ContactExpense[]} */
    Expenses = [];
    /** @type {ContactClientReferral[]} */
    Referrals = [];
    /** @type {ContactLTAInfo[]} */
    LTAInfo = [];
    /** @type {ContactPension[]} */
    Pensions = [];
}
export class FactFinderRequest {
    /** @param {{FactFinderSheet?:FactFinderSheetExtended,DataEntry?:boolean}} [init] */
    constructor(init) { Object.assign(this, init) }
    /** @type {FactFinderSheetExtended} */
    FactFinderSheet;
    /** @type {boolean} */
    DataEntry;
}

JavaScript FactFinderRequest DTOs

To override the Content-type in your clients, use the HTTP Accept Header, append the .jsv suffix or ?format=jsv

HTTP + JSV

The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.

POST /v1/FactFinder HTTP/1.1 
Host: api.dev.dynamics.trendsic.com 
Accept: text/jsv
Content-Type: text/jsv
Content-Length: length

{
	FactFinderSheet: 
	{
		Contact: 
		{
			ContactId: 0,
			ContactType: 0,
			FirstName: String,
			LastName: String,
			Name: String,
			Role: String,
			Title: String,
			EmailWork: String,
			EmailPersonal: String,
			District: String,
			DistrictID: 0,
			School: String,
			SchoolID: 0,
			State: String,
			StateName: String,
			StateID: 0,
			CountyID: 0,
			County: String,
			Phone: String,
			Department: String,
			Flow: String,
			LastContact: 0001-01-01,
			DoNotContact: False,
			Active: False,
			AgentId: 0,
			PhoneAlt: String,
			PeraContactId: 0,
			RoomNumber: String,
			SourceTypeId: 0,
			SourceTypeDesc: String,
			SourceNote: String,
			ContactStatusId: 0,
			ContactStatusDesc: String,
			SSN: String,
			DateOfBirth: 0001-01-01,
			Deleted: False,
			IsShared: False,
			address_line1: String,
			address_city: String,
			address_state: String,
			address_zip: String,
			DeletedBy: String,
			DeletedDateTimeUtc: 0001-01-01,
			HasNBC: False,
			HasFactFinderSheet: False,
			MiddleInitial: String,
			Tags: String,
			DateCreated: 0001-01-01,
			PhoneLabel: String,
			AltPhoneLabel: String,
			Carriers: String,
			ContactImage: String,
			CompanyAffiliation: String,
			AdditionalInformation: String,
			HasGiftCard: False,
			ContactCategory: 0,
			WritingAgentId: 0,
			WritingAgentName: String,
			MaritalStatus: String,
			TotalDebtAmount: 0,
			NumberOfDebtAccounts: 0,
			FactFinderCodeId: 0,
			BusinessName: String,
			DBA: String,
			ContactGUID: 00000000000000000000000000000000,
			ProjectEndDate: 0001-01-01,
			Rate: 0,
			JobID: 0,
			JobName: String,
			JobCount: 0,
			Locked: False,
			LockedByAgentId: 0,
			LockedTimestamp: 0001-01-01,
			Initials: String,
			ContactCategoryName: String,
			SMSOptIn: False
		},
		FactFinderSheet: 
		{
			FactFinderSheetId: 0,
			ContactId: 0,
			EmploymentYears: String,
			PastOccupations: String,
			ClientGrossMthlyIncome: 0,
			ClientNetMthlyIncome: 0,
			HouseholdGrossMthlyIncome: 0,
			HouseholdNetMthlyIncome: 0,
			EstimatedExpenses: 0,
			DiscretionaryIncome: 0,
			DesiredRetirementIncome: 0,
			RetirementGoals: String,
			EmergencyFundMthlyContrib: 0,
			EmergencyFundBalance: 0,
			EmergencyFundComplete: False,
			WorkStatus: String,
			UnusedSickDays: 0,
			UnusedSickHours: 0,
			ContractBaseServPerYrDays: 0,
			ContractBaseServPerYrHours: 0,
			DaysPerWeek: 0,
			HoursPerWeek: 0,
			MonthsPerYear: 0,
			NumPreTaxChecksPerYr: 0,
			YearsWithOtherDistricts: 0,
			PrimaryLifeInsurance: False,
			PLICarrier: String,
			PLIFaceAmount: 0,
			PLIIssueDate: 0001-01-01,
			PLIPremium: 0,
			PLIType: String,
			PLITypeOf: String,
			PLICashValue: 0,
			SpouseLifeInsurance: False,
			SLICarrier: String,
			SLIFaceAmount: 0,
			SLIIssueDate: 0001-01-01,
			SLIPremium: 0,
			SLIType: String,
			SLITypeOf: String,
			SLICashValue: 0,
			PrimaryLTCInsurance: False,
			PLTCPremium: 0,
			PrimaryDisabilityInsurance: False,
			PDIPremium: 0,
			SpouseLTCInsurance: False,
			SLTCPremium: 0,
			SpouseDisabilityInsurance: False,
			SDIPremium: 0,
			HasRetirementSavings: False,
			HasPriorEmploymentRetirementSavings: False,
			HasDistributionPlan: False
		},
		Spouse: 
		{
			ContactSpouseId: 0,
			ContactId: 0,
			Name: String,
			DOB: 0001-01-01,
			Cell: String,
			Employer: String,
			Years: 0,
			Position: String,
			Email: String,
			PastOccupations: String
		},
		Children: 
		[
			{
				ContactChildId: 0,
				ContactId: 0,
				Name: String,
				DOB: 0001-01-01,
				Fund: String,
				Contribution: 0,
				Balance: 0
			}
		],
		IncomeSources: 
		[
			{
				ContactRetirementIncomeId: 0,
				ContactId: 0,
				AccountOwner: String,
				AccountType: String,
				Carrier: String,
				TotalValue: 0,
				SurrValue: 0,
				DateOfIssue: 0001-01-01,
				Fees: 0,
				PolicyNum: String,
				Contrib: 0,
				EmpNotes: String,
				TaxCode: String,
				SurrCharge: 0,
				ThirdPrtyPprwrkOK: False,
				AddlFormsReqd: False,
				OriginalFormsReqd: False,
				SignatureGuarReqd: False,
				FaxAccepted: False,
				FaxNumber: String,
				MailingAddr: String,
				MailingCity: String,
				MailingState: String,
				MailingZip: String,
				HasOutstandingLoans: False
			}
		],
		AdditionalNotes: String,
		Expenses: 
		[
			{
				ContactExpenseId: 0,
				ContactId: 0,
				ExpenseType: String,
				Description: String,
				Balance: 0,
				InterestRate: 0,
				MinimumPayment: 0,
				MonthlyPayment: 0
			}
		],
		Referrals: 
		[
			{
				ContactClientReferralId: 0,
				ContactId: 0,
				Name: String,
				Campus: String,
				Room: String,
				Phone: String
			}
		],
		LTAInfo: 
		[
			{
				ContactLTAInfoId: 0,
				ContactId: 0,
				PlanType: String,
				Company: String,
				Contribution: 0,
				Balance: 0
			}
		],
		Pensions: 
		[
			{
				ContactPensionId: 0,
				ContactId: 0,
				PensionSystem: String,
				PensionStartDate: 0001-01-01,
				ServiceCredit: 0,
				ServiceCreditAsOfDate: 0001-01-01,
				DesiredRetirementDate: 0001-01-01,
				DesiredRetirementAge: 0,
				SpousalBenefitDesired: False,
				FormulaPercent: 0,
				FormulaAt: 0,
				DefinedBenefitBalance: 0,
				DefinedBenefitSpouseBalance: 0
			}
		]
	},
	DataEntry: False
}