Skip to content

GET_QUOTES

This event is fired when requesting quotes for a product. It will always trigger the CREATE_OR_UPDATE_CLIENT event using the provided client intake. If clientId is not provided, a new client will be created and its ID will be returned in the response.

When and what fires this event?

If this event is defined on a product, and it has actions that are enabled:

  • CoPilot: fires this event when a new quote is requested in the Account Builder;
  • Storefront: fires this event at the end of client intake;
  • Fired externally via API on-demand.

Request payload

POST: https://api.{ENV}.dais.com/ioi/v3/event/fire

curl --location --request POST 'https://api.{ENV}.dais.com/ioi/v3/event/fire' \
--header 'Authorization: Basic <yourAuthHere>' \
--header 'Content-Type: application/json' \
--data-raw '{
  "lineId": "<UUID of the product>",
  "type": "GET_QUOTES",
  "payload": {
      "intake": {
        "<qid>": {
            "type": "ANSWER",
            "answer": "<answer>",
            "qid": "<qid>"
          }
      },
      "asConfiguredAtTimestamp": "2022-05-24T19:04:24.1Z"
  }
}'
{
  "lineId": "262e67be-c08c-43c0-bb51-06fe4408b4e9",
  "type": "GET_QUOTES",
  "agencyCodes": [
    {
      "carrierId": "11111111-1111-1111-1111-111111111111",
      "carrierName": "Some Carrier",
      "contractCodeSetName": "AGENCY_CODES_SET",
      "agencyCodeData": {
        "agencyCode": "AG12345",
        "subProducerCode": "SUB999"
      }
    }
  ],
  "payload": {
      "clientId": "220c4020-7f20-4a16-ba51-d0945804dd83",
      "referrer": "String",
      "intake": {
        "numEmployees": {
          "type": "ANSWER",
          "answer": "55",
          "qid": "numEmployees"
        },
        "isNonProfit": {
          "type": "ANSWER",
          "answer": "YES",
          "qid": "isNonProfit"
        },
        "claimInLast12Mo": {
          "type": "ANSWER",
          "answer": "12",
          "qid": "claimInLast12Mo"
        }
      },
      "asConfiguredAtTimestamp": "2022-05-24T19:04:24.1Z"
  }
}

Request fields

PropertyRequiredDescription
lineIdtrueUUID for the product
typetrueMust be set to GET_QUOTES
agencyCodesfalseArray of objects
payloadtrueExplained below

Payload fields

PropertyRequiredDescription
clientIdfalseUUID for client id. A new client will be created if clientId is omitted.
referrerfalseString value to track a client referral.
intakefalseMap of question identifiers (qid) to client answers.
asConfiguredAtTimestampfalseTimestamp of the rating configuration to use for this quote.

Response Body

{
  "triggerRequestId": "550e8400-e29b-41d4-a716-446655440000",
  "executedActionCount": 4,
  "expectedResponseCount": 4,
  "metadata": {
    "CREATE_OR_UPDATE_CLIENT": {
      "clientId": "dd0e8400-e29b-41d4-a716-446655440000",
      "intake": {}
    }
  }
}

Response Fields

FieldTypeDescription
triggerRequestIdstring (UUID)The unique identifier for this request.
executedActionCountnumberTotal number of actions that were executed.
expectedResponseCountnumberNumber of actions that will produce quote responses.
metadataobjectContains action results.

Metadata Object

FieldTypeDescription
CREATE_OR_UPDATE_CLIENTobjectResult from the client creation/update action.
quotesarrayList of generated quotes. Only present when forceSync: true.

CREATE_OR_UPDATE_CLIENT Object

FieldTypeDescription
clientIdstring (UUID)The created or updated client ID.
intakeobjectThe intake data associated with the client.

quote Object

