### Example Configuration for Getting Started with Socotra Data Lake Source: https://docs.socotra.com/featureGuide/policyQuotation/quickQuotes.html Provides initial steps and prerequisites for users wanting to start using the Socotra Data Lake. This includes setting up access and understanding the schema. ```markdown ## Getting Started with Socotra Data Lake ### Prerequisites - Access to Socotra platform - Appropriate user permissions - An analytical tool capable of connecting via JDBC/ODBC (e.g., Tableau, Power BI) ### Data Lake Schema Refer to the 'Index of Tables' section for a detailed schema definition. ``` -------------------------------- ### Getting Started with Socotra Data Lake Source: https://docs.socotra.com/configuration/dataExtensions/staticData.html This guide provides instructions on how to get started with the Socotra Data Lake, including prerequisites and an overview of the Data Lake schema. ```APIDOC ## Getting Started with Socotra Data Lake ### Prerequisites - Access credentials to the Socotra platform. - Understanding of SQL and data warehousing concepts. - Appropriate tools for data analysis (e.g., SQL client, BI tools). ### Data Lake Schema The Data Lake schema defines the structure of the data available for analysis. It is typically organized into tables that represent different aspects of the insurance lifecycle, such as policies, claims, billing, and users. The schema is designed for analytical querying and may differ from the transactional API schema. Key aspects of the schema include: - **Fact Tables**: Contain metrics and measures. - **Dimension Tables**: Provide context and attributes for facts. - **Relationship Keys**: How tables are joined for comprehensive analysis. Refer to the [Index of Tables](#index-of-tables) for detailed information on each table within the schema. ``` -------------------------------- ### Data Lake - Getting Started Source: https://docs.socotra.com/api/billing/delinquencyApi.html This guide introduces the Socotra Data Lake, covering prerequisites and the Data Lake schema. ```APIDOC ## Getting Started with Socotra Data Lake ### Prerequisites Lists the necessary requirements and setup steps before you can start using the Socotra Data Lake, such as necessary permissions or access credentials. ### Data Lake Schema Provides a detailed explanation of the Data Lake schema, including table structures, column definitions, data types, and relationships between different data entities. This is essential for understanding and querying the data effectively. ``` -------------------------------- ### Configuration Bootstrap Example Source: https://docs.socotra.com/featureGuide/billing/autoCreditApplication.html An example illustrating the structure and content of a configuration bootstrap file. This is used for initializing Socotra configurations, providing a starting point for system setup and deployment. ```yaml # Example bootstrap.yaml version: 1 configuration: # Your configuration elements here policy_limits: max_endorsements: 10 # Other configuration sections... ``` -------------------------------- ### Configuration Bootstrap Example (YAML) Source: https://docs.socotra.com/featureGuide/underwriting.html An example configuration file demonstrating the structure and content for bootstrapping the Socotra system. This file is essential for initial setup and validation of configuration elements. ```yaml apiVersion: socotra.com/v1 kind: Configuration metadata: name: my-app-config spec: # Configuration details here ``` -------------------------------- ### Getting Started with Socotra Data Lake (SQL) Source: https://docs.socotra.com/api/reporting/metricsApi.html Illustrates a basic SQL query to interact with the Socotra Data Lake. This example shows how to select data from a specific table, demonstrating the fundamental approach to querying the data lake for analytical purposes. ```sql SELECT policy_id, policy_number, written_premium FROM policies WHERE effective_date >= '2023-01-01'; ``` -------------------------------- ### Example Configuration for Obtaining the Migration Client Source: https://docs.socotra.com/featureGuide/policyQuotation/quickQuotes.html Provides instructions on how to obtain and set up the Socotra Migration Client. This typically involves downloading or installing the client software. ```bash # Download the latest version from the Socotra portal curl -O https://downloads.socotra.com/migration-client/latest/migration-client.tar.gz tar -xvf migration-client.tar.gz cd migration-client ``` -------------------------------- ### Data Lake Delta Files - Getting Started Source: https://docs.socotra.com/api/billing/delinquencyApi.html This section provides an introduction to Data Lake Delta Files, covering their overview, schema versioning, pagination, and includes a client example. ```APIDOC ## Getting Started with Data Lake Delta Files ### Overview An introduction to Data Lake Delta Files, explaining their purpose and how they represent changes in the data over time. These files are crucial for incremental data processing and auditing. ### Schema Versioning Details how schema changes are managed and versioned for delta files, ensuring compatibility and consistency. ### Pagination Explains how to paginate through large sets of delta files, allowing for efficient retrieval of data in manageable chunks. ### Client Example Provides a code example demonstrating how to interact with the Data Lake Delta Files API using a client, showcasing common operations like listing and retrieving files. ``` -------------------------------- ### Socotra Configuration SDK - Getting Started Source: https://docs.socotra.com/api/quotes/quotesApi.html Illustrates the initial steps for using the Socotra Configuration SDK. It addresses the necessity of an SDK for managing configurations and provides guidance on how to begin writing and maintaining them. ```python # This is a conceptual example, actual SDK usage may vary. # Assuming an SDK is available for interacting with Socotra configurations. # from socotra_config_sdk import SocotraConfigClient # # Initialize the client # client = SocotraConfigClient(api_key="YOUR_API_KEY", environment="production") # # Example: Loading a configuration element # try: # policy_config = client.get_configuration("policy", "my_policy_template") # print("Successfully loaded policy configuration.") # except Exception as e: # print(f"Error loading configuration: {e}") # # Example: Deploying a configuration change # new_config_data = { # "some_field": "new_value" # } # try: # client.deploy_configuration("policy", "my_policy_template", new_config_data) # print("Successfully deployed configuration change.") # except Exception as e: # print(f"Error deploying configuration: {e}") # The SDK simplifies the process of writing and maintaining configurations by abstracting API calls and handling validation logic. ``` -------------------------------- ### Configuration SDK Overview Source: https://docs.socotra.com/featureGuide/policyQuotation/quickQuotes.html Provides an overview of the Configuration SDK, discussing its necessity and guiding users on getting started with writing and maintaining configurations. ```APIDOC ## SDK Overview: Configuration SDK ### Description This section details the Configuration SDK, addressing the question of whether an SDK is truly necessary for managing configurations and providing a guide to getting started. ### Getting Started #### Prerequisites - Basic understanding of JSON and configuration management. - Access to the Socotra platform and necessary permissions. #### Steps 1. **Install the SDK:** Follow the installation instructions specific to your development environment. 2. **Initialize the SDK:** Configure the SDK with your API credentials and endpoint details. 3. **Write Configurations:** Use the SDK's functions to create, update, and validate configuration files. 4. **Deploy Configurations:** Utilize the SDK to deploy your configurations to the Socotra platform. 5. **Best Practices:** Refer to the documentation for best practices in configuration management, including versioning and testing. ### Example Usage (Conceptual) ```python # Example using a hypothetical Python SDK from socotra_sdk import SocotraConfigClient client = SocotraConfigClient(api_key="YOUR_API_KEY") config_data = { "name": "new_feature_toggle", "value": {"enabled": true} } # Deploy a new configuration response = client.deploy_configuration(config_data) print(response.message) # Update an existing configuration updated_config_data = { "value": {"enabled": false} } response = client.redeploy_configuration("new_feature_toggle", updated_config_data) print(response.message) ``` ``` -------------------------------- ### Configuration Bootstrap Example Source: https://docs.socotra.com/configuration/plugins/documentSelection.html Illustrates a basic example of a configuration bootstrap file. This shows the directory structure and basic validation notes for initializing Socotra configurations. ```json { "schemaVersion": "1.0", "configurations": [ { "name": "default", "version": "1.0.0", "files": [ "./policies/auto.json", "./rules/underwriting.json" ] } ] } ``` -------------------------------- ### Simple Retire After Configuration Example Source: https://docs.socotra.com/configuration/generalTopics/availability.html An example of a minimal AvailabilityRef configuration setting a specific retirement time for a product. This configuration ensures the product is not available for new terms starting after the specified datetime. ```json { "availability": { "retireAfter": "2024-06-01T00:00:00+0000" } } ``` -------------------------------- ### Example: Billing Previews Configuration Source: https://docs.socotra.com/ui-sdk/components/rendering-customizations.html This section likely provides an example of how to configure billing previews. Billing previews allow users to simulate billing scenarios and review potential charges before they are finalized. The example would illustrate the setup for these previews. ```text Billing Previews ``` -------------------------------- ### Moratorium Configuration Example Source: https://docs.socotra.com/configuration/plugins/overview.html Provides an example of how to configure moratoriums within the product setup. ```APIDOC ## GET /moratoriums/beta/configuration/example ### Description Provides an example configuration for moratoriums. ### Method GET ### Endpoint /moratoriums/beta/configuration/example ### Response #### Success Response (200) - **productConfiguration** (object) - Example product configuration snippet. - **moratoriumConfiguration** (object) - Example moratorium configuration snippet. #### Response Example ```json { "example": { "productConfiguration": { "moratoriumRules": [ { "name": "flood_zone_moratorium", "description": "Moratorium for flood-related claims.", "triggerEvent": "FLOOD_WARNING" } ] }, "moratoriumConfiguration": { "defaultSuspendedOperations": ["endorsements", "cancellations"], "duration": "7d" } } } ``` ``` -------------------------------- ### Example: Media Upload Configuration in Socotra Source: https://docs.socotra.com/configuration/dataExtensions/staticData.html This example shows a basic configuration for handling media uploads within Socotra. It outlines the structure for defining media-related settings. ```json { "media": { "upload": { "maxFileSizeMB": 10, "allowedFileTypes": ["image/jpeg", "image/png", "application/pdf"], "storagePath": "/socotra/media/uploads/" } } } ``` -------------------------------- ### Moratorium Configuration Example Source: https://docs.socotra.com/api/reporting/metricsApi.html Example demonstrating how to configure moratoriums for product and moratorium settings. ```APIDOC ## Moratorium Configuration Example ### Description Illustrates the configuration structure for moratoriums, showing how product rules and moratorium settings are defined. ### Product Configuration Example ```json { "product": { "name": "Example Product", "moratoriumRules": [ { "ruleName": "BillingHoldRule", "appliesTo": "BILLING", "conditions": { "policyState": "active" } } ] } } ``` ### Moratorium Configuration Example ```json { "moratorium": { "name": "SystemMaintenance", "description": "Temporary halt during system maintenance.", "effectiveTime": "2023-11-01T00:00:00Z", "operations": ["POLICY_SERVICING", "BILLING"] } } ``` ``` -------------------------------- ### Configuration Example for Moratoriums Source: https://docs.socotra.com/configuration/plugins/autopayAndPaymentExecution.html This snippet provides a configuration example for setting up moratoriums in Socotra. It illustrates how to define the parameters and settings required to implement moratoriums, including their applicability, effective times, and associated operations. This is a practical guide for administrators and product configurators. ```text Configuration Example for Moratoriums Implementing moratoriums requires careful configuration within the Socotra platform. Below is a conceptual example of how moratorium settings might be defined: ```json { "moratorium": { "name": "COVID-19_Business_Interruption", "description": "Temporary suspension of new business and policy changes due to COVID-19 impact.", "effectiveTime": "2020-03-15T00:00:00Z", "endTime": "2020-09-30T23:59:59Z", "applicability": { "productCodes": ["BUSINESS_INS", "LIABILITY_INS"], "policyTypes": ["NEW", "ENDORSEMENT"] }, "operations": { "newBusiness": false, "endorsements": false, "renewals": true, "cancellations": true }, "suspensionDetails": { "reason": "Economic impact of pandemic.", "notes": "Specific industries may have additional restrictions." } } } ``` This example demonstrates defining the moratorium's name, duration, which products and policy types it affects, which operations are suspended or allowed, and provides details about the reason for the moratorium. ``` -------------------------------- ### Example Media Configuration in Socotra Source: https://docs.socotra.com/api/configurationAndDevelopment/configurationAndDevelopmentApiIndex.html Shows an example of how media assets can be configured within the Socotra platform. This snippet highlights the structure for defining and associating media with other entities. ```text Example ``` -------------------------------- ### Configuration SDK Source: https://docs.socotra.com/configuration/dataExtensions/staticData.html This documentation provides information about the Configuration SDK, its purpose, and how to get started with writing and maintaining configurations. ```APIDOC ## Configuration SDK ### Overview The Configuration SDK is a toolset designed to assist developers in creating, managing, and validating insurance product configurations for the Socotra platform. It aims to streamline the configuration process. ### Do I really need an SDK to write and maintain configs? While it's possible to write configurations manually using text editors, the SDK offers significant advantages in terms of validation, automation, and adherence to best practices, especially for complex configurations. ### Getting Started This section guides you through the initial steps of setting up and using the Configuration SDK. ### Prerequisites - Ensure you have a compatible development environment set up. - Install the Socotra Configuration SDK following the provided installation instructions. ### Using the SDK - **Writing Configurations**: Learn how to structure your configuration files using the SDK's templates and guidelines. - **Validating Configurations**: Utilize the SDK's validation tools to check your configurations against the platform's schema before deployment. - **Managing Configurations**: Explore features for version control and organizing your configuration assets. ``` -------------------------------- ### Configuration SDK Source: https://docs.socotra.com/featureGuide/jurisdictions/jurisdictions.html Discusses the Configuration SDK, its purpose, and provides guidance on getting started with writing and maintaining configurations using the SDK. ```APIDOC ## Configuration SDK ### Description This section introduces the Configuration SDK (Software Development Kit) and explains its benefits for managing Socotra configurations. It provides guidance for developers on how to get started. ### Overview The Configuration SDK provides tools and libraries that simplify the process of writing, validating, and managing complex insurance configurations for the Socotra platform. It aims to streamline the development workflow for configuration engineers. ### Do I really need an SDK to write and maintain configs? While it's possible to write configurations manually using text editors, the SDK offers significant advantages: - **Validation**: Real-time or batch validation against schemas and business rules, catching errors early. - **Code Assistance**: Features like autocompletion, syntax highlighting, and error checking. - **Modularity**: Tools to help organize configurations into reusable components. - **Testing**: Utilities for unit testing configuration logic. - **Version Control Integration**: Easier integration with version control systems. ### Getting Started To begin using the Configuration SDK: 1. **Installation**: Follow the instructions to install the SDK on your development environment. 2. **Project Setup**: Create a new configuration project using the SDK's project initialization commands. 3. **Writing Configurations**: Use the SDK's libraries and tools to define your products, rules, and other configuration elements. 4. **Validation**: Regularly use the SDK's validation commands to check your configurations for errors. 5. **Deployment**: Integrate the SDK with your deployment pipeline to push validated configurations to the Socotra platform. ### See Also - Configuration Deployment - Configuration Redeployment - Configuration Bootstrap ``` -------------------------------- ### Configuration SDK Overview Source: https://docs.socotra.com/configuration/plugins/overview.html Provides an overview of the Configuration SDK, answering questions about its necessity and getting started. ```APIDOC ## GET /sdk/configuration/overview ### Description Provides an overview and guidance on using the Configuration SDK. ### Method GET ### Endpoint /sdk/configuration/overview ### Response #### Success Response (200) - **sdkOverview** (string) - General information about the SDK. - **necessity** (string) - Explanation on when the SDK is recommended. - **gettingStarted** (string) - Steps to begin using the SDK. #### Response Example ```json { "example": { "sdkOverview": "The Configuration SDK allows programmatic management of Socotra configurations.", "necessity": "The SDK is highly recommended for complex configurations or automated management.", "gettingStarted": "1. Install the SDK package. 2. Authenticate with your Socotra credentials. 3. Use the provided methods to interact with configurations." } } ``` ``` -------------------------------- ### Installments Plugin Source: https://docs.socotra.com/api/billing/holdsApi.html Guide to the Installments Plugin, covering overview, execution, adjustment rules, and implementation examples. ```APIDOC ## Installments Plugin ### Description Guide to the Installments Plugin, covering overview, execution, adjustment rules, and implementation examples. ### Topics - Overview - Plugin Execution - Adjustment Rules - Implementation Example ``` -------------------------------- ### Product Configuration Example for Moratoriums Source: https://docs.socotra.com/api/configurationAndDevelopment/configurationAndDevelopmentApiIndex.html Illustrates how moratoriums are configured within a product definition in Socotra. This example shows the integration of moratorium settings into product rules. ```text Product Configuration ``` -------------------------------- ### Configuration SDK Source: https://docs.socotra.com/api/configurationAndDevelopment/anonymizationApi.html Information about the Configuration SDK, including its purpose and getting started guide. ```APIDOC ## Configuration SDK ### Description This section provides information about the Socotra Configuration SDK, its benefits, and how to get started with it for writing and maintaining configurations. ### Overview The Configuration SDK is a set of tools and libraries designed to help developers and administrators create, manage, and validate Socotra configurations more efficiently. It provides programmatic access to configuration elements and validation services. ### Do I really need an SDK to write and maintain configs? While it's possible to write configurations manually using text editors and understanding the JSON/YAML schemas, the SDK offers significant advantages for complex configurations or team-based development. It helps enforce standards, automate repetitive tasks, and integrate configuration management into CI/CD pipelines. ### Getting Started #### Prerequisites - Ensure you have a supported version of Node.js installed. - Familiarize yourself with the basic structure of Socotra configurations. #### Installing the SDK ```bash npm install @socotra/configuration-sdk ``` #### Basic Usage Example ```javascript const { ConfigurationManager } = require('@socotra/configuration-sdk'); async function createProductConfig() { const configManager = new ConfigurationManager(); const productDefinition = { "name": "Example Product", "description": "A sample product configuration.", "version": 1 // ... other product properties }; try { const validationResult = await configManager.validateConfiguration(productDefinition, 'product'); if (validationResult.isValid) { console.log('Configuration is valid!'); // Proceed with deployment or saving } else { console.error('Configuration validation failed:', validationResult.errors); } } catch (error) { console.error('An error occurred:', error); } } createProductConfig(); ``` ``` -------------------------------- ### Migration Client Tutorial Source: https://docs.socotra.com/configuration/dataExtensions/staticData.html A step-by-step tutorial for using the Migration Client, covering prerequisites, configuration, and practical usage with patch files and Coda. ```APIDOC ## Migration Client Tutorial This tutorial guides you through the process of using the Migration Client to manage data migrations within Socotra. ### Prerequisites - Ensure you have the Socotra CLI installed and configured. - Have your migration source data ready (e.g., CSV files, database exports). - Understand the target schema in Socotra. ### Configuring the Migration Client Set up the client by providing connection details to your Socotra instance and specifying the location of your migration scripts and data. ### Configuring the processor Define how the client should process your source data, including data transformations, mappings, and validation rules. ### Using patch files Patch files allow you to apply incremental updates or corrections to your migration data before or during the migration process. ### Using Coda (Explanation of how Coda, a potential data transformation or processing tool, integrates with the Migration Client for advanced data manipulation.) ### Obtaining the Client (Instructions on how to download or access the Migration Client, likely through the Socotra CLI or a dedicated package.) ``` -------------------------------- ### Media Overview Example Source: https://docs.socotra.com/ui-sdk/components/new-disbursement-form.html An example demonstrating the usage of the Media feature within Socotra. This snippet might show how to associate media assets with specific records or operations. ```json { "recordLocator": "policy_locator_abc123", "media": [ { "type": "document", "url": "https://example.com/docs/policy_document.pdf", "description": "Policy Declaration Page" }, { "type": "image", "url": "https://example.com/images/vehicle.jpg", "description": "Vehicle Image" } ] } ``` -------------------------------- ### Configuration Example for Moratoriums in Socotra Source: https://docs.socotra.com/configuration/dataExtensions/staticData.html This example showcases a configuration snippet for moratoriums within the Socotra platform. It illustrates how moratoriums can be defined and applied to products. ```json { "product": { "name": "Example Product", "moratoriums": [ { "name": "General Moratorium", "description": "A standard moratorium applied to all policies.", "effectiveTime": "2023-01-01T00:00:00Z", "endTime": "2023-12-31T23:59:59Z", "status": "Active", "applicability": "All Policies", "eligibility": "All Policyholders" } ] } } ``` -------------------------------- ### Set up Config SDK for Tenant Configuration (CLI Example) Source: https://docs.socotra.com/api/configurationAndDevelopment/dataAccessApi.html Illustrates the command-line usage for setting up and interacting with the Socotra Config SDK. This includes fetching tenant configurations and potentially generating code artifacts. ```bash # Part 1 - Create a Personal Access Token (Example command, actual process may vary) # socotra-cli auth login --username --password # Part 2 - Download and configure the Config SDK (Example command) # socotra-cli config download --tenant --output ./tenant-config # Part 3 - Fetch your tenant's config (Example command) # socotra-cli config fetch --tenant ``` -------------------------------- ### Generate Installment Lattice JSON Example Source: https://docs.socotra.com/gettingStarted/trigger-billing-pay-and-invoices.html This JSON object represents an installment lattice for a 12-month insurance policy with a 'Monthly 10' installment plan. It includes details about the policy term, currency, timezone, and an array of frames, each with specific start and end times for installments and coverage, along with calculated weights and durations. ```json { "locator": "01J5E66WEQV8GGKSH5RTQAYCTB", "settingsLocator": "01J5E66WEK8SNY0QWJPSBKAVWG", "createdAt": "2024-08-16T18:11:46.092575Z", "createdBy": "f700dff5-2a34-4fac-9c32-aa4287068d45", "accountLocator": "01J5E5RNSWR0QVPCFF2XT83CFK", "termStartTime": "2024-01-01T00:00:00Z", "termEndTime": "2025-01-01T00:00:00Z", "termLocator": "01J5E660YXGBBNT26TQESCZHQF", "quoteLocator": "01J5E660YXGBBNT26TQESCZHQF", "policyLocator": "01J5E660YXGBBNT26TQESCZHQF", "currency": "USD", "timezone": "America/New_York", "effectiveTime": "2024-01-01T00:00:00Z", "frames": [ { "installmentStartTime": "2024-01-01T00:00:00Z", "installmentEndTime": "2024-01-31T05:00:00Z", "coverageStartTime": "2024-01-01T00:00:00Z", "coverageEndTime": "2024-03-06T06:32:44Z", "normalizedWeight": 0.181818181818, "coverageDuration": 2.170088112306, "generateTime": "2023-12-17T05:00:00Z", "dueTime": "2024-01-01T04:59:59.999Z", "installmentDuration": 0.974462365591 }, { "installmentStartTime": "2024-01-31T05:00:00Z", "installmentEndTime": "2024-02-29T05:00:00Z", "coverageStartTime": "2024-03-06T06:32:44Z", "coverageEndTime": "2024-04-09T03:21:49Z", "normalizedWeight": 0.090909090909, "coverageDuration": 1.102639125348, "generateTime": "2024-01-17T05:00:00Z", "dueTime": "2024-02-01T04:59:59.999Z", "installmentDuration": 0.998238783834 }, { "installmentStartTime": "2024-02-29T05:00:00Z", "installmentEndTime": "2024-03-31T04:00:00Z", "coverageStartTime": "2024-04-09T03:21:49Z", "coverageEndTime": "2024-05-11T20:49:05Z", "normalizedWeight": 0.090909090909, "coverageDuration": 1.079178750996, "generateTime": "2024-02-15T05:00:00Z", "dueTime": "2024-03-01T04:59:59.999Z", "installmentDuration": 1.001761216166 }, { "installmentStartTime": "2024-03-31T04:00:00Z", "installmentEndTime": "2024-04-30T04:00:00Z", "coverageStartTime": "2024-05-11T20:49:05Z", "coverageEndTime": "2024-06-14T14:16:22Z", "normalizedWeight": 0.090909090909, "coverageDuration": 1.102639536041, "generateTime": "2024-03-17T04:00:00Z", "dueTime": "2024-04-01T03:59:59.999Z", "installmentDuration": 0.999148745520 }, { "installmentStartTime": "2024-04-30T04:00:00Z", "installmentEndTime": "2024-05-31T04:00:00Z", "coverageStartTime": "2024-06-14T14:16:22Z", "coverageEndTime": "2024-07-17T07:43:38Z", "normalizedWeight": 0.090909090909, "coverageDuration": 1.073313644962, "generateTime": "2024-04-16T04:00:00Z", "dueTime": "2024-05-01T03:59:59.999Z", "installmentDuration": 1.000851254480 }, { "installmentStartTime": "2024-05-31T04:00:00Z", "installmentEndTime": "2024-06-30T04:00:00Z", "coverageStartTime": "2024-07-17T07:43:38Z", "coverageEndTime": "2024-08-20T16:27:16Z", "normalizedWeight": 0.090909090909, "coverageDuration": 1.108504330944, "generateTime": "2024-05-17T04:00:00Z", "dueTime": "2024-06-01T03:59:59.999Z", "installmentDuration": 0.999148745520 }, { "installmentStartTime": "2024-06-30T04:00:00Z", "installmentEndTime": "2024-07-31T04:00:00Z", "coverageStartTime": "2024-08-20T16:27:16Z", "coverageEndTime": "2024-09-22T18:38:11Z", "normalizedWeight": 0.090909090909 } ] } ``` -------------------------------- ### Set up Config SDK for Tenant Configuration (Example) Source: https://docs.socotra.com/api/configurationAndDevelopment/anonymizationApi.html This example illustrates how to use the Socotra Config SDK to fetch tenant configuration. It shows a basic command-line usage for downloading and configuring the SDK, and then retrieving configuration data. ```bash # Part 1 - Create a Personal Access Token (Manual Step via Socotra UI) # Part 2 - Download and configure the Config SDK # Assuming SDK is installed and configured with your PAT # Part 3 - Fetch your tenant's config config-sdk fetch --tenant my_tenant_id --output ./tenant_config.json ``` -------------------------------- ### Socotra Configuration SDK Usage Source: https://docs.socotra.com/featureGuide/billing/excessCredits.html Discusses the necessity and usage of the Configuration SDK for writing and maintaining configurations in Socotra. It guides users on getting started with the SDK. ```text Configuration SDK Overview Do I really need an SDK to write and maintain configs? Getting Started ``` -------------------------------- ### Moratorium Configuration Example Source: https://docs.socotra.com/featureGuide/policyManagement/policyElements.html Provides an example of how to configure moratoriums within the Socotra platform. This includes settings for applicability, eligibility, and operational impacts. ```text Moratorium Configuration Example ``` -------------------------------- ### Example of Multiple Frames in an Installment Lattice (JSON) Source: https://docs.socotra.com/gettingStarted/trigger-billing-pay-and-invoices.html Illustrates a sequence of frames within an installment lattice, showcasing how installment and coverage periods evolve over time. This example highlights the differing end times for installment and coverage periods, typical for policies with non-standard billing schedules. ```json { "frames": [ { "installmentStartTime": "2024-01-01T00:00:00Z", "installmentEndTime": "2024-01-31T05:00:00Z", "coverageStartTime": "2024-01-01T00:00:00Z", "coverageEndTime": "2024-03-06T06:32:44Z", "normalizedWeight": 0.181818181818, "coverageDuration": 2.170088112306, "generateTime": "2023-12-17T05:00:00Z", "dueTime": "2024-01-01T04:59:59.999Z", "installmentDuration": 0.974462365591 }, { "installmentStartTime": "2024-01-31T05:00:00Z", "installmentEndTime": "2024-02-29T05:00:00Z", "coverageStartTime": "2024-03-06T06:32:44Z", "coverageEndTime": "2024-04-09T03:21:49Z", "normalizedWeight": 0.090909090909, "coverageDuration": 1.102639125348 } ], "reversalLattice": false } ``` -------------------------------- ### Installments Plugin Source: https://docs.socotra.com/featureGuide/security/securityOverview.html Information on the Installments Plugin, including overview, execution, adjustment rules, and implementation example. ```APIDOC ## Installments Plugin ### Overview Provides an overview of the Installments Plugin, covering its execution and adjustment rules. ### Implementation Example An example demonstrating the implementation of the Installments Plugin. ``` -------------------------------- ### Configuration Bootstrap Example (YAML) Source: https://docs.socotra.com/api/reporting/metricsApi.html An example configuration file demonstrating the bootstrap process for Socotra configurations. This YAML structure outlines how to define various configuration elements, including their names, types, and specific properties, essential for initializing the system. ```yaml configuration: name: "my_product_config" version: 1 elements: - name: "policy_number_format" type: "string" value: "POL-{YYYYMMDD}-{NNNN}" - name: "default_deductible" type: "decimal" value: "100.00" - name: "coverage_limits" type: "map" value: collision: "50000.00" comprehensive: "25000.00" ``` -------------------------------- ### Installments Source: https://docs.socotra.com/featureGuide/security/secureDeployment.html Information regarding installments, including overview, plugin execution, adjustment rules, and implementation examples. ```APIDOC ## Installments ### Description Information regarding installments, including overview, plugin execution, adjustment rules, and implementation examples. ### Topics * **Overview**: General overview of installments. * **Plugin Execution**: How plugins interact with installments. * **Adjustment Rules**: Rules for adjusting installment plans. * **Implementation Example**: An example of implementing installment logic. ``` -------------------------------- ### Set up Config SDK - Fetch Tenant Config Example Source: https://docs.socotra.com/api/quotes/quotesApi.html Illustrates how to use the Socotra Config SDK to fetch a tenant's configuration. This involves authenticating with the SDK and specifying the tenant to retrieve configuration from. ```javascript // Example using the Config SDK (conceptual) // const socotraConfig = require('@socotra/config-sdk'); // // async function fetchTenantConfig(tenantId, apiKey) { // const client = new socotraConfig.Client({ apiKey: apiKey }); // const config = await client.fetchTenantConfig(tenantId); // console.log(config); // } ``` -------------------------------- ### Configuration Bootstrap Example Source: https://docs.socotra.com/ui-sdk/components/new-disbursement-form.html An example illustrating the structure and content of a configuration bootstrap file. This file is used to initialize or update system configurations, and includes notes on validation and directory structure. ```yaml # Example bootstrap.yaml # This file defines initial configurations for Socotra. apiVersion: socotra.com/v1 kind: Configuration metadata: name: initial-config spec: # Define your configuration elements here policy_rules: - name: "age_limit_rule" logic: "policy.insured.age > 18" # Other configuration sections like products, workflows, etc. # Notes: # - Ensure the bootstrap directory contains this file. # - Validations will be performed upon deployment. ``` -------------------------------- ### Plugins - Installments Source: https://docs.socotra.com/releaseNotes.html Overview of the Installments plugin, including its execution, adjustment rules, and implementation examples. ```APIDOC ## Installments Plugin ### Description Information about the Installments plugin, covering its overview, how it executes, rules for adjusting installments, and an example of its implementation. ### Method N/A (Informational) ### Endpoint N/A ### Parameters None ### Request Example None ### Response None (Informational Content) ``` -------------------------------- ### Example Media Upload Configuration Source: https://docs.socotra.com/configuration/plugins/documentSelection.html Shows a basic configuration example for handling media uploads within the Socotra platform. This outlines the structure and key parameters for media management. ```json { "media": { "upload": { "enabled": true, "maxFileSizeMB": 10, "allowedMimeTypes": ["image/jpeg", "image/png", "application/pdf"] } } } ``` -------------------------------- ### Installments Plugin Source: https://docs.socotra.com/configuration/plugins/cancellation.html Information on the Installments Plugin, including its overview, execution, adjustment rules, and implementation examples. ```APIDOC ## Installments Plugin ### Description Details regarding the Installments Plugin, which manages payment installments. It covers the plugin's overview, execution flow, rules for adjusting installments, and provides an implementation example. ### Method N/A (Informational) ### Endpoint N/A ### Parameters None ### Request Example None ### Response None (Informational content) ``` -------------------------------- ### Configuration Bootstrap Example Source: https://docs.socotra.com/featureGuide/claims/fnol.html Illustrates the structure and content of a configuration bootstrap directory. This is used for initializing or updating Socotra configurations. ```yaml config_bootstrap: version: 1 directory: "./my_configs" validations: - "schema.json" files: - "policies.yaml" - "products.yaml" # Example content of policies.yaml: # policy_type: "auto" # fields: # - name: "vin" # type: "string" # required: true ``` -------------------------------- ### Installments Plugin Source: https://docs.socotra.com/api/search/searchApi.html Information on the Installments Plugin, including its overview, execution, adjustment rules, and implementation example. ```APIDOC ## Installments Plugin ### Description Information on the Installments Plugin, including its overview, execution, adjustment rules, and implementation example. ### Overview ### Plugin Execution ### Adjustment Rules ### Implementation Example ### See Also ``` -------------------------------- ### Set up Config SDK for Tenant Configuration (Steps) Source: https://docs.socotra.com/featureGuide/billing/earlyInvoicing.html Details the process of setting up and using the Socotra Config SDK, including creating a Personal Access Token and fetching tenant configurations, to streamline development. ```bash # Part 1 - Create a Personal Access Token (via Socotra UI or API) # This token will be used for authentication with the SDK. # Part 2 - Download and configure the Config SDK # Follow the official Socotra documentation for SDK installation and configuration. # Example configuration might involve setting environment variables or a config file: # export SOCOTRA_API_KEY="YOUR_PERSONAL_ACCESS_TOKEN" # export SOCOTRA_TENANT_ID="YOUR_TENANT_ID" # Part 3 - Fetch your tenant’s config (using SDK command-line tool) # socotra-config fetch --output-file tenant-config.json ``` -------------------------------- ### Installments Plugin Source: https://docs.socotra.com/configuration/generalTopics/dataAccessControls.html Information on the Installments Plugin, including its overview, execution, adjustment rules, and implementation examples. ```APIDOC ## Installments Plugin ### Description This plugin manages the installment payment plans for policies, including overview, execution logic, and adjustment rules. ### Method N/A (Conceptual) ### Endpoint N/A (Conceptual) ### Parameters None ### Request Example None ### Response None ### Adjustment Rules - Defines how installment amounts or schedules can be modified. ``` -------------------------------- ### Migration - Migration Tutorial Source: https://docs.socotra.com/api/billing/delinquencyApi.html A step-by-step tutorial for performing a migration, covering prerequisites, making requests, checking results, and handling failures. ```APIDOC ## Migration Tutorial ### Prerequisites Lists the necessary requirements and setup steps before starting the migration tutorial. ### Get the sample config and source data Instructions on obtaining sample configuration files and source data required for the tutorial. ### Make a migration request and check results Step-by-step guide on how to submit a migration request and verify the outcome. ### Handle a failed migration Procedures for diagnosing and resolving issues when a migration fails. ### Using a converter Guidance on utilizing any provided converter tools to transform source data into the required format for migration. ``` -------------------------------- ### Example Account-Level Installment Preferences Source: https://docs.socotra.com/featureGuide/billing/installmentSettings.html This JSON object demonstrates how to configure account-level installment preferences to standardize invoicing across all policies. It specifies that invoices should be due on the 10th of each month. ```json { "anchorMode": "dueTime", "anchorType": "dayOfMonth", "dayOfMonth": 10 } ``` -------------------------------- ### Moratorium Configuration Example Source: https://docs.socotra.com/configuration/plugins/documentSelection.html Provides a sample JSON configuration for setting up moratoriums. This includes details on applicability, effective times, and product-specific configurations. ```json { "moratoriums": [ { "name": "COVID-19 Relief Moratorium", "description": "Temporary suspension of premium payments due to COVID-19 impact.", "applicability": { "policyTypes": ["auto", "home"], "segments": ["personal"] }, "effectiveTime": "2020-03-15T00:00:00Z", "endTime": "2020-09-30T23:59:59Z", "policyServicingOperations": { "suspendBilling": true, "pauseRenewals": true } } ] } ``` -------------------------------- ### Config SDK - Fetch Tenant Configuration Example Source: https://docs.socotra.com/featureGuide/policyManagement/policyManagementTopicIndex.html Shows a conceptual example of how to use the Socotra Config SDK to fetch a tenant's configuration, streamlining the process of accessing and managing settings. ```javascript // Assuming 'configSdk' is an initialized instance of the Config SDK async function fetchTenantConfig(tenantId) { try { const config = await configSdk.fetchTenantConfiguration(tenantId); console.log('Tenant Configuration:', config); return config; } catch (error) { console.error('Error fetching tenant configuration:', error); throw error; } } ``` -------------------------------- ### Python SDK Example for Obtaining Migration Client Source: https://docs.socotra.com/api/configurationAndDevelopment/configurationAndDevelopmentApiIndex.html Demonstrates how to obtain the migration client using the Socotra SDK, likely in Python. This snippet covers the initial steps for setting up the client for migration tasks. ```python # Example of obtaining the migration client # from socotra_api import MigrationClient # client = MigrationClient(api_key='YOUR_API_KEY', endpoint='YOUR_ENDPOINT') ``` -------------------------------- ### Fetch Installment Lattice Settings by Locator (GET) Source: https://docs.socotra.com/api/billing/installmentLatticesApi.html Retrieves the settings for a specific installment lattice. Requires tenant and lattice locators as path parameters. Returns a SettingsResponse object. ```HTTP GET /billing/{tenantLocator}/settings/{locator} ``` -------------------------------- ### Product Retire After Configuration Example (2025) Source: https://docs.socotra.com/configuration/generalTopics/availability.html An example of setting a product to retire after a specific date. This configuration prevents the product from being included in new quotes with a start time after June 1, 2025. ```json { "availability": { "retireAfter": "2025-06-01T00:00:00+0000" } } ``` -------------------------------- ### Set up Config SDK for Tenant Configuration (Bash) Source: https://docs.socotra.com/configuration/resources/resourcesIndex.html Outlines the command-line steps for downloading and configuring the Socotra Config SDK. This involves creating a Personal Access Token and setting up the SDK environment. ```bash # Example command to fetch tenant configuration using Config SDK (replace placeholders) config-sdk fetch --tenant "YOUR_TENANT_ID" --output "./tenant-config.json" --token "YOUR_PERSONAL_ACCESS_TOKEN" ``` -------------------------------- ### MCP Server Topic Index Source: https://docs.socotra.com/featureGuide/reporting/tables/tableIndex.html Overview of the MCP Server, including tools, installation, and prompt examples. ```APIDOC ## MCP Server Overview ### Overview General overview of the MCP Server. ### Next Steps [Guidance on next steps after reviewing the overview.] ## MCP Server Tools ### Account and Policy Management [Details on tools for managing accounts and policies.] ### Transaction Management [Details on tools for managing transactions.] ### Work Management [Details on tools for managing work.] ### User and Access Management [Details on tools for managing users and access.] ### Search [Details on search functionalities.] ### Next Steps [Guidance on next steps after exploring the tools.] ## MCP Server Installation ### Prerequisites [List of prerequisites for MCP Server installation.] ### Installation #### Cursor [Installation instructions for Cursor.] #### Claude [Installation instructions for Claude.] ### Next Steps [Guidance on next steps after installation.] ## MCP Server Prompt Examples [Collection of prompt examples for the MCP Server.] ``` -------------------------------- ### Configuration SDK API Source: https://docs.socotra.com/ui-sdk/components/new-disbursement-form.html API documentation for the Configuration SDK, including guidance on its necessity and getting started. ```APIDOC ## Configuration SDK API ### Description This API details the Configuration SDK, addressing its purpose and providing guidance on how to get started with it for writing and maintaining configurations. ### Overview General information about the Configuration SDK. ### Do I really need an SDK to write and maintain configs? Discussion on the necessity and benefits of using the SDK. ### Getting Started Instructions and steps to begin using the Configuration SDK. ``` -------------------------------- ### Media Overview Example Source: https://docs.socotra.com/featureGuide/claims/fnol.html Demonstrates how to represent and manage media assets within the Socotra platform. This includes basic structure and potential use cases. ```json { "media": [ { "id": "media_123", "name": "Company Logo", "type": "image/png", "url": "https://example.com/media/logo.png", "uploadedAt": "2023-10-27T12:00:00Z" }, { "id": "media_456", "name": "Product Brochure", "type": "application/pdf", "url": "https://example.com/media/brochure.pdf", "uploadedAt": "2023-10-27T12:05:00Z" } ] } ``` -------------------------------- ### Autopay Feature Source: https://docs.socotra.com/featureGuide/billing/autopay.html Details on the Autopay feature, including setup and how it interacts with installments and invoices. ```APIDOC # Autopay Feature ## Overview The _Autopay_ feature enables insureds to set up a payment method and have regular payments executed automatically. This feature aims to prevent late fees and policy lapses by ensuring timely payments. ## Process Flow 1. Add an `autopayLeadDays` setting to your installment plans. This determines when the autopay process begins before an invoice is due. 2. The `autopayTime` for installments and invoices will be set based on these lead days. 3. When an invoice reaches its `autopayTime`, the _Autopay Plugin_ is triggered. 4. The plugin can be configured to create a Payment in a `requested` state. 5. The Payment Execution Service then attempts to process the transaction with an external financial institution. 6. Upon successful execution, the payment status changes to `posted`, and the invoice is settled. Failed attempts may trigger retries. ## Installments and Invoices When installments are generated, the `autopayTime` is derived from the `autopayLeadDays` property of the installment plan. If an invoice contains multiple installments, its `autopayTime` will be the earliest `autopayTime` among its installments. **Note:** To prevent autopay for a specific invoice, set its `suppressAutopay` property to `true` using the Update Invoice endpoint. ``` -------------------------------- ### Config SDK - Fetch Tenant Configuration (CLI Example) Source: https://docs.socotra.com/api/policyManagement/policyTermsApi.html Demonstrates how to use the Socotra Config SDK via the command line interface to fetch a tenant's configuration. This requires a Personal Access Token for authentication. ```bash export SOCOTRA_TOKEN="YOUR_PERSONAL_ACCESS_TOKEN" # Fetch configuration for a specific tenant config-sdk fetch --tenant-id "your_tenant_id" --output-file tenant_config.json ```