Socotra Config API

The Config API from Socotra — 19 operation(s) for config.

Operations 20

POST /config/validateConfig #
POST /config/{tenantLocator}/tenantEvents #
GET /config/{tenantLocator}/moratoriums #
POST /config/{tenantLocator}/moratoriums #
POST /config/formatConfig #
POST /config/{tenantLocator}/developer/build #
POST /config/{tenantLocator}/deployments/validate #
POST /config/{tenantLocator}/deployments/deploy #
POST /config/{tenantLocator}/deployments/cloneTest #
POST /config/{tenantLocator}/deployments/cloneProduction #
POST /config/createTenant #
PATCH /config/{tenantLocator}/deployments/versions/{staticVersionLocator}/retire #
GET /config/events #
GET /config/{tenantLocator}/developer/download #
GET /config/{tenantLocator}/deployments #
GET /config/{tenantLocator}/deployments/download #
GET /config/{tenantLocator}/deployments/download/{version} #
GET /config/{tenantLocator}/deployments/diff #
GET /config/{tenantLocator}/deployments/datamodel #
GET /config/{tenantLocator}/deployments/datamodel/{version} #

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/socotra-config-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

socotra-config-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Socotra Insurance Suite OpenAPI Definition Config API
  description: Socotra Insurance Suite API
  termsOfService: https://www.socotra.com
  version: v0
servers:
- url: /
  description: Generated server url