FieldTypeDescription
idstring (UUID)Unique quote identifier.
actionIdstring (UUID)The action that generated this quote.
actionTypestringThe type of rating action. Values: IOI_RATING, VERISK, VERISK_ALGO, BUNDLE_RATING.
typestringThe quote result type. Values: QUOTE, DECLINE, BATCH, INDICATION.
lineIdstring (UUID)Product/Line identifier.
clientIdstring (UUID)Client identifier.
pipelineIdstring (UUID)Pipeline identifier.
quotingOrganizationIdstring (UUID)Organization that generated the quote.
clientOrganizationIdstring (UUID)Client's organization.
triggerRequestIdstring (UUID)Original trigger request ID.
requestIdstring (UUID)Individual action request ID.
effectiveDatestring (date)Policy effective date. Format: YYYY-MM-DD.
termnumberPolicy term in months.
bindablebooleanWhether the quote can be bound to a policy.
requiresUnderwriterApprovalbooleanWhether underwriter approval is required.
requiresPolicyholderAcceptancebooleanWhether policyholder acceptance is required.
quoteTimestampstring (ISO 8601)When the quote was generated.
quoteDetailsobjectPremium, coverages, taxes, and fees breakdown.
messagesarraySystem and consumer-facing messages.
metadataobjectAdditional quote metadata (varies by action type).
sourceobjectSource information.
productVersionIdstring (UUID)Product version used for rating.
versionSystemSourcestringVersion source system. Values: HOSTING, BUILDER.
inputMappingDataobjectThe input data used for rating calculation.

quoteDetails Object

FieldTypeDescription
premiumobjectPremium information.
coveragesarrayList of coverage details.
taxesobjectTax breakdown.
feesobjectFee breakdown.

premium Object

FieldTypeDescription
amountnumberThe premium amount. A value of -1 indicates a declined quote.
currencystringCurrency code (e.g., USD).

coverages Array Item

FieldTypeDescription
namestringCoverage name.
codestringCoverage code.
premiumnumberCoverage premium amount.
limitnumberCoverage limit.
deductiblenumberCoverage deductible.

taxes Object

FieldTypeDescription
amountnumberTotal tax amount.
detailsarrayBreakdown of individual taxes.

taxes.details Array Item

FieldTypeDescription
namestringTax name.
amountnumberTax amount.
ratenumberTax rate (decimal).

fees Object

FieldTypeDescription
amountnumberTotal fee amount.
detailsarrayBreakdown of individual fees.

fees.details Array Item

FieldTypeDescription
namestringFee name.
amountnumberFee amount.

messages Array Item

FieldTypeDescription
messagestringThe message text.
typestringMessage type. Values: SYSTEM, CONSUMER, ERROR.

Enum Values Reference

type (Trigger Type)

ValueDescription
GET_QUOTESRequest quotes for a client.

sourceType

ValueDescription
STOREFRONTRequest from a storefront application. Requires a valid storefrontId in the source object.
INTERNAL_CALLInternal service-to-service call.
APIExternal API request.
BATCHBatch processing request.

versionSystemSource

ValueDescription
HOSTINGUse deployed version from hosting service.
BUILDERUse version from product builder.

requestSource (in payload)

ValueDescription
QUOTENew quote request.
RENEWALRenewal quote request.
ISSUANCEPolicy issuance request.
ENDORSEMENTPolicy endorsement request.

actionType (in quote)

ValueDescription
IOI_RATINGDAIS internal rating engine.
VERISKVerisk RaaS (Rating as a Service).
VERISK_ALGOVerisk with local algorithm.
BUNDLE_RATINGBundled/package rating (multiple coverages).

type (Quote Type)

ValueDescription
QUOTEValid quote with positive premium.
DECLINEQuote declined (premium = -1).
BATCHQuote generated in batch mode.
INDICATIONIndication only, not bindable.

messages.type

ValueDescription
SYSTEMInternal system message.
CONSUMERMessage intended for the end user.
ERRORError message.

Examples

Minimal Request

{
  "type": "GET_QUOTES",
  "lineId": "660e8400-e29b-41d4-a716-446655440000",
  "forceSync": true,
  "source": {
    "organizationId": "aa0e8400-e29b-41d4-a716-446655440000",
    "sourceType": "STOREFRONT",
    "storefrontId": "bb0e8400-e29b-41d4-a716-446655440000"
  },
  "payload": {
    "effectiveDate": "2026-02-01",
    "intake": {
      "business_name": { "answer": "Acme Corp" },
      "state": { "answer": "CA" },
      "zip_code": { "answer": "90210" }
    }
  }
}

Quote Response Examples by Action Type

IOI_RATING Quote

The DAIS internal rating engine quote response:

{
  "id": "ee0e8400-e29b-41d4-a716-446655440000",
  "actionId": "ff0e8400-e29b-41d4-a716-446655440000",
  "actionType": "IOI_RATING",
  "type": "QUOTE",
  "lineId": "660e8400-e29b-41d4-a716-446655440000",
  "clientId": "dd0e8400-e29b-41d4-a716-446655440000",
  "pipelineId": "110e8400-e29b-41d4-a716-446655440000",
  "quotingOrganizationId": "880e8400-e29b-41d4-a716-446655440000",
  "clientOrganizationId": "aa0e8400-e29b-41d4-a716-446655440000",
  "triggerRequestId": "550e8400-e29b-41d4-a716-446655440000",
  "requestId": "220e8400-e29b-41d4-a716-446655440000",
  "effectiveDate": "2026-02-01",
  "term": 12,
  "bindable": true,
  "requiresUnderwriterApproval": false,
  "requiresPolicyholderAcceptance": false,
  "quoteTimestamp": "2026-01-27T10:30:00Z",
  "quoteDetails": {
    "premium": {
      "amount": 5250.00,
      "currency": "USD"
    },
    "coverages": [
      {
        "name": "General Liability",
        "code": "GL",
        "premium": 3000.00,
        "limit": 1000000,
        "deductible": 1000
      },
      {
        "name": "Property",
        "code": "PROP",
        "premium": 2250.00,
        "limit": 500000,
        "deductible": 500
      }
    ],
    "taxes": {
      "amount": 262.50,
      "details": [
        {
          "name": "State Tax",
          "amount": 157.50,
          "rate": 0.03
        },
        {
          "name": "Municipal Tax",
          "amount": 105.00,
          "rate": 0.02
        }
      ]
    },
    "fees": {
      "amount": 50.00,
      "details": [
        {
          "name": "Policy Fee",
          "amount": 50.00
        }
      ]
    }
  },
  "messages": [],
  "metadata": {
    "excelMetadata": {},
    "rateMeta": {
      "customField1": "value1",
      "customField2": "value2"
    }
  },
  "source": {
    "organizationId": "aa0e8400-e29b-41d4-a716-446655440000",
    "sourceType": "STOREFRONT"
  },
  "productVersionId": "770e8400-e29b-41d4-a716-446655440000",
  "versionSystemSource": "HOSTING",
  "inputMappingData": {
    "business_name": "Acme Corp",
    "employee_count": "50",
    "state": "CA",
    "zip_code": "90210"
  },
  "executedPlugins": []
}

IOI_RATING metadata Object

FieldTypeDescription
excelMetadataobjectMetadata from Excel processing (messages, exceptions).
rateMetaobjectCustom rating metadata from free-form fields.

VERISK Quote

The Verisk RaaS (Rating as a Service) quote response:

{
  "id": "ee0e8400-e29b-41d4-a716-446655440001",
  "actionId": "ff0e8400-e29b-41d4-a716-446655440001",
  "actionType": "VERISK",
  "type": "QUOTE",
  "lineId": "660e8400-e29b-41d4-a716-446655440000",
  "clientId": "dd0e8400-e29b-41d4-a716-446655440000",
  "pipelineId": "110e8400-e29b-41d4-a716-446655440000",
  "quotingOrganizationId": "880e8400-e29b-41d4-a716-446655440000",
  "clientOrganizationId": "aa0e8400-e29b-41d4-a716-446655440000",
  "triggerRequestId": "550e8400-e29b-41d4-a716-446655440000",
  "requestId": "220e8400-e29b-41d4-a716-446655440001",
  "effectiveDate": "2026-02-01",
  "term": 12,
  "bindable": true,
  "requiresUnderwriterApproval": false,
  "requiresPolicyholderAcceptance": false,
  "quoteTimestamp": "2026-01-27T10:30:00Z",
  "quoteDetails": {
    "premium": {
      "amount": 4800.00,
      "currency": "USD"
    },
    "coverages": [
      {
        "name": "Workers Compensation",
        "code": "WC",
        "premium": 4800.00,
        "limit": 1000000,
        "deductible": 0
      }
    ],
    "taxes": {
      "amount": 240.00,
      "details": [
        {
          "name": "State Tax",
          "amount": 240.00,
          "rate": 0.05
        }
      ]
    },
    "fees": {
      "amount": 0.00,
      "details": []
    }
  },
  "messages": [],
  "metadata": {
    "verisk": {
      "adjusted": true,
      "factors": {
        "experienceMod": 0.95,
        "scheduleCredit": 0.10,
        "safetyCredit": 0.05
      }
    },
    "forward": null
  },
  "source": {
    "organizationId": "aa0e8400-e29b-41d4-a716-446655440000",
    "sourceType": "STOREFRONT"
  },
  "productVersionId": "770e8400-e29b-41d4-a716-446655440000",
  "versionSystemSource": "HOSTING",
  "inputMappingData": {
    "business_name": "Acme Corp",
    "class_code": "8810",
    "payroll": "500000",
    "state": "CA"
  },
  "rawQuoteRequest": {},
  "rawQuoteDetails": {},
  "executedPlugins": []
}

