Regions
Overview
In Socotra Insurance Suite, regions are used to lend organizational context to the work being done. While generally used to represent a geographic region or state (e.g. "North East"
, "South West"
, "SW"
, "CA"
, "TX"
, "VIC"
, "NSW"
etc), implementers may define whatever collection of regions makes sense for their business use cases.
Regions are defined as a list of strings in configuration, and on the operational side can be assigned to draft quotes. The region value on a quote is automatically copied over to the policy upon issuance. Adding regions to the configuration is optional, as is utilizing them on any given quote or policy.
Once set on a quote and validated, the region
property is fixed for the life of the policy. The property will appear at the top level of a quote and policy.
Use Cases
There are currently three primary use cases for the region
property, with more to follow.
Reporting: The
region
property is replicated into Data Lake and can be leveraged to bring the intended context through to reporting.Data Access Control: The
region
property can be leveraged as one of several values upon which implementers can control which users can access which quotes, policies, or their related entities via the Data Access Controls feature.Work Management: In a work management context, regions will be used primarily as a container for users, groups, and business practice settings. An activity (a specific task or item of work to be done) can be assigned to someone in a given region. More details to follow as our forthcoming Work Management capabilities reach general availability.
Configuration
Like many other configurable entities, regions are defined in configuration as a map of RegionRef.
{
// other config entities
"regions":{
"NW": {
"displayName" : "North West"
},
"NE": {
"displayName" : "North East"
}
}
}
Quote and Policy Regions
Assuming there have been regions configured for the tenant, a quote can be assigned a region while in draft state via a create or update request.
POST /policy/{tenantLocator}/quotes
Name | Position | Type | Required |
---|---|---|---|
tenantLocator | path | uuid | required |
requiredaccountLocator stringproductName stringstartTime datetimedata map<string,object>optionalregion string?autoRenewalPlanName string?delinquencyPlanName string?endTime datetime?currency string?durationBasis Enum? years | months | weeks | days | hourstimezone string?billingLevel Enum? account | inherit | policyexpirationTime datetime?preferences PreferencesResponse?static map<string,object>?coverageTerms map<string,string>?elements ElementCreateRequest[]?billingTrigger Enum? accept | issue (deprecated)
If set, the region
property will appear in the top level of the response when fetching a quote or policy.
GET /policy/{tenantLocator}/quotes/{locator}
Name | Position | Type | Required |
---|---|---|---|
tenantLocator | path | uuid | required |
locator | path | string | required |
requiredlocator stringaccountLocator stringgroupLocator stringproductName stringquoteState Enum draft | validated | earlyUnderwritten | priced | underwritten | accepted | issued | underwrittenBlocked | declined | rejected | refused | discardedbillingLevel Enum account | inherit | policyelement ElementResponsecontacts ContactRoles[]optionalpolicyLocator string?quickQuoteLocator string?region string?autoRenewalPlanName string?delinquencyPlanName string?issuedTime datetime?startTime datetime?endTime datetime?acceptedTime datetime?currency string?duration number?durationBasis Enum? years | months | weeks | days | hourstimezone string?billingTrigger Enum? accept | issueexpirationTime datetime?preferences PreferencesResponse?quoteNumber string?underwritingStatus string?validationResult ValidationResult?
GET /policy/{tenantLocator}/policies/{locator}
Name | Position | Type | Required |
---|---|---|---|
tenantLocator | path | uuid | required |
locator | path | string | required |
requiredlocator stringaccountLocator stringissuedTransactionLocator string
The locator of the latest issued transaction for the policy.latestSegmentLocator string
The last segment on the policy, based on issued transactions onlylatestTermLocator stringproductName stringstartTime datetime
The start time, based on issued transactions onlyendTime datetime
The end time based on issued transactions only.currency stringdurationBasis Enum years | months | weeks | days | hourstimezone stringbillingLevel Enum account | inherit | policystatic map<string,object>createdAt datetimecreatedBy uuidcontacts ContactRoles[]statuses Enum[] pending | inGap | expired | cancelled | cancelPending | onRisk | delinquent | doNotRenewbillingTrigger Enum accept | issue (deprecated)optionalregion string?autoRenewalPlanName string?delinquencyPlanName string?policyNumber string?validationResult ValidationResult?branchHeadTransactionLocators string[]?
The locators of all the top-level transactions on the policy, one per branch