> ## 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.

# Modeling Option - Add Layer Structure

> Associates one or more coverage options with **every layer** in the given layer structure. Equivalent to calling the per-layer add endpoint for each layer individually. If a modeling option for a coverage option does not yet exist, it is created automatically. Idempotent — layers that already have the coverage option are unaffected.

Returns the full modeling option state for the layer structure.



## OpenAPI

````yaml https://vision.dev.pingintel.com/api/schema/?format=json post /api/v1/submission/{pingid}/cat/modeling-options/layer-structures/{layer_structure_uuid}/add-coverage-options
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/modeling-options/layer-structures/{layer_structure_uuid}/add-coverage-options:
    post:
      tags:
        - CAT Modeling
      summary: Modeling Option - Add Layer Structure
      description: >-
        Associates one or more coverage options with **every layer** in the
        given layer structure. Equivalent to calling the per-layer add endpoint
        for each layer individually. If a modeling option for a coverage option
        does not yet exist, it is created automatically. Idempotent — layers
        that already have the coverage option are unaffected.


        Returns the full modeling option state for the layer structure.
      operationId: >-
        api_v1_submission_cat_modeling_options_layer_structures_add_coverage_options_create
      parameters:
        - in: path
          name: layer_structure_uuid
          schema:
            type: string
          description: UUID of the layer structure whose layers are all targeted.
          required: true
        - in: path
          name: pingid
          schema:
            type: string
          description: Ping ID of the submission.
          required: true
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ModelingOptionCoverageOptionUuidsRequest'
          application/x-www-form-urlencoded:
            schema:
              $ref: '#/components/schemas/ModelingOptionCoverageOptionUuidsRequest'
          multipart/form-data:
            schema:
              $ref: '#/components/schemas/ModelingOptionCoverageOptionUuidsRequest'
        required: true
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ModelingOptionLayerStructureResponse'
              examples:
                CoverageOptionAddedToAllLayers:
                  value:
                    layer_structure_uuid: a1b2c3d4-0000-0000-0000-000000001000
                    layer_structure_name: Structure 1
                    layers:
                      - layer_uuid: a1b2c3d4-0000-0000-0000-000000002001
                        layer_name: Layer 1
                        coverage_options:
                          - modeling_option_uuid: a1b2c3d4-0000-0000-0000-000000004001
                            coverage_option_uuid: a1b2c3d4-0000-0000-0000-000000003001
                            coverage_option_name: EQ
                      - layer_uuid: a1b2c3d4-0000-0000-0000-000000002002
                        layer_name: Layer 2
                        coverage_options:
                          - modeling_option_uuid: a1b2c3d4-0000-0000-0000-000000004001
                            coverage_option_uuid: a1b2c3d4-0000-0000-0000-000000003001
                            coverage_option_name: EQ
                  summary: Coverage option added to all layers
          description: ''
      security:
        - authorization_header: []
components:
  schemas:
    ModelingOptionCoverageOptionUuidsRequest:
      type: object
      properties:
        coverage_option_uuids:
          type: array
          items:
            type: string
            format: uuid
          description: One or more coverage option UUIDs.
      required:
        - coverage_option_uuids
    ModelingOptionLayerStructureResponse:
      type: object
      properties:
        layer_structure_name:
          type: string
          nullable: true
        layer_structure_uuid:
          type: string
          format: uuid
        layers:
          type: array
          items:
            $ref: '#/components/schemas/ModelingOptionLayerEntry'
      required:
        - layer_structure_name
        - layer_structure_uuid
        - layers
    ModelingOptionLayerEntry:
      type: object
      properties:
        coverage_options:
          type: array
          items:
            $ref: '#/components/schemas/ModelingOptionCoverageOptionEntry'
        layer_name:
          type: string
          nullable: true
        layer_uuid:
          type: string
          format: uuid
      required:
        - coverage_options
        - layer_name
        - layer_uuid
    ModelingOptionCoverageOptionEntry:
      type: object
      properties:
        coverage_option_name:
          type: string
          nullable: true
        coverage_option_uuid:
          type: string
          format: uuid
        modeling_option_uuid:
          type: string
          format: uuid
      required:
        - coverage_option_name
        - coverage_option_uuid
        - modeling_option_uuid
  securitySchemes:
    authorization_header:
      type: apiKey
      in: header
      name: Authorization
      description: >-
        Supports `Token `-prefixed API keys and `Bearer `-prefixed JWT-based
        authentication.

````