tags:
- name: Config
paths:
  /config/validateConfig:
    post:
      operationId: validateConfig
      parameters: []
      requestBody:
        content:
          application/zip:
            schema:
              $ref: '#/components/schemas/ConfigurationRef'
              deprecated: false
          multipart/form-data:
            schema:
              $ref: '#/components/schemas/ConfigurationRef'
              deprecated: false
        required: true
      responses:
        '200':
          description: OK
          content:
            application/zip:
              schema:
                $ref: '#/components/schemas/StreamingResponseBody'
                deprecated: false
                additionalProperties:
                  type: ZipFile
                  deprecated: false
      x-securityGroup: tenants
      x-securityPermission:
      - create-tenant
      - validate-config
      deprecated: false
      tags:
      - Config
  /config/{tenantLocator}/tenantEvents:
    post:
      operationId: scheduleTenantEvents
      parameters:
      - name: tenantLocator
        in: path
        required: true
        schema:
          type: string
          format: uuid
          deprecated: false
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ScheduleTenantEventsRequest'
              deprecated: false
        required: true
      responses:
        '200':
          description: OK
      x-securityGroup: tenantEvents
      x-securityPermission:
      - tenant-events
      deprecated: false
      tags:
      - Config
  /config/{tenantLocator}/moratoriums:
    get:
      operationId: fetchMoratoriums
      parameters:
      - name: tenantLocator
        in: path
        required: true
        schema:
          type: string
          format: uuid
          deprecated: false
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                type: object
                deprecated: false
                additionalProperties:
                  $ref: '#/components/schemas/MoratoriumRef'
                  deprecated: false
      x-securityGroup: moratoriums
      x-securityPermission:
      - deploy
      - fetch
      deprecated: false
      tags:
      - Config
    post:
      operationId: deployMoratoriums
      parameters:
      - name: tenantLocator
        in: path
        required: true
        schema:
          type: string
          format: uuid
          deprecated: false
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ConfigurationRef'
              deprecated: false
        required: true
      responses:
        '200':
          description: OK
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/TenantDeploymentResult'
                deprecated: false
      x-securityGroup: moratoriums
      x-securityPermission:
      - deploy
      deprecated: false
      tags:
      - Config
  /config/formatConfig:
    post:
      operationId: formatConfig
      description: Converts a configuration's property casing to match requirements
      parameters: []
      requestBody:
        content:
          application/zip:
            schema:
              $ref: '#/components/schemas/ConfigurationRef'
              deprecated: false
          multipart/form-data:
            schema:
              $ref: '#/components/schemas/ConfigurationRef'
              deprecated: false
        required: true
      responses:
        '200':
          description: OK
          content:
            application/zip:
              schema:
                $ref: '#/components/schemas/StreamingResponseBody'
                deprecated: false
                additionalProperties:
                  type: ZipFile
                  deprecated: false
      x-securityGroup: tenants
      x-securityPermission:
      - create-tenant
      - validate-config
      deprecated: false
      tags:
      - Config
  /config/{tenantLocator}/developer/build:
    post:
      operationId: buildBundle
      parameters:
      - name: tenantLocator
        in: path
        required: true
        schema:
          type: string
          format: uuid
          deprecated: false
      requestBody:
        content:
          application/zip:
            schema:
              $ref: '#/components/schemas/ConfigurationRef'
              deprecated: false
          multipart/form-data:
            schema:
              $ref: '#/components/schemas/ConfigurationRef'
              deprecated: false
        required: true
      responses:
        '200':
          description: OK
          content:
            application/zip:
              schema:
                $ref: '#/components/schemas/StreamingResponseBody'
                deprecated: false
                additionalProperties:
                  type: ZipFile
                  deprecated: false
      x-securityGroup: developer
      x-securityPermission:
      - build
      deprecated: false
      tags:
      - Config
  /config/{tenantLocator}/deployments/validate:
    post:
      operationId: validateConfigZip
      parameters:
      - name: tenantLocator
        in: path
        required: true
        schema:
          type: string
          format: uuid
          deprecated: false
      requestBody:
        content:
          application/zip:
            schema:
              $ref: '#/components/schemas/ConfigurationRef'
              deprecated: false
          multipart/form-data:
            schema:
              $ref: '#/components/schemas/ConfigurationRef'
              deprecated: false
        required: true
      responses:
        '200':
          description: OK
          content:
            application/zip:
              schema:
                $ref: '#/components/schemas/StreamingResponseBody'
                deprecated: false
                additionalProperties:
                  type: ZipFile
                  deprecated: false
      x-securityGroup: deployments
      x-securityPermission:
      - deploy
      deprecated: false
      tags:
      - Config
  /config/{tenantLocator}/deployments/deploy:
    post:
      operationId: deployConfigZip
      parameters:
      - name: tenantLocator
        in: path
        required: true
        schema:
          type: string
          format: uuid
          deprecated: false
      - name: overwrite
        in: query
        required: false
        schema:
          type: boolean
          default: false
          deprecated: false
      requestBody:
        content:
          application/zip:
            schema:
              $ref: '#/components/schemas/ConfigurationRef'
              deprecated: false
          multipart/form-data:
            schema:
              $ref: '#/components/schemas/ConfigurationRef'
              deprecated: false
        required: true
      responses:
        '200':
          description: OK
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/TenantDeploymentResult'
                deprecated: false
      x-securityGroup: deployments
      x-securityPermission:
      - deploy
      deprecated: false
      tags:
      - Config
  /config/{tenantLocator}/deployments/cloneTest:
    post:
      operationId: cloneConfigToTest
      parameters:
      - name: tenantLocator
        in: path
        required: true
        schema:
          type: string
          format: uuid
          deprecated: false
      - name: tenantName
        in: query
        required: false
        schema:
          type: string
          deprecated: false
      - name: tenantDescription
        in: query
        required: false
        schema:
          type: string
          deprecated: false
      responses:
        '200':
          description: OK
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/DeploymentCloneResponse'
                deprecated: false
      x-securityGroup: deployments
      x-securityPermission:
      - cloneTest
      deprecated: false
      tags:
      - Config
  /config/{tenantLocator}/deployments/cloneProduction:
    post:
      operationId: cloneConfigToProduction
      parameters:
      - name: tenantLocator
        in: path
        required: true
        schema:
          type: string
          format: uuid
          deprecated: false
      - name: tenantName
        in: query
        required: false
        schema:
          type: string
          deprecated: false
      - name: tenantDescription
        in: query
        required: false
        schema:
          type: string
          deprecated: false
      responses:
        '200':
          description: OK
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/DeploymentCloneResponse'
                deprecated: false
      x-securityGroup: deployments
      x-securityPermission:
      - cloneProduction
      deprecated: false
      tags:
      - Config
  /config/createTenant:
    post:
      operationId: createTenant
      parameters:
      - name: name
        in: query
        required: false
        schema:
          type: string
          deprecated: false
      - name: description
        in: query
        required: false
        schema:
          type: string
          deprecated: false
      requestBody:
        content:
          application/zip:
            schema:
              $ref: '#/components/schemas/ConfigurationRef'
              deprecated: false
          multipart/form-data:
            schema:
              $ref: '#/components/schemas/ConfigurationRef'
              deprecated: false
        required: true
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TenantDeploymentResult'
                deprecated: false
      x-securityGroup: tenants
      x-securityPermission:
      - create-tenant
      deprecated: false
      tags:
      - Config
  /config/{tenantLocator}/deployments/versions/{staticVersionLocator}/retire:
    patch:
      operationId: retireConfigVersion
      parameters:
      - name: tenantLocator
        in: path
        required: true
        schema:
          type: string
          format: uuid
          deprecated: false
      - name: staticVersionLocator
        in: path
        required: true
        schema:
          type: string
          format: ulid
          deprecated: false
      responses:
        '200':
          description: OK
      x-securityGroup: deployments
      x-securityPermission:
      - retire-version
      deprecated: false
      tags:
      - Config
  /config/events:
    get:
      operationId: fetchConfigEvents
      parameters: []
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DeploymentServiceEventTypeDefinitions'
                deprecated: false
      x-securityGroup: public
      x-securityPermission:
      - public
      deprecated: false
      tags:
      - Config
  /config/{tenantLocator}/developer/download:
    get:
      operationId: downloadBundle
      parameters:
      - name: tenantLocator
        in: path
        required: true
        schema:
          type: string
          format: uuid
          deprecated: false
      responses:
        '200':
          description: OK
          content:
            application/zip:
              schema:
                $ref: '#/components/schemas/StreamingResponseBody'
                deprecated: false
                additionalProperties:
                  type: ZipFile
                  deprecated: false
      x-securityGroup: developer
      x-securityPermission:
      - download
      deprecated: false
      tags:
      - Config
  /config/{tenantLocator}/deployments:
    get:
      operationId: getDeployedConfigMetadata
      parameters:
      - name: tenantLocator
        in: path
        required: true
        schema:
          type: string
          format: uuid
          deprecated: false
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DeployedConfigMetadata'
                deprecated: false
      x-securityGroup: deployments
      x-securityPermission:
      - read
      deprecated: false
      tags:
      - Config
  /config/{tenantLocator}/deployments/download:
    get:
      operationId: downloadCurrentConfiguration
      parameters:
      - name: tenantLocator
        in: path
        required: true
        schema:
          type: string
          format: uuid
          deprecated: false
      responses:
        '200':
          description: OK
          content:
            application/zip:
              schema:
                $ref: '#/components/schemas/StreamingResponseBody'
                deprecated: false
                additionalProperties:
                  type: ZipFile
                  deprecated: false
      x-securityGroup: deployments
      x-securityPermission:
      - deploy
      deprecated: false
      tags:
      - Config
  /config/{tenantLocator}/deployments/download/{version}:
    get:
      operationId: downloadConfigurationVersion
      parameters:
      - name: tenantLocator
        in: path
        required: true
        schema:
          type: string
          format: uuid
          deprecated: false
      - name: version
        in: path
        required: true
        schema:
          type: string
          format: ulid
          deprecated: false
      - name: byStaticLocator
        in: query
        required: false
        schema:
          type: boolean
          deprecated: false
      responses:
        '200':
          description: OK
          content:
            application/zip:
              schema:
                $ref: '#/components/schemas/StreamingResponseBody'
                deprecated: false
                additionalProperties:
                  type: ZipFile
                  deprecated: false
      x-securityGroup: deployments
      x-securityPermission:
      - deploy
      deprecated: false
      tags:
      - Config
  /config/{tenantLocator}/deployments/diff:
    get:
      operationId: getPartialDeployDifference
      parameters:
      - name: tenantLocator
        in: path
        required: true
        schema:
          type: string
          format: uuid
          deprecated: false
      - name: config
        in: query
        required: true
        schema:
          $ref: '#/components/schemas/ConfigurationRef'
          deprecated: false
      responses:
        '200':
          description: OK
          content:
            '*/*':
              schema:
                type: object
                deprecated: false
                additionalProperties:
                  $ref: '#/components/schemas/MapDifference'
                  deprecated: false
      x-securityGroup: deployments
      x-securityPermission:
      - deploy
      deprecated: false
      tags:
      - Config
  /config/{tenantLocator}/deployments/datamodel:
    get:
      operationId: fetchConfigDefinition
      parameters:
      - name: tenantLocator
        in: path
        required: true
        schema:
          type: string
          format: uuid
          deprecated: false
      - name: resolve
        in: query
        required: false
        schema:
          type: boolean
          default: false
          deprecated: false
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigurationRef'
                deprecated: false
      x-securityGroup: deployments
      x-securityPermission:
      - deploy
      - datamodel
      deprecated: false
      tags:
      - Config
  /config/{tenantLocator}/deployments/datamodel/{version}:
    get:
      operationId: fetchConfigDefinitionForAVersion
      parameters:
      - name: tenantLocator
        in: path
        required: true
        schema:
          type: string
          format: uuid
          deprecated: false
      - name: version
        in: path
        required: true
        schema:
          type: string
          format: ulid
          deprecated: false
      - name: resolve
        in: query
        required: false
        schema:
          type: boolean
          default: false
          deprecated: false
      - name: byStaticLocator
        in: query
        required: false
        schema:
          type: boolean
          deprecated: false
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigurationRef'
                deprecated: false
      x-securityGroup: deployments
      x-securityPermission:
      - deploy
      - datamodel
      deprecated: false
      tags:
      - Config