VERISK metadata Object

FieldTypeDescription
veriskobjectVerisk-specific metadata.
verisk.adjustedbooleanWhether post-RaaS adjustments were applied.
verisk.factorsobjectRating factors returned from Verisk (experience mod, credits, etc.).
forwardobjectForwarding configuration if applicable.

VERISK Additional Fields

FieldTypeDescription
rawQuoteRequestobjectThe raw request sent to Verisk RaaS.
rawQuoteDetailsobjectThe raw response received from Verisk RaaS.

VERISK_ALGO Quote

The Verisk with local algorithm hybrid quote response:

{
  "id": "ee0e8400-e29b-41d4-a716-446655440002",
  "actionId": "ff0e8400-e29b-41d4-a716-446655440002",
  "actionType": "VERISK_ALGO",
  "type": "QUOTE",
  "lineId": "660e8400-e29b-41d4-a716-446655440000",
  "clientId": "dd0e8400-e29b-41d4-a716-446655440000",
  "pipelineId": "110e8400-e29b-41d4-a716-446655440000",
  "quotingOrganizationId": "880e8400-e29b-41d4-a716-446655440000",
  "clientOrganizationId": "aa0e8400-e29b-41d4-a716-446655440000",
  "triggerRequestId": "550e8400-e29b-41d4-a716-446655440000",
  "requestId": "220e8400-e29b-41d4-a716-446655440002",
  "effectiveDate": "2026-02-01",
  "term": 12,
  "bindable": true,
  "requiresUnderwriterApproval": false,
  "requiresPolicyholderAcceptance": false,
  "quoteTimestamp": "2026-01-27T10:30:00Z",
  "quoteDetails": {
    "premium": {
      "amount": 5100.00,
      "currency": "USD"
    },
    "coverages": [
      {
        "name": "Commercial Auto",
        "code": "CA",
        "premium": 5100.00,
        "limit": 1000000,
        "deductible": 500
      }
    ],
    "taxes": {
      "amount": 255.00,
      "details": [
        {
          "name": "State Tax",
          "amount": 255.00,
          "rate": 0.05
        }
      ]
    },
    "fees": {
      "amount": 25.00,
      "details": [
        {
          "name": "Processing Fee",
          "amount": 25.00
        }
      ]
    }
  },
  "messages": [],
  "metadata": {
    "localAlgorithm": {
      "version": "1.0",
      "templateId": "algo-template-001"
    },
    "verisk": {
      "baseRate": 4500.00,
      "adjusted": true
    }
  },
  "source": {
    "organizationId": "aa0e8400-e29b-41d4-a716-446655440000",
    "sourceType": "STOREFRONT"
  },
  "productVersionId": "770e8400-e29b-41d4-a716-446655440000",
  "versionSystemSource": "HOSTING",
  "inputMappingData": {
    "business_name": "Acme Corp",
    "vehicle_count": "5",
    "driver_count": "8",
    "state": "CA"
  },
  "executedPlugins": []
}

VERISK_ALGO metadata Object

FieldTypeDescription
localAlgorithmobjectLocal algorithm execution details.
localAlgorithm.versionstringAlgorithm version used.
localAlgorithm.templateIdstringExcel template identifier.
veriskobjectVerisk contribution to the rating.
verisk.baseRatenumberBase rate from Verisk before local adjustments.
verisk.adjustedbooleanWhether adjustments were applied.

BUNDLE_RATING Quote

