Pie Insurance Quotes API

The Quotes API from Pie Insurance — 2 operation(s) for quotes.

OpenAPI Specification

pie-insurance-quotes-api-openapi.yml Raw ↑
openapi: 3.0.4
info:
  title: Pie Insurance Quote Api Appetite Quotes API
  version: v1
servers:
- url: https://api.post-prod.pieinsurance.com/api/v1
security:
- bearer: []
tags:
- name: Quotes
paths:
  /Quotes:
    post:
      tags:
      - Quotes
      summary: ''
      parameters:
      - name: agencyCode
        in: query
        description: An optional query param to submit an Agency Code in addition to the IdToken
        schema:
          type: string
      requestBody:
        description: QuoteRequestPost
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/QuoteRequestPost'
            example:
              namedInsured: Example Company
              effectiveDate: Wednesday, May 27, 2026
              expirationDate: Thursday, May 27, 2027
              description: A very useful company
              workersCompensation:
                currentlyCovered: true
                legalEntities:
                - businessType: Corporation
                  states:
                  - code: MD
                    experienceModification:
                      factor: 1.0
                      type: Actual
                      date: '2014-05-20'
                      riskId: RiskId
                    locations:
                    - address:
                        state: MD
                        country: US
                        shortZipCode: '21201'
                        line1: 123 Main St.
                        line2: Suite 300
                        city: Baltimore
                        zip: '21201'
                      exposure:
                      - payroll: 10000
                        class: '9083'
                      - payroll: 10000
                        class: '9083'
                      officers:
                      - ownershipPercentage: 50.0
                        birthDate: '1969-01-20'
                        name: Bob Businessman
                      - ownershipPercentage: 50.0
                        birthDate: '1996-01-20'
                        name: John Doe
                      fullTimeEmployeeCount: 25
                      partTimeEmployeeCount: 5
                    - address:
                        state: MD
                        country: US
                        shortZipCode: '21217'
                        line1: 456 2nd St.
                        line2: Suite 400
                        city: Baltimore
                        zip: '21217'
                      exposure:
                      - payroll: 10000
                        class: '9083'
                      - payroll: 10000
                        class: '9083'
                      officers:
                      - ownershipPercentage: 50.0
                        birthDate: '1969-01-20'
                        name: John Franchisee
                      fullTimeEmployeeCount: 25
                      partTimeEmployeeCount: 5
                    uian: '1111'
                  name: Bob Businessman
                  doingBusinessAs:
                  - Bob's Burgers
                  taxId: '951234567'
                employersLiability:
                  eachAccident: 100000
                  eachEmployee: 100000
                  eachPolicy: 500000
                priorCarriers:
                - effectiveDate: '2023-05-27'
                  expirationDate: '2024-05-27'
                  totalPremium: 20420.75
                  lapseInPeriod: false
                  nonZeroClaimCount: 1
                  zeroClaimCount: 0
                  amountPaid: 10000.0
                  amountReserved: 10000.0
                  amountIncurred: 100.0
                  modificationFactor: 0.5
                  name: Brownie Insurance
                  policyNumber: '1234567890'
                - effectiveDate: '2025-05-27'
                  expirationDate: '2026-05-27'
                  totalPremium: 5000.75
                  lapseInPeriod: false
                  nonZeroClaimCount: 0
                  zeroClaimCount: 0
                  amountPaid: 0.0
                  amountReserved: 0.0
                  amountIncurred: 100.0
                  modificationFactor: 0.5
                  name: Cookie Insurance
                  policyNumber: 0987654321
              mailingAddress:
                state: MD
                country: US
                shortZipCode: '21201'
                line1: 123 Main St.
                line2: Suite 300
                city: Baltimore
                zip: '21201'
              contacts:
              - type: Claims
                firstName: John
                lastName: Doe
                phone: 555-555-5555
                email: test@email.com
              - type: Accounting
                firstName: Jane
                lastName: Doe
                phone: 555-555-5555
                email: jane@email.com
              eligibilityAnswers:
              - id: 3ce48d82-963d-4477-a850-2f34d7df0583
                answer: 'No'
              - id: 6936feea-92eb-426c-ad36-3e195652801d
                answer: 'No'
              - id: a4943dd7-2e04-41ad-8d49-f0353517f3be
                answer: 'No'
              - id: c245550f-7722-4e2e-9d49-bfef864ff1ae
                answer: 'No'
              - id: d3985c52-9012-4278-9649-23b33da936b5
                answer: 'No'
              - id: ee222b96-45f3-4843-a2dd-7514c182b05d
                answer: 'No'
              - id: fa056329-55ff-49bf-97b5-f50a59fa94a6
                answer: 'No'
      responses:
        '500':
          description: Internal Server Error
        '501':
          description: Not Implemented
        '502':
          description: Bad Gateway
        '503':
          description: Service Unavailable
        '504':
          description: Gateway Timeout
        '505':
          description: HTTP Version Not Supported
        '200':
          description: Valid Request - But we can’t generate a quote bid for the given reason
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/QuoteDeclineResponse'
        '201':
          description: Created
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/QuoteResponse'
              example:
                referReasons:
                - no ReferReasons
                declineReasons:
                - no DeclineReasons
                namedInsured: MSF Hotdog LTD
                insuredAddress:
                  line1: 40 W Littleton Blvd Ste 211
                  city: Beverly Hills
                  state: CA
                  zip: '90210'
                agencyId: 08deba69-6030-fbd6-a82b-ef00017ebf40
                effectiveDate: '2026-05-30'
                employersLiabilityLimits:
                  eachAccident: 1000000
                  eachEmployee: 1000000
                  eachPolicy: 1000000
                quoteDate: '2026-05-25'
                insuranceCompany: Insurance Company
                classCodeQuotes:
                - classCode: '2759'
                  description: BOX OR BOX SHOOK MFG
                  payroll: 300000
                  premium: 0
                  rate: 0.0
                  percentageOfPayroll: 0.0
                stateQuotes:
                - experienceModifierInput: 0.0
                  scheduleModifierFactor: 0.0
                  catastrophe: 30.0
                  classPremium: 30930.0
                  expenseConstant: 0.0
                  minimumPremium: 0
                  modifiedPremium: 0
                  policyTotalEstimatedCost: 29588.0
                  premiumDiscount: 200
                  scheduleModifier: 0.0
                  standardPremium: 0
                  subjectPremium: 0
                  totalTaxesAndAssessments: 0.0
                  terrorism: 90.0
                  totalEstimatedPremium: 29292.0
                premiumDetails:
                  catastrophe: 13.0
                  classPremium: 1787.0
                  expenseConstant: 160.0
                  experienceModifier: 0.0
                  liabilityLimits: 120
                  minimumPremium: 1805
                  modifiedPremium: 2264
                  policyTotalEstimatedCost: 2081.0
                  premiumDiscount: 0
                  scheduleModifier: -453.0
                  standardPremium: 1811
                  subjectPremium: 2264
                  taxesAndAssessments:
                  - code: CAWCARF
                    description: Workers' Compensation Administration Revolving Fund
                    rate: 0.01704
                    premium: 34
                  totalTaxesAndAssessments: 70.0
                  terrorism: 27.0
                  totalEstimatedPremium: 2011.0
                  blanketWaiver: 0
                  specificWaiver: 0
                  territoryModifier: 357
                installments:
                  full:
                    '2026-05-30':
                      premiumAmount: 2011
                      surchargeAmount: 70
                      totalAmount: 2081
                  monthly:
                    '2026-05-30':
                      premiumAmount: 2011
                      surchargeAmount: 70
                      totalAmount: 2081
                  quarterly:
                    '2026-05-30':
                      premiumAmount: 2011
                      surchargeAmount: 70
                      totalAmount: 2081
                  semiannual:
                    '2026-05-30':
                      premiumAmount: 2011
                      surchargeAmount: 70
                      totalAmount: 2081
                isDirty: false
                instantBindStatus: Unspecified
                bindStatus: Quotable
        '400':
          description: Bad request - usually malformed message or header
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ValidationProblemDetails'
        '401':
          description: Unauthorized - Invalid agency code provided
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ValidationProblemDetails'
      security:
      - bearer: []
  /Quotes/{id}:
    get:
      tags:
      - Quotes
      summary: ''
      parameters:
      - name: id
        in: path
        description: ''
        required: true
        schema:
          type: string
          format: uuid
      responses:
        '500':
          description: Internal Server Error
        '501':
          description: Not Implemented
        '502':
          description: Bad Gateway
        '503':
          description: Service Unavailable
        '504':
          description: Gateway Timeout
        '505':
          description: HTTP Version Not Supported
        '200':
          description: Returns QuoteResponse object
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/QuoteResponse'
              example:
                referReasons:
                - no ReferReasons
                declineReasons:
                - no DeclineReasons
                namedInsured: MSF Hotdog LTD
                insuredAddress:
                  line1: 40 W Littleton Blvd Ste 211
                  city: Beverly Hills
                  state: CA
                  zip: '90210'
                agencyId: 08deba69-6031-5aea-a82b-ef00017ebf42
                effectiveDate: '2026-05-30'
                employersLiabilityLimits:
                  eachAccident: 1000000
                  eachEmployee: 1000000
                  eachPolicy: 1000000
                quoteDate: '2026-05-25'
                insuranceCompany: Insurance Company
                classCodeQuotes:
                - classCode: '2759'
                  description: BOX OR BOX SHOOK MFG
                  payroll: 300000
                  premium: 0
                  rate: 0.0
                  percentageOfPayroll: 0.0
                stateQuotes:
                - experienceModifierInput: 0.0
                  scheduleModifierFactor: 0.0
                  catastrophe: 30.0
                  classPremium: 30930.0
                  expenseConstant: 0.0
                  minimumPremium: 0
                  modifiedPremium: 0
                  policyTotalEstimatedCost: 29588.0
                  premiumDiscount: 200
                  scheduleModifier: 0.0
                  standardPremium: 0
                  subjectPremium: 0
                  totalTaxesAndAssessments: 0.0
                  terrorism: 90.0
                  totalEstimatedPremium: 29292.0
                premiumDetails:
                  catastrophe: 13.0
                  classPremium: 1787.0
                  expenseConstant: 160.0
                  experienceModifier: 0.0
                  liabilityLimits: 120
                  minimumPremium: 1805
                  modifiedPremium: 2264
                  policyTotalEstimatedCost: 2081.0
                  premiumDiscount: 0
                  scheduleModifier: -453.0
                  standardPremium: 1811
                  subjectPremium: 2264
                  taxesAndAssessments:
                  - code: CAWCARF
                    description: Workers' Compensation Administration Revolving Fund
                    rate: 0.01704
                    premium: 34
                  totalTaxesAndAssessments: 70.0
                  terrorism: 27.0
                  totalEstimatedPremium: 2011.0
                  blanketWaiver: 0
                  specificWaiver: 0
                  territoryModifier: 357
                installments:
                  full:
                    '2026-05-30':
                      premiumAmount: 2011
                      surchargeAmount: 70
                      totalAmount: 2081
                  monthly:
                    '2026-05-30':
                      premiumAmount: 2011
                      surchargeAmount: 70
                      totalAmount: 2081
                  quarterly:
                    '2026-05-30':
                      premiumAmount: 2011
                      surchargeAmount: 70
                      totalAmount: 2081
                  semiannual:
                    '2026-05-30':
                      premiumAmount: 2011
                      surchargeAmount: 70
                      totalAmount: 2081
                isDirty: false
                instantBindStatus: Unspecified
                bindStatus: Quotable
        '404':
          description: Quote can't be found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ProblemDetails'
      security:
      - bearer: []
    put:
      tags:
      - Quotes
      summary: ''
      parameters:
      - name: id
        in: path
        description: ''
        required: true
        schema:
          type: string
          format: uuid
      - name: agencyCode
        in: query
        description: An optional query param to submit an AgencyCode in addition to the IdToken
        schema:
          type: string
      requestBody:
        description: QuoteRequestPost
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/QuoteRequestPut'
      responses:
        '500':
          description: Internal Server Error
        '501':
          description: Not Implemented
        '502':
          description: Bad Gateway
        '503':
          description: Service Unavailable
        '504':
          description: Gateway Timeout
        '505':
          description: HTTP Version Not Supported
        '201':
          description: Created
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/QuoteResponse'
              example:
                referReasons:
                - no ReferReasons
                declineReasons:
                - no DeclineReasons
                namedInsured: MSF Hotdog LTD
                insuredAddress:
                  line1: 40 W Littleton Blvd Ste 211
                  city: Beverly Hills
                  state: CA
                  zip: '90210'
                agencyId: 08deba69-6031-f46c-a82b-ef00017ebf44
                effectiveDate: '2026-05-30'
                employersLiabilityLimits:
                  eachAccident: 1000000
                  eachEmployee: 1000000
                  eachPolicy: 1000000
                quoteDate: '2026-05-25'
                insuranceCompany: Insurance Company
                classCodeQuotes:
                - classCode: '2759'
                  description: BOX OR BOX SHOOK MFG
                  payroll: 300000
                  premium: 0
                  rate: 0.0
                  percentageOfPayroll: 0.0
                stateQuotes:
                - experienceModifierInput: 0.0
                  scheduleModifierFactor: 0.0
                  catastrophe: 30.0
                  classPremium: 30930.0
                  expenseConstant: 0.0
                  minimumPremium: 0
                  modifiedPremium: 0
                  policyTotalEstimatedCost: 29588.0
                  premiumDiscount: 200
                  scheduleModifier: 0.0
                  standardPremium: 0
                  subjectPremium: 0
                  totalTaxesAndAssessments: 0.0
                  terrorism: 90.0
                  totalEstimatedPremium: 29292.0
                premiumDetails:
                  catastrophe: 13.0
                  classPremium: 1787.0
                  expenseConstant: 160.0
                  experienceModifier: 0.0
                  liabilityLimits: 120
                  minimumPremium: 1805
                  modifiedPremium: 2264
                  policyTotalEstimatedCost: 2081.0
                  premiumDiscount: 0
                  scheduleModifier: -453.0
                  standardPremium: 1811
                  subjectPremium: 2264
                  taxesAndAssessments:
                  - code: CAWCARF
                    description: Workers' Compensation Administration Revolving Fund
                    rate: 0.01704
                    premium: 34
                  totalTaxesAndAssessments: 70.0
                  terrorism: 27.0
                  totalEstimatedPremium: 2011.0
                  blanketWaiver: 0
                  specificWaiver: 0
                  territoryModifier: 357
                installments:
                  full:
                    '2026-05-30':
                      premiumAmount: 2011
                      surchargeAmount: 70
                      totalAmount: 2081
                  monthly:
                    '2026-05-30':
                      premiumAmount: 2011
                      surchargeAmount: 70
                      totalAmount: 2081
                  quarterly:
                    '2026-05-30':
                      premiumAmount: 2011
                      surchargeAmount: 70
                      totalAmount: 2081
                  semiannual:
                    '2026-05-30':
                      premiumAmount: 2011
                      surchargeAmount: 70
                      totalAmount: 2081
                isDirty: false
                instantBindStatus: Unspecified
                bindStatus: Quotable
        '400':
          description: Bad request - usually malformed message or header
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ValidationProblemDetails'
        '401':
          description: Unauthorized - Invalid agency code provided
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ValidationProblemDetails'
        '404':
          description: Quote can't be found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ProblemDetails'
        '200':
          description: Returns QuoteResponse object
      security:
      - bearer: []
