### Customer JSON Schema Example Source: https://insly.atlassian.net/wiki/spaces/ILDFS/pages/5008523265/Customers%2Bmanagement An example of a JSON schema defining the structure for customer data. It includes properties for personal information, contact details, address, consents, customer type, and documents. ```json { "type": "object", "title": "Customer", "$schema": "http://json-schema.org/draft-07/schema#", "properties": { "customer": { "type": "object", "title": "Customer", "required": [ "name", "email", "phone" ], "properties": { "email": { "type": "string", "title": "E-mail", "pattern": "^[a-zA-Z0-9_.+-]+@[a-zA-Z0-9-]+.[a-zA-Z0-9-.]+$" }, "phone": { "type": "string", "title": "Telefon", "pattern": "^[0-9+ ]*$" }, "address": { "$ref": "#/definitions/address-params" }, "consents": { "type": "object", "title": "consents", "properties": { "saveData": { "type": "boolean", "title": "Save my data" }, "saveDataChangeDate": { "type": [ "string", "null" ], "format": "date", "title": "Save my data change date", "readOnly": true }, "emailNotification": { "type": "boolean", "title": "Email notifications" }, "emailNotificationChangeDate": { "type": [ "string", "null" ], "format": "date", "title": "Email notifications change date", "readOnly": true } } }, "customerType": { "enum": [ "Individual", "Company" ], "type": "string", "title": "Customer type", "default": "Individual" }, "id": { "type": "number" }, "documents": { "type": "object", "title": "Documents", "required": [], "properties": { "documents": { "type": "array", "items": { "$ref": "#/definitions/document" }, "title": "Attached documents", "maxItems": 10, "minItems": 0 } } } } } }, "definitions": { "file": { "type": "object", "properties": { "mime": { "type": "string", "title": "extention", "default": "application/pdf" }, "content": { "type": "string", "title": "Single file", "format": "data-url" }, "filename": { "type": "string", "title": "File name", "default": "filename" }, "createdAt": { "type": "string", "title": "created at", "format": "date" }, "documentId": { "type": "number", "title": "documentId" } } }, "document": { "properties": { "file": { "$ref": "#/definitions/file" }, "fileUpload": { "type": "boolean", "default": true } } }, "address-params": { "type": "object", "title": "Address", "required": [], "properties": { "zip": { "type": [ "string", "null" ], "title": "ZIP" }, "city": { "type": [ "string", "null" ], "title": "City" }, "house": { "type": [ "string", "null" ], "title": "House" }, "county": { "type": [ "string", "null" ], "title": "County" }, "street": { "type": [ "string", "null" ], "title": "Street" }, "country": { "type": [ "string", "null" ], "title": "Country" } } } } } ``` -------------------------------- ### Condition Logic Example: Date Comparison Source: https://insly.atlassian.net/wiki/spaces/ILDFS/pages/3699933218/Referral%2BRules This example shows how to use the 'date()' and 'today()' functions to check if the 'mtaDate' is on or after the current date. ```json "expr": "mtaDate && date(mtaDate) >= today()" ``` -------------------------------- ### Customer Schema Definition Example Source: https://insly.atlassian.net/wiki/spaces/ILDFS/pages/5008523265/Customers%2Bmanagement An example of a customer schema definition, likely used in a system for constructing or validating customer data. It specifies the 'type' and 'title' for an 'apartment' field, indicating it can be a string or null. ```json { "default": "UK" }, "apartment": { "type": [ "string", "null" ], "title": "Apartment" } } ``` -------------------------------- ### Binder Error Message Example Source: https://insly.atlassian.net/wiki/spaces/ILDFS/pages/3522854939/Binders%2BManagement%2Band%2BConfiguration This snippet shows an example error message that appears when no active binders are available for a selected product during quote creation. ```text No binders available for the product XXX ``` -------------------------------- ### API Response Example Source: https://insly.atlassian.net/wiki/spaces/ILDFS/pages/3812917278/Policy%2BImport A sample API response containing server duration and a request correlation ID. ```JSON { "serverDuration": 10, "requestCorrelationId": "f1a894f1a3c4457da3c7f5ba4210ffde" } ``` -------------------------------- ### MTA Configuration JSON Example Source: https://insly.atlassian.net/wiki/spaces/ILDFS/pages/3699671056/MTA Provides a sample JSON object illustrating the structure and possible values for the MTA configuration. This configuration controls various aspects of how policy changes (MTA) are handled. ```json { "enabled": true, "shiftDateInception": true, "premiumType": "full", "showPrevPremium": true, "showPrevAnnualPremiumSum": true, "copyDocsWithReplaceableTypes": [ "quote", "policy", "certificate", "quoteMta" ] } ``` -------------------------------- ### Example Payment Due Date Calculation (Monthly) Source: https://insly.atlassian.net/wiki/spaces/ILDFS/pages/5007736839/Payment%2Bschedule Provides a concrete example of calculating monthly payment due dates for a policy issued on 21.08.2025, starting 30.08.2025 and ending 29.08.2026, with a monthly payment frequency. ```text Example Calculation * **Policy Issued** : 21.08.2025 * **Policy Start Date** : 30.08.2025 * **Policy End Date** : 29.08.2026 * **Payment Frequency (payMonthFrequency)** : 1 (monthly payments) Given the above example, the payment due dates for the 12 instalments will be: Instalment #| Due Date ---|--- Instalment #| Due Date ---|--- 1| 29.08.2025 2| 30.09.2025 3| 30.10.2025 4| 30.11.2025 5| 30.12.2025 6| 30.01.2026 7| 28.02.2026 8| 30.03.2026 9| 30.04.2026 10| 30.05.2026 11| 30.06.2026 12| 30.07.2026 ``` -------------------------------- ### Condition Logic Example: Sum of Costs Source: https://insly.atlassian.net/wiki/spaces/ILDFS/pages/3699933218/Referral%2BRules This example shows a condition expression that checks if the sum of building costs and home contents value is less than or equal to 1000. It uses the 'sum()' function and checks for the existence of 'homeContentsValue'. ```json "expr": "homeContentsValue and (sum(buildingCostList) + homeContentsValue) <= 1000" ``` -------------------------------- ### Condition Logic Example: Combined Variable and Path Source: https://insly.atlassian.net/wiki/spaces/ILDFS/pages/3699933218/Referral%2BRules This example combines a regular variable check ('priceAdjustment') with a path-based condition, checking if the 'type' field in 'adjustments.priceAdjustment' is 'other' and 'priceAdjustment' is less than 5. ```json "expr": "adjustments.priceAdjustment.type == 'other' && priceAdjustment < 5" ``` -------------------------------- ### Condition Logic Example: Price Adjustment Source: https://insly.atlassian.net/wiki/spaces/ILDFS/pages/3699933218/Referral%2BRules This example demonstrates a condition that checks if a price adjustment value is greater than or equal to -10, directly using a path to the field. ```json "expr": "adjustments.priceAdjustment.adjustment >= -10" ``` -------------------------------- ### Conditional Logic Example Source: https://insly.atlassian.net/wiki/spaces/ILDFS/pages/3812917278/Policy%2BImport An example of conditional logic using the '$or' operator to check if a policy is either 'paid_by_broker' or 'settled_with_insurer'. ```JSON { "$or": [ { "paid_by_broker": "Yes" }, { "settled_with_insurer": "Yes" } ] } ``` -------------------------------- ### Example 2: Termination Configuration with Day Precision Source: https://insly.atlassian.net/wiki/spaces/ILDFS/pages/3981770755/Policy%2BTermination This example presents a JSON schema for a 'Termination' object, allowing for 'pro-rata', 'manual', or 'from-instalment' termination types and using 'day' precision for the 'terminationDate'. The associated role configuration restricts termination types and past dates for 'User' and 'Manager' roles. ```json { "type": "object", "title": "Termination", "properties": { "policy": { "type": "object", "required": ["terminationType", "terminationReason"], "properties": { "terminationType": { "type": "string", "enum": ["pro-rata", "manual", "from-instalment"] }, "terminationReason": { "enum": [ "Customer request", "Non-payment", "Business sold", "Project abandoned", "Cover taken elsewhere" ], "type": "string" }, "terminationDate": { "type": "string", "format": "date" } } } } } ``` ```json { "enabled": "roles", "roles": [ { "role": "User", "useLimitTerminationTypes": true, "limitTerminationTypes": ["pro-rata", "from-instalment"], "useLimitTerminationDateInPast": true, "limitTerminationDateInPast": { "days": 7 } }, { "role": "Manager", "useLimitTerminationTypes": true, "limitTerminationTypes": ["pro-rata", "manual", "from-instalment"], "useLimitTerminationDateInPast": true, "limitTerminationDateInPast": { "days": 90 } } ] } ``` -------------------------------- ### Product Schema Configuration for Payment Schedules Source: https://insly.atlassian.net/wiki/spaces/ILDFS/pages/5007736839/Payment%2Bschedule Highlights the importance of the `schedules` section within the main product's schema. This section dictates how instalment schedules are created, parameters are calculated, and settings are applied to different payment plans. ```text 4.1 Schema defines different payment schedule options The main product’s `schedules` section defines how the instalment schedule is created, how parameters are calculated, and which settings are relevant to different payment plans. This section is crucial for managing payment schedules, ensuring that the system calculates payments according to the defined terms. ``` -------------------------------- ### Example 1: Termination Configuration with Date-Time Source: https://insly.atlassian.net/wiki/spaces/ILDFS/pages/3981770755/Policy%2BTermination This example demonstrates a JSON schema for a 'Termination' object, specifying properties like termination type and reason, with a 'terminationDate' in 'date-time' format. It also includes a role configuration that limits termination types and dates for different user roles. ```json { "type": "object", "title": "Termination", "properties": { "policy": { "type": "object", "required": ["terminationType", "terminationReason"], "properties": { "terminationType": { "type": "string", "enum": ["pro-rata", "manual", "full-rollback"] }, "terminationReason": { "enum": [ "Object sold", "Customer request", "Non-payment", "Duplicate policy", "Issued by mistake" ], "type": "string" }, "terminationDate": { "type": "string", "format": "date-time" } } } } } ``` ```json { "enabled": "roles", "roles": [ { "role": "User", "useLimitTerminationTypes": true, "limitTerminationTypes": ["pro-rata"], "useLimitTerminationDateInPast": true, "limitTerminationDateInPast": { "days": 1 } }, { "role": "Supervisor", "useLimitTerminationTypes": true, "limitTerminationTypes": ["pro-rata", "manual", "full-rollback"], "useLimitTerminationDateInPast": true, "limitTerminationDateInPast": { "days": 30 }, "useLimitRollbackTimeByIssuedAt": true, "limitRollbackTimeByIssuedAt": { "hours": 3 } } ] } ``` -------------------------------- ### Configure Quote/Policy Details Fields (JSON) Source: https://insly.atlassian.net/wiki/spaces/ILDFS/pages/3684433966/Quote%2BPolicy%2Bdetails%2Bblock%2Bfields%2Bconfiguration Provides an example JSON structure for configuring fields in the Quote/Policy details block. Each object specifies an internal 'name' for data fetching and a 'title' for UI display. ```json [ { "name": "periodPremium", "title": "Premium" }, { "name": "periodIpt", "title": "IPT" }, { "name": "stampFee", "title": "Tax other" }, { "name": "customerTotal", "title": "Total" }, { "name": "payload.objects.insuredItem.0.products.*.data.underwriting.data.annualPremium", "title": "Annual premium" } ] ``` ```json [ { "name": "periodPremium", "title": "Premium" }, { "name": "periodIpt", "title": "IPT" }, { "name": "pstampFee", "title": "Tax other" }, { "name": "customerTotal", "title": "Total" }, { "name": "payload.objects.insuredItem.0.products.*.data.underwriting.data.annualPremium", "title": "Annual premium" } ] ``` -------------------------------- ### Configure Product Order for Instalments Source: https://insly.atlassian.net/wiki/spaces/ILDFS/pages/5007736839/Payment%2Bschedule This configuration allows for rearranging the order of products within the instalment block on the policy view. It defines the order of objects and specific products for presentation. ```json { "objects": ["insuredItem", "genericRisks"], "products": { "insuredItem": ["propertyDamage", "businessInterruption"], "genericRisks": ["lossOfLicence", "personalAccident", "terrorism"] } } ``` -------------------------------- ### Configure Referral and Declined Rules (JSON) Source: https://insly.atlassian.net/wiki/spaces/ILDFS/pages/3699933218/Referral%2BRules Provides example JSON configurations for both referral and declined rules. Referral rules flag quotes for underwriter review, while declined rules automatically reject them based on specified conditions and messages. ```json [ { "id": "REF001", "type": "referral", "field": ["objects.building.{id}.data.year"], "messages": "Description to make it clear" }, { "id": "DEC001", "type": "declined", "field": ["insuredLocation.address"], "messages": "Description to make it clear" } ] ``` ```json [ { "id": "REF001", //ID for unique referral "type": "referral", //Type of referral referral/declined "field": ["objects.building.{id}.data.year"], //Source field "messages": "Description to make it clear" //Message which is displayed }, { "id": "DEC001", //ID for unique referral "type": "declined", //Type of referral referral/declined "field": ["insuredLocation.address"], //Source field "messages": "Description to make it clear" //Message which is displayed } ] ``` -------------------------------- ### Example: User Permissions for Editing and Accepting Referrals Source: https://insly.atlassian.net/wiki/spaces/ILDFS/pages/3699933218/Referral%2BRules Illustrates how to configure acceptance rules for different user roles. The first rule allows 'Underwriter0' to only edit referrals, while the second rule grants 'Underwriter1' the ability to edit, accept, or decline based on currency conditions. ```JSON "acceptanceRules": [ { "role": "Underwriter0", "scope": { "edit": { "condition": { "expr": "true" } } }, "condition": { "expr": "true" } }, { "role": "Underwriter1", "scope": { "edit": { "condition": { "expr": "true" } }, "accept": { "condition": { "expr": "currency == 'EUR' or currency == 'USD'", "exprVars": [ { "name": "currency", "path": "$.currency" } ] } } }, "condition": { "expr": "true" } } ] ``` -------------------------------- ### Policy Import Error Configuration Example Source: https://insly.atlassian.net/wiki/spaces/ILDFS/pages/3812917278/Policy%2BImport This JSON snippet demonstrates the configuration for handling errors during policy import. It specifies actions like 'skip' or 'cancel' based on defined triggers and provides corresponding error messages. ```json "errors": [ { "action": "skip", "message": "Skipped because policy to be changed not found", "trigger": "mtaMissing" }, { "action": "cancel", "message": "Have positive sum in cancellation. Policy must be inserted manually", "trigger": "cancelPositiveSum" } ] ``` -------------------------------- ### Example Referral Rule Configuration Source: https://insly.atlassian.net/wiki/spaces/ILDFS/pages/3699933218/Referral%2BRules This JSON snippet demonstrates a referral rule configuration. It specifies a condition where if the 'Travel Interruption' sum insured exceeds 500 euros, the quote requires review by a 'Risk engineer' or 'Portfolio manager'. ```json { "id": "REF008", "type": "referral", "message": "Travel interruption sum insured is more than 500 euro", "condition": { "expr": "interruptionSum > 500", "exprVars": [ { "name": "interruptionSum", "path": "$.covers.interruptionSumInsured" } ] }, "acceptanceRules": [ { "role": "Risk engineer", "condition": { "expr": "true" } }, { "role": "Portfolio manager", "condition": { "expr": "true" } } ] } ``` -------------------------------- ### UI Schema for Attaching Documents to Issued Policy Source: https://insly.atlassian.net/wiki/spaces/ILDFS/pages/5007671297/Technical%2BMTA This UI schema example specifies how the 'documents' field should be rendered in the user interface, using a 'FilesListField'. It also defines the order in which fields should appear, prioritizing 'policy' and 'documents'. ```JSON { "documents": { "ui:field": "FilesListField" }, "ui:order": [ "policy", "documents", "*" ] } ``` -------------------------------- ### MTA Configuration - Allowed User Groups Example Source: https://insly.atlassian.net/wiki/spaces/ILDFS/pages/3699671056/MTA Illustrates the format for specifying user groups that are allowed to access the 'change' button for expired policies in the MTA process. ```json [ "admin", "Underwriter", "Broker" ] ``` -------------------------------- ### Configure MTA Quote Logic with JSON Source: https://insly.atlassian.net/wiki/spaces/ILDFS/pages/3699671056/MTA This JSON configuration example demonstrates how to set various parameters for MTA (Mid-Term Adjustment) quotes. It includes options for copying documents, removing specific fields from policy data, enabling pro-rata premium calculations, and handling non-financial changes with source and enablement status. ```json { "copy_documents": true, "removeKeys": [ "policy.mtaDateWithTime" ], "proRataPremium": true, "nonFinancialChanges": { "source": "excel-calculator", "enabled": true } } ``` -------------------------------- ### Subsequent Payment Due Date Calculation Logic Source: https://insly.atlassian.net/wiki/spaces/ILDFS/pages/5007736839/Payment%2Bschedule Describes how subsequent payment due dates are calculated after the first instalment. It is based on the start of the next billing period, adjusted by one day, and considers the policy's payment frequency. ```text Subsequent Payment Due Dates All following due dates are calculated based on the **start of the next billing period** , minus **1 day**. The system takes the policy's frequency (e.g., monthly, quarterly, etc.) and adjusts each due date to the appropriate date according to the defined payment frequency. ``` -------------------------------- ### MTA Schema for Instalment Handling Source: https://insly.atlassian.net/wiki/spaces/ILDFS/pages/5007736839/Payment%2Bschedule Defines how Mid-Term Adjustments (MTAs) affect instalment schedules. It specifies whether an additional instalment is created or if the premium is divided among existing future instalments. ```json { "schedules": { "properties": { "scheduleType": { "enum": [ "partial", "schedule" ], "type": "string", "title": "Schedule types", "default": "partial", "enumNames": [ "Full sum divided by next remaining installments and one new installment", "Full sum divided equally by next remaining installments" ] }, "payMonthFrequency": { "readOnly": true } } } } ``` -------------------------------- ### Configure List UI Settings Path Source: https://insly.atlassian.net/wiki/spaces/ILDFS/pages/5008523283/List%2BUI%2BSettings Provides the navigation path and URL to access the List UI Settings for tenant configuration within the application. ```text Tools > Tenant features > List UI Settings /feature/json-edit/tenant/list_ui_settings ``` -------------------------------- ### Configure Share Object Types and Risks Source: https://insly.atlassian.net/wiki/spaces/ILDFS/pages/3522854939/Binders%2BManagement%2Band%2BConfiguration Defines the order and configuration for share items, including object types and risks. It utilizes AsyncDropdownWidget for dynamic selection, specifying data sources and service endpoints for fetching relevant information. ```json { "shares": { "items": { "ui:order": [ "objectType", "risk", "insurers" ], "groupedObject": true, "objectType": { "ui:widget": "AsyncDropdownWidget", "ui:options": { "label": "$.title", "value": "$.objectType", "query": { "additional": [ { "name": "name", "source": "$.contractDetails.product", "required": true } ] }, "service": "ledger", "endpoint": "/schemes/policy/object-types" } }, "risk": { "ui:widget": "AsyncDropdownWidget", "ui:options": { "label": "$.title", "value": "$.product", "query": { "additional": [ { "name": "name", "source": "$.contractDetails.product", "required": true }, { "name": "objectType", "source": "$.shares.0.objectType", "required": true } ] }, "service": "ledger", "endpoint": "/schemes/policy/products" } } }, "ui:order": [ "summary", "contractDetails", "shares", "*" ], "contractDetails": { "product": { "ui:widget": "ProductsWidget" }, "ui:order": [ "product", "status", "startDate", "endDate" ] }, "schema": { "ui:widget": "hidden" } } } ``` -------------------------------- ### Tariff Engine Requirements for Instalment Calculation Source: https://insly.atlassian.net/wiki/spaces/ILDFS/pages/5007736839/Payment%2Bschedule Details the requirements for the tariff engine when calculating payment instalments. It must provide both the installmentSum and annualPremium at the risk level for accurate processing. ```text Tariff Engine Requirements : * It must return both the **installmentSum** and **annualPremium** at the risk level. ``` -------------------------------- ### Schema Configuration for Policy Termination Source: https://insly.atlassian.net/wiki/spaces/ILDFS/pages/3981770755/Policy%2BTermination Demonstrates how to configure termination schemas, including default, tenant-specific, and product-specific schemas. This configuration dictates the structure and validation rules for termination data. ```JSON { "schemaType": "policy-termination", "schemaName": "default" } { "schemaType": "policy-termination", "schemaName": "" } ``` -------------------------------- ### List View Configuration Parameters Source: https://insly.atlassian.net/wiki/spaces/ILDFS/pages/5008523283/List%2BUI%2BSettings Explains the key JSON parameters used to define columns for list views, including identifiers, data types, labels, and formatting options. ```json { "id": "string", "type.id": "string", "label": "string", "properties.formatValue": "string", "payloadPath": "string", "properties.format": "string", "properties.items": "array" } ``` -------------------------------- ### Define MTA Schema Schedule Types Source: https://insly.atlassian.net/wiki/spaces/ILDFS/pages/3699671056/MTA This JSON snippet defines the 'scheduleType' property within the MTA schema, specifying how premium differences are handled in policy installments. It lists available enum values like 'schedule' and their corresponding descriptions for installment distribution. ```json { "schedules": { "properties": { "payMonthFrequency": { "readOnly": true }, "scheduleType": { "enum": [ "schedule" ], "type": "string", "title": "Schedule types", "default": "schedule", "enumNames": [ "Full sum divided equally by next remaining installments" ] } } } } ``` -------------------------------- ### Example: Set Endorsements Read-Only and Notification Period Hidden Source: https://insly.atlassian.net/wiki/spaces/ILDFS/pages/4055236609/Quote%2BFields%2BVisibility An example configuration showing how to make the 'endorsements' field read-only for 'Broker' and 'Agent' roles, and hide the 'notificationPeriod' field using both schema and UI schema configurations. ```json { "schema": { "addReadOnly": [ { "path": "#/properties/endorsements", "roles": [ "Broker", "Agent" ] } ] }, "ui_schema": { "addHidden": [ { "path": "#/automaticOrManualRenewal/notificationPeriod" } ] } } ``` -------------------------------- ### Configure Binder Settings Source: https://insly.atlassian.net/wiki/spaces/ILDFS/pages/3522854939/Binders%2BManagement%2Band%2BConfiguration This JSON object represents the configuration settings for binders, including disabling the feature, enabling product-level binders, and specifying insurer fields to skip during application. It also controls the editability of gross commission percentages. ```JSON { "disable": false, "disabled": false, "productLevelBinders": true, "insurerFieldsToSkipOnApply": [ "policyLimit" ], "productLevelBindersGrossCommPctEditable": true } ``` -------------------------------- ### Activate Email Configuration for Demo Environment Source: https://insly.atlassian.net/wiki/spaces/ILDFS/pages/3710582800/E-mail%2Bconfiguration Sets the condition for activating email configurations specifically for the Demo environment using an appEnv check. ```JSON { "insly:condition": "{{appEnv == \"demo\"}}" } ``` -------------------------------- ### Shift Policy Period Configuration Source: https://insly.atlassian.net/wiki/spaces/ILDFS/pages/3699671056/MTA Allows for shifting the entire policy period forward if the policy has not yet started. This configuration is dependent on the 'shiftDateInception' setting. ```text shiftDateInception = true ``` -------------------------------- ### Define Product Tag for Email Configuration Source: https://insly.atlassian.net/wiki/spaces/ILDFS/pages/3710582800/E-mail%2Bconfiguration Specifies the product for which an email configuration applies. Product tags are tenant-specific and can be set to 'any' to apply to all products. ```JSON { "product_tag": "motor" } ``` -------------------------------- ### Schedule Type Configuration for MTA Payments Source: https://insly.atlassian.net/wiki/spaces/ILDFS/pages/3699671056/MTA Determines how the premium difference from an MTA is handled in the payment schedule. If 'scheduleType' is set to 'schedule', the difference is added to future installments. ```text scheduleType = schedule ``` -------------------------------- ### Default Payment Due Date Logic Source: https://insly.atlassian.net/wiki/spaces/ILDFS/pages/5007736839/Payment%2Bschedule Explains the default rules for calculating the first payment due date based on the policy start date relative to the current date. ```text Default Payment Due Dates * **If the policy start date is today** : The first instalment due date is set to **today**. * **If the policy start date is in the past** : The first instalment due date is set to **today**. * **If the policy start date is in the future** : The first instalment due date is set to **1 day before the policy start date**. ``` -------------------------------- ### Configure Claim Details and Previous Experience Source: https://insly.atlassian.net/wiki/spaces/ILDFS/pages/3812917278/Policy%2BImport Maps claim details and previous experience descriptions using placeholder values. These fields are associated with specific claim triggers and are set to skip if empty. ```JSON { "claims.insuredItem.0.data.commentAction": { "value": "#{claim_1_details_of_loss}", "skipIfEmpty": true }, "claims.insuredItem.1.data.commentAction": { "value": "#{claim_2_details_of_loss}", "skipIfEmpty": true }, "claims.insuredItem.2.data.commentAction": { "value": "#{claim_3_details_of_loss}", "skipIfEmpty": true }, "claims.insuredItem.3.data.commentAction": { "value": "#{claim_4_details_of_loss}", "skipIfEmpty": true }, "sections.previousExperiencesDetails": { "value": "#{please_describe_your_previous_experience}", "skipIfEmpty": true } ``` -------------------------------- ### Policy Number with Renewal Configuration Source: https://insly.atlassian.net/wiki/spaces/ILDFS/pages/3700326431/Policy%2BNumber%2BConfig Sets a starting number for policy generation and specifies that the policy number should be retained upon renewal, provided the renewal period does not overlap with new business. ```json { "format": "MT2{8}", "renewal": { "keepPolicyNo": true }, "start_from_number": "4822040" } ``` -------------------------------- ### Configure Manual Renewals with Policy Number Sequencing Source: https://insly.atlassian.net/wiki/spaces/ILDFS/pages/3699474441/Renewals This setup enables manual renewals and configures the system to use the original policy number with an incremented suffix for renewal quotes. Automatic quote creation is disabled. ```json { "enabled": true, "automaticProcessEnabled": false, "daysBeforeExpiry": 30, "sequenceRenewalPolicyNumber": true } ``` -------------------------------- ### Activate Email Configuration for Beta Environment Source: https://insly.atlassian.net/wiki/spaces/ILDFS/pages/3710582800/E-mail%2Bconfiguration Sets the condition for activating email configurations specifically for the Beta environment using an appEnv check. ```JSON { "insly:condition": "{{appEnv == \"beta\"}}" } ``` -------------------------------- ### JSON Schema for Endorsement Template Source: https://insly.atlassian.net/wiki/spaces/ILDFS/pages/5007671313/Endorsements This JSON schema defines the structure for an endorsement template. It includes fields for unique identifiers, start and end dates, product associations, referral requirements, and translatable content with nested document definitions. ```JSON { "type": "object", "title": "Endorsements", "$schema": "http://json-schema.org/draft-07/schema#", "required": [ "id", "translatable", "referral", "start_date", "end_date" ], "properties": { "id": { "type": "string", "title": "ID" }, "end_date": { "type": "string", "title": "End date", "format": "date" }, "products": { "type": "array", "items": { "type": "string" }, "title": "Product" }, "referral": { "type": "boolean", "title": "Need for approval", "default": false }, "removable": { "type": "boolean", "title": "Removable", "default": false }, "editable": { "type": "boolean", "title": "Editable", "default": false }, "is_default": { "type": "boolean", "title": "Default", "default": false }, "start_date": { "type": "string", "title": "Start date", "format": "date" }, "groups": { "type": "array", "title": "Groups", "items": { "type": "string", "enum": [ "Group 1", "Group 2", "Group 3" ] } }, "translatable": { "type": "array", "items": { "$ref": "#/definitions/translation-item" }, "title": "Translations", "maxItems": 1, "minItems": 1 } }, "definitions": { "translation-item": { "type": "object", "properties": { "lang": { "title": "Language", "type": "string", "enum": [ "en" ], "enumNames": [ "English" ], "default": "en" }, "name": { "title": "Name", "type": "string" }, "description": { "title": "Description", "type": "string" }, "documents": { "type": "object", "title": "Endorsements Documents", "required": [], "properties": { "dummy": { "type": "string", "title": "Keeps documents object from turning into an empty array when no file is attached, causing validation issues.", "default": "1" }, "documents": { "type": "array", "items": { "$ref": "#/definitions/document" }, "title": "Documents", "maxItems": 1, "minItems": 0 } } } }, "required": [ "lang", "name", "description" ] }, "document": { "properties": { "file": { "$ref": "#/definitions/file" }, "fileUpload": { "type": [ "boolean", "null" ], "default": true } } }, "file": { "type": "object", "properties": { "mime": { "type": [ "string", "null" ], "title": "extention", "default": "application/pdf" }, "content": { "type": [ "string", "null" ], "title": "Single file", "format": "data-url" }, "filename": { "type": [ "string", "null" ], "title": "File name", "default": "filename" }, "createdAt": { "type": [ "string", "null" ], "title": "created at", "format": "date" }, "documentId": { "type": [ "number", "null" ], "title": "documentId" } } } } } ```