The bundled/package rating quote response (aggregates multiple rating actions):

{
  "id": "ee0e8400-e29b-41d4-a716-446655440003",
  "actionId": "ff0e8400-e29b-41d4-a716-446655440003",
  "actionType": "BUNDLE_RATING",
  "type": "QUOTE",
  "lineId": "660e8400-e29b-41d4-a716-446655440000",
  "clientId": "dd0e8400-e29b-41d4-a716-446655440000",
  "pipelineId": "110e8400-e29b-41d4-a716-446655440000",
  "quotingOrganizationId": "880e8400-e29b-41d4-a716-446655440000",
  "clientOrganizationId": "aa0e8400-e29b-41d4-a716-446655440000",
  "triggerRequestId": "550e8400-e29b-41d4-a716-446655440000",
  "requestId": "220e8400-e29b-41d4-a716-446655440003",
  "effectiveDate": "2026-02-01",
  "term": 12,
  "bindable": true,
  "requiresUnderwriterApproval": false,
  "requiresPolicyholderAcceptance": false,
  "quoteTimestamp": "2026-01-27T10:30:00Z",
  "quoteDetails": {
    "premium": {
      "amount": 15150.00,
      "currency": "USD"
    },
    "coverages": [
      {
        "name": "General Liability",
        "code": "GL",
        "premium": 5250.00,
        "limit": 1000000,
        "deductible": 1000
      },
      {
        "name": "Workers Compensation",
        "code": "WC",
        "premium": 4800.00,
        "limit": 1000000,
        "deductible": 0
      },
      {
        "name": "Commercial Auto",
        "code": "CA",
        "premium": 5100.00,
        "limit": 1000000,
        "deductible": 500
      }
    ],
    "taxes": {
      "amount": 757.50,
      "details": [
        {
          "name": "State Tax",
          "amount": 606.00,
          "rate": 0.04
        },
        {
          "name": "Surcharge",
          "amount": 151.50,
          "rate": 0.01
        }
      ]
    },
    "fees": {
      "amount": 75.00,
      "details": [
        {
          "name": "Policy Fee",
          "amount": 50.00
        },
        {
          "name": "Processing Fee",
          "amount": 25.00
        }
      ]
    }
  },
  "messages": [],
  "metadata": {
    "bundledQuotes": [
      {
        "actionType": "IOI_RATING",
        "quoteId": "ee0e8400-e29b-41d4-a716-446655440000",
        "lineId": "line-gl-001",
        "premium": 5250.00,
        "coverageName": "General Liability"
      },
      {
        "actionType": "VERISK",
        "quoteId": "ee0e8400-e29b-41d4-a716-446655440001",
        "lineId": "line-wc-001",
        "premium": 4800.00,
        "coverageName": "Workers Compensation"
      },
      {
        "actionType": "VERISK_ALGO",
        "quoteId": "ee0e8400-e29b-41d4-a716-446655440002",
        "lineId": "line-ca-001",
        "premium": 5100.00,
        "coverageName": "Commercial Auto"
      }
    ],
    "packageDiscount": {
      "applied": true,
      "percentage": 0.05,
      "amount": 757.50
    }
  },
  "source": {
    "organizationId": "aa0e8400-e29b-41d4-a716-446655440000",
    "sourceType": "STOREFRONT"
  },
  "productVersionId": "770e8400-e29b-41d4-a716-446655440000",
  "versionSystemSource": "HOSTING",
  "inputMappingData": {
    "business_name": "Acme Corp",
    "employee_count": "50",
    "vehicle_count": "5",
    "state": "CA"
  },
  "executedPlugins": []
}

BUNDLE_RATING metadata Object

FieldTypeDescription
bundledQuotesarrayList of individual quotes that make up the bundle.
bundledQuotes[].actionTypestringThe action type that generated this component.
bundledQuotes[].quoteIdstring (UUID)The individual quote ID.
bundledQuotes[].lineIdstring (UUID)The product line for this component.
bundledQuotes[].premiumnumberPremium for this component.
bundledQuotes[].coverageNamestringName of the coverage.
packageDiscountobjectPackage discount information if applicable.
packageDiscount.appliedbooleanWhether a package discount was applied.
packageDiscount.percentagenumberDiscount percentage (decimal).
packageDiscount.amountnumberDiscount amount.

