Products API

Fetch all products for a tenant

GET /products/["/{configVersion}" | ""]

ProductConfiguration2Response

{
  // Required
  "name" : string
  "policyConfiguration" : PolicyConfigurationResponse

  // Optional
  "claimConfiguration" : ClaimConfigurationResponse
  "configVersion" : integer
  "premiumReportingConfiguration" : [PremiumReportingConfigurationResponse]
}

PolicyConfigurationResponse

{
  // Required
  "cancellations" : CancellationConfigurationResponse
  "documents" : [PolicyDocumentConfiguration]
  "endorsements" : [EndorsementConfigurationResponse]
  "exposures" : [ExposureConfigurationResponse]
  "externalDataCalls" : [FrontendExternalDataCallConfiguration]
  "fields" : [FieldConfiguration]
  "paymentSchedules" : [PaymentScheduleResponse]
  "reminders" : [ReminderConfigurationResponse]
  "renewals" : [RenewalConfigurationResponse]
  "taxes" : [TaxConfigurationResponse]

  // Optional
  "defaultPaymentTerms" : PaymentTermsResponse
  "externalRater" : string
}

PolicyDocumentConfiguration

{
  // Required
  "displayName" : string
  "fileName" : string
  "generatingEvent" : string quote | accept | issue
  "templateName" : string
  "type" : string pdf | html
}

PolicyInvoicingConfiguration

{
  // Required
  "generatingEvent" : string quote | accept | issue
}

ExposureConfigurationResponse

{
  // Required
  "displayName" : string
  "externalDataCalls" : [FrontendExternalDataCallConfiguration]
  "fields" : [FieldConfiguration]
  "name" : string
}

FrontendExternalDataCallConfiguration

{
  // Required
  "targetFields" : [string]
  "triggerField" : string
}

FieldConfiguration

{
  // Required
  "name" : string
  "order" : integer
  "title" : string
  "type" : string

  // Optional
  "condition" : map<string,string>
  "heading" : string
  "optional" : boolean
}

Depending on the value of the type attribute, this will appear as one of the following subtypes:

DateFieldConfiguration

{
  // Required
  "name" : string
  "order" : integer
  "precision" : string year | month | day | second
  "title" : string

  // Optional
  "condition" : map<string,string>
  "heading" : string
  "maximum" : string
  "maximumOffset" : DateOffsetConfiguration
  "minimum" : string
  "minimumOffset" : DateOffsetConfiguration
  "newline" : boolean
  "optional" : boolean
  "showCalendar" : boolean
  "width" : integer
}

DateOffsetConfiguration

{
  // Required
  "amount" : integer
  "field" : string year | month | day | second

  // Optional
  "roundToDay" : boolean
}

EmailFieldConfiguration

{
  // Required
  "name" : string
  "order" : integer
  "title" : string

  // Optional
  "condition" : map<string,string>
  "heading" : string
  "newline" : boolean
  "optional" : boolean
  "width" : integer
}

GroupFieldConfiguration

{
  // Required
  "fields" : [FieldConfiguration]
  "name" : string
  "order" : integer
  "title" : string

  // Optional
  "condition" : map<string,string>
  "heading" : string
  "maximum" : integer
  "newline" : boolean
  "optional" : boolean
  "repeatable" : boolean
  "width" : integer
}

LookupFieldConfiguration

{
  // Required
  "name" : string
  "order" : integer
  "table" : string
  "title" : string

  // Optional
  "condition" : map<string,string>
  "heading" : string
  "match" : [string]
  "newline" : boolean
  "optional" : boolean
  "public" : boolean
  "width" : integer
}

MediaFieldConfiguration

{
  // Required
  "name" : string
  "order" : integer
  "title" : string

  // Optional
  "condition" : map<string,string>
  "heading" : string
  "newline" : boolean
  "optional" : boolean
  "repeatable" : boolean
  "width" : integer
}

NumberFieldConfiguration

{
  // Required
  "name" : string
  "order" : integer
  "title" : string

  // Optional
  "condition" : map<string,string>
  "decimalPlaces" : integer
  "heading" : string
  "maximum" : number
  "minimum" : number
  "newline" : boolean
  "optional" : boolean
  "width" : integer
}

SelectFieldConfiguration

{
  // Required
  "name" : string
  "order" : integer
  "title" : string
  "values" : [string]

  // Optional
  "condition" : map<string,string>
  "heading" : string
  "newline" : boolean
  "optional" : boolean
  "repeatable" : boolean
  "width" : integer
}

StringFieldConfiguration

{
  // Required
  "name" : string
  "order" : integer
  "title" : string

  // Optional
  "condition" : map<string,string>
  "heading" : string
  "maximum" : integer
  "multiline" : boolean
  "newline" : boolean
  "optional" : boolean
  "regex" : string
  "width" : integer
}

PerilConfigurationResponse

{
  // Required
  "displayName" : string
  "externalDataCalls" : [FrontendExternalDataCallConfiguration]
  "fields" : [FieldConfiguration]
  "name" : string

  // Optional
  "deductible" : number
  "indemnityInAggregate" : string
  "indemnityPerEvent" : string
  "indemnityPerItem" : string
  "lumpSumPayment" : number
}

TaxConfigurationResponse

{
  // Required
  "displayName" : string
  "name" : string
}

FeeConfigurationResponse

{
  // Required
  "displayName" : string
  "name" : string
}

EndorsementConfigurationResponse

{
  // Required
  "displayName" : string
  "documents" : [PolicyDocumentConfiguration]
  "name" : string
  "reprice" : string always | never | input | all
}

RenewalConfigurationResponse

{
  // Required
  "documents" : [PolicyDocumentConfiguration]
}

PaymentTermsResponse

{
  // Required
  "amount" : integer
  "unit" : string day
}

PaymentScheduleResponse

{
  // Required
  "displayName" : string
  "name" : string
  "type" : string total | monthly | annually | semiannually | quarterly | every_two_weeks | every_week
}

CancellationConfigurationResponse

{
  // Required
  "proration" : string 30E/360 | actual | actualMilliseconds
}

LapseConfigurationResponse

{
  // Required
  "gracePeriodDays" : integer
  "reinstatementPeriodDays" : integer
}

PremiumReportingConfigurationResponse

{
  // Required
  "documents" : [PolicyDocumentConfiguration]
  "fields" : [FieldConfiguration]
  "id" : string
  "premiumReportingCalculationRevision" : string
  "productRevisionLocator" : string
  "reportName" : string
  "tenantLocator" : string
}

ClaimConfigurationResponse

{
  // Required
  "fields" : [FieldConfiguration]

  // Optional
  "subClaimConfiguration" : SubClaimConfigurationResponse
}

SubClaimConfigurationResponse

{
  // Required
  "fields" : [FieldConfiguration]
}

ReminderConfigurationResponse

{
  // Required
  "enabled" : boolean
  "from" : string policy.end
  "name" : string
  "offset" : string
}

ReminderOffset

These strings indicate a fixed duration of time using a subset of the ISO-8601 date format.

Examples of valid offsets are: "-1d" or "-7d" or "-30d" (for one/seven/thirty days before)

Such durations are subtracted from the occurrence described in the reminder’s "from" property.

For example, a reminder "-7d" from "policy.end" will fire one week before the policy ends.