Generating and installing LOB-specific endpoints
The following diagram provides a high-level overview for how a line of business is typically developed using Advanced Product Designer.
- The product and its lines of business start as metadata that is captured in either a mind map or a template.
- The insurer creates a visualized product by importing the LOB metadata
into PolicyCenter.
- During the import, PolicyCenter generates a set of "in memory" endpoints that reflect the structure of the LOB.
- While in Advanced Product Designer, the insurer typically edits the product.
- This is typically an iterative process where the insurer refines the metadata as needed.
- Every time the product is modified, the "in memory" endpoints are regenerated.
- Once the refining is complete, the insurer creates a finalized product by
installing the product. The finalized products consists of:
- The necessary artifacts for the product, including database tables and PCFs.
- A set of "active" endpoints that are now part of Cloud API.
For more information on Advanced Product Designer, refer to Creating Products with APD App.
Related developer tasks
When working with LOB-specific endpoints, developers can do the following:
- Generate LOB-specific endpoints as part of an entire product (through Advanced Product Designer)
- Generate a template from an existing finalized product
- Install LOB-specific endpoints without modifying other product-specific artifacts
Generating LOB-specific endpoints through APD
When you import, edit, or install a product through Advanced Product Designer, LOB-specific endpoints are automatically generated. For more information on how to use Advanced Product Designer, refer to Creating Products with APD App.
Note that the generation of endpoints through Advanced Product Designer can be either seamless or bootstrapped.
- If the line of business supports seamless generation, then the LOB-specific endpoints are generated automatically from the visualized product. No manual modifications are required.
- If the line of business supports only bootstrapped generation, then some manual modification of the generated endpoints is required.
Generate LOB-specific endpoints
About this task
You can generate an LOB-specific endpoint from an APD template. This process applies to both creating new LOB-specific endpoints as well as updating existing endpoints.
To execute this task, you must have an APD template for the LOB. If necessary, you can generate an APD template from the existing visualized product and import the template. For more information, see Generate a template using the reverse template generator
Procedure
- In PolicyCenter, set Developer, and then click Update. to
- To add the template, click Update. , browse and select your template, and then click
- To generate the endpoints, from the Details pane click
- Review the model, and if acceptable, click Complete Generation.
- Click Return to Product Definition, and then click Save.
- Restart PolicyCenter.
Results
To verify the result, browse to the APD Managed pane on the Product Management page. The LOB product will be displayed, and the Last Updated column will have a value, indicating that the product has been installed. For details on viewing the API definition in Swagger, see the Cloud API Consumer Guide.
Generating LOB-specific endpoints for scheduled items in SBT products
Sometimes, an account holder wants a policy to cover a specific item that has unusual value, such as a piece of fine art or a diamond necklace. There is a generic coverage on the policy that could apply to the item. But because of the item's unusual value, it ought to be covered by its own coverage. The insurer may require additional information, such as the item's value and how this value was determined. The item's coverage may also require a deductible or limit that is outside the range of what is allowed by the more generic coverage. These types of "unusual value" items appear on the policy in a list that is called a schedule. Thus, the items themselves are called scheduled items.
The original Product Designer, Advanced Product Designer, and Schedule-Based Templates
(SBTs) all have the ability to define products with scheduled items. However, the
underlying mechanism for defining scheduled items in SBTs is significantly different
than that of Product Designer and Advanced Product Designer. Therefore, when you
generate LOB-specific endpoints for SBT products with schedule items, PolicyCenter needs
additional code to determine how to generate the endpoints. This code is defined in the
ComplexSchedulePlugin
plugin.
Implementing the ComplexSchedulePlugin plugin
The ComplexSchedulePlugin
plugin is a part of the base configuration
as of the Garmisch release (2023.02.0). The manner in which this plugin is
implemented varies based on the insurer's original version of PolicyCenter and the
original version of the SBT.
Development starts on Garmisch (or later)
If the development of the product started on a Garmisch (or later) instance of
PolicyCenter using a Garmisch (or later) instance of the SBT, then there is an
implementation of the ComplexSchedulePlugin
plugin included with
the base configuration. No additional work is required.
Updating both a pre-Garmisch PolicyCenter and pre-Garmisch SBT to Garmisch (or later)
If the development of the product started on a pre-Garmisch instance of PolicyCenter
using a pre-Garmisch instance of the SBT, and both PolicyCenter and the SBT are
updated to Garmisch (or later), then no additional work is required. An
implementation of the ComplexSchedulePlugin
plugin will be added to
PolicyCenter during the update process.
Updating a pre-Garmisch PolicyCenter to Garmisch (or later) while using a pre-Garmisch SBT
If the development of the product started on a pre-Garmisch instance of PolicyCenter using a pre-Garmisch instance of the SBT, and only PolicyCenter is updated to Garmisch (or later), then some additional work is required to make the pre-Garmisch SBT compatible with Garmisch PolicyCenter. This additional work consists of the following:
- Download a Garmisch (or later) version of the SBT.
- Copy the following files from the Garmisch (or later) version of the SBT to the existing pre-Garmisch SBT
File location | File name |
/config/plugin/registry |
ComplexSchedulePlugin.gwp |
/gsrc/gw/lob/common/rest/productdefinition/v1/coverage
|
SbtScheduledItemPropertyWrapper.gs |
/gsrc/gw/plugin/rest/v1/impl/ |
SbtComplexSchedulePlugin.gs |
3. In the Garmisch (or later) SBT, find the file from the list below that matches the SBT you are implementing. Replace the pre-Garmisch version of this file in your SBT with the Garmisch (or later) version from the downloaded SBT.
SBT | File location | File name |
SBT-BP7 | /gsrc/gw/lob/bp7 |
BP7BusinessOwnersLineScheduleEnhancement.gsx |
SBT-CA7 | /gsrc/gw/lob/ca7 |
CA7CommAutoLineScheduleEnhancement.gsx |
SBT-CP7 | /gsrc/gw/lob/cp7 |
CP7PropertyLineScheduleEnhancement.gsx |
SBT-CR7 | /gsrc/gw/lob/cr7 |
CR7CrimeLineScheduleEnhancement.gsx |
SBT-GL7 | /gsrc/gw/lob/gl7 |
GL7GeneralLiabilityLineScheduleEnhancement.gsx |
SBT-WCM | /gsrc/gw/lob/wcm |
WCMWorkersCompLineScheduleEnhancement.gsx |
Differences between "product designer" scheduled items and SBT scheduled items
Once there is a suitable plugin implementation, the endpoints for SBT scheduled items work almost entirely the same as scheduled items in Product Designer/Advanced Product Designer products. There are two differences with endpoints for scheduled items in SBT products.
- They have two new scheduled item property types:
additionalInsured
andoption
. These properties have corresponding value properties on theScheduledItemProperty
schema definition. - They can have a set of child
/coverage
endpoints. This is because scheduled items in an SBT product can have coverages attached to them. When theComplexSchedulePlugin
plugin identifies that a given coverable has at least one coverage that has scheduled items with child coverages, it generates the child /coverage endpoints. For example, for an SBT product, there could be an endpoint such as.../buildings/{buildingId}/coverages/{coverageId}/scheduled-items/{scheduledItemId}/coverages/{scheduledItemCoverageId}
.
Generating templates from a finalized product
Products can be created in PolicyCenter using approaches other than Advanced Product Designer. These approaches create a product with several LOB-specific artifacts (such as LOB-specific database tables or PCFs). But, they do not create any LOB-specific endpoints. If you want to expose these lines of business to Cloud API, you need to generate LOB-specific endpoints.
You can achieve this by doing the following:
- Create a template for the product using the reverse template generator.
- Import the product into Advanced Product Designer.
- From the imported product, install only the LOB-specific endpoints.
The reverse template generator is a script that creates an XML template from an installed product. Because the generator generates XML based on the installed product, the resulting template typically has more information in it than what exists in a mind map or in a product that is only visualized.
Advanced Product Designer is not required to run the reverse template generator. Therefore, it is possible to run the reverse template generator in older versions of PolicyCenter to generate a template. However, Advanced Product Designer is required to import the template and install the corresponding endpoints.
Generate a template using the reverse template generator
Procedure
- In PolicyCenter, select . This pane contains a list of products that have been installed by means other than APD.
- In the Installed Products pane, select the product for which you wish to generate an APD template.
- In the Details pane, click Extract APD Representation. PolicyCenter generates the APD template and stores it in the <USER_HOME>/Downloads directory.
Results
Installing LOB-specific endpoints without installing other artifacts
In some situations, you may have an installed product that has no LOB-specific endpoints. For example, this can occur when a product has been created outside of Advanced Product Designer, such as:
- A base configuration product
- A product installed from a Standards Based Template (SBT)
- A product created in Product Designer
You can create a template from the installed product using the reverse template generator, and then import the template into Advanced Product Designer. Once the product has been imported, you can install only the endpoints, without modifying any of the other existing product-specific artifacts.