""" Options: Date: 2025-12-06 08:27:11 Version: 8.80 Tip: To override a DTO option, remove "#" prefix before updating BaseUrl: https://api.dev.dynamics.trendsic.com #GlobalNamespace: #AddServiceStackTypes: True #AddResponseStatus: False #AddImplicitVersion: #AddDescriptionAsComments: True IncludeTypes: AgentContractRequest.* #ExcludeTypes: #DefaultImports: datetime,decimal,marshmallow.fields:*,servicestack:*,typing:*,dataclasses:dataclass/field,dataclasses_json:dataclass_json/LetterCase/Undefined/config,enum:Enum/IntEnum #DataClass: #DataClassJson: """ import datetime import decimal from marshmallow.fields import * from servicestack import * from typing import * from dataclasses import dataclass, field from dataclasses_json import dataclass_json, LetterCase, Undefined, config from enum import Enum, IntEnum @dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE) @dataclass class AgentRegistrationTemp: agent_registration_temp_id: int = 0 application_id: Optional[str] = None company: Optional[str] = None ein: Optional[str] = None first_name: Optional[str] = None middle_name: Optional[str] = None last_name: Optional[str] = None address1: Optional[str] = None address2: Optional[str] = None city: Optional[str] = None state: Optional[str] = None zip: Optional[str] = None email: Optional[str] = None home_phone: Optional[str] = None cell_phone: Optional[str] = None work_phone: Optional[str] = None agree_to_disclosures: bool = False agree_to_date: datetime.datetime = datetime.datetime(1, 1, 1) paid_date: datetime.datetime = datetime.datetime(1, 1, 1) agent_number: Optional[str] = None upline1_name: Optional[str] = None upline1: int = 0 upline2_name: Optional[str] = None upline2: int = 0 recruited_by: Optional[str] = None created_date: datetime.datetime = datetime.datetime(1, 1, 1) dob: Optional[datetime.datetime] = None ssn: Optional[str] = None password: Optional[str] = None upline1_percent: Decimal = decimal.Decimal(0) upline2_percent: Decimal = decimal.Decimal(0) agent_id: int = 0 account_name: Optional[str] = None account_type: Optional[str] = None account_number: Optional[str] = None account_routing: Optional[str] = None w9_1: Optional[str] = None w9_2: Optional[str] = None w9_3_1: Optional[str] = None w9_3_2: Optional[str] = None w9_3_3: Optional[str] = None w9_3_4: Optional[str] = None w9_3_5: Optional[str] = None w9_3_6: Optional[str] = None w9_3_7: Optional[str] = None w9_3_8: Optional[str] = None w9_4_1: Optional[str] = None w9_4_2: Optional[str] = None w9_5: Optional[str] = None w9_6: Optional[str] = None w9_7: Optional[str] = None is_security_licensed: bool = False security_license: Optional[str] = None position: Optional[str] = None school: Optional[str] = None district: Optional[str] = None store_name: Optional[str] = None @dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE) @dataclass class AgentRegistrationAnswer: agent_registration_temp_id: int = 0 question_id: int = 0 answer_y_n: bool = False answer_text: Optional[str] = None date_created: datetime.datetime = datetime.datetime(1, 1, 1) @dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE) @dataclass class AgentStateLicense: agent_registration_temp_id: int = 0 state: Optional[str] = None license_num: Optional[str] = None @dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE) @dataclass class QueueDefault: location_id: Optional[str] = None services: List[str] = field(default_factory=list) @dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE) @dataclass class Agent: agent_id: int = 0 company: Optional[str] = None agent_name: Optional[str] = None first_name: Optional[str] = None last_name: Optional[str] = None middle_initial: Optional[str] = None address1: Optional[str] = None address2: Optional[str] = None city: Optional[str] = None state: Optional[str] = None zip: Optional[str] = None country: Optional[str] = None email: Optional[str] = None email_signature: Optional[str] = None home_phone: Optional[str] = None cell_phone: Optional[str] = None work_phone: Optional[str] = None ins_licensed: bool = False agree_to_disclosures: bool = False agree_to_date: Optional[datetime.datetime] = None paid_date: Optional[datetime.datetime] = None agent_number: Optional[str] = None referring_agent: Optional[str] = None placement_agent: Optional[str] = None created_date: Optional[datetime.datetime] = None user_id: Optional[str] = None is_agent: bool = False package: Optional[str] = None store_name: Optional[str] = None notes: Optional[str] = None upline1: Optional[int] = None upline2: Optional[int] = None upline3: Optional[int] = None upline4: Optional[int] = None mvpid: Optional[int] = None avpid: Optional[int] = None rvpid: Optional[int] = None agent_level: Optional[Decimal] = None is_m_v_p: bool = False is_r_v_p: bool = False is_a_v_p: bool = False is_admin: bool = False is_business_card_admin: bool = False team_name: Optional[str] = None location_id: Optional[str] = None calendar_id: Optional[str] = None rank: Optional[str] = None nbc: bool = False upline1_percent: Optional[Decimal] = None upline2_percent: Optional[Decimal] = None upline3_percent: Optional[Decimal] = None upline4_percent: Optional[Decimal] = None agent_status: Optional[str] = None office: Optional[str] = None dob: Optional[datetime.datetime] = None ssn: Optional[str] = None fax: Optional[str] = None business_email: Optional[str] = None modified_date: Optional[datetime.datetime] = None modified_by: Optional[str] = None time_zone: Optional[str] = None leader_locked: bool = False last_submitted_business_date: datetime.datetime = datetime.datetime(1, 1, 1) grace_period_date: datetime.datetime = datetime.datetime(1, 1, 1) vested: bool = False direct_pay: datetime.datetime = datetime.datetime(1, 1, 1) direct_pay_appr_by: Optional[str] = None fact_finder_billing: Optional[Decimal] = None full_name: Optional[str] = None by_last_name: Optional[str] = None is_security_licensed: bool = False is_encompass_admin: bool = False api_key: Optional[str] = None last_session_id: Optional[str] = None last_login: Optional[datetime.datetime] = None mfa_active: bool = False require_m_f_a: bool = False sms_phone_number: Optional[str] = None verified_email_status: bool = False verified_cell_phone_status: bool = False scheduler_url: Optional[str] = None queue_defaults: Optional[QueueDefault] = None roles: List[str] = field(default_factory=list) password_updated: bool = False restrict_to_single_session: bool = False @dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE) @dataclass class AgentRegistrationQuestionAnswer(AgentRegistrationAnswer): details: Optional[str] = None question_type: Optional[str] = None group: Optional[str] = None index_order: int = 0 @dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE) @dataclass class AgentContractExtended(Agent): agent_contract_id: int = 0 af_agreement_received_date: datetime.datetime = datetime.datetime(1, 1, 1) direct_deposit_received_date: datetime.datetime = datetime.datetime(1, 1, 1) dot_n_e_t_complete_date: datetime.datetime = datetime.datetime(1, 1, 1) associate_app_uploaded_date: datetime.datetime = datetime.datetime(1, 1, 1) lsw_contract_link_sent_date: datetime.datetime = datetime.datetime(1, 1, 1) lsw_contract_done_date: datetime.datetime = datetime.datetime(1, 1, 1) lsw_life_agent_code: Optional[str] = None lsw_annuity_agent_code: Optional[str] = None lsw_website_user_id: Optional[str] = None aml_completed_date: datetime.datetime = datetime.datetime(1, 1, 1) state_annuity_training_completed_date: datetime.datetime = datetime.datetime(1, 1, 1) lsw_product_training_completed_date: datetime.datetime = datetime.datetime(1, 1, 1) eo_expiration_date: datetime.datetime = datetime.datetime(1, 1, 1) sure_l_c_link_sent_date: datetime.datetime = datetime.datetime(1, 1, 1) ae_contract_done_date: datetime.datetime = datetime.datetime(1, 1, 1) ae_agent_code: Optional[str] = None mga_north_american_contract_sent_date: datetime.datetime = datetime.datetime(1, 1, 1) mga_north_american_agent_code: Optional[str] = None americo_contract_done_date: datetime.datetime = datetime.datetime(1, 1, 1) americo_agent_code: Optional[str] = None midland_contract_done_date: datetime.datetime = datetime.datetime(1, 1, 1) midland_agent_code: Optional[str] = None jackson_contract_done_date: datetime.datetime = datetime.datetime(1, 1, 1) jackson_agent_code: Optional[str] = None voya_contract_done_date: datetime.datetime = datetime.datetime(1, 1, 1) voya_agent_code: Optional[str] = None horace_mann_contract_done_date: datetime.datetime = datetime.datetime(1, 1, 1) horace_mann_agent_code: Optional[str] = None great_american_contract_done_date: datetime.datetime = datetime.datetime(1, 1, 1) great_american_agent_code: Optional[str] = None mutual_of_omaha_contract_done_date: datetime.datetime = datetime.datetime(1, 1, 1) mutual_of_omaha_agent_code: Optional[str] = None allanz_contract_done_date: datetime.datetime = datetime.datetime(1, 1, 1) allanz_agent_code: Optional[str] = None fg_contract_done_date: datetime.datetime = datetime.datetime(1, 1, 1) fg_agent_code: Optional[str] = None resident_license_state: Optional[str] = None resident_license_number: Optional[str] = None resident_license_expiration_date: datetime.datetime = datetime.datetime(1, 1, 1) contracting_complete: datetime.datetime = datetime.datetime(1, 1, 1) package_mailed: datetime.datetime = datetime.datetime(1, 1, 1) tracking_num: Optional[str] = None protective_contract_done_date: datetime.datetime = datetime.datetime(1, 1, 1) protective_code: Optional[str] = None athene_contract_done_date: datetime.datetime = datetime.datetime(1, 1, 1) athene_code: Optional[str] = None foresters_contract_done_date: datetime.datetime = datetime.datetime(1, 1, 1) foresters_code: Optional[str] = None ach_name: Optional[str] = None ach_number: Optional[str] = None ach_routing: Optional[str] = None ach_account_type: Optional[str] = None w9_1: Optional[str] = None w9_2: Optional[str] = None w9_3_1: Optional[str] = None w9_3_2: Optional[str] = None w9_3_3: Optional[str] = None w9_3_4: Optional[str] = None w9_3_5: Optional[str] = None w9_3_6: Optional[str] = None w9_3_7: Optional[str] = None w9_3_8: Optional[str] = None w9_4_1: Optional[str] = None w9_4_2: Optional[str] = None w9_5: Optional[str] = None w9_6: Optional[str] = None w9_7: Optional[str] = None agent_registration: Optional[AgentRegistrationTemp] = None agent_registration_answers: List[AgentRegistrationQuestionAnswer] = field(default_factory=list) agent_state_licenses: List[AgentStateLicense] = field(default_factory=list) contact_count: int = 0 pay_chex_id: Optional[str] = None agent_level_locked: Optional[bool] = None security_license: Optional[str] = None @dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE) @dataclass class AgentContractResponse: response_status: Optional[ResponseStatus] = None agent_contract: List[AgentContractExtended] = field(default_factory=list) # @Route("/v1/AgentContract", "PUT,OPTIONS") # @Route("/v1/AgentContract/{AgentId}", "GET") @dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE) @dataclass class AgentContractRequest(IReturn[AgentContractResponse]): agent_contract: List[AgentContractExtended] = field(default_factory=list) agent_id: int = 0