> ## Documentation Index
> Fetch the complete documentation index at: https://docs.pingintel.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Duplicate Coverage Option

> Creates a full copy of a coverage option, including its peril sections, peril groups, subperils, and zones. 



## OpenAPI

````yaml https://vision.dev.pingintel.com/api/schema/?format=json post /api/v1/submission/{pingid}/cat/coverage-options/{coverage_option_uuid}/duplicate
openapi: 3.0.3
info:
  title: Ping.Vision API
  version: v1.0
  description: >
    ### Ping.Vision API


    This API provides convenient, efficient access to Ping Intel's data and
    services. It is designed to be used by developers and data scientists to
    integrate Ping Intel's capabilities into their applications.


    Once SSO is set up with your organization, you can create an Organization or
    Personal API key at https://auth.pingintel.com/org.


    Please see the Python client library
    [pingintel-api](https://pypi.org/project/pingintel-api/) for commandline
    tools and programmatic access, and you

    can refer to the following documentation for details on interacting with the
    system via the HTTP API.
  contact:
    email: support@pingintel.com
    name: Ping Intel
    url: https://www.pingintel.com
servers:
  - url: https://vision.pingintel.com
    description: Ping.Vision API
  - url: https://vision.staging.pingintel.com
    description: Ping.Vision API (staging)
security: []
tags:
  - name: Create Submission
    description: The Create Submission API allows you to add new data into the system.
  - name: Update Submission
    description: >-
      The Update Submission API provides various endpoints to update, modify, or
      act upon existing submissions.
  - name: Get Submission Data
    description: ''
  - name: User Memberships
    description: >-
      The User Memberships API allows you to add, remove, and change the role of
      users in different teams, divisions, or companies.
  - name: Miscellaneous
    description: ''
paths:
  /api/v1/submission/{pingid}/cat/coverage-options/{coverage_option_uuid}/duplicate:
    post:
      tags:
        - CAT Modeling
      summary: Duplicate Coverage Option
      description: >-
        Creates a full copy of a coverage option, including its peril sections,
        peril groups, subperils, and zones. 
      operationId: api_v1_submission_cat_coverage_options_duplicate_create
      parameters:
        - in: path
          name: coverage_option_uuid
          schema:
            type: string
          required: true
        - in: path
          name: pingid
          schema:
            type: string
          required: true
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CoverageOptionDuplicateRequest'
            examples:
              DuplicateRequest:
                value:
                  name: Option 1 (copy)
                summary: Duplicate request
          application/x-www-form-urlencoded:
            schema:
              $ref: '#/components/schemas/CoverageOptionDuplicateRequest'
          multipart/form-data:
            schema:
              $ref: '#/components/schemas/CoverageOptionDuplicateRequest'
      responses:
        '201':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CoverageOptionDetail'
              examples:
                Duplicated:
                  value:
                    uuid: 019dd58e-eb2a-7958-8070-570003e4ee70
                    name: Option 1 2
                    created_time: '2026-04-29T03:10:00.000000Z'
                    modified_time: '2026-04-29T03:10:00.000000Z'
                    bi_limit_type: GE
                    default_bi_period_days: null
                    peril_sections:
                      - uuid: 019dd58e-eb2a-7958-8070-570003e4ee71
                        name: Earthquake
                        peril_groups: []
                    per_zone_terms: []
          description: ''
      security:
        - authorization_header: []
components:
  schemas:
    CoverageOptionDuplicateRequest:
      type: object
      properties:
        name:
          type: string
          description: Name for the new coverage option. Defaults to the source name.
    CoverageOptionDetail:
      type: object
      properties:
        bi_limit_type:
          enum:
            - GE
            - GP
            - null
          type: string
          description: |-
            * `GE` - Gross Earnings
            * `GP` - Gross Profits
          x-spec-enum-id: f81ee74b088734af
          readOnly: true
          nullable: true
        created_time:
          type: string
          format: date-time
          readOnly: true
        default_bi_period_days:
          type: integer
          readOnly: true
          nullable: true
        modified_time:
          type: string
          format: date-time
          readOnly: true
          nullable: true
        name:
          type: string
          readOnly: true
          nullable: true
        per_zone_terms:
          type: array
          items:
            $ref: '#/components/schemas/PolicyTermsZone'
        peril_sections:
          type: array
          items:
            $ref: '#/components/schemas/PolicyTermsPerilSection'
        uuid:
          type: string
          format: uuid
          readOnly: true
          nullable: true
          description: UUID of the policy terms coverage option
      required:
        - bi_limit_type
        - created_time
        - default_bi_period_days
        - modified_time
        - name
        - per_zone_terms
        - peril_sections
        - uuid
    PolicyTermsZone:
      type: object
      properties:
        bi_days_deductible:
          type: integer
          readOnly: true
          nullable: true
        deductible_type:
          type: string
          readOnly: true
          nullable: true
        included:
          type: boolean
          readOnly: true
        location_count:
          type: integer
          readOnly: true
          nullable: true
          description: >-
            Number of locations that fall under this zone. Should be calculated
            on change.
        max_deductible:
          type: string
          format: decimal
          pattern: ^-?\d{0,18}(?:\.\d{0,2})?$
          readOnly: true
          nullable: true
        min_deductible:
          type: string
          format: decimal
          pattern: ^-?\d{0,18}(?:\.\d{0,2})?$
          readOnly: true
          nullable: true
        per_location_deductible:
          type: string
          format: decimal
          pattern: ^-?\d{0,18}(?:\.\d{0,2})?$
          readOnly: true
          nullable: true
        per_location_deductible_format:
          enum:
            - P
            - C
            - null
          type: string
          x-spec-enum-id: 1453737de42163e5
          readOnly: true
          nullable: true
          description: |-
            Percent or dollar?

            * `P` - Percentage
            * `C` - Currency
        per_location_deductible_type:
          enum:
            - S
            - C
            - CT
            - CB
            - PL
            - null
          type: string
          description: |-
            * `S` - Sitedeductible
            * `C` - Perunitcoverage
            * `CT` - Combinedwithtimeelement
            * `CB` - Applytopropertydamage
            * `PL` - Percentofloss
          x-spec-enum-id: c999e4d4dffff517
          readOnly: true
          nullable: true
        peril_class:
          enum:
            - HU
            - EQ
            - IF
            - SCS
            - AOP
            - WF
            - TE
            - NC
          type: string
          description: |-
            * `HU` - Hu
            * `EQ` - Eq
            * `IF` - Flood
            * `SCS` - Severeconvectivestorm
            * `AOP` - Aop
            * `WF` - Wildfire
            * `TE` - Terrorism
            * `NC` - Noncat
          x-spec-enum-id: b72e536a6e65a035
          readOnly: true
        peril_group_uuid:
          type: string
          readOnly: true
        sublimit:
          type: string
          format: decimal
          pattern: ^-?\d{0,18}(?:\.\d{0,2})?$
          readOnly: true
          nullable: true
        tiv:
          type: string
          format: decimal
          pattern: ^-?\d{0,18}(?:\.\d{0,2})?$
          readOnly: true
          nullable: true
          description: Total Insured Value for this zone.
        uuid:
          type: string
          format: uuid
          readOnly: true
          nullable: true
          description: UUID of the zone
        zone:
          enum:
            - TriCounty
            - Tier1
            - Tier1 TX-VA
            - Tier1 TX-NC
            - Tier1 MD-ME
            - Tier1 VA-ME
            - Tier2
            - AK
            - CA
            - CO
            - FL
            - HI
            - OK
            - NewMadrid
            - PacNW
            - PR
            - TX
            - Inland TX
            - SFHA
            - MFHA
            - High Hazard
            - AllOther
            - Unknown
            - Custom1
            - Custom2
            - Custom3
            - Custom4
            - null
          type: string
          description: |-
            * `TriCounty` - Tricounty
            * `Tier1` - Tier1
            * `Tier1 TX-VA` - Tier1Txtova
            * `Tier1 TX-NC` - Tier1Txtonc
            * `Tier1 MD-ME` - Tier1Mdtome
            * `Tier1 VA-ME` - Tier1Vatome
            * `Tier2` - Tier2
            * `AK` - Ak
            * `CA` - Ca
            * `CO` - Co
            * `FL` - Fl
            * `HI` - Hi
            * `OK` - Ok
            * `NewMadrid` - Newmadrid
            * `PacNW` - Pacnw
            * `PR` - Pr
            * `TX` - Tx
            * `Inland TX` - Inlandtexas
            * `SFHA` - Sfha
            * `MFHA` - Mfha
            * `High Hazard` - Highhazard
            * `AllOther` - Allother
            * `Unknown` - Unknown
            * `Custom1` - Custom1
            * `Custom2` - Custom2
            * `Custom3` - Custom3
            * `Custom4` - Custom4
          x-spec-enum-id: 796960033c99fd8c
          readOnly: true
          nullable: true
      required:
        - bi_days_deductible
        - deductible_type
        - included
        - location_count
        - max_deductible
        - min_deductible
        - per_location_deductible
        - per_location_deductible_format
        - per_location_deductible_type
        - peril_class
        - peril_group_uuid
        - sublimit
        - tiv
        - uuid
        - zone
    PolicyTermsPerilSection:
      type: object
      properties:
        name:
          type: string
          readOnly: true
        peril_groups:
          type: array
          items:
            $ref: '#/components/schemas/PolicyTermsPerilGroup'
        uuid:
          type: string
          format: uuid
          readOnly: true
          nullable: true
          description: UUID of the peril section
      required:
        - name
        - peril_groups
        - uuid
    PolicyTermsPerilGroup:
      type: object
      properties:
        agg_deductible:
          type: string
          format: decimal
          pattern: ^-?\d{0,18}(?:\.\d{0,2})?$
          readOnly: true
          nullable: true
        agg_limit:
          type: string
          format: decimal
          pattern: ^-?\d{0,18}(?:\.\d{0,2})?$
          readOnly: true
          nullable: true
        bi_days_deductible:
          type: integer
          readOnly: true
          nullable: true
        bi_location_deductible:
          type: string
          format: decimal
          pattern: ^-?\d{0,18}(?:\.\d{0,2})?$
          readOnly: true
          nullable: true
        bi_location_deductible_format:
          enum:
            - P
            - C
            - null
          type: string
          x-spec-enum-id: 1453737de42163e5
          readOnly: true
          nullable: true
          description: |-
            Percent or dollar?

            * `P` - Percentage
            * `C` - Currency
        bi_max_deductible:
          type: string
          format: decimal
          pattern: ^-?\d{0,18}(?:\.\d{0,2})?$
          readOnly: true
          nullable: true
        bi_min_deductible:
          type: string
          format: decimal
          pattern: ^-?\d{0,18}(?:\.\d{0,2})?$
          readOnly: true
          nullable: true
        bi_sublimit:
          type: string
          format: decimal
          pattern: ^-?\d{0,18}(?:\.\d{0,2})?$
          readOnly: true
          nullable: true
        display_name:
          type: string
          readOnly: true
          nullable: true
          description: >-
            Display name for the peril group, e.g., Earthquake, Earthquake 2,
            Hurricane, etc.
        group_label:
          type: string
          readOnly: true
          description: Peril group label, e.g., EQ, EQ2, HU, IF, etc.
        included:
          type: boolean
          readOnly: true
        is_bi_split_allowed:
          type: boolean
          readOnly: true
          nullable: true
        is_deductible_combined:
          type: boolean
          readOnly: true
          nullable: true
        is_sublimit_combined:
          type: boolean
          readOnly: true
          nullable: true
        is_user_created:
          type: boolean
          readOnly: true
          nullable: true
          description: If user created this, set to True.
        location_deductible:
          type: string
          format: decimal
          pattern: ^-?\d{0,18}(?:\.\d{0,2})?$
          readOnly: true
          nullable: true
        location_deductible_format:
          enum:
            - P
            - C
            - null
          type: string
          x-spec-enum-id: 1453737de42163e5
          readOnly: true
          nullable: true
          description: |-
            Percent or dollar?

            * `P` - Percentage
            * `C` - Currency
        location_deductible_type:
          enum:
            - S
            - C
            - CT
            - CB
            - PL
            - null
          type: string
          description: |-
            * `S` - Sitedeductible
            * `C` - Perunitcoverage
            * `CT` - Combinedwithtimeelement
            * `CB` - Applytopropertydamage
            * `PL` - Percentofloss
          x-spec-enum-id: c999e4d4dffff517
          readOnly: true
          nullable: true
        max_deductible:
          type: string
          format: decimal
          pattern: ^-?\d{0,18}(?:\.\d{0,2})?$
          readOnly: true
          nullable: true
        min_deductible:
          type: string
          format: decimal
          pattern: ^-?\d{0,18}(?:\.\d{0,2})?$
          readOnly: true
          nullable: true
        pd_building_location_deductible:
          type: string
          format: decimal
          pattern: ^-?\d{0,18}(?:\.\d{0,2})?$
          readOnly: true
          nullable: true
        pd_building_location_deductible_format:
          enum:
            - P
            - C
            - null
          type: string
          x-spec-enum-id: 1453737de42163e5
          readOnly: true
          nullable: true
          description: |-
            Percent or dollar?

            * `P` - Percentage
            * `C` - Currency
        pd_contents_location_deductible:
          type: string
          format: decimal
          pattern: ^-?\d{0,18}(?:\.\d{0,2})?$
          readOnly: true
          nullable: true
        pd_contents_location_deductible_format:
          enum:
            - P
            - C
            - null
          type: string
          x-spec-enum-id: 1453737de42163e5
          readOnly: true
          nullable: true
          description: |-
            Percent or dollar?

            * `P` - Percentage
            * `C` - Currency
        pd_max_deductible:
          type: string
          format: decimal
          pattern: ^-?\d{0,18}(?:\.\d{0,2})?$
          readOnly: true
          nullable: true
        pd_min_deductible:
          type: string
          format: decimal
          pattern: ^-?\d{0,18}(?:\.\d{0,2})?$
          readOnly: true
          nullable: true
        pd_sublimit:
          type: string
          format: decimal
          pattern: ^-?\d{0,18}(?:\.\d{0,2})?$
          readOnly: true
          nullable: true
        section_name:
          type: string
        section_uuid:
          type: string
          format: uuid
        self_insured_retentions:
          type: string
          format: decimal
          pattern: ^-?\d{0,18}(?:\.\d{0,2})?$
          readOnly: true
          nullable: true
        sublimit:
          type: string
          format: decimal
          pattern: ^-?\d{0,18}(?:\.\d{0,2})?$
          readOnly: true
          nullable: true
        subperils:
          type: array
          items:
            $ref: '#/components/schemas/PolicyTermsSubperil'
        uuid:
          type: string
          format: uuid
          readOnly: true
          nullable: true
          description: UUID of the peril group
      required:
        - agg_deductible
        - agg_limit
        - bi_days_deductible
        - bi_location_deductible
        - bi_location_deductible_format
        - bi_max_deductible
        - bi_min_deductible
        - bi_sublimit
        - display_name
        - group_label
        - included
        - is_bi_split_allowed
        - is_deductible_combined
        - is_sublimit_combined
        - is_user_created
        - location_deductible
        - location_deductible_format
        - location_deductible_type
        - max_deductible
        - min_deductible
        - pd_building_location_deductible
        - pd_building_location_deductible_format
        - pd_contents_location_deductible
        - pd_contents_location_deductible_format
        - pd_max_deductible
        - pd_min_deductible
        - pd_sublimit
        - section_name
        - section_uuid
        - self_insured_retentions
        - sublimit
        - subperils
        - uuid
    PolicyTermsSubperil:
      type: object
      properties:
        allowed_peril_groups:
          type: array
          items:
            type: string
            maxLength: 20
          readOnly: true
          description: List of allowed peril groups, if applicable.
        included:
          type: boolean
          readOnly: true
        name:
          type: string
          readOnly: true
        peril_group_uuid:
          type: string
          format: uuid
        peril_type:
          enum:
            - HU_Wind
            - HU_Surge
            - HU_PrecipitationFlood
            - EQ_Shake
            - EQ_Fire
            - EQ_Sprinkler
            - EQ_Landslide
            - EQ_Tsunami
            - EQ_Liquefaction
            - InlandFlood
            - Wildfire
            - Smoke
            - WinterStorm
            - SevereConvectiveStorm
            - Hail
            - StraightLineWind
            - Tornado
            - SevereStorm
            - Terrorism
            - NonCat
          type: string
          description: |-
            * `HU_Wind` - Hu_Wind
            * `HU_Surge` - Hu_Surge
            * `HU_PrecipitationFlood` - Hu_Precipitationflood
            * `EQ_Shake` - Eq_Shake
            * `EQ_Fire` - Eq_Fire
            * `EQ_Sprinkler` - Eq_Sprinkler
            * `EQ_Landslide` - Eq_Landslide
            * `EQ_Tsunami` - Eq_Tsunami
            * `EQ_Liquefaction` - Eq_Liquefaction
            * `InlandFlood` - Inlandflood
            * `Wildfire` - Wildfire
            * `Smoke` - Wf_Smoke
            * `WinterStorm` - Winterstorm
            * `SevereConvectiveStorm` - Severeconvectivestorm
            * `Hail` - Hail
            * `StraightLineWind` - Straightlinewind
            * `Tornado` - Tornado
            * `SevereStorm` - Severestorm
            * `Terrorism` - Terrorism
            * `NonCat` - Noncat
          x-spec-enum-id: 0ee0d83a25944b26
          readOnly: true
        uuid:
          type: string
          format: uuid
          readOnly: true
          nullable: true
          description: UUID of the subperil
      required:
        - allowed_peril_groups
        - included
        - name
        - peril_group_uuid
        - peril_type
        - uuid
  securitySchemes:
    authorization_header:
      type: apiKey
      in: header
      name: Authorization
      description: >-
        Supports `Token `-prefixed API keys and `Bearer `-prefixed JWT-based
        authentication.

````