---
title: "ExternalIllustrationResponse"
url: "https://developers.zinnia.com/apis/new-business/versions/b8532e16-b28e-4393-9305-def50b91e40e/schemas/ExternalIllustrationResponse"
---

> Full API specification: https://developers.zinnia.com/apis/new-business/versions/b8532e16-b28e-4393-9305-def50b91e40e.md

# ExternalIllustrationResponse

## OpenAPI definition

```yaml
openapi: 3.1.0
info:
  title: Zinnia New Business API.
  version: 0.9.8
servers:
  - url: https://qa.api.zinnia.io
    description: QA Environment
  - url: https://dev.api.zinnia.io
    description: DEV Environment
  - url: https://uat.api.zinnia.io
    description: UAT Environment
  - url: https://api.zinnia.io
    description: PROD Environment
components:
  schemas:
    CustomIdentifier:
      type: object
      properties:
        key:
          type: string
          description: Custom identifier key
          example: ApexQuoteId
        value:
          type: string
          description: The value associated with the key
          example: "12345"
    illustrationDetailsPatch:
      type: object
      properties:
        leadId:
          type: string
          description: Associated lead identifier
          example: L12345
        riskClass:
          type: string
          enum:
            - ULTRANONTOBACCO
            - ELITENONTOBACCO
            - PREFERREDNONTOBACCO
            - STANDARDNONTOBACCO
            - STANDARDTOBACCO
            - STANDARDAGGREGATE
            - SUBSTANDARDNONTOBACCO
            - SUBSTANDARDTOBACCO
            - STANDARDPLUSNONTOBACCO
            - PREFERREDTOBACCO
            - STANDARDCONVERSIONNONTOBACCO
            - STANDARDCONVERSIONTOBACCO
          description: Risk classification for the quote
          example: ULTRANONTOBACCO
        email:
          type: string
          format: email
          description: Contact email for the quote
          example: tKU3e@example.com
        state:
          $ref: "#/components/schemas/State"
        faceAmount:
          type: number
          nullable: true
          format: double
          minimum: 0
          description: Face amount of the policy
          example: 100
        premiumAmount:
          type: number
          nullable: true
          format: double
          minimum: 0
          description: Premium amount
          example: 100
        paymentTerm:
          type: string
          description: Term of payment
          example: MONTHLY
        premiumFrequency:
          type: string
          enum:
            - DAILY
            - EVERYTWOWEEKS
            - MONTHLY
            - SEMIANNUAL
            - QUARTERLY
            - ANNUAL
            - SINGLEPAYMENT
          description: Frequency of premium payments
          example: MONTHLY
        dateOfBirth:
          type: string
          format: date
          pattern: ^[0-9]{4}-[0-9]{2}-[0-9]{2}$
          description: Date (with pattern "yyyy-mm-dd")
          example: 1990-01-01
        ageAsOfDate:
          type: string
          format: date
          pattern: ^[0-9]{4}-[0-9]{2}-[0-9]{2}$
          description: Date (with pattern "yyyy-mm-dd")
          example: 2022-01-01
        gender:
          type: string
          enum:
            - MALE
            - FEMALE
            - OTHER
          description: Gender of the insured
          example: MALE
        smoker:
          type: boolean
          nullable: true
          description: Smoking status
          example: false
        health:
          type: string
          description: General health status
          example: Good
        underwritingMethod:
          type: string
          enum:
            - FULL_UNDERWRITING
            - SIMPLIFIED_ISSUE
            - GUARANTEED_ISSUE
          description: Method of underwriting
          example: SIMPLIFIED_ISSUE
        issueAge:
          type: string
          description: Age at policy issuance
          example: "25"
        quoteDate:
          type: string
          format: date-time
          pattern: ^[0-9]{4}-[0-9]{2}-[0-9]{2}T[0-9]{2}:[0-9]{2}:[0-9]{2}(\.[0-9]+)?(Z|[+-][0-9]{2}:[0-9]{2})$
          description: Date and time in ISO-8601 format (YYYY-MM-DDTHH:mm:ss.sssZ)
          example: 2022-01-01T00:00:00.000Z
        cashValue:
          type: number
          nullable: true
          format: double
          description: Cash value of the policy
          example: 1000
        success:
          type: boolean
          nullable: true
          description: Quote generation success indicator
          example: true
        annualIncome:
          type: number
          nullable: true
          format: double
          minimum: 0
          description: Annual income of the insured
          example: 10000
        annualPolicyMgmtFee:
          type: number
          nullable: true
          format: double
          minimum: 0
          description: Annual policy management fee
          example: 100
        additionalPaymentAmount:
          type: number
          nullable: true
          format: double
          minimum: 0
          description: Additional payment amount if any
          example: 100
        pricingVersion:
          type: string
          description: Version of pricing engine used
          example: "1.0"
        matchVersion:
          type: string
          description: Version of matching algorithm used
          example: "1.0"
        matchPercent:
          type: integer
          nullable: true
          minimum: 0
          maximum: 100
          description: Percentage match for the quote
          example: 90
        averageMonthlyCOI:
          type: number
          nullable: true
          format: double
          minimum: 0
          description: Average monthly cost of insurance
          example: 100
        firstMonthCOI:
          type: number
          nullable: true
          format: double
          minimum: 0
          description: First month's cost of insurance
          example: 100
        adminFee:
          type: number
          nullable: true
          format: double
          minimum: 0
          description: Administrative fee
          example: 10
        firstMonthSavings:
          type: number
          nullable: true
          format: double
          description: First month's savings
          example: 0
        monthlySavings:
          type: object
          required:
            - minSavings
            - maxSavings
            - targetSavings
          properties:
            minSavings:
              type: number
              nullable: true
              format: double
              description: Minimum monthly savings
              example: 0
            maxSavings:
              type: number
              nullable: true
              format: double
              description: Maximum monthly savings
              example: 10000
            targetSavings:
              type: number
              nullable: true
              format: double
              description: Target monthly savings
              example: 5000
        quoteQuestions:
          type: array
          items:
            type: object
            required:
              - id
              - code
            properties:
              id:
                type: string
                description: Question identifier
                example: "1234567890"
              code:
                type: string
                description: Question code
                example: "1234567890"
              description:
                type: array
                items:
                  type: string
                description: Question descriptions
                example:
                  - Option 1
                  - Option 2
                  - Option 3
    State:
      type: string
      example: CA
      enum:
        - AL
        - AK
        - AZ
        - AR
        - AS
        - AA
        - AE
        - AP
        - CA
        - CO
        - CT
        - DC
        - DE
        - FL
        - GA
        - GU
        - HI
        - ID
        - IL
        - IN
        - IA
        - KS
        - KY
        - LA
        - ME
        - MD
        - MA
        - MI
        - MN
        - MS
        - MO
        - MT
        - MP
        - NE
        - NV
        - NH
        - NJ
        - NM
        - NY
        - NC
        - ND
        - OH
        - OK
        - OR
        - PA
        - PR
        - RI
        - SC
        - SD
        - TN
        - TX
        - UT
        - UM
        - VT
        - VA
        - VI
        - WA
        - WV
        - WI
        - WY
      description: Abbreviated names for states
    ExternalIllustrationResponse:
      type: object
      properties:
        source:
          type: string
          description: Illustration Source
          enum:
            - EXTERNAL
          default: EXTERNAL
          example: EXTERNAL
        illustrationId:
          type: string
          description: Unique identifier for the illustration
          example: Q12345
        customIdentifiers:
          type: array
          items:
            $ref: "#/components/schemas/CustomIdentifier"
        details:
          $ref: "#/components/schemas/illustrationDetailsPatch"
```