Declined Quote Response

When a quote is declined due to rules or validation:

{
  "id": "ee0e8400-e29b-41d4-a716-446655440004",
  "actionId": "ff0e8400-e29b-41d4-a716-446655440000",
  "actionType": "IOI_RATING",
  "type": "DECLINE",
  "lineId": "660e8400-e29b-41d4-a716-446655440000",
  "clientId": "dd0e8400-e29b-41d4-a716-446655440000",
  "pipelineId": "110e8400-e29b-41d4-a716-446655440000",
  "quotingOrganizationId": "880e8400-e29b-41d4-a716-446655440000",
  "clientOrganizationId": "aa0e8400-e29b-41d4-a716-446655440000",
  "triggerRequestId": "550e8400-e29b-41d4-a716-446655440000",
  "requestId": "220e8400-e29b-41d4-a716-446655440004",
  "effectiveDate": "2026-02-01",
  "term": 12,
  "bindable": false,
  "quoteTimestamp": "2026-01-27T10:30:00Z",
  "quoteDetails": {
    "premium": {
      "amount": -1.00
    },
    "coverages": [],
    "taxes": {},
    "fees": {}
  },
  "messages": [
    {
      "message": "Business type not eligible for coverage in this state",
      "type": "SYSTEM"
    },
    {
      "message": "Please contact an agent for assistance",
      "type": "CONSUMER"
    }
  ],
  "metadata": {},
  "source": {
    "organizationId": "aa0e8400-e29b-41d4-a716-446655440000",
    "sourceType": "STOREFRONT"
  },
  "productVersionId": "770e8400-e29b-41d4-a716-446655440000",
  "versionSystemSource": "HOSTING",
  "inputMappingData": {}
}

Declined Quote Indicators

FieldValueDescription
typeDECLINEIndicates the quote was declined.
quoteDetails.premium.amount-1.00Negative premium indicates decline.
bindablefalseCannot be bound to a policy.
messagesarrayContains reasons for decline.

Complete Response Example with Multiple Quotes

When multiple rating actions are configured and forceSync: true:

{
  "triggerRequestId": "550e8400-e29b-41d4-a716-446655440000",
  "executedActionCount": 6,
  "expectedResponseCount": 4,
  "metadata": {
    "CREATE_OR_UPDATE_CLIENT": {
      "clientId": "dd0e8400-e29b-41d4-a716-446655440000",
      "intake": {
        "business_name": {
          "answer": "Acme Corp",
          "questionId": "q1"
        },
        "state": {
          "answer": "CA",
          "questionId": "q3"
        }
      }
    },
    "quotes": [
      {
        "id": "ee0e8400-e29b-41d4-a716-446655440000",
        "actionType": "IOI_RATING",
        "type": "QUOTE",
        "quoteDetails": {
          "premium": { "amount": 5250.00 }
        },
        "metadata": {
          "excelMetadata": {},
          "rateMeta": {}
        }
      },
      {
        "id": "ee0e8400-e29b-41d4-a716-446655440001",
        "actionType": "VERISK",
        "type": "QUOTE",
        "quoteDetails": {
          "premium": { "amount": 4800.00 }
        },
        "metadata": {
          "verisk": {
            "adjusted": true,
            "factors": {}
          }
        },
        "rawQuoteRequest": {},
        "rawQuoteDetails": {}
      },
      {
        "id": "ee0e8400-e29b-41d4-a716-446655440002",
        "actionType": "VERISK_ALGO",
        "type": "QUOTE",
        "quoteDetails": {
          "premium": { "amount": 5100.00 }
        },
        "metadata": {
          "localAlgorithm": {},
          "verisk": {}
        }
      },
      {
        "id": "ee0e8400-e29b-41d4-a716-446655440003",
        "actionType": "BUNDLE_RATING",
        "type": "QUOTE",
        "quoteDetails": {
          "premium": { "amount": 15150.00 }
        },
        "metadata": {
          "bundledQuotes": []
        }
      }
    ]
  }
}

Note: executedActionCount (6) includes all actions (CREATE_OR_UPDATE_CLIENT + 4 rating actions + non-quote actions like WEBHOOK/EMAIL), but expectedResponseCount (4) only counts actions that produce quotes.