components:
  schemas:
    ScheduleTenantEventRequest:
      type: object
      required:
      - eventTime
      - eventTypeId
      - scheduleId
      - data
      properties:
        scheduleId:
          type: string
          deprecated: false
        eventTypeId:
          type: string
          deprecated: false
        eventTime:
          type: string
          format: date-time
          deprecated: false
        data:
          type: object
          deprecated: false
          additionalProperties:
            type: object
            deprecated: false
      deprecated: false
    AutomationPluginActionRef:
      type: object
      properties:
        timeout:
          type: integer
          format: int32
          deprecated: false
        request:
          type: object
          deprecated: false
          additionalProperties:
            $ref: '#/components/schemas/PropertyRef'
            deprecated: false
        response:
          type: object
          deprecated: false
          additionalProperties:
            $ref: '#/components/schemas/PropertyRef'
            deprecated: false
      deprecated: false
    PropertyConstraint:
      type: object
      required:
      - column
      - table
      - where
      properties:
        table:
          type: string
          deprecated: false
        column:
          type: string
          deprecated: false
        where:
          type: object
          deprecated: false
          additionalProperties:
            $ref: '#/components/schemas/ConditionValueRef'
            deprecated: false
      deprecated: false
    CoverageTermRef:
      type: object
      required:
      - type
      properties:
        type:
          type: string
          enum:
          - splitLimit
          - deductible
          - limit
          deprecated: false
        displayName:
          type: string
          deprecated: false
        options:
          type: object
          deprecated: false
          additionalProperties:
            $ref: '#/components/schemas/CoverageTermOptionRef'
            deprecated: false
        value:
          $ref: '#/components/schemas/PropertyRef'
          deprecated: false
        availability:
          $ref: '#/components/schemas/AvailabilityRef'
          deprecated: false
      deprecated: false
    ColumnRef:
      type: object
      required:
      - dataType
      - isKey
      properties:
        dataType:
          type: string
          deprecated: false
        isKey:
          type: boolean
          deprecated: false
      deprecated: false
    ReversalTypeRef:
      type: object
      required:
      - creditType
      properties:
        creditType:
          type: string
          enum:
          - any
          - creditDistribution
          - payment
          deprecated: false
      deprecated: false
    ExcessCreditPlanRef:
      type: object
      required:
      - advanceDisbursementTo
      - autoApplyExcessToInvoicesEnabled
      - disburseExcess
      - disbursementType
      - excludeDebits
      - negativeInvoiceHandling
      - disbursementThresholds
      properties:
        disburseExcess:
          type: boolean
          description: Set to true to enable excess funds handling for the plan.
          deprecated: false
        disbursementType:
          type: string
          description: The type of the disbursement to be automatically created.
          deprecated: false
        excludeDebits:
          type: string
          description: Which pending debits should be considered for determining how much of the credit to retain
          enum:
          - allInvoices
          - invoicesAndUnbilledInstallments
          - none
          - pastDueInvoices
          deprecated: false
        disbursementThresholds:
          type: object
          deprecated: false
          additionalProperties:
            type: number
            deprecated: false
        advanceDisbursementTo:
          type: string
          enum:
          - draft
          - validated
          - approved
          - executed
          - reversed
          - rejected
          - discarded
          deprecated: false
        autoApplyExcessToInvoicesEnabled:
          type: boolean
          deprecated: false
        negativeInvoiceHandling:
          $ref: '#/components/schemas/NegativeInvoiceHandlingRef'
          deprecated: false
      deprecated: false
    InstallmentPlanRef:
      type: object
      required:
      - anchorMode
      - cadence
      - dueLeadDays
      - generateLeadDays
      - maxInstallmentsPerTerm
      - installmentWeights
      properties:
        displayName:
          type: string
          deprecated: false
        cadence:
          type: string
          enum:
          - none
          - fullPay
          - weekly
          - everyOtherWeek
          - monthly
          - quarterly
          - semiannually
          - annually
          - thirtyDays
          - everyNDays
          deprecated: false
        anchorMode:
          type: string
          enum:
          - generateDay
          - termStartDay
          - dueDay
          deprecated: false
        generateLeadDays:
          type: integer
          format: int32
          deprecated: false
        dueLeadDays:
          type: integer
          format: int32
          deprecated: false
        installmentWeights:
          type: array
          deprecated: false
          items:
            type: number
            deprecated: false
        maxInstallmentsPerTerm:
          type: integer
          format: int32
          deprecated: false
        autopayLeadDays:
          type: number
          deprecated: false
      deprecated: false
    ConstraintColumnRef:
      type: object
      required:
      - dataType
      - makeDistinct
      properties:
        dataType:
          type: string
          deprecated: false
        makeDistinct:
          type: boolean
          deprecated: false
      deprecated: false
    WorkManagementRef:
      type: object
      properties:
        tasks:
          type: object
          deprecated: false
          additionalProperties:
            type: object
            deprecated: false
            additionalProperties:
              $ref: '#/components/schemas/TaskTypeRef'
              deprecated: false
        userAssociationRoles:
          type: object
          deprecated: false
          additionalProperties:
            $ref: '#/components/schemas/UserAssociationRoleRef'
            deprecated: false
        qualifications:
          type: object
          deprecated: false
          additionalProperties:
            type: array
            deprecated: false
            items:
              type: string
              deprecated: false
      deprecated: false
    RangeTableRef:
      type: object
      required:
      - rangeStart
      - selectionTimeBasis
      - columns
      properties:
        columns:
          type: object
          deprecated: false
          additionalProperties:
            $ref: '#/components/schemas/ColumnRef'
            deprecated: false
        selectionTimeBasis:
          type: string
          enum:
          - policyStartTime
          - termStartTime
          - transactionEffectiveTime
          - currentTime
          deprecated: false
        rangeStart:
          type: string
          deprecated: false
        rangeEnd:
          type: string
          deprecated: false
      deprecated: false
    ContactRef:
      type: object
      required:
      - data
      properties:
        abstract:
          type: boolean
          deprecated: false
        extend:
          type: string
          deprecated: false
        defaultSearchable:
          type: boolean
          deprecated: false
        data:
          type: object
          deprecated: false
          additionalProperties:
            $ref: '#/components/schemas/PropertyRef'
            deprecated: false
      deprecated: false
    TableRef:
      type: object
      required:
      - selectionTimeBasis
      - columns
      properties:
        columns:
          type: object
          deprecated: false
          additionalProperties:
            $ref: '#/components/schemas/ColumnRef'
            deprecated: false
        selectionTimeBasis:
          type: string
          enum:
          - policyStartTime
          - termStartTime
          - transactionEffectiveTime
          - currentTime
          deprecated: false
      deprecated: false
    MoratoriumProductRuleRef:
      type: object
      required:
      - operator
      - product
      - rules
      properties:
        product:
          type: string
          deprecated: false
        operator:
          type: string
          enum:
          - AND
          - OR
          deprecated: false
        rules:
          type: array
          deprecated: false
          items:
            $ref: '#/components/schemas/MoratoriumRuleRef'
            deprecated: false
        displayName:
          type: string
          deprecated: false
      deprecated: false
    ResourcesRef:
      type: object
      required:
      - resourceGroups
      - resourceInstances
      properties:
        resourceInstances:
          type: object
          deprecated: false
          additionalProperties:
            $ref: '#/components/schemas/ResourceInstanceRef'
            deprecated: false
        resourceGroups:
          type: object
          deprecated: false
          additionalProperties:
            $ref: '#/components/schemas/ResourceGroupRef'
            deprecated: false
      deprecated: false
    BillingHoldScopeRef:
      type: object
      required:
      - autopayHold
      - deferredInvoiceDueOffsetDays
      - policyDelinquencyHold
      - policyInvoicingHold
      properties:
        policyInvoicingHold:
          type: boolean
          deprecated: false
        policyDelinquencyHold:
          type: boolean
          deprecated: false
        autopayHold:
          type: boolean
          deprecated: false
        deferredInvoiceDueOffsetDays:
          type: number
          deprecated: false
        displayName:
          type: string
          deprecated: false
      deprecated: false
    UserAssociationRoleRef:
      type: object
      properties:
        appliesTo:
          type: array
          deprecated: false
          items:
            type: string
            enum:
            - account
            - quickQuote
            - quote
            - policy
            - transaction
            - invoice
            - underwritingFlag
            - payment
            - quoteGroup
            - inquiry
            deprecated: false
        exclusive:
          type: boolean
          deprecated: false
        qualification:
          type: object
          deprecated: false
          additionalProperties:
            type: string
            deprecated: false
      deprecated: false
    IntentPlan:
      type: object
      required:
      - intentType
      - taskType
      properties:
        intentType:
          type: string
          deprecated: false
        taskType:
          type: string
          deprecated: false
        workgroup:
          type: string
          deprecated: false
      deprecated: false
    AvailabilityRef:
      type: object
      description: Specifies availability. At least one of availableAfter, retireAfter, retire, removeOnRenewalAfter, or removeOnRenewal must be set.
      required:
      - availabilityTimeBasis
      - retirementTimeBasis
      properties:
        availableAfter:
          type: string
          format: date-time
          deprecated: false
        availabilityTimeBasis:
          type: string
          description: 'default: TermStartTime'
          enum:
          - policyStartTime
          - termStartTime
          deprecated: false
        retireAfter:
          type: string
          format: date-time
          deprecated: false
        retire:
          type: boolean
          description: 'default: false'
          deprecated: false
        retirementTimeBasis:
          type: string
          description: 'default: TermStartTime'
          enum:
          - policyStartTime
          - termStartTime
          deprecated: false
        removeOnRenewalAfter:
          type: string
          format: date-time
          deprecated: false
        removeOnRenewal:
          type: boolean
          description: 'default: false'
          deprecated: false
      deprecated: false
    TenantDeploymentResult:
      type: object
      required:
      - locator
      - name
      - bootstrapResult
      - deploymentResult
      properties:
        locator:
          type: string
          format: uuid
          deprecated: false
        name:
          type: string
          deprecated: false
        deploymentResult:
          $ref: '#/components/schemas/ConfigBuilderResult'
          deprecated: false
        bootstrapResult:
          $ref: '#/components/schemas/BootstrapResult'
          deprecated: false
      deprecated: false
    UnderwritingFlagRef:
      type: object
      properties:
        level:
          type: string
          enum:
          - info
          - block
          - decline
          - reject
          - approve
          deprecated: false
        tag:
          type: string
          deprecated: false
        note:
          type: string
          deprecated: false
      deprecated: false
    ConsolidatedDocumentConfigRef:
      type: object
      required:
      - consolidatedDocuments
      properties:
        displayName:
          type: string
          deprecated: false
        consolidatedDocuments:
          type: array
          deprecated: false
          items:
            type: string
            deprecated: false
        leadingDocumentTemplate:
          type: string
          deprecated: false
        pageNumbering:
          $ref: '#/components/schemas/ConsolidatedPageNumberingRef'
          deprecated: false
      deprecated: false
    ScheduleRef:
      type: object
      required:
      - resetOnRenewal
      - data
      properties:
        extend:
          type: string
          deprecated: false
        abstract:
          type: boolean
          deprecated: false
        displayName:
          type: string
          deprecated: false
        data:
          type: object
          deprecated: false
          additionalProperties:
            $ref: '#/components/schemas/PropertyRef'
            deprecated: false
        resetOnRenewal:
          type: boolean
          deprecated: false
      deprecated: false
    DeploymentServiceEventTypeDefinitions:
      type: object
      required:
      - moratoriumEvents
      properties:
        moratoriumEvents:
          $ref: '#/components/schemas/MoratoriumEvents'
          deprecated: false
      deprecated: false
    MoratoriumRef:
      type: object
      required:
      - effectiveTime
      - applicationMode
      - billingHoldScope
      - policyHoldScope
      - policyMatchCriteria
      - type
      properties:
        type:
          type: string
          deprecated: false

# --- truncated at 32 KB (88 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/socotra/refs/heads/main/openapi/socotra-config-api-openapi.yml