Skip to main content
This section provides complete reference documentation for all data structures used in the Submissions and Quotes API.

Submission Object

FieldTypeDescription
idstring (UUID)Unique submission identifier
createdAtstring (ISO 8601)Submission creation timestamp
updatedAtstring (ISO 8601)Last update timestamp
statusstringCurrent submission status
typestringType of submission
numberstringHuman-readable submission number
primaryInsuredNamestringName of the primary insured party
applicationIdstring (UUID)Associated application identifier
namestringSubmission name/description

Quote Object (Lightweight)

Returned by the List Quote Info endpoint (GET /api/external/companies/{companyId}/quotes-info). This lightweight representation includes essential fields only for efficient listing and searching.
FieldTypeDescription
idstring (UUID)Unique quote identifier
numberstringHuman-readable quote number (format: Q########-##)
statusenumCurrent quote status
createdAtstring (ISO 8601)Quote creation timestamp
updatedAtstring (ISO 8601, optional)Last update timestamp
descriptionstring (optional)Quote description from policy info
policyIdstring (UUID, optional)Associated policy identifier (if bound)
policyCurrencystring (optional)Policy currency code (e.g., “USD”, “CAD”)
grandTotalnumber (optional)Total premium amount including taxes and fees

Quote Object (Full)

Returned by the List Quotes (GET /api/external/companies/{companyId}/quotes) and Get Quote (GET /api/external/companies/{companyId}/quotes/{quoteId}) endpoints. This complete representation includes all quote data, coverages, and billing information.
FieldTypeDescription
idstring (UUID)Unique quote identifier
numberstringHuman-readable quote number
wizardTypeenumQuote workflow type: quote, endorsement, renewal, forms, cancellation
statusenumCurrent quote status
submissionIdstring (UUID)Associated submission identifier
applicationIdstring (UUID, optional)Associated application identifier
policyIdstring (UUID, optional)Associated policy identifier (if bound)
dataobjectComplete quote data including policy info, coverages, insureds, and billing
previewDataobject (optional)Rating preview data with premium breakdowns
billingEmailstring (optional)Email address for billing communications
See the Get Quote endpoint for the complete QuoteDetail schema with all nested fields.

ImportPolicy Object

FieldTypeDescription
policyNumberstringCustomer facing policy identifier
policyStartDatestring (ISO 8601)Date policy begins
policyEndDatestring (ISO 8601)Date policy ends
policyTypeenumA single letter “C”, “O”, etc. (see below)
ratingDataobjectAll policy-level rating data (see config tutorial)
billingPeriodenum”doNotSendBill”, “annual”, “quarterly”, “monthly”
renewingPolicyNumberstring (optional)If a renewal, the number of the policy being renewed
policyCompanyEntityFieldsobjectAll non-rating policy-level data (see config tutorial)
brokerNamestring (optional)The name of the broker/agent
brokerageNamestring (optional)The name of the brokerage/agency
brokerCommissionnumber (optional)A percentage (e.g. 12.3 means 12.3%)

ImportPolicyCoverage Object

{
  "coverageTypeId": enum,
  "deductible": number (in dollars, optional),
  "retroactibveDate": string (ISO 8601, optional),
  "priorOrPendingLitigationDate": string (ISO 8601, optional),
  "defenseInsideLimit": "inside" or "outside" (optional),
  "presetId": enum (optional),
  "limits": [{ "limitName": string, "amount": number | string }],
  "endorsements": {
    [insuredId]: {
      "deductible": number, (in dollars, optional)
      "retroactiveDate": string, // (ISO 8601, optional)
      "priorOrPendingLitigationDate": string (ISO 8601, optional),
      "limits": [{ "limitName": string, "amount": number | string }],
      "presetId": enum (optional)
    }
  }
}

ImportInsured Object

FieldTypeDescription
insuredNamestringThe name of the insured, used to identify in the system
joinDatestring (ISO 8601)Date coverage begins for insured
terminationDatestring (ISO 8601)Date coverage ends for insured
policyInsuredTypeenum”primary”, “additional”, “named”, or “related”
entityTypeenumThe type of covered exposure
applicationDataobjectAll insured-level rating data
insuredCompanyEntityFieldsobjectAll non-rating insured-level data (see config tutorial)

Policy Type Options

ValueDescription
CClaims Made
NClaims Made “Nose” (Prior Acts)
TClaims Made “Tail” (Reporting Endorsement)
OOccurrence
PClaims Paid
SSlot Coverage - Claims Made
QSlot Coverage “Tail” (Reporting Endorsement)
RSlot Coverage - Occurrence

Submission Status Values

ValueDescription
draftSubmission is being prepared
submittedSubmission has been submitted for review
under_reviewSubmission is being reviewed
quotedQuote has been generated
boundPolicy has been bound
declinedSubmission was declined

Submission Types

ValueDescription
new_businessA submission that will create a new policy
renewalSubmission that will create a new policy from an existing one. This new policy can contain updated information.
endorsementSubmission that will update an existing policy

Quote Status Values

ValueDescription
in_progressQuote is being created
completeQuote is complete and ready for review
sentQuote has been sent to the client
acceptedQuote has been accepted by the client
boundQuote has been bound to a policy
cancelledQuote was cancelled
archivedQuote has been archived
applied_to_policyQuote changes have been applied to a policy

Field Types

TypeDescriptionUsage in Submission
InputFieldA field that takes a value of type string or number, based on the fields.type value"key" : "some string" or "key" : 555
DateFieldA field that takes a value of type string in the format YYYY-MM-DD"key" : "2025-10-03"
SelectField or RadioSelectA field that takes a value of type string or number, based on the value property of fields.options"key" : "some option", where fields.options:[{"value":"some option"},...]
MultiSelectFieldA field that takes a value of type string, based on the value properties of fields.options."key" : "some option 1, some option 2", where fields.options:[{"value":"some option 1"}, {"value":"some option 2"},...]
GroupFieldA field that takes a value of type array. This array is made of objects, whose keys are found in fields.subFields. Each field in fields.subFields is a type of Field"key" : [{"subKey": "value"},...]