components:
  schemas:
    ClassCodeQuote:
      required:
      - classCode
      - description
      - payroll
      - percentageOfPayroll
      - premium
      - rate
      - state
      type: object
      properties:
        classCode:
          type: string
        description:
          type: string
        payroll:
          type: integer
          format: int32
        state:
          type: string
        premium:
          type: integer
          format: int32
        rate:
          type: number
          format: double
        percentageOfPayroll:
          type: number
          format: double
      additionalProperties: false
    ContactTypes:
      enum:
      - Accounting
      - Claims
      - Inspection
      - Client
      - Other
      type: string
    Countries:
      enum:
      - US
      - USA
      type: string
    States:
      enum:
      - AL
      - AK
      - AR
      - AZ
      - CA
      - CO
      - CT
      - DC
      - DE
      - FL
      - GA
      - HI
      - IA
      - ID
      - IL
      - IN
      - KS
      - KY
      - LA
      - MA
      - MD
      - ME
      - MI
      - MN
      - MO
      - MS
      - MT
      - NC
      - ND
      - NE
      - NH
      - NJ
      - NM
      - NV
      - NY
      - OK
      - OH
      - OR
      - PA
      - RI
      - SC
      - SD
      - TN
      - TX
      - UT
      - VA
      - VT
      - WA
      - WI
      - WV
      - WY
      - CW
      type: string
    QuoteResponse:
      required:
      - agencyId
      - classCodeQuotes
      - effectiveDate
      - employersLiabilityLimits
      - installments
      - insuranceCompany
      - insuredAddress
      - namedInsured
      - premiumDetails
      - quoteDate
      - stateQuotes
      type: object
      properties:
        referReasons:
          type: array
          items:
            type: string
          nullable: true
        declineReasons:
          type: array
          items:
            type: string
          nullable: true
        namedInsured:
          type: string
        insuredAddress:
          $ref: '#/components/schemas/BusinessAddress'
        agencyId:
          type: string
          format: uuid
        effectiveDate:
          type: string
        employersLiabilityLimits:
          $ref: '#/components/schemas/EmployersLiabilityLimits'
        quoteDate:
          type: string
        insuranceCompany:
          type: string
        classCodeQuotes:
          type: array
          items:
            $ref: '#/components/schemas/ClassCodeQuote'
        stateQuotes:
          type: array
          items:
            $ref: '#/components/schemas/StateQuote'
        primaryStateQuotes:
          type: array
          items:
            $ref: '#/components/schemas/StateQuote'
          nullable: true
        premiumDetails:
          $ref: '#/components/schemas/PremiumDetails'
        installments:
          type: object
          properties:
            full:
              type: object
              additionalProperties:
                $ref: '#/components/schemas/Payment'
            semiannual:
              type: object
              additionalProperties:
                $ref: '#/components/schemas/Payment'
            quarterly:
              type: object
              additionalProperties:
                $ref: '#/components/schemas/Payment'
            monthly:
              type: object
              additionalProperties:
                $ref: '#/components/schemas/Payment'
          additionalProperties: false
        isDirty:
          type: boolean
        warningMessage:
          type: string
          nullable: true
        contacts:
          type: array
          items:
            $ref: '#/components/schemas/Contact'
          nullable: true
        instantBindStatus:
          $ref: '#/components/schemas/InstantBindStatus'
        bindStatus:
          $ref: '#/components/schemas/BindStatus'
      additionalProperties: false
    ValidationProblemDetails:
      type: object
      properties:
        errors:
          type: object
          additionalProperties:
            type: array
            items:
              type: string
          nullable: true
        type:
          type: string
          nullable: true
        title:
          type: string
          nullable: true
        status:
          type: integer
          format: int32
          nullable: true
        detail:
          type: string
          nullable: true
        instance:
          type: string
          nullable: true
        extensions:
          type: object
          additionalProperties:
            nullable: true
          nullable: true
      additionalProperties: false
    NotCoveredReason:
      enum:
      - NonPayment
      - AuditNonCompliance
      - NoEmployees
      - Other
      - NewBusiness
      type: string
    WorkCompPolicyPost:
      title: WorkCompPolicy
      type: object
      properties:
        currentlyCovered:
          type: boolean
          description: Are you currently covered by Worker's Compensation Policy if false then supply a reason
          nullable: true
        notCurrentlyCoveredReason:
          $ref: '#/components/schemas/NotCoveredReason'
        notCurrentlyCoveredDescription:
          type: string
          description: Provide description when notCurrentlyCoveredReason is ‘Other’ or when there is additional lapse information available.
          nullable: true
        legalEntities:
          type: array
          items:
            $ref: '#/components/schemas/QuoteLegalEntityPost'
          description: Only 1 legal entity is allowed
          nullable: true
        employersLiability:
          $ref: '#/components/schemas/EmployersLiabilityLimitsPost'
        priorCarriers:
          type: array
          items:
            $ref: '#/components/schemas/PriorCarrierPost'
          nullable: true
      additionalProperties: false
    QuoteDeclineResponse:
      type: object
      properties:
        declineReasons:
          type: array
          items:
            type: string
          nullable: true
        bindStatus:
          $ref: '#/components/schemas/BindStatus'
      additionalProperties: false
    StateQuote:
      required:
      - catastrophe
      - classPremium
      - expenseConstant
      - experienceModifier
      - experienceModifierInput
      - minimumPremium
      - modifiedPremium
      - policyTotalEstimatedCost
      - premiumDiscount
      - scheduleModifier
      - scheduleModifierFactor
      - standardPremium
      - state
      - subjectPremium
      - taxesAndAssessments
      - territoryModifier
      - terrorism
      - totalEstimatedPremium
      - totalTaxesAndAssessments
      type: object
      properties:
        catastropheRate:
          type: number
          format: double
          nullable: true
        deductible:
          type: integer
          format: int32
          nullable: true
        experienceModifierInput:
          type: number
          format: double
        scheduleModifierFactor:
          type: number
          format: double
        state:
          type: string
        terrorismRiskInsuranceAct:
          type: number
          format: double
          nullable: true
        premiumDiscountRate:
          type: number
          format: double
          nullable: true
        territoryModifierFactor:
          type: number
          format: double
          nullable: true
        balanceToMinimumPremium:
          type: integer
          format: int32
          nullable: true
        dividendFactor:
          type: number
          format: double
          nullable: true
        catastrophe:
          type: number
          format: double
        classPremium:
          type: number
          format: double
        expenseConstant:
          type: number
          format: double
        experienceModifier:
          type: number
          format: double
        liabilityLimits:
          type: integer
          format: int32
          nullable: true
        minimumPremium:
          type: integer
          format: int32
        modifiedPremium:
          type: integer
          format: int32
        policyTotalEstimatedCost:
          type: number
          format: double
        premiumDiscount:
          type: integer
          format: int32
        scheduleModifier:
          type: number
          format: double
        standardPremium:
          type: integer
          format: int32
        subjectPremium:
          type: integer
          format: int32
        taxesAndAssessments:
          type: array
          items:
            $ref: '#/components/schemas/TaxDetails'
        totalTaxesAndAssessments:
          type: number
          format: double
        terrorism:
          type: number
          format: double
        totalEstimatedPremium:
          type: number
          format: double
        blanketWaiver:
          type: integer
          format: int32
          nullable: true
        specificWaiver:
          type: integer
          format: int32
          nullable: true
        territoryModifier:
          type: integer
          format: int32
      additionalProperties: false
    TaxDetails:
      type: object
      properties:
        code:
          type: string
          nullable: true
        description:
          type: string
          nullable: true
        rate:
          type: number
          format: double
        premium:
          type: integer
          format: int32
      additionalProperties: false
    QuoteExposurePost:
      title: Exposure
      type: object
      properties:
        class:
          type: string
          description: "Subclasses not currently accepted\n \n Must be integer with 1-4 digits"
          nullable: true
        payroll:
          type: integer
          description: Valid range is >= 0 and less than 1,000,000,000
          format: int32
          nullable: true
      additionalProperties: false
    InstantBindStatus:
      enum:
      - Unspecified
      - Ineligible
      - Eligible
      - Pending
      - Failed
      - Succeeded
      type: string
    BusinessAddress:
      type: object
      properties:
        line1:
          type: string
          nullable: true
        line2:
          type: string
          nullable: true
        city:
          type: string
          nullable: true
        state:
          type: string
          nullable: true
        zip:
          type: string
          nullable: true
        county:
          type: string
          nullable: true
        country:
          type: string
          nullable: true
        latitude:
          type: number
          format: double
          nullable: true
        longitude:
          type: number
          format: double
          nullable: true
      additionalProperties: false
    PriorCarrierPost:
      title: PriorCarrier
      required:
      - effectiveDate
      - expirationDate
      - lapseInPeriod
      type: object
      properties:
        name:
          type: string
          nullable: true
        effectiveDate:
          type: string
          description: Format YYYY-MM-DD
          format: date
        expirationDate:
          type: string
          description: Format YYYY-MM-DD
          format: date
        lapseInPeriod:
          type: boolean
          description: Was there a lapse in coverage
        lapseReason:
          $ref: '#/components/schemas/LapseReason'
        lapseReasonDescription:
          type: string
          description: Provide description when lapseReason is ‘Other’ or when there is additional lapse information available.
          nullable: true
        policyNumber:
          type: string
          nullable: true
        modificationFactor:
          type: number
          description: Must be decimal number >= 0.1 and less than 10.0
          nullable: true
        totalPremium:
          type: number
          description: 'Must be number with no more than 2 decimal places

            e.g. xxx.yy'
          nullable: true
        nonZeroClaimCount:
          type: integer
          description: 'The number of claims where the total payout was greater than zero.

            Must be integer >= 0 and less than or equal to 255'
          format: int32
        zeroClaimCount:
          type: integer
          description: 'The number of claims where the total payout equals zero.

            Must be integer >= 0 and less than or equal to 255'
          fo

# --- truncated at 32 KB (46 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/pie-insurance/refs/heads/main/openapi/pie-insurance-quotes-api-openapi.yml