Creating underwriting issues
To create an underwriting issue, use the following endpoint:
- POST
/job/v1/jobs/{jobId}/uw-issues
Minimum creation criteria
Issue types
At a minimum, an underwriting issue must specify:
- The issue type (specified by the issue type's code)
Through Cloud API, you can create only underwriting issues whose issue type has a
checking set value of Manual
. If you attempt to create an
underwriting issue using other issue types (such as the
QuestionBlockingQuote
issue type), you will get an error
message similar to the one below:
"userMessage": "data.attributes.issueType - The underwriting issue type with code
'QuestionBlockingQuote' has checking set 'Question'; expected 'Manual'"
There are two ways you can retrieve a list of existing issue types and their codes: through Cloud API and through PolicyCenter.
Retrieving issue type codes from Cloud API
From Cloud API, you can use the following endpoint from the Product Definition API:
- GET
/productdefinition/v1/reference-data/uw-issue-types
The following is a snippet of the output when executing this endpoint from the base
configuration. It includes the response for two issue types:
UWManagerReviewBlocksQuoteRelease
and
TSTManualMonetaryAmount
.
{
"data": [
{
"attributes": {
"checkingSet": {
"code": "Manual",
"name": "Manual"
},
"code": "UWManagerReviewBlocksQuoteRelease",
"comparator": {
"code": "None",
"name": "None"
},
"description": "To be reviewed by underwriting manager, blocking quote release",
"name": "To be reviewed by underwriting manager, blocking quote release",
"valueFormatterType": {
"code": "Unformatted",
"name": "Unformatted"
}
},
},
{
"attributes": {
"checkingSet": {
"code": "Manual",
"name": "Manual"
},
"code": "TSTManualMonetaryAmount",
"comparator": {
"code": "Monetary_LE",
"name": "At most (monetary)"
},
"description": "Test manually triggered issue with monetary amount format",
"name": "Test manually triggered issue with monetary amount format",
"valueFormatterType": {
"code": "MonetaryAmount",
"name": "MonetaryAmount"
}
}
...
Retrieving issue type codes from PolicyCenter
You can also retrieve issue type codes directly from PolicyCenter by exporting metadata about the existing underwriting issues. To do this:
- In PolicyCenter, navigate to the Utilities screen on the Administration tab. (You must be logged in as a user who has permission to export admin data.)
- In the Export Administrative Data column, select Underwriting Issue Types.
- Click Export.
PolicyCenter generates an XML file with metadata about the underwriting issue types.
The code for each issue type is defined in the <code>
tag. The
following is a snippet of the output when exporting this data from the base
configuration. It includes the XML for two issue types:
UWManagerReviewBlocksQuoteRelease
and
TSTManualMonetaryAmount
:
<UWIssueType public-id="pc:ScEwfrYMvGZSphmhfSCtk">
<CheckingSet>Manual</CheckingSet>
<Code>UWManagerReviewBlocksQuoteRelease</Code>
<Comparator>None</Comparator>
<Description>To be reviewed by underwriting manager, blocking quote release</Description>
<Name>To be reviewed by underwriting manager, blocking quote release</Name>
<ValueFormatterType>Unformatted</ValueFormatterType>
</UWIssueType>
<UWIssueType public-id="pc:S6FIzWqP5JFpEaPvDURH5">
<CheckingSet>Manual</CheckingSet>
<Code>TSTManualMonetaryAmount</Code>
<Comparator>Monetary_LE</Comparator>
<Description>Test manually triggered issue with monetary amount format</Description>
<Name>Test manually triggered issue with monetary amount format</Name>
<ValueFormatterType>MonetaryAmount</ValueFormatterType>
</UWIssueType>
Underwriting issues with conditions
Some underwriter issue types specify a condition, which consists of a comparator and a value. For example, an underwriting issue could specify that the value of the coverable must be less than or equal to $1000. For these underwriting issues, the value to be used for the comparison must be specified. The property used to specify this value depends on the value's datatype.
- Decimal and integer values are specified using the
decimalValue
andintegerValue
scalars - Monetary values are specified using the
moneyValue
object, with acurrency
andamount
value - Geographic state values are specified using the
stateSetValue
object, with:- An
inclusionType
value set toinclusive
- A
states
array with exactly one typecode from theState
typelist
- An
Minimum creation criteria syntax
The following summarizes the syntax for required values. Properties that are required depending on the issue type are in italics.
{
"data": {
"attributes": {
"issueType": {
"code": "<issue_type_code>"
},
"decimalValue": "<decimal>",
"integerValue": "<integer>
"moneyValue": {
"currency": "<currency>",
"amount": "<decimal>"
},
"stateSetValue": {
"inclusionType": "inclusive",
"states": [
"<code_from_State_typelist>",
"<code_from_State_typelist>"
]
}
}
}
}
Examples of creating an underwriting issue
The following code creates an underwriting issue for job pc:707. The underwriting issue
blocks quoting until the job has been reviewed by an underwriting manager (underwriting
issue type UWManagerReviewBlocksQuoteRelease
).
POST /job/v1/jobs/pc:707/uw-issues
{
"data": {
"attributes": {
"issueType": {
"code": "UWManagerReviewBlocksQuoteRelease"
}
}
}
}
The following code creates a test underwriting issue for job pc:707 that specifies a
monetary condition (underwriting issue type TSManualMonetaryAmount
).
The monetary amount used in the condition is $1000 USD.
POST /job/v1/jobs/pc:707/uw-issues
{
"data": {
"attributes": {
"issueType": {
"code": "TSTManualMonetaryAmount"
},
"moneyValue": {
"currency": "usd",
"amount": "1000.00"
}
}
}
}