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:

  1. 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.)
  2. In the Export Administrative Data column, select Underwriting Issue Types.
  3. 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 and integerValue scalars
  • Monetary values are specified using the moneyValue object, with a currency and amount value
  • Geographic state values are specified using the stateSetValue object, with:
    • An inclusionType value set to inclusive
    • A states array with exactly one typecode from the State typelist

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"
        }
    }
  }
}