· 4 years ago · Apr 05, 2021, 08:54 PM
1# generated by datamodel-codegen:
2# filename: test.json
3# timestamp: 2021-04-05T20:30:28+00:00
4
5from __future__ import annotations
6
7from enum import Enum
8from typing import Dict, List
9
10from pydantic import BaseModel, Extra
11from schematics.types import (
12 BooleanType,
13 DateTimeType,
14 DictType,
15 FloatType,
16 IntType,
17 ListType,
18 ModelType,
19 StringType,
20 UUIDType,
21)
22
23
24
25class PortalAgentInformation(BaseModel):
26 id_ = UUIDType(required=True, serialized_name='id')
27 name = StringType(required=True)
28 agency_id = UUIDType(required=True, serialized_name='agencyId')
29 first_name = StringType(required=True, serialized_name='firstName')
30 last_name = StringType(required=True, serialized_name='lastName')
31 email = StringType(required=True)
32 phone = StringType(required=True)
33
34
35class PortalAgencyInformation(BaseModel):
36 id_ = UUIDType(required=True, serialized_name='id')
37 agency_name = StringType(required=True, serialized_name='agencyName')
38 campaign_source = StringType(required=True, serialized_name='campaignSource')
39 campaign_medium = StringType(required=True, serialized_name='campaignMedium')
40 agents = ListType(ModelType(PortalAgentInformation), required=True)
41
42
43class Extensions(BaseModel):
44 NO_FIELD_SET = StringType(required=True)
45
46
47class ProblemDetails(BaseModel):
48 type_ = StringType(required=True, serialized_name='type')
49 title = StringType(required=True)
50 status = IntType(required=True)
51 detail = StringType(required=True)
52 instance = StringType(required=True)
53 extensions = DictType(ModelType(Extensions), required=True)
54
55
56class PortalAgency(BaseModel):
57 id_ = UUIDType(required=True, serialized_name='id')
58 name = StringType(required=True)
59 key = StringType(required=True)
60 aggregator = StringType(required=True)
61
62
63class BusinessAddress(BaseModel):
64 line1 = StringType(required=True)
65 line2 = StringType(required=True)
66 city = StringType(required=True)
67 state = StringType(required=True)
68 zip_ = StringType(required=True, serialized_name='zip')
69 county = StringType(required=True)
70 country = StringType(required=True)
71 latitude = FloatType(required=True)
72 longitude = FloatType(required=True)
73
74
75class PortalRatingAdjustment(BaseModel):
76 rate = FloatType(required=True)
77 premium = FloatType(required=True)
78
79
80class PortalEmployersLiabilityLimits(BaseModel):
81 each_accident = IntType(required=True, serialized_name='eachAccident')
82 each_employee = IntType(required=True, serialized_name='eachEmployee')
83 each_policy = IntType(required=True, serialized_name='eachPolicy')
84 premium = IntType(required=True)
85
86
87class PortalTaxDetails(BaseModel):
88 code = StringType(required=True)
89 description = StringType(required=True)
90 rate = FloatType(required=True)
91 premium = IntType(required=True)
92
93
94class PortalPremiumAndFees(BaseModel):
95 class_premium = FloatType(required=True, serialized_name='classPremium')
96 expense_constant = FloatType(required=True, serialized_name='expenseConstant')
97 minimum_premium = IntType(required=True, serialized_name='minimumPremium')
98 modified_premium = IntType(required=True, serialized_name='modifiedPremium')
99 policy_total_estimated_cost = FloatType(
100 required=True, serialized_name='policyTotalEstimatedCost'
101 )
102 standard_premium = IntType(required=True, serialized_name='standardPremium')
103 subject_premium = IntType(required=True, serialized_name='subjectPremium')
104 total_taxes_and_assessments = FloatType(
105 required=True, serialized_name='totalTaxesAndAssessments'
106 )
107 total_estimated_premium = FloatType(
108 required=True, serialized_name='totalEstimatedPremium'
109 )
110 blanket_waiver = IntType(required=True, serialized_name='blanketWaiver')
111 specific_waiver = IntType(required=True, serialized_name='specificWaiver')
112 dividend_factor = FloatType(required=True, serialized_name='dividendFactor')
113 catastrophe = ModelType(PortalRatingAdjustment, required=True)
114 experience_modifier = ModelType(
115 PortalRatingAdjustment, required=True, serialized_name='experienceModifier'
116 )
117 premium_discount = ModelType(
118 PortalRatingAdjustment, required=True, serialized_name='premiumDiscount'
119 )
120 schedule_modifier = ModelType(
121 PortalRatingAdjustment, required=True, serialized_name='scheduleModifier'
122 )
123 terrorism = ModelType(PortalRatingAdjustment, required=True)
124 territory_modifier = ModelType(
125 PortalRatingAdjustment, required=True, serialized_name='territoryModifier'
126 )
127 employers_liability_limits = ModelType(
128 PortalEmployersLiabilityLimits,
129 required=True,
130 serialized_name='employersLiabilityLimits',
131 )
132 taxes_and_assessments = ListType(
133 ModelType(PortalTaxDetails),
134 required=True,
135 serialized_name='taxesAndAssessments',
136 )
137
138
139class PortalNetRates(BaseModel):
140 net_rate = FloatType(required=True, serialized_name='netRate')
141 commissionable_net_rate = FloatType(
142 required=True, serialized_name='commissionableNetRate'
143 )
144 loaded_net_rate = FloatType(required=True, serialized_name='loadedNetRate')
145
146
147class PortalClassCode(BaseModel):
148 code = StringType(required=True)
149 description = StringType(required=True)
150 payroll = IntType(required=True)
151 premium = IntType(required=True)
152 rate = FloatType(required=True)
153 percentage_of_payroll = FloatType(
154 required=True, serialized_name='percentageOfPayroll'
155 )
156 net_rates = ModelType(PortalNetRates, required=True, serialized_name='netRates')
157
158
159class ClaimsCount(BaseModel):
160 label = StringType(required=True)
161 value = IntType(required=True)
162
163
164class ClassCodeExposure(BaseModel):
165 id_ = IntType(required=True, serialized_name='id')
166 payroll = IntType(required=True)
167 class_code = StringType(required=True, serialized_name='classCode')
168 full_time_employees = IntType(required=True, serialized_name='fullTimeEmployees')
169 part_time_employees = IntType(required=True, serialized_name='partTimeEmployees')
170
171
172class UserInputsMetadata(BaseModel):
173 source = StringType(required=True)
174 state_code = StringType(
175 required=True,
176 choices=[
177 'AL',
178 'AK',
179 'AR',
180 'AZ',
181 'CA',
182 'CO',
183 'CT',
184 'DC',
185 'DE',
186 'FL',
187 'GA',
188 'HI',
189 'IA',
190 'ID',
191 'IL',
192 'IN',
193 'KS',
194 'KY',
195 'LA',
196 'MA',
197 'MD',
198 'ME',
199 'MI',
200 'MN',
201 'MO',
202 'MS',
203 'MT',
204 'NC',
205 'ND',
206 'NE',
207 'NH',
208 'NJ',
209 'NM',
210 'NV',
211 'NY',
212 'OK',
213 'OH',
214 'OR',
215 'PA',
216 'RI',
217 'SC',
218 'SD',
219 'TN',
220 'TX',
221 'UT',
222 'VA',
223 'VT',
224 'WA',
225 'WI',
226 'WV',
227 'WY',
228 'CW',
229 ],
230 serialized_name='stateCode',
231 )
232
233
234class EligibilityAnswers(BaseModel):
235 NO_FIELD_SET = StringType(required=True)
236
237
238class PortalUserInputs(BaseModel):
239 agency_id = UUIDType(required=True, serialized_name='agencyId')
240 agent_id = UUIDType(required=True, serialized_name='agentId')
241 effective_date = StringType(required=True, serialized_name='effectiveDate')
242 zip_ = StringType(required=True, serialized_name='zip')
243 business_name = StringType(required=True, serialized_name='businessName')
244 entity_type = StringType(required=True, serialized_name='entityType')
245 tax_id = StringType(required=True, serialized_name='taxId')
246 multiple_locations = BooleanType(required=True, serialized_name='multipleLocations')
247 multiple_states = BooleanType(required=True, serialized_name='multipleStates')
248 years_of_coverage = StringType(
249 required=True,
250 choices=['field_0', 'field_1', 'field_2', 'field_3', 'field_4', 'field_5'],
251 serialized_name='yearsOfCoverage',
252 )
253 emod = FloatType(required=True)
254 employers_liability = StringType(
255 required=True, serialized_name='employersLiability'
256 )
257 comments = StringType(required=True)
258 target_premium = IntType(required=True, serialized_name='targetPremium')
259 has_had_coverage = BooleanType(required=True, serialized_name='hasHadCoverage')
260 years_with_employee = StringType(
261 required=True,
262 choices=['field_0', 'field_1', 'field_2', 'field_3', 'field_4', 'field_5'],
263 serialized_name='yearsWithEmployee',
264 )
265 has_had_claims = BooleanType(required=True, serialized_name='hasHadClaims')
266 include_owners_and_officers = BooleanType(
267 required=True, serialized_name='includeOwnersAndOfficers'
268 )
269 document_upload = ListType(
270 StringType, required=True, serialized_name='documentUpload'
271 )
272 eligibility_answers = DictType(
273 ModelType(EligibilityAnswers),
274 required=True,
275 serialized_name='eligibilityAnswers',
276 )
277 claim_counts = ListType(
278 ModelType(ClaimsCount), required=True, serialized_name='claimCounts'
279 )
280 class_codes = ListType(
281 ModelType(ClassCodeExposure), required=True, serialized_name='classCodes'
282 )
283 first_name = StringType(required=True, serialized_name='firstName')
284 last_name = StringType(required=True, serialized_name='lastName')
285 phone = StringType(required=True)
286 email = StringType(required=True)
287 metadata = ModelType(UserInputsMetadata, required=True)
288
289
290class PortalInstallment(BaseModel):
291 date = StringType(required=True)
292 premium_amount = IntType(required=True, serialized_name='premiumAmount')
293 surcharge_amount = IntType(required=True, serialized_name='surchargeAmount')
294 fee_amount = IntType(required=True, serialized_name='feeAmount')
295 total_amount = IntType(required=True, serialized_name='totalAmount')
296
297
298class PaymentPlans(BaseModel):
299 unknown = ListType(ModelType(PortalInstallment), required=True)
300 full = ListType(ModelType(PortalInstallment), required=True)
301 semiannual = ListType(ModelType(PortalInstallment), required=True)
302 quarterly = ListType(ModelType(PortalInstallment), required=True)
303 monthly = ListType(ModelType(PortalInstallment), required=True)
304 payroll = ListType(ModelType(PortalInstallment), required=True)
305
306
307class PortalPaymentPlan(BaseModel):
308 payment_plans = ModelType(
309 PaymentPlans, required=True, serialized_name='paymentPlans'
310 )
311
312
313class SectionInfo(BaseModel):
314 index = IntType(required=True)
315 title = StringType(required=True)
316
317
318class QuestionDependsOn(BaseModel):
319 question_id = UUIDType(required=True, serialized_name='questionId')
320 answer = StringType(required=True)
321
322
323class PortalQuestion(BaseModel):
324 question_id = UUIDType(required=True, serialized_name='questionId')
325 section_key = StringType(required=True, serialized_name='sectionKey')
326 is_industry_specific = BooleanType(
327 required=True, serialized_name='isIndustrySpecific'
328 )
329 question_text = StringType(required=True, serialized_name='questionText')
330 question_type = StringType(required=True, serialized_name='questionType')
331 question_unit = StringType(required=True, serialized_name='questionUnit')
332 question_unit_symbol = StringType(
333 required=True, serialized_name='questionUnitSymbol'
334 )
335 depends_on = ListType(
336 ModelType(QuestionDependsOn), required=True, serialized_name='dependsOn'
337 )
338 answers = ListType(StringType, required=True)
339
340
341class SectionTitles(BaseModel):
342 NO_FIELD_SET = ModelType(SectionInfo, required=True)
343
344
345class PortalEligibilityQuestions(BaseModel):
346 section_titles = DictType(
347 ModelType(SectionTitles), required=True, serialized_name='sectionTitles'
348 )
349 questions = ListType(ModelType(PortalQuestion), required=True)
350 critical_response_question_ids = ListType(
351 UUIDType, required=True, serialized_name='criticalResponseQuestionIds'
352 )
353 unanswered_question_ids = ListType(
354 UUIDType, required=True, serialized_name='unansweredQuestionIds'
355 )
356
357
358class PortalContact(BaseModel):
359 first_name = StringType(required=True, serialized_name='firstName')
360 last_name = StringType(required=True, serialized_name='lastName')
361 phone = StringType(required=True)
362 email = StringType(required=True)
363 type_ = StringType(
364 required=True,
365 choices=['Accounting', 'Claims', 'Inspection', 'Client', 'Other'],
366 serialized_name='type',
367 )
368
369
370class PortalAddress(BaseModel):
371 line1 = StringType(required=True)
372 line2 = StringType(required=True)
373 city = StringType(required=True)
374 zip_ = StringType(required=True, serialized_name='zip')
375 state = StringType(
376 required=True,
377 choices=[
378 'AL',
379 'AK',
380 'AR',
381 'AZ',
382 'CA',
383 'CO',
384 'CT',
385 'DC',
386 'DE',
387 'FL',
388 'GA',
389 'HI',
390 'IA',
391 'ID',
392 'IL',
393 'IN',
394 'KS',
395 'KY',
396 'LA',
397 'MA',
398 'MD',
399 'ME',
400 'MI',
401 'MN',
402 'MO',
403 'MS',
404 'MT',
405 'NC',
406 'ND',
407 'NE',
408 'NH',
409 'NJ',
410 'NM',
411 'NV',
412 'NY',
413 'OK',
414 'OH',
415 'OR',
416 'PA',
417 'RI',
418 'SC',
419 'SD',
420 'TN',
421 'TX',
422 'UT',
423 'VA',
424 'VT',
425 'WA',
426 'WI',
427 'WV',
428 'WY',
429 'CW',
430 ],
431 )
432 country = StringType(required=True, choices=['US', 'USA'])
433
434
435class PortalOfficer(BaseModel):
436 ownership_percentage = FloatType(
437 required=True, serialized_name='ownershipPercentage'
438 )
439 included = BooleanType(required=True)
440 birth_date = StringType(required=True, serialized_name='birthDate')
441 payroll = IntType(required=True)
442 name = StringType(required=True)
443 duties = StringType(required=True)
444 class_ = StringType(required=True)
445 title = StringType(
446 required=True,
447 choices=['SoleProprietor', 'Partner', 'CorporateOfficer', 'Other'],
448 )
449
450
451class DeclineReasons(BaseModel):
452 al = ListType(StringType, required=True, serialized_name='AL')
453 ak = ListType(StringType, required=True, serialized_name='AK')
454 ar = ListType(StringType, required=True, serialized_name='AR')
455 az = ListType(StringType, required=True, serialized_name='AZ')
456 ca = ListType(StringType, required=True, serialized_name='CA')
457 co = ListType(StringType, required=True, serialized_name='CO')
458 ct = ListType(StringType, required=True, serialized_name='CT')
459 dc = ListType(StringType, required=True, serialized_name='DC')
460 de = ListType(StringType, required=True, serialized_name='DE')
461 fl = ListType(StringType, required=True, serialized_name='FL')
462 ga = ListType(StringType, required=True, serialized_name='GA')
463 hi = ListType(StringType, required=True, serialized_name='HI')
464 ia = ListType(StringType, required=True, serialized_name='IA')
465 id_ = ListType(StringType, required=True, serialized_name='ID')
466 il = ListType(StringType, required=True, serialized_name='IL')
467 in_ = ListType(StringType, required=True, serialized_name='IN')
468 ks = ListType(StringType, required=True, serialized_name='KS')
469 ky = ListType(StringType, required=True, serialized_name='KY')
470 la = ListType(StringType, required=True, serialized_name='LA')
471 ma = ListType(StringType, required=True, serialized_name='MA')
472 md = ListType(StringType, required=True, serialized_name='MD')
473 me = ListType(StringType, required=True, serialized_name='ME')
474 mi = ListType(StringType, required=True, serialized_name='MI')
475 mn = ListType(StringType, required=True, serialized_name='MN')
476 mo = ListType(StringType, required=True, serialized_name='MO')
477 ms = ListType(StringType, required=True, serialized_name='MS')
478 mt = ListType(StringType, required=True, serialized_name='MT')
479 nc = ListType(StringType, required=True, serialized_name='NC')
480 nd = ListType(StringType, required=True, serialized_name='ND')
481 ne = ListType(StringType, required=True, serialized_name='NE')
482 nh = ListType(StringType, required=True, serialized_name='NH')
483 nj = ListType(StringType, required=True, serialized_name='NJ')
484 nm = ListType(StringType, required=True, serialized_name='NM')
485 nv = ListType(StringType, required=True, serialized_name='NV')
486 ny = ListType(StringType, required=True, serialized_name='NY')
487 ok = ListType(StringType, required=True, serialized_name='OK')
488 oh = ListType(StringType, required=True, serialized_name='OH')
489 or_ = ListType(StringType, required=True, serialized_name='OR')
490 pa = ListType(StringType, required=True, serialized_name='PA')
491 ri = ListType(StringType, required=True, serialized_name='RI')
492 sc = ListType(StringType, required=True, serialized_name='SC')
493 sd = ListType(StringType, required=True, serialized_name='SD')
494 tn = ListType(StringType, required=True, serialized_name='TN')
495 tx = ListType(StringType, required=True, serialized_name='TX')
496 ut = ListType(StringType, required=True, serialized_name='UT')
497 va = ListType(StringType, required=True, serialized_name='VA')
498 vt = ListType(StringType, required=True, serialized_name='VT')
499 wa = ListType(StringType, required=True, serialized_name='WA')
500 wi = ListType(StringType, required=True, serialized_name='WI')
501 wv = ListType(StringType, required=True, serialized_name='WV')
502 wy = ListType(StringType, required=True, serialized_name='WY')
503 cw = ListType(StringType, required=True, serialized_name='CW')
504
505
506class ValidationFailures(BaseModel):
507 NO_FIELD_SET = ListType(StringType, required=True)
508
509
510class Errors(BaseModel):
511 NO_FIELD_SET = ListType(StringType, required=True)
512
513
514class ErrorMetadata(BaseModel):
515 NO_FIELD_SET = StringType(required=True)
516
517
518class PortalDecisionResponse(BaseModel):
519 id_ = UUIDType(required=True, serialized_name='id')
520 agency = ModelType(PortalAgency, required=True)
521 submission_id = UUIDType(required=True, serialized_name='submissionId')
522 business_name = StringType(required=True, serialized_name='businessName')
523 insured_address = ModelType(
524 BusinessAddress, required=True, serialized_name='insuredAddress'
525 )
526 effective_date = StringType(required=True, serialized_name='effectiveDate')
527 premium = FloatType(required=True)
528 decision_status = StringType(
529 required=True,
530 choices=['Undetermined', 'Refer', 'Decline', 'Quotable'],
531 serialized_name='decisionStatus',
532 )
533 decline_reasons = ModelType(
534 DeclineReasons, required=True, serialized_name='declineReasons'
535 )
536 date_submitted = StringType(required=True, serialized_name='dateSubmitted')
537 premium_and_fees = ModelType(
538 PortalPremiumAndFees, required=True, serialized_name='premiumAndFees'
539 )
540 class_codes = DictType(
541 ModelType(PortalClassCode), required=True, serialized_name='classCodes'
542 )
543 user_inputs = ModelType(
544 PortalUserInputs, required=True, serialized_name='userInputs'
545 )
546 payment_plan = ModelType(
547 PortalPaymentPlan, required=True, serialized_name='paymentPlan'
548 )
549 eligibility_questions = ModelType(
550 PortalEligibilityQuestions,
551 required=True,
552 serialized_name='eligibilityQuestions',
553 )
554 warning_message = StringType(required=True, serialized_name='warningMessage')
555 validation_failures = DictType(
556 ModelType(ValidationFailures),
557 required=True,
558 serialized_name='validationFailures',
559 )
560 is_on_hold = BooleanType(required=True, serialized_name='isOnHold')
561 review_requested_date = DateTimeType(
562 required=True, serialized_name='reviewRequestedDate'
563 )
564 underwriting_lead_status = StringType(
565 required=True, serialized_name='underwritingLeadStatus'
566 )
567 bind_comments = StringType(required=True, serialized_name='bindComments')
568 payment_plan_type = StringType(
569 required=True,
570 choices=['unknown', 'full', 'semiannual', 'quarterly', 'monthly', 'payroll'],
571 serialized_name='paymentPlanType',
572 )
573 primary_contact = ModelType(
574 PortalContact, required=True, serialized_name='primaryContact'
575 )
576 mailing_address = ModelType(
577 PortalAddress, required=True, serialized_name='mailingAddress'
578 )
579 additional_locations = ListType(
580 ModelType(PortalAddress), required=True, serialized_name='additionalLocations'
581 )
582 owners_officers = ListType(
583 ModelType(PortalOfficer), required=True, serialized_name='ownersOfficers'
584 )
585 tax_id = StringType(required=True, serialized_name='taxId')
586 last_modified_date = DateTimeType(required=True, serialized_name='lastModifiedDate')
587 errors = DictType(ModelType(Errors), required=True)
588 error_metadata = DictType(
589 ModelType(ErrorMetadata), required=True, serialized_name='errorMetadata'
590 )
591 title = StringType(required=True)
592 trace_id = StringType(required=True, serialized_name='traceId')
593
594
595class PortalBindRequest(BaseModel):
596 tax_id = StringType(required=True, serialized_name='taxId')
597 effective_date = StringType(required=True, serialized_name='effectiveDate')
598 payment_plan_type = StringType(
599 required=True,
600 choices=['unknown', 'full', 'semiannual', 'quarterly', 'monthly', 'payroll'],
601 serialized_name='paymentPlanType',
602 )
603 primary_contact = ModelType(
604 PortalContact, required=True, serialized_name='primaryContact'
605 )
606 insured_address = ModelType(
607 PortalAddress, required=True, serialized_name='insuredAddress'
608 )
609 mailing_address = ModelType(
610 PortalAddress, required=True, serialized_name='mailingAddress'
611 )
612 additional_locations = ListType(
613 ModelType(PortalAddress), required=True, serialized_name='additionalLocations'
614 )
615 owners_officers = ListType(
616 ModelType(PortalOfficer), required=True, serialized_name='ownersOfficers'
617 )
618 bind_comments = StringType(required=True, serialized_name='bindComments')
619
620
621class PortalDocumentResponse(BaseModel):
622 file_name = StringType(required=True, serialized_name='fileName')
623
624
625class ZipCodeDetailsResponse(BaseModel):
626 zip_code = StringType(required=True, serialized_name='zipCode')
627 city = StringType(required=True)
628 state = StringType(
629 required=True,
630 choices=[
631 'AL',
632 'AK',
633 'AR',
634 'AZ',
635 'CA',
636 'CO',
637 'CT',
638 'DC',
639 'DE',
640 'FL',
641 'GA',
642 'HI',
643 'IA',
644 'ID',
645 'IL',
646 'IN',
647 'KS',
648 'KY',
649 'LA',
650 'MA',
651 'MD',
652 'ME',
653 'MI',
654 'MN',
655 'MO',
656 'MS',
657 'MT',
658 'NC',
659 'ND',
660 'NE',
661 'NH',
662 'NJ',
663 'NM',
664 'NV',
665 'NY',
666 'OK',
667 'OH',
668 'OR',
669 'PA',
670 'RI',
671 'SC',
672 'SD',
673 'TN',
674 'TX',
675 'UT',
676 'VA',
677 'VT',
678 'WA',
679 'WI',
680 'WV',
681 'WY',
682 'CW',
683 ],
684 )
685
686
687class EmployerLiabilityLimits(BaseModel):
688 each_accident = IntType(required=True, serialized_name='eachAccident')
689 each_policy = IntType(required=True, serialized_name='eachPolicy')
690 each_employee = IntType(required=True, serialized_name='eachEmployee')
691
692
693class EmployerLiabilityLimitsOption(BaseModel):
694 label = StringType(required=True)
695 value = ModelType(EmployerLiabilityLimits, required=True)
696
697
698class WaiverOfSubrogationOption(BaseModel):
699 label = StringType(required=True)
700 value = BooleanType(required=True)
701
702
703class EmodSpecification(BaseModel):
704 allowed_decimals = IntType(required=True, serialized_name='allowedDecimals')
705
706
707class LegalEntityOption(BaseModel):
708 label = StringType(required=True)
709 value = StringType(
710 required=True,
711 choices=[
712 'Individual',
713 'Partnership',
714 'Corporation',
715 'AssociationLaborUnionReligiousOrganization',
716 'LimitedPartnership',
717 'JointVenture',
718 'CommonOwnership',
719 'MultipleStatus',
720 'JointEmployer',
721 'LimitedLiabilityCompany',
722 'TrustOrEstate',
723 'ExecutorOrTrustee',
724 'LimitedLiabilityPartnership',
725 'GovernmentEntity',
726 'Other',
727 ],
728 )
729
730
731class LapseReasonOption(BaseModel):
732 label = StringType(required=True)
733 value = StringType(
734 required=True,
735 choices=['NonPayment', 'AuditNonCompliance', 'NoEmployees', 'Other'],
736 )
737
738
739class NotCoveredReasonOption(BaseModel):
740 label = StringType(required=True)
741 value = StringType(
742 required=True,
743 choices=[
744 'NonPayment',
745 'AuditNonCompliance',
746 'NoEmployees',
747 'Other',
748 'NewBusiness',
749 ],
750 )
751
752
753class StateOptionsResponse(BaseModel):
754 state = StringType(
755 required=True,
756 choices=[
757 'AL',
758 'AK',
759 'AR',
760 'AZ',
761 'CA',
762 'CO',
763 'CT',
764 'DC',
765 'DE',
766 'FL',
767 'GA',
768 'HI',
769 'IA',
770 'ID',
771 'IL',
772 'IN',
773 'KS',
774 'KY',
775 'LA',
776 'MA',
777 'MD',
778 'ME',
779 'MI',
780 'MN',
781 'MO',
782 'MS',
783 'MT',
784 'NC',
785 'ND',
786 'NE',
787 'NH',
788 'NJ',
789 'NM',
790 'NV',
791 'NY',
792 'OK',
793 'OH',
794 'OR',
795 'PA',
796 'RI',
797 'SC',
798 'SD',
799 'TN',
800 'TX',
801 'UT',
802 'VA',
803 'VT',
804 'WA',
805 'WI',
806 'WV',
807 'WY',
808 'CW',
809 ],
810 )
811 employer_liability_limits_options = ListType(
812 ModelType(EmployerLiabilityLimitsOption),
813 required=True,
814 serialized_name='employerLiabilityLimitsOptions',
815 )
816 blanket_waiver_of_subrogation_options = ListType(
817 ModelType(WaiverOfSubrogationOption),
818 required=True,
819 serialized_name='blanketWaiverOfSubrogationOptions',
820 )
821 emod_specification = ModelType(
822 EmodSpecification, required=True, serialized_name='emodSpecification'
823 )
824 legal_entity_options = ListType(
825 ModelType(LegalEntityOption),
826 required=True,
827 serialized_name='legalEntityOptions',
828 )
829 lapse_reason_options = ListType(
830 ModelType(LapseReasonOption),
831 required=True,
832 serialized_name='lapseReasonOptions',
833 )
834 not_covered_reason_options = ListType(
835 ModelType(NotCoveredReasonOption),
836 required=True,
837 serialized_name='notCoveredReasonOptions',
838 )
839
840
841class CriticalResponses(BaseModel):
842 NO_FIELD_SET = StringType(required=True)
843
844
845class PortalEligibilityDecision(BaseModel):
846 decision = StringType(
847 required=True, choices=['Undetermined', 'Refer', 'Decline', 'Quotable']
848 )
849 critical_responses = DictType(
850 ModelType(CriticalResponses), required=True, serialized_name='criticalResponses'
851 )
852
853
854class PortalSubmissionDecision(BaseModel):
855 decision_id = UUIDType(required=True, serialized_name='decisionId')
856 decision = StringType(
857 required=True, choices=['Undetermined', 'Refer', 'Decline', 'Quotable']
858 )
859 estimated_premium = FloatType(required=True, serialized_name='estimatedPremium')
860 is_on_hold = BooleanType(required=True, serialized_name='isOnHold')
861
862
863class DeclineReasons1(BaseModel):
864 al = ListType(StringType, required=True, serialized_name='AL')
865 ak = ListType(StringType, required=True, serialized_name='AK')
866 ar = ListType(StringType, required=True, serialized_name='AR')
867 az = ListType(StringType, required=True, serialized_name='AZ')
868 ca = ListType(StringType, required=True, serialized_name='CA')
869 co = ListType(StringType, required=True, serialized_name='CO')
870 ct = ListType(StringType, required=True, serialized_name='CT')
871 dc = ListType(StringType, required=True, serialized_name='DC')
872 de = ListType(StringType, required=True, serialized_name='DE')
873 fl = ListType(StringType, required=True, serialized_name='FL')
874 ga = ListType(StringType, required=True, serialized_name='GA')
875 hi = ListType(StringType, required=True, serialized_name='HI')
876 ia = ListType(StringType, required=True, serialized_name='IA')
877 id_ = ListType(StringType, required=True, serialized_name='ID')
878 il = ListType(StringType, required=True, serialized_name='IL')
879 in_ = ListType(StringType, required=True, serialized_name='IN')
880 ks = ListType(StringType, required=True, serialized_name='KS')
881 ky = ListType(StringType, required=True, serialized_name='KY')
882 la = ListType(StringType, required=True, serialized_name='LA')
883 ma = ListType(StringType, required=True, serialized_name='MA')
884 md = ListType(StringType, required=True, serialized_name='MD')
885 me = ListType(StringType, required=True, serialized_name='ME')
886 mi = ListType(StringType, required=True, serialized_name='MI')
887 mn = ListType(StringType, required=True, serialized_name='MN')
888 mo = ListType(StringType, required=True, serialized_name='MO')
889 ms = ListType(StringType, required=True, serialized_name='MS')
890 mt = ListType(StringType, required=True, serialized_name='MT')
891 nc = ListType(StringType, required=True, serialized_name='NC')
892 nd = ListType(StringType, required=True, serialized_name='ND')
893 ne = ListType(StringType, required=True, serialized_name='NE')
894 nh = ListType(StringType, required=True, serialized_name='NH')
895 nj = ListType(StringType, required=True, serialized_name='NJ')
896 nm = ListType(StringType, required=True, serialized_name='NM')
897 nv = ListType(StringType, required=True, serialized_name='NV')
898 ny = ListType(StringType, required=True, serialized_name='NY')
899 ok = ListType(StringType, required=True, serialized_name='OK')
900 oh = ListType(StringType, required=True, serialized_name='OH')
901 or_ = ListType(StringType, required=True, serialized_name='OR')
902 pa = ListType(StringType, required=True, serialized_name='PA')
903 ri = ListType(StringType, required=True, serialized_name='RI')
904 sc = ListType(StringType, required=True, serialized_name='SC')
905 sd = ListType(StringType, required=True, serialized_name='SD')
906 tn = ListType(StringType, required=True, serialized_name='TN')
907 tx = ListType(StringType, required=True, serialized_name='TX')
908 ut = ListType(StringType, required=True, serialized_name='UT')
909 va = ListType(StringType, required=True, serialized_name='VA')
910 vt = ListType(StringType, required=True, serialized_name='VT')
911 wa = ListType(StringType, required=True, serialized_name='WA')
912 wi = ListType(StringType, required=True, serialized_name='WI')
913 wv = ListType(StringType, required=True, serialized_name='WV')
914 wy = ListType(StringType, required=True, serialized_name='WY')
915 cw = ListType(StringType, required=True, serialized_name='CW')
916
917
918class Errors1(BaseModel):
919 NO_FIELD_SET = ListType(StringType, required=True)
920
921
922class ErrorMetadata1(BaseModel):
923 NO_FIELD_SET = StringType(required=True)
924
925
926class PortalSubmissionResponse(BaseModel):
927 id_ = UUIDType(required=True, serialized_name='id')
928 business_name = StringType(required=True, serialized_name='businessName')
929 effective_date = StringType(required=True, serialized_name='effectiveDate')
930 comments = StringType(required=True)
931 eligibility = ModelType(PortalEligibilityDecision, required=True)
932 decision_status = StringType(
933 required=True,
934 choices=['Undetermined', 'Refer', 'Decline', 'Quotable'],
935 serialized_name='decisionStatus',
936 )
937 decline_reasons = ModelType(
938 DeclineReasons1, required=True, serialized_name='declineReasons'
939 )
940 user_inputs = ModelType(
941 PortalUserInputs, required=True, serialized_name='userInputs'
942 )
943 decisions = ListType(ModelType(PortalSubmissionDecision), required=True)
944 last_update_source = StringType(required=True, serialized_name='lastUpdateSource')
945 source = StringType(required=True)
946 state_code = StringType(required=True, serialized_name='stateCode')
947 deductible = IntType(required=True)
948 errors = DictType(ModelType(Errors1), required=True)
949 error_metadata = DictType(
950 ModelType(ErrorMetadata1), required=True, serialized_name='errorMetadata'
951 )
952 title = StringType(required=True)
953 trace_id = StringType(required=True, serialized_name='traceId')
954
955
956class PortalDashboardSubmissionResponse(BaseModel):
957 submission_id = StringType(required=True, serialized_name='submissionId')
958 decision_id = StringType(required=True, serialized_name='decisionId')
959 agent_name = StringType(required=True, serialized_name='agentName')
960 created_date = StringType(required=True, serialized_name='createdDate')
961 effective_date = StringType(required=True, serialized_name='effectiveDate')
962 named_insured = StringType(required=True, serialized_name='namedInsured')
963 state = StringType(
964 required=True,
965 choices=[
966 'AL',
967 'AK',
968 'AR',
969 'AZ',
970 'CA',
971 'CO',
972 'CT',
973 'DC',
974 'DE',
975 'FL',
976 'GA',
977 'HI',
978 'IA',
979 'ID',
980 'IL',
981 'IN',
982 'KS',
983 'KY',
984 'LA',
985 'MA',
986 'MD',
987 'ME',
988 'MI',
989 'MN',
990 'MO',
991 'MS',
992 'MT',
993 'NC',
994 'ND',
995 'NE',
996 'NH',
997 'NJ',
998 'NM',
999 'NV',
1000 'NY',
1001 'OK',
1002 'OH',
1003 'OR',
1004 'PA',
1005 'RI',
1006 'SC',
1007 'SD',
1008 'TN',
1009 'TX',
1010 'UT',
1011 'VA',
1012 'VT',
1013 'WA',
1014 'WI',
1015 'WV',
1016 'WY',
1017 'CW',
1018 ],
1019 )
1020 status = StringType(
1021 required=True,
1022 choices=[
1023 'Draft',
1024 'Quoted',
1025 'Declined',
1026 'InReview',
1027 'Issued',
1028 'No_Update',
1029 'BindRequested',
1030 ],
1031 )
1032 estimated_premium = FloatType(required=True, serialized_name='estimatedPremium')
1033 is_on_hold = BooleanType(required=True, serialized_name='isOnHold')
1034
1035
1036class PortalDecisionStatusUWOverrideable(BaseModel):
1037 raw_value = StringType(
1038 required=True,
1039 choices=['Undetermined', 'Refer', 'Decline', 'Quotable'],
1040 serialized_name='rawValue',
1041 )
1042 current_value = StringType(
1043 required=True,
1044 choices=['Undetermined', 'Refer', 'Decline', 'Quotable'],
1045 serialized_name='currentValue',
1046 )
1047
1048
1049class DecimalNullableUWOverrideable(BaseModel):
1050 raw_value = FloatType(required=True, serialized_name='rawValue')
1051 current_value = FloatType(required=True, serialized_name='currentValue')
1052
1053
1054class UWInstallment(BaseModel):
1055 date = StringType(required=True)
1056 premium_amount = IntType(required=True, serialized_name='premiumAmount')
1057 surcharge_amount = IntType(required=True, serialized_name='surchargeAmount')
1058 fee_amount = IntType(required=True, serialized_name='feeAmount')
1059 total_amount = IntType(required=True, serialized_name='totalAmount')
1060
1061
1062class PaymentPlans1(BaseModel):
1063 unknown = ListType(ModelType(UWInstallment), required=True)
1064 full = ListType(ModelType(UWInstallment), required=True)
1065 semiannual = ListType(ModelType(UWInstallment), required=True)
1066 quarterly = ListType(ModelType(UWInstallment), required=True)
1067 monthly = ListType(ModelType(UWInstallment), required=True)
1068 payroll = ListType(ModelType(UWInstallment), required=True)
1069
1070
1071class UWPaymentInformation(BaseModel):
1072 down_payment_amount = IntType(required=True, serialized_name='downPaymentAmount')
1073 monthly_payment_amount = IntType(
1074 required=True, serialized_name='monthlyPaymentAmount'
1075 )
1076 total_policy_cost = FloatType(required=True, serialized_name='totalPolicyCost')
1077 target_premium = StringType(required=True, serialized_name='targetPremium')
1078 payment_plan = StringType(
1079 required=True,
1080 choices=['unknown', 'full', 'semiannual', 'quarterly', 'monthly', 'payroll'],
1081 serialized_name='paymentPlan',
1082 )
1083 payment_plans = ModelType(
1084 PaymentPlans1, required=True, serialized_name='paymentPlans'
1085 )
1086
1087
1088class UWClassCodeBreakdown(BaseModel):
1089 code = StringType(required=True)
1090 description = StringType(required=True)
1091 payroll = IntType(required=True)
1092 rate = FloatType(required=True)
1093 percentage_of_payroll = FloatType(
1094 required=True, serialized_name='percentageOfPayroll'
1095 )
1096 premium = IntType(required=True)
1097 net_rates = ModelType(PortalNetRates, required=True, serialized_name='netRates')
1098
1099
1100class UWPremiumAndFees(BaseModel):
1101 policy_total_estimated_cost = FloatType(
1102 required=True, serialized_name='policyTotalEstimatedCost'
1103 )
1104 expense_constant = FloatType(required=True, serialized_name='expenseConstant')
1105 blanket_waiver = ModelType(
1106 PortalRatingAdjustment, required=True, serialized_name='blanketWaiver'
1107 )
1108 catastrophe = ModelType(PortalRatingAdjustment, required=True)
1109 experience_modifier = ModelType(
1110 PortalRatingAdjustment, required=True, serialized_name='experienceModifier'
1111 )
1112 premium_discount = ModelType(
1113 PortalRatingAdjustment, required=True, serialized_name='premiumDiscount'
1114 )
1115 schedule_modifier = ModelType(
1116 PortalRatingAdjustment, required=True, serialized_name='scheduleModifier'
1117 )
1118 terrorism = ModelType(PortalRatingAdjustment, required=True)
1119 territory_modifier = ModelType(
1120 PortalRatingAdjustment, required=True, serialized_name='territoryModifier'
1121 )
1122 employers_liability_limits = ModelType(
1123 PortalEmployersLiabilityLimits,
1124 required=True,
1125 serialized_name='employersLiabilityLimits',
1126 )
1127 taxes_and_assessments = ListType(
1128 ModelType(PortalTaxDetails),
1129 required=True,
1130 serialized_name='taxesAndAssessments',
1131 )
1132
1133
1134class ClassCodes1(BaseModel):
1135 al = ListType(ModelType(UWClassCodeBreakdown), required=True, serialized_name='AL')
1136 ak = ListType(ModelType(UWClassCodeBreakdown), required=True, serialized_name='AK')
1137 ar = ListType(ModelType(UWClassCodeBreakdown), required=True, serialized_name='AR')
1138 az = ListType(ModelType(UWClassCodeBreakdown), required=True, serialized_name='AZ')
1139 ca = ListType(ModelType(UWClassCodeBreakdown), required=True, serialized_name='CA')
1140 co = ListType(ModelType(UWClassCodeBreakdown), required=True, serialized_name='CO')
1141 ct = ListType(ModelType(UWClassCodeBreakdown), required=True, serialized_name='CT')
1142 dc = ListType(ModelType(UWClassCodeBreakdown), required=True, serialized_name='DC')
1143 de = ListType(ModelType(UWClassCodeBreakdown), required=True, serialized_name='DE')
1144 fl = ListType(ModelType(UWClassCodeBreakdown), required=True, serialized_name='FL')
1145 ga = ListType(ModelType(UWClassCodeBreakdown), required=True, serialized_name='GA')
1146 hi = ListType(ModelType(UWClassCodeBreakdown), required=True, serialized_name='HI')
1147 ia = ListType(ModelType(UWClassCodeBreakdown), required=True, serialized_name='IA')
1148 id_ = ListType(ModelType(UWClassCodeBreakdown), required=True, serialized_name='ID')
1149 il = ListType(ModelType(UWClassCodeBreakdown), required=True, serialized_name='IL')
1150 in_ = ListType(ModelType(UWClassCodeBreakdown), required=True, serialized_name='IN')
1151 ks = ListType(ModelType(UWClassCodeBreakdown), required=True, serialized_name='KS')
1152 ky = ListType(ModelType(UWClassCodeBreakdown), required=True, serialized_name='KY')
1153 la = ListType(ModelType(UWClassCodeBreakdown), required=True, serialized_name='LA')
1154 ma = ListType(ModelType(UWClassCodeBreakdown), required=True, serialized_name='MA')
1155 md = ListType(ModelType(UWClassCodeBreakdown), required=True, serialized_name='MD')
1156 me = ListType(ModelType(UWClassCodeBreakdown), required=True, serialized_name='ME')
1157 mi = ListType(ModelType(UWClassCodeBreakdown), required=True, serialized_name='MI')
1158 mn = ListType(ModelType(UWClassCodeBreakdown), required=True, serialized_name='MN')
1159 mo = ListType(ModelType(UWClassCodeBreakdown), required=True, serialized_name='MO')
1160 ms = ListType(ModelType(UWClassCodeBreakdown), required=True, serialized_name='MS')
1161 mt = ListType(ModelType(UWClassCodeBreakdown), required=True, serialized_name='MT')
1162 nc = ListType(ModelType(UWClassCodeBreakdown), required=True, serialized_name='NC')
1163 nd = ListType(ModelType(UWClassCodeBreakdown), required=True, serialized_name='ND')
1164 ne = ListType(ModelType(UWClassCodeBreakdown), required=True, serialized_name='NE')
1165 nh = ListType(ModelType(UWClassCodeBreakdown), required=True, serialized_name='NH')
1166 nj = ListType(ModelType(UWClassCodeBreakdown), required=True, serialized_name='NJ')
1167 nm = ListType(ModelType(UWClassCodeBreakdown), required=True, serialized_name='NM')
1168 nv = ListType(ModelType(UWClassCodeBreakdown), required=True, serialized_name='NV')
1169 ny = ListType(ModelType(UWClassCodeBreakdown), required=True, serialized_name='NY')
1170 ok = ListType(ModelType(UWClassCodeBreakdown), required=True, serialized_name='OK')
1171 oh = ListType(ModelType(UWClassCodeBreakdown), required=True, serialized_name='OH')
1172 or_ = ListType(ModelType(UWClassCodeBreakdown), required=True, serialized_name='OR')
1173 pa = ListType(ModelType(UWClassCodeBreakdown), required=True, serialized_name='PA')
1174 ri = ListType(ModelType(UWClassCodeBreakdown), required=True, serialized_name='RI')
1175 sc = ListType(ModelType(UWClassCodeBreakdown), required=True, serialized_name='SC')
1176 sd = ListType(ModelType(UWClassCodeBreakdown), required=True, serialized_name='SD')
1177 tn = ListType(ModelType(UWClassCodeBreakdown), required=True, serialized_name='TN')
1178 tx = ListType(ModelType(UWClassCodeBreakdown), required=True, serialized_name='TX')
1179 ut = ListType(ModelType(UWClassCodeBreakdown), required=True, serialized_name='UT')
1180 va = ListType(ModelType(UWClassCodeBreakdown), required=True, serialized_name='VA')
1181 vt = ListType(ModelType(UWClassCodeBreakdown), required=True, serialized_name='VT')
1182 wa = ListType(ModelType(UWClassCodeBreakdown), required=True, serialized_name='WA')
1183 wi = ListType(ModelType(UWClassCodeBreakdown), required=True, serialized_name='WI')
1184 wv = ListType(ModelType(UWClassCodeBreakdown), required=True, serialized_name='WV')
1185 wy = ListType(ModelType(UWClassCodeBreakdown), required=True, serialized_name='WY')
1186 cw = ListType(ModelType(UWClassCodeBreakdown), required=True, serialized_name='CW')
1187
1188
1189class PremiumAndFees(BaseModel):
1190 al = ModelType(UWPremiumAndFees, required=True, serialized_name='AL')
1191 ak = ModelType(UWPremiumAndFees, required=True, serialized_name='AK')
1192 ar = ModelType(UWPremiumAndFees, required=True, serialized_name='AR')
1193 az = ModelType(UWPremiumAndFees, required=True, serialized_name='AZ')
1194 ca = ModelType(UWPremiumAndFees, required=True, serialized_name='CA')
1195 co = ModelType(UWPremiumAndFees, required=True, serialized_name='CO')
1196 ct = ModelType(UWPremiumAndFees, required=True, serialized_name='CT')
1197 dc = ModelType(UWPremiumAndFees, required=True, serialized_name='DC')
1198 de = ModelType(UWPremiumAndFees, required=True, serialized_name='DE')
1199 fl = ModelType(UWPremiumAndFees, required=True, serialized_name='FL')
1200 ga = ModelType(UWPremiumAndFees, required=True, serialized_name='GA')
1201 hi = ModelType(UWPremiumAndFees, required=True, serialized_name='HI')
1202 ia = ModelType(UWPremiumAndFees, required=True, serialized_name='IA')
1203 id_ = ModelType(UWPremiumAndFees, required=True, serialized_name='ID')
1204 il = ModelType(UWPremiumAndFees, required=True, serialized_name='IL')
1205 in_ = ModelType(UWPremiumAndFees, required=True, serialized_name='IN')
1206 ks = ModelType(UWPremiumAndFees, required=True, serialized_name='KS')
1207 ky = ModelType(UWPremiumAndFees, required=True, serialized_name='KY')
1208 la = ModelType(UWPremiumAndFees, required=True, serialized_name='LA')
1209 ma = ModelType(UWPremiumAndFees, required=True, serialized_name='MA')
1210 md = ModelType(UWPremiumAndFees, required=True, serialized_name='MD')
1211 me = ModelType(UWPremiumAndFees, required=True, serialized_name='ME')
1212 mi = ModelType(UWPremiumAndFees, required=True, serialized_name='MI')
1213 mn = ModelType(UWPremiumAndFees, required=True, serialized_name='MN')
1214 mo = ModelType(UWPremiumAndFees, required=True, serialized_name='MO')
1215 ms = ModelType(UWPremiumAndFees, required=True, serialized_name='MS')
1216 mt = ModelType(UWPremiumAndFees, required=True, serialized_name='MT')
1217 nc = ModelType(UWPremiumAndFees, required=True, serialized_name='NC')
1218 nd = ModelType(UWPremiumAndFees, required=True, serialized_name='ND')
1219 ne = ModelType(UWPremiumAndFees, required=True, serialized_name='NE')
1220 nh = ModelType(UWPremiumAndFees, required=True, serialized_name='NH')
1221 nj = ModelType(UWPremiumAndFees, required=True, serialized_name='NJ')
1222 nm = ModelType(UWPremiumAndFees, required=True, serialized_name='NM')
1223 nv = ModelType(UWPremiumAndFees, required=True, serialized_name='NV')
1224 ny = ModelType(UWPremiumAndFees, required=True, serialized_name='NY')
1225 ok = ModelType(UWPremiumAndFees, required=True, serialized_name='OK')
1226 oh = ModelType(UWPremiumAndFees, required=True, serialized_name='OH')
1227 or_ = ModelType(UWPremiumAndFees, required=True, serialized_name='OR')
1228 pa = ModelType(UWPremiumAndFees, required=True, serialized_name='PA')
1229 ri = ModelType(UWPremiumAndFees, required=True, serialized_name='RI')
1230 sc = ModelType(UWPremiumAndFees, required=True, serialized_name='SC')
1231 sd = ModelType(UWPremiumAndFees, required=True, serialized_name='SD')
1232 tn = ModelType(UWPremiumAndFees, required=True, serialized_name='TN')
1233 tx = ModelType(UWPremiumAndFees, required=True, serialized_name='TX')
1234 ut = ModelType(UWPremiumAndFees, required=True, serialized_name='UT')
1235 va = ModelType(UWPremiumAndFees, required=True, serialized_name='VA')
1236 vt = ModelType(UWPremiumAndFees, required=True, serialized_name='VT')
1237 wa = ModelType(UWPremiumAndFees, required=True, serialized_name='WA')
1238 wi = ModelType(UWPremiumAndFees, required=True, serialized_name='WI')
1239 wv = ModelType(UWPremiumAndFees, required=True, serialized_name='WV')
1240 wy = ModelType(UWPremiumAndFees, required=True, serialized_name='WY')
1241 cw = ModelType(UWPremiumAndFees, required=True, serialized_name='CW')
1242
1243
1244class UWPremiumBreakdown(BaseModel):
1245 class_codes = ModelType(ClassCodes1, required=True, serialized_name='classCodes')
1246 premium_and_fees = ModelType(
1247 PremiumAndFees, required=True, serialized_name='premiumAndFees'
1248 )
1249
1250
1251class UWQuestion(BaseModel):
1252 eligible_if = ListType(StringType, required=True, serialized_name='eligibleIf')
1253 decline_if = ListType(StringType, required=True, serialized_name='declineIf')
1254 question_eligibility = StringType(
1255 required=True,
1256 choices=['Undetermined', 'Refer', 'Decline', 'Quotable'],
1257 serialized_name='questionEligibility',
1258 )
1259 question_id = UUIDType(required=True, serialized_name='questionId')
1260 section_key = StringType(required=True, serialized_name='sectionKey')
1261 is_industry_specific = BooleanType(
1262 required=True, serialized_name='isIndustrySpecific'
1263 )
1264 question_text = StringType(required=True, serialized_name='questionText')
1265 question_type = StringType(required=True, serialized_name='questionType')
1266 question_unit = StringType(required=True, serialized_name='questionUnit')
1267 question_unit_symbol = StringType(
1268 required=True, serialized_name='questionUnitSymbol'
1269 )
1270 depends_on = ListType(
1271 ModelType(QuestionDependsOn), required=True, serialized_name='dependsOn'
1272 )
1273 answers = ListType(StringType, required=True)
1274
1275
1276class SectionTitles1(BaseModel):
1277 NO_FIELD_SET = ModelType(SectionInfo, required=True)
1278
1279
1280class UWEligibilityQuestions(BaseModel):
1281 questions = ListType(ModelType(UWQuestion), required=True)
1282 section_titles = DictType(
1283 ModelType(SectionTitles1), required=True, serialized_name='sectionTitles'
1284 )
1285 critical_response_question_ids = ListType(
1286 UUIDType, required=True, serialized_name='criticalResponseQuestionIds'
1287 )
1288 unanswered_question_ids = ListType(
1289 UUIDType, required=True, serialized_name='unansweredQuestionIds'
1290 )
1291
1292
1293class Address(BaseModel):
1294 line1 = StringType(required=True)
1295 line2 = StringType(required=True)
1296 city = StringType(required=True)
1297 zip_ = StringType(required=True, serialized_name='zip')
1298 state = StringType(
1299 required=True,
1300 choices=[
1301 'AL',
1302 'AK',
1303 'AR',
1304 'AZ',
1305 'CA',
1306 'CO',
1307 'CT',
1308 'DC',
1309 'DE',
1310 'FL',
1311 'GA',
1312 'HI',
1313 'IA',
1314 'ID',
1315 'IL',
1316 'IN',
1317 'KS',
1318 'KY',
1319 'LA',
1320 'MA',
1321 'MD',
1322 'ME',
1323 'MI',
1324 'MN',
1325 'MO',
1326 'MS',
1327 'MT',
1328 'NC',
1329 'ND',
1330 'NE',
1331 'NH',
1332 'NJ',
1333 'NM',
1334 'NV',
1335 'NY',
1336 'OK',
1337 'OH',
1338 'OR',
1339 'PA',
1340 'RI',
1341 'SC',
1342 'SD',
1343 'TN',
1344 'TX',
1345 'UT',
1346 'VA',
1347 'VT',
1348 'WA',
1349 'WI',
1350 'WV',
1351 'WY',
1352 'CW',
1353 ],
1354 )
1355 country = StringType(required=True, choices=['US', 'USA'])
1356
1357
1358class Contact(BaseModel):
1359 first_name = StringType(required=True, serialized_name='firstName')
1360 last_name = StringType(required=True, serialized_name='lastName')
1361 phone = StringType(required=True)
1362 email = StringType(required=True)
1363 type_ = StringType(
1364 required=True,
1365 choices=['Accounting', 'Claims', 'Inspection', 'Client', 'Other'],
1366 serialized_name='type',
1367 )
1368
1369
1370class UWEligibilityAnswer(BaseModel):
1371 question_id = UUIDType(required=True, serialized_name='questionId')
1372 answer = StringType(required=True)
1373
1374
1375class UWEmployersLiabilityLimits(BaseModel):
1376 each_accident = IntType(required=True, serialized_name='eachAccident')
1377 each_employee = IntType(required=True, serialized_name='eachEmployee')
1378 each_policy = IntType(required=True, serialized_name='eachPolicy')
1379
1380
1381class UWPriorCarrier(BaseModel):
1382 name = StringType(required=True)
1383 policy_number = StringType(required=True, serialized_name='policyNumber')
1384 effective_date = StringType(required=True, serialized_name='effectiveDate')
1385 expiration_date = StringType(required=True, serialized_name='expirationDate')
1386 total_premium = FloatType(required=True, serialized_name='totalPremium')
1387 lapse_in_period = BooleanType(required=True, serialized_name='lapseInPeriod')
1388 lapse_reason = StringType(
1389 required=True,
1390 choices=['NonPayment', 'AuditNonCompliance', 'NoEmployees', 'Other'],
1391 serialized_name='lapseReason',
1392 )
1393 lapse_reason_description = StringType(
1394 required=True, serialized_name='lapseReasonDescription'
1395 )
1396 non_zero_claim_count = IntType(required=True, serialized_name='nonZeroClaimCount')
1397 zero_claim_count = IntType(required=True, serialized_name='zeroClaimCount')
1398 amount_paid = FloatType(required=True, serialized_name='amountPaid')
1399 amount_reserved = FloatType(required=True, serialized_name='amountReserved')
1400 amount_incurred = FloatType(required=True, serialized_name='amountIncurred')
1401 modification_factor = FloatType(required=True, serialized_name='modificationFactor')
1402 lapsed_reason = StringType(required=True, serialized_name='lapsedReason')
1403
1404
1405class UWExperienceModification(BaseModel):
1406 risk_id = StringType(required=True, serialized_name='riskId')
1407 factor = FloatType(required=True)
1408 type_ = StringType(
1409 required=True,
1410 choices=[
1411 'Actual',
1412 'Contingent',
1413 'Estimated',
1414 'Expiring',
1415 'Preliminary',
1416 'Tentative',
1417 ],
1418 serialized_name='type',
1419 )
1420 date = StringType(required=True)
1421
1422
1423class UWSpecificWaiverOfSubrogation(BaseModel):
1424 name = StringType(required=True)
1425 tax_id = StringType(required=True, serialized_name='taxId')
1426 job_description = StringType(required=True, serialized_name='jobDescription')
1427 address = ModelType(Address, required=True)
1428 payroll = IntType(required=True)
1429
1430
1431class UWExposure(BaseModel):
1432 state = StringType(
1433 required=True,
1434 choices=[
1435 'AL',
1436 'AK',
1437 'AR',
1438 'AZ',
1439 'CA',
1440 'CO',
1441 'CT',
1442 'DC',
1443 'DE',
1444 'FL',
1445 'GA',
1446 'HI',
1447 'IA',
1448 'ID',
1449 'IL',
1450 'IN',
1451 'KS',
1452 'KY',
1453 'LA',
1454 'MA',
1455 'MD',
1456 'ME',
1457 'MI',
1458 'MN',
1459 'MO',
1460 'MS',
1461 'MT',
1462 'NC',
1463 'ND',
1464 'NE',
1465 'NH',
1466 'NJ',
1467 'NM',
1468 'NV',
1469 'NY',
1470 'OK',
1471 'OH',
1472 'OR',
1473 'PA',
1474 'RI',
1475 'SC',
1476 'SD',
1477 'TN',
1478 'TX',
1479 'UT',
1480 'VA',
1481 'VT',
1482 'WA',
1483 'WI',
1484 'WV',
1485 'WY',
1486 'CW',
1487 ],
1488 )
1489 class_ = StringType(required=True)
1490 rate = FloatType(required=True)
1491 payroll = IntType(required=True)
1492 hazard_group = StringType(required=True, serialized_name='hazardGroup')
1493 override_rate = BooleanType(required=True, serialized_name='overrideRate')
1494 specific_waivers_of_subrogation = ListType(
1495 ModelType(UWSpecificWaiverOfSubrogation),
1496 required=True,
1497 serialized_name='specificWaiversOfSubrogation',
1498 )
1499
1500
1501class UWOfficer(BaseModel):
1502 name = StringType(required=True)
1503 duties = StringType(required=True)
1504 class_ = StringType(required=True)
1505 title = StringType(
1506 required=True,
1507 choices=['SoleProprietor', 'Partner', 'CorporateOfficer', 'Other'],
1508 )
1509 ownership_percentage = FloatType(
1510 required=True, serialized_name='ownershipPercentage'
1511 )
1512 birth_date = StringType(required=True, serialized_name='birthDate')
1513 payroll = IntType(required=True)
1514 included = BooleanType(required=True)
1515
1516
1517class UWLocation(BaseModel):
1518 is_primary_location = BooleanType(
1519 required=True, serialized_name='isPrimaryLocation'
1520 )
1521 is_mailing_address = BooleanType(required=True, serialized_name='isMailingAddress')
1522 full_time_employee_count = IntType(
1523 required=True, serialized_name='fullTimeEmployeeCount'
1524 )
1525 part_time_employee_count = IntType(
1526 required=True, serialized_name='partTimeEmployeeCount'
1527 )
1528 contact_name = StringType(required=True, serialized_name='contactName')
1529 phone = StringType(required=True)
1530 address = ModelType(Address, required=True)
1531 exposures = ListType(ModelType(UWExposure), required=True)
1532 officers = ListType(ModelType(UWOfficer), required=True)
1533
1534
1535class UWState(BaseModel):
1536 is_primary_state = BooleanType(required=True, serialized_name='isPrimaryState')
1537 code = StringType(
1538 required=True,
1539 choices=[
1540 'AL',
1541 'AK',
1542 'AR',
1543 'AZ',
1544 'CA',
1545 'CO',
1546 'CT',
1547 'DC',
1548 'DE',
1549 'FL',
1550 'GA',
1551 'HI',
1552 'IA',
1553 'ID',
1554 'IL',
1555 'IN',
1556 'KS',
1557 'KY',
1558 'LA',
1559 'MA',
1560 'MD',
1561 'ME',
1562 'MI',
1563 'MN',
1564 'MO',
1565 'MS',
1566 'MT',
1567 'NC',
1568 'ND',
1569 'NE',
1570 'NH',
1571 'NJ',
1572 'NM',
1573 'NV',
1574 'NY',
1575 'OK',
1576 'OH',
1577 'OR',
1578 'PA',
1579 'RI',
1580 'SC',
1581 'SD',
1582 'TN',
1583 'TX',
1584 'UT',
1585 'VA',
1586 'VT',
1587 'WA',
1588 'WI',
1589 'WV',
1590 'WY',
1591 'CW',
1592 ],
1593 )
1594 drug_free_program = BooleanType(required=True, serialized_name='drugFreeProgram')
1595 managed_care_program = BooleanType(
1596 required=True, serialized_name='managedCareProgram'
1597 )
1598 blanket_waiver = BooleanType(required=True, serialized_name='blanketWaiver')
1599 merit_rating_plan = FloatType(required=True, serialized_name='meritRatingPlan')
1600 small_deductible = IntType(required=True, serialized_name='smallDeductible')
1601 uian = StringType(required=True)
1602 territory_risk_zip_code = StringType(
1603 required=True, serialized_name='territoryRiskZipCode'
1604 )
1605 experience_modification = ModelType(
1606 UWExperienceModification,
1607 required=True,
1608 serialized_name='experienceModification',
1609 )
1610 locations = ListType(ModelType(UWLocation), required=True)
1611
1612
1613class UWLegalEntity(BaseModel):
1614 is_primary_legal_entity = BooleanType(
1615 required=True, serialized_name='isPrimaryLegalEntity'
1616 )
1617 business_type = StringType(
1618 required=True,
1619 choices=[
1620 'Individual',
1621 'Partnership',
1622 'Corporation',
1623 'AssociationLaborUnionReligiousOrganization',
1624 'LimitedPartnership',
1625 'JointVenture',
1626 'CommonOwnership',
1627 'MultipleStatus',
1628 'JointEmployer',
1629 'LimitedLiabilityCompany',
1630 'TrustOrEstate',
1631 'ExecutorOrTrustee',
1632 'LimitedLiabilityPartnership',
1633 'GovernmentEntity',
1634 'Other',
1635 ],
1636 serialized_name='businessType',
1637 )
1638 year_started = IntType(required=True, serialized_name='yearStarted')
1639 name = StringType(required=True)
1640 doing_business_as = ListType(
1641 StringType, required=True, serialized_name='doingBusinessAs'
1642 )
1643 business_description = StringType(
1644 required=True, serialized_name='businessDescription'
1645 )
1646 fein = StringType(required=True)
1647 sic_code = StringType(required=True, serialized_name='sicCode')
1648 naics_code = StringType(required=True, serialized_name='naicsCode')
1649 website = StringType(required=True)
1650 states = ListType(ModelType(UWState), required=True)
1651
1652
1653class UWWorkersCompensation(BaseModel):
1654 currently_covered = BooleanType(required=True, serialized_name='currentlyCovered')
1655 not_currently_covered_reason = StringType(
1656 required=True,
1657 choices=[
1658 'NonPayment',
1659 'AuditNonCompliance',
1660 'NoEmployees',
1661 'Other',
1662 'NewBusiness',
1663 ],
1664 serialized_name='notCurrentlyCoveredReason',
1665 )
1666 not_currently_covered_description = StringType(
1667 required=True, serialized_name='notCurrentlyCoveredDescription'
1668 )
1669 employers_liability = ModelType(
1670 UWEmployersLiabilityLimits, required=True, serialized_name='employersLiability'
1671 )
1672 other_states = ListType(
1673 StringType,
1674 choices=[
1675 'AL',
1676 'AK',
1677 'AR',
1678 'AZ',
1679 'CA',
1680 'CO',
1681 'CT',
1682 'DC',
1683 'DE',
1684 'FL',
1685 'GA',
1686 'HI',
1687 'IA',
1688 'ID',
1689 'IL',
1690 'IN',
1691 'KS',
1692 'KY',
1693 'LA',
1694 'MA',
1695 'MD',
1696 'ME',
1697 'MI',
1698 'MN',
1699 'MO',
1700 'MS',
1701 'MT',
1702 'NC',
1703 'ND',
1704 'NE',
1705 'NH',
1706 'NJ',
1707 'NM',
1708 'NV',
1709 'NY',
1710 'OK',
1711 'OH',
1712 'OR',
1713 'PA',
1714 'RI',
1715 'SC',
1716 'SD',
1717 'TN',
1718 'TX',
1719 'UT',
1720 'VA',
1721 'VT',
1722 'WA',
1723 'WI',
1724 'WV',
1725 'WY',
1726 'CW',
1727 ],
1728 required=True,
1729 serialized_name='otherStates',
1730 )
1731 prior_carriers = ListType(
1732 ModelType(UWPriorCarrier), required=True, serialized_name='priorCarriers'
1733 )
1734 legal_entities = ListType(
1735 ModelType(UWLegalEntity), required=True, serialized_name='legalEntities'
1736 )
1737
1738
1739class UWSubmission(BaseModel):
1740 last_update_source = StringType(
1741 required=True,
1742 choices=[
1743 'unspecified',
1744 'partnerportal',
1745 'api',
1746 'webapp',
1747 'leadgen',
1748 'priceindication',
1749 'testingendpoint',
1750 'salesportal',
1751 'underwritingportal',
1752 ],
1753 serialized_name='lastUpdateSource',
1754 )
1755 source = StringType(
1756 required=True,
1757 choices=[
1758 'unspecified',
1759 'partnerportal',
1760 'api',
1761 'webapp',
1762 'leadgen',
1763 'priceindication',
1764 'testingendpoint',
1765 'salesportal',
1766 'underwritingportal',
1767 ],
1768 )
1769 effective_date = StringType(required=True, serialized_name='effectiveDate')
1770 expiration_date = StringType(required=True, serialized_name='expirationDate')
1771 named_insured = StringType(required=True, serialized_name='namedInsured')
1772 description = StringType(required=True)
1773 coverage_lapsed_or_cancelled = BooleanType(
1774 required=True, serialized_name='coverageLapsedOrCancelled'
1775 )
1776 comments = StringType(required=True)
1777 schedule_modifier_override = FloatType(
1778 required=True, serialized_name='scheduleModifierOverride'
1779 )
1780 decision_status_override = StringType(
1781 required=True,
1782 choices=['Undetermined', 'Refer', 'Decline', 'Quotable'],
1783 serialized_name='decisionStatusOverride',
1784 )
1785 mailing_address = ModelType(
1786 Address, required=True, serialized_name='mailingAddress'
1787 )
1788 contacts = ListType(ModelType(Contact), required=True)
1789 eligibility_answers = ListType(
1790 ModelType(UWEligibilityAnswer),
1791 required=True,
1792 serialized_name='eligibilityAnswers',
1793 )
1794 workers_compensation = ModelType(
1795 UWWorkersCompensation, required=True, serialized_name='workersCompensation'
1796 )
1797
1798
1799class AL(BaseModel):
1800 NO_FIELD_SET = StringType(required=True)
1801
1802
1803class AK(BaseModel):
1804 NO_FIELD_SET = StringType(required=True)
1805
1806
1807class AR(BaseModel):
1808 NO_FIELD_SET = StringType(required=True)
1809
1810
1811class AZ(BaseModel):
1812 NO_FIELD_SET = StringType(required=True)
1813
1814
1815class CA(BaseModel):
1816 NO_FIELD_SET = StringType(required=True)
1817
1818
1819class CO(BaseModel):
1820 NO_FIELD_SET = StringType(required=True)
1821
1822
1823class CT(BaseModel):
1824 NO_FIELD_SET = StringType(required=True)
1825
1826
1827class DC(BaseModel):
1828 NO_FIELD_SET = StringType(required=True)
1829
1830
1831class DE(BaseModel):
1832 NO_FIELD_SET = StringType(required=True)
1833
1834
1835class FL(BaseModel):
1836 NO_FIELD_SET = StringType(required=True)
1837
1838
1839class GA(BaseModel):
1840 NO_FIELD_SET = StringType(required=True)
1841
1842
1843class HI(BaseModel):
1844 NO_FIELD_SET = StringType(required=True)
1845
1846
1847class IA(BaseModel):
1848 NO_FIELD_SET = StringType(required=True)
1849
1850
1851class ID(BaseModel):
1852 NO_FIELD_SET = StringType(required=True)
1853
1854
1855class IL(BaseModel):
1856 NO_FIELD_SET = StringType(required=True)
1857
1858
1859class IN(BaseModel):
1860 NO_FIELD_SET = StringType(required=True)
1861
1862
1863class KS(BaseModel):
1864 NO_FIELD_SET = StringType(required=True)
1865
1866
1867class KY(BaseModel):
1868 NO_FIELD_SET = StringType(required=True)
1869
1870
1871class LA(BaseModel):
1872 NO_FIELD_SET = StringType(required=True)
1873
1874
1875class MA(BaseModel):
1876 NO_FIELD_SET = StringType(required=True)
1877
1878
1879class MD(BaseModel):
1880 NO_FIELD_SET = StringType(required=True)
1881
1882
1883class ME(BaseModel):
1884 NO_FIELD_SET = StringType(required=True)
1885
1886
1887class MI(BaseModel):
1888 NO_FIELD_SET = StringType(required=True)
1889
1890
1891class MN(BaseModel):
1892 NO_FIELD_SET = StringType(required=True)
1893
1894
1895class MO(BaseModel):
1896 NO_FIELD_SET = StringType(required=True)
1897
1898
1899class MS(BaseModel):
1900 NO_FIELD_SET = StringType(required=True)
1901
1902
1903class MT(BaseModel):
1904 NO_FIELD_SET = StringType(required=True)
1905
1906
1907class NC(BaseModel):
1908 NO_FIELD_SET = StringType(required=True)
1909
1910
1911class ND(BaseModel):
1912 NO_FIELD_SET = StringType(required=True)
1913
1914
1915class NE(BaseModel):
1916 NO_FIELD_SET = StringType(required=True)
1917
1918
1919class NH(BaseModel):
1920 NO_FIELD_SET = StringType(required=True)
1921
1922
1923class NJ(BaseModel):
1924 NO_FIELD_SET = StringType(required=True)
1925
1926
1927class NM(BaseModel):
1928 NO_FIELD_SET = StringType(required=True)
1929
1930
1931class NV(BaseModel):
1932 NO_FIELD_SET = StringType(required=True)
1933
1934
1935class NY(BaseModel):
1936 NO_FIELD_SET = StringType(required=True)
1937
1938
1939class OK(BaseModel):
1940 NO_FIELD_SET = StringType(required=True)
1941
1942
1943class OH(BaseModel):
1944 NO_FIELD_SET = StringType(required=True)
1945
1946
1947class OR(BaseModel):
1948 NO_FIELD_SET = StringType(required=True)
1949
1950
1951class PA(BaseModel):
1952 NO_FIELD_SET = StringType(required=True)
1953
1954
1955class RI(BaseModel):
1956 NO_FIELD_SET = StringType(required=True)
1957
1958
1959class SC(BaseModel):
1960 NO_FIELD_SET = StringType(required=True)
1961
1962
1963class SD(BaseModel):
1964 NO_FIELD_SET = StringType(required=True)
1965
1966
1967class TN(BaseModel):
1968 NO_FIELD_SET = StringType(required=True)
1969
1970
1971class TX(BaseModel):
1972 NO_FIELD_SET = StringType(required=True)
1973
1974
1975class UT(BaseModel):
1976 NO_FIELD_SET = StringType(required=True)
1977
1978
1979class VA(BaseModel):
1980 NO_FIELD_SET = StringType(required=True)
1981
1982
1983class VT(BaseModel):
1984 NO_FIELD_SET = StringType(required=True)
1985
1986
1987class WA(BaseModel):
1988 NO_FIELD_SET = StringType(required=True)
1989
1990
1991class WI(BaseModel):
1992 NO_FIELD_SET = StringType(required=True)
1993
1994
1995class WV(BaseModel):
1996 NO_FIELD_SET = StringType(required=True)
1997
1998
1999class WY(BaseModel):
2000 NO_FIELD_SET = StringType(required=True)
2001
2002
2003class CW(BaseModel):
2004 NO_FIELD_SET = StringType(required=True)
2005
2006
2007class ClassCodeDescriptions(BaseModel):
2008 al = DictType(ModelType(AL), required=True, serialized_name='AL')
2009 ak = DictType(ModelType(AK), required=True, serialized_name='AK')
2010 ar = DictType(ModelType(AR), required=True, serialized_name='AR')
2011 az = DictType(ModelType(AZ), required=True, serialized_name='AZ')
2012 ca = DictType(ModelType(CA), required=True, serialized_name='CA')
2013 co = DictType(ModelType(CO), required=True, serialized_name='CO')
2014 ct = DictType(ModelType(CT), required=True, serialized_name='CT')
2015 dc = DictType(ModelType(DC), required=True, serialized_name='DC')
2016 de = DictType(ModelType(DE), required=True, serialized_name='DE')
2017 fl = DictType(ModelType(FL), required=True, serialized_name='FL')
2018 ga = DictType(ModelType(GA), required=True, serialized_name='GA')
2019 hi = DictType(ModelType(HI), required=True, serialized_name='HI')
2020 ia = DictType(ModelType(IA), required=True, serialized_name='IA')
2021 id_ = DictType(ModelType(ID), required=True, serialized_name='ID')
2022 il = DictType(ModelType(IL), required=True, serialized_name='IL')
2023 in_ = DictType(ModelType(IN), required=True, serialized_name='IN')
2024 ks = DictType(ModelType(KS), required=True, serialized_name='KS')
2025 ky = DictType(ModelType(KY), required=True, serialized_name='KY')
2026 la = DictType(ModelType(LA), required=True, serialized_name='LA')
2027 ma = DictType(ModelType(MA), required=True, serialized_name='MA')
2028 md = DictType(ModelType(MD), required=True, serialized_name='MD')
2029 me = DictType(ModelType(ME), required=True, serialized_name='ME')
2030 mi = DictType(ModelType(MI), required=True, serialized_name='MI')
2031 mn = DictType(ModelType(MN), required=True, serialized_name='MN')
2032 mo = DictType(ModelType(MO), required=True, serialized_name='MO')
2033 ms = DictType(ModelType(MS), required=True, serialized_name='MS')
2034 mt = DictType(ModelType(MT), required=True, serialized_name='MT')
2035 nc = DictType(ModelType(NC), required=True, serialized_name='NC')
2036 nd = DictType(ModelType(ND), required=True, serialized_name='ND')
2037 ne = DictType(ModelType(NE), required=True, serialized_name='NE')
2038 nh = DictType(ModelType(NH), required=True, serialized_name='NH')
2039 nj = DictType(ModelType(NJ), required=True, serialized_name='NJ')
2040 nm = DictType(ModelType(NM), required=True, serialized_name='NM')
2041 nv = DictType(ModelType(NV), required=True, serialized_name='NV')
2042 ny = DictType(ModelType(NY), required=True, serialized_name='NY')
2043 ok = DictType(ModelType(OK), required=True, serialized_name='OK')
2044 oh = DictType(ModelType(OH), required=True, serialized_name='OH')
2045 or_ = DictType(ModelType(OR), required=True, serialized_name='OR')
2046 pa = DictType(ModelType(PA), required=True, serialized_name='PA')
2047 ri = DictType(ModelType(RI), required=True, serialized_name='RI')
2048 sc = DictType(ModelType(SC), required=True, serialized_name='SC')
2049 sd = DictType(ModelType(SD), required=True, serialized_name='SD')
2050 tn = DictType(ModelType(TN), required=True, serialized_name='TN')
2051 tx = DictType(ModelType(TX), required=True, serialized_name='TX')
2052 ut = DictType(ModelType(UT), required=True, serialized_name='UT')
2053 va = DictType(ModelType(VA), required=True, serialized_name='VA')
2054 vt = DictType(ModelType(VT), required=True, serialized_name='VT')
2055 wa = DictType(ModelType(WA), required=True, serialized_name='WA')
2056 wi = DictType(ModelType(WI), required=True, serialized_name='WI')
2057 wv = DictType(ModelType(WV), required=True, serialized_name='WV')
2058 wy = DictType(ModelType(WY), required=True, serialized_name='WY')
2059 cw = DictType(ModelType(CW), required=True, serialized_name='CW')
2060
2061
2062class UWDecisionResponse(BaseModel):
2063 is_draft = BooleanType(required=True, serialized_name='isDraft')
2064 status = ModelType(PortalDecisionStatusUWOverrideable, required=True)
2065 status_reason = StringType(required=True, serialized_name='statusReason')
2066 schedule_modification_factor = ModelType(
2067 DecimalNullableUWOverrideable,
2068 required=True,
2069 serialized_name='scheduleModificationFactor',
2070 )
2071 primary_state_max_rate = FloatType(
2072 required=True, serialized_name='primaryStateMaxRate'
2073 )
2074 primary_state_min_rate = FloatType(
2075 required=True, serialized_name='primaryStateMinRate'
2076 )
2077 valen_bin = IntType(required=True, serialized_name='valenBin')
2078 valen_premium_estimate = FloatType(
2079 required=True, serialized_name='valenPremiumEstimate'
2080 )
2081 valen_market_premium_estimate = FloatType(
2082 required=True, serialized_name='valenMarketPremiumEstimate'
2083 )
2084 valen_modifier = FloatType(required=True, serialized_name='valenModifier')
2085 valen_original_score = FloatType(
2086 required=True, serialized_name='valenOriginalScore'
2087 )
2088 valen_transformed_score = FloatType(
2089 required=True, serialized_name='valenTransformedScore'
2090 )
2091 valen_companion_classes = ListType(
2092 StringType, required=True, serialized_name='valenCompanionClasses'
2093 )
2094 loss_history_requirement = StringType(
2095 required=True,
2096 choices=['Undetermined', 'Refer', 'Decline', 'Quotable'],
2097 serialized_name='lossHistoryRequirement',
2098 )
2099 minimum_payroll_requirement = StringType(
2100 required=True,
2101 choices=['Undetermined', 'Refer', 'Decline', 'Quotable'],
2102 serialized_name='minimumPayrollRequirement',
2103 )
2104 premium_requirement = StringType(
2105 required=True,
2106 choices=['Undetermined', 'Refer', 'Decline', 'Quotable'],
2107 serialized_name='premiumRequirement',
2108 )
2109 schedule_modifier_requirement = StringType(
2110 required=True,
2111 choices=['Undetermined', 'Refer', 'Decline', 'Quotable'],
2112 serialized_name='scheduleModifierRequirement',
2113 )
2114 class_requirement = StringType(
2115 required=True,
2116 choices=['Undetermined', 'Refer', 'Decline', 'Quotable'],
2117 serialized_name='classRequirement',
2118 )
2119 payment_information = ModelType(
2120 UWPaymentInformation, required=True, serialized_name='paymentInformation'
2121 )
2122 premium_breakdown = ModelType(
2123 UWPremiumBreakdown, required=True, serialized_name='premiumBreakdown'
2124 )
2125 eligibility_questions = ModelType(
2126 UWEligibilityQuestions, required=True, serialized_name='eligibilityQuestions'
2127 )
2128 class_code_descriptions = ModelType(
2129 ClassCodeDescriptions, required=True, serialized_name='classCodeDescriptions'
2130 )
2131 last_modified = StringType(required=True, serialized_name='lastModified')
2132 decision_workflow_status = StringType(
2133 required=True,
2134 choices=[
2135 'Unspecified',
2136 'Draft',
2137 'Cancelled',
2138 'Published',
2139 'Bind_Requested',
2140 'Locked',
2141 ],
2142 serialized_name='decisionWorkflowStatus',
2143 )
2144 last_policy_processed_on = StringType(
2145 required=True, serialized_name='lastPolicyProcessedOn'
2146 )
2147 policy_processed_successfully = BooleanType(
2148 required=True, serialized_name='policyProcessedSuccessfully'
2149 )
2150 decision_id = UUIDType(required=True, serialized_name='decisionId')
2151 submission = ModelType(UWSubmission, required=True)
2152
2153
2154class UWDecisionsResponse(BaseModel):
2155 submission_id = UUIDType(required=True, serialized_name='submissionId')
2156 latest_decision = ModelType(
2157 UWDecisionResponse, required=True, serialized_name='latestDecision'
2158 )
2159
2160
2161class UWRerateRequest(BaseModel):
2162 decision_id = UUIDType(required=True, serialized_name='decisionId')
2163 submission = ModelType(UWSubmission, required=True)
2164
2165
2166class LocationWarningsRequest(BaseModel):
2167 insured_address = ModelType(
2168 PortalAddress, required=True, serialized_name='insuredAddress'
2169 )
2170 additional_locations = ListType(
2171 ModelType(PortalAddress), required=True, serialized_name='additionalLocations'
2172 )
2173
2174
2175class WarningsResponse(BaseModel):
2176 warnings = ListType(
2177 StringType, choices=['Invalid', 'MultipleCaliforniaZips'], required=True
2178 